您的位置 首页 编程

根据FPGA的信号小波实时处理办法

根据小波去噪的原理及特点,提出了用 FPGA实现小波实时信号处理的方法。实验结果证明采用FPGA实现小波信号处理能在低信噪比的情况下有效去除噪声,同时能够满足信号处理系统的实时性要求。

小波改换能够一起在时域和频域进行部分剖析,在对时变信号进行剖析时具有显着的优势。小波算法在进行信号处理时,因为具有滤波作用好、信号细节丢失少的长处,然后引起了广泛的重视和运用。现在常用于高速实时信号处理的硬件芯片分为两大类:依据大规模可编程集成电路FPGA的纯硬件完结计划和依据高速通用DSP的软件完结计划。选用FPGA的硬件完结计划硬件接口规划灵敏,能够和恣意数字外围电路直接运用,且其具有高度的集成度和高速的处理速度;而依据高速通用DSP的软件完结计划代码规划灵敏,能够快速修正和调试程序[6]。小波算法运算量较大,假如选用DSP计划由软件来完结该算法就很难满意体系实时性的要求。依据以上原因本文提出了选用FPGA计划完结小波算法。该计划对一维信号具有杰出的去噪作用,一起也能满意体系的实时性要求。

1 小波去噪的根本原理

关于小波算法,运用最广泛的是信号处理和图画处理,而在这两个领域中运用最多的便是信号及图画的去噪和紧缩。因为在正交小波中,正交基的选取比传统办法更挨近实践信号自身,所以通过小波改换能够更简单地别离出噪声,因而,相关于传统办法,小波剖析在去噪和紧缩方面有着无与伦比的优势[5]。

小波剖析用于去噪的进程如下:

(1)分化进程:选定一种小波,对含噪信号进行N层小波分化,得到各层分化的小波系数。

(2)阈值处理进程:将通过分化得出的各层高频小波系数进行阈值处理,在进行到最终一层时,要一起对该层的高、低频系数进行阈值处理。

(3)重构进程:将通过阈值处理后的小波系数通过小波逆改换重构出去噪后的信号。

阈值降噪法是一种完结简略、作用较好的小波降噪办法。小波改换具有很强的去数据相关性,它能将信号的能量会集在小波域一些大的小波系数中,而噪声的能量却散布于整个小波域内,因而经小波分化后信号的小波系数比噪声的大。所以,选用阈值的办法能够把信号的小波系数保存,而使绝大部分噪声小波系数置零[2]。现在,常用的阈值函数有硬阈值函数和软阈值函数。硬阈值法处理的成果能够很好地保存信号边际等部分特征,软阈值法处理的成果要相对滑润,可是比较简单形成含糊等失真现象。

2 硬件完结

体系框图如图1所示。依据相关剖析,规划选用了XILINX公司出产的超大规模 FPGA器材Virtex 5 XC5VSX50T。体系接口选用RS422串口,相关于RS232,通过RS422能够以更快的波特率来收发数据,一起其通讯间隔也比RS232更远。在进行小波改换之前需求预存必定长度的数据,因而在接口和小波改换模块之间需求设置一个FIFO。FPGA通过接口模块将收到的含噪信号数据存入FIFO模块中,预存32个数据。


为确保必定的滤波作用又不使算法的运算量过大,本文将小波改换模块的分化、重构层数设为5层。小波改换模块首要包含前向小波改换模块、阈值处理和逆向小波改换模块。前向小波改换模块完结对含噪信号的多层分化,将含噪信号分化为低频重量和高频重量。阈值处理模块去除通过多层小波分化出来的各层高频噪声,在前4层阈值处理进程中需将处理后的高频重量存储到相应的RAM中。逆向小波改换模块完结信号的多层重构,得出去噪后的信号。逆向小波改换模块重构信号的次序和前向模块相反,是按最终一层到第一层的次序重构信号,在进行到相应层次时将存放在相应RAM中经阈值处理后的高频重量取出与该层低频重量进行重构,完结5层逆向小波改换之后即可得到去噪后的信号。小波改换模块的FPGA结构图如图2所示。

本规划选用DB4小波对含噪信号进行进步小波改换,DBN系列的小波扩张性比较好,能够灵敏地权衡增加支集长度(为了进步能量的会集度)带来的边界问题,且DB4小波滤波器长度较短,能够进步运算速度,也能够满意必定的滤波作用。

在MATLAB平台中通过履行句子“lsdb4=liftwave(‘db4’);displs(lsdb4);”就能得到db4进步小波的计划信息。其计划信息如下:

lsdb4={ [-0.32227589] [-1.11712361 -0.30014226]
[-0.01880835 0.11764809] [2.13181671 0.63642827]
[-0.46908348 0.14003924 -0.02479124] [0.73412453]
[1.36216672] };

由进步小波算法可知,该算法首要由加、减、乘运算组成,关于FPGA完结来说,加减运算能够调用FPGA的加法器IP核,而浮点系数的乘运算能够通过移位相加来完结。以浮点系数-0.32227589为例,-0.32227589=-((1/4)+(1/16)+(1/128)),所以要完结数据与系数-0.32227589相乘,能够通过右移相加的办法来完结,这样做能够削减对乘法器的调用,然后削减了该部分规划时所需的面积,进步了芯片的处理速度。其详细完结框图如图3所示。

3 仿真成果及剖析

本规划运用ISE 10.1软件完结了硬件电路的Verilog规划、归纳,运用Modelsim 6.0D完结时序仿真,FPGA体系时钟为39 MHz,输入的信号采样率为5 kHz,输入的采样信号为某类型光纤陀螺的零漂信号,并增加幅值为1 V的伪随机噪声。

如图4所示,第二个信号indata是含噪声的信号,第三个信号outdata是通过进步小波改换后的去噪信号。由图4能够看出,光纤陀螺零漂信号现已彻底淹没在噪声之中,在信噪比很低的情况下,通过小波去噪之后能够很好地滤除噪声信号。由图5和图6能够看出,FPGA的小波改换模块从接纳处处理完一个数据点所需的时刻约为6402632628 ps-6388706228 ps=13.93 μs,彻底能够满意一般体系对信号处理实时性的要求。


算法用DSP(TI TMS320C6713)完结时,对C代码进行优化,处理一个数据点所需求的时刻约为66μs,选用C和汇编混合编程对要害循环进行进行汇编优化,处理一个数据点所需求的时刻约为40 μs。从实时性的视点来说,用FPGA完结该算法比用DSP更契合信号处理体系对实时性的要求。

本文提出了一套使用FPGA完结小波改换的计划。同传统滤波办法比较,小波改换法能更好地滤除噪声,在选好相应的小波后也能满意实时性的要求,对错常抱负的信号处理计划。与用DSP处理器的办法比较,选用FPGA完结小波改换具有速度快、数据宽度可恣意设置的特色,能更好地满意信号处理实时性的要求,而且Verilog言语具有可移植性的特色,具有更强的通用性。该办法能够运用在光电盯梢信号去噪及语音去噪等一维信号实时处理体系中,它在较为有效地消除噪声的一起又能根本满意体系的实时性。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/fangan/biancheng/196430.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部