Zynq UltraScale MPSoC Base TRD 2017.2
Zynq UltraScale MPSoC Base TRD 2017.2
Table of Contents
3 Software Tools and System Requirements
IMPORTANT:
This TRD requires the 2017.2 Vivado version that is bundled with the 2017.2 SDSoC tools. The stock 2017.2 Vivado version will result in an error, see Section 6.2 Limitations for more information.
1 Revision History
This wiki page complements the 2017.2 version of the Base TRD. For other versions, refer to the Zynq UltraScale+ MPSoC Base TRD overview page.
Change Log:
rev2:
Fixed DM6 Vivado project by adding missing local IPs and constraints files
rev1:
Update all projects, IPs, and tools versions to 2017.2
Update to 2017.2 xfOpenCV libraries version
Use dsa for hardware platform
Use data flow for xf::Mat top level arguments in xfOpenCV functions
Move xfOpenCV libraries from sample to platform includes
Add MIPI CSI-2 RX capture pipeline with support for Sony IMX274 image sensor
Various fixes and clean-up
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 supports the following video interfaces:
Sources:
Virtual video device (vivid) implemented purely in software
USB webcam connected to the PS (optional)
Test pattern generator (TPG) implemented in the PL
HDMI Rx capture pipeline implemented in the PL
MIPI CSI-2 Rx based image sensor pipeline implemented in PL + FMC
Sinks:
DP Tx display pipeline in the PS
HDMI Tx display pipeline implemented in the PL
The following processing accelerators are implemented as memory-to-memory pipelines in the PL:
2D-Convolution filter with programmable coefficients
Dense optical flow algorithm
The TRD demonstrates the value of offloading computation intensive tasks 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:
Zynq UltraScale+ MPSoC Base TRD user guide UG1221: contains information about system, software and hardware architecture.
3 Software Tools and System Requirements
3.1 Hardware
Required:
rev 1.0 with ES2 silicon or
rev 1.0 or rev D2 with production silicon
Monitor with DisplayPort or HDMI input supporting one of the following resolutions:
3840x2160 or
1920x1080 or
1280x720
Display Port cable (DP certified) or HDMI cable
Micro-USB cable, connected to laptop or desktop for the terminal emulator
adapter shipped with ZCU102 rev 1.0 + production silicon
adapter needs to be purchased separately for ZCU102 rev 1.0 + ES2 silicon or rev D2 with production silicon
USB mouse
SD card
Optional:
HDMI video source with output supporting one of the following resolutions:
3840x2160 or
1920x1080 or
1280x720
USB webcam
USB 3.0 hub (supplied with ZCU102 kit)
Leopard LI-IMX274MIPI-FMC (only supported on rev 1.0 boards)
3.2 Compatibility
The reference design has been tested successfully with the following user-supplied components.
Monitors:
Make/Model | Native Resolution |
Viewsonic VP2780-4K | 3840x2160 (60/30Hz) |
Acer S277HK | 3840x2160 (60/30Hz) |
Dell P2415Q | 3840x2160 (30Hz) |
Dell U2414H | 1920x1080 (60Hz) |
GeChic On-Lap1303H | 1920x1080 (60Hz) |
HDMI Sources:
Make/Model | Resolutions |
Nvidia Shield TV | 3840x2160, 1920x1080 |
OTT TV BOX M8N | 3840x2160, 1920x1080, 1280x720 |
Roku 2 XS | 1920x1080, 1280x720 |
TVix Slim S1 Multimedia Player | 1920x1080, 1280x720 |
USB Webcams:
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 |
DisplayPort Cables:
Cable Matters DisplayPort Cable-E342987
Monster Advanced DisplayPort Cable-E194698
Storage Devices:
Crucial BX200 2.5in SATA SSD 240GB
San Disk UltraFit USB3.0 Flash Drive 16 GB
3.3 Software
Required:
Linux host machine for all tool flow tutorials (see UG1144 for detailed OS requirements)
SDSoC Development Environment version 2017.2 (see UG1238 for installation instructions)
PetaLinux Tools version 2017.2 (see UG1144 for installation instructions)
Git distributed version control system
Serial terminal emulator e.g. teraterm
Reference Design Zip File
ZCU102 rev 1.0 or rev D2 / production silicon including all source code and project files.
ZCU102 rev 1.0 / ES2 silicon including all source code and project files.
3.4 Licensing
Important: 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.
The Third Party Library Sources zip file provides a copy of separately licensed material that is not included in the reference design.You will need only the SDSoC license to build the design which includes all the required IP licenses. You can evaluate for 60-days or purchase it here.
Steps to generate the license:
Log in here with your work E-mail address (If you do not yet have an account, follow the steps under Create Account)
Generate a license from “Create New Licenses” by checking "SDSoC Environment, 60 Day Evaluation License"
Under system information, give the host details.
Proceed until you get the license agreement and accept it.
The License (.lic file) will be sent to the email-id mentioned in the login details.
Copy the license file locally and give the same path in the SDSoC license manager.
4 Design Files
4.1 Design Modules
The reference design is split into 10 design modules DM1 to DM10:
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 – Two Image Processing Functions
DM10 – Full-fledged Base TRD
Each module is described in more detail on the respective tutorial page (see below).
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 | DM9 | |
DM1 | |||||||||
DM2 | |||||||||
DM3 | |||||||||
DM4 | + | + | |||||||
DM5 | + | ||||||||
DM6 | + | + | |||||||
DM7 | + | + | + | ||||||
DM8 | + | + | + | + | |||||
DM9 | + | + | + | + | + | ||||
DM10 | + | + | + | + | + | + | + | + | + |
4.2 Design Components
The top-level directory structure shows the the major design components organized by execution unit (APU, RPU0, RPU1). A pre-built SD card image is provide for DM10 along with a basic README and legal notice file.
zcu102-[es2-]base-trd-2017.2
├── apu
│ ├── perfapm-client
│ │ ├── perfapm-client
│ │ └── perfapm-client-test
│ ├── petalinux_bsp
│ ├── sdsoc_pfm
│ │ └── zcu102_[es2_]base_trd
│ │ └── samples
│ │ ├── filter2d
│ │ └── filter2d_optflow
│ └── video_app
│ ├── video_lib
│ └── video_qt2
├── images
│ └── dm10
├── IMPORTANT_NOTICE_CONCERNING_THIRD_PARTY_CONTENT
├── README
├── pl
│ └── zcu102_[es2_]base_trd
├── rpu0
│ └── heartbeat
│ ├── heartbeat
│ ├── heartbeat_bsp
│ └── zcu102_base_trd_wrapper_hw_platform_0
└── rpu1
└── perfapm-server
├── perfapm
├── perfapm_bsp
├── perfapm-ctl
├── perfapm-server
└── zcu102_base_trd_wrapper_hw_platform_0
The below figure shows the relevant design components for DM10 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 | DM10 | |
apu/perfapm-client/perfapm-client | Y | |||||||||
© 2025 Advanced Micro Devices, Inc. Privacy Policy