基于FPGA的FIR滤波器数据采集系统.doc

上传人:白大夫 文档编号:3410298 上传时间:2019-08-22 格式:DOC 页数:3 大小:16KB
返回 下载 相关 举报
基于FPGA的FIR滤波器数据采集系统.doc_第1页
第1页 / 共3页
亲,该文档总共3页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《基于FPGA的FIR滤波器数据采集系统.doc》由会员分享,可在线阅读,更多相关《基于FPGA的FIR滤波器数据采集系统.doc(3页珍藏版)》请在三一文库上搜索。

1、基于FPGA的FIR滤波器数据采集系统数据采集系统能实时采集生产过程中的各种数据、参数,成为获取系统工作状态、运行情况的非常重要的手段。近年来,各种应用领域对数据采集系统的性能提出了更加严格的要求:不但要求实现采集关键信息的功能,且对采集系统的抗干扰能力、无用信号的剔除能力提出了很高的要求。特别是在所采集信号被无用信号覆盖或是采集系统工作在具有强干扰的环境下时,如何从采集的数据中提取有用信号,去除干扰信号是现如今数据采集系统的难点和研究的热点。基于FPGA的FIR滤波器由于具有设计灵活、速度快、增益容易控制、稳定性好的优点,逐渐成为数字信号提取的一种非常重要的手段。利用其作为数据采集系统的前端

2、信号处理,已经是高精度和抗干扰数据采集领域的很好的实现方案。1 FIR 滤波器的简介有限脉冲响应FIR(Finite Impulse Response)滤波器由于其具有良好的线性相位和极高的稳定性,在数字信号处理领域得到了极为广泛的运用。N阶FIR滤波器基本系统函数如式(1):一次输出要做N次乘法和N-1次加法,所以如果用串行结构来实现,当阶数N较大时,系统的延时就会很大。如今的数字FIR滤波器大体上可以分为基于DSP的FIR滤波器和基于FPGA的FIR滤波器:基于DSP的FIR滤波器实现简单,只需要几条简单的语句就可以实现,大量运用于数字信号处理过程中。但是由于DSP的运算是串行的,所以不可

3、能设计出高阶快速的FIR滤波器。基于FPGA的FIR滤波器是近几年随着FPGA资源的急速增长而发展出来的一种新型的FIR滤波实现方案2,它具有可配置性强,灵活多样,速度快,稳定性高的优点,逐渐成为工业控制和航天领域中FIR滤波的首选实现方案。2 系统实现方案2.1 总体设计方案系统采集的模拟信号是带有很大噪声和正弦信号的未解调的微弱电压信号,系统实现框图如图2所示。调节滑动变阻器, 将OPA2277的输出电压控制在05 V之内,虽然加入了一个简单的有源RC低通滤波,但是信号有用成分仍然被噪声和叠加的高频正弦波所覆盖。放大后的电压信号虽然幅值在05 V之内,但是淹没在其中的关键信号却仍然只有几毫

4、伏,如果用普通的低精度ADC进行模数转换,由于ADC的转换误差正好和关键信号相差不大,使得转换后的数字信号中引入了相对大的误差。即使后续滤波,得到的也是叠加了误差的关键信号,无法实现高精度采集并解调。因此采用TI公司的24位16通道串行高精度ADC芯片ADS1258进行模数转换。电路图如图4所示。ADC的主时钟采用FPGA主时钟分频后的16 MHz方波信号,选择AIN0AIN9通道作为模拟信号输入,内部采用自动扫描方式。ADC的控制端口都接到了FPGA的通用I/O口。 ADC内部寄存器配置数据从FPGA通过ADC的SPI口写入。配置数据在SPI时钟的上升沿写入,转换后的数据在SPI时钟的下降沿

5、读出。内部寄存器配置情况如表1所示。本系统的主控制器采用XILINX公司的SPARTAN3E系列的FPGA XC3S200E,这款芯片在资源上能满足系统的要求,而且最重要的是在开发环境ISE 9.1以后的版本中,对于SPARTAN3E系列的芯片系统都自带了功能强大的FIR滤波器IP核,这样方便设计高速可靠、占用资源少的FIR滤波器。数据传送到上位机使用CY7C68013,由于这方面的设计不是本系统的重点,因此不再累述。2.3 系统程序设计程序设计是本系统的关键所在,区别于以往系统的关键之处就是高精度ADC的使用和创新性的FIR滤波的引入,使得采集系统具备了超高精度和强抗干扰的能力。ADS125

6、8是一款多通道串行ADC,由于其控制方式是向其内部寄存器写入一定配置数据来完成A/D转换,所以其使用较为灵活。可配置的波特率及斩波功能也使器件的性能更加突出。器件控制流程如图5所示。ADC的读写时序特别重要,所以必须按照芯片资料将各个状态之间转换的延时控制好,既不影响转换周期也能保证结果的正确。器件上电后的218个TCLK周期的延时必须保证,否则虽然芯片也能工作,能进行A/D转换,但是写寄存器命名无法使用,无法将系统需要的配置数据写到各个寄存器。在系统开发的前期,由于忽略了这个长时间的复位时间,导致写命令一直无法正确执行,后来加上复位延时后,ADC工作正常,寄存器数据能顺利写进去。每完成一次转换,能从芯片SPI口读出32位有效数据3,数据格式如表2所示。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1