PCI Express总线接口的DMA传输设计①
2017-10-20王红志姚恺丰
王红志 ,王 超 ,栾 勇 ,姚恺丰
1(中国科学院大学,北京 100049)2(中国科学院 沈阳计算技术研究所 高档数控国家工程研究中心,沈阳 110168)3(沈阳高精数控智能技术股份有限公司,沈阳 110168)4(国家电网公司东北分部电力调控分中心,沈阳 110180)
PCI Express总线接口的DMA传输设计①
王红志1,2,王 超2,3,栾 勇2,3,姚恺丰4
1(中国科学院大学,北京 100049)2(中国科学院 沈阳计算技术研究所 高档数控国家工程研究中心,沈阳 110168)3(沈阳高精数控智能技术股份有限公司,沈阳 110168)4(国家电网公司东北分部电力调控分中心,沈阳 110180)
在认真理解PCI Express协议及其应用技术的此基础上,使用FPGA实现PCI Express总线接口的DMA传输设计.本文主要从DMA发送模块、DMA接收模块和DMA状态控制模块三个部分对设计进行详细的介绍.最后,在基于Linux系统的PC机中实现PCI-E的驱动程序,使用BEEcube公司的miniBEE作为测试平台对设计进行检测并给出结果.
FPGA; PCI Express; DMA; Linux; 驱动程序
1 引言
系统总线也被叫做计算机总线、内部总线,在系统中用来连接的CPU、显卡、硬盘等功能部件.随着计算机技术的快速发展,CPU的处理速度越来越快,最近二十年占据着主导地位的PCI及其拓展的PCI-X系列总线已满足不了实际的应用需求,系统总线已经成为制约计算机系统性能继续提高的瓶颈.
在这个背景下,PCI Express(以下简称 PCI-E)总线规范一提出,迅速就得到了广泛的青睐.与原有的总线相比,PCI-E采用点对点串行连接的设备连接方式,每个设备都拥有独立的数据链路,可以达到远超出PCI总线的传输速率; 以数据包的方式进行数据传输,保证了端对……
