This topic continues from Deadlock Detection section and shows how to visualize the deadlock (Lock stall and stream stall) in the Vitis Analyzer.
After simulating with the
--hang-detect-time=60option, open the trace analysis view -> aie_component -> AIE SIMULATOR/HARDWARE -> Run-aie_component -> Trace.Expand the
data_shufflekernel function. It ran for two iterations and went into a stream stall.Expand the
peak_detectkernel function, and observe the lock stall after three iterations.The kernel
data_shuffleexpects more stream data frompeak_detectthan it can provide. So, the stream port in thedata_shufflewent into the stream stall, and the kernel hangs. It cannot accept more inputs from the buffer port, which causes backpressure on thepeak_detectkernel leading to a lock stall, which leads to deadlock.