Functional Description
1157
SPRUH22I – April 2012 – Revised November 2019
Copyright © 2012–2019, Texas Instruments Incorporated
M3 Micro Direct Memory Access ( µDMA)
between using the primary control structure to copy the next transfer instruction from the list and then
executing the new transfer instruction. The end of the list is marked by programming the control word for
the last entry to use Basic transfer mode. Once the last transfer is performed using Basic mode, the
µDMA controller stops. A completion interrupt is generated only after the last transfer. It is possible to loop
the list by having the last entry copy the primary control structure to point back to the beginning of the list
(or to a new list). It is also possible to trigger a set of other channels to perform a transfer, either directly,
by programming a write to the software trigger for another channel, or indirectly, by causing a peripheral
action that results in a µDMA request.
By programming the µDMA controller using this method, a set of arbitrary transfers can be performed
based on a single µDMA request.
and
show an example of operation in Memory Scatter-Gather mode. This
example shows a
gather
operation, where data in three separate buffers in memory is copied together into
one buffer.
shows how the application sets up a µDMA task list in memory that is used by the
controller to perform three sets of copy operations from different locations in memory. The primary control
structure for the channel that is used for the operation is configured to copy from the task list to the
alternate control structure.
shows the sequence as the µDMA controller performs the three sets of copy operations. First,
using the primary control structure, the µDMA controller loads the alternate control structure with task A. It
then performs the copy operation specified by task A, copying the data from the source buffer A to the
destination buffer. Next, the µDMA controller again uses the primary control structure to load task B into
the alternate control structure, and then performs the B operation with the alternate control structure. The
process is repeated for task C.