![Intel IXP45X Скачать руководство пользователя страница 463](http://html1.mh-extra.com/html/intel/ixp45x/ixp45x_developers-manual_2073092463.webp)
Intel
®
IXP45X and Intel
®
IXP46X Product Line of Network Processors
August 2006
Developer’s Manual
Order Number: 306262--, Revision: 004US
463
USB 2.0 Host Controller—Intel
®
IXP45X and Intel
®
IXP46X Product Line of Network Processors
See
“Managing QH.FrameTag Field” on page 467
for the frame tag management rules.
Periodic Interrupt - Do Start Split
This is the state software must initialize a full- or low-speed interrupt queue head
StartXState bit. This state is entered from the Do_Complete Split state only after the
split transaction is complete. This occurs when one of the following events occur: The
transaction translator responds to a complete-split transaction with one of the
following:
• NAK. A NAK response is a propagation of the full- or low-speed endpoint's NAK
response.
• ACK. An ACK response is a propagation of the full- or low-speed endpoint's ACK
response. Only occurs on an OUT endpoint.
• DATA 0/1. Only occurs for INs. Indicates that this is the last of the data from the
endpoint for this split transaction.
• ERR. The transaction on the low-/full-speed link below the transaction translator
had a failure (e.g. timeout, bad CRC, etc.).
• NYET (and Last). The host controller issued the last complete-split and the
transaction translator responded with a NYET handshake. This means that the
start-split was not correctly received by the transaction translator, so it never
executed a transaction to the full- or low-speed endpoint, see
Do Complete Split” on page 464
for the definition of ‘Last’.
Each time the host controller visits a queue head in this state (once within the Execute
Transaction state), it performs the following test to determine whether to execute a
start-split.
• QH.S-mask is bit-wise anded with cMicroFrameBit (i.e. the and of the two bits).
Figure 71.
Split Transaction State Machine for Interrupt
Do_Start
Split
Do
Complete
Split
Halt
Queue
State
Active
Queue
State
(QH.S-Mask and cMicroFrameBit)
(QH.S-Mask and cMicroFrameBit)
Split Transaction
Complete
Data Loss
.or.
STALL
.or.
Babble
.or
CERR 0
MDATA
.or.
NYET
• Issue start-split transaction
• Tag QH with frame number according
to frame rules **(1,3)
• QH.C-prog mask = Zero (00h)
• Issue complete-split transaction
• Tag QH with frame number according
to the rules **Sframe tag rules
• QH.C-prog mask = cMicroFrameBit
(QH.C-Mask and cMicroFrameBit)
.and.
(FRINDEX[7:3].eq. QH.FrameTag)
.and.
CheckPreviousBit(QH.C-prog-mask,QH.C-mask,cMiroFrameBit
XactErr
Decrement Error Counter
(CERR) and Do immediate retry
of complete-split
B3946-001