This answer record provides FAQs and Debug Checklist on UltraScale FPGA Gen3 Integrated Block for PCI Express IP.
For FAQs and Debug Checklist on general PCIe issues, not related specific to this IP, please refer to (Xilinx Answer 69751).
This article is part of the PCI Express Solution Centre
|(Xilinx Answer 34536)||Xilinx Solution Center for PCI Express|
Q) Which Data Alignment option should be used for better performance?
A) For performance critical applications, Dword Aligned mode should be used instead of Address-Aligned mode.
LCRC error on bus analyzer (or in AER); after a NAK, the replay goes through correctly
If you are seeing an LCRC error on the bus analyzer, .several conditions can cause this:
With a link analyzer, you will see that often the core will send an EDB Ordered Set (0xC0C0C0C0 in PCIe Gen3) to invalidate the packet.
The next packet in the queue is what will be on replay, if the link partner does not accept / see the EDB and sends a NAK on the packet.
Other symptoms you might observe in the trace:
To debug this issue further, add an ILA at the offending stream interface (based on packet type) and trigger on LTSSM being in Recovery.rcvrcfg.
Place the trigger late in the trace window, and you should be able to capture the bad packet at the user interface.
Additional Debug Info:
Please refer to 'Appendix D: Debugging' of (PG156) UltraScale Devices Gen3 Integrated Block for PCI Express:
04/18/2018: Initial Release