Xilinx FPGA PCI Express Endpoint Master DMA
[复制链接]
基于PCI Express的数据采集卡 PCIE数据采集卡 PCI Express数据采集卡 本人在北京工作6年以上,从事FPGA外围接口设计,非常熟悉PCI Express协议,设计调试了多个基于PCI Express接口的数据采集卡. 本人非常熟悉Virtex-5/Virtex-6 FPGA PCI Express Block Endpoint模块,基于该模块设计了PCI Express Endpoint Master DMA. 1. Master DMA位于FPGA内部,FPGA执行DMA操作,主要包括两大功能MA Write(FPGA-->内存)和DMA Read(内存-->FPGA). 2. 4x PCI Express DMA Write(FPGA-->内存)的速度可达860MB/s;4x PCI Express DMA Read(内存-->FPGA)的速度可达840MB/s. 3. 8x PCI Express DMA Write(FPGA-->内存)的速度可达1640MB/s;8x PCI Express DMA Read(内存-->FPGA)的速度可达1590MB/s. 4. FPGA内部的Master DMA也包含与DMA传输相关的控制状态寄存器和中断寄存器. 5. PCI Express驱动采用WinDriver,采用Legacy PCI或MSI中断方式,用户应用软件通过WinDriver的API函数访问PCI Express寄存器文件. PCI Express接口特性如下: 1. 自适应链路速率,支持Gen 1、2.5Gbps/Lane(Virtex-5 FPGA)和Gen 2、5.0Gbps/Lane(Virtex-6 FPGA) 2. 自适应链路宽度,支持PCI Express x8/x4/x1 3. 支持Master DMA Write、Master DMA Read、MSI/传统PCI中断、寄存器读写、RAM读 写 4. 支持Master DMA Write和Master DMA Read全双工数据传输 5. PCI Express驱动支持Windows、Linux等操作系统,如Windriver 6. 即插即用,支持热插拔 本人已经在Xilinx评估板ML555和ML605,以及自制的 PCIE金手指板卡上调试验证了PCI Express Endpoint Master DMA功能. 1. Master DMA Write数据传输功能,数据传输流方向:光纤/RocketIO GTP--> DDR2/DDR3内存 --> PCI Express Master DMA Write --> PC内存 --> PC硬盘. 2. Master DMA Read数据传输功能,数据传输流方向:PC硬盘 --> PC内存 --> PCI Express Master DMA Read --> DDR2/DDR3内存 --> 光纤/RocketIO GTP接口. 3. 寄存器访问:软件访问FPGA内部与DMA传输相关的寄存器. 4. FPGA发出Legacy PCI或MSI中断. 5. 用户应用程序,采用Visual C/C++编写. 本人可以提供FPGA源代码,PCI Express驱动、用户应用程序源代码以及相关设计、测试文档.同时还可以在Xilinx评估板ML555和ML605,以及自制的PCIE金手指板卡上演示验证. 如有PCI Express相关方面的技术合作,可联系我。 联系方式:fpga_coop@163.com
|