微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > MCU和DSP > 双通道逻辑控制高速实时数据采集系统的设计

双通道逻辑控制高速实时数据采集系统的设计

时间:10-24 来源:电子技术应用 点击:

在现代工业生产控制系统中,需要实现大量数据的实时采集和处理,以使生产过程得到及时控制。参考文献[1]介绍了基于一个模拟开关CD4052和A/D转换器AD574设计的数据采集卡,可以实现8路信号采集,该数据采集卡只适用于小系统的数据采集;参考文献[2]介绍了基于AD1674实现的双通道并行高速数据采集卡,可实现16路信号采集,采用ISA总线计算机接口。而对于更多路信号的采集处理,在实时性方面对数据采集系统提出了更高的要求,传统的ISA总线接口的低速数据采集系统已经不能适应现行的要求。

本文设计了一种全新构架的高速实时数据采集系统。该系统采用现行的高速微机PCI数据通信接口[3-4];运用了高速高精度的A/D器件[5]、片上缓冲存储技术[6]、灵活的多通道数据转换和CPLD[7-8]技术,使系统的硬件得到简化,可同时采集32路不同的信号,对信号进行实时、快速处理。

1 系统组成及工作原理

系统硬件组成如图1所示。32路采样的模拟信号分为互相独立的两个通道输入,每个通道接收16路信号,由两个互相独立的8路模拟开关控制。这样给系统数据的获取提供了比较大的自由度,可根据实际需要实现不同的控制组合。

每个通道输入的模拟信号送入一个A/D转换器,进行独立数据处理,并将数据缓存入不同的FIFO SRAM地址空间。4组8路数据的存储和传输互相独立,这样使得数据采集速度得到提高。

系统使用了CPLD技术。在CPLD中央控制逻辑的协调下,重新组织数据包,通过PCI数据总线将数据传送到计算机,实现高速实时的数据采集和处理。

2 系统硬件设计

整个系统的硬件分为数据输入模块、A/D转换模块、数据缓冲存储模块、PCI接口模块及CPLD控制模块五大部分。

2.1 数据输入模块

数据输入模块主要功能是在CPLD控制下进行采集输入通道的实时切换,实现不同模拟信号的采集。主要是由MAX4781和MAX4783组成的组合开关[9]。MAX4781为八选一高速模拟开关,MAX4783为单刀双掷开关。开关典型工作电压为+3V,导通电阻0.7Ω,接通时间11ns,关断时间4ns,输出漏电流0.002nA。每一通道由两片并联的MAX4781和MAX4783级联组成,可同时采集16路模拟信号。

2.2 A/D转换模块

由数据输入模块输出的模拟信号送入A/D转换模块进行模数转换,得到精确的数字信号。该设计中A/D转换器选用MAX1200[5],如图2所示。MAX1200具有单通道全差分输入,16位精度,1Ms/s转换速率,流水线结构,带有数字误差校正和自校正功能。其转换速率由2.048MHz的外接精准时钟信号以及时钟产生电路MAX961决定,如图3所示。


MAX1200通过外接MAX4108转换电路,将单端输入信号转换成差分输入信号,使得输入信号电平扩大一倍,信号处理能力与抗干扰能力得到增强,如图4所示。

MAX1200的基准电压由4.096V基准电压模块MAX6341及MAX410构成的高精度低漂移的差分电路参考电压驱动模块供给,提供了较高的模数转换精确度和稳定性。

2.3 数据缓冲存储模块

系统设计中采用片上缓冲存储技术,用存储器存放A/D转换输出的大量数据。缓存芯片选用65536×16bit容量的FIFO SRAM IDT72V19160。该双口存储器受CPLD控制,一方面获取A/D转换输出的数字信号;另一方面,其存储数据又可以按计算机的要求被读出。该缓存芯片的存储状态可以由外部命令通过标志位改变,可以将存储空间划分成高、低不同的区域,分别存、取不同数据,这样可有效地利用硬件资源,实现数据组无干扰采集缓存。同时,系统借鉴虫孔寻径和位移寄存器的基本思路,采用支持优先级FIFO排队的优先级先进先出队列PFQ(Priority FIFO Queue)[6],充分利用高速本地总线,可以有效解决信号传输堵塞问题,实现高速数据传输,降低了延时,提高了带宽利用率。

2.4 PCI接口模块

鉴于本数据采集系统采集的数据量大,在把获取的数据传输给计算机进行分析处理时,应用了先进的高速PCI接口技术[3-4],以32位133MB/s的速率运行。将PCI9054 MODE0与MODE1的工作模式设置为C 模式,即数据和地址分别都为32位;采集系统的本地数据与本地地址操作采用非分时复用组态,LA0~LA31为本地地址,LD0~LD31为本地数据;系统与计算机接口的数据和地址采用分时复用模式,32位宽AD0~AD31。存储PCI9054 配置信息的EEPROM采用93CS56芯片。PCI接口的逻辑信号流如图5 所示。


2.5 CPLD控制模块

CPLD是现代电子技术领域中的一门全新技术,它提供了基于计算机和电子技术的大规模数字电路设计方法。CPLD具有强大的逻辑功能,可以提高系统集成度,简化系统设计。新一代的CPLD不仅在速度上能满足高速数字信号处理的要求,而且可编程资源也大大增加,具有在线可编程功能,使系统设计的灵活性和系统适用性得到很大的提升。因此,本数据采集系统采用了Altera公司的EPM3256ATC144-7芯片。该芯片具有256个宏单元,最多可提供158个I/O口。

本设计逻辑控制[7]主要分为四个部分:(1)对输入通道开关的使能与通道选通控制以及切换;(2)对A/D转换芯片的使能、数据转化及自校正的控制;(3)对缓冲存储芯片SRAM的读写状态及其存储标志位的控制;(4)对PCI本地对话的控制,包括本地地址的选择、数据包的组装、通信握手信号、突发传送与DMA传送控制。

CPLD的应用简化了系统的硬件逻辑控制电路设计,应用VHDL编程实现了系统的控制与数据的初步处理,缩短了系统的开发周期。CPLD端口还提供了更多的扩展功能。可见,无论是硬件结构还是软件程序,该系统都具有可升级的特点。

本高速实时数据采集系统按照工业要求设计,采用了高速的A/D转换器MAX1200和双通道并行结构,实现了高速、大容量、高精度的数据采集和处理。该设计还利用了片上大容量优先级FIFO SRAM缓存技术,解决了数据采集量与短时传输速率之间可能出现的矛盾;不同数据存储于不同存储空间,大大提高了快速数据采集能力和系统的数据吞吐量。运用了CPLD和PCI接口技术,极大地简化了硬件电路,通过设置不同的软件程序参数可以形成不同的工业解决方案。因此,在开发周期较短或对系统灵活性要求较高的工业现场,本设计是一种比较理想的数据采集系统。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top