Lab2: ZC702_AXIS_IO Platform

Important: In the following tutorial lab the samples folder location is called <samples_dir>, and represents your local copy of the sample platforms from the SDx installation.

In Lab #1, you created a basic ZC702 platform with Linux, Standalone, and FreeRTOS OSes. The lab discussed how to use the SDSoC Platform Utility GUI to configure the platform, save the configuration, and generate the platform. In this tutorial you will create the zc702_axis_io platform using the platform utility. See Example: Direct I/O in an SDSoC Platform for a more detailed discussion of this platform.

The zc702_axis_io platform has a platform-specific include header, and a library that must be linked. It also contains a few sample applications. To begin this exercise, you will make the static library file for the platform.

  1. Launch an SDx Terminal window:
    • From Windows, choose Start > All Programs > Xilinx Design Tools > SDx 2017.1 > SDx Terminal 2017.1.
    • From Linux, source the settings.sh/csh file as appropriate for the shell type you’re using.
  2. From this terminal window you will need to navigate to the include folder for the zc702_axis_io platform, and make the static library (.a) file for both the Linux and Standalone operating systems:
    cd <samples_dir>/zc702_axis_io/src/src
    cd linux
    make
    cd ../standalone
    make
    cd C:/

With the static library file made, you can now use the SDx Terminal window to define the zc702_axis_io platform configuration file and generate the platform.

  1. Launch the SDSoC Platform Utility GUI from the SDx Terminal:
    Important: The SDSoC Platform Utility should be launched from the C:/ directory on the Windows OS, or an equivalent root directory, to avoid path name length limitations that can cause problems when generating the platform files on Windows.
    • In your terminal or shell type sdspfm -gui to launch the GUI.
  2. After the SDSoC Platform Utility GUI opens, enter the following info for the base platform information to match the following figure.

    Figure: Specify Hardware Platform



    • Platform Name: zc702_axis_io
    • Choose an appropriate Output Directory for your system.
    • The Vivado Project and Platform Tcl files can be found in the <samples_dir>/zc702_axis_io/src/vivado directory.
    • Samples Directory: <samples_dir>/zc702_axis_io/src/samples
  3. Click the Add button in the Processor Information pane to add the A9 processor to the platform configuration.
    Tip: Only one processor of each type is required for the platform configuration, although your platform will still be able to use all cores.
  4. In the Boot Information pane you will configure the Linux OS first, but the order you configure OSes is not important.

    Figure: Linux Boot Information



    1. Click the Add button in the Boot Information panel to add a new configuration.
    2. Config ID: a9_linux, although this can be any name you want.
    3. OS Type: Linux, selected from the drop down menu.
    4. Config Name: This name is automatically generated, but can be edited as needed.
    5. BIF File: <samples_dir>/zc702_axis_io/src/linux/linux.bif
    6. Readme File: <samples_dir>/zc702_axis_io/src/generic.readme
    7. Boot Directory: <samples_dir>/zc702_axis_io/src/boot
    8. Image Directory: <samples_dir>/zc702_axis_io/src/linux/image
  5. Add and configure Standalone OS to the platform using the following settings:

    Figure: Standalone Configuration



    1. Click the Add button in the Boot Information panel to add a new configuration.
    2. Config ID: a9_standalone.
    3. OS Type: Standalone, selected from the drop down menu.
    4. Config Name: Change this name to Standalone Config 1.
    5. BIF File: <samples_dir>/zc702_axis_io/src/standalone/standalone.bif
    6. Readme File: <samples_dir>/zc702_axis_io/src/generic.readme
    7. Boot Directory: <samples_dir>/zc702_axis_io/src/boot
    8. Linker Script: <samples_dir>/zc702_axis_io/src/standalone/lscript.ld
  6. Under Supported OSes, select the Linux OS, a9_linux and configure the Include Paths and Libraries for this configuration:
    • On the Include Paths tab, specify the include path as <samples_dir>/zc702_axis_io/src/src/inc and click Add to add it to the list.
    • On the Libraries tab, in the Library Path field select the <samples_dir>/zc702_axis_io/src/src/linux/libzc702_axis_io.a file and click Add to add it to the list.

    Figure: Include Paths and Libraries



  7. Select the Standalone OS, a9_standalone and configure the Include Paths and Libraries for this configuration:
    • On the Include Paths tab, specify the include path as <samples_dir>/zc702_axis_io/src/src/inc and click Add to add it to the list.
    • On the Libraries tab, in the Library Path field select the <samples_dir>/zc702_axis_io/src/src/standalone/libzc702_axis_io.a file and click Add to add it to the list.
  8. Save the configuration file using the File > Save command, and specify a name and location for the platform configuration file.
  9. Click the Generate button to create your platform. You can see progress updates in the SDx Terminal from where you launched the GUI as your platform is created. When your platform is finished generating, you’ll see a popup message in the GUI with the output from the SDx Terminal if there are any error messages. Click Ok to close this message.
  10. Exit the SDSoC Platform Utility by using the File > Exit command.