《基于fpga的pcie接口设计》由会员分享,可在线阅读,更多相关《基于fpga的pcie接口设计(34页珍藏版)》请在金锄头文库上搜索。
1、毕业设计(论文)题 目: 基于FPGA的PCIE接口设计 学 院: 信息与通信工程学院 专 业: 电子信息工程 学生姓名: 班级/学号 指导老师/督导老师: 起止时间: 200 年 月 日 至 200 年 月 日 摘要摘 要在过去的二十几年中,PCI总线在许多领域中得到了广泛的应用,但是随着微处理器、存储器和互连网络的飞速发展,并行数据传输的PCI总线技术逐渐成为系统整体性能提升的瓶颈。从上世纪90年代初期,PCI总线技术至今已经在业内存在了十余年,在这些年中,它的发展是缓慢的,与PC总线相比,每三年会提升一倍的性能,从最初的8位PC/XT、16位ISA总线、32位的EISA和MCA、VL总线
2、到PCI、64位PCI-/66MHZ、PCI-X,但是处理器每18个月性能就会提升一倍(一个摩尔周期是18个月),正因为PC总线和处理器的性能发展不同步,才导致PC总线的发展出现了滞后,PCI总线技术跟不上发展的潮流,出现了瓶颈。PCIExpress(简称PCIE)总线的出现,颠覆了传统,完全的改变了原本的PCI总线的并行技术,PCIE采用的是新型的串行点对点技术,改善了PCI总线传输速度,以及系统带宽方面的本质缺陷,PCIE总线的提出,解决了PCI总线的存在的不足之处,PCIE总线将发展成为取代PCI总线的新型数据总线,而且可以实现更加全面的性能,以更多的功能,更加全面的可扩展性和更加低廉的
3、成本,并且可编程逻辑技术,在当前电子设计领域中已经成为最具有活力和发展前景的技术,通过采用FPGA技术,对通信卡的PCI接口,外部逻辑电路进行集成,并利用目前通用计算机强大的数字信息处理功能,节省了硬件成本,提高系统可靠性和可扩展性,结合XLINX LX335型号FPGA的PCIE Express接口高速数据传输,研究了在一般情况下编写PCIE设备驱动程序时所面临的尖锐问题和解决方法,重点涉及到了驱动程序和硬件接口,以及应用程序等几个方便进行阐述,使用ISE,WinDriver开发工具,实现具有简单DMA数据传输和链式DMA传输功能的驱动程序的有效方法。关键词:PCIE ;ISE;FPGA;3
4、0AbstractIn the past 20 years, PCI bus has been widely used in many fields, but as the rapid development of microprocessor, memory, and interconnection network, parallel data transmission PCI bus technology has gradually become the bottleneck of overall system performance improvements. From the earl
5、y 1990 s, PCI bus technology has existed for more than ten years in the industry, in these years, its development is slow Comparing with PC bus. Every three years doubled the performance, from the original 8-bit PC/XT, 16-bit ISA bus, 32-bit EISA and MCA and VL bus to PCI and PCI - 64/66 MHZ, PCI -
6、X, but the processor performance would be doubled every 18 months (a mole period is 18 months). The PC bus and processor performance development are not synchronized that contribute to the development of PC bus lag, PCI bus technology cant keep up with the development of the trend, then the bottlene
7、ck appeared. The appearance of PCI Express (PCIE) bus subvert the tradition, completely changed the original parallel technology of PCI bus, PCIE used a new type of serial peer-to-peer technology, improved the PCI bus transmission speed, and the natural defects in the system bandwidth. PCIE bus also
8、 solved the exist deficiency of the PCI bus. PCIE bus will become a new type of data bus instead of the PCI bus, and can achieve a more comprehensive performance, with more features, more comprehensive scalability and low cost, and can programme logic technology, which has become the most dynamic an
9、d prospecting development in the current electronic design field. By using FPGA technology, the communication card of PCI interface, external logic circuit integration, and the general computer powerful digital information processing functions, PCLe bus saved hardware cost and improved the system re
10、liability and scalability, combining XLINX LX335 type FPGA PCIE Express interface high speed data transmission, studied the problems and solutions when in the general case writing PCIE device driver, mainly involves driver and hardware interface, and elaborates the application and so on.Using the IS
11、E, WinDriver development tools to implement effective methods of simple DMA data transmission and chain DMA trans.Keywords:PCIE;ISE; FPGA;目录目录摘要(中文)(英文)第一章绪论11.1 PCIE-总线概述11.2课题研究北京及意义21.3 论文研究的主要内容与意义2第二章基于FPGA的 PCI-E高速接口设计42.1系统总线设计42.2 FPGA内置PCIE硬核5第三章设备驱动的程序83.1选择开发工具83.2使用WinDriver设计驱动83.3 驱动核心
12、代码11第四章FPGA 流程154.1 PCIE部分与外围接口定义154.2 内部的中断和工作流程图184.3ChipScope板上调试时序图19第五章基于中断方式的DMA传输设计235.1 界面设计235.2 性能测试23第六章总结与发展26结束语28参考文献29基于FPGA的PCIE接口设计第一章 绪论1.1 PCI-E总线概述PCI-Express是目前最新一代的接口和总线标准,它原本被命名为“3GIO”1,是Intel公司在2001年最先提出,并肩负了下一代接口和总线标准的代表。之后便交给PCI-SIG(PCI特殊兴趣组织)研究认证并且发布后,从新命名为“PCI-Express”,全新
13、一代的接口和总线标准取代了现行的PCI和AGP,统一了现行各种总线的标准。PCI-E是分组的串行链接协议,高速串行点对点双通道高带宽传输,他的优势是数据传输速率高,目前最高可达到10GB/s,而且发展潜力强大,由于采用高速串行点对点双通道高带宽传输,链接的设备可分配独享通道带宽,不需要向整个总线请求带宽,可以将数据传输速率提升很高的频率,达到PCI不能提供的高带宽,PCIE也有很多种规格,从PCI Express 1X到PCI Express 16X,可以满足不同设备的需求。PCIE最新的接口是PCIE 3.0接口,其比特率为8GB/s,约为上一代产品带宽的两倍,当然也还有PCIE 2.0以及
14、PCIE(即1.0版本),除了带宽翻倍带来的数据吞吐量大幅提高之外,PCI-E 3.0的信号速度更快,相应地数据传输的延迟也会更低。与PCI并行总线相比,PCIE总线具有以下特点:1)PCIE是串行总线,可以进行点对点传输,而且每个传输通道独享带宽。2)PCI Express总线支持双向传输模式和数据分通道传输模式。PCIE还有多种不同速度的接口模式,这包括了1X、2X、4X、8X、16X以及更高速的32X。PCIE1.1版本单个链路的单向吞吐量能达到250MB/s。双向传输的速度带宽更能够达到500MB/s3)PCI Express总线充分利用先进的点到点互连、基于交换的技术、基于包的协议来
15、实现新的总线性能和特征。电源管理、服务质量(QoS)、热插拔支持、数据完整性、错误处理机制等也是PCI Express总线所支持的高级特征。4)与PCI总线良好的继承性,可以保持软件的继承和可靠性。PCI Express总线关键的PCI特征,比如应用模型、存储结构、软件接口等与传统PCI总线保持一致,但是并行的PCI总线被一种具有高度扩展性的、完全串行的总线所替代。5) PCI Express总线充分利用先进的点到点互连,降低了系统硬件平台设计的复杂性和难度,从而大大降低了系统的开发制造设计成本,极大地提高系统的性价比和稳定性2。系统总线带宽提高同时,减少了硬件PIN的数量,硬件的成本直接下降由于PCIE总线硬件设计简单,它没有大量的数据和控制线,对于硬件电路设计者来说,省去了很多硬件设计工作2。而且PCIE吞吐量大,软件向下兼容,只要找到合适的总线接口芯片,很容易将现有的PCI总线设备升级为PCIExpress设备。PCI Express架构如图1所示,即PCI Express的层次体系结构,他保持了与PCI寻址模式的兼容性,从而保证了所有现有的应用程序和驱动操作无需改变。它总共分为四层,从下到上分别为:物