FIFO Depth Evaluation - 2024.1 English

AI Engine Tools and Flows User Guide (UG1076)

Document ID
UG1076
Release Date
2024-06-27
Version
2024.1 English

When the system is deadlocked, the AI Engine compiler provides a way to evaluate the FIFO depth that you should add to your design to avoid these locks.

The tool computes these FIFO lengths from an AI Engine simulation for you. You can compile your graph with the AI Engine compiler using the --evaluate-fifo-depth flag.

After the code is compiled and the simulation is run, the simulation run summary can be viewed in the Vitis IDE. Additional FIFO depth columns are displayed in the Nets table.

Figure 1. Nets Table With the FIFO Depth

Table 1. FIFO Depth Columns
Additional Column Name Description
Estimated FIFO (Words) FIFO depth that is recommended to be used in the graph to resolve the deadlock situation.
Peak FIFO (Words) Maximum FIFO depth that is used to resolve the deadline situation. This is then used to compute the estimated FIFO.
The estimated FIFO depth given in the Estimated FIFO (Words) column can be used in the graph to insert FIFOs with the specified length using the following syntax:
fifo_depth(net) = value;
Where net is a connection on which you want to insert the FIFO.
Note: In AI Engine-ML, if the recommended FIFO depth is above the default threshold (40 words), you will have to use the option --swfifo-threshold to increase this limit.