5 transaction formats, 1 bulk transaction type, Table 12-7. bulk transaction formats – Intel PXA26X User Manual

Page 417: 2 isochronous transaction type, Table 12-8. isochronous transaction formats

Advertising
background image

Intel® PXA26x Processor Family Developer’s Manual

12-7

Universal Serial Bus Device Controller

12.3.5

Transaction Formats

Packets are assembled into groups to form transactions. The USB protocol uses four different
transaction formats. Each transaction format is specific to a particular type of endpoint: bulk,
control, interrupt, or isochronous. Endpoint 0, by default, is a control endpoint and receives only
control transactions. All USB transactions are initiated by the host controller and transmitted in one
direction at a time (known as half-duplex) between the host and UDC.

12.3.5.1

Bulk Transaction Type

Bulk transactions guarantee error-free data transmission between the host and UDC by using
packet error detection and retry. The host schedules bulk packets when the bus has available time.
Bulk transactions are made up of three packet types: token, data, and handshake. The eight types of
bulk transactions are based on data direction, error, and stall conditions. The types of bulk
transactions are shown in

Table 12-7

. Packets sent from the UDC to the host are highlighted in

boldface type and packets sent from the host to the UDC are not.

12.3.5.2

Isochronous Transaction Type

Isochronous transactions ensure constant rate, error-tolerant transmission of data between the host
and UDC. The host schedules isochronous packets during every frame. USB protocol allows
isochronous transfers to take up to 90% of the USB bandwidth. Unlike bulk transactions, if
corrupted data is received, the UDC continues to process the corrupted data that corresponds to the
current start of frame indicator. Isochronous transactions do not support a handshake phase or retry
capability. Two packet types construct isochronous transactions: token and data. The types of
isochronous transactions based on data direction are shown in

Table 12-8

.

Table 12-7. Bulk Transaction Formats

Action

Token Packet

Data Packet

Handshake Packet

Host successfully received data from UDC

IN

DATA0/DATA1

ACK

UDC temporarily unable to transmit data

IN

None

NAK

UDC endpoint needs host intervention

IN

None

STALL

Host detected PID, CRC, or bit stuff error

IN

DATA0/DATA1

None

UDC successfully received data from host

OUT

DATA0/DATA1

ACK

UDC temporarily unable to receive data

OUT

DATA0/DATA1

NAK

UDC endpoint needs host intervention

OUT

DATA0/DATA1

STALL

UDC detected PID, CRC, or bit stuff error

OUT

DATA0/DATA1

None

NOTE: Packets from UDC to host are boldface

Table 12-8. Isochronous Transaction Formats

Action

Token Packet

Data Packet

Host received data from UDC

IN

DATA0

UDC received data from host

OUT

DATA0

NOTE: Packets from UDC to host are boldface

Advertising