Intel
Table 171.
Example Worst-Case Transaction Timing Components (Sheet 2 of 2)
Component
Turnaround time
Handshake packet
The exact details of the function (f(x)) are up to the particular implementation.
However, it should be obvious that the goal is to minimize the area under the curve
between the approximation function and the Last Start curve, without dipping below
the LastStart line, while at the same time keeping the check as simple as possible for
hardware implementation. The f(x) in
was constructed using the following pseudo-code test on each transaction size data
point. This algorithm assumes that the host controller keeps track of the remaining bits
in the frame.
Alorithm CheckTransactionWillFit (MaximumPacketSize, HC_BytesLeftInFrame)
Begin
End
This algorithm takes two inputs, the current maximum packet size of the transaction
and a hardware counter of the number of bytes left in the current micro-frame. It
unconditionally adds a simple constant of 192 to the maximum packet size to account
for a first-order effect of transaction overhead and bit stuffing. If the transaction size is
greater than or equal to 128 bytes, then an additional constant of 128 is added to the
running sum to account for the additional worst-case bit stuffing of payloads larger
than 128. An inflection point was inserted at 128 because the f(x) plot was getting
close to the LastStart line.
®
®
Intel
IXP45X and Intel
IXP46X Product Line of Network Processors
Developer's Manual
422
®
®
IXP45X and Intel
IXP46X Product Line of Network Processors—USB 2.0 Host Controller
Bit
Byte Time
Time
721
90.125
48
6
144
Local Temp = MaximumPacketSize + 192
Local rvalue = TRUE
If MaximumPacketSize >= 128 then
Temp += 128
End If
If Temp > HC_BytesLeftInFrame then
Rvalue = FALSE
End If
Return rvalue
Explanation
Time for packet initiator (Host) to see the beginning of a
response to a transmitted packet.
Handshake packet as defined in USB core specification. Includes
sync, PID, eop, etc.
Total
Figure 56, "Best Fit Approximation" on page 421
August 2006
Order Number: 306262-004US
Need help?
Do you have a question about the IXP45X and is the answer not in the manual?
Questions and answers