Wiki

This version is outdated by a newer approved version.DiffThis version (13 Jul 2015 15:52) was approved by Andrei Cozma.The Previously approved version (13 Jul 2015 01:03) is available.Diff

This is an old revision of the document!


Xilinx SDSoc Targeting Example

The Xilinx SDSoC™ development environment is a member of the Xilinx SDx™ family that provides a greatly simplified ASSP-like C/C++ programming experience including an easy to use Eclipse IDE and a comprehensive design environment for heterogeneous Zynq® All Programmable SoC and MPSoC deployment. Complete with the industry’s first C/C++ full-system optimizing compiler, SDSoC delivers system level profiling, automated software acceleration in programmable logic, automated system connectivity generation, and libraries to speed programming.

To access the capabilities of SDSoC, please visit www.xilinx.com/sdsoc

Analog Devices is an SDSoC development environment-qualified Xilinx Alliance Member and offers FMC boards and reference designs that can be used together with the SDSoC environment. Each SDSoC design is based on a platform which defines the hardware and software components on which the SDSoC compiler and linker generate hardware functions and IP-based data motion networks for communication between hardware functions and the platform as well as software drivers and applications. Currently Analog Devices provides SDSoC platform support for the following FMCOMMSx SDR systems:

The supported Xilinx Zynq based carriers are:

FMCOMMSx SDSoC Platforms

The FMCOMMSx SDSoC platforms are automatically generated from the Analog Devices HDL reference designs that accompany the FMCOMMSx boards. Platform generation is done by running a tcl script in the Vivado tcl console. This script creates the platform Vivado project from the HDL reference design, as well as the platform software files. The generated platforms support Linux OS.

Platform generation steps:

  1. Download the Analog devices HDL reference designs repository from github using the link provided in the Downloads section below
  2. Download the platform generation files using the link provided in the Downloads section below
  3. Copy the platform generation files to the location where you cloned the HDL repository into the target project folder, eg: \hdl\projects\fmcomms2\zc702
  4. Open Vivado and in the tcl console cd to the target project folder, eg. \hdl\projects\fmcomms2\zc702
  5. In the Vivado tcl console type source ./sdsoc_platform/sdsoc_platform.tcl. This will start the process of generating the platform. At the end of the process the new platform will be placed in the SDSoC platforms folder and will be named <board>_<carrier>, where <board> is the name of the FMCOMMSx board and <carrier> is the name of the Xilinx carrier, eg. fmcomms2_zc702

FMCOMMSx SDSoC Examples

The platform is accompanied by an example which implements a DDS block that will generate a CW that can be sent/received using the FMCOMM2 board and the Xilinx ZC702 carrier board. The received signal can be displayed in the Analog Devices Linux IIO Oscillscope application. These are the steps to recreate the DDS project.

  1. Download the SDSoC DDS project source code using the link in the Downloads section below
  2. Start the SDSoC terminal and cd to the location where the source code was extracted
  3. In the SDSoC terminal type ‘make’. This will build the software, generate the DDS IP and insert it into the FMCOMMSx platform. It will also generate the Linux SD card image.
  4. Create a SD card with the ADI Linux image as shown here: http://wiki.analog.com/resources/tools-software/linux-software/zynq_images
  5. On the newly created SD card copy the boot.bin generated by SDSoC
  6. Insert the SD card in the Xilinx ZC702carrier board, connect antennas to the RF ports of the FMCOMMS2 or loopback cables between Rx and Tx, connect the FMCOMMS2 to the ZC702, connect the ZC702 to a HDMI monitor, connect a mouse and keyboard to the ZC702, connect an Ethernet cable to the ZC702, fire up the system
  7. After Linux boots the IIO Scope starts automatically. In the IIO scope configure the Rx and Tx LO frequencies to be the same, eg. 2.4GHz
  8. In the IIO scope configure the Transmit/DDS as shown below. Please make sure to select a file unde ‘DAC Buffer settings’, any file will do, and press the ‘Load’ button. All the DAC Channels must be selected before pressing ‘Load’.
  9. Using a program like WinSCP copy the dds_script.sh to the device’s /usr/local/bin folder. The credentials for the SCP connection between the PC and the device are: user – analog, password – analog. In order to configure the SCP connection you need the IP of the device, to get that just type ifconfig in a terminal on the device.
  10. Run the dds_script.sh as shown below. This will initialize and activate the DDS IP.
  11. On the IIO scope select the voltage0 and voltage1 channels and press the Play button. You should see the DDS waveforms displayed by the IIO Scope.

This is a work in progress

resources/eval/user-guides/targetting/xilinx_sdsoc.1436795572.txt.gz · Last modified: 13 Jul 2015 15:52 by Andrei Cozma