作者:Albert Wei,文章来源:FPGA FAE技术分享选集
支持64\128\256和512位数据路径; 支持x1\x2\x4\x8或x16链路宽度; 支持Gen1\Gen2和Gen3链路速度,Gen4适用于PCIe4C块; 每个队列都支持AXI4内存映射和AXI4流接口; 2048个H2C\C2H和CMPT队列集; 支持轮询模式(状态描述符写回)和中断模式; 中断支持2048个MSI-X向量,中断聚合。
从github上https://github.com/Xilinx/dma_ip_drivers下载软件程序,在Ubuntu或其他Linux的发行版如CentOS上进行编译,软件包中主要提供了几个关键程序和驱动,软件架构图如下图:
dma-ctl:提供了一组命令来配置和控制系统中的队列,可以创建\删除\启动\停止队列:
dma-from-device:卡到主机(C2H)的数据传输:
1.编译时准备,安装依赖的库
# sudo apt-get install libaio libaio-devel
2.执行make和make install 安装驱动和程序到系统目录
# sudo make && make install
modprobe qdma-pf
# dma-ctl dev list
#dma-ctl qdma01000 stat
感谢Hank Fu同学对此文章的提供的帮助!
如果您在QDMA方面有疑问,欢迎联系: