EZ-USB FX3 Technical Reference Manual, Document Number: 001-76074 Rev. *F 24
Introduction to EZ-USB FX3
Figure 1-4. Data Bursting in SuperSpeed
1.1.3.4 End-to-End Flow Control
USB 2.0 uses polling and the NAK handshake packet for flow control. For example, USB keyboards must be constantly polled
by the host software to check for activity. When an IN token packet is delivered and no keyboard activity has occurred, the
keyboard returns a NAK packet. Subsequently, the host software will poll the device again and receive another NAK. This
process continues until there is renewed activity. SuperSpeed flow control uses a poll-once approach coupled with an
asynchronous ready notification. Consider the IN transaction shown in Figure 1-5. An ACK packet initiates the IN transaction
and if a device responds with "NRDY" (Not Ready), then the host stops talking to that device until the device sends the
"ERDY" (ready) packet saying that now it is ready to transmit the data. So the host does not need to continue polling. This can
significantly reduce SuperSpeed traffic and improve link power management.
ACK Packet
Host TX
Seq = 0; NumP = 4
Device TX
DATA Packet
Seq = 0
DATA Packet
Seq = 1
DATA Packet
Seq = 2
DATA Packet
Seq = 3
ACK Packet
Seq = 1; NumP = 4
ACK Packet
Seq = 4; NumP = 4