Read data
Write
command
Write data
Destination FIFO
register set
SRC
Transfer request
submission
EDMA3TCn
EDMA3TCn_ERRINT
To completion
detection logic
in EDMA3CC
Read
command
SRC active
register set
Read
controller
W
rite
controller
Program
register set
Functional Description
Each event in the event queue is processed in FIFO order. When the head of the queue is reached, the
PaRAM associated with that channel is read to determine the transfer details. The TR submission logic
evaluates the validity of the TR and is responsible for submitting a valid transfer request (TR) to the
appropriate EDMA3TC (based on the event queue to the EDMA3TC association, Q0 goes to TC0 , Q1
goes to TC1, Q2 goes to TC2, and Q3 goes to TC3). For more information, refer to
The EDMA3TC receives the request and is responsible for data movement, as specified in the transfer
request packet (TRP), other necessary tasks like buffering, and ensuring transfers are carried out in an
optimal fashion wherever possible. For more information on EDMA3TC, refer to
If you have decided to receive an interrupt or to chain to another channel on completion of the current
transfer, the EDMA3TC signals completion to the EDMA3CC completion detection logic when the transfer
is complete. You can alternately choose to trigger completion when a TR leaves the EDMA3CC boundary,
rather than wait for all of the data transfers to complete. Based on the setting of the EDMA3CC interrupt
registers, the completion interrupt generation logic is responsible for generating EDMA3CC completion
interrupts to the CPU. For more information, refer to
Additionally, the EDMA3CC also has an error detection logic that causes an error interrupt generation on
various error conditions (like missed events, exceeding event queue thresholds, etc.). For more
information on error interrupts, refer to
.
11.3.1.2 EDMA3 Transfer Controller (EDMA3TC)
shows a functional block diagram of the EDMA3 transfer controller (EDMA3TC).
Figure 11-5. EDMA3 Transfer Controller (EDMA3TC) Block Diagram
The main blocks of the EDMA3TC are:
•
DMA program register set: The DMA program register set stores the transfer requests received from
the EDMA3 channel controller (EDMA3CC).
•
DMA source active register set: The DMA source active register set stores the context for the DMA
transfer request currently in progress in the read controller.
•
Read controller: The read controller issues read commands to the source address.
•
Destination FIFO register set: The destination (DST) FIFO register set stores the context for the DMA
transfer request(s) currently in progress in the write controller.
•
Write controller: The write controller issues write commands/write data to the destination slave.
•
Data FIFO: The data FIFO exists for holding temporary in-flight data.
•
Completion interface: The completion interface sends completion codes to the EDMA3CC when a
transfer completes, and generates interrupts and chained events (also, see
for more
information on transfer completion reporting).
878
Enhanced Direct Memory Access (EDMA)
SPRUH73H – October 2011 – Revised April 2013
Copyright © 2011–2013, Texas Instruments Incorporated