The following table shows some specific techniques for debugging different situations in hardware emulation.
Debug Focus | Description | Steps |
---|---|---|
x86 host (XRT) | Enable detailed XRT logs by updating xrt.ini. |
Add the following to xrt.ini file. Run the test case with the updated xrt.ini. Review the generated xrt_hal.log.
|
AXI traffic on SystemC models like AIE, NOC, CIPS |
The host transactions are routed through If PL is RTL, then boundary of PL can be viewed in waveform. |
In xrt.ini add,
View file xsc_report.log. |
Viewing DDR content |
The DDR model saves its contents in a binary file. In the folder where simulation is run (e.g. package.hw_emu/sim/behav_waveform/xsim dir), look for files named like below. Each such binary file corresponds to a region of DDR memory at a particular offset.
These files represent DDR/LPDDR memory contents in binary form. There is a backdoor connection between QEMU to NOC_DDR model. Thus, users will not see any transactions in the waveform nor will they see any logs. The shared memory is directly updated. To view memory contents, users can directly dump the memory contents. |
The contents of the memory can be seen by using
|
PS (QEMU) | During firmware and software execution, the ARM APU can run into issues. You see details of various transactions and state on PS, please use these mechanisms. |
|
AIE | PDI is downloaded from PS to AIE through fast mode, thus transactions cannot be seen in the waveform. Users can enable logging all transactions at AIE AXI interfaces. There is a separate file per AXI interface |
|
Dumping Waveform in DC flow (Batch Mode) |
Make sure the design is linked with the Dump the waveform and open it in xsim along with saved .wcfg file |
Update following options in xrt.ini option
Pre-simulation script is needed to enable signal
dumping:
|