基於Spartan-6, Virtex-5/Virtex-6/Virtex-7/7 Series FPGA PCI Express Block Endpoint模塊設計PCI Express Endpoint Master DMA.
a、參考xilinx官方提供的xapp1052的設計
該設計有兩個嚴重的缺點,第一個是PCIE DMA傳輸效率不高;第二個是當PC機正在進行DMA傳輸時,訪問PCIE寄存器地址,會導致PC死機的問題;
b、針對xapp1052的問題,重新設計PCIE DMA架構,結構框圖如下
c、PCI Express接口特性
1. 自適應鏈路速率,支持Gen 1、2.5Gbps/Lane(Spartan-6, Virtex-5 FPGA)和Gen 2、5.0Gbps/Lane(Virtex-6/7 Series FPGA)和Gen 3、8.0Gbps/Lane(Virtex-7/UltraScale Kintex FPGA)
2. 自適應鏈路寬度,支持PCI Express x8/x4/x2/x1
3. 支持Master DMA Write、Master DMA Read、MSI/傳統PCI中斷、寄存器讀寫、RAM讀寫
4. 支持Master DMA Write和Master DMA Read全雙工數據傳輸
5. PCI Express驅動支持winXP、Windows7 32/64位、Linux等操作系統,如Windriver,linux pcie driver
6. 即插即用,支持熱插拔
d、單向傳輸時的PCI Express性能
1. 1x PCI Express Gen 1 DMA Write(FPGA-->內存)的速度可達225MB/s;1x PCI Express DMA Read(內存-->FPGA)的速度可達220MB/s.
2. 4x PCI Express Gen 1 DMA Write(FPGA-->內存)的速度可達905MB/s;4x PCI Express DMA Read(內存-->FPGA)的速度可達890MB/s.
3. 8x PCI Express Gen 1 DMA Write(FPGA-->內存)的速度可達1800MB/s;8x PCI Express DMA Read(內存-->FPGA)的速度可達1760MB/s.
4. 4x PCI Express Gen 2 DMA Write(FPGA-->內存)的速度可達1810MB/s;4x PCI Express DMA Read(內存-->FPGA)的速度可達1780MB/s.
5. 8x PCI Express Gen 2 DMA Write(FPGA-->內存)的速度可達3560MB/s;8x PCI Express DMA Read(內存-->FPGA)的速度可達3530MB/s.
6. 4x PCI Express Gen 3 DMA Write(FPGA-->內存)的速度可達3605MB/s;4x PCI Express DMA Read(內存-->FPGA)的速度可達3550MB/s.
7. 8x PCI Express Gen 3 DMA Write(FPGA-->內存)的速度可達6150MB/s;8x PCI Express DMA Read(內存-->FPGA)的速度可達6110MB/s.
e、雙向傳輸時的PCI Express性能
1. 1x PCI Express Gen 1 DMA Write(FPGA-->內存)的速度可達210MB/s;1x PCI Express DMA Read(內存-->FPGA)的速度可達205MB/s.
2. 4x PCI Express Gen 1 DMA Write(FPGA-->內存)的速度可達850MB/s;4x PCI Express DMA Read(內存-->FPGA)的速度可達840MB/s.
3. 8x PCI Express Gen 1 DMA Write(FPGA-->內存)的速度可達1700MB/s;8x PCI Express DMA Read(內存-->FPGA)的速度可達1660MB/s.
4. 4x PCI Express Gen 2 DMA Write(FPGA-->內存)的速度可達1710MB/s;4x PCI Express DMA Read(內存-->FPGA)的速度可達1680MB/s.
5. 8x PCI Express Gen 2 DMA Write(FPGA-->內存)的速度可達3350MB/s;8x PCI Express DMA Read(內存-->FPGA)的速度可達3300MB/s.
6. 4x PCI Express Gen 3 DMA Write(FPGA-->內存)的速度可達3370MB/s;4x PCI Express DMA Read(內存-->FPGA)的速度可達3310MB/s.
7. 8x PCI Express Gen 3 DMA Write(FPGA-->內存)的速度可達5800MB/s;8x PCI Express DMA Read(內存-->FPGA)的速度可達5780MB/s.
如有PCI Express相關方面的技術合作和交流,可聯系我。
聯系方式:495673622@qq.com