DMA Controller的interface:
DMA Controller提供这些feature:
1)instruction set,对DMA transfer进行program
2)AXI master interface,进行DMA transfer
3)两个APB slave interface,设计为secure/non_secure的配置接口。
4)支持多种transfer类型,Memory-to-memory/Memory-to-peripheral/
Peripheral-to-memory/Scatter-gather
5)program security state for each DMA channel
6)Event/interrupt signal
一个带有DMA Controller的system:
Configuration options:
1)Number of active AXI read/write transaction
2)Number of DMA channel
3)Depth of internal data buffer
4)Depth of read/write instruction queue
5)Request acceptance capability of a peripheral request interface
Design Flow:
1)Implementation, synthesizes the RTL to produce a hard a macrocell
Build configuration,include and exclude logic that can affect the area or maximum frequency
2)Integration, Connecting it to a memory system and peripheral
Configuration inputs, tying inputs to specific values to configures some feature of DMA Controller.
3)Programming, develops the software required to control the DMA Controller
programming particular values into software-visible register.
Terminology
Initialization, A feature of the DMAC that is initialized when it exits from reset.
DMA transfer, the action of transferring a single byte,halfword,word
DMA manager, manages the operation of the DMAC by executing its own program thread.
DMA channel, control a DMA cycle by executing its own program thread.