12-2 Intel® PXA26x Processor Family Developer’s Manual
Universal Serial Bus Device Controller
service request is generated when a packet has been received. The DMA engine services the UDC
FIFOs in 32-byte increments. Interrupts are also generated when the FIFO encounters a short
packet or zero-length packet. Endpoint 0 has a 16-ent ry lo ng, 8-bi t wi de F IFO that can onl y be rea d
or written by the processor.
For endpoints 1-15, the UDC uses its dual-po rted memory to hold data for a Bulk OUT transaction
while the transaction is checked for errors. If the Bulk OUT transaction data is invalid, the UD C
sends a NAK handshake to request the host to resend the data. The software is not notified that the
OUT data is invalid until the Bulk OUT data is received and verified. If the hos t s e nds a NAK
handshake in response to a Bulk IN data transmissio n, t he UDC r esends the dat a. Becau se th e F IFO
maintains a copy of the data, the software does not have to reload the data.
The external pins dedicated to the UDC interface are UDC+ and UDC-. The USB protocol uses
differential signalling between the two pins for half-duplex data transmission. A 1.5kpull-up
resistor must be connected to the USB cable’s D+ signal to pull the UD C+ pin high when it is not
driven. Pulling the UDC+ pin high when it is not driven allows the UDC to be a high-speed,
12-Mbps device and provides the correct polarity for data transmission. The serial bus uses
differential signalling to transmit multiple states simultan eously. These states are combined to
produce transmit data and various bus conditions, including: idle, resume, start of packet, end of
packet, disconnect, connect, and reset.
12.2 Device Configuration
Table12-1 shows the device’s configuration.
Table 12-1. Endpoint Configuration
Endpoint Number Type Function FIFO Size (bytes) X
number of FIFOs
0 Control IN/OUT 16
1Bulk IN64x2
2Bulk OUT64x2
3 Isochronous IN 256x2
4 Isochronous OUT 256x2
5 Interrupt IN 8
6Bulk IN64x2
7Bulk OUT64x2
8 Isochronous IN 256x2
9 Isochronous OUT 256x2
10 Interrupt IN 8
11 Bulk IN 64x2
12 Bulk OUT 64x2
13 Isochronous IN 256x2
14 Isochronous OUT 256x2
15 Interrupt IN 8