一种基于Compact PCI总线的数据采集系统设计
引言
数据采集的实时性和可靠性是关系工业控制系统性 能的重要因素,数据采集系统的速率主要取决于A/D转换、通信接口和总线传输的速率。 TI公司推出的DSP芯片TMS320F2812具有很高的工作频率和丰富的外设资源,能够满足采集系统的实时性要求,同时又降低了系统设计的成本。Compact PCI总线作为PCI总线向工业控制领域的拓展,除了 具备高速的传输速率,还具备优良的机械特性和电气特性。本文研制了一种基于Compact PCI总线的数据采集系统,系统以DSP作为控制核心,可以进行模拟信号采集、并行接口和串行接口的数据信号的采样。
1 Compact PCI总线简介
Compact PCI总线与PCI标准完全兼容,但作为开放的工业计算机标准,Compact PCI总线与PCI总线有很多不同。主要体现在:
(1) Compact PCI总线具有热切换能力,可以使整个系统在不断电的情况下,更换损坏的插板,这对于有高可靠性要求的系统是至关重要的。
(2) Compact PCI总线采用欧式插卡(Eurocard),具有更好的机械特性。欧式插卡的组装技术目前已经十分成熟,插卡垂向而平行的插入机箱,有利于通风散热;采用插入式电源模块,便于维修,适合于安装在标准化工业机架上。
(3) 使用高密度针孔总线连接器,完全气密,比台式机的PCI插槽具有更高的抗震性能和可靠性。
(4) Compact PCI底板可以容纳8块插卡,比原有的PCI规范增加了一倍,更能满足工业系统的需要。
2 采集系统硬件结构设计
在工业控制系统中,采集系统一方面需要把电机转速、电流环等模拟参数传送到监控主机,另一方面需要对下位机的各种参数和图像数据进行采集,同时监控主机还要对下位机发送各种控制信号。为了兼顾各种需要,设计中集合了模拟和数字两种采集方式,可以实现8路A/D采样,2路串行数据采集和2路并行数据采集,系统的结构框图如图1所示。
图1 采集系统结构框图
采集系统以数字信号处理芯片TMS320F2812作为控制核心,F2812最高工作频率可达150MHz,除了丰富的内部存储器资源外,还具有 ADC,SCI、SPI等多种外设资源,设计中利用了其ADC和SCI模块来进行模拟信号和串行数字信号的采集。对并行数据的采集则不通过DSP而直接与 主机进行数据交换。由于主机与外设速度不匹配,选用双口RAM芯片IDT70V24作为数据缓存,它是一种高速度、低功耗的双口RAM,存储量为8k字 节。系统的逻辑控制采用CPLD芯片XC95108完成,它主要负责的功能是PCI局部总线仲裁和地址译码。三种采集模块的实现如下:
(1) A/D采集模块。对模拟信号的采样使用了F2812自带的数模转换模块ADC,该ADC具有16路模拟输入通道,带有两路内置S/H(抽样保 持器),转换精度为12bit,最大转换速率为12.5MSPS,支持范围在0~3 V的数据输入。16路输入通道在ADC内部共用1个模数转换器,它们 被分位两组,每组8路通道,使用排序器Sequencer来设定每路通道占用模数转换器的顺序。设计中使用了其中8路通道 (ADCIN0~ADCIN7)。
(2) 串行数据采集模块。F2812的SCI模块具有两路串行通信接口,可配置成65536种不同的波特率,具有奇偶校验标志,可工作于半双工或者全双工模式,可设置成中断或者查询方式。另外,SCI还具有两个增强性能:①发送、接收都具有独立的FIFO,FIFO深度为16个字,触发级可以配置为 16以内的任何数。这种灵活的设置对实际使用非常方便,因为下位机采集的数据长度往往不是16的整数倍,根据其数据长度设定FIFO触发级,可以使一帧数 据及时被传输和处理;②可以实现波特率自动检测,这在未知通信终端波特率或者需要更换通信终端的情况下非常适用。下位机与监控主机的通信采用RS-422 接口,传输距离远,抗干扰能力强。RS-422传输使用的是差分电平,而SCI的输入输出管脚是TTL电平,需要进行电平转换,设计种选用了符合RS- 422标准的电平转换芯片MAX3461。
(3) 并口通信模块。对于图像信号等数据传输量大的信号,需要使用并口通信的方式。本采集系统提供两路并口,数据宽度为8位,地址宽度为8位,它们通过双口RAM与主机进行数据交换。
3 Compact PCI接口设计
3.1 CPCI桥接芯片
目前,很多PCI协议芯片同时也支持热交换,使得原有的基于PCI总线的硬件系统可以很容易地移植到CPCI构架下,而不需要在硬件和软件上做大的修改。本设计选用的是PLX公司推出的PCI9054,符合PCI 2.2规范和CPCI 2.1热交换规范。
针对CPCI的热交换规范,PCI9054提供了管脚ENUM#和LEDon/LEDin,ENUM#的激活表明板卡的插拔状态即将发生改变,LEDon/LEDin管脚用于驱动外部LED,指示当前系统软件层连接和断开的情况。PCI9054还提供了热交换控
CompactPCI总线数据采集系 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)