一种高阶滤波器电路的利记博彩app

文档序号:7539428阅读:295来源:国知局
专利名称:一种高阶滤波器电路的利记博彩app
技术领域
本发明涉及硬件电路设计领域,特别涉及一种高阶滤波器电路。
背景技术
滤波器电路是数字信号处理中的常用电路,根据滤通特性可以分为低通滤波器、高通滤波器、带通滤波器和带阻滤波器等。信号在输入滤波器电路之前被抽样成具备一定采样间隔的序列,滤波器的功能就是把该输入序列通过一定的运算变换成输出序列,具体应用如低通滤波器滤除信号里的高频噪声,高通滤波器滤除信号中的低频分量等。
通常m阶滤波器的系统函数通式可以用如下公式表示H(z)=Y(z)/X(z)=(1±z-1)m/(1±((2k-1)/2k)z-1)m其中k是一个整数,可以根据滤波器的滤通特性及具体技术指标选择±号及不同的k值。该系统函数还可以写成表示滤波器输入输出关系的常系数线性差分方程。
例如一种典型的一阶滤波器的系统函数可以描述如下H(z)=Y(z)/X(z)=(1-z-1)/(1-(511/512)z-1)其中m=1,k=9,并且选择±号中的-号。
将该一阶滤波器的系统函数写成表示输入输出关系的常系数线性差分方程为y(n)=(511/512)y(n-1)+x(n)-x(n-1)在电路中实现时,电路中的数据码率与输入输出序列的数据码率相同,需要使用寄存器对不同序列在该数据码率下的上一个控制节拍对应序列进行缓存,作为在该数据码率下的下一个控制节拍运算开始时的电路初始状态,缓存时间为该数据码率下的一个控制节拍。式中,x(n-1)代表n点输入序列x(n)在上一个控制节拍时的对应序列,y(n-1)代表n点输出序列y(n)在上一个控制节拍时的对应序列。该式的物理意义为,n点序列x(n)输入滤波器,经过运算后变为n点序列y(n)输出。
在实际应用中,往往不仅仅使用一阶滤波器,还需要使用高阶滤波器来完成特定功能。目前构造高阶滤波器电路的方法通常是级联滤波,即串联几个一阶滤波器来实现高阶滤波功能。仍以上述典型的一阶滤波器为例,系统函数通式中取m=1,k=9,并且选择±号中的-号。常见实现电路有如下三种方案,所述控制节拍,为电路中数据码率与输入输出数据码率相同情况下的控制节拍。
①参见图1,图1为现有技术中一阶滤波器电路的第一种实现方式。
在这种实现方式中,一阶滤波器电路包括寄存器101、多路开关MUX102、移位运算单元103、寄存器104、加法器105和控制器106。
电路的初始状态为寄存器101存储输入序列x(n)在上一个控制节拍时的对应序列x(n-1),寄存器104存储输出序列y(n)在上一个控制节拍时的对应序列y(n-1)。
控制器106向多路开关MUX 102发出控制信号,该控制信号控制多路开关MUX 102按三个控制节拍进行运算。实现过程如下第一个控制节拍中,寄存器104将存储的序列y(n-1)送入加法器105和移位运算单元103,y(n-1)经过移位运算单元后变为(-1/512)y(n-1),多路开关MUX 102选通这一路序列作为输入并送入加法器105。加法器105对两路输入序列进行相加运算,结果送入寄存器104缓存,设第一个控制节拍的运算结果为y1(n)=(511/512)y(n-1)。
第二个控制节拍中,寄存器104将第一个控制节拍运算后结果y1(n)送入加法器105,寄存器101将存储的序列x(n-1)送入多路开关MUX 102,多路开关MUX 102选通这一路序列作为输入并送入加法器105。加法器105对两路输入信号进行相减运算,得到结果-x(n-1)+y1(n)并将该结果送入寄存器104缓存,设第二个控制节拍的运算结果为y2(n)=-x(n-1)+y1(n)。
第三个控制节拍中,寄存器104将第二个控制节拍的运算结果y2(n)送入加法器105,多路开关MUX 102选通序列x(n)作为输入并送入加法器105。加法器105对两路输入序列进行相加运算,得到结果x(n)+y2(n)并将该结果输出,得到最终输出结果为y(n)=(511/512)y(n-1)+x(n)-x(n-1)可见,本方案描述的一阶滤波器电路可以用三个控制节拍实现所举实例中典型一阶滤波器的功能。
②参见图2,图2为现有技术中一阶滤波器电路的第二种实现方式。
在这种实现方式中,一阶滤波器电路包括加法器201、寄存器202、加法器203和移位运算单元204。
电路的初始状态为寄存器202存储输出序列y(n)在上一个控制节拍时的对应序列y(n-1)及输出序列y(n)经移位运算后的序列在上一个控制节拍时的对应序列(-1/512)y(n-1)相加,再与输入序列x(n)在上一个控制节拍时的对应序列x(n-1)相减的结果,即寄存器中存储的序列为-x(n-1)+(511/512)y(n-1)。
寄存器202将存储的-x(n-1)+(511/512)y(n-1)送入加法器201。加法器203接收输出序列y(n)和移位运算单元204送入的经过移位运算的输出序列(-1/512)y(n)进行相加运算,再与输入序列x(n)进行相减运算后将结果送入寄存器202缓存。加法器201将接收的寄存器202送入的-x(n-1)+(511/512)y(n-1)和输入信号序列x(n)进行相加运算,相加结果作为最终输出结果,可以表示成如下常系数差分方程y(n)=(511/512)y(n-1)+x(n)-x(n-1)可见,本方案描述的一阶滤波器电路可以用一个控制节拍实现所举实例中典型一阶滤波器的功能。
③参见图3,图3为现有技术中一阶滤波器电路的第三种实现方式。
在这种实现方式中,一阶滤波器电路包括寄存器301、移位运算单元302、寄存器303及加法器304。
该电路的初始状态为寄存器301存储输入序列x(n)在上一个控制节拍时的对应序列x(n-1),寄存器303存储输出序列y(n)在上一个控制节拍时的对应序列y(n-1)。
寄存器301将存储的x(n-1)送入加法器304,同时接收输入序列x(n)缓存。寄存器303将存储的y(n-1)送入移位运算单元302。移位运算单元302将送入的y(n-1)变换为(-1/512)y(n-1),再送入加法器304。加法器304对输入序列x(n)、移位运算单元302送入的序列及寄存器303送入的序列进行相加运算,再与寄存器301送入的序列进行相减运算,得到结果y(n)=x(n)-x(n-1)+y(n-1)+(-1/512)y(n-1)=x(n)-x(n-1)+(511/512)y(n-1)可见,本方案描述的一阶滤波器电路可以用一个控制节拍实现所举实例中典型一阶滤波器的功能。
目前,要实现高阶滤波器电路,需要串联一阶滤波器电路。例如要实现3阶滤波器电路,就要将3个一阶滤波器的电路串联起来,仍以上述举例的典型一阶滤波器进行串联,此时该3阶滤波器的系统函数为H(z)=Y(z)/X(z)=(1-z-1)3/(1-(511/512)z-1)3可以表示成如下常系数差分方程p(n)=(511/512)p(n-1)+x(n)-x(n-1)q(n)=(511/512)q(n-1)+p(n)-p(n-1)y(n)=(511/512)y(n-1)+q(n)-q(n-1)此时,x(n)为输入序列,y(n)为输出序列。
如果采用上述方案一所述一阶滤波器电路进行串联,一共需要三个二输入加法器、三个移位运算单元、三个三路输入的多路开关MUX及相应控制器和六个寄存器。如果采用上述方案二所述一阶滤波器电路进行串联,一共需要三个二输入加法器、三个三输入加法器、三个移位运算单元和三个寄存器。如果采用上述方案三所述一阶滤波器电路进行串联,一共需要三个四输入加法器、三个移位运算单元和六个寄存器。对比以上三种串联方案,可以看出方案一采用的加法器输入路数最少,因此从使用加法器角度来看耗费面积较小,但是三个三路输入的多路开关MUX及相应控制单元比较耗费面积。方案二使用的寄存器最少,但使用的加法器最多,而且必须在每一个一阶滤波器电路之间增加寄存器用于缓存才能实现串联,这样一来,加入用于串联的寄存器后,该方案使用寄存器少的优势得不到体现,仍然耗费面积较大。方案三使用的加法器输入路数最多且需要三个,因此从使用加法器角度来看耗费面积较大,在时序足够的情况下存在面积冗余。另外,在使用以上三种一阶滤波器电路进行串联时,考虑到加法器进行运算时会增加数据位宽,在实际应用中往往需要再加入用于位宽扩展的单元来方便加法器进行运算,使用加法器输出结果作为反馈序列时还需要加入移位截断单元以实现无增益反馈,这样一来耗费的电路面积将更大。
综上所述,选择上述三种现有技术中一阶滤波器电路方案进行串联实现高阶滤波器电路,均需要耗费较大的面积。

发明内容
有鉴于此,本发明的主要目的在于提供一种高阶滤波器电路,该电路实现高阶滤波功能时能减小耗费的面积。
为了实现上述发明目的,本发明提供一种高阶滤波电路,在完成一次高阶滤波的操作中,电路设定的控制节拍个数与滤波器的阶数相等;该电路包括多路选择单元(401)、第一位宽扩展单元(402)、第一缓存单元(403)、加法器(404)、移位运算单元(405)、第二缓存单元(406)、移位截断单元(407)、输出单元(408)和第二位宽扩展单元(410);所述第一缓存单元(403),与多路选择单元(401)及第二位宽扩展单元(410)连接,按照一次高阶滤波操作中的设定的控制节拍,依次接收多路选择单元(401)输入的序列,并将存储的上一次高阶滤波操作中所有设定的控制节拍的输入序列,依次送入第二位宽扩展单元(410);所述第二缓存单元(406),与加法器(404)、移位运算单元(405)及移位截断单元(407)连接,按照一次高阶滤波操作中的设定的控制节拍,依次接收加法器(404)送入的序列缓存,并将存储的上一次高阶滤波操作所有设定的控制节拍中加法器(404)输出的序列,依次送入移位运算单元(405)和加法器(404),同时将存储的上一次高阶滤波操作最后一个设定的控制节拍中加法器(404)输出的序列,送入移位截断单元(407);所述多路选择单元(401),在一次高阶滤波操作中的设定的第一个控制节拍,选通系统输入序列送入第一位宽扩展单元(402)和第一缓存单元(403),在一次高阶滤波操作中的设定的其他控制节拍,选通移位截断单元(407)送入的序列送入第一位宽扩展单元(402)和第一缓存单元(403);所述第一位宽扩展单元(402),用于将多路选择单元(401)送入的序列扩展位宽,并将位宽扩展后的序列送入加法器(404);所述第二位宽扩展单元(410),用于将第一缓存单元(403)送入的序列扩展位宽,并将位宽扩展后的序列送入加法器(404);所述移位运算单元(405),接收第二缓存单元(406)送入的序列,进行移位运算后送入加法器(404);所述加法器(404),接收第一位宽扩展单元(402)、第二位宽扩展单元(410)、移位运算单元(405)和第二缓存单元(406)送入的序列进行运算,将运算结果送入第二缓存单元(406)及输出单元(408);所述移位截断单元(407),接收第二缓存单元(406)送入的序列,移位截断成与系统输入序列位宽一致的序列后送入多路选择单元(401);所述输出单元(408),在一次高阶滤波操作中的最后一个设定的控制节拍,对加法器(404)送入的序列进行选通输出。
较佳地,所述第一缓存单元(403)为寄存器组,包括与滤波器阶数相等的寄存器,这些寄存器顺次连接,第一个寄存器与多路选择单元(401)连接,最后一个寄存器与第二位宽扩展单元(410)连接,在每一个设定的控制节拍,第一个寄存器将存储的上一个设定的控制节拍序列送入下一个寄存器,并接收多路选择单元(401)送入的序列缓存,最后一个寄存器将存储的上一个设定的控制节拍序列送入第二位宽扩展单元(410),并接收上一个寄存器送入的序列缓存,寄存器组中的其它寄存器,在每一个设定的控制节拍将存储的上一个设定的控制节拍序列送入下一个寄存器,并接收上一个寄存器送入的序列缓存。
较佳地,所述第二缓存单元(406)为寄存器组,包括与滤波器阶数相等的寄存器,这些寄存器顺次连接,第一个寄存器与加法器(404)和移位截断单元(407)连接,最后一个寄存器与移位运算单元(405)和加法器(404)连接,在每一个设定的控制节拍,第一个寄存器将存储的上一个设定的控制节拍序列送入下一个寄存器和移位截断单元(407),并接收加法器(404)送入的序列缓存,最后一个寄存器将存储的上一个设定的控制节拍序列送入加法器(404)和移位运算单元(405),并接收上一个寄存器送入的序列缓存,寄存器组中的其它寄存器,在每一个设定的控制节拍将存储的上一个设定的控制节拍序列送入下一个寄存器,并接收上一个寄存器送入的序列缓存。
较佳地,该电路进一步包括控制器(409),与多路选择单元(401)和输出单元(408)连接,提供设定的控制节拍。
较佳地,上述控制器(409)为计数器,计数个数与高阶滤波器的阶数相等。
较佳地,所述第一位宽扩展单元(402)和第二位宽扩展单元(410)将输入的序列扩展为相同的位宽,所述第一缓存单元(403)中序列的位宽与系统输入序列位宽相同,所述第二缓存单元(406)中序列的位宽与第一位宽扩展单元(402)或第二位宽扩展单元(410)对输入序列进行位宽扩展之后的位宽相同。
较佳地,所述输出单元(408)为多路选择单元。
较佳地,该高阶滤波器电路中的数据码率为输入输出数据码率的整数倍,该整数倍数值与所述滤波器的阶数相等。
由本发明的技术方案可以看出本发明提供的高阶滤波器电路具有以下优点第一、本发明提供的高阶滤波器电路使用了两个多路选择单元、两个位宽扩展单元、一个四输入加法器、一个移位截断单元、一个移位运算单元和两个缓存单元,可以进一步包括一个控制器提供控制节拍,其中缓存单元可以使用寄存器组实现。与现有技术中的串联一阶滤波器实现高阶滤波功能的电路相比,将串行改为复用,节省了冗余的加法器,使高阶滤波器电路的面积最小。
第二、在控制节拍方面,本发明提供的高阶滤波器电路中的数据码率为输入输出序列数据速率的整数倍,该整数值与滤波器的阶数相等。在此数据码率下一次高阶滤波操作中的一个控制节拍时间,比在输入输出数据码率下一次高阶滤波操作中的一个控制节拍时间短,也可以说输入输出数据码率下的一个控制节拍包括本发明电路数据码率下的多个控制节拍,具体数值与滤波器的阶数相等。因此,本发明在节省电路面积的情况下,没有耗费更多的控制节拍。


图1为现有技术中一阶滤波器电路的第一种实现方案示意图;图2为现有技术中一阶滤波器电路的第二种实现方案示意图;图3为现有技术中一阶滤波器电路的第三种实现方案示意图;图4为本发明高阶滤波器电路较佳实施方式结构示意图;图5为本发明较佳实施例3阶滤波器电路结构示意图。
具体实施例方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步详细说明。
本发明的高阶滤波器电路,电路的数据码率为输入、输出数据码率的整数倍,该整数倍的具体数值与高阶滤波器的阶数相同。电路按照控制节拍实现滤波功能,控制节拍的具体个数与高阶滤波器的阶数相同,因此在输入输出数据码率下一次高阶滤波操作的一个控制节拍时间,相当于本发明电路数据码率下一次高阶滤波操作的多个控制节拍的时间。例如,如果高阶滤波器的阶数为3阶,此时电路的数据码率为输入输出数据码率的3倍,电路需要设定3个控制节拍来实现滤波功能,这3个设定的控制节拍的时间相当于在输入输出数据码率下一个控制节拍的时间。在以下描述中,所述的控制节拍均指在本发明电路数据码率情况下设定的控制节拍。
参见图4,图4为本发明高阶滤波器电路的较佳实施方式结构示意图。该高阶滤波器电路包括多路选择单元401、第一位宽扩展单元402、第一缓存单元403、加法器404、移位运算单元405、第二缓存单元406、移位截断单元407、输出单元408、控制器409和第二位宽扩展单元410。高阶滤波器的系统函数通式中,可以根据滤波器的具体技术指标确定k值及±号,阶数m根据需要可以确定为不同的整数。
控制器409分别与多路选择单元401及输出单元408连接,用于为每次高阶滤波操作提供控制信号,使得多路选择单元401及输出单元408按照控制信号所提供的控制节拍进行多路选择,其中控制节拍的具体个数设定为与滤波器的阶数m相等。
第一缓存单元403与多路选择单元401及第二位宽扩展单元410连接,按照一次高阶滤波操作中的设定的控制节拍,依次接收多路选择单元401输入的序列,并将存储的上一次高阶滤波操作中所有设定的控制节拍的输入序列,依次送入第二位宽扩展单元410。
第二缓存单元406,与加法器404、移位运算单元405及移位截断单元407连接,按照一次高阶滤波操作中的设定的控制节拍,依次接收加法器404送入的序列缓存,并将存储的上一次高阶滤波操作所有设定的控制节拍中加法器404输出的序列,依次送入移位运算单元405和加法器404,同时将存储的上一次高阶滤波操作最后一个设定的控制节拍中加法器404输出的序列,送入移位截断单元407。
以上描述的第一缓存单元403和第二缓存单元404,具备对序列的缓存,并按照设定的控制节拍将缓存结果输出的功能。
多路选择单元401与控制器409、第一位宽扩展单元402、第一缓存单元403及移位截断单元407连接,包括两路输入,一路为系统输入序列,一路为移位截断单元407对第二缓存单元406的输出序列进行移位截断后所得序列,多路选择单元401接收控制器409提供的控制节拍,在一次高阶滤波操作的第一个设定的控制节拍选通系统输入序列,在一次高阶滤波操作设定的其他控制节拍,选通移位截断单元407对第二缓存单元406的输出序列进行移位截断后所得序列,并将选通的输入序列送入第一位宽扩展单元402和第一缓存单元403。
输出单元408与控制器409及加法器404连接,接收加法器404的运算结果序列,按照控制器409提供的控制节拍,在一次高阶滤波操作的最后一个设定的控制节拍将加法器404送入的序列输出。
第一位宽扩展单元402与多路选择单元401及加法器404连接,接收多路选择单元401送入的输入序列,将此序列的位宽进行扩展从而便于加法器404进行运算,将位宽扩展后的序列送入加法器404。
第二位宽扩展单元410与第一缓存单元403及加法器404连接,接收第一缓存单元403输出的序列,将此序列的位宽进行扩展从而便于加法器404进行运算,将位宽扩展后的序列送入加法器404。第二位宽扩展单元410和位宽扩展单元402将送入的序列扩展为相同的位宽。
移位运算单元405与加法器404及第二缓存单元406连接,接收第二缓存单元406送入的序列,移位运算后送入加法器404,移位运算的具体数值由滤波器系统函数通式中(2k-1)/2k的值确定,其中k值根据滤波器的具体技术指标确定。
加法器404与第一位宽扩展单元402、第二位宽扩展单元410、移位运算单元405、第二缓存单元406及输出单元408连接,将第一位宽扩展单元402送入的序列、移位运算单元405送入的序列及第二缓存单元406送入的序列进行相加运算,再与位第二宽扩展单元410送入的序列进行相减运算,结果送入第二缓存单元406缓存,同时送入输出单元408。
移位截断单元407与第二缓存单元406及多路选择单元401连接,接收第二缓存单元406送入的序列,将该序列移位截断成与系统输入序列相同位宽的序列后,反馈给多路选择单元401作为一路输入。移位截断单元407执行的具体操作是将送入序列右移,便于实现无增益反馈,右移的比特数值为滤波器系统函数通式中的k值再加一。
本实施例中,高阶滤波器电路使用了控制器409控制多路选择单元401和输出单元408按照设定的控制节拍对送入的序列进行选通,也可以不采用控制器而使用其它方式控制这两个单元对送入的序列进行选通。
下面以3阶滤波器电路为较佳实施例详细描述上述较佳实施方式所示电路结构及具体工作方式。高阶滤波器的系统函数通式中,取m=3,k=9,选择±中的-号。移位运算单元移位运算的具体数值为-1/512。
图5为本发明较佳实施例3阶滤波器电路结构示意图。该3阶滤波器电路包括第一多路开关MUX 501、第二多路开关MUX 506、计数器513、第一位宽扩展单元502、加法器503、移位运算单元504、移位截断单元505、第一寄存器组514、第二寄存器组515和第二位宽扩展单元516。在本实例中,图4所示较佳实施方式中,出于对电路面积的考虑,可以选用面积较小的寄存器实现缓存单元,即第一缓存单元403可由第一寄存器组514实现,第二缓存单元406可由第二寄存器组515实现。另外,多路选择单元401可由第一多路开关MUX 501实现,输出单元408可由第二多路开关MUX 506实现,控制器409可由计数器513实现。图5所示第一寄存器组514包括寄存器510、寄存器511、寄存器512,第二寄存器组515包括寄存器507、寄存器508和寄存器509。由于滤波器的阶数为3阶,电路中的数据码率为输入、输出数据码率的3倍,计数器将设定3个控制节拍,每计一个数为一个控制节拍。
计数器513在系统输入序列有效时开始计数,计到3停止,分别与第一多路开关MUX 501及第二多路开关MUX 506连接,每计一个数提供一个控制节拍,即第一多路开关MUX 501及第二多路开关MUX 506按照3个控制节拍进行序列选通。
第一多路开关MUX 501与第一位宽扩展单元502、寄存器512、计数器513及移位截断单元505连接,包括两路输入,一路为系统输入信号序列,一路为移位截断单元505对寄存器509输出序列进行移位截断后所得的序列,第一多路开关MUX 501接受计数器513的节拍控制,在第一个设定的控制节拍将系统输入序列送入位宽扩展单元502和寄存器512,在第二个设定的控制节拍和第三个设定的控制节拍将移位截断单元505对寄存器509输出序列进行移位截断后所得序列送入位宽扩展单元502和寄存器512。第二多路开关MUX 506与加法器503及计数器513连接,包括一路输入,即加法器503送入的序列,第二多路开关MUX 506接受计数器513的控制,在第一个设定的控制节拍和第二个设定的控制节拍关闭,在第三个设定的控制节拍将加法器503送入的序列作为滤波结果输出。
第一位宽扩展单元502与第一多路开关MUX 501及加法器503连接,接收第一多路开关MUX 501送入的序列,扩展序列位宽从而方便加法器503进行运算,再送入加法器503。
第二位宽扩展单元516与寄存器510及加法器503连接,接收寄存器510送入的序列,扩展序列位宽从而方便加法器503进行运算,再送入加法器503。本实施例中,第一位宽扩展单元502和第二位宽扩展单元516将送入序列扩展成相同位宽。
寄存器512、寄存器511及寄存器510顺次连接,在每一个设定的控制节拍,寄存器512将存储的上一个设定的控制节拍序列送入寄存器511,并接收多路开关MUX 501送入的序列缓存。寄存器511将存储的上一个设定的控制节拍序列送入寄存器510,并接收寄存器512送入的序列缓存。寄存器510将存储的上一个设定的控制节拍序列送入第二位宽扩展单元516,并接收寄存器511送入的序列缓存。这三个寄存器的位宽与系统输入序列的位宽相同。
寄存器509、寄存器508及寄存器507顺次连接,在每一个设定的控制节拍,寄存器509将存储的上一个设定的控制节拍序列送入寄存器508和移位截断单元505,并接收加法器503送入的运算结果缓存。寄存器508将存储的上一个设定的控制节拍序列送入寄存器507,并接收寄存器509送入的序列缓存。寄存器507将存储的上一个设定的控制节拍序列送入加法器503及移位运算单元504,并接收寄存器508送入的结果缓存。这三个寄存器的位宽与第一位宽扩展单元502对送入序列进行位宽扩展后的位宽相同。
加法器503与第一位宽扩展单元502、第二位宽扩展单元516、寄存器507、寄存器509、移位运算单元504及第二多路开关MUX 506连接,接收第一位宽扩展单元502送入的经过扩展位宽的序列、寄存器507送入的序列和移位运算单元504送入的序列进行相加运算,再与第二位宽扩展单元516送入的序列进行相减运算,结果送入寄存器509缓存,同时送入第二多路开关MUX 506。
移位运算单元504与加法器503及寄存器507连接,接收寄存器507送入的序列并进行移位运算,移位运算的具体数值为-1/512。
移位截断单元505与第一多路开关MUX 501及寄存器509连接,接收寄存器509送入的序列,将序列右移进行截断,使得运算所得结果与系统输入序列位宽相同,保证精度。本例中移位截断的具体数值,按照所取k值再加一的方法确定为10比特。
以上所述3阶滤波器电路中的第一寄存器组514和第二寄存器组515,实现了图4所示较佳实施方式中第一缓存单元403和第二缓存单元406的功能,也可以不用寄存器组的方式,而用其他能够完成相同功能且占用电路面积小的方式来实现。第二多路开关MUX 506也可以采用其它输出控制模块替代,此替代为本领域技术人员所公知的方案,此处不再列举。
本实施例3阶滤波器电路是这样工作的设系统输入序列为x1(n),经过一阶运算后所得结果为y1(n),该结果经过移位截断单元505右移10比特之后形成二阶运算的输入信号x2(n),经过二阶运算后所得结果为y2(n),该结果经过移位截断单元505右移10比特之后形成三阶运算的输入信号x3(n),经过三阶运算之后所得的最终结果为y3(n)。上述三阶运算用公式表示为一阶运算后所得结果y1(n)=(511/512)y1(n-1)+x1(n)-x1(n-1);二阶运算后所得结果y2(n)=(511/512)y2(n-1)+x2(n)-x2(n-1);三阶运算后所得结果y3(n)=(511/512)y3(n-1)+x3(n)-x3(n-1)。
其中,x1(n-1)、x2(n-1)、x3(n-1)、y1(n-1)、y2(n-1)和y3(n-1)分别表示x1(n)、x2(n)、x3(n)、y1(n)、y2(n)、y3(n)上一个设定的控制节拍对应的序列。x2(n)由y1(n)右移10比特得到,x3(n)由y2(n)右移10比特得到。
电路的初始状态为寄存器512存储x3(n-1),寄存器511存储x2(n-1),寄存器510存储x1(n-1),寄存器509存储y3(n-1),寄存器508存储y2(n-1),寄存器507存储y1(n-1)。
当系统输入序列x1(n)有效时,计数器513开始计数1,电路进入第一个设定的控制节拍,第一多路开关MUX 501选通系统输入序列x1(n),并将此序列送入第一位宽扩展单元502扩展位宽,同时送入寄存器512缓存。第一位宽扩展单元502将扩展位宽后的序列x1(n)送入加法器503。寄存器512将初始状态存储的序列x3(n-1)送入寄存器511缓存,同时接收第一多路开关MUX 501送入的序列x1(n)缓存。寄存器511将初始状态存储的序列x2(n-1)送入寄存器510,同时接收寄存器512送入的序列x3(n-1)缓存。寄存器510将初始状态存储的序列x1(n-1)送入第二位宽扩展单元516,同时接收寄存器511送入的序列x2(n-1)缓存。第二位宽扩展单元516对序列x1(n-1)扩展位宽后送入加法器503。在第一个设定的控制节拍中,同时进行的还有,寄存器509将初始状态存储的序列y3(n-1)送入寄存器508,并接收加法器503的运算结果缓存。寄存器508将初始状态存储的序列y2(n-1)送入寄存器507,并接收寄存器509送入的序列y3(n-1)缓存。寄存器507将初始状态存储结果y1(n-1)分别送入加法器503和移位运算单元504,并接收寄存器508送入的序列y2(n-1)缓存。移位运算单元504将序列y1(n-1)的移位运算结果(-1/512)y1(n-1)送入加法器503。加法器503接收移位运算单元504送入的序列(-1/512)y(n-1)、寄存器507送入的序列y1(n-1)及第一位宽扩展单元502送入的系统输入序列x1(n),进行相加运算,再与第二位宽扩展单元516送入的序列x1(n-1)进行相减运算,结果送入寄存器509及第二多路开关MUX506。加法器503进行的运算可以用下式表示y1(n)=x1(n)-x1(n-1)+(-/512)y1(n-1)+y1(n-1)=x1(n)-x1(n-1)+(511/512)y1(n-1)可以看出,加法器503在第一个设定的控制节拍的运算结果为一阶运算后的结果y1(n)。加法器503将此结果送入寄存器509缓存。在第一个设定的控制节拍中,第二多路开关MUX 506关闭,因此运算结果y1(n)不输出。
经过第一个设定的控制节拍,寄存器512存储x1(n),寄存器511存储x3(n-1),寄存器510存储x2(n-1),寄存器509存储y1(n),寄存器508存储y3(n-1),寄存器507存储y2(n-1)。
第一个设定的控制节拍结束后,计数器计2,开始第二个设定的控制节拍。寄存器509将第一个设定的控制节拍的运算结果送入移位截断单元505,右移10比特后送入第一多路开关MUX 501,第一多路开关MUX 501选通该反馈输入序列x2(n),并将此序列送入第一位宽扩展单元502扩展位宽,同时送入寄存器512缓存。第一位宽扩展单元502将扩展位宽后的序列x2(n)送入加法器503。寄存器512将第一个设定的控制节拍后存储的序列x1(n)送入寄存器511,同时接收第一多路开关MUX 501送入的序列x2(n)缓存。寄存器511将第一个设定的控制节拍后存储的序列x3(n-1)送入寄存器510,同时接收寄存器512送入的序列x1(n)缓存。寄存器510将第一个设定的控制节拍后存储的序列x2(n-1)送入第二位宽扩展单元516,同时接收寄存器511送入的序列x3(n)缓存。第二位宽扩展单元516对x2(n-1)扩展位宽后送入加法器503。在第二个设定的控制节拍中,同时进行的还有,寄存器509将第一个设定的控制节拍后存储的序列y1(n)送入寄存器508,并接收加法器503的运算结果缓存。寄存器508将第一个设定的控制节拍后存储的序列y3(n-1)送入寄存器507,并接收寄存器509送入的序列y1(n)缓存。寄存器507将第一个设定的控制节拍后存储的序列y2(n-1)分别送入加法器503和移位运算单元504,并接收寄存器508送入的序列y3(n-1)缓存。移位运算单元504将序列y2(n-1)的移位运算结果(-512)y22(n-1)送入加法器503。
加法器503接收移位运算单元504送入的序列(-/512)y2(n-1)、寄存器507送入的序列y2(n-1)及第一位宽扩展单元502送入的序列x2(n)进行相加运算,再与第二位宽扩展单元516送入的序列x2(n-1)进行相减运算,将结果送入寄存器509缓存,同时送入第二多路开关MUX 506。加法器503进行的运算可以用下式表示y2(n)=x2(n)-x2(n-1)+(-/512)y2(n-1)+y2(n-1)=x2(n)-x2(n-1)+(511/512)y2(n-1)可以看出,加法器503在第二个设定的控制节拍的运算结果为二阶运算后的结果y2(n)。在第二个设定的控制节拍中,第二多路开关MUX 506关闭,因此运算结果y2(n)不输出。
经过第二个设定的控制节拍,寄存器512存储x2(n),寄存器511存储x1(n),寄存器510存储x3(n-1),寄存器509存储y2(n),寄存器508存储y1(n),寄存器507存储y3(n-1)。
第二个设定的控制节拍结束后,计数器计3,开始第三个设定的控制节拍。寄存器509将第二个设定的控制节拍的运算结果送入移位截断单元505,右移10比特后送入第一多路开关MUX 501,第一多路开关MUX 501选通该反馈输入序列x3(n),并将此序列送入第一位宽扩展单元502扩展位宽,同时送入寄存器512缓存。第一位宽扩展单元502将扩展位宽后的序列x3(n)送入加法器503。寄存器512将第二个设定的控制节拍后存储的序列x2(n)送入寄存器511,同时接收第一多路开关MUX 501送入的序列x3(n)缓存。寄存器511将第二个设定的控制节拍后存储的序列x1(n)送入寄存器510,同时接收寄存器512送入的序列x2(n)缓存。寄存器510将第二个设定的控制节拍后存储的序列x3(n-1)送入第二位宽扩展单元516,同时接收寄存器511送入的序列x1(n)缓存。第二位宽扩展单元516对x3(n-1)扩展位宽后送入加法器503。在第三个设定的控制节拍中,同时进行的还有,寄存器509将第二个设定的控制节拍后存储的序列y2(n)送入寄存器508,并接收加法器503的运算结果缓存。寄存器508将第二个设定的控制节拍后存储的序列y1(n)送入寄存器507,并接收寄存器509送入的序列y2(n)缓存。寄存器507将第二个设定的控制节拍后存储的序列y3(n-1)分别送入加法器503和移位运算单元504,并接收寄存器508送入的序列y1(n)缓存。移位运算单元504将序列y3(n-1)的移位运算结果(-/512)y3(n-1)送入加法器503。加法器503接收移位运算单元504送入的序列(-/512)y3(n-1)、寄存器507送入的序列y3(n-1)及第一位宽扩展单元502送入的序列x3(n)进行相加运算,再与第二位宽扩展单元516送入的序列x3(n-1)进行相减运算,将结果送入寄存器509缓存,同时送入第二多路开关MUX 506。加法器503进行的运算可以用下式表示y3(n)=x3(n)-x3(n-1)+(-/512)y3(n-1)+y3(n-1)=x3(n)-x3(n-1)+(511/512)y3(n-1)可以看出,加法器503在第三个设定的控制节拍的运算结果为三阶运算后的结果y3(n)。在第三个设定的控制节拍中,第二多路开关MUX 506选通,因此送入第二多路开关MUX 506的序列y3(n)将作为3阶数字滤波结果最终输出。
经过第三个设定的控制节拍,寄存器512存储x3(n),寄存器511存储x2(n),寄存器510存储x1(n),寄存器509存储y3(n),寄存器508存储y2(n),寄存器507存储y1(n)。
可见经过3个设定的控制节拍后,本实施例电路得到了3阶滤波的结果。
本发明的高阶滤波器电路除了上述3阶滤波器的较佳实施例外,滤波器的阶数还可以是4阶、5阶等等,可以根据需要确定不同的阶数。取不同的阶数时,图5所示电路中的第一寄存器组514和第二寄存器组515中包含的寄存器个数不同,电路的数据码率也不同。例如,如果为5阶的数字滤波器,第一寄存器组514和第二寄存器组515中各包含5个寄存器。除了寄存器个数不同之外,5阶滤波器电路的实现方案中电路的数据码率将为输入、输出数据码率的5倍,计数器在系统输入有效时开始计数,计到5停止,即设定5个控制节拍。除此之外,每一个设定的控制节拍中,序列在电路中的流程与上述3阶滤波器电路相同,这里不再重复。
本发明高阶滤波器电路只需k个系统时钟即完成全部运算,k的取值与系统通式中k的取值相同。由于系统时钟一般远大于数据码率,所以在大多数应用电路都能满足本方案对控制节拍的要求。
综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种高阶滤波器电路,其特征在于,在完成一次高阶滤波的操作中,电路设定的控制节拍个数与滤波器的阶数相等;该电路包括多路选择单元(401)、第一位宽扩展单元(402)、第一缓存单元(403)、加法器(404)、移位运算单元(405)、第二缓存单元(406)、移位截断单元(407)、输出单元(408)和第二位宽扩展单元(410);所述第一缓存单元(403),与多路选择单元(401)及第二位宽扩展单元(410)连接,按照一次高阶滤波操作中的设定的控制节拍,依次接收多路选择单元(401)输入的序列,并将存储的上一次高阶滤波操作中所有设定的控制节拍的输入序列,依次送入第二位宽扩展单元(410);所述第二缓存单元(406),与加法器(404)、移位运算单元(405)及移位截断单元(407)连接,按照一次高阶滤波操作中的设定的控制节拍,依次接收加法器(404)送入的序列缓存,并将存储的上一次高阶滤波操作所有设定的控制节拍中加法器(404)输出的序列,依次送入移位运算单元(405)和加法器(404),同时将存储的上一次高阶滤波操作最后一个设定的控制节拍中加法器(404)输出的序列,送入移位截断单元(407);所述多路选择单元(401),在一次高阶滤波操作中的设定的第一个控制节拍,选通系统输入序列送入第一位宽扩展单元(402)和第一缓存单元(403),在一次高阶滤波操作中的设定的其他控制节拍,选通移位截断单元(407)送入的序列送入第一位宽扩展单元(402)和第一缓存单元(403);所述第一位宽扩展单元(402),用于将多路选择单元(401)送入的序列扩展位宽,并将位宽扩展后的序列送入加法器(404);所述第二位宽扩展单元(410),用于将第一缓存单元(403)送入的序列扩展位宽,并将位宽扩展后的序列送入加法器(404);所述移位运算单元(405),接收第二缓存单元(406)送入的序列,进行移位运算后送入加法器(404);所述加法器(404),接收第一位宽扩展单元(402)、第二位宽扩展单元(410)、移位运算单元(405)和第二缓存单元(406)送入的序列进行运算,将运算结果送入第二缓存单元(406)及输出单元(408);所述移位截断单元(407),接收第二缓存单元(406)送入的序列,移位截断成与系统输入序列位宽一致的序列后送入多路选择单元(401);所述输出单元(408),在一次高阶滤波操作中的最后一个设定的控制节拍,对加法器(404)送入的序列进行选通输出。
2.如权利要求1所述的高阶滤波电路,其特征在于,所述第一缓存单元(403)为寄存器组,包括与滤波器阶数相等的寄存器,这些寄存器顺次连接,第一个寄存器与多路选择单元(401)连接,最后一个寄存器与第二位宽扩展单元(410)连接,在每一个设定的控制节拍,第一个寄存器将存储的上一个设定的控制节拍序列送入下一个寄存器,并接收多路选择单元(401)送入的序列缓存,最后一个寄存器将存储的上一个设定的控制节拍序列送入第二位宽扩展单元(410),并接收上一个寄存器送入的序列缓存,寄存器组中的其它寄存器,在每一个设定的控制节拍将存储的上一个设定的控制节拍序列送入下一个寄存器,并接收上一个寄存器送入的序列缓存。
3.如权利要求1所述的高阶滤波器电路,其特征在于,所述第二缓存单元(406)为寄存器组,包括与滤波器阶数相等的寄存器,这些寄存器顺次连接,第一个寄存器与加法器(404)和移位截断单元(407)连接,最后一个寄存器与移位运算单元(405)和加法器(404)连接,在每一个设定的控制节拍,第一个寄存器将存储的上一个设定的控制节拍序列送入下一个寄存器和移位截断单元(407),并接收加法器(404)送入的序列缓存,最后一个寄存器将存储的上一个设定的控制节拍序列送入加法器(404)和移位运算单元(405),并接收上一个寄存器送入的序列缓存,寄存器组中的其它寄存器,在每一个设定的控制节拍将存储的上一个设定的控制节拍序列送入下一个寄存器,并接收上一个寄存器送入的序列缓存。
4.如权利要求1所述的高阶滤波器电路,其特征在于,该电路进一步包括控制器(409),与多路选择单元(401)和输出单元(408)连接,提供设定的控制节拍。
5.如权利要求4所述的高阶滤波器电路,其特征在于,所述控制器(409)为计数器,计数个数与高阶滤波器的阶数相等。
6.如权利要求1所述的高阶滤波电路,其特征在于,所述第一位宽扩展单元(402)和第二位宽扩展单元(410)将输入的序列扩展为相同的位宽,所述第一缓存单元(403)中序列的位宽与系统输入序列位宽相同,所述第二缓存单元(406)中序列的位宽与第一位宽扩展单元(402)或第二位宽扩展单元(410)对输入序列进行位宽扩展之后的位宽相同。
7.如权利要求1或4所述的高阶滤波电路,其特征在于,所述输出单元(408)为多路选择单元。
8.如权利要求1所述的高阶滤波器电路,其特征在于,该高阶滤波器电路中的数据码率为输入输出数据码率的整数倍,该整数倍数值与所述滤波器的阶数相等。
全文摘要
本发明公开了一种高阶滤波器电路,包括多路选择单元(401)、第一位宽扩展单元(402)、第一缓存单元(403)、加法器(404)、移位运算单元(405)、第二缓存单元(406)、移位截断单元(407)、输出单元(408)和第二位宽扩展单元(410)。电路的数据码率为输入输出数据码率的整数倍,该整数值与滤波器阶数相等。在输入输出数据码率下每输入一次序列,电路可以在本发明电路数据码率下的设定控制节拍中完成高阶滤波功能。本发明实现高阶滤波功能时,与现有技术相比具有电路面积最小的优点,并且不会耗费控制节拍。
文档编号H03H17/02GK1949666SQ20061014487
公开日2007年4月18日 申请日期2006年11月23日 优先权日2006年11月23日
发明者范志军 申请人:北京中星微电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1