基于FPGA结构高速PCIe总线传输系统设计与实现
本文关键词:基于FPGA结构高速PCIe总线传输系统设计与实现
更多相关文章: PCIe FPGA Qsys SGDMA 驱动
【摘要】:PCI Express(PCIe)作为新一代总线接口,凭借其自身诸多优势一经推出就得到迅速发展。其有效的解决高速数据传输系统数据的吞吐量问题,广泛应用到雷达、卫星、测量等领域。然而由于协议本身的复杂性,真正研发出支持PCIe芯片的公司寥寥无几。众多IC设计者选用专用的PCIe芯片作为解决方案,其相对而言失去了协议本身的灵活性。本文采用带有PCIe硬核Stratix IV系列EP4SGX230KF40I4作为控制芯片,设计与实现了基于FPGA(Field Programmable Gate Array)的PCIe X4架构高速数据传输系统。该设计方案能保证在较大的传输带宽前提下,还可以针对实际情况设置PCIe硬核配置以满足需求,有效的推广PCIe的应用范围。主要内容如下:1、研究了PCIe协议原理,并对协议分层进行简单介绍。介绍了PCIe协议中的三种路由方式以及PCIe设备配置空间。2、硬件系统采用Qsys设计流程。硬件系统中包括PCIe硬核、SGDMA软核和Chip Memory等模块,PCIe硬核实现PCI Express1.0协议,SGDMA核实现了分散/聚集(Scatter/Gather)DMA硬件逻辑。在此基础上,测试了系统DMA读写数据吞吐量,其为后续硬件系统改进提供了参考依据。介绍实际项目中硬件逻辑和相关寄存器。3、在上文描述的硬件系统开发出对应的驱动程序。基于WDM模型开发出Windows系统的驱动程序,基于Linux内核3.10.52开发出中标麒麟下的驱动程序。文中详细描述了驱动程序中应用到技术和机制,中断处理结构的设计是本文重点和创新点。在此中断处理结构和SGDMA硬件逻辑共同基础下,能实现多个通道并发启动DMA操作,有效提高了系统整体吞吐量。4、根据用户需求,将访问硬件操作封装成函数接口,设计出相应动态链接库(DLL)。通过中间层DLL的封装,能进一步保证用户安全的操作硬件设备,从而提高系统稳定性。5、使用软件测试界面程序测试系统整体性能,其中Windows下使用MFC开发,Linux下使用QT开发。在测试界面程序中,测试驱动在通道FIFO队列半满中断和定时器中断模式下,每个通道数据吞吐量。测试结果表明整套系统性能满足实际工程指标,能够应用到实际工程中。
【关键词】:PCIe FPGA Qsys SGDMA 驱动
【学位授予单位】:电子科技大学
【学位级别】:硕士
【学位授予年份】:2016
【分类号】:TP336;TP334.7
【目录】:
- 摘要5-6
- ABSTRACT6-10
- 第一章 绪论10-15
- 1.1 课题研究背景和意义10-12
- 1.2 国内外研究现状12-13
- 1.2.1 PCI Express研究现状12-13
- 1.2.2 Qsys研究现状13
- 1.3 论文结构安排13-15
- 第二章 硬件技术介绍15-28
- 2.1 PCI Express总线概括15-22
- 2.1.1 PCI Express拓扑结构15-16
- 2.1.2 PCI Express的设备层16-18
- 2.1.3 路由机制18-21
- 2.1.4 PCI Express配置空间21-22
- 2.2 SGDMA硬件逻辑22-27
- 2.2.1 Dispatcher模块23-26
- 2.2.2 Read Master模块26-27
- 2.2.3 Write Master模块27
- 2.3 本章小结27-28
- 第三章 硬件系统设计28-42
- 3.1 Qsys开发平台以及开发板28-29
- 3.2 IP Compiler for PCI Express29-30
- 3.2.1 参数设置29
- 3.2.2 Avalon-MM-to PCI Express Address29-30
- 3.3 Qsys互联体系30-33
- 3.3.1 Qsys系统的组件31-32
- 3.3.2 Qsys系统具体设计32-33
- 3.4 Qsys系统下载以及DMA测试33-38
- 3.4.1 Qsys系统下载33-34
- 3.4.2 DMA测试34-38
- 3.5 实际中使用的Qsys系统38-41
- 3.6 本章小结41-42
- 第四章 软件系统设计与实现42-65
- 4.1 驱动程序中应用的技术和机制43-49
- 4.1.1 循环缓冲池43-44
- 4.1.2 Scatter/Gather DMA44-46
- 4.1.3 中断处理结构46-49
- 4.2 基于WDM模型PCIE设备驱动设计49-57
- 4.2.1 重要数据结构及其成员49-52
- 4.2.2 WDM驱动模型52-54
- 4.2.3 PCI Express接口驱动程序设计54-57
- 4.3 中标麒麟下PCIE设备驱动设计57-62
- 4.3.1 Linux设备驱动与计算机软硬件系统关系58
- 4.3.2 设备注册58-59
- 4.3.3 PCI Express接口驱动程序设计59-62
- 4.4 应用层与驱动通信62-64
- 4.4.1 应用程序打开设备63
- 4.4.2 提供给应用层的接口函数63-64
- 4.5 本章小结64-65
- 第五章 系统测试65-74
- 5.1 安装Windows PCI设备驱动程序65-66
- 5.2 Windows下调试环境的搭建66-67
- 5.3 Windows下驱动性能测试67-71
- 5.3.1 半满中断方式性能测试68-70
- 5.3.2 定时器中断方式性能测试70-71
- 5.4 中标麒麟下驱动测试71-73
- 5.4.1 安装驱动71-73
- 5.4.2 性能测试73
- 5.5 本章小结73-74
- 第六章 总结和展望74-76
- 6.1 总结74
- 6.2 展望74-76
- 致谢76-77
- 参考文献77-79
【相似文献】
中国期刊全文数据库 前10条
1 张莉;略论驱动程序[J];枣庄师专学报;2001年05期
2 刘晨明;必有一款适合你——四种鼠标驱动程序大比较[J];电脑爱好者;2001年02期
3 方成亮;驱动程序安装须知[J];电脑技术;2002年12期
4 ;驱动程序热升级[J];内蒙古广播与电视技术;2002年02期
5 大青蛙;把已安装的驱动程序挖出来——WinDriver Expirt[J];电脑爱好者;2002年13期
6 小猫;快速还原驱动程序[J];中国电子与网络出版;2003年05期
7 张敏,王晓明;WDM驱动程序构造的若干方法及实例[J];计算机工程与设计;2003年03期
8 张亚鹏;卸载驱动程序的利器[J];网络与信息;2003年08期
9 伍裕标;;安装驱动程序步步通[J];软件导刊;2003年02期
10 大阳;出色的驱动程序[J];个人电脑;2004年06期
中国重要会议论文全文数据库 前10条
1 马宏;王元钦;;PCI总线设备驱动程序的设计与应用[A];中国体视学学会图像分析专业、中国体视学学会仿真与虚拟现实专业、中国航空学会信号与信息处理专业第一届联合学术会议论文集[C];2000年
2 臧淼;;TMS320DM642的WDM驱动程序实现[A];2007通信理论与技术新发展——第十二届全国青年通信学术会议论文集(上册)[C];2007年
3 张玉民;陈定方;;Linux下USB驱动程序的设计与实现[A];湖北省机械工程学会机械设计与传动专业委员会第十五届学术年会论文集(一)[C];2007年
4 杨显强;田远富;;嵌入式系统中LCD驱动的实现原理[A];四川省通信学会2005年学术年会论文集[C];2005年
5 戴志坚;王厚军;许海清;;生物机能分析仪USB接口驱动程序的设计[A];第三届全国信息获取与处理学术会议论文集[C];2005年
6 姚念民;;容错集群中IP地址转移的实现[A];黑龙江省计算机学会2007年学术交流年会论文集[C];2007年
7 周斌;辛阳;陈涤;;一种文件监控的实现方法[A];2007北京地区高校研究生学术交流会通信与信息技术会议论文集(上册)[C];2008年
8 李莉;彭成宝;张霞;;OpenBASE JDBC Driver的设计与实现[A];第十五届全国数据库学术会议论文集[C];1998年
9 薛烁;王爱玲;;JDBC技术原理与合理选择驱动程序[A];全国ISNBM学术交流会暨电脑开发与应用创刊20周年庆祝大会论文集[C];2005年
10 陈磊;刘小华;倪国强;;遥感图像高性能实时处理系统的驱动程序研究[A];光电技术与系统文选——中国光学学会光电技术专业委员会成立二十周年暨第十一届全国光电技术与系统学术会议论文集[C];2005年
中国重要报纸全文数据库 前10条
1 湖北 胡锦承;幕后英雄——认识驱动程序(下)[N];电脑报;2000年
2 北京 杨特;驱动程序的方方面面(1)[N];电脑报;2003年
3 丁江华;驱动程序引起的故障[N];中国电脑教育报;2004年
4 本报记者 程鹏;驱动程序升级并非越新越好[N];南方日报;2007年
5 江苏 王志军;升级驱动程序的烦恼[N];中国电脑教育报;2000年
6 翟俊辉;老“猫”新用[N];中国电脑教育报;2003年
7 顾祥华;原版驱动程序无法安装?[N];中国电脑教育报;2003年
8 ;让驱动程序签名不再烦人[N];中国电脑教育报;2004年
9 姚道满;抓基层要讲“驱动程序”[N];解放军报;2002年
10 阿贵;驱动程序的安装[N];计算机世界;2004年
中国硕士学位论文全文数据库 前10条
1 姜超;基于ARM的LED可见光通信系统设计[D];大连海事大学;2016年
2 陈紫卿;数字对讲机监测系统用户接口单元的架构设计及驱动程序的开发[D];北京交通大学;2016年
3 吴兰;基于windows平台的数字示波器显示与处理软件的设计与实现[D];东南大学;2015年
4 贺位位;基于FPGA结构高速PCIe总线传输系统设计与实现[D];电子科技大学;2016年
5 费勤天;一种便携式粉尘监测与预警装置的设计[D];东华大学;2016年
6 赵玉祥;高速多通道采样系统数据接口技术研究与实现[D];电子科技大学;2016年
7 曾川洋;基于异步调用技术的仪用驱动程序及配套软件设计[D];电子科技大学;2014年
8 肖征荣;ISDN TA NDIS-WDM驱动软件设计[D];西安电子科技大学;2002年
9 王根根;基于Windows WDM的USB设备驱动程序开发与应用[D];中北大学;2007年
10 杨震;一种嵌入式驱动程序辅助生成工具的设计与实现[D];北京大学;2008年
,本文编号:590319
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/590319.html