使用Xilinx PCIE XDMA框架读写访问DDR3内容

复制代码
在 FPGA 开发中,使用 XDMA(PCIe DMA)是实现主机和 FPGA 之间数据传输的常见方法。`xdma_rw.exe` 是一个官方提供的命令行工具,用于与 FPGA 进行读写操作,支持从 PCIe 总线读取或写入数据。我利用xdma框架实现了DDR3内存的读写访问,下面是详细的操作步骤。  

一、建立工程

XDMA IP核的配置如下:

配置完的接口如下:

mig ip主要配置的地方如下:

添加AXI接口形式的mig核,使得上位机数据能够存入DDR3同时中断信号能够中断上位机,对应的完整block design框图如下:

接下来很重要的是要对Address Editior进行更改:

XDMA针对AXI_Lite部分的映射地址设置为0x40000000,则上位机0地址便于AXI_LITE0x40000000对应:

绑定管脚:

二、安装xdma系统驱动

将程序烧录到FPGA板卡后,检测到PCI串行端口,接下来安装对应的驱动程序。

在终端打开测试模式:

重启计算机,安装驱动程序,直接在官方下载即可,安装成功的界面如下:

这里已经提供了编译好的xdma_rw.exe文件,同时给定的操作如下:

根据地址分配的情况可知,如果输入0x000_0000将对应于中断寄存器内容,AXI对应映射地址0x4000_0000;

如果从0x4000_0000开始读写将会映射到MIG IP中0x8000_0000。

对DDR3对应的地址进行读写,结果如下,说明通过XDMA-AXI MIG-DDR3读写成功。

相关推荐
daxi15012 小时前
Verilog入门实战——第5讲:Testbench 仿真编写 + 波形查看与分析
fpga开发
FPGA的花路16 小时前
UDP协议
fpga开发·以太网·udp协议
LCMICRO-133108477461 天前
长芯微LPS123完全P2P替代ADP123,高性能、低压差的线性稳压器
单片机·嵌入式硬件·fpga开发·硬件工程·dsp开发·线性稳压器
fei_sun1 天前
面经、笔试(持续更新中)
fpga开发·面试
xixixi777771 天前
通信领域的“中国速度”:从5G-A到6G,从地面到星空
人工智能·5g·安全·ai·fpga开发·多模态
Nobody331 天前
Verilog always语句详解:从组合逻辑到时序逻辑
fpga开发
李嘉图Ricado1 天前
FPGA 时序约束与分析
fpga开发
白又白、1 天前
时序优化和上板调试小结
fpga开发
Z22ZHaoGGGG2 天前
verilog实现采样电流有效值的计算
fpga开发
fei_sun2 天前
牛客Verilog刷题篇
fpga开发