喜欢1次
队伍编号:CICC1842
前文介绍了DDR3扩展,然而,对于大块数据而言,使用CPU进行搬运速度较慢,因此可以使用DMA进行数据搬运。这里会使用到前文提到的中断与DDR3。
本例中使用了Vivado提供的AXI-DMA IP,其中需要用到的寄存器如下,需要注意的是LENGTH寄存器不为0时会立刻开启传输。此外,接收端会接收到AXI Stream格式的数据,需要对AXIS数据进行逻辑处理。
寄存器名 | 地址偏移量 | 作用 |
MM2S_DMACR | 0x0000 | 使能DMA功能,使能DMA中断 |
MM2S_DMASR | 0x0004 | 对相应位写1,可以将中断置位 |
MM2S_SA | 0x0018 | DDR起始地址(32位) |
MM2S_LENGTH | 0x0028 | DMA写数据长度(字节为单位) |