- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi All,
How does the credit tracking interface operate ? The tx_nph_cdts[7:0] signal in particular.
How does this signal work. Does it report how many credits are available to the application for non posted requests ? Also when the interface tells you a credit is consumed what exactly does this mean? How do we know when credit is restored ?
Thanks!
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
How does the credit tracking interface operate ? The tx_nph_cdts[7:0] signal in particular.
How does this signal work. Does it report how many credits are available to the application for non posted requests ? Also when the interface tells you a credit is consumed what exactly does this mean? How do we know when credit is restored ?
Yes. tx_nph_cdts[7:0] is the header credit net value for the FC non-posted requests. Credit is consumed means the credit is not available for the following transaction.
RX_buffer_space = (credit_limit - credits_consumed)+ released_credits
The hard IP core does not report the internally consumed credits to the Application. Without knowing the hard IP core's internal usage, the Application cannot maintain a completely accurate count of Posted or Completion credits.
The hard IP core does not consume non-posted credits. Consequently, it is possible to maintain an accurate count of the available non-posted credits. Refer to the TX Credit Adjustment Sample Code for code that calculates the number of non-posted credits
available to the Application. This RTL recovers the updated Flow Control credits from the remote link. It drives the value of the link partner's RX_buffer_space for nonposted header and data credits on tx_nph_cdts and tx_npd_cdts, respectively.
https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/ug/ug_s10_pcie_avst.pdf (Page 179)
Thanks
Best regards,
KhaiY
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Thanks for the response. I am still a little unsure on how the RTL code provided in the user guide works.
For example the credit limit that is computed in the Appendix RLT is tx_nph_cdts_limit[7:0].
What does this value signify ? Is it the credit limit from the RX_buffer_space equation ? If so how do we calculate credits restored ?
I have tried using tx_nph_cdts_limit[7:0] directly and only send out non posted requests if it is greater than 0, but it will get stuck and no longer send requests outs.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
From the RTL, you will know the limit of Flow Control credits for non-posted TLPs but not the credit restored. There is no signal where you can read the number of credit restored. If you are interested in the net value, you may refer to tx_nph_cdts and tx_npd_cdts.
Thanks
Best regards,
KhaiY
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
We do not receive any response from you to the previous question/reply/answer that I have provided. This thread will be transitioned to community support. If you have a new question, feel free to open a new thread to get the support from Intel experts. Otherwise, the community users will continue to help you on this thread. Thank you
Best regards,
KhaiY

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page