Version: Vitis 2022.2
Introduction
Vitis High-Level Synthesis (HLS) is a key part of the Vitis application acceleration development flow. The tool is responsible for compiling C/C++ and OpenCL code into a kernel for acceleration in the programmable logic (PL) region of Xilinx devices. Thus, it is the tool that compiles the hardware kernels for the Vitis tools by performing high-level synthesis.
The aim of this tutorial is to give the user an overview of the techniques available in the Vitis HLS GUI with respect to understanding and debugging the dataflow optimization. You will be working through the Vivado kernel flow in the Vitis tool. For more information, refer to Enabling the Vivado Kernel Flow in the Vitis HLS Flow of the Vitis Unified Software Platform Documentation (UG1416).
Before You Begin
The labs in this tutorial use:
BASH Linux shell commands.
2022.1 Vitis core development kit release and the xilinx_u200_gen3x16_xdma_2_202110_1 platform. If necessary, it can be easily ported to other versions and platforms.
IMPORTANT:
Before running any of the examples, make sure you have installed the Vitis core development kit as described in Installation in the Application Acceleration Development flow of the Vitis Unified Software Platform Documentation (UG1416).
If you run applications on the Xilinx® Alveo™ Data Center accelerator cards, ensure the card and software drivers have been correctly installed by following the instructions To complete installation, follow the instructions on the Alveo Product Documentation tab.
Accessing the Tutorial Reference Files
To access the reference files, type the following into a terminal:
git clone https://github.com/Xilinx/Vitis-Tutorials
.Navigate to the
Hardware_accelerators/Feature_Tutorials/03-dataflow_debug_and_optimization
directory, and then access thereference-files
directory.
Next Steps
Complete the labs in the following order:
Dataflow Viewer and the basics: Review how to launch the dataflow viewer and go over the various features.
FIFO Sizing and Deadlocks: Review how to use the deadlock detection feature in the GUI and how to resize FIFOs to avoid deadlocks and achieve better performance.
Return to Main Page — Return to Getting Started Pathway
Copyright© 2020-2022 Xilinx