Before getting into this section, it is expected that you created an AI Engine application in the Vitis IDE and ran AIEsimulation Build and Simulate in the Vitis IDE.
Create a system project manually using the steps mentioned in Port a Command Line Project to the Vitis IDE System Project and download the Vitis IDE exported project (Download Vitis IDE project).
Besides referring to the link provided above to create a system project, make sure to follow the following points to avoid unnecessary issues during the emulation process:
While creating a HW-link project, the Vitis IDE tool, by default, creates a
binary_container_1-link.cfg
file under the{$PROJECT}/system_project/hw_link/
directory that contains the connectivity as follows:[connectivity] nk=mm2s:1:mm2s_1 nk=s2mm:2:s2mm_1.s2mm_2
If you are porting a command line project to the Vitis IDE environment, make sure to replace the above connectivity statements that start with
nk
in yoursystem.cfg
file and add as a source to your HW-Link project.As the AI Engine graph is being loaded by the host PS application, you can defer the running of the graph after the graph has been loaded using the
xrt::graph
API. By default, the AMD platform management controller (PMC) loads and runs the graph. However, the v++--package.defer_aie_run
option will let you defer the graph run until after the graph has been loaded using thexrt::graph
API.
To build the system project, in the Flow Navigator -> [system_project] component -> select Build All. The top-level project uses an incremental build approach, select the components to be built along with system project.
After packaging, everything is set to run emulation. In the Flow Navigator -> [system_project] component -> select Start Emulator -> show waveform -> start :
Run the emulation by clicking Flow Navigator -> [system_project] component -> select Run, after the following messages are displayed in the ‘TASK: EMULATION FOR SYSTEM_PROJECT’ console.
You can stop emulation by clicking In the Flow Navigator -> [system_project] component -> select Stop Emulator.