Zynq UltraScale MPSoC Base TRD 2016.3

Zynq UltraScale MPSoC Base TRD 2016.3

This wiki page complements the 2016.3 version of the Base TRD. For other versions, refer to the Zynq UltraScale+ MPSoC Base TRD overview page.

Note: The ES1 reference design zip file is no longer available for download. Please update to ES2 or production silicon.



Table of Contents

1 Revision History


Change Log:

  • Update all projects, IP and tools versions to 2016.3

  • Add support for ZCU102 rev 1.0 board with ES2 silicon

  • Split reference design into 9 design modules with dedicated tutorials

  • Remove support for HDMI input via FMC-HDMI-CAM

  • Add USB webcam support for video capture (USB2 only!)

  • Add virtual video device (vivid) support for video capture

  • Use X11 Qt and Mali backend instead of fbdev






2 Overview


The Zynq UltraScale+ MPSoC Base Targeted Reference Design (TRD) is an embedded video processing application running on a combination of APU (SMP Linux), RPU (bare-metal) and PL.

The design consists of the following video data paths:

  • Video capture pipelines capturing video from:

    • a virtual video device (vivid) implemented purely in software

    • a USB webcam connected to the PS (optional)

    • a test pattern generator (TPG) implemented inside the PL

  • A memory-to-memory processing pipeline implementing a 2D-convolution filter with programmable coefficients.

  • A display pipeline with two layers, one used for video and the other for a graphical user interface (GUI) rendered by the GPU.


The TRD demonstrates the value of offloading computation intensive tasks like the 2D-convolution filter from the PS onto PL, thereby freeing APU resources. The APU load is plotted on the GUI to compare a pure software vs hardware accelerated implementation. The RPU is used to monitor the live memory throughput of the design by reading the built-in AXI performance monitors (APM) inside the PS. The data is sent to the APU via the OpenAMP communication framework and plotted on the GUI.

This wiki contains information about:

  • How to setup the ZCU102 evaluation board and run the reference design.

  • How to build all the TRD components based on the provided source files via detailed step-by-step tutorials.


Additional material that is not hosted on the wiki:


Note: Certain material in this reference design is separately licensed by third parties and may be subject to the GNU General Public License version 2, the GNU Lesser General License version 2.1, or other licenses.





3 Software Tools and System Requirements



3.1 Hardware


Required:

  • ZCU102 evaluation board / power cable

  • Monitor with DisplayPort input supporting one of the following resolutions:

    • 3840x2160 or

    • 1920x1080 or

    • 1280x720

  • Display Port cable (DP certified)

  • USB hub with mouse and keyboard

  • SD card


Optional:

  • USB webcam



3.2 Software Tools


Required:


Optional:



3.3 Licensing


The video Test Pattern Generator IP inside the Vivado project requires a license which can be obtained from here.

Steps to generate the license:

  1. Click on the link mentioned above.

  2. Fill in the login details and proceed.

  3. Click on “Generate Node-Locked License" icon as shown in the picture:

  4. Under system information, give the host details.

  5. Proceed until you get the license agreement and accept it.

  6. The License (.lic file) will be sent to the email-id mentioned in the login details.

  7. Copy the license file locally and give the same path in the SDSOC license manager.



3.4 Compatibility


The reference design has been tested successfully with the following user-supplied components.

DisplayPort Monitor:

Make/Model

Native Resolution

Viewsonic VP2780-4K

3840x2160 (30Hz)

LG 27MU67-B

3840x2160 (30Hz)

Acer S277HK

3840x2160 (30Hz)

Dell U2414H

1920x1080 (60Hz)

GeChic On-Lap1303H

1920x1080 (60Hz)


DisplayPort Cable:

  • Cable Matters DisplayPort Cable-E342987

  • Monster Advanced DisplayPort Cable-E194698


USB Webcam:

Make/Model

Supported Resolutions

Supported Formats

Logitech HD Pro Webcam C920

1920x1080 (5fps), 1280x720 (10fps)

YUYV

Logitech HD Webcam C525

1920x1080 (5fps), 1280x720 (10fps)

YUYV






4 Design Files


The top-level directory structure is shown in the figure below.





4.1 Design Modules


The reference design is split into 9 design modules DM1 to DM9:

  • DM1 – APU SMP Linux

  • DM2 – RPU0 FreeRTOS Application

  • DM3 – RPU1 Bare-metal Application

  • DM4 – APU/RPU1 Inter Process Communication

  • DM5 – APU Qt Application

  • DM6 – PL Video Capture

  • DM7 – OpenCV-based Image Processing

  • DM8 – PL-accelerated Image Processing

  • DM9 – Full-fledged Base TRD


Each module is described in more detail in UG1221 and on the respective tutorial page.

The following table shows the dependency matrix between different modules. For example: DM6 (row) depends on or builds on top of modules DM1 and DM5 (columns).



DM1

DM2

DM3

DM4

DM5

DM6

DM7

DM8

DM1

















DM2

















DM3

















DM4

+



+











DM5

+















DM6

+







+







DM7

+







+

+





DM8

+







+

+

+



DM9

+

+

+

+

+

+

+

+



4.2 Design Components


The below figure shows the relevant design components for DM9 as well as inter-dependencies and generated output products.




The below table shows which design components are used in which design modules. A graphical view for each design module is provided on the respective design module tutorial page.

Design Component

Design Module

DM1

DM2

DM3

DM4

DM5

DM6

DM7

DM8

DM9

apu/perfapm-client/perfapm-client







Y









Y

apu/perfapm-client/perfapm-client-test







Y











apu/petalinux_bsp

Y





Y

Y

Y

Y

Y

Y

apu/videao_app/video_lib









Y

Y

Y

Y

Y

apu/videao_app/video_qt2









Y

Y

Y

Y

Y

apu/zcu102_base_trd/samples/filter2d













Y

Y

Y

pl/zcu102_base_trd











Y







pl/zcu102_dp_only









Y









pmu/pmu_fw

Y

Y

Y

© 2025 Advanced Micro Devices, Inc. Privacy Policy