Direct Memory Access Controller IP Core
With the DMA_CTRL, a DMA transfer can be initiated by software (via register access), or via a dedicated DMA-request pin that can be driven by a peripheral or other hardware module. The latter makes the core suitable for low-power systems where, in order to preserve power, it may be desirable to transfer data up on a schedule or when an event occurs, without waking up the CPU.
The DMA_CTRL configuration and status registers are accessible via a 32-bit host slave interface. The protocol for the host slave interface is configurable at synthesis time, and the user can choose between a Wishbone, AXI Lite, or APB interface. The core’s registers are used to configure the DMA transfer parameters, such as the number of bytes to be transferred, transfer direction, address offsets, bus addressing mode and burst size. The core also reports possible transfer status and possible bus errors to its status registers.
The core has two 32-bit master interfaces for transferring data: the one reads data from the source location and the other writes data to the destination location. The protocol for each master port is configurable at synthesis time, and the user can choose between a Wishbone, AXI, or AHB interface. The direction of the transfer is run-time programmable, and the user can choose to implement a different protocol for each interface. This means that the DMA_CTRL core can be used to transfer data between different buses (e.g. AHB and AXI, or AXI to Wishbone). If the same protocol is used for both master ports, then the two ports can be externally arbitrated and be connected to a single master port of the interconnect fabric.
The DMA_CTRL core is rigorously verified, silicon-proven, and available in RTL Verilog source or as a targeted FPGA netlist.
View Direct Memory Access Controller IP Core full description to...
- see the entire Direct Memory Access Controller IP Core datasheet
- get in contact with Direct Memory Access Controller IP Core Supplier
Block Diagram of the Direct Memory Access Controller IP Core
DMA Controller IP
- PCIe 5.0 Controller with AMBA AXI interface
- PCIe Controller for USB4 Hosts and Devices supporting PCIe Tunneling, with optional built-in DMA and configurable AMBA AXI interface
- PCIe 4.0 Controller with AMBA AXI interface
- NAND Flash Memory Controller with DMA
- CAN 2.0 Controller with DMA
- AXI4 Multi-Channel DMA Controller