基于FPGA的高速信号采集平台设计
- 格式:pdf
- 大小:334.27 KB
- 文档页数:3
西北工业大学研究生创意创新种子基金作品说明书作品名称:基于FPGA的新型高速PCI采集卡的设计基于FPGA的新型高速PCI采集卡的设计摘要:从自主研发的角度,本设计通过板载FPGA实现了对16路模拟信号的采集及滤波处理,并将最终结果送入工控机。
其中关键技术是通过对FPGA编程开辟控制空间并实现具体滤波算法,上位机通过设置对应的控制空间实现对于16路AD采集通道的开启及不同滤波算法的调用。
采用PLX9052实现PCI的接口设计。
根据上述要求选用ALTERA公司的EP2C8Q208型号的FPGA。
关键词:采集卡,PCI,FPGA,滤波算法0、前言在现代工业领域,随着控制系统日益大型化,复杂的系统会给有用信号叠加许多高频噪声干扰。
如何滤除这些干扰,成为业内普遍关注的问题。
目前普遍使用的处理方式分为两种,利用硬件电路滤波和通过上位机软件滤波,但这两种方式均存在很多缺陷:(1) 通过硬件电路滤波,不仅会大大增加成本、占用宝贵的PCB面积,而且滤波效果不彻底,还会造成有用信号的相位偏移。
(2) 通过上位机软件滤波,要求具有很高的信号采集速度,一方面造成了数据传输量大的负担,另一方面在上位机执行滤波算法会占用控制资源,从而大大降低了控制效率。
为了解决以上问题,本作品设计了一种基于FPGA的新型高速PCI采集卡,通过FPGA对模拟信号进行高速的过采样,并针对信号类型进行算法可选的滤波处理,同时配合上位机的控制频率设计抽取算法,通过双端口RAM将数据通过PCI总线传至上位机。
这样既在下位机完成了滤波,又保证了信号传输速度,降低了数据传输量,从而大大减少上位机的运算量,提高控制程序的执行效率。
1、采集卡参数:1.1 AD采集:单通道采集频率可达1MSPS,可实现最多16通道的循环采集,循环采集频可达990KSPS。
采集范围为-10V~10V,采集精度实测可达到0.5‰。
AD采集内嵌滤波参数可选的8阶FIR滤波算法,截止频率在1~250KHZ之间可调,并可由软件测试界面进行设置。
基于FPGA的高速数据采集系统设计随着科学技术的不断进步,数据采集系统在许多领域都发挥着重要作用。
为了满足高速数据采集的需求,基于现场可编程门阵列(FPGA)的高速数据采集系统设计应运而生。
本文将介绍这一系统的设计原理和关键技术。
首先,我们需要了解FPGA的基本原理。
FPGA是一种可编程的硬件设备,可以根据需要重新配置其内部逻辑电路。
这使得FPGA在数据采集系统中具有极大的灵活性和可扩展性。
与传统的数据采集系统相比,基于FPGA的系统可以实现更高的采样率和更低的延迟。
基于FPGA的高速数据采集系统设计主要包括以下几个关键技术。
首先是模数转换(ADC)技术。
ADC是将连续的模拟信号转换为数字信号的关键环节。
在高速数据采集系统中,需要使用高速、高精度的ADC来保证数据的准确性和完整性。
其次是FPGA内部逻辑电路的设计。
为了实现高速数据采集,需要设计高效的数据处理逻辑电路。
这些电路可以实现数据的实时处理、存储和传输等功能。
同时,还需要考虑电路的时序约束和资源分配等问题,以确保系统的稳定性和可靠性。
另外,时钟同步技术也是高速数据采集系统设计的重要内容。
在高速数据采集过程中,各个模块需要保持同步,以确保数据的准确性。
因此,需要设计合理的时钟同步方案,保证各个模块在同一个时钟周期内完成数据的采样和处理。
最后,还需要考虑系统的接口和通信问题。
基于FPGA的高速数据采集系统通常需要与其他设备进行数据交互,如计算机、存储设备等。
因此,需要设计合适的接口和通信协议,实现数据的传输和存储。
综上所述,基于FPGA的高速数据采集系统设计涉及多个关键技术,包括ADC技术、FPGA内部逻辑电路设计、时钟同步技术以及接口和通信问题。
通过合理的设计和优化,可以实现高速、高精度的数据采集,满足现代科学研究和工程应用的需求。
这将为各个领域的数据采集工作带来巨大的便利和发展空间。
摘要随着机器视觉的广泛应用,以及工业4.0和“中国制造2025”的提出,在数字图像的采集、传输、处理等领域也提出了越来越高的要求。
传统的基于ISA接口、PCI接口、串行和并行等接口的图像采集卡已经不能满足人们对于高分辨率、实时性的图像采集的需求了。
一种基于FPGA和USB3.0高速接口,进行实时高速图像采集传输的研究越来越成为国内外在高速图像采集研究领域的一个新的热点。
针对高速传输和实时传输这两点要求,通过采用FPGA作为核心控制芯片与USB3.0高速接口协调工作的架构,实现高帧率、高分辨率、实时性的高速图像的采集和传输,并由上位机进行可视化操作和数据的保存。
整体系统采用先硬件后软件的设计方式进行设计,并对系统各模块进行了测试和仿真验证。
通过在FPGA 内部实现滤波和边缘检测等图像预处理操作,验证了FPGA独特的并行数据处理方式在信号及图像处理方面的巨大优势。
在系统硬件设计部分,采用OV5640传感器作为采集前端,选用Altera的Cyclone IV E系列FPGA作为系统控制芯片,由DDR2存储芯片进行数据缓存,采用Cypress公司的USB3.0集成型USB3.0芯片作为数据高速接口,完成了各模块的电路设计和采集卡PCB实物制作。
系统软件设计,主要分为FPGA逻辑程序部分、USB3.0固件程序部分和上位机应用软件部分。
通过在FPGA上搭建“软核”的方式,由Qsys系统完成OV5640的配置和初始化工作。
由GPIF II接口完成FPGA和FX3之间的数据通路。
通过编写状态机完成Slave FIFO的时序控制,在Eclipse中完成USB3.0固件程序的设计和开发。
上位机采用VS2013软件通过MFC方式设计,从而完成整体图像采集数据通路,并在上位机中显示和保存。
整体设计实现预期要求,各模块功能正常,USB3.0传输速度稳定在320MB/s,通过上位机保存至PC机硬盘的图像分辨率大小为1920*1080,与传感器寄存器设置一致,采集卡图像采集帧率为30fps,滤波及边缘检测预处理符合要求,采集系统具有实际应用价值和研究意义。
2021.11设计研发基于AD9226的FPGA高速数据采集电路设计钱素琴,孙悦(东华大学,上海,201620)摘要:本文对12位精度、65Msps釆样率的高速模数转换器AD9226进行了介绍,在此基础上提出了高速数据釆集电路的设计方案,主要是在AD转换电路的基础上提供了相应的电位移动及其衰减电路和电源电路。
最后结合FPGA硬件编程对双通道的高速数据釆集系统进行测试,成功釆集到了50Msps的数据,验证了该方案的可行性。
关键词:AD9226;高速数据釆集;电路设计;FPGADesign of FPGA high-speed data acquisition circuit based on AD9226Qian Suqin,Sun Yue(Donghua University,Shanghai,201620)Abstract:This paper introduces AD9226,a high-speed analog-to-digital converter with12bit accuracy and65Msps sampling rate.Based on this,a design scheme of high-speed data acquisition circuit is proposed,which mainly provides the corresponding input attenuation circuit and power supply circuit on the basis of AD conversion circuit*Finally,combined with FPGA hardware programming, the dual channel high-speed data acquisition system is tested,and the data of50Msps is collected successfully,which verifies the feasibility of the scheme.Keywords:AD9226;high-speed data acquisition;circuit design;FPGAo引言在科学技术研究和工业生产的各行各业中,数据采集处理系统应用广泛,如文献1将其应用在箭载测控系统中[1],文献2将其应用在套管井超声成像系统中[2]等。
2011年第30卷第9期传感器与微系统(Transducer and Microsystem Technologies )檸檸檸檸檸檸檸檸檸檸檸檸殠殠殠殠设计与制造基于FPGA 的高速信号采集平台设计*綦磊1,张涛1,梅玮2,葛利俊2,刘溢1,李盛杰1(1.天津大学电气与自动化工程学院天津市过程检测与控制重点实验室,天津300072;2.渤海石油装备承德石油机械有限公司,河北承德067000)摘要:提出了一种基于FPGA 的高速信号采集实现方法,具体描述了采样、储存、通信等模块的设计。
模块功能全部基于VHDL 硬件描述语言,并通过有限状态机来实现,增强了设计的灵活性,降低了成本。
给出了信号采集的实验结果,证明该平台能够稳定可靠的工作。
关键词:现场可编程门阵列;有限状态机;高速A /D 转换器;串口通信中图分类号:TP 216文献标识码:A文章编号:1000—9787(2011)09—0079—03Design of high-speed signal acquisition platform based on FPGA *QI Lei 1,ZHANG Tao 1,MEI Wei 2,GE Li-jun 2,LIU Yi 1,LI Sheng-jie 1(1.Tianjin Key Laboratory of Process Measurement and Control ,School of Electrical Engineering&Automation ,Tianjin University ,Tianjin 300072,China ;2.CNPC Bohai Equipment Chengde Petroleum Machinery Co.Ltd ,Chengde 067000,China )Abstract :A method for high-speed signal acquisition based on FPGA is proposed ,and the design of sampling ,storage and communication module is described in detail.The function of the module is designed based on VHSIC hardware description language (VHDL ),and the finite state machine is used ,which not only enhances the flexibility of design ,but also reduces the costs.An experimental result of the signal acquisition is given and it is proved that the high-speed signal acquisition platform can work steadily and reliably.Key words :field programmable gate array (FPGA );finite state machine ;high-speed A /D converter ;serial communication引言对信号进行A /D 采样,传统的方法多数是用CPU 或单片机完成的,其优点是编程简单,控制灵活,但缺点是控制周期长,速度慢,极大地限制A /D 高速芯片性能的利用[1]。
例如:使用MSP430系列单片机,采样频率最高才300kHz 左右,而常见的A /D 高速芯片采样频率都在几十兆以上[2]。
近年来,高速A /D 采样卡也得到应用,但其昂贵的价格限制了其应用空间。
而FPGA 的时钟频率可达200MHz 以上,且价格很低廉,并容易实现对信号的采样存储和与上位机的通信。
本文利用FPGA 设计一高速信号采集平台,并在天津大学编码激励超声流量测量系统[3]中得以应用。
1总体硬件电路设计信号采集与处理框图如图1所示。
模拟信号经高速模数转换芯片TLC5510转换为数字信号,通过A /D 采样控制状态机存入FPGA 的FIFO 缓存中,再通过UART 模块完成与上位机的串口通信。
图1信号采集与处理框图Fig 1Block diagram of signal acquisition and processing该设计实现三键控制,分别为系统复位键、写信号功能键、读信号功能键。
按下系统复位键后,整个系统完成初始化。
写信号功能键实现A /D 采样和存储功能,数据存满后,写信号存满指示灯亮。
读信号功能键实现将存储器内部存储数据经UART 上传到上位机中。
在整个过程中,VB 数据采集程序保持运行状态。
数据上传结束后,上位机存储数据并做最后数据处理。
收稿日期:2011—01—13*基金项目:国家“863”计划重点资助项目(2008AA042207,2008—2010)97传感器与微系统第30卷2采样存储模块设计在数字电路系统中,有限状态机[4]是一种十分重要的时序逻辑电路模块,它对数字系统的设计具有十分重要的作用,可以认为有限状态机是组合逻辑和时序逻辑这两者的巧妙结合。
有限状态机由一组状态、一个初始状态、输入和根据输入及现有状态转换为下一个状态的转换函数组成,如图2。
图2状态机的结构示意图Fig 2Structure schematic diagram of the state machineTLC5510是美国TI 公司生产的新型A /D 转换器件[5],由于采用半闪速结构和CMOS 工艺,可大大减少比较器的数目,能提供的最大采样率为20MHz 。
鉴于此,选用TLC5510完成采样时钟为12MHz 的A /D 采样。
在设计中,根据TLC5510的特点,通过一个两状态机对其进行控制,在状态1,给A /D 芯片一个采样时钟ADCLK 上升沿,对A /D 的输出进行锁存;在状态2,给A /D 采样模块一数据输出锁存信号。
利用基于FPGA 内部FIFO 存储器对数据进行存储,最大容量为2kB 。
若需要更大容量,可采用外置的RAM 进行存储[6]。
图3为基于内部FIFO 的A /D 采样存储模块结构图。
其中包括4个子模块,即控制模块、A /D 采样模块、存储模块、以多路选择器模块。
由于存储模块的写时钟与发射系统是同步的,其读时钟则取决于UART 串口系统的发送时钟,因此,存储模块的clock 端口添加了一个多路选择器,根据当前操作状态决定输入时钟源。
工作原理:模拟信号生成后,经过一定时间的延迟,控制模块使A /D 采样模块和存储模块开始工作,同时控制多路选择器发射写时钟至存储模块,开始采样和存储。
2048个采样点后,存储模块向控制模块返回一写满状态值,控制模块使A /D 采样模块停止工作,同时控制多路选择器发射读时钟至存储块,将存储数据读出并传输到UART 模块。
3通信模块设计UART (universal asynchronous receiver /transmitter )是一种通用串行数据总线[7],用于异步通信。
该总线双向通信,可以实现全双工传输和接收。
本设计在FPGA 中实现UART 模块,进而完成与上位机的串口通信功能。
UART 帧格式(也就是发送数据的格式)是以一个起始位开始的,并以停止位结束。
起始位后是数据位,可以是图3基于内部FIFO 的A /D 采样存储模块结构Fig 3Structure of the A /D sampling and memory modulebased on the internal FIFO5,6,7,8位,再加一个奇偶校验位(可选),本设计没有设置奇偶校验位,最后是停止位(1位、1.5位或2位),其帧格式如图4所示。
当无数据发送或接收时,各引脚置高电平,以保证开始位来临之前为高电平。
图4UART 帧格式Fig 4UART frame formatUART 发送部分是将收到的并行信号转为TXD 信号串行输出,接收部分接收RXD 串行信号,并将其转换为并行数据。
因为收发设备间会累积时钟误差,因此,需要一个远高于波特率的本地时钟信号对输入信号RXD 不断采样,使接收器和发送器保持同步,用一个波特发生器专门产生所需时钟信号。
UART 的设计包括波特率产生模块、接收模块、发送模块和控制模块,如图5所示。
图5UART 的总设计模块Fig 5Overall design module of UARTUART 发送器状态机由5个状态组成,分别是空闲(i-dle )位,检测起始(start )位,发送(transmit )位,移(shift )位,停止(stop )位。
工作过程如图6:系统复位后进入idle 状态,当需要发送数据时,首先进入start 状态,等待start 位到来,之后进入transmit 状态,发送数据位D0,然后通过移位,依次发送数据位D1 D7,最后进入stop 状态。
一侦数据发送结束后进入idle 状态,如果需要继续发送,再次进入start 状态。
图6UART 发送器状态转换图Fig 6State transition diagram of UART transmitter使用VHDL 语言进行编程,并在Max +PlusII 平台下进行编译、仿真,其仿真波形如图7所示。
08第9期綦磊,等:基于FPGA 的高速信号采集平台设计图7发送器仿真波形Fig 7Simulation waveform of transmitterUART 接收器状态机也由5个状态组成,分别是idle ,start ,sample ,shift ,stop ,如图8。
为了防止起始位的误判,本设计中接收模块使用的接收时钟是接收波特率的16倍。
接收机复位进入空闲状态,等待起始位到来,当RXD 发生从l 到0跳变,进入start 状态检测到起始位,开始对采样时钟计数,当计数到8时,进入sample 状态,开始数据采样,每16采样时钟采集一位串行数据,并进行串/并转换,当采样到有8位数据时,进入shop 状态。
在shop 状态,检测停止位是否为1,如果为1,则输出串/并转换的8位数据,如果是0,则不能输出,回到idle 状态。
图8UART 接收器状态转换图Fig 8State transition diagram of UART receiver4上位机通信与数据处理上位机通过RS —232串行接口技术和Visual Basics 编程实现数据的采集,点击开始查询便开始数据传输,点击保存便将数据以txt 的形式保存到上位机中。