Description
Most downstream ports advertise infinite completion data credits, but when the Endpoint Block Plus core is interfacing with a link partner that is advertising data limited completion credits, it is possible that a transmit direction stall or lockup might occur. The user would see this as a permanent deassertion of trn_tdst_rdy_n which would most likely result in a system freeze or failure to boot. This issue occurs only in systems where the connected component makes an initial advertisement of data limited completion credits or finite completion credits.
Solution
Most downstream devices advertise infinite completion credits instead of finite completion credits so this issue is usually not seen. Even if the link partner does advertise data limited completion credits in some cases the problem can be avoided.
Use the following equation to determine if your design is subject to this condition. If this equation evaluates to TRUE then the condition is hit and your design is subject to a potential transmit stall.
Initial CPLD credits < Initial CPLH * 8 * 2
X, where X depends on the MPS value as follows:
For example, if the link partner advertises initial CPLH credits as 22 and the initial CPLD credits as 128, for an MPS of 128 then:
128 < 22 * 8 * 1
128 < 176
In this example, the equation evaluates to TRUE and the restriction is hit.
Users should consult the link partner's data sheet for information on initial credit advertisement. Most link partners advertise infinite completion data credits.
This issue has been fixed in the v1.14 release first available in ISE 12.1. Users must determine if they are interfacing with a completion data credit limited device and if so follow the guidelines documented for this issue in the "Known Restrictions" chapter of UG341. Look for the issue titled: "Link partner initial advertisement of Data Limited Completion Credits" (page 136 of UG dated April 19, 2010). It states: "Users can work around this limitation by restricting Downstream Reads to 1 or 2 DW, which must be completed with exactly one completion." If the link partner is not data credit limited, there are no restrictions to follow.
UG341 is found here:
http://www.xilinx.com/support/documentation/ip_documentation/pcie_blk_plus_ug341.pdfRevision History 07/05/2011 - Updated title
09/07/2010 - Added information on fix.
02/25/2010 - Initial Release