《PCI总线的高速数据采集卡的设计》.pdf
文本预览下载声明
基于 PCI 总线的高速数据采集卡的设计
王鑫,郭继燕,丁铁夫,王遵立,王瑞光
(中国科学院长春光学精密机械与物理研究所,吉林 长春 130021)
摘要:本文介绍了一种基于 PCI 总线的高速数据采集卡的设计方案,该方案具有高速度、低成本的优点。
并给出了 PCI 总线控制器的实现和具体的硬件电路设计,最后介绍了用 Windriver 编写设备驱动程序的方
法,提供了部分源代码。
关键词: PCI 总线 PCI9050 WinDriver 设备驱动程序
一.引言
数据采集是数字信号处理中的重要环节。针对不同任务,数据采集要达到的技术指标也不同。对于瞬
态信号、雷达信号和图象处理都要求几 MB/S 甚至几十 MB/S 的速度。而目前用于 PC 机的数据采集卡大部
分是基于 ISA 总线的,其最大缺点是传输速度太低,不能实现实时传输[1]。PCI 总线是一种目前较为流行
的、先进的高速同步总线,它的历史较短,正式的 2.2 版本于 1999 年 2 月发布。其优点在于能够实现设
备间的快速访问,33MHZ/32 位的 PCI总线可以实现 132MB/S的数据传输率,目前已经有 66MHZ/64位的 PCI
总线,传输速率更快[2]。PCI 是独立于处理器的同步总线,不需 CPU 的介入便可进行数据传输。此外,还
支持突发传递、即插即用功能。PCI 以其突出的性能备受计算机和通信界的青睐,将取代以往的总线,成
为高档机及高性能工作站外设的基石。
二. 数据采集卡的结构及性能
[3]
本数据采集卡主要由一个 PCI 总线控制器(PCI9050) ,一块采集控制芯片(MAX7128),以及一个
A/D 转换模块构成,其具体的结构框图如图 1 所示。该数据采集卡的性能可以达到每秒采样 20M 个样本,
A/D 字长为8位,数据传输率在 20MB/S以上,这对以往基于 ISA总线的数据采集系统来说,根本无法实现。
CPLD
PCI PCI 控制
总线 器
RAM A/D
图1 数据采集卡框图
Fig.1 the Block Diagram of Data acquisition card
图中粗线表示数据/地址总线,细线表示控制线。前端信号经过提取、放大后,进入 A/D;在 CPLD 控
制下,高速 A/D 芯片将模拟信号转为数字信号,并将数据输出,存储在双口 RAM 中;当一组数据存储完毕
后,由 CPLD 通过 PCI 控制芯片向主机申请中断,主机响应中断后通过 PCI 控制芯片直接读取 RAM 中的数
据。
三.数据采集卡的设计方案
1、PCI总线控制器的实现
由于 PCI 总线协议的复杂度较高,其接口电路实现起来相对困难。因此,目前主要有两种方案来实现
PCI 总线的控制:一种是采用专用的 PCI 接口芯片;另一种是用可嵌入 PLD 中的IP 核。前者由于芯片本身
已完成大部分 PCI 协议,不需设计者精通 PCI协议的各种细节,开发周期短,但系统集成度较低,并且费
用稍高;后者需要设计者根据 PCI协议自己设计接口逻辑,要求设计人员完全掌握 PCI 协议,设计的难度
相对较大,但由于可将 PCI 接口逻辑与用户逻辑集成在一片 PLD 中,提高了电路板的集成度和系统的性能。
根据设计需求和实际情况,我们最终选择了第一种方式,采用了 PLX 公司的 PLX9050作为 PCI 总线控制器,
它即能满足设计需要,并且价格较低。
PLX9050 是PLX 公司推出的用于低成本适配器的 PCI 总线目标接口芯片,支持 32 位、33MHZ 的PCI总
线规范。它提供用于适配卡的小型而高性能的 PCI 总线目标接口,主要功能与性能如下:
(1) 符合 PCI
显示全部