Table 12-3. in, out, and setup token packet format, 2 start of frame packet type, Table 12-4. sof token packet format – Intel PXA26X User Manual

Page 416: 3 data packet type, Table 12-5. data packet format, 4 handshake packet type, Table 12-6. handshake packet format

Advertising
background image

12-6

Intel® PXA26x Processor Family Developer’s Manual

Universal Serial Bus Device Controller

12.3.4.2

Start of Frame Packet Type

An SOF is a special type of token packet that the host issues at a nominal interval of once every
1 ms +/- 0.0005 ms. SOF packets consist of a sync, a PID, a frame number (incremented after each
frame is transmitted), and a CRC5 field (see

Table 12-4

).

The presence of SOF packets every 1 ms

prevents the UDC from entering suspend mode.

12.3.4.3

Data Packet Type

Data packets follow token packets and transmit data between the host and UDC. The PID specifies
two types of data packets: DATA0 and DATA1. These data packets provide a mechanism to ensure
that the data sequence between the transmitter and receiver is synchronized 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 1023
bytes of data, and a CRC16 field (see

Table 12-5

). The UDC supports a maximum of eight 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.

12.3.4.4

Handshake Packet Type

Handshake packets consist of a sync and a PID. Handshake packets do not contain a CRC because
the PID contains its own check field. Use handshake packets to report data transaction status,
including confirmation that data was successfully received, flow control, and stall conditions. Only
transactions that support flow control can return handshakes. The three types of handshake packets
are: ACK, NAK, and STALL. ACK indicates that a data packet was received without bit stuffing,
CRC, or PID check errors. NAK indicates that the UDC was unable to accept data from the host or
has no data to transmit. STALL indicates that the UDC was unable to transmit or receive data, and
requires host intervention to clear the stall condition. The receiving unit signals bit stuffing, CRC,
and PID errors by omitting a handshake packet.

Table 12-6

shows the format of a handshake

packet.

Table 12-3. IN, OUT, and SETUP Token Packet Format

8 bits

8 bits

7 bits

4 bits

5 bits

Sync

PID

Address

Endpoint

CRC5

Table 12-4. SOF Token Packet Format

8 bits

8 bits

11 bits

5 bits

Sync

PID

Frame Number

CRC5

Table 12-5. Data Packet Format

8 bits

8 bits

0–1023 bytes

16 bits

Sync

PID

Data

CRC16

Table 12-6. Handshake Packet Format

8 bits

8 bits

Sync

PID

Advertising