English
Language : 

RM0319 Datasheet, PDF (127/368 Pages) STMicroelectronics – SPEAr320S architecture and functionality
RM0319
USB 2.0 Device ports (UDC)
Figure 37. In transaction flow in DMA mode
Idle
Idle
IN
Transaction
Data
available?
No Generate INTR
and NAK
Yes
Read the
TxFIFO &Provide
IN data
Transfer done
Wait for Status
from USB host
Poll demand
Transfer data Yes
From memory to
TxFIFO
TxFIFO
Availabe?
No
Packet
Completely
Transferred?
No Service other IN
requests and
return when done
Yes
Update Descriptor
Status
Got ACK
Yes
Status?
No
Rewined
READ pointer
11.4.3
Note:
Out operation (Data transfer from USB Host)
In the out direction, as soon as the UDC-AHB subsystem receives an out (or SETUP) data
from the USB Host (that is, when a packet of data is completed or - if thresholding is enabled
- a threshold is reached), it transfers the data to the buffers allocated to the endpoint in
application memory. Once the data is transferred, the subsystem updates the status of the
received data to the buffer’s status quadlet.
SETUP data is transferred to a 16-byte SETUP buffer. The pointer for this buffer is indicated
in the Endpoint setup buffer pointer register). Out data is transferred to the buffers indicated
by the descriptor, and the pointer for these descriptors is programmed in the CSRs.
The SETUP data directly addresses the buffers, while regular out data addresses the out
data buffers indirectly.
The transaction flow for all out endpoints is similar. The only difference is that isochronous
(iso-out) data is tagged with the frame number when the packet is received.
The transaction flow of out data from the USB Host to the application memory is given in
Figure 38.
Doc ID 022640 Rev 3
127/368