Vendor: Digital Blocks, Inc. Category: DMA

High-Throughput Multi-Channel DMA Controller

Scatter-Gather | AMBA AXI5 | 1 - 126 Channels

Overview

The Digital Blocks DB-DMAC-MCn-AXI5-HT SystemVerilog RTL IP Core is a high-throughput Scatter Gather (SG) Direct Memory Access (DMA) Controller with AMBA AXI5 Manager interfaces, a build-time number of independent DMA Channels (1 to 126) and a DMA data path of 64 to 1024 bits. It adds the AXI5 throughput features - unique IDs with out-of-order completion, read data chunking, the Busy indicator, QoS Accept and Max_Transaction_Bytes - to the DB-DMAC-MCn-AXI4-HT engine, so the interconnect and memory can keep up with a controller that already runs close to the full bus rate.

The inherited engine is measured: at 128 bits two channels use 97.6 % of the AXI4 bus, one channel holds 73 % at a 200-cycle read latency, and descriptor nodes are 2 cycles apart. The AXI5-HT keeps those mechanisms and lifts the limits that remain: one data ID per channel becomes a pool of unique IDs, so a channel's reads and writes complete out of order; wide reads come back in 128-bit chunks in any order; and the outstanding limit and channel arbitration follow the interconnect's Busy and QoS Accept signals. Every AXI5 feature is a build or register option; with all of them off the core behaves as the DB-DMAC-MCn-AXI4-HT.

Key features

High-Throughput Engine (from DB-DMAC-MCn-AXI4-HT, measured) 

  • Decoupled write path: AW runs ahead of W through a queue; W bursts go back-to-back 
  • Read-space reservation: buffer space is claimed when a read is issued, so RREADY is constant 1 - no  read stalls, no head-of-line blocking between channels 
  • Descriptor overlap: the next node's reads start while the current node's writes drain (2 cycles between  nodes) 
  • Dedicated descriptor manager with optional descriptor status write-back into each node 
  • Up to 16 outstanding reads and 16 outstanding writes per channel; burst lengths computed a cycle ahead, off the arbitration path 

AXI5 Throughput Features 

  • Unique ID indicator: every burst takes its own ID from a per-channel pool (1 to 16, default 8) and asserts  AxIDUNQ - the interconnect needs no ordering tracking for it 
  • Out-of-order completion: one channel's reads and writes complete in any order; data is reordered in a slot  buffer and completion is counted per descriptor 
  • Read data chunking: memory returns wide reads in 128-bit chunks in any order; each chunk is written  straight into its buffer slot 
  • Busy indicator: the outstanding-transaction limit steps down with RBUSY / BBUSY (75 / 50 / 25 %) and  recovers after a hold-off 
  • QoS Accept: the round-robin arbiter favors requests the subordinate will accept now 
  • Max_Transaction_Bytes: bursts are cut at the interconnect stripe size (64 to 4096 bytes), so the  interconnect never splits them 
  • Wake-up: AWAKEUP is raised a cycle before the first request after idle 

AXI5 Transactions 

  • WriteZero zero fill per node: no source read and no write data on the bus 
  • WriteNoSnoopFull: full-line, all-strobe writes let a system cache allocate without merging 
  • Prefetch: optional data-less hint issued ahead of the read stream to hide DRAM latency 
  • Regular-transactions-only build for interconnects that require it 

System, Integrity and Control 

  • Per-channel ARCACHE / AWCACHE and ARPROT / AWPROT: bufferable writes allow early  responses; no-allocate reads keep source data out of the system cache 
  • Data Check: odd parity per byte on read and write data (RDATACHK / WDATACHK) 
  • AXI5-Lite register subordinate with WSTRB; 32-bit, 4 KB register window 
  • Descriptor-level error reporting: failing node address and cause (write response, read data or descriptor  fetch; SLVERR or DECERR) 
  • Per-channel status and interrupts, global interrupt status / mask / vector, one processor interrupt; CIR and 
  • CFR describe the build to software 
  • Scatter-Gather and Transfer Control 
  • Linked lists of 32-byte nodes with 64-bit addresses and a 24-bit length; chained and ring structures (start /  branch, re-start, Wait-On-Restart) 
  • Memory-to-Memory, Memory-to-Peripheral, Peripheral-to-Memory, Peripheral-to-Peripheral; fixed address FIFO transfers; per-channel DREQ / DACK hardware pacing 
  • Unaligned source and destination at any byte, any length

Integration 

  • 1 to 126 channels (one global interrupt bank per 32); data width 64 / 128 / 256 / 512 / 1024 bits; 64-bit  addressing 
  • Each AXI5 feature is a build or register option, declared through the AXI5 interface properties; with all off  the core is the DB-DMAC-MCn-AXI4-HT 
  • SystemVerilog interfaces with modports plus a flat-pin wrapper; AMBA Manager / Subordinate naming 
  • Fully synchronous single clock, rising-edge, no gated clocks, no internal tri-states; technology independent RTL for ASIC and FPGA 

Block Diagram

Applications

  • Bulk data movement on AXI5 network-on-chip and mesh interconnects with DDR or HBM memory 
  • Wide 512 and 1024-bit data paths where read latency dominates 
  • Buffer initialization and zero fill without a source read 
  • Scatter-gather DMA for networking, storage and PCIe endpoint data movement 

Specifications

Identity

Part Number
DB-DMAC-MCn-AXI5-HT
Vendor
Digital Blocks, Inc.
Type
Silicon IP

Files

Note: some files may require an NDA depending on provider policy.

Provider

Learn more about DMA IP core

Toki: Profiling HBM Performance on FPGA Systems with RISC-V Soft Cores and PCIe Host DMA Traffic

Toki, released as open source, is the first hardware-software framework that enables profiling the performance of HBM on FPGA accelerator cards by jointly considering (i) the execution of workloads on RISC-V soft cores instantiated on the FPGA and (ii) the injection of memory traffic from the host system via DMA over PCIe, providing insights that cannot be obtained with synthetic traffic generators alone.

DMA IP Integration

There are many IP’s today . These IP’s can be simple IP’s like Timer to complex IP’s like Accelerators. In Most of the cases IP’s are Integrated in standard way. There are cases where you have the option of Integrating it differently. This goes un-noticed or unable to be implemented due to time constraints. One such IP that would be discussed in this paper is DMA . This paper tries to explain idea of Integrating Direct Memory access(DMA) and Interrupt Control Unit(ICU) differently but final implementation requires some changes in IP. There is a possibility that alternate design explained below may be already implemented.

Frequently asked questions about DMA IP

What is High-Throughput Multi-Channel DMA Controller?

High-Throughput Multi-Channel DMA Controller is a DMA IP core from Digital Blocks, Inc. listed on Semi IP Hub.

How should engineers evaluate this DMA?

Engineers should review the overview, key features, supported foundries and nodes, maturity, deliverables, and provider information before shortlisting this DMA IP.

Can this semiconductor IP be compared with similar products?

Yes. Buyers can compare this product with similar semiconductor IP cores or IP families based on category, provider, process options, and structured technical specifications.

×
Semiconductor IP