To verify and analyze the AI Engine design, use the Analyze tab of the Model Composer Hub block.
The Analyze button will generate and compile AI Engine code from the design and run the cycle-approximate AIE Simulation (SystemC).
The Simulation timeout value limits the execution to the specified number of cycles. This is necessary because of the finite amount of input data - if the timeout value is not specified, the AI Engine kernels are invoked repeatedly forever (that is, the graph runs infinitely). To avoid this situation, specify the Simulation timeout value as shown in the preceding figure.
The default timeout value is set to 50,000 cycles and this value is used to terminate the simulation after the specified number of clock cycles.
AI Engine code verification and analysis advances in three phases:
- Compiling the AI Engine graph design.
- Running simulation using the AI Engine simulator.
- Verifying the simulation results by comparing the output with the golden reference output.
After clicking Analyze, you can monitor the compilation, simulation, and verification progress of the AI Engine graph code from the Progress window (see the following figure).
After successful compilation and simulation, Model Composer automatically compares the target output with the golden reference output and returns the following message in the Progress window (or in the corresponding simulation log files).
Comparing simulation results ...
Output data file : data/aiesimulator_output/Outl.txt.mod
reference data file : data/reference_output/Outl.txt
Simulation results MATCH.
**********************************************************
Test PASSED
Verification Complete
In addition to this, the AI Engine compiler writes various configuration and binary files to the work/aie directory. For more information on the structure and contents of the directory specific to the compilation, refer to the AI Engine Tools and Flows User Guide (UG1076).