基于fpga设计的快速自适应消噪模块的制作方法

文档序号:7538457阅读:160来源:国知局
专利名称:基于fpga设计的快速自适应消噪模块的制作方法
技术领域
本发明涉及数字滤波设备领域,尤其是一种基于FPGA设计的快速自适 应消噪模块。
技术背景现场可编程门阵列(FPGA,英文为Field Programmable Gate Array)是作 为专用集成电路(ASIC)的一种半定制电路而出现,它既解决了定制电路的 不足,又克服了原有可编程器件门电路数目有限的缺点,因此,现场可编程 门阵列(FPGA)芯片得到了广泛的应用。目前, 一些研究人员开始使用FPGA 芯片开发LMS数字滤波器产品,但是现有的技术主要集中于如何在一定的误 差范围内减少对FPGA芯片资源的占用,而没有考虑LMS滤波器的通用性问 题。这样使得对不同类型的信号处理都要由具有专业知识的人员操作并使用 比较烦琐的算法来算出合适的滤波器参数,由于该信号易受噪声干扰,其预 先设定的滤波器参数不一定都适合,即使对同一类信号的处理也是如此。这 种采用预先设置参数的方法,不能对一些噪声及干扰信号进行实时调整,从 而导致滤波器性能的下降。特别是,这种方法对于从很微弱的信号中检测出 所需要的信号更是难以实现,而且,没有基于FPGA设计的自适应噪声消除 器。发明内容本发明的在于克服现有技术的不足,提出一种可以实时自动调整滤波器 参数、能够从很微弱的信号中提取有效信号的基于FPGA设计的快速自适应 消噪模块。本发明解决其技术问题是釆取以下技术方案实现的-该基于FPGA设计的快速自适应消噪模块,其特征在于由信号转换电路、 值计算电路、LMS滤波器电路及输出调整电路构成,原始信号s(n)及噪声 输入:r(n)分别连接到信号转换电路的两个输入端,信号转换电路输出的幅值 调整后的输入信号sl(n)和参考信号rl(n)分别连接到LMS滤波器两个输入 端,参考信号rl(n)还与u值计算电路的输入端相连接,u值计算电路输出 的P值连接到LMS滤波器的第三个输入端,LMS滤波器的输出信号y(n)连接到输出调整电路的一个输入端,该输出调整电路的另一个输入端与信号转换 电路的调整信号m相连接,其输出端输出去除噪声的信号Y(n)。
而且,所述的信号转换电路包括原始信号转换电路及噪声信号转换电路, 其中原始信号转换电路由比较器(1)、寄存器(1)、除法器(1)、移位寄存器(1)、寄存器(2)依次连接构成,原始信号s(n)分别连接到比较器(1) 的一个输入端和除法器(1)的被除数端,寄存器(1)的输出端还与比较器 (1)的另一个输入端相连接,寄存器(2)输出转换后的输入信号sl(n);噪 声信号转换电路由比较器(2)、寄存器(3)、除法器(2)、移位寄存器(2), 寄存器(4)依次连接构成,噪声输入r(n)分别连接到比较器(2)的一个输 入端和除法器(2)的被除数端、寄存器(3)的输出端还分别与比较器(2) 的另一个输入端及整数乘法器(1)的一个输入端相连接,移位寄存器(2) 的另一个输出端与整数乘法器(1)的另一个输入端相连接,寄存器(4)输 出转换后的参考信号rl(n),整数乘法器(1)调整信号m。而且,所述的p值计算电路由寄存器(5-8)、小数乘法器(1-5)、小数 加法器(1-4)、除法器(3)及整数乘法器(2)构成实现LMS滤波器参数y 值的计算,该"值计算公式如下y =a/[rl2 (n) +rl2 (n-l) +rl2 (n-2) +r l2 (n-3) +r l2 (n-4)] 其中a是一个常数,rl(n)、 rl(n-l)、 rl(n-2)、 rl(n-3)、 rl(n-4)分 别代表n、 n-1、 n-2、 n-3、 n-4时刻输入到LMS滤波器的参考信号。而且,所述的LMS滤波器电路由寄存器(9-18)、小数乘法器(6-15)、 小数加法器(5-14)、反相器及整数乘法器(3)构成实现LMS滤波器y(n)信 号的计算与输出,y(n)信号的计算公式如下y (n) =sl (n) -[W(,(n) r 1 (n) +Wt (n) rl (n-l) + W2(n) r 1 (n-2) +W3(n)rl(n-3)+W4(n)rl(n-4)]其中si (n)为输入到LMS滤波器的输入信号,rl (n) 、 r 1 (n-1) 、 r 1 (n-2)、 rl(n-3)、 rl(n-4)分别代表n、 n-l、 n-2、 n-3、 n-4时刻输入到LMS滤波器 的参考信号,W"n)、 Wjn)、 W.,(n)、 W"n) 、 W4(n)分别代表n时刻的滤波器加 权系数,其计算公式如下WL (n) =WL (n-l) +2 n rl (n-L-l) y (n-l)其中W,(n)和W,(n-l)分别代表n和n-1时刻LMS滤波器的第L个滤波 器加权系数,rl(n-L-l)代表n-L-l时刻LMS滤波器输入的参考信号,y(n-1) 代表n-1时刻LMS滤波器的输出。而且,所述的输出调整电路由整数乘法器(4)构成,其一个输入端为 LMS滤波器的输出信号y (n),另一个输入端为信号转换电路输出的调整信号m, 其输出端为最终去除噪声的信号Y(n)。而且,所述的常数a为0.2。
而且,所述的FPGA为xilinx公司Spartan XC3S400芯片。 所述的所有寄存器及反相器所存的数为定点数,所有小数乘法器、所有小数加法器、所有除法器及所有整数乘法器进行运算和输出的数为定点数。 而且,所述的所有寄存器、所有小数乘法器、所有小数加法器、所有除法器、反相器及所有整数乘法器为XUinx公司为自己公司的FPGA设计的IP核。本发明的优点效果在于1. 本发明采用了定点最小均方算法(LMS)自适应滤波器,通过LMS自 适应算法控制内部滤波器,具有自身调节参数的能力,因而设计者仅要求很 少或根本不需要信号和噪户(千扰)的先验知识,就能将噪声、干扰信号抑制到 用直接滤波难于或不能达到的程度,从而可以实时地从很微弱的信号或者信 号用常规的方法无法检测的噪声(干扰)场中的多个传感器取得的输入中消除 噪声(或干扰)并尽量地保留信号。2. 本发明可以根据外界信号特点自动计算滤波器参数,提高了常规LMS 滤波器的性能,并具备了通用性,可以稍加改动便可应用于不同的信号去噪 中。


图l是本发明系统原理框图;图2是信号转换电路的电路框图;图3是n值计算电路的电路框图;图4是LMS滤波器电路的电路框图;图5是输出调整电路的电路框图。
具体实施方式
以下结合附图对本发明实施例做进一步详述基于FPGA设计的快速自适应消噪模块,其使用的FPGA为xilinx公司 Spartan XC3S400芯片,以下描述中所有的寄存器、所有的小数乘法器、所有 的小数加法器、所有的除法器、反相器及所有的整数乘法器为Xilinx公司为 自己公司的FPGA设计的IP核,其中小数乘法器和整数乘法器是在Xilinx公 司的16位整数乘法器的IP核的基础上修改得来,小数乘法器是取Xilinx公 司的16位整数乘法器的32位输出中的高十六位作为小数乘法器的输出,整 数乘法器是取Xilinx公司的16位整数乘法器的32位输出中的低十六位作为 小数乘法器的输出。上述所有寄存器及反相器所存的数为定点数,所有小数 乘法器、所有小数加法器、所有除法器及所有整数乘法器进行运算和输出的 数为定点数。基于FPGA设计的快速自适应消噪模块有两个信号输入通道及一个输出通道 一个输入通道是原始信号输入通道,该通道除接收到信号源x(n)外, 还收到一个与信号不相关的噪声v(n),因此,该输入通道接收的原始信号为 s(n) =x(n)+v(n);另一个输入通道是噪声输入通道,该通道接收与信号不相 关的而以某种未知方式与原始信号通道噪声v(n)相关的噪声信号r(n):输出 通道是指经消噪处理后的输出端,其输出的信号为Y(n)。如图1所示,基于FPGA设计的快速自适应消噪模块,由信号转换电路、 u值计算电路、LMS滤波器电路及输出调整电路连接构成,原始信号s(n)及 噪声输入r(n)分别连接到信号转换电路的两个输入端,信号转换电路对s(n) 信号及r(n)信号处理后,输出三个信号输入信号sl(n)和参考信号rl(n) 及调整信号m,输入信号sl (n)和参考信号rl (n)分别连接到LMS滤波器两个 输入端,参考信号rl(n)与n值计算电路的输入端相连接,y值计算电路输 出的^值连接到LMS滤波器的第三个输入端,LMS滤波器的输出信号y(ri)连 接到输出调整电路的一个输入端,该输出调整电路的另一个输入端与信号转 换龟路的调整信号m相连接,其输出端输出去除噪声的信号Y (n)。如图2所示,信号转换电路包括原始信号转换电路及噪声信号转换电路, 图2中上半部分为原始信号转换电路,该电路由比较器l、寄存器l、除法器 1、移位寄存器1及寄存器2依次连接构成,原始信号s(n)分别连接到比较器 1的一个输入端和除法器1的被除数端,寄存器1的输出端还与比较器1的另 一个输入端相连接,寄存器2输出转换后的输入信号sl(n)。其中,原始信号 s(n)输入后分成二路, 一路信号经过比较器1后,找到信号的最大值传送给 移位寄存器l,同时将最大值输入到除法器l的除数端,另一路输入到除法器 1的被除数端,除法器1的输出信号就是归一化后的原始信号s(n),归一化 后的原始信号s(n)输入移位寄存器1,经移位縮小后,从寄存器2输出处理 后的输入信号sl(n)。图2中的下半部分是噪声信号转换电路,该电路由比较器2、寄存器3、 除法器2、移位寄存器2及寄存器4依次连接构成,噪声输入r(n)分别连接 到比较器2的一个输入端和除法器2的被除数端,寄存器3的输出端还分别 与比较器2的另一个输入端及整数乘法器1的一个输入端相连接,移位寄存 器2的另一个输出端与整数乘法器1的另一个输入端相连接,寄存器4输出 转换后的参考信号rl(n),整数乘法器1调整信号m。其中,噪声输入r(n) 输入后分成二路, 一路信号经过比较器2后,找到信号的最大值传送给移位 寄存器3,同时将最大值输入到除法器2的除数端,另一路输入到除法器2的 被除数端,除法器2的输出信号就是归一化后的噪声输入r(n),归一化后的 噪声输入r(n)输入移位寄存器2,经移位缩小后,从寄存器4输出处理后的 参考信号ri(n),电路中整数乘法器1是相对独立的一块电路,被乘数是前
端采集电路中采到的信号的最大值,乘数是縮小电路的縮小的倍数,输出为调整信号m。本实施例中的移位寄存器1及移位寄存器2均采用右移两位的方法,即 缩小4倍。如图3所示,n值计算电路由寄存器(5-8)、小数乘法器(1-5)、小数 加法器(1-4)、除法器3及整数乘法器2构成实现LMS滤波器参数u值的计算,该"值的计算公式如下-ii =a/ [r l2 (n) +r l2 (n-l) +rl2 (n-2) +r l2 (n-3) +rl2 (n-4)] 其中a是一个常数,rl(n)、 rl(n-1)、 rl (n-2) 、 rl(n-3)、 rl(n-4)分 别代表n、 ri-1、 n-2、 n-3、 n-4时刻输入到LMS滤波器的参考信号。图3所示u值计算电路框图即按照上述计算公式来实现的参考信号 rl(n)输入后分为二路, 一路沿着寄存器5至寄存器8传输,每当时钟信号的上升沿到来时,数据传输给下一个相邻的寄存器,形成一个单位的延时,因 此,寄存器5、寄存器6、寄存器7、寄存器8存储的数据便是n-1、 n-2、 n-3、 n-4时刻输入到LMS滤波器的参考信号rl (n-1) 、 rl (" ) 、 rl (n- 3 ) 、 rl (n-4);另外一路传输到小数乘法器1中实现rl2(11)。寄存器5、寄存器6、寄 存器7、寄存器8中的数据传输方式同上, 一路传输给下一个相邻的寄存器, 另一路分别传输到小数乘法器2、小数乘法器3、小数乘法器4、小数乘法器 5分别实现rl2(n-l)、 rl2(n-2)、 rl2(n-3)、 rl2(n-4)。小数乘法器1和小数 乘法器2的输出端连接到小数加法器1后,由小数加法器1求出二者之和, 小数加法器1和小数乘法器3的输出端连接到小数加法器2后,由小数加法 器2求出二者之和,小数加法器2和小数乘法器4的输出端连接到小数加法 器3后,由小数加法器3求出二者之和,小数加法器3和小数乘法器5的输 出端连接到小数加法器4后,由小数加法器4求出二者之和,小数加法器4 的输出即是rl2(n)+rl2(n-l)+rl2(n-2)+rl2(n-3)+rl2(n-4)。将小数加法器4 的输出输入到除法器3中求倒数,将除法器3的输出输入到整数乘法器2中 实现a倍放大,整数乘法器2的输出即为最终的/i值。在本实施例中常数a取 值为0.2。如图4所示,所述的LMS滤波器电路由寄存器(9-18)、小数乘法器(6-15)、 小数加法器(5-14)、反相器及整数乘法器3构成实现LMS滤波器y(n)信号的 计算与输出,LMS滤波器输出的信号y(n)的计算公式如下y (n) =sl (n) -[W。(n) r 1 (n) +Wt (n) r 1 (n—1) + W2(n)r 1 (n-2) +W3(n)rl(n-3)+W4(n)rl(n-4)]其中si (ii)为输入到LMS滤波器的输入信号,rl (n) 、 rl (n-1) 、 rl (n-2)、 rl(n-3)、 rl(n-4)分别代表n、 n-l、 n-2、 n-3、 n-4时刻输入到LMS滤波器
的参考信号,W。(n)、 Wjn)、 W2(n)、 W3(n)、 W4(n)分别代表n时刻的滤波器加 权系数,其计算公式如下WL (n) =WL (n-1) +2 u rl (n-L-l) y(n-l)其中W,Xn)和Wjn-l)分别代表n和n-1时刻LMS滤波器的第L个滤波 器加权系数,rl (n-L-l)代表n-L-1时刻LMS滤波器输入的参考信号,y(n-l) 代表n-1时刻LMS滤波器的输出。图4所示的LMS滤波器电路即是按上述计算方法来实现的信号转换电路输出的参考信号rl(n)为二路, 一路沿着寄存器9、寄存器IO、寄存器ll、寄存器12、寄存器13传输,每当时钟信号的上升沿到来时,参考信号rl(n)传输给下一个相邻的寄存器,形成一个单位的延时,因此,寄存器9、寄存器10、寄存器1K寄存器12、寄存器13存储的数据便是n-1、 n-2、 n-3、 n-4、n-5时刻输入到LMS滤波器的参考信号rl (n-l) 、 rl (n- 2 ) 、 rl (n- 3 ) 、 rl (n-4)、 rl(n-5);另外一路传输到小数乘法器6实现W。(n)rl (n)。寄存器9、寄存器10、寄存器11、寄存器12、寄存器13的数据传输方式和rl(n)相似,一路传输给下一个相邻的寄存器, 一路分别传输到小数乘法器7、小数乘法器8、小数乘法器9、小数乘法器10分别实现W,(n)rl(n-1)、 W2 (n) rl (n-2)、W3(n)rl(n-3)、 W4(n) rl (n_4)。寄存器9、寄存器10、寄存器11、寄存器12、寄存器13的输出还有一路传给小数乘法器11、小数乘法器12、小数乘法器13、小数乘法器14、小数乘法器15,用来计算滤波器的滤波器加权系数Wjn)。小数乘法器6和小数乘法器7的输出端连接到小数加法器5,由小数加法器5求出二者之和,小数加法器5和小数乘法器8的输出端连接到小数加法器6,由小数加法器6求出二者之和,小数加法器6和小数乘法器9的输出端连接到小数加法器7,由小数加法器7求出二者之和,小数加法器7和小数乘法器10的输出端连接到小数加法器8,由小数加法器8求出二者之和,小数加法器8的输出即是v' (n),接着对v' (ri)取反,输入到小数加法器14的输入端,小数加法器14的另一个输入来自信号转换电路输出的输入信号sl(ri),小数加法器14的输出即为y(n)-sl(n)- v' (n),其中v, (n)为 WoWrUiO + WKiOrUn-lp W2(n)rl(n-2) + W3(n)rl(n-3) + W4(n)rl(n-4)。图4中的虚线部分是实现滤波器加权系数WL (n) =WL (n-1) +2 y r 1 (n-L-l) y (n-l)的计算电路。每当在时钟信号的上升沿到来时,寄存器14、寄存器15、寄存器16、寄存器17和寄存器18分别输出n-l时刻的第O、 1、 2、 3、 4个的滤波器加权系数Wu(n-1)、 W'(n-1)、 W2(n-1)、 W3(n_l)、 W4(n-1)。 y值和y(n-l)输入到整数乘法器3中实现"y(rrl)。整数乘法器3的输出端分别输入到小数乘法器ll、小数乘法器12、小数乘法器13、小数乘法器14和小数乘法器15的输入端中,实现"l(n-l)y(n-l) 、 u rl (n-2) y (n-1) 、 yrl(n-3)y(n-1)、lirl(n-4)y(n-i)、 u rl (n-5) y (n-i),接着小数乘法器11、小数乘法器12、小数 乘法器13、小数乘法器14和小数乘法器15的输出端分别连接到小数加法器 9、小数加法器IO、小数加法器ll、小数加法器12和小数加法器13中,分别 计算出在n时刻的滤波器加权系数W。(n)、 Wjn)、 W2(n)、 W3(n)、 W"n)。因此y(n)信号的计算为y(n)=sl (n)- v, (n)=sl(n) —[W。(n)rl(n)+W1(n)rl(n—1)+ W2(n)rl(n-2) +W:i(n)rl(n—3)+W4(n)rl(n—4)] 图4中所示的LMS滤波器也可以看作是由两部分组成的, 一部分是由实 现计算v' (n)电路的FIR滤波器(有限脉冲响应滤波器),另一部分是将输入 信号si(n)与v' (n)信号相减的运算电路。在这里使用了定点最小均方算法 (LMS),使得均方误差输出在性能表面上下降。在滤波器收敛稳定后,其输 出的v' (n)与噪声差别达到最小,通过最后的减法计算输出达到均方误差的 最小值。如图5所示,输出调整电路由整数乘法器4构成,其一个输入端为LMS 滤波器的输出信号y(ri),另一个输入端为信号转换电路输出的调整信号m, 其输出端为最终去除噪声的信号Y(n)。
权利要求
1.基于FPGA设计的快速自适应消噪模块,其特征在于由信号转换电路、μ值计算电路、LMS滤波器电路及输出调整电路构成,原始信号s(n)及噪声输入r(n)分别连接到信号转换电路的两个输入端,信号转换电路输出的幅值调整后的输入信号s1(n)和参考信号r1(n)分别连接到LMS滤波器两个输入端,参考信号r1(n)还与μ值计算电路的输入端相连接,μ值计算电路输出的μ值连接到LMS滤波器的第三个输入端,LMS滤波器的输出信号y(n)连接到输出调整电路的一个输入端,该输出调整电路的另一个输入端与信号转换电路的调整信号m相连接,其输出端输出去除噪声的信号Y(n)。
2. 根据权利要求1所述的基于FPGA设计的快速自适应消噪模块,其特 征在于所述的信号转换电路包括原始信号转换电路及噪声信号转换电路, 其中原始信号转换电路由比较器(1)、寄存器(1)、除法器(1)、移位寄存 器(1)、寄存器(2)依次连接构成,原始信号s(n)分别连接到比较器(1) 的一个输入端和除法器(1)的被除数端,寄存器(1)的输出端还与比较器(1)的另一个输入端相连接,寄存器(2)输出转换后的输入信号sl(n);噪 声信号转换电路由比较器(2)、寄存器(3)、除法器(2)、移位寄存器(2), 寄存器(4)依次连接构成,噪声输入r(n)分别连接到比较器(2)的一个输 入端和除法器(2)的被除数端、寄存器(3)的输出端还分别与比较器(2) 的另一个输入端及整数乘法器(1)的一个输入端相连接,移位寄存器(2) 的另一个输出端与整数乘法器(1)的另一个输入端相连接,寄存器(4)输 出转换后的参考信号rl(n),整数乘法器(1)调整信号m。
3. 根据权利要求1所述的基于FPGA设计的快速自适应消噪模块,其特 征在于所述的p值计算电路由寄存器(5-8)、小数乘法器(1-5)、小数加 法器(1-4)、除法器(3)及整数乘法器(2)构成实现LMS滤波器参数p值的计算,该y值计算公式如下<formula>formula see original document page 2</formula>其中a是一个常数,rl(n)、 rl(n-1)、 rl (n-2) 、 rl (n-3) 、 rl(n-4)分别代表n、 n-l、 n-2、 n-3、 n-4时刻输入到LMS滤波器的参考信号。
4. 根据权利要求1所述的基于FPGA设计的快速自适应消噪模块,其特 征在于所述的LMS滤波器电路由寄存器(9-18)、小数乘法器(6-15)、小 数加法器(5-14)、反相器及整数乘法器(3)构成实现LMS滤波器y(n)信号 的计算与输出,y(n)信号的计算公式如下<formula>formula see original document page 2</formula><formula>formula see original document page 2</formula> 其中sl (n)为输入到LMS滤波器的输入信号,rl (n) 、 rl (n-1) 、 rl (n-2)、rl(n-3)、 rl(n-4)分别代表n、 n-1、 n-2、 n-3、 n-4时刻输入到LMS滤波器 的参考信号,W。(n)、 Wjn)、 W"n)、 W3(n)、 W4(n)分别代表n时刻的滤波器加 权系数,其计算公式如下WL (n) =WL (n-l) +2 u rl (n-L-l) y (n-l) 其中(n)和Wl (n-1)分别代表n和n-1时刻LMS滤波器的第L个滤波 器加权系数,rl (n-L-l)代表n-L-1时刻LMS滤波器输入的参考信号,y(n-l) 代表n-l时刻LMS滤波器的输出。
5. 根据权利要求1所述的基于FPGA设计的快速自适应消噪模块,其特 征在于所述的输出调整电路由整数乘法器(4)构成,其一个输入端为LMS 滤波器的输出信号y(n),另一个输入端为信号转换电路输出的调整信号m, 其输出端为最终去除噪声的信号Y(n)。
6. 根据权利要求3所述的基于FPGA设计的快速自适应消噪模块,其特 征在于所述的常数a为0.2。
7. 根据权利要求1所述的基于FPGA设计的快速自适应消噪模块,其特 征在于所述的FPGA为xilinx公司Spartan XC3S400芯片。
8. 根据权利要求2或3或4或5所述的基于FPGA设计的快速自适应消 噪模块,其特征在于所述的所有寄存器及反相器所存的数为定点数,所有 小数乘法器、所有小数加法器、所有除法器及所有整数乘法器进行运算和输 出的数为定点数。
9. 根据权利要求2或3或4或5所述的基于FPGA设计的快速自适应消 噪模块,其特征在于所述的所有寄存器、所有小数乘法器、所有小数加法 器、所有除法器、反相器及所有整数乘法器为Xilinx公司为自己公司的FPGA 设计的IP核。
全文摘要
本发明涉及数字滤波设备领域的基于FPGA设计的快速自适应消噪模块。该模块由信号转换电路、μ值计算电路、LMS滤波器电路及输出调整电路连接构成,原始信号s(n)及噪声输入r(n)分别连接到信号转换电路的两个输入端,信号转换电路输出的输入信号s1(n)和参考信号r1(n)分别连接到LMS滤波器两个输入端,参考信号r1(n)还与μ值计算电路的输入端相连接,μ值计算电路输出的μ值连接到LMS滤波器的第三个输入端,LMS滤波器的输出信号y(n)与调整信号m相连接到输出调整电路,其输出端输出去除噪声的信号Y(n)。本发明采用了定点最小均方算法(LMS),可以根据输入信号的特点自动计算滤波器参数,快速自动调整参数来消除噪声,提高了常规LMS滤波器的性能,同时具备很强的通用性。
文档编号H03H17/02GK101150304SQ20061001569
公开日2008年3月26日 申请日期2006年9月18日 优先权日2006年9月18日
发明者沈冲飞, 勇 胡 申请人:中国医学科学院生物医学工程研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1