
Architecture
601
SPRUH82C – April 2013 – Revised September 2016
Copyright © 2013–2016, Texas Instruments Incorporated
Enhanced Direct Memory Access (EDMA3) Controller
17.2.5.1 Normal Completion
In normal completion mode (TCCMODE = 0 in OPT), the transfer or sub-transfer is considered to be
complete when the EDMA3 channel controller receives the completion codes from the EDMA3 transfer
controller. In this mode, the completion code to the channel controller is posted by the transfer controller
after it receives a signal from the destination peripheral. Normal completion is typically used to generate
an interrupt to inform the CPU that a set of data is ready for processing.
17.2.5.2 Early Completion
In early completion mode (TCCMODE = 1 in OPT), the transfer is considered to be complete when the
EDMA3 channel controller submits the transfer request (TR) to the EDMA3 transfer controller. In this
mode, the channel controller generates the completion code internally. Early completion is typically useful
for chaining, as it allows subsequent transfers to be chained-triggered while the previous transfer is still in
progress within the transfer controller, maximizing the overall throughput of the set of the transfers.
17.2.5.3 Dummy or Null Completion
This is a variation of early completion. Dummy or null completion is associated with a dummy set
(
). In both cases, the EDMA3 channel controller does not
submit the associated transfer request to the EDMA3 transfer controller(s). However, if the set
(dummy/null) has the OPT field programmed to return completion code (intermediate/final
interrupt/chaining completion), then it will set the appropriate bits in the interrupt pending register (IPR) or
chained event register (CER). The internal early completion path is used by the channel controller to
return the completion codes internally (that is, EDMA3CC generates the completion code).
17.2.6 Event, Channel, and PaRAM Mapping
Most of the DMA channels are tied to a specific hardware peripheral event, thus allowing transfers to be
triggered by events from device peripherals or external hardware. A DMA channel typically requests a
data transfer when it receives its event (apart from manually-triggered, chain-triggered, and other
transfers). The amount of data transferred per synchronization event depends on the channel’s
configuration (ACNT, BCNT, CCNT, etc.) and the synchronization type (A-synchronized or AB-
synchronized).
The association of an event to a channel is fixed. Each of the DMA channels has one specific event
associated with it. For the synchronization events associated with each of the programmable DMA
channels, see your device-specific data manual to determine the event to channel mapping.
If in an application, a channel does not make use of the associated synchronization event or does not
have an associated synchronization event (unused), that channel can be used for manually-triggered or
chained-triggered transfers, for linking/reloading, or as a QDMA channel.