The DMAC is an Advanced Microcontroller Bus Architecture (AMBA) compliant peripheral that is developed, tested, and licensed by ARM.
The DMAC provides an AXI master interface to perform the DMA transfers and two APB slave interfaces that control its operation. The DMAC implements TrustZone secure technology with one APB interface operating in the Secure state and the other operating in the Non-secure state. See the ARM Architecture Reference Manual for more information about TrustZone technology.
The DMAC includes a small instruction set that provides a flexible method of specifying the DMA operations. This enables it to provide greater flexibility than the fixed capabilities of a Linked-List Item (LLI) based DMA controller. To minimize the program memory requirements, the DMAC uses variable-length instructions.