Some More Examples
To demonstrate the reliable TLP delivery capability provided by the ACK/NAK Protocol, the following examples are provided.
Lost TLP
Consider Figure 5-14 on page 245 which shows the ACK/NAK protocol for handling lost TLPs.
Device A transmits TLPs 4094, 4095, 0, 1, and 2.
Device B receives TLPs 4094, 4095, and 0, for which it returns ACK 0. These TLPs are forwarded to the Transaction Layer. NEXT_RCV_SEQ is incremented and the next value of NEXT_RCV_SEQ count is 1. Device B is ready to receive TLP 1.
Seeing ACK 0, Device A purges TLPs 4094, 4095, and 0 from its replay buffer.
TLP 1 is lost en route.
TLP 2 arrives instead. Upon performing a Sequence Number check, Device B realizes that TLP 2's Sequence Number is greater than NEXT_RCV_SEQ ...
Get PCI Express System Architecture now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.