English
Language : 

LM3S1G21 Datasheet, PDF (342/955 Pages) Texas Instruments – Stellaris® LM3S1G21 Microcontroller
Micro Direct Memory Access (μDMA)
8.2.2
8.2.3
8.2.4
Table 8-1. μDMA Channel Assignments (continued)
μDMA Channel
20
21
22
23
24
25
26
27
28
29
30
31
Primary Assignment
General-Purpose Timer 1A
General-Purpose Timer 1B
UART1 Receive
UART1 Transmit
SSI1 Receive
SSI1 Transmit
Available for software
Available for software
Available for software
Available for software
Dedicated for software use
Reserved
Secondary Assignment
EPI0 NBRFIFO
EPI0 WFIFO
Available for software
Available for software
Available for software
Available for software
Available for software
Available for software
Available for software
Available for software
Priority
The μDMA controller assigns priority to each channel based on the channel number and the priority
level bit for the channel. Channel number 0 has the highest priority and as the channel number
increases, the priority of a channel decreases. Each channel has a priority level bit to provide two
levels of priority: default priority and high priority. If the priority level bit is set, then that channel has
higher priority than all other channels at default priority. If multiple channels are set for high priority,
then the channel number is used to determine relative priority among all the high priority channels.
The priority bit for a channel can be set using the DMA Channel Priority Set (DMAPRIOSET)
register and cleared with the DMA Channel Priority Clear (DMAPRIOCLR) register.
Arbitration Size
When a μDMA channel requests a transfer, the μDMA controller arbitrates among all the channels
making a request and services the μDMA channel with the highest priority. Once a transfer begins,
it continues for a selectable number of transfers before rearbitrating among the requesting channels
again. The arbitration size can be configured for each channel, ranging from 1 to 1024 item transfers.
After the μDMA controller transfers the number of items specified by the arbitration size, it then
checks among all the channels making a request and services the channel with the highest priority.
If a lower priority μDMA channel uses a large arbitration size, the latency for higher priority channels
is increased because the μDMA controller completes the lower priority burst before checking for
higher priority requests. Therefore, lower priority channels should not use a large arbitration size
for best response on high priority channels.
The arbitration size can also be thought of as a burst size. It is the maximum number of items that
are transferred at any one time in a burst. Here, the term arbitration refers to determination of μDMA
channel priority, not arbitration for the bus. When the μDMA controller arbitrates for the bus, the
processor always takes priority. Furthermore, the μDMA controller is held off whenever the processor
must perform a bus transaction on the same bus, even in the middle of a burst transfer.
Request Types
The μDMA controller responds to two types of requests from a peripheral: single or burst. Each
peripheral may support either or both types of requests. A single request means that the peripheral
342
January 22, 2012
Texas Instruments-Production Data