User manual

Table Of Contents
Zynq-7000 AP SoC Technical Reference Manual www.xilinx.com 413
UG585 (v1.11) September 27, 2016
Chapter 15: USB Host, Device, and OTG Controller
The device controller API software incorporates and abstracts for the application developer all of the
information contained in the device operational model. Each Endpoint can be configured for
bi-directional transfers (contain both IN and OUT endpoints).
Queue Head and Linked Transfer Descriptors:
15.7.1 Endpoint Queue Head Descriptor (dQH)
15.7.2 Endpoint Transfer Descriptor (dTD)
15.7.3 Endpoint Transfer Overlay Area
Descriptor and Data Flow
The top portion of Figure 15-14 shows the list of queue heads (one for each endpoint) and the list of
transfer descriptors that are referenced by the dQH and other dTD descriptors. The low portion of
the figure shows data being transferred between memory and the ULPI connection to USB.
X-Ref Target - Figure 15-13
Figure 15-13: USB Device Link-list Endpoints Example
4KB Memory
Buffer
Endpoint 11
IN
Endpoint 0
IN
Endpoint 1
OUT
Endpoint 0
OUT
usb.ENDPOINTLISTADDR
Endpoint Queue
Heads (dQH)
0x040
0x080
0x5C0
dTD Pointer
0x600
0x0B0
dTD Pointer
dTD
dTD Pointer
T=0
Buffer
Pointer
Queue
Head List
dTD
T=1
Buffer
Pointer
4KB Memory
Buffer
4KB Memory
Buffer
dTD
T=1
Buffer
Pointer
dTD Pointer
4KB Memory
Buffer
dTD
T=1
Buffer
Pointer
dTD Pointer
4KB Memory
Buffer
dTD
T=0
Buffer
Pointer
dTD Pointer
4KB Memory
Buffer
dTD
T=0
Buffer
Pointer
dTD Pointer
Transaction
Descriptors (dTD)
Transfer
Buffers
After a dTD is processed,
the controller will generate
an interrupt
if its IOC bit is set = 1.
UG585_c15_41_030713