Event Trace Build Flow - 2020.2 English

Versal ACAP AI Engine Programming Environment User Guide (UG1076)

Document ID
UG1076
Release Date
2020-11-24
Version
2020.2 English
The event trace build flow is as follows:
  1. Compile the graph with --event-trace and other appropriate flags.

    An example AI Engine compiler command for event tracing is as follows:

    aiecompiler --verbose --pl-freq=100 --workdir=./myWork \
    --event-trace=functions --num-trace-streams=1 --include="${XILINX_HLS}/include" \
    --include="./" --include="./src" --include="./src/kernels" --include="./data" \
    ./src/graph.cpp
    Note: The preceding example illustrates compiling the design with the event trace=functions configuration that captures function transitions on the AI Engine.
  2. Compile and link the design using the Vitis compiler.

    After compiling the AI Engine graph application, you must build the other elements of the system as described in Integrating the Application Using the Vitis Tools Flow. With --event-trace enabled in the libadf.a file from the AI Engine compiler, the system hardware generated by the Vitis compiler includes the compiled ELF file for the PS application, the compiled ELF files for the AI Engine processors, and the XCLBIN file for the PL. These are the elements you need to run the system on hardware.

    After linking to create the device binary, run the Vitis compiler --package step to create the sd_card folder and files needed to boot the device, as described in Packaging. This step packages everything needed to build the BOOT.BIN file for the system. When packaging the boot files for the device, you must also specify the --package.defer_aie_run to load the AI Engine application with the ELF file, but wait to run it until graph.run directs it, as described in Graph Execution Control.