基于Xilinx公司硬IP核的方法实现PCI Express总线接口及数据的传输设计.docx
《基于Xilinx公司硬IP核的方法实现PCI Express总线接口及数据的传输设计.docx》由会员分享,可在线阅读,更多相关《基于Xilinx公司硬IP核的方法实现PCI Express总线接口及数据的传输设计.docx(8页珍藏版)》请在第一文库网上搜索。
1、基于Xi1inx公司硬IP核的方法实现PCIExpress总线接口及数据的传输设计现代测控系统和通信领域对数据传输速率的要求越来越高。相比PC中其他技术的发展,总线技术的发展显得相对缓慢,总线性能已经成为制约系统性能发挥的瓶颈。传统的ISA,EISA总线等已无法适应高速数据传输的要求,PCI总线技术虽然经过了不断的修正和发展,但是由于它固有的缺陷,使其应用领域受到限制。PCIExpress总线以其优异的性能和低廉的造价引起了业界的广泛关注,具有广阔的应用前景。本文介绍PC1Express总线接口的设计方法,并实现一个基于IP核的PC1Express总线接口。1PCIExpress总线简介PCI
2、Express总线2是InteI公司于1997年提出的第3代I/O技术,是种全新的串行总线技术。与PC1总线相比,PCIExpress总线具有以下特点:(1)在数据传输模式上,PCIEXPreSS总线采用双工串行传输模式,一条PCIExpress通道由2对1VDS差分线对组成:一对负责发送,另一对负责接收,单向数据传输速率为2.5Gb/s。(2)具有很好的灵活性,一个PC1Express物理连接可以根据实际需要配置成XI,2,4,X8,16,32个并行的数据通道,满足不同设备之间通信带宽的要求。(3)在软件层与PC1总线完全兼容,原有PC1总线的驱动程序可以完全移植到PC1Express总线架
3、构的系统中。(4)串行连接采用自同步时钟技术,时钟内嵌于串行数据的8bit/10bit编码中,可实现数据传输率的自适应调整。PCIExpress协议定义了3层结构:物理层,数据链路层和事务层。每个层次按照协议中规定的内容,完成相应的数据处理功能。2 PCIExpress接口设计方法PCIExpress总线的接口的设计方法大体有2种:使用专用接口芯片或者使用可以实现PC1Express物理接口的可编程器件。专用接口芯片实现了PCIExpress总线的物理层、数据链路层和事务层的控制逻辑。例如,PEX8311是P1X公司推出的第1款本地总线到PC1ExpressX1的桥接芯片3-4,符合PC1Ex
4、press1.0规范,支持自动极性反转、CRC校验、链路设备电源管理,具有直接主模式、直接从模式、DMA和数据预取等功能。使用PEX8311实现PC1Express接口,用户仅需实现相对简单的本地总线接口即可,降低了开发难度。但是这种方法受限于专用接口芯片的性能,用户无法根据自身的需求提升接口的性能。可编程器件设计方案的基本思想是由FPGA实现PC1Express的上层电路,利用Phi1iP公司或公司提供的PHY(物理层)器件实现物理层接口,通常需要购买XiIinX公司或要tera公司提供的IP核与PHY器件配合使用。在有些FPGA产品中,集成有PC1Express接口的硬核模块,可以采用相应
5、的产品实现PC1Express接口的功能。例如,Xi1inx公司VirteX-51XT/SXT/FXT/TXT系列FPGA器件中,集成有PC1Express硬核端点模块,能够自动完成数据链路层和物理层的数据处理功能。采用这种方法,用户只需要设计处理事务层数据包的逻辑电路即可。还可以根据自己的需求,设计具有特殊功能的电路结构,发挥接口的性能,但是这种方法的开发难度较大,开发周期相对较长。3 PCIExpress接口实现本设计采用Xi1inx公司VirteX-5系列xc5v1x30t芯片,使用该芯片内部的PC1ExpressEndpoint硬核端点模块,设计了处理事务层数据的逻辑电路,实现了计算机
6、内存与用户逻辑之间数据的正确传输。其中,控制状态机的设计和DMA控制器的设计是重点、难点,下面详细介绍具体的实现过程。4 .1接口电路的设计在接口电路中,PCIExpress物理层和数据链路层的电路采用XiIinX公司的PC1ExpressEndpointB1ockp1usv1.5硬核端点模块实现,能够有效完成接口物理层和数据链路层的数据处理功能,提供给上层一个事务层数据接o上层电路主要由5部分电路构成,分别是核配置与辅助控制模块、数据发送控制器、数据接收控制器、数据输入FIFO和数据输出FIFO,如图1所示,最终提供给用户FIFO类型的用户逻辑接口。greEadpom:B1ockP1m硬楂冷
7、点模块PIO_TO_CTR1核配与情6控制模块、忠8、於RXengA敬疝收控制器EP_TXenpae数.发送控制器FIFQJtaraout雷怡出FIFO=OFffO_daum数据G入FIFoS1PCIE工PIeSS接口电路结N核配置与辅助控制模块与硬核端点模块紧密联系,完成硬核端点模块中通道宽度、时钟频率、设备号、版本号、存储空间类型与大小等一系列可控制参数的配置与一些基本功能的控制。硬核端点模块提供的事务层数据接口为64bit的数据发送接口和64bit的数据接收接口以及控制数据发送和接收的一系列控制信号接口。数据接收控制器将收到的事务层包进行解析,根据数据包的类型进行相应的处理。数据发送控制
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于Xilinx公司硬IP核的方法实现PCI Express总线接口及数据的传输设计 基于 Xilinx 公司 IP 方法 实现 PCI Express 总线接口 数据 传输 设计