《电子技术应用》
您所在的位置:首页 > 通信与网络 > 设计应用 > PCIe总线DMA高速传输系统的设计与实现
PCIe总线DMA高速传输系统的设计与实现
电子技术应用
刘佳宁,单伟,刘金鹏
中国电子科技集团公司第五十八研究所,江苏 无锡 214035
摘要: 针对数据传输系统中外设带宽受限、有效带宽低的问题,设计了一种PCIe总线的DMA高速传输系统。以FPGA为控制核心,采用PIO操作与DMA操作分时组合的控制模式实现全双工DMA读写通道的传输层协议。PIO操作配合中断实现指令与状态实时收发,DMA模块设计了一种两段式切片的裁剪机制实现PCIe协议的传输长度控制,发送模块设计请求仲裁逻辑实现请求事务的优先级仲裁,接收模块采用本地缓存TAG标号的方法实现请求回应的实时管理并解决回应乱序问题。最后通过时钟计数的方法测试传输速度,分析了影响读写传输速度的制约因素。经验证,DMA写操作有效带宽已经达到75%,非常接近80%的理论极限,DMA读操作也达到了60%。本设计解决了高速数据传输系统中的带受限宽问题,具有一定的工程应用价值。
中图分类号:TP393 文献标志码:A DOI: 10.16157/j.issn.0258-7998.233808
中文引用格式: 刘佳宁,单伟,刘金鹏. PCIe总线DMA高速传输系统的设计与实现[J]. 电子技术应用,2023,49(12):85-89.
英文引用格式: Liu Jianing,Shan Wei,Liu Jinpeng. Design and implementation of DMA high-speed transmission system based on PCIe[J]. Application of Electronic Technique,2023,49(12):85-89.
Design and implementation of DMA high-speed transmission system based on PCIe
Liu Jianing,Shan Wei,Liu Jinpeng
China Electronics Technology Group Corporation 58th Research Institute, Wuxi 214035, China
Abstract: According to the issue of limited and low-effective peripheral bandwidth in transmission system, this paper designs a DMA high-speed transmission system based on PCIe. Taking FPGA as control unit, the transaction layer protocol of full duplex DMA read and write channels is realized with the time-sharing control method which combined PIO and DMA. Then PIO receives the instructions and translates real-time status information, DMA controller takes charge of the transfer size with a two-section-slice clipping mechanism, transmit engine arbitrates all of the requests according to the priority logic, receive engine performs real-time management of completion packet by caching the TAG label, and solves out-of-order problem. At last, the transmission speed is tasted by means of clock counter, and the restriction factors affecting read/write transmission speed are analyzed. By the practical verification, the effective bandwidth of DMA write has reached 75%, which is very close to the theoretical limit of 80%, and DMA read effective bandwidth has also reached 60%. The design solved the problem of bandwidth limitation in high-speed transmission system, and affords certain engineering application value.
Key words : PCIe bus;DMA;two-section slice;request arbitration;out-of-order

0 引言

随着信息技术的不断发展,通信系统对数据传输带宽的要求也越来越高。作为系统内部数据交互的桥梁,IO总线是决定整个系统传输带宽和处理性能的关键[1]。

传统的第二代IO总线以PCI和PCI-X总线为代表,其特点是时钟频率较低,数据总线并行传输,在传输速度和硬件成本等方面制约了PCI总线的整体带宽[2],且由于总线共享,单一外设无法长时间占用总线,进一步限制了总的传输速率[3]。新兴的第三代IO总线PCI Express(PCIe)总线解决了上述问题。PCIe总线采用点到点串行差分结构,所有外设设备通过独立通道实现互联[4],因此所有外设单独使用总线通道的所有带宽,且各设备间可以并发传输互不影响[5],因此系统的整体性能得到有效提升,解决了高速数据传输的吞吐量问题。在现代通信领域,PCIe总线的使用前景十分广阔。

本文设计了一种基于PCIe总线架构的高速数据传输系统,考虑到PCIe协议的复杂性,可以使用协议芯片简化设计[6],本文则使用Xilinx官方提供的软核作为PHY模块实现PCIe链路层协议,同时利用FPGA丰富的逻辑资源和缓存资源设计顶层应用模块,完成PCIe协议包的收发,实现 PCIe板卡的完整协议。最后联合上层软件控制程序和底层驱动构成完整的闭环传输测试系统,为同类型数据传输系统的工程应用提供了设计参考。


本文详细内容请下载:https://www.chinaaet.com/resource/share/2000005811



作者信息:

刘佳宁,单伟,刘金鹏

(中国电子科技集团公司第五十八研究所,江苏 无锡 214035)





weidian.jpg



此内容为AET网站原创,未经授权禁止转载。