The direct memory access (DMA) controller allows movement of data from one memory address to another without CPU intervention. For example, the DMA can be used to move data from ADC conversion memory to SRAM. The DMA reduces system power consumption by allowing the CPU to remain in low power mode, without having to awaken to move data to or from a peripheral.
The DMA in these devices support the following key features:
- 3 independent DMA transfer channels
- 1 full-feature channel (DMA0), supporting repeated transfer modes
- 2 basic channels (DMA1, DMA2), supporting single transfer modes
- Configurable DMA channel priorities
- Byte (8-bit), short word (16-bit), word (32-bit) and long word (64-bit) or mixed byte and word transfer capability
- Transfer counter block size supports up to 64k transfers of any data type
- Configurable DMA transfer trigger selection
- Active channel interruption to service other channels
- Early interrupt generation for ping-pong buffer architecture
- Cascading channels upon completion of activity on another channel
- Stride mode to support data re-organization
For more details, see the DMA chapter of the
MSPM0 L-Series 32-MHz Microcontrollers Technical Reference Manual.
The following tests can be applied as functional safety mechanisms for this module (to provide diagnostic coverage on a specific function):