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