SWRU626 December 2025 CC3501E , CC3551E
The DMA controller is a flexible and highly configurable DMA controller designed to work efficiently with the Arm Cortex-M33 processor core of the microcontroller. The controller supports multiple data sizes and address increment schemes, multiple levels of priority among DMA channels, and several transfer modes to allow for sophisticated programmed data transfers. Each DMA channel can support all peripheral function, this can be configured independently.
Each channel also has a configurable block transfer size. The arbitration between channels is done at the end of block transfer and according to the priority scheme. Using the block size, it is possible to control exactly how many items are transferred to or from a peripheral every time a DMA service request is made.
Each DMA channel can be assigned as secured or non-secured at device cold boot. The secure or non-secure definition of a DMA channel is defined by the owner (the module which configured the DMA channel) amd the peripheral by the firewall assigned to it.