基于PCI9054的高速数据采集系统.pdf
《基于PCI9054的高速数据采集系统.pdf》由会员分享,可在线阅读,更多相关《基于PCI9054的高速数据采集系统.pdf(4页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、总第 158期2007年第 2期 舰 船 电 子 工 程Ship Electronic Engineering Vo.l 27 No.2 118 基于 PCI9054的高速数据采集系统*龙 瑜 伍文运(湖南生物机电职业技术学院 长沙 410126)摘 要 PCI9054是美国 PLX 公司生产的 PCI总线通用接口芯片,使用该专用芯片桥接 PCI总线和本地总线可以无需考虑复杂的 PCI总线规范,只需开发系统的硬件。介绍 PCI9054的结构和性能,提出基于专用芯片 PCI9054的高速数据采集系统的软硬件设计方案。该系统具有强大的功能和简洁的用户接口,有较强的实时性。关键词 PCI9054;数
2、据采集;PCI总线中图分类号 TN911.721 前言数据采集技术是信号处理的一个非常重要的环节,广泛应用于通信,图像处理等领域。要实现高速数据采集,不仅需要高性能的 A/D、D/A 设备,而且还需要高速的数据传输。目前,基于计算机的数据采集卡主要有两种:ISA总线和 PCI总线。ISA总线的传输速率低,适合低速应用场合;PCI总线作为比较新的局部总线,以其较高的吞吐率,为中央处理器及高速外围设备提供一座梁。本文所介绍的数据采集系统由 PCI9054、双口SRAM、DSP芯片 TMS320C5402和 A/D、D/A转换器组成。PCI9054桥接 PCI总线和局部总线;双口SRAM 连接 PC
3、I9054与 DSP,使用双地址映射,使地址分配灵活;在系统中使用了通用信号处理芯片TMS320C5402。对采样数据的处理可以利用 DSP在处理信号中的优势,发挥计算机和 DSP的双重优点,使得系统更加高效;并且 PCI总线、DSP 和PCI9054都可以发起数据传输,对于不同种类的数据,使用起来更加灵活。2 PCI9054的结构和性能PCI9054是美国 PLX公司生产的 PCI总线通用接口芯片。使用该专用芯片桥接 PCI总线和本地总线(local bus),可以不用考虑复杂的 PCI总线规范,只需要开发系统的硬件和驱动程序。PCI9054具有较强的性能。它符合 PCI V2.1和 V2.
4、2规范,提供两个独立的可编程 DMA控制器,每个通道均支持块和分散/集中的 DMA方式;在 PCI总线端支持 32 位/33MHZ;本地端(localbus)可以编程实现 8,16,32位的数据宽度,传输速率最高可达 132 M 字节/秒。本地总线端时钟最高可达 50MHZ,支持复用/非复用的 32位地址/数据。PCI9054内部有 6种可编程的 F I FO存储器,以实现零等待突发传输以及本地总线和 PCI总线之间异步操作。PCI9054的内部结构如图 1所示。PCI9054的 PCI总线接口主要完成两项任务:第一,数据传输、地址译码和控制指令的译码。数据传输过程中的握手和等待控制信号主要由
5、帧周期信号FRAME、主设备准备好信号 IRDY,从设备准备好信号TRDY和设备选择信号DEVSEL组成。数据和地址信号是复用的,由 FRAME信号区分地址期和数据期,同时它也标志着一次传输的开始。第二,PCI总线的信号采用反射波方式,而不是入射波方式。这种方式的特点是:总线驱动靠反射波叠加使信号电压达到要求的振幅,且这段电压上升的过渡时间相当于总线周期的三分之一。正因为这一特性,在电路板制作上,要注意 PCI总线信号的走线,为了满足反射条件,对信号走线有严格要求:普通信号长度,从插槽的连接器到 PCI桥芯片走线*收稿日期:2006年 8月 14日,修回日期:2006年 10月 8日基金项目:
6、湖南省教育厅委托项目:(04C749);湖南省教育科学项目:(XJK06BGD030)作者简介:龙瑜,高级讲师,硕士研究生,研究方向:自动控制及电气测量等。长度不大于 1.5英寸,CLK信号走线长度为 2.5?0.1英寸。否则会导致信号不稳定甚至总线冲突,无法开机。图 1 PCI9054内部结构图PCI9054有六个/零等待可编程 0 FIFO 存储器。它们分别完成 PCI发起读、写操作,PCI目标读、写操作和 DMA读、写操作。由于 FIFO存储器的存在,数据可以大量突发传输而不丢失。这样不仅满足实时性要求,同时可以根据用户的需要采用与 PCI时钟异步的本地频率。FIFO和内部寄存器在计算机
7、主机或者本地端都是统一编址的,用户可以从两端通过编程访问它们的每一个字节。串行EEPROM 是用来在开机时初始化配置内部寄存器的。内部寄存器标识地址映射关系以及 PCI端和本地端工作状态。本地总线接口用来实现本地总线的数据传输以及标识本地端口工作状态。其中:LHOLD、LH-PLDA、READY、ASD、BLAST、LW/R等比较重要。PCI9054工作方式灵活多样,有直接主要模式、直接从模式和 DMA模式。直接主模式就是本地处理器访问 PCI总线上的 I/O接口和计算机的内存资源,由本地处理器发起整个数据传输。在直接主模式下,可以是单信号和突发多数据传输,由信号 BLAST 区分。此时,PC
8、I9054作为本地总线的目标设备。直接从模式就是 PCI总线作为主控设备发起对本地总线上资源访问,即对本地处理器的控制和对本地内存的访问。PCI9054此时作为本地总线的主设备,有权仲裁本地总线。DMA模式支持 PCI总线与本地总线之间的高效突发传输。PCI9054集成了两个相互独立的DMA通道,每个通道都支持块 DMA 和分散/集中DMA操作。块 DMA 要求计算机或本地处理器提供 PCI和本地总线的起始地址、传输字节数、传输方向等。在 DMA传输中,作为 PCI总线和本地总线的主控设备,DMA控制器使能本地总线的中断等待状态;确定零到十五的中断等待周期;使能本地总线的突发传输;仲裁本地总线
9、;执行 PCI内存的写操作,终止本地传输;设置本地或 PCI总线中断位等。3 数据采集实现方案数据采集卡主要由 PCI接口芯片 PCI9054、双口 SRAM、CPLD、DSP芯片 TMS320C5402和 A/D、D/A转换器设备组成。PCI9054控制图如图 2所示,工作时,先由计算机主机通过 PCI总线向系统发出命令字,要求上传数据。PCI9054将数据或命令字存入 8K 16的双口 SRAM 中,同时通过 CPLD译码向 C5402发出中断。C5402从双口 SRAM中取得命令字,等待数据上传。上传数据为调制信号,在 DSP的控制下,AD设备采集到数据,采样速率为每秒 10M 采样点,
10、数据宽度为 16位;除去部分数据直接在 DSP中处理以外,其他数据连续地放在双口 SRAM 中,同时向 PCI9054发出中断,通知计算机接收数据,在驱动程序的控制下,将数据存储。图 2 PCI9054控制框图PCI9054工作在 DMA 模式下,突发速率可以达到 132 MB/S。在本地总线上,DMA 通道编程使用 16位线宽,对应的局部总线是 16位。通过编程设置 PCI9054 内部 DMA 通 道的 状 态 寄 存器DMACSK和模式寄存器 DMAMODE,实现了对两个 DMA通道的操作,包括:使能通道数据突发传输,设置 DMA传输结束标志,设置 PCI中断 I NTA或者本地中断 L
11、I NT的使能;此外,DMADPR、DMA-PADR、DMALADR和 DMASIZ 这四个寄存器分别1192007年第 2期舰 船 电 子 工 程用来确定 DMA传输的方向,DMA的 PCI总线的地址,DMA的本地总线地址和 DMA传输的字节数。双口 SRAM在系统中起到数据交换作用,DSP与 PCI9054 共享 SRAM 中的 存储 单元。双口SRAM 把 C5402的 IO总线与 PCI9054的本地总线隔离,C5402 的中断控制信息 I NTO和 IACK经过CPLD的译码,向 PCI9054传递中断信息,通知接收或发送数据。C5402的 IO信号通过译码,控制 A/D、D/A转换
12、器的工作。图 3 DMA 传输过程PCI9054与 PCI总线上的设备仲裁使用总线占用请求信号REQ和占用允许信号 GET。在 DMA传输过程中,REQ信号有效,表明驱动它的设备要求使用 PCI总线。GNT信号向 PCI9054表示其请求已获得批准。这两个信号都是点到点,任何设备都有该信号。PCI总线和局部总线的仲裁如图 3所示。当本地总线向 PCI总线传输数据时,PCI总线御载 FIFO 存 储 器,一 旦 FIFO 存 储 器 空,则PCI9054向 PCI总线发出中断,PCI9054释放 PCI总线,总线撤消请求应答信号GNT,继而停止御载数据。一旦 FIFO存储器满时,PCI9054向
13、 DSP发出中断,要求停止向双口 SRAM 装载数据。由于本地总线与 DSP的 I O总线隔离,PCI9054本地总线不存在总线冲突,它始终占有本地总线,因此,本地仲裁无效。当 PCI总线向本地总线 DMA 传输时,与前一过程相反。4 程序设计编写驱动程序使用的是 KRF-Tech公司的W indriver,该软件主要针对 ISA 总线、PCI总线和VSB总线开发驱动程序。W indriver主要包括 W in-driverW izard、W indriver发行包、多个公用程序以及大量的例程。使用 W indriver可以很容易的执行DMA操作、访问 I O端口和存储器空间、处理器中断以及访
14、问 PCI。这种易用性是通过一个非常强大的组合向导调用 API来分析硬件,自动产生驱动程序的代码。这样就不需要详细学习操作系统的内部原理和内核(DDK)。W indriver还针对 PLX和 AMCL公司的专用接口芯片编写了 API函数包,降低了开发难度。图 4 程序流程框图利用 W indriver开发设备驱动程序的步骤如下:(1)检测并调试硬件,确定 硬件设计正确;(2)用 DriverW iz-ard生成操作硬件的应用程序 API函数;(3)生成工程文件;(4)修改 W indriv-er提供的样本诊断程序以适合课题的需要,编译并运行它。采集的数据利用 DMA 方式传输到计算机内存,需要
15、为 DMA 计算机存储空间分配缓冲区,并对 PCI9054中的相关寄存器进行配置。结合系统的操作过程,程序流程如图 4所示。本文以 PCI9054芯片为核心介绍了高速数据采集系统的硬软设计方案,PCI9054具有强大的功能和简洁的用户接口,使用时只需关注本地总线接口电路的设计,非常简便。利用 PCI9054的变速的性能,解决了数据采集的瓶颈问题,使系统具有较强的实时性。参 考 文 献 1 PCI9054 Data Book.V ersion 1.0(plx Techn-ologg),1999 2李贵山,戚德虎.PCI局部总线开发者指南 M.西安:西安电子科技大学出版社,2001 3刘栋良,崔立
16、丽.便携式数据采集与处理系统的研究 J.计算机测量与控制,2002,10(2):127 128 4张毅刚,彭喜元,姜守礼.自动测试系统 M.哈尔滨:哈尔滨工业出版社,2001120龙 瑜等:基于 PCI9054的高速数据采集系统总第 158期Index(Vo.l 27 No.2)Ship El ectronic Engineering VHDL.In order to m inmiize the costs,smaller scale ofPLD can be adopted by optmiizing circuit design.K ey words VHDL,circuit desi g
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 PCI9054 高速 数据 采集 系统
限制150内