赞
踩
在FPGA gen3中实现了x4 25Gb/s,x8 50Gb/s的dma控制器,同时也支持寄存器读写。已在多项目实践,稳定可靠。(源码QQ 2552781720)
CPU向FPGA传送数据DMA过程如下:
1、驱动程序向操作系统申请一片物理连续的内存;
2、主机向该地址写入数据;
3、主机将这个内存的起始物理地址及Size告诉FPGA;
4、FPGA向主机发起读TLP请求—连续发出多个读请求;
5、主机向FPGA返回CPLD包—连续返回多个CPLD;
6、FPGA取出CPLD包中的有效数据;
7、FPGA发送完数据后通过特定形式通知主机DMA完成;
FPGA向CPU传送数据DMA过程如下:
1、驱动程序向操作系统申请一片物理连续的内存;
2、主机将这个内存的起始物理地址及Size告诉FPGA;
3、FPGA向主机发起写TLP请求,并将数据放入TLP包中—连续发出多个写请求;
4、FPGA发送完数据后通过中断等形式通知主机DMA完成;
5、主机从内存中获取数据;
————————————————
版权声明:博主可提供PCIE源码及驱动,有需要的联系QQ 2552781720
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。