C
4 WORDS (SRC
A)
16 WORDS (SRC
B)
1 WORD (SRC C)
A
B
SRC
DST
ITEMS=12
SRC
DST
ITEMS=n
Task List in Memory
2
1
3
Source Buffer
in Memory
Channel Control
Table in Memory
Channel Primary
Control Structure
Channel Alternate
Control Structure
DEST
Peripheral Data
Register
SRC
DST
ITEMS=16
Unused
SRC
DST
ITEMS=1
DST
³7$6.´
A
³7$6.´
B
³7$6.´
C
Unused
ITEMS=4
SRC
Unused
NOTES:
1. Application has a need to copy data items from three separate locations in memory into a peripheral data register.
2.
$SSOLFDWLRQ VHWV XS —'0$ ³WDVN OLVW´ LQ PHPRU\
, which contains the pointers and control configuration for three µDMA copy
³WDVNV
.
´
3. Application sets up the channel primary control structure to copy each task configuration, one at a time, to the
alternate control structure, where it is executed by the µDMA controller.
Functional Description
610
SLAU723A – October 2017 – Revised October 2018
Copyright © 2017–2018, Texas Instruments Incorporated
Micro Direct Memory Access (µDMA)
8.3.5.6
Peripheral Scatter-Gather
Peripheral Scatter-Gather mode is very similar to Memory Scatter-Gather, except that the transfers are
controlled by a peripheral making a µDMA request. Upon detecting a request from the peripheral, the
µDMA controller uses the primary control structure to copy one entry from the list to the alternate control
structure and then performs the transfer. At the end of this transfer, the primary control structure copies
the next task to the alternate control structure. If the next task is a memory-to-memory transfer, execution
starts immediately and runs to completion; if the next task is a peripheral-type transfer, the µDMA waits for
a peripheral request to begin.
By using this method, the µDMA controller can transfer data to or from a peripheral from a set of arbitrary
locations whenever the peripheral is ready to transfer data.
For an example of operation in Peripheral Scatter-Gather mode, see
and
. This
example shows a gather operation, where data from three separate buffers in memory is copied to a
single peripheral data register.
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
peripheral data register. 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.
Figure 8-5. Peripheral Scatter-Gather, Setup and Configuration