To verify and analyze the AI Engine design, use the Analyze tab of the Model Composer Hub block.
The Analyze button generates and compiles 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 you do not specify the timeout value, 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 50,000 cycles. The tool uses this value 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. It 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, see the AI Engine Tools and Flows User Guide (UG1076).