总线接口芯片PCI9054及其在高速数据采集系统中的应用

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

总线接口芯片PCI9054及其在高速数据采集系统中的
应用
装备指挥技术学院邵胜利侯孝民
摘要:本文介绍了PCI总线接口芯片PCI9054的性能、总线操作及其DMA 数据传输方式,并且通过它在高速数据采集系统中的应用实例,阐述了PCI9054在PCI接口电路设计中的简便性和实用性。

关键词:PCI总线接口PCI9054 DMA Windriver
引言
PCI(Peripheral Component Interconnect)总线即外围部件互连总线,是一种先进的高性能32/64位地址数据复用局部总线,可同时支持多组外围设备,并且不受制于处理器,为中央处理器与高速外围设备提供一座沟通的桥梁,提高了数据吞吐量(32位时最大可达132MB/s),是当今PC领域中流行的总线。

PCI总线具有严格的总线规范,这就保证了它具有良好的兼容性,符合PCI总线规范的扩展卡可以插入任何PCI系统可靠地工作。

一个PCI接口包括一系列的寄存器,这些寄存器中的信息允许计算机自动配置PCI卡。

目前实现PCI接口一般采用专用器件,有效方案分为两种:使用可编程逻辑器件和使用专用总线接口器件。

采用可编程逻辑器件实现PCI接口比较灵活,可以利用的器件也比较多,但由于PCI总线协议的复杂性,其接口的实现比ISA 等总线要困难得多,这种方法难度较大,设计周期较长。

采用专用接口器件不仅对PCI协议有良好的支持,而且提供给设计者良好的接口,这些都大大减少了设计者的工作量。

PCI9054的结构和性能
PCI9054是美国PLX公司继PCI9052之后推出的又一低成本PCI总线接口芯片,低功耗,PQFP 172pins封装,它采用了先进的PLX数据管道结构技术,可以使局部总线快速转换到PCI总线上。

PCI9054主要特性
PCI9054的主要特性如下:
* 符合PCI V2.1,V2.2 规范,包含PCI电源管理特性。

* 支持VPD(Vital Product Data)的PCI扩展。

* 支持PCI双地址周期,地址空间高达4GB。

* 具备I2O准备报文单元,完全兼容I2O V1.5 规范。

* 提供了两个独立的可编程DMA控制器,每个通道均支持块和Scatter/Gather 的DMA方式,DMA通道0支持请求DMA方式。

* 在PCI启动模式,PCI 9054可插入类型1和类型2的配置周期。

* 在PCI和Local Bus的数据传送速率高达132MB/S。

* 支持本地总线(Local Bus)直接接口Motorola MPC850或MPC860系列,Intel i960系列,IBM PPC401系列及其它类似总线协议设备。

* 本地总线速率高达50MHz;支持复用/非复用的32位地址/数据;本地总线可为三种模式:M模式、C模式和J模式,可利用模式选择引脚加以选择。

* 具有可选的串行EEPROM接口。

* 本地总线时钟由外部提供,该时钟可和PCI时钟异步。

* 具有8个32位 Mailbox 寄存器和2个32位Doorbell寄存器。

PCI9054的内部结构组成
PCI 9054内部有6种可编程的FIFO,以实现零等待突发传输及本地总线和PCI总线之间的异步操作。

PCI9054还提供了一个串行EEPROM配置接口,容量2K字节。

在配置存储器中存放了厂家标示、设备标示以及本地总线的基地址空间、I/O空间、中断控制信号等信息。

当初始化时,系统自动将串行EEPROM中的配置参数装入PCI配置寄存器,并根据本地总线对内存、I/O端口和中断的需求统一划分,自动配置。

PCI9054的总线操作.
PCI9054的总线操作包括PCI总线操作和本地总线操作。

对于PCI总线操作,它完全遵守2.2版本PCI规范。

下面主要讨论一下本地总线操作。

PCI9054本地总线支持非多路复用32位地址/数据总线,多路复用32位和8位,16位或32位本地总线设备从属访问,运行速率高达50MHz,可以获得200MB/S的本地总线突发传输速率。

PCI9054有3种工作方式,分别为C、M和J模式。

M模式主要是针对Motorola 公司高性能MPC850/860的应用而设计的,主要应用在电信领域,J模式的接口设计相对比较麻烦,比较常用的是C模式。

C模式下PCI9054分为PCI Initiator操作和PCI Target操作。

在PIC Initiator操作过程中,本地处理器或本地总线主控设备能够直接通过PCI9054访问PCI总线,发起Local-to-PCI的数据传输。

而在PCI Target操作过程中,PCI总线主控设备可以以可编程的等待状态、总线宽度和突发传输功能访问PCI9054的三个本地空间(空间0,空间1和扩充ROM空间)。

PCI9054的DMA突发模式
PCI9054集成了两个互相独立的DMA通道,每个通道都支持Block DMA和Scatter/Gather DMA,通道0还支持Demand DMA传输方式。

Block DMA要求PCI主机或Local主机提供PCI和Local的起始地址、传输字节数、传输方向。

主机设定DMA开始位启动数据传输,一旦传输完成,PCI9054设定DMA"传输结束位"结束DMA,如果中断允许位被使能,在传输结束时PCI9054将向主机申请中断。

在DMA传输中,PCI9054既是PCI总线的主控器又是Local 总线的主控器。

Scatter/Gather DMA要求主机在PCI空间或Local空间设定Descriptor模块,模块包括PCI和Local的起始地址、传输字节数、传输方向和下一个Descriptor模块的地址。

PCI9054载入第一个Descriptor模块并发起传输,连续加载下一个模块,直到它侦测到"链结束位"有效,PCI 9054设置"传输结束位",或者申请PCI或Local中断。

这种模式下,PCI9054也可以在每个模块加载时有效中断信号结束DMA传输。

若Descriptor模块在本地存储空间,可以编程使DMA控制器在每次DMA传输结束后清除传输字节数。

PCI9054的设计与应用
PCI9054作为一种通用的PCI接口芯片,以其显著的功能和特性,得到了广泛的应用,下面就其在高速数据采集系统设计中的应用进行简单介绍。

硬件结构组成
该高速数据采集系统利用PCI9054的PCI专用接口芯片的特性,设计了一个双路200M的高速数据采集卡,完成高速数据的采集和传输。

系统结构主要包括A/D转换、数据存储、逻辑控制,时钟分配和数据传输五
大模块。

A/D转换电路采用AD(Analog Device)公司的AD9054芯片,分辨率为8位,最高采样率200MSPS。

数据存储电路采用IDT公司的产品72V36110,该芯片可以工作在133 MHz的频率下,零延迟传输,可以提供9位、18位、36位输入、输出接口,最大存储容量为128K 36Bit。

逻辑控制电路采用CPLD技术,利用Altera公司的可编程逻辑器件EPM7128S完成对数据存储电路、AD采集电路、PCI 桥电路的控制,对时钟电路的配置,以及各种触发控制。

时钟电路产生的采样脉冲的频率范围是25MHz~400MHz,步长为1MHz,采用SYNERGY公司的频率合成器SY89429V来完成。

第一步:模拟信号经过信号调理电路后送入ADC,ADC在逻辑控制电路和时钟控制电路的作用下,完成A/D转换,并将转换结果送入数据存储电路。

第二步:PCI桥电路在主机的控制下,将数据存储电路中的数据传输到微机内存中,以供应用程序进行后续的信号处理。

软件设计
PCI数据传输卡的另一关键问题即驱动程序的开发。

设备驱动程序提供连接到PCI板卡的软件接口,在Windows 9x和Windows NT中,设备驱动程序必须根据Windows驱动程序模型(WDM)设计。

设备驱动程序的关键是如何完成硬件操作,基本功能是完成设备的初始化、对端口的读写操作、中断的设置和响应及中断的调用、以及对内存的直接读写。

该系统选用Windriver来编写设备驱动程序,Windriver是美国KRF-Tech 公司出品的用于编写驱动程序的另一种工具包。

它以通用设备驱动程序Windrvr.vxd和Windrvr.sys为核心,包含一个类似QuickVxD的代码生成器Windriver Wizard,一个Windriver发行包,两个公用程序pci_scan.exe和pci_dump.exe。

用它编写的程序主要针对ISA/PCI设备,可同时工作在Windows 9x/NT两种操作系统,其中Windrvr.vxd用于Windows 9x操作系统,Windrvr.sys 用于Windows NT操作系统,因此,它是设计PCI设备驱动程序的理想工具。

Windriver 针对PLX和AMCC的专用接口芯片特别编写了API函数包,这些函数能够方便地实现中断处理、DMA传输、I/O操作、内存映射以及即插即用等功能,为系统的驱动程序的编写提供了便利。

结论
PCI 9054 以其强大的功能和简单的用户接口,为PCI总线接口的开发提供了一种简洁的方法,设计者只需设计出本地总线接口控制电路,即可实现与PCI 总线的高速数据传输。

本系统经过测试,高速数据能够正确采集和传输。

在高速数据传输系统中,利用PCI总线的高速特性实时传输和存储采集数据,有效解决了数据的传输和处理的实时性,可应用于高速数据采集卡、视频处理卡、网卡等高速设备中,随着PCI总线的普及应用,基于 PCI总线的传输系统设计有十分广阔的前景。

相关文档
最新文档