English
Language : 

LM3S3748 Datasheet, PDF (194/753 Pages) List of Unclassifed Manufacturers – Microcontroller
Micro Direct Memory Access (μDMA)
9.2.6
9.2.6.1
9.2.6.2
9.2.6.3
9.2.6.4
■ Transfer mode
The control word and each field are described in detail in “μDMA Channel Control
Structure” on page 210. The μDMA controller updates the transfer size and transfer mode fields as
the transfer is performed. At the end of a transfer, the transfer size will indicate 0, and the transfer
mode will indicate "stopped". Since the control word is modified by the μDMA controller, it must be
reconfigured before each new transfer. The source and destination end pointers are not modified
so they can be left unchanged if the source or destination addresses remain the same.
Prior to starting a transfer, a μDMA channel must be enabled by setting the appropriate bit in the
DMA Channel Enable Set ((DMAENASET) register. A channel can be disabled by setting the
channel bit in the DMA Channel Enable Clear (DMAENACLR) register. At the end of a complete
DMA transfer, the controller will automatically disable the channel.
Transfer Modes
The μDMA controller supports several transfer modes. Two of the modes support simple one-time
transfers. There are several complex modes that are meant to support a continuous flow of data.
Stop Mode
While Stop is not actually a transfer mode, it is a valid value for the mode field of the control word.
When the mode field has this value, the μDMA controller will not perform a transfer and will disable
the channel if it is enabled. At the end of a transfer, the μDMA controller will update the control word
to set the mode to Stop.
Basic Mode
In Basic mode, the μDMA controller will perform transfers as long as there are more items to transfer
and a transfer request is present. This mode is used with peripherals that assert a DMA request
signal whenever the peripheral is ready for a data transfer. Basic mode should not be used in any
situation where the request is momentary but the entire transfer should be completed. For example,
for a software initiated transfer, the request is momentary, and if Basic mode is used then only one
item will be transferred on a software request.
When all of the items have been transferred using Basic mode, the μDMA controller will set the
mode for that channel to Stop.
Auto Mode
Auto mode is similar to Basic mode, except that once a transfer request is received the transfer will
run to completion, even if the DMA request is removed. This mode is suitable for software-triggered
transfers. Generally, you would not use Auto mode with a peripheral.
When all the items have been transferred using Auto mode, the μDMA controller will set the mode
for that channel to Stop.
Ping-Pong
Ping-Pong mode is used to support a continuous data flow to or from a peripheral. To use Ping-Pong
mode, both the primary and alternate data structures are used. Both are set up by the processor
for data transfer between memory and a peripheral. Then the transfer is started using the primary
control structure. When the transfer using the primary control structure is complete, the μDMA
controller will then read the alternate control structure for that channel to continue the transfer. Each
time this happens, an interrupt is generated and the processor can reload the control structure for
the just-completed transfer. Data flow can continue indefinitely this way, using the primary and
194
April 08, 2008
Preliminary