基于FPGA和USB接口的多通道数据采集系统
2011-10-09王寅超郑正奇
王寅超,郑正奇
(华东师范大学 信息科学与技术学院,上海 200241)
数据采集技术在工业测量与控制,自动化测试等领域有着广泛的应用,笔者以多通道测距雷达信号的采集为研究背景,开发了一种以FPGA为核心的多通道数据采集系统,由于FPGA采用硬件描述语言进行模块化编程,在无需对系统硬件做任何调整的情况下便可对系统功能进行修改和升级。
将USB2.0接口作为系统的数据接口,将各通道的采样数据发送至上位机,既保证了采样数据的传输速度,又使该系统具备了即插即用的特性,还可使用VC、LabVIEW等多种程序语言进行上位机程序的编写,提高了软件开发的灵活性。
1 系统组成
本数据采集系统最多可以对8路模拟信号进行采样,其系统框图如图1所示。

图1 系统框图Fig.1 System block diagram
AD转换器件选用AD公司的AD7829[1],其最高采样率为2 MSPS,采样位数8位,数据接口类型为并口,有8路模拟信号输入并自带模拟开关以及采样保持电路,内部参考电压为2.5 V。
USB接口芯片采用Cypress公司的CY7C68013A[2],内置增强型8 051处理器和USB2.0引擎,向下兼容USB 1.1协议,并具有GPIF接口可与多种外设相连。使用keil3作为USB固件的开发平台。
FPGA选择Altera公司的EP1C12Q240C8[3],具有两个PLL,12 060个逻辑单元,可以实现复杂的逻辑功能,并能构建一定深度的缓存空间。FPGA的程序使用Verilog硬件描述语言在QuartusII平台下编写。
2 多通道数据采集控制和数据缓冲
本设计中通过FPGA产生AD7829的采样控制逻辑[4],并通过在FPGA中构建一定深度的FIFO来实现采样数据的缓冲。
2.1 AD采样控制逻辑
AD7829的采样逻辑如图2所示。

图2 AD7829的采样……
