2 device configuration, Table 12-1. endpoint configuration – Intel PXA26X User Manual

Page 412

Advertising
background image

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-entry long, 8-bit wide FIFO that can only be read
or written by the processor.

For endpoints 1-15, the UDC uses its dual-ported 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 UDC
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 host sends a NAK
handshake in response to a Bulk IN data transmission, the UDC resends the data. Because the FIFO
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.5 k

pull-up

resistor must be connected to the USB cable’s D+ signal to pull the UDC+ 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 simultaneously. 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

Table 12-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

1

Bulk

IN

64x2

2

Bulk

OUT

64x2

3

Isochronous

IN

256x2

4

Isochronous

OUT

256x2

5

Interrupt

IN

8

6

Bulk

IN

64x2

7

Bulk

OUT

64x2

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

Advertising