Customizing the DMA Controller
The core has parameters so you can customize its function. You set the parameters in the General tab of the core's IP Configuration window.
| Parameter | Options | Description |
|---|---|---|
| Memory Interface Type | Disable, Enable | Disable: Use AXI-4 full duplex memory interface.
(Default) Enable: Use AXI-3 half duplex memory
interface. |
| Memory Interface External Width | 32, 64, 128, 256, 512 | Memory interface width that connects externally. Default:
64 |
| Buffer Bank Words | 128, 256, 512, 1024, 2048, 4096 | Buffer depth. Default: 512 |
| Buffer Bank Width | 16, 32, 64, 128, 256 | Buffer data width in bits. Default: 32 |
| Buffer Bank Count | 1, 2 | Buffer bank configuration. Default: 1 |
| Total Buffer Bank Width | – | Indicates the internal bank total width. |
| Total Allocated memory (Byte) | – | Indicates the total memory allocated for DMA. |
| Available Memory for Channel Buffer Allocation (Byte) | – | Indicates the memory available for channel buffer allocation. |
| Memory Write Queue | Enable, Disable | Enable hardware queue to improve overall write
throughput. Default: Disable |
| Memory Read Queue | Enable, Disable | Enable hardware queue to improve overall read
throughput. Default: Disable |
| CSR Interface Clock Mode | Enable, Disable | Enabling asynchronous makes the APB3 signals and interrupt to be
on a separate clock domain. Default: Disable |
| Custom Descriptor List Interface | Enable, Disable | Enable the interface for custom descriptor list. Default:
Disable |
| Priority-Weighted Round Robin Scheduler | – | Priority encoder is enabled by default. |
| Parameter | Options | Description |
|---|---|---|
| Channel n Enable | Enable, Disable | Instantiate channel on the DMA controller. Default: Disable
for all except Channel 0 and Channel 1 |
| Channel n Asynchronous Clock Mode | Enable, Disable | Run channel with asynchronous clock. Default: Enable on CH0
and CH1. Disable for others. |
| Channel n Scatter Gather Mode | Enable, Disable | Enable scatter-gather mode. Default: Enable on CH0 and CH1.
Disable for others. |
| Channel n Circular Buffer Mode | Enable, Disable | Enable circular buffer or self-restart mode. Default:
Disable |
| Channel Memory Transfer Mode | Enable, Disable | Enable data transfer mode without passing through the streaming interface. |
| Channel n Output Port | Enable, Disable | Enable AXI4-stream output interface. Default: Enable for CH0.
Disable for others. |
| Channel n Input Port | Enable, Disable | Enable AXI4-stream input interface. Default: Enable for CH1.
Disable for others. |
| Channel n Data width | 8, 16, 32, 64, 128, 256, 512 | AXI4-stream interface width. Default: 32 |
| Channel n Buffer Size | 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768 | Set the buffer size for channel 0. Any other enabled channel
follows channel 0 buffer size. See Buffer Size Settings for more information. Default: 1024 |
| Channel n Max Burst Size | 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384 | Maximum number of bytes within a burst transfer. Default:
128 |