![Intel IXP45X Developer'S Manual Download Page 284](http://html1.mh-extra.com/html/intel/ixp45x/ixp45x_developers-manual_2073092284.webp)
Intel
®
IXP45X and Intel
®
IXP46X Product Line of Network Processors—USB 1.1 Device
Controller
Intel
®
IXP45X and Intel
®
IXP46X Product Line of Network Processors
Developer’s Manual
August 2006
284
Order Number: 306262-004US
A PRE (Preamble) PID precedes a low-speed (1.5 Mbps) USB transmission. The UDC
supports high-speed (12 Mbps) USB transfers only. PRE packets that signify low-speed
devices and the low-speed data transfer that follows such PRE packets are ignored.
8.3.4.1
Token Packet Type
A token packet is placed at the beginning of a frame and is used to identify OUT, IN,
SOF, and SETUP transactions. OUT and IN frames are used to transfer data, SOF
packets are used to time isochronous transactions, and SETUP packets are used for
control transfers to configure endpoints.
A Token packet consists of a sync, a PID, an address, an endpoint, and a CRC5 field
(see
). For OUT and SETUP transactions, the address and endpoint fields are
used to select the UDC endpoint that receives the data. For an IN transaction, the
address and endpoint fields are used to select the UDC endpoint that transmits data.
8.3.4.2
Start-of-Frame Packet Type
A Start-of-Frame (SOF) packet is a special type of token packet that is issued by the
USB host at a nominal interval of once every 1 ms +/- 0.0005 ms.
SOF packets consist of a sync, a PID, a frame number (which is incremented after each
frame is transmitted), and a CRC5 field, as shown in
.
The presence of SOF
packets every 1 ms prevents the UDC from going into suspend mode.
8.3.4.3
Data Packet Type
Data packets follow token packets and are used to transmit data between the USB host
and UDC. There are two types of data packets as specified by the PID: DATA0 and
DATA1. These two types of Data Packets are used to provide a mechanism to guarantee
data sequence synchronization between the transmitter and receiver across multiple
transactions.
During the handshake phase, the transmitter and receiver determine which data token
type to transmit first. For each subsequent packet transmitted, the data packet type is
toggled (DATA0, DATA1, DATA0, and so on).
A data packet consists of a sync; a PID; from 0 to 1,023 bytes of data; and a CRC16
field, as shown in
. Note that the UDC supports a maximum of 8 bytes of data
for an Interrupt IN data payload, a maximum of 64 bytes of data for a bulk data
payload and a maximum of 256 bytes of data for an isochronous data payload.
• Token
• Data
• Handshake
• Special
Table 110.
IN, OUT, and SETUP Token Packet Format
8 Bits
8 Bits
7 Bits
4 Bits
5 Bits
Sync
PID
Address
Endpoint
CRC5
Table 111.
SOF Token Packet Format
8 Bits
8 Bits
11 Bits
5 Bits
Sync
PID
Frame Number
CRC5