一种一阶数字低通滤波方法、滤波器及电子设备的制作方法

文档序号:7513380阅读:503来源:国知局
专利名称:一种一阶数字低通滤波方法、滤波器及电子设备的制作方法
技术领域
本发明涉及数字信号处理技术领域,特别涉及一种一阶数字低通滤波方法、滤波器及电子设备。
背景技术
在许多的嵌入式系统中(如小区安防系统、物联网节点等),大量的现场物理信号(热释电、烟雾、煤气等)需要被测量,这主要靠传感器来完成。传感器把物理量(热释电、烟雾、煤气等)的变化转变成电信号的变化,并通过特定的电路传递给微处理器处理;这类系统都是运行在一些开放的环境中,所以信号的输出常常会叠加一些噪声信号,还有就是、这些信号的变化都是很微弱的,通常都是在毫伏或者毫安级的范围内变化;因此要对传感器输出的模拟信号进行滤波,并且这些信号变化的频率都比较低,所以传统的滤波方法都采用一阶数字低通滤波法,如公式一所示Y (n) = (I -a) *X (n) +a*Y (n_ I)式中Y(n)-----滤波后的第n次采样值;X (n)-----未经滤波的第n次采样值;Y (n-1)-----滤波后的第n-1次采样值;a-----滤波系数,在[1,0]区间取值;公式一中的滤波系数a,表示滤波时间常数与采样周期的比值,即为公式二
Tf
a= T + Tf式中Tf-----滤波时间常数;T-----采样周期;当采样周期T远小于滤波时间常数Tf的时候,该算法等价与一阶RC模拟滤波器,对周期性干扰具有良好的抑制作用,适用于波动频率较高的场合。其不足之处是对系统中的微处理器要求高,因为处理乘法运算是很耗资源和时间的,所以微处理器会花大量的时间和资源来处理滤波算法;特别是在有FPGA和CPLD参与的系统中,如果用硬件实现乘法运算,那代价是昂贵的。由此可见现有技术中存在一阶数字低通滤波器实现乘法运算代价昂贵的问题。

发明内容
为了解决上述问题,本发明实施例的目的是提供一种一阶数字低通滤波方法、滤波器及电子设备,解决现有技术中存在的,一阶数字低通滤波器实现乘法运算代价昂贵的问题,该方法包括第一移位寄存器对第一采样值向左移第一整数位,第一采样值为根据未经滤波的当前采样值得到的采样值和滤波后的之前一次采样值之一;第二移位寄存器将第一移位寄存器左移的结果,进行相应位数的移位操作;
第一加法器把经过各第二移位寄存器移位后的数据相加,其中根据第一滤波系数确定第一加法器的个数和第二移位寄存器的个数,以及确定各第二移位寄存器的移位位数;第三移位寄存器将第一加法器的相加结果,右移第一整数位;第二加法器根据第三移位寄存器右移的结果,得到本次滤波后的采样值。进一步,还包括第四移位寄存器对第二采样值向左移第二整数位,第二采样值为根据未经滤波的当前采样值得到的采样值和滤波后的之前一次采样值中的另一个;第五移位寄存器将第四移位寄存器左移的结果,进行相应位数的移位操作;第三加法器把每个经过第五移位寄存器移位后的数据相加,其中根据第二滤波系 数确定第三加法器的个数和第五移位寄存器的个数,以及确定各第五移位寄存器的移位位数,第一滤波系数和第二滤波系数之和为I ;第六移位寄存器将第三加法器的相加结果,右移第二整数位;第二加法器根据第三移位寄存器右移的结果,得到本次滤波后的采样值具体为第二加法器将第三移位寄存器右移的结果和第六移位寄存器右移的结果相加,得到本次滤波后的采样值。进一步,还包括第七移位寄存器对未经滤波的之前b_l次到当前第n次采样值,向左移第三整数位,b的取值是2的整数次幂,n为正整数,且n大于b-1 ;第四加法器把第七移位寄存器的输出,和第一寄存器中的存储值相加;第一寄存器存储第一加法器的输出,且第一加法器相加b次后第一寄存器清零;第八移位寄存器将第一加法器相加b次后的输出值,向右移b位得到第一米样值。进一步,还包括第九移位寄存器将第二加法器输出右移第三整数位,得到本次滤波后的采样值。进一步,第一采样值为未经滤波的当前采样值。本发明实施例还提供一种一阶数字低通滤波器,包括第一移位寄存器,其对第一采样值向左移第一整数位,第一采样值为根据未经滤波的当前采样值得到的采样值和滤波后的之前一次采样值之一;第二移位寄存器,其将第一移位寄存器左移的结果,进行相应位数的移位操作;第一加法器,其把经过各第二移位寄存器移位后的数据相加,其中根据第一滤波系数确定第一加法器的个数和第二移位寄存器的个数,以及确定各第二移位寄存器的移位位数;第三移位寄存器,其将第一加法器的相加结果,右移第一整数位;第二加法器,其根据第三移位寄存器右移的结果,得到本次滤波后的采样值。进一步,还包括第四移位寄存器,其对第二采样值向左移第二整数位,第二采样值为根据未经滤波的当前采样值得到的采样值和滤波后的之前一次采样值中的另一个;第五移位寄存器,其将第四移位寄存器左移的结果,进行相应位数的移位操作;第三加法器,其把每个经过第五移位寄存器移位后的数据相加,其中根据第二滤波系数确定第三加法器的个数和第五移位寄存器的个数,以及确定各第五移位寄存器的移位位数,第一滤波系数和第二滤波系数之和为I;第六移位寄存器,其将第三加法器的相加结果,右移第二整数位;第二加法器,其将第三移位寄存器右移的结果和第六移位寄存器右移的结果相力口,得到本次滤波后的采样值。进一步,还包括第七移位寄存器,其对未经滤波的之前b_l次到当前第n次采样值,向左移第三整数位,b的取值是2的整数次幂,n为正整数,且n大于b-1 ;
第四加法器,其把第七移位寄存器的输出,和第一寄存器中的存储值相加;第一寄存器,其存储第一加法器的输出,且第一加法器相加b次后清零;第八移位寄存器,其将第一加法器相加b次后的输出值,向右移b位得到第一米样值。进一步,还包括第九移位寄存器,其将第二加法器输出右移第三整数位,得到本次滤波后的采样值。进一步,第一采样值为未经滤波的当前采样值。本发明实施例还提供一种电子设备,本体上包括前述的一阶数字低通滤波器。由于将乘法运算转换成移位运算,可以减少实现代价。


图I表示本发明的一阶数字低通滤波器电路原理图;图2表示本发明的取平均值的一阶数字低通滤波器电路原理图。
具体实施例方式下面结合附图和实施例进行详细的说明。图I是高精度一阶低通数字滤波器的电路图,元件104、元件107是本算法的核心部分,它们的功能是分别实现(l_a)*X(n)以及a*Y (n-1),把乘法运算转化为移位加法运算,X(n)可以是未经滤波的当前第n次采样值,其实现的数学原来是a可表示为二进制数,对于二进制数,其基数是2,它只有两个数字符号,即0和I。计算规律是“逢二进一”或“借一当二”。例如二进制数(101. 01) 2 (101. 01)任何一个二进制数N 2都可以用多项式来表示42=^2^+^21"2+...+(^21+^ °+^ -1+^ -2+…+d_m*2-m等号左边为并列表示法,等号右边为多项式表示法,显然这两种表示法表示的数是等价的。在右边多项式表示法中,1、0、1、0、1被称为系数项,而Z2、〗1、〗'〗'〗—2等被称为该位的“权”。式中任何一位数值的大小都可以用该位的系数项Cli和权值21的积来确定,其中,下标n表示整数部分的位数,下标m表示小数部分的位数,d是O、I中的某一个数,即di G(0,1)。由上面的推导可以把乘法运算转化为移位加法运算,对于每一个特定实例来说a是固定的,因此转化为移位加法后,加法器的数目也是固定的,因为a在[1,0]区间取值,因此可以先放大1024倍,即X(n)左移10位,最后运算的结果右移10即可,下面以(I-a)为0. 4为例进行说明,(I-a)先放大1024倍等于409. 6取整得到409,二进制表示为110011001。根据 X(n) *N2=X(n) *dn_1*2n_1+X(n) *dn_2*2n-2+... +X(n) *d1*21+X(n) *d0*20+X(n) *(!<*2_1+X (n) *d_2*2-2+…+X (n) *d_m*2-mX(n)* (110011001) 2=X (n) *1*28+X (n) *1*27+X (n) *0*26+X (n) *0*25+X (n) *1*24+X (n) *1*23+X (n) *0*22+X (n) *0*2:+X (n) *1*2°=X (n) 8+X (n) 7+X (n) 4+X (n) 3+X (n)〈〈I…其中(X(n)〈〈8)就是把X(n)左移8位,(X(n)〈〈7)就是把X(n)左移7位,(X(n)〈〈4)就是把X(n)左移4位,(X(n)〈〈3)就是把X(n)左移3位,(X(n)〈〈l)就是把X(n)左移I位,依次类推(X(n)〈〈k)就是把X(n)左移k位,k为正整数。最后运算的结果右移10位后,即把乘法运算转化为移位加法运算。
元件104的具体实现步骤如下步骤I、移位寄存器110对X(n)向左移10位,即把(l_a)放大1024倍。根据(1-a)可确定加法器的个数和移位寄存器的个数。当然移位寄存器110对X(n)向左移10位只是示例,左移8位、11位等整数位均可。步骤2、移位寄存器113将移位寄存器110左移的结果,进行相应位数的移位操作。以(1-a)为0.4为例,共5个移位寄存器113分别左移8位、7位、4位、3位、I位。步骤3、加法器112把经过各移位寄存器113移位后的数据相加。其中根据滤波系数(1-a)为0. 4确定加法器112的个数为4和移位寄存器113的个数为5,以及确定各移位寄存器113的移位位数。步骤4、移位寄存器111将加法器112的相加结果,右移10位。把每个经过移位后的数据相加,再把相加的结果右移10位就完成了整个移位加法运算。之后,加法器106根据移位寄存器111右移的结果,得到本次滤波后的采样值。类似的方法可以在元件107中实现,元件107的具体实现步骤如下步骤11、移位寄存器114对Y (n-1)向左移10位,即把a放大1024倍,确定加法器的个数和移位寄存器的个数。步骤12、移位寄存器115将移位寄存器114左移的结果,进行相应位数的移位操作。步骤13、加法器117把经过各移位寄存器115移位后的数据相加。步骤14、移位寄存器116将加法器117的相加结果,右移10位。结合之前的描述,加法器106将移位寄存器116右移的结果和移位寄存器111右移的结果相加,得到本次滤波后的采样值。元件107是和元件104功能类似,元件109是一个存储器,存放上一次滤波的采样值Y (n-1),存储器109和元件107—起实现把a*Y (n-1)的操作,把乘法运算转化为移位运算,加法器106是一阶数字滤波算法中的加法器,它实现把未经滤波的当前采样值乘以(1-a)和滤波后的之前一次采样值乘以a相加的操作,移位寄存器108它实现将加法器106右移m位的操作,左边补零,目的是把不影响精度的低m位去掉,最后从移位寄存器108出来的数据就是本次滤波后的采样值。
如图2,当然被测信号经采样后可以先送到移位寄存器101,移位寄存器101的作用是把采样的原始信号即未经滤波的当前采样值,左移d位低位补零,低d位就是扩展的小数位,这样做的目的有两个避免微弱的采样信号被后面的移位运算截取掉;让每次采样信号的的小数部分都参与后面的运算,提高了处理精度。例如,移位寄存器101对未经滤波的之前b-1次到当前第n次采样值,向左移8位,b的取值是2的整数次幂如4,n为正整数,且n大于b-1。加法器把第七移位寄存器的输出,和第一寄存器中的存储值相加被测信号经移位寄存器101移位扩展后,通过加法器103就和寄存器102的值相力口,加法器103再把相加的结果存到寄存器102里,因此寄存器102的值就是前面几次信号相累加的结果,寄存器102和加法器103两个元件就是实现把前面b次采样数据累加,寄存器102位宽的选择应是b次累加不溢出,b的取值是2的整数次幂,相加b次后把102清零。移位寄存器105实现的功能是把数据右移b位,寄存器102的数据经过移位寄存器105,就是把累加的结果除以b就是向右移b位,因为b的取值是2的整数次幂,移位·寄存器105就实现了求平均的功能,把b次的采样值累加求和取平均值作为当前的采样值X(n),目的是能周期性干扰,平滑度高。本发明实施例还提供一种电子设备,本体上包括如前述的一阶数字低通滤波器。以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
权利要求
1.一种一阶数字低通滤波方法,其特征在于,包括 第一移位寄存器对第一采样值向左移第一整数位,第一采样值为根据未经滤波的当前采样值得到的采样值和滤波后的之前一次采样值之一; 第二移位寄存器将第一移位寄存器左移的结果,进行相应位数的移位操作; 第一加法器把经过各第二移位寄存器移位后的数据相加,其中根据第一滤波系数确定第一加法器的个数和第二移位寄存器的个数,以及确定各第二移位寄存器的移位位数;第三移位寄存器将第一加法器的相加结果,右移第一整数位; 第二加法器根据第三移位寄存器右移的结果,得到本次滤波后的采样值。
2.根据权利要求I所述的方法,其特征在于,还包括 第四移位寄存器对第二采样值向左移第二整数位,第二采样值为根据未经滤波的当前采样值得到的采样值和滤波后的之前一次采样值中的另一个; 第五移位寄存器将第四移位寄存器左移的结果,进行相应位数的移位操作; 第三加法器把每个经过第五移位寄存器移位后的数据相加,其中根据第二滤波系数确定第三加法器的个数和第五移位寄存器的个数,以及确定各第五移位寄存器的移位位数,第一滤波系数和第二滤波系数之和为I ; 第六移位寄存器将第三加法器的相加结果,右移第二整数位; 第二加法器根据第三移位寄存器右移的结果,得到本次滤波后的采样值具体为第二加法器将第三移位寄存器右移的结果和第六移位寄存器右移的结果相加,得到本次滤波后的采样值。
3.根据权利要求2所述的方法,其特征在于,还包括 第七移位寄存器对未经滤波的之前b-1次到当前第n次采样值,向左移第三整数位,b的取值是2的整数次幂,n为正整数,且n大于b-1 ; 第四加法器把第七移位寄存器的输出,和第一寄存器中的存储值相加; 第一寄存器存储第一加法器的输出,且第一加法器相加b次后第一寄存器清零; 第八移位寄存器将第一加法器相加b次后的输出值,向右移b位得到第一米样值。
4.根据权利要求I所述的方法,其特征在于,还包括 第九移位寄存器将第二加法器输出右移第三整数位,得到本次滤波后的采样值。
5.根据权利要求I所述的方法,其特征在于,第一采样值为未经滤波的当前采样值。
6.一种一阶数字低通滤波器,其特征在于,包括 第一移位寄存器,其对第一采样值向左移第一整数位,第一采样值为根据未经滤波的当前采样值得到的采样值和滤波后的之前一次采样值之一; 第二移位寄存器,其将第一移位寄存器左移的结果,进行相应位数的移位操作; 第一加法器,其把经过各第二移位寄存器移位后的数据相加,其中根据第一滤波系数确定第一加法器的个数和第二移位寄存器的个数,以及确定各第二移位寄存器的移位位数; 第三移位寄存器,其将第一加法器的相加结果,右移第一整数位; 第二加法器,其根据第三移位寄存器右移的结果,得到本次滤波后的采样值。
7.根据权利要求6所述的滤波器,其特征在于,还包括 第四移位寄存器,其对第二采样值向左移第二整数位,第二采样值为根据未经滤波的当前采样值得到的采样值和滤波后的之前一次采样值中的另一个; 第五移位寄存器,其将第四移位寄存器左移的结果,进行相应位数的移位操作; 第三加法器,其把每个经过第五移位寄存器移位后的数据相加,其中根据第二滤波系数确定第三加法器的个数和第五移位寄存器的个数,以及确定各第五移位寄存器的移位位数,第一滤波系数和第二滤波系数之和为I; 第六移位寄存器,其将第三加法器的相加结果,右移第二整数位; 第二加法器,其将第三移位寄存器右移的结果和第六移位寄存器右移的结果相加,得到本次滤波后的采样值。
8.根据权利要求7所述的滤波器,其特征在于,还包括 第七移位寄存器,其对未经滤波的之前b-1次到当前第n次采样值,向左移第三整数位,b的取值是2的整数次幂,n为正整数,且n大于b-1 ; 第四加法器,其把第七移位寄存器的输出,和第一寄存器中的存储值相加; 第一寄存器,其存储第一加法器的输出,且第一加法器相加b次后清零; 第八移位寄存器,其将第一加法器相加b次后的输出值,向右移b位得到第一米样值。
9.根据权利要求6所述的滤波器,其特征在于,还包括 第九移位寄存器,其将第二加法器输出右移第三整数位,得到本次滤波后的采样值。
10.根据权利要求6所述的滤波器,其特征在于,第一采样值为未经滤波的当前采样值。
11.一种电子设备,其特征在于,本体上包括如权利要求5至10任一权利要求所述的一阶数字低通滤波器。
全文摘要
本发明提供一种一阶数字低通滤波方法、滤波器及电子设备,属于数字信号处理技术领域,该方法包括第一移位寄存器对第一采样值向左移第一整数位,第二移位寄存器将第一移位寄存器左移的结果,进行相应位数的移位操作,第一加法器把经过各第二移位寄存器移位后的数据相加,其中根据第一滤波系数确定第一加法器的个数和第二移位寄存器的个数,以及确定各第二移位寄存器的移位位数,第三移位寄存器将第一加法器的相加结果,右移第一整数位,第二加法器根据第三移位寄存器右移的结果,得到本次滤波后的采样值,由于将乘法运算转换成移位运算,可以减少实现代价。
文档编号H03H17/02GK102710237SQ201210196928
公开日2012年10月3日 申请日期2012年6月15日 优先权日2012年6月15日
发明者王建辉, 郭忠华 申请人:成都启臣微电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1