Intel
®
IXP42X product line and IXC1100 control plane processors—Universal Serial Bus (USB)
v1.1 Device Controller
Intel
®
IXP42X Product Line of Network Processors and IXC1100 Control Plane Processor
DM September 2006
474 Order Number: 252480-006US
18.3.4 Packet Formats
USB supports four packet types:
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.
18.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 Table 163). 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.
18.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 Table 164.
The presence of SOF
packets every 1 ms prevents the UDC from going into suspend mode.
18.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).
•Token •Data
• Handshake • Special
Table 163. IN, OUT, and SETUP Token Packet Format
8 bits 8 bits 7 bits 4 bits 5 bits
Sync PID Address Endpoint CRC5
Table 164. SOF Token Packet Format
8 bits 8 bits 11 bits 5 bits
Sync PID Frame Number CRC5