USB0 Device Controller
CPPI 4.1
CPU
Interrupts
Queue Indicators
USB bus
TXCQ
TXSQ
Queue
push/pop
operations
Queue
push/pop
operations
cdma_sreq
cdma_sready
CDMA
Schedule
(CDMAS)
CPPI
DMA
(CDMA)
Main
Memory
Queue
Manager
SSRAM/
PPU
Transfer
DMA
(XDMA)
Endpoint
FIFOs
Mentor
USB 2.0
Core
FIFO_full
FIFO_empty
FIFO_full
FIFO_empty
Configuration rd/wr
DMA_req[30]
Preliminary
www.ti.com
Communications Port Programming Interface (CPPI) 4.1 DMA
Figure 20-18. Transmit USB Data Flow Example (Initialization)
20.4.9.1.2 CDMA and XDMA Transfer Packet Data Into Endpoint FIFO (Step 2)
The steps for CDMA and XDMA to transfer packet data into endpoint FIFO are as follows:
1. The Queue Manager informs the CDMAS that the TXSQ is not empty.
2. CDMAS checks that the CPPI FIFO FIFO_full is not asserted, then issues a credit to the CDMA.
3. CDMA reads the Packet Descriptor pointer (PPD) and descriptor size hint from the queue manager
4. For each 64-byte block of data in the packet data payload (note that packet refers here to CPPI
packet which is not the same as USB packet and it means to refer to data transfer size):
(a) The CDMA transfers a max burst of 64-byte block (OCP burst) from the data to be transferred in
main memory to the CPPI FIFO
(b) The XDMA sees FIFO_empty not asserted and transfers 64-byte block from CPPI FIFO to
Endpoint FIFO.
(c) The CDMA performs the above 2 steps (‘a’ and ‘b’) 3 more times since the data size of the HPD
is 256 bytes.
5. The CDMA reads the first buffer descriptor pointer (PBD).
6. For each 64-byte block of data in the packet data payload:
(a) The CDMA transfers a max burst of 64-byte block from the data to be transferred in main
memory to the CPPI FIFO.
(b) The XDMA sees FIFO_empty not asserted and transfers 64-byte block from CPPI FIFO to
Endpoint FIFO.
(c) The CDMA performs the above 2 steps (‘a’ and ‘b’) 2 more times since data size of the HBD is
256 bytes.
7. The CDMA reads the second Buffer Descriptor pointer (PBD
8. For each 64-byte block of data in the packet data payload:
(a) The CDMA transfers a max burst of 64-byte block from the data to be transferred in main
memory to the CPPI FIFO.
(b) The XDMA sees FIFO_empty not asserted and transfers 64-byte block from CPPI FIFO to
Endpoint FIFO.
(c) The CDMA transfers the last remaining 32-byte from the data to be transferred in main memory
to the CPPI FIFO.
(d) The XDMA sees FIFO_empty not asserted and transfers 32-byte block from CPPI FIFO to
Endpoint FIFO.
1815
SPRUGX9 – 15 April 2011
Universal Serial Bus (USB)
© 2011, Texas Instruments Incorporated
Содержание TMS320C6A816 Series
Страница 2: ...Preliminary 2 SPRUGX9 15 April 2011 Submit Documentation Feedback 2011 Texas Instruments Incorporated...
Страница 92: ...92 Read This First SPRUGX9 15 April 2011 Submit Documentation Feedback 2011 Texas Instruments Incorporated...
Страница 1122: ...1122 Multichannel Audio Serial Port McASP SPRUGX9 15 April 2011 Submit Documentation Feedback 2011 Texas Instruments Incorporated...
Страница 1562: ...1562 Real Time Clock RTC SPRUGX9 15 April 2011 Submit Documentation Feedback 2011 Texas Instruments Incorporated...
Страница 1658: ...1658 Timers SPRUGX9 15 April 2011 Submit Documentation Feedback 2011 Texas Instruments Incorporated...
Страница 1750: ...1750 UART IrDA CIR Module SPRUGX9 15 April 2011 Submit Documentation Feedback 2011 Texas Instruments Incorporated...
Страница 1984: ...1984 Universal Serial Bus USB SPRUGX9 15 April 2011 Submit Documentation Feedback 2011 Texas Instruments Incorporated...