PCI总线高速数据传输系统设计.docx

上传人:安*** 文档编号:17791251 上传时间:2022-05-26 格式:DOCX 页数:10 大小:20.58KB
返回 下载 相关 举报
PCI总线高速数据传输系统设计.docx_第1页
第1页 / 共10页
PCI总线高速数据传输系统设计.docx_第2页
第2页 / 共10页
点击查看更多>>
资源描述

《PCI总线高速数据传输系统设计.docx》由会员分享,可在线阅读,更多相关《PCI总线高速数据传输系统设计.docx(10页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、PCI总线高速数据传输系统设计ronggang导语:本文通过一套数据收集卡的设计介绍了PCI总线数据传输的根本经过,给出了系统整体设计方案和PCI接口通讯方式及驱动程序实现,并着重讨论了PCI数据传输中影响传输速率的各个方面摘要:本文通过一套数据收集卡的设计介绍了PCI总线数据传输的根本经过,给出了系统整体设计方案和PCI接口通讯方式及驱动程序实现,并着重讨论了PCI数据传输中影响传输速率的各个方面。关键词:PCI总线,WinDriver,直接存储器存取计算机总线扩展技术使得基于计算机的数据收集技术迅速得到应用,基于PC机的数据收集系统是目前应用最为广泛的数据收集系统之一,不但广泛应用于电力设

2、备监控、遥测遥感等测控领域,在声纳、雷达、通讯、地质、医疗器械等领域中也有着重要的应用。高速数据传输始终是计算机相关领域研究的重点,它是计算机感悟外部世界并对其进展控制的根底。PCI总线协议是Intel公司1992年提出,为知足高速数据输入/输出要求而设计的一种低本钱,高性能的部分总线协议。32位PCI总线的峰值传输速率为132MB/s33MHz4Byte。在PC机的数据传输中,PCI总线以其卓越的性能得到了广泛的应用。高速的数据传输要求进步PCI总线的带宽利用率,使其尽量接近PCI总线的极限速率。本文具体介绍了PCI总线高速数据传输系统设计的关键技术,并实现了一套高速数据收集系统。2硬件电路

3、设计该系统硬件电路板的构造框图如图1所示。其中PCI9054总线控制器负责部分总线与PCI总线间的接口通讯。由于PCI9054Local总线局部信号时序也比拟复杂,用门电路不但难以实现而且所需要芯片数目较多,影响电路板的扩大才能及通用性,故采用CPLD实现PCI9054Local端的控制。从框图中可以看到,PCI9054部分数据总线高五位数据线接到CPLD引脚上,这五根数据线可以承受和发送数据,根据接收到的数据对其译码产生控制信息,还可以发出数据使PCI9054产生门铃中断和MailBox中断。PCI接口数据传输效率非常高而A/D收集数据效率较低,所以本设计采用FIFO来缓存数据,也可以同时收

4、集多路数据。PCI9054部分总线支持50MHz时钟,为配合A/D工作,本设计选用40M时钟。PCI9054的所有地址线和控制信号都只与CPLD连接,产生CPLD的工作状态和各种控制信息。FIFO采用TI公司消费的SN74V3690芯片,该芯片非常合适于网络,视频,信号处理,数据通讯和其他需要大量数据和非对等总线匹配的应用。align=center图1硬件电路框图/align3DMA传输方式设计3.1改良的状态机设计一般情况下状态机的转换图如图2所示。该状态机有三种传输状态,空闲状态、等待状态和传输状态。该状态机能成功完成与PCI9054的配合数据传输,传输性能稳定,效果较好。是如今PCI90

5、54部分总线状态机设计的一般方法。通过实际测试,在用户形式下,采用该状态机查询方式DM,A传输速率可以稳定到达68MByte/s.align=center图2一般状态转换图/alignPCI总线峰值速率为132MByte/s,而以上状态机和传输状态下DMA速率只有68MByte/s讲明其中存在不少破绽。比照该状态机的时序与PCI9054给出的标准DMA传输时序可知,一般状态机在ADS#信号为低后先进入等待状态用来配置各种信号线,然后才开场传输状态。所以每次启动传输都要浪费一个时钟周期的时间,这种浪费在高速数据传输经过中十分是DMA传输中是非常可观的。而PCI9054标准DMA传输在ADS#信号

6、为低后立即开场数据传输并不需要等待周期,所以等待周期可以省略,状态机只需要两个状态用来产生时序,即空闲状态和数据传输状态,这样状态机转换经过可以简化。但是由于PCI9054不只需要DMA传输,还需要一些其他操纵,比方读写某些控制字和状态标志位等,所以在CPLD中还要区分地址。所以本设计采用了新的状态机,改良的状态机状态转换图如图3所示。实际测得在同一台机器上,新状态机在用户形式下,查询方式DMA传输速率可以稳定到达88MByte/s。所以在同种情况下,改良的状态机速率可以比原状态机速率高出20MByte/s。由传输速率的大幅进步可以看出,这种改良方式是非常成功的。align=center图3改

7、良的状态转换图/align3.2DMA传输形式选择PCI9054支持两种DMA传输方式:连续形式和集散形式。连续形式即一般的DMA传输方式块传输,它要求PCI端的物理存储地址连续,Local端地址连续或者不变如从FIFO中读取数据,地址始终不变。集散形式DMA传输可以申请一个链表式的描绘符表用来存储各个物理地址不连续的和传输大小不固定的多块数据的描绘存放器值,PCI9054可以自动通过控制存放器指针从PCI端或者LOCAL端读取存放器的值并配置存放器,开场一次次的传输。通过集散形式DMA传输,可以一次传递更多的数据。但是集散形式DMA传输在传输完一块数据之后要重新配置存放器的值,所以速度比连续

8、形式稍慢。本设计对两种DMA传输形式进展了比照,在其他条件一样的情况下,通过逻辑分析仪测得连续形式下DMA传输速率为95.3MByte/s,集散形式下DMA传输速率为91.2MByte/s。可以看出,连续形式在同种情况下速度要比集散形式高出4MByte/s。但是连续形式由于只能单次启动DMA,所以传输数据量大小有限,这在大量的数据传输是非常不利。而集散形式由于可以在传输经过中通过描绘符表重新配置存放器,所以可以一次传输较大的数据量,且重新配置存放器的工作不需要驱动程序干预,PCI9054会自动完成该经过,所以可以在传输速度降低不多的情况下得到更大的数据量。集散形式传输是PCI9054支持的DM

9、A传输的特色形式。实际测得,在赛扬1GHz,256M内存机器上,一样条件下,连续形式最多可以一次传输4MByte数据,而集散形式最多可以一次传输32MByte。集散形式可以传输的数据量远远大于连续形式。所以在需要一次传输的数据量较大而速度要求相对不太严格情况下集散形式是较为理想的选择。3.3终止方式选择DMA经过的终止可以通过查询和中断两种方式检测到。查询方式DMA传输原理为在启动DMA之后一直读取存放器DMACSR04的值,当该位为1时表示DMA传输完毕。中断方式DMA为在启动DMA时使能DMA完成中断,系统接收到中断之后在中断处理例程中讲清空中断,并读取DMA传来的数据。在一样条件下测得查

10、询方式下连续DMA传输速率为95MByte/s.中断方式下连续DMA传输速率为114.2MByte/s。由两种终止方式速度比拟可知中断方式在同样条件下能比查询方式速度进步将近20MByte/s。PCI总线极限速度为132MByte/s,而这种传输方式速率已经到达114MByte/s,所以这种方式DMA速度已接近PCI总线的峰值速度。4驱动程序设计4.1驱动程序的引出从最广泛的意义讲,一个“驱动程序是操纵一个硬件设备的一组函数。在任何操纵系统上,设备驱动程序都必须与根本的系统代码进展和谐的作用。Microsoft为保证系统的平安性、稳定性、可移植性,对应用程序访问硬件资源进展了限制,不能直接进展

11、物理内存、I/O端口的访问以及中断处理等硬件操纵。4.2使用WinDriver开发设备驱动程序1驱动程序开发环境选择开发设备驱动程序的软件平台有很多种,如DDK、VTOOSD、WinDriver、DriverStudio等.本设计采用WinDriver来开发设备驱动程序.WinDriver对常见的PCI接口芯片AMCC、PLX系列提供了很好的支持,有专门的函数供开发人员利用,方便了驱动程序的开发.2本设计用户模态下的驱动程序介绍WinDriver驱动程序可以分为两种工作形式,即用户形式和内核形式。本设计用户形式下的驱动程序的功能包括:PCI配置存放器访问、映射到部分空间的各种存放器访问包括部分

12、控制存放器、RunTime存放器、DMA存放器、和消息队列存放器,各种PCI设备选择,EEPROM访问,IO操纵,LOCAL映射的各个空间的访问,DMA操纵,中断处理等。3本设计中内核驱动程序的设计数据收集需要传送大量的数据,需要快速的将收集到的数据传递给主机,数据传送占用时间越短,应用程序能利用的时间也就越多,进而对于数据收集卡和主机之间的互相通讯和数据传输提出了较高的要求。编写该设备驱动程序的关键性问题在于:快速可靠的DMA传输、响应及时的中断处理等。WinDriver提供了KernelPlugIn技术,可以实现理想的中断响应速度,解决对于高性能的需求。为了进步系统的整体性能,在用户形式下

13、驱动程序的根底上采用了KernelPlugIn技术。将中断,DMA处理转移到内核形式下执行。进而大大进步了系统的处理速度。4DMA速率讨论系统数据传输不仅需要传递数据,还要通过中断来引发数据传输和传输完毕呼唤。传输时间=中断时间+DMA传输时间通过逻辑分析仪查看硬件波形图可以计算出内核形式下中断触发DMA传输速率为105.4MByte/s。所以数据持续传输速率可达105MByte/s。可以看到,中断响应时间也影响数据传输的最终速度。由第四章DMA局部讨论可知,用户形式下测得的DMA传输期间最快速度为95MB/s。内核形式下DMA速度最快为114MB/s。而最初的DMA传输速度为68MB/s。从

14、最初到如今,DMA传输期间传输速度进步了46MB/s。在当代信号处理技术中,通过PCI总线进展快速数据传输是实现主机与外设间通讯的主要方式。作者在实验室利用PCI9054接口芯片设计了一个带有12通道的高速信号收集器。对影响数据传输速率的各个环节逐一考虑,提出了一整套数据传输方案。将数据持续传输速率进步到100MByte/s以上。接近PCI总线的极限速率。本文的创新点是:对部分总线状态机状态转换进展了研究。部分总线状态机采用改良的状态转换逻辑,将DMA数据传输效率进步了约20MByte/s。参考文献:1裴喜龙,童莉.基于PCI总线的高速数据收集卡系统设计与实现J.微机算计信息,2006,7-1:129-131。2WinDriverv6.23UsersGuideDB/OL.:/jungo.2004。3PCI9054DataBookDB/OL.:/plxtech.2000-01。4李贵山,陈金鹏主编.PCI部分总线及其应用.西安:西安电子科技大学出版社M.2003。5侯伯亨,顾新著.VHDL硬件描绘语言与数字逻辑电路设计.西安:西安电子科技大学出版社M.1997。6乔林,杨志刚著.VisualC+高级编程技术DirectX篇.北京:中国铁道出版社M.1998。7胡波,原新晶.WinDriver开发驱动程序的KernelPlugIn技术的研究与应用J.计算机应用,2003,2311。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁