CN101840322B - 滤波器运算单元复用的方法和滤波器的运算系统 - Google Patents
滤波器运算单元复用的方法和滤波器的运算系统 Download PDFInfo
- Publication number
- CN101840322B CN101840322B CN201010033835.9A CN201010033835A CN101840322B CN 101840322 B CN101840322 B CN 101840322B CN 201010033835 A CN201010033835 A CN 201010033835A CN 101840322 B CN101840322 B CN 101840322B
- Authority
- CN
- China
- Prior art keywords
- addend
- result
- storage unit
- totalizer
- addition result
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000004364 calculation method Methods 0.000 claims abstract description 66
- 239000000654 additive Substances 0.000 claims abstract description 33
- 230000000996 additive effect Effects 0.000 claims abstract description 33
- 238000009825 accumulation Methods 0.000 claims abstract description 32
- 230000008569 process Effects 0.000 claims description 14
- 230000001186 cumulative effect Effects 0.000 claims description 10
- 238000005070 sampling Methods 0.000 claims description 6
- 238000007792 addition Methods 0.000 description 53
- 238000006073 displacement reaction Methods 0.000 description 7
- 230000008901 benefit Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
Landscapes
- Complex Calculations (AREA)
Abstract
本发明提供一种滤波器运算单元复用的方法和滤波器的运算系统,所述方法包括:步骤一,获取输入滤波器的运算数据;步骤二,选择所述运算数据中的第一加数a1和第二加数b1通过一加法器相加,获得第一相加结果,所述第一相加结果保存至一第一存储单元;步骤三,对系数h1进行正规有符号数字位CSD编码,编码获得数值为N1;步骤四,所述第一存储单元的所述第一相加结果N1次反馈至所述加法器进行累加运算,其中每次累加结果均通过一第二存储单元保存,并通过所述第二存储单元将每次累加结果反馈至所述加法器,与所述第一相加结果进行加法运算,获得h1×(a1+b1)的计算结果。本发明通过运算单元复用,达到节省运算资源和运算量的目的。
Description
技术领域
本发明涉及电子电路的元器件,尤其是指一种滤波器运算单元复用的方法和滤波器的运算系统。
背景技术
目前,内插滤波器已广泛应用于音频信号处理领域的模数转换电路中,用以实现对输入信号的过采样。为了降低硬件实现成本,通常在模数转换电路中选用多级内插滤波器,其中最常用的为半带内插滤波器。
通常半带内插滤波器内包括多个运算单元,每一运算单元又由多个加法器和乘法器构成,用以实现高复杂的运算量。然而对于高位宽的运算单元,特别是高位宽乘法器所需要的组合逻辑面积非常庞大,一个乘法器所需面积通常是一个加法器所需面积的2至4倍,因此使得内插滤波器所设置运算单元的面积需要非常大,内插滤波器的运算量也较高,极大地浪费了运算资源。
发明内容
本发明技术方案的目的是提供一种滤波器运算单元复用的方法和滤波器的运算系统,通过运算单元复用,达到节省运算资源和运算量的目的。
为实现上述目的,本发明提供一种滤波器运算单元复用的方法,所述方法包括:
步骤一,获取输入滤波器的运算数据;
步骤二,选择所述运算数据中的第一加数a1和第二加数b1通过一加法器相加,获得第一相加结果,所述第一相加结果保存至一第一存储单元;
步骤三,对系数h1进行正规有符号数字位CSD编码,编码获得数值为N1;
步骤四,所述第一存储单元的所述第一相加结果N1次反馈至所述加法器进行累加运算,其中每次累加结果均通过一第二存储单元保存,并通过所述第二存储单元将每次累加结果反馈至所述加法器,与所述第一相加结果进行加法运算,获得h1×(a1+b1)的计算结果。
优选地,上述所述的方法,所述步骤四具体包括:
步骤四A,所述第一相加结果拷贝至所述第二存储单元;
步骤四B,所述第一存储单元和所述第二存储单元同时将所保存的所述第一相加结果反馈至所述加法器,所述加法器进行运算,获得第一次累加值,所述第一次累加值保存至所述第二存储单元;
步骤四C,所述第一存储单元将所述第一相加结果反馈至所述加法器,所述第二存储单元将所述第一次累加值反馈至所述加法器,所述加法器进行运算,获得第二次累加值,所述第二次累加值保存至所述第二存储单元;
步骤四D,重复上述的步骤四C,直到对所述第一相加结果进行N1次累加计算,获得h1×(a1+b1)的计算结果,且h1×(a1+b1)的计算结果保存至所述第二存储单元。
优选地,上述所述的方法,所述运算方法还包括:
步骤五,对系数h2进行正规有符号数字位CSD编码,编码获得数值为N2;
步骤六,所述第二存储单元中保存的h1×(a1+b1)的计算结果,作为第一系数相乘结果拷贝至所述第一存储单元,所述第一存储单元的所述第一系数相乘结果N2次反馈至所述加法器进行累加,其中每次累加结果均通过所述第二存储单元保存,并通过所述第二存储单元将每次累加结果反馈至所述加法器,与所述第一系数相乘结果进行加法运算,获得h2×h1×(a1+b1)的计算结果。
优选地,上述所述的方法,所述步骤四之后,所述运算方法还包括:
选择所述运算数据中的第一加数a2和第二加数b2通过一加法器相加,获得第二相加结果,所述第二相加结果保存至所述第一存储单元;
对系数h3进行正规有符号数字位CSD编码,编码获得数值为N3;
所述第一存储单元的所述第二相加结果N3次反馈至所述加法器,在h1×(a1+b1)计算结果的基础上进行累加运算,获得h1×(a1+b1)+h3×(a2+b2)的计算结果。
优选地,上述所述的方法,所述步骤一还包括:
将所述运算数据中的加数分为两组,分别为第一组加数和第二组加数。
优选地,上述所述的方法,所述第一加数a1为所述第一组加数中的数值,所述第二加数b1为所述第二组加数中的数值,且所述第一加数a1为所述运算数据加法运算中的第一个加数,所述第二加数b1为所述运算数据加法运算中的最后一个加数。
本发明另一方面提供一种滤波器的运算系统,所述运算系统包括:
数据采样单元,用于获取输入滤波器的运算数据;
数据多路选择单元,用于选择所述运算数据中的第一加数a1和第二加数b1参与运算;
加法器,用于对所述第一加数a1和所述第二加数b1进行加法运算,获得第一相加结果;
编码单元,用于对系数h1进行正规有符号数字位CSD编码,编码获得数值为N1;
第一存储单元,用于存储所述第一相加结果;以及用于将所述第一相加结果反馈至所述数据多路选择单元,使所述数据多路选择单元选择所述第一相加结果至所述加法器,对所述第一相加结果进行N1次累加计算;
第二存储单元,用于在所述加法器对所述第一相加结果进行N1次累加计算的过程中,保存每一次进行累加的计算结果,并将每次累加结果反馈至所述加法器,与所述第一相加结果进行加法运算,获得并保存h1×(a1+b1)的计算结果。
优选地,上述所述的运算系统,所述数据多路选择单元还用于:
选择所述运算数据中的第一加数a2和第二加数b2;
所述加法器还用于对所述第一加数a2和所述第二加数b2相加,获得第二相加结果;
所述第一存储单元还用于存储所述第二相加结果,以及将所述第二相加结果N3次反馈至所述数据多路选择单元,使所述数据多路选择单元选择所述第二相加结果至所述加法器;
所述第二存储单元还用于将h1×(a1+b1)的计算结果反馈至所述数据多路选择单元,使所述数据多路选择单元选择h1×(a1+b1)的计算结果至所述加法器,在h1×(a1+b1)的计算结果的基础上对所述第二相加结果进行N3次累加,获得h1×(a1+b1)+h3×(a2+b2)的计算结果,其中N3为h3经过所述编码单元进行正规有符号数字位CSD编码获得数值。
优选地,上述所述的运算系统,所述数据采样单元将所述运算数据中的加数分为两组,分别为第一组加数和第二组加数;且所述数据多路选择单元包括第一多路选择单元和第二多路选择单元,其中所述第一多路选择单元用于选择所述第一组加数中的加数参与运算;所述第二多路选择单元用于选择所述第二组加数中的加数参与运算。
优选地,上述所述的运算系统,所述第一加数a1为所述第一组加数中的数值,所述第二加数b1为所述第二组加数中的数值,且所述第一加数a1为所述运算数据加法运算中的第一个加数,所述第二加数b1为所述运算数据加法运算中的最后一个加数。
优选地,上述所述的运算系统,所述第一存储单元为寄存器或存储器,所述第二存储单元为寄存器或存储器。
本发明具体实施例上述技术方案中的至少一个具有以下有益效果:
本发明具体实施例所述方法和运算系统,在主时钟频率允许的情况下,通过将滤波器的乘法运算等价为若干步移位加法运算,使运算单元复用,将滤波器的复杂运算结构通过一个运算单元的一个加法器完成,实现了大大减少运算单元数量的目的。
附图说明
图1为半带内插滤波器的等效运算结构示意图;
图2为本发明具体实施例所述方法的流程示意图;
图3为本发明具体实施例所述方法,通过累加进行系数相乘运算的流程示意图;
图4为本发明具体实施例所述运算系统的结构示意图;
图5为采用本发明具体实施例所述运算系统的复用运算单元结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明进行详细描述。
本发明具体实施例所述滤波器运算单元复用的方法和运算系统,通过运算单元复用,使滤波器在进行叠加和系数相乘运算的过程中,在主时钟频率允许的情况下,只需要一个加法器即能够完成运算,从而能够达到大大减少运算单元数量的目的。
以半带内插滤波器的运算过程为例,参阅图1,半带内插滤波器的等效运算结构示意图,包括多个加法器1和多个乘法器2,通过该运算结构,实现多个数据的累加以及系数相乘运算,但由于加法器和乘法器数量较多,因此运算量较高,而采用本发明所述方法通过一个加法器能够完成多步的加法和乘法运算。
图2为本发明具体实施例所述方法的流程示意图,所述方法通过一个加法器进行运算的过程包括:
步骤S201,获取输入滤波器的运算数据;
步骤S202,选择所述运算数据中的第一加数a1和第二加数b1通过一加法器相加,获得第一相加结果,所述第一相加结果寄存至一第一存储单元;
步骤S203,对系数h1进行正规有符号数字位CSD编码,编码获得数值为N1,根据CSD编码,系数为h1时的乘法,等价于N1次的移位累加计算,基于该原理,本发明所述方法采用移位加法进行N1次运算的方式实现系数h1的乘法运算;
步骤S204,所述第一存储单元的所述第一相加结果N1次反馈至所述加法器进行N1次累加,其中每次累加结果均保存于一第二存储单元,并通过所述第二存储单元将每次累加结果反馈至所述加法器,与所述第一相加结果进行加法运算,获得h1×(a1+b1)的计算结果;
步骤S205,对系数h2进行正规有符号数字位CSD编码,编码获得数值为N2;
步骤S206,所述第二存储单元中保存的h1×(a1+b1)的计算结果,作为第一
系数相乘结果拷贝至所述第一存储单元,所述第一存储单元的所述第一系数相
乘结果反馈至所述加法器进行N2次累加,其中每次累加结果均保存于所述第
二存储单元,并通过所述第二存储单元将每次累加结果反馈至所述加法器,与所述第一系数相乘结果进行加法运算,获得h2×h1×(a1+b1)的计算结果。
本发明具体实施例所述方法,通过上述的步骤S201至步骤S206,利用运算单元复用的方式,将滤波器的复杂运算结构通过一个运算单元完成,根据滤波器系数的正规有符号数字位CSD(CanonicSignedDigit)码组成,将滤波器的乘法运算等价为若干步移位加法运算,因此整个滤波器中的乘法运算和加法运算可以复用一个加法器来完成。
通过上述的步骤S201至步骤S204,使用一个加法器实现了加法和乘法运算,且通过步骤S205至S206,说明采用该方法可以在上一步运算结果的基础上继续利用该加法器可以作进一步的系数相乘运算。
另外,基于上述的步骤S201至204之后,还可以进一步包括计算h1×(a1+b1)+h3×(a2+b2)等复杂运算数据的步骤,举例说明,在计算h1×(a1+b1)+h3×(a2+b2)时具体包括:
选择所述运算数据中的第一加数a2和第二加数b2通过一加法器相加,获得第二相加结果,所述第二相加结果保存至所述第一存储单元;
所述第一存储单元的所述第二相加结果N3次反馈至所述加法器,第二存储单元将h1×(a1+b1)计算结果反馈至所述加法器,使第二相加结果在h1×(a1+b1)计算结果的基础上进行N3次累加运算,且每次累加结果通过第二存储单元保存,并通过第二存储单元将每次累加结果反馈至加法器,与第二相加结果进行加法运算,获得h1×(a1+b1)+h3×(a2+b2)的计算结果,其中N3为h3经过正规有符号数字位CSD编码获得数值。
因此基于上述原理,本发明所述滤波器运算单元复用的方法能够完成一系列更加复杂的运算过程。
此外,本发明具体实施例所述运算单元复用的方法,利用一加法器对a1+b1获得的第一相加结果进行N1次累加计算,获得h1×(a1+b1)计算结果的流程如图3所示,包括步骤:
S301,所述第一相加结果拷贝至所述第二存储单元;
S302,所述第一存储单元和所述第二存储单元同时将所保存的所述第一相加结果反馈至所述加法器;
S303,所述加法器进行运算,获得第一次累加值,所述第一次累加值保存至所述第二存储单元;
S304,所述第一存储单元将所述第一相加结果反馈至所述加法器,所述第二存储单元将所述第一次累加值反馈至所述加法器;
S305,所述加法器进行运算,获得第二次累加值,所述第二次累加值保存至所述第二存储单元;
S306,返回步骤S304,直到对所述第一相加结果进行N1次累加,获得h1×(a1+b1)的计算结果为止。
本发明具体实施例所述运算单元复用的方法,利用运算单元复用,使得整个滤波器中的乘法运算和加法运算可以复用一个加法器来完成,但上述复用计算方式的应用条件,是以数字系统提供的主时钟频率(Fm)通常是内插滤波器输入数据采样率(Fs)的若干倍为基础的,如通常Fm=256Fs,因此在两个输入采样点之间有256个时钟周期可以用来进行滤波运算,为运算单元复用提供了前提。如果在第一个时钟周期内使用一个加法器完成一次加法计算,然后用存储单元将中间计算结果寄存,则在第二个时钟周期内可以使用相同的加法器完成第二次加法计算,同样把结果寄存起来;以此类推,如果两个采样点之间的时钟周期足够多,则半带内插滤波器中的所有加法运算可以复用一个加法器实现。
因此,滤波器中的乘法器和加法器究竟能复用到何种程度,取决于主时钟的频率、滤波器的长度以及滤波器系数的字长等因素。主时钟频率越高、滤波器长度越短、滤波器系数字长越短,运算单元可复用的程度越高。
本发明具体实施例另一方面还提供一种运算系统,如图4运算系统的结构示意图,包括:
数据采样单元41,用于获取输入滤波器的运算数据;
数据多路选择单元42,用于选择所述运算数据中的第一加数a1和第二加数b1参与运算;
加法器43,用于进行加法运算,将所述第一加数a1和所述第二加数b1进行相加,获得第一相加结果;
编码单元46,用于对系数h1进行正规有符号数字位CSD编码,编码获得数值为N1;
第一存储单元44,用于存储所述第一加数a1和所述第二加数b1通过所述加法器进行加法运算后,获得的第一相加结果;以及用于将所述第一相加结果反馈至所述数据多路选择单元,使所述数据多路选择单元选择所述第一相加结果至所述加法器,对所述第一相加结果进行N1次累加计算;
第二存储单元45,用于在所述加法器对所述第一相加结果进行N1次累加计算的过程中,保存每一次进行累加的计算结果,并将每次累加结果反馈至所述加法器,与所述第一相加结果进行加法运算,获得并保存h1×(a1+b1)的计算结果,其中N1为h1经过经过编码单元46进行正规有符号数字位CSD编码获得数值。
其中所述第二存储单元45还用于,将所保存的h1×(a1+b1)的计算结果,作为第一系数相乘结果拷贝至所述第一存储单元,所述第一存储单元的所述第一系数相乘结果N2次反馈至所述加法器进行N2次累加,其中每次累加结果均通过所述第二存储单元保存,并通过所述第二存储单元将每次累加结果反馈至所述加法器,与所述第一系数相乘结果进行加法运算,获得h2×h1×(a1+b1)的计算结果,其中N2为h2经过编码单元46进行正规有符号数字位CSD编码获得数值。
此外,本发明所述运算系统还能够完成更加复杂的运算过程,如在h1×(a1+b1)+h3×(a2+b2)时,所述运算系统具体为:
所述数据多路选择单元42还用于:选择所述运算数据中的第一加数a2和第二加数b2;
所述加法器43还用于对所述第一加数a2和所述第二加数b2相加,获得第二相加结果;
所述第一存储单元44还用于存储所述第二相加结果,以及将所述第二相加结果N3次反馈至所述数据多路选择单元,使所述数据多路选择单元选择所述第二相加结果至所述加法器;
所述第二存储单元45还用于将h1×(a1+b1)的计算结果反馈至所述数据多路选择单元,使所述数据多路选择单元选择h1×(a1+b1)的计算结果至所述加法器,在h1×(a1+b1)的计算结果的基础上对所述第二相加结果进行N3次累加,获得h1×(a1+b1)+h3×(a2+b2)的计算结果,其中N3为h3经过编码单元进行正规有符号数字位CSD编码获得数值。
本发明具体实施例所述运算系统,将滤波器的乘法运算等价为若干步移位加法运算,使运算单元复用,将滤波器的复杂运算结构通过一个运算单元的一个加法器完成,实现了大大减少运算单元数量的目的。
另外,本发明具体实施例所述滤波器运算单元复用的方法和运算系统,采用滤波器运算单元的对称折叠原理,即对于滤波器加法运算中多个加数来说,如该些加数为x,x·z-1,x·z-2,…,x·z-n时,使该些加数的第一个加数和最后一个加数对应相加计算,第二个加数和倒数第二个加数对应相加计算,依次类推。
以图1所示的长度为47的半带滤波器为例,采用多相结构的对称折叠原理的算法实现时,子滤波器长为24,延时链对称折叠后需要进行12次加法(x·z-k+x·z-(23-k),k=0,1,2,…,11)的运算,然后再对12个“和”进行12次系数乘法(×h0,×h2,...,×h22),最后再把12个乘积相加才能得到第1个子滤波器的输出结果y0(n)。如果主时钟频率足够快,则上述计算过程中的所有加法和乘法运算可以复用一个加法器实现。
以下将以上述滤波器的运算数据为例,对本发明具体实施例所述的运算系统和方法进行详细描述。
图5为采用本发明具体实施例所述运算系统的复用运算单元结构示意图,该运算单元包括第一多路选择单元51、第二多路选择单元52、加法器53、第一存储单元54和第二存储单元55,其中该第一存储单元54和第二存储单元55可以分别为寄存器,也可以分别为一存储器,在本发明具体实施例中,该第一存储单元54和第二存储单元55分别采用寄存器。
输入至运算单元的运算数据中,前12个加数通过第一多路选择单元51在每一时钟节拍选择地输入至加法器53,后12个加数通过第二多路选择单元52在每一时钟节拍选择地输入至加法器53,第一存储单元54和第二存储单元54则有分工地寄存中间结果,并提供给下次运算使用。
采用该复用运算单元进行计算的具体过程包括:
首先,加法器53进行第一次折叠加法计算,第一多路选择单元51选通x·z-0为第一加数,第二多路选择单元52选通x·z-23作为第二加数,第一加数和第二加数分别输入至加法器53,加法器计算x·z-0+x·z-23的和sum1,并将该sum1值寄存在第一存储单元54中;
随后,通过若干步移位加法运算,实现系数为h0的h0×(x·z-0+x·z-23)乘法运算。在该过程中,寄存在第一存储单元54中的sum1值拷贝至第二存储单元55,该第一存储单元54和第二存储单元55中的sum1值分别反馈至第一多路选择单元51和第二多路选择单元52,使得该第一多路选择单元51和该第二多路选择单元52分别选通该两个数值,以提供给加法器53。
加法器53对该sum1值进行第一次累加计算,将第一次累加值保存于第二存储单元55中。这样通过上述的过程,将第一次对x·z-0+x·z-23折叠计算获得的sum1值保存在第一存储单元54中,h0×(x·z-0+x·z-23)乘法的每次累加运算时,在反馈回路中做相应移位处理后,通过第一多路选择单元51提供给加法器53作为一个加数使用;而每次移位加法计算的“累加值”均保存于第二存储单元55中,并通过反馈提供给第二多路选择单元52,以作为另一个加数使用。
通过上述N0次(N0为ho经过正规有符号数字位CSD编码获得数值,编码单元在图5中未显示)的移位加法运算后,h0×(x·z-0+x·z-23)乘法运算的最终计算结果最后存储在第二存储单元55中,作为第2个加数项,即h2×(x·z-1+x·z-22)运算的累加起点,获得h0×(x·z-0+x·z-23)+h2×(x·z-1+x·z-22)的计算结果。
基于上述的计算原理,完成了第一次折叠加法和系数乘法运算,获得h0×(x·z-0+x·z-23)的计算结果,在该计算结果的基础上,可以进一步完成h0×(x·z-0+x·z-23)+h2×(x·z-1+x·z-22)的计算,本领域技术人员可以理解,依据上述的方式,还可以进一步累加第三个加数项,计算h0×(x·z-0+x·z-23)+h2×(x·z-1+x·z-22)+h4×(x·z-2+x·z-21),以此类推,直到完成所有的折叠加法和系数乘法运算,此时第二存储器55中存储的就是第一个子滤波器的输出结果y0(n)。
本发明具体实施例所述滤波器运算单元复用的方法和运算系统,通过运算单元复用,使滤波器在进行叠加和系数相乘运算的过程中,在主时钟频率允许的情况下,只需要一个加法器即能够完成一系列的复杂的运算,因此带来运算单元数量减少的效果,进而使得运算单元所需的组合逻辑面积大幅度减小,达到节省运算资源和运算量的目的。
此外,滤波器的延时链在滤波器硬件实现中所占的面积比例也相当可观,因此选择合适的延时链实现方式,可以进一步减少滤波器面积。本发明具体实施例所述滤波器除了用普通寄存器实现延时链外,还可以用存储器模块实现延时链。在存储器片选信号、读写使能信号以及地址信号的控制下,通过对不同地址的存储器单元的写操作,实现延时链功能。
由于存储器里的存储单元设计得比较紧凑,因此就单个延时单元而言,相同字长的存储单元的面积要比普通寄存器的面积小;但是每个存储器模块里除存储单元阵列外,还要有必不可少的读写控制系统,这会额外占用面积。因此,当延时链较长,所需延时单元数量较多时,存储单元面积的节约超过了读写控制系统带来的面积增加,此时用存储器模块实现延时链就比用普通寄存器实现更省面积;反之,当延时链较短,所需存储单元数量较少时,使用存储器模块实现的面积会超过用普通寄存器实现的面积。
因此,本发明具体实施例所述运算系统,延时链的存储单元采用存储器时,相比于寄存器,在延时链较长时,还能够进一步达到节省滤波器运算面积的目的。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (7)
1.一种滤波器运算单元复用的方法,其特征在于,所述方法包括:
步骤一,获取输入滤波器的运算数据,并将所述运算数据中的加数分为两组,分别为第一组加数和第二组加数;
步骤二,选择所述运算数据中的第一加数a1和第二加数b1通过一加法器相加,获得第一相加结果,所述第一相加结果保存至一第一存储单元;其中所述第一加数a1为所述第一组加数中的数值,所述第二加数b1为所述第二组加数中的数值,且所述第一加数a1为所述运算数据加法运算中的第一个加数,所述第二加数b1为所述运算数据加法运算中的最后一个加数;
步骤三,对系数h1进行正规有符号数字位CSD编码,编码获得数值为N1;
步骤四,所述第一存储单元的所述第一相加结果N1次反馈至所述加法器进行累加运算,其中每次累加结果均通过一第二存储单元保存,并通过所述第二存储单元将每次累加结果反馈至所述加法器,与所述第一相加结果进行加法运算,获得h1×(a1+b1)的计算结果。
2.如权利要求1所述的方法,其特征在于,所述步骤四具体包括:
步骤四A,所述第一相加结果拷贝至所述第二存储单元;
步骤四B,所述第一存储单元和所述第二存储单元同时将所保存的所述第一相加结果反馈至所述加法器,所述加法器进行运算,获得第一次累加值,所述第一次累加值保存至所述第二存储单元;
步骤四C,所述第一存储单元将所述第一相加结果反馈至所述加法器,所述第二存储单元将所述第一次累加值反馈至所述加法器,所述加法器进行运算,获得第二次累加值,所述第二次累加值保存至所述第二存储单元;
步骤四D,重复上述的步骤四C,直到对所述第一相加结果进行N1次累加计算,获得h1×(a1+b1)的计算结果,且h1×(a1+b1)的计算结果保存至所述第二存储单元。
3.如权利要求1或2所述的方法,其特征在于,所述运算方法还包括:
步骤五,对系数h2进行正规有符号数字位CSD编码,编码获得数值为N2;
步骤六,所述第二存储单元中保存的h1×(a1+b1)的计算结果,作为第一系数相乘结果拷贝至所述第一存储单元,所述第一存储单元的所述第一系数相乘结果N2次反馈至所述加法器进行累加,其中每次累加结果均通过所述第二存储单元保存,并通过所述第二存储单元将每次累加结果反馈至所述加法器,与所述第一系数相乘结果进行加法运算,获得h2×h1×(a1+b1)的计算结果。
4.如权利要求1或2所述的方法,其特征在于,所述步骤四之后,所述运算方法还包括:
选择所述运算数据中的第一加数a2和第二加数b2通过一加法器相加,获得第二相加结果,所述第二相加结果保存至所述第一存储单元;
对系数h3进行正规有符号数字位CSD编码,编码获得数值为N3;
所述第一存储单元的所述第二相加结果N3次反馈至所述加法器,在h1×(a1+b1)计算结果的基础上进行累加运算,获得h1×(a1+b1)+h3×(a2+b2)的计算结果。
5.一种滤波器的运算系统,其特征在于,所述运算系统包括:
数据采样单元,用于获取输入滤波器的运算数据,并将所述运算数据中的加数分为两组,分别为第一组加数和第二组加数;
数据多路选择单元,用于选择所述运算数据中的第一加数a1和第二加数b1参与运算;其中所述数据多路选择单元包括第一多路选择单元和第二多路选择单元,其中所述第一多路选择单元用于选择所述第一组加数中的加数参与运算;所述第二多路选择单元用于选择所述第二组加数中的加数参与运算;且所述第一加数a1为所述第一组加数中的数值,所述第二加数b1为所述第二组加数中的数值,且所述第一加数a1为所述运算数据加法运算中的第一个加数,所述第二加数b1为所述运算数据加法运算中的最后一个加数;
加法器,用于对所述第一加数a1和所述第二加数b1进行加法运算,获得第一相加结果;
编码单元,用于对系数h1进行正规有符号数字位CSD编码,编码获得数值为N1;
第一存储单元,用于存储所述第一相加结果;以及用于将所述第一相加结果反馈至所述数据多路选择单元,使所述数据多路选择单元选择所述第一相加结果至所述加法器,对所述第一相加结果进行N1次累加计算;
第二存储单元,用于在所述加法器对所述第一相加结果进行N1次累加计算的过程中,保存每一次进行累加的计算结果,并将每次累加结果反馈至所述加法器,与所述第一相加结果进行加法运算,获得并保存h1×(a1+b1)的计算结果。
6.如权利要求5所述的运算系统,其特征在于,所述数据多路选择单元还用于:
选择所述运算数据中的第一加数a2和第二加数b2;
所述加法器还用于对所述第一加数a2和所述第二加数b2相加,获得第二相加结果;
所述第一存储单元还用于存储所述第二相加结果,以及将所述第二相加结果N3次反馈至所述数据多路选择单元,使所述数据多路选择单元选择所述第二相加结果至所述加法器;
所述第二存储单元还用于将h1×(a1+b1)的计算结果反馈至所述数据多路选择单元,使所述数据多路选择单元选择h1×(a1+b1)的计算结果至所述加法器,在h1×(a1+b1)的计算结果的基础上对所述第二相加结果进行N3次累加,获得h1×(a1+b1)+h3×(a2+b2)的计算结果,其中N3为h3经过所述编码单元进行正规有符号数字位CSD编码获得数值。
7.如权利要求5所述的运算系统,其特征在于,所述第一存储单元为寄存器或存储器,所述第二存储单元为寄存器或存储器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010033835.9A CN101840322B (zh) | 2010-01-08 | 2010-01-08 | 滤波器运算单元复用的方法和滤波器的运算系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010033835.9A CN101840322B (zh) | 2010-01-08 | 2010-01-08 | 滤波器运算单元复用的方法和滤波器的运算系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101840322A CN101840322A (zh) | 2010-09-22 |
CN101840322B true CN101840322B (zh) | 2016-03-09 |
Family
ID=42743711
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010033835.9A Active CN101840322B (zh) | 2010-01-08 | 2010-01-08 | 滤波器运算单元复用的方法和滤波器的运算系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101840322B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160328645A1 (en) * | 2015-05-08 | 2016-11-10 | Qualcomm Incorporated | Reduced computational complexity for fixed point neural network |
CN109194307B (zh) * | 2018-08-01 | 2022-05-27 | 南京中感微电子有限公司 | 数据处理方法及系统 |
CN115080498B (zh) * | 2022-07-27 | 2022-11-08 | 成都奇芯微电子有限公司 | 基于卫星导航应用的信号数据存储方法以及存储芯片 |
CN118074673B (zh) * | 2024-04-25 | 2024-08-16 | 上海金卓科技有限公司 | 一种多带宽实时切换的滤波器、滤波方法及芯片 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1454347A (zh) * | 2000-10-16 | 2003-11-05 | 诺基亚公司 | 使用带符号的数位表示的乘法器和移位器 |
-
2010
- 2010-01-08 CN CN201010033835.9A patent/CN101840322B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1454347A (zh) * | 2000-10-16 | 2003-11-05 | 诺基亚公司 | 使用带符号的数位表示的乘法器和移位器 |
Non-Patent Citations (3)
Title |
---|
《全相位FIR滤波器族》;黄翔东 等;《信号处理》;20080630;第24卷(第3期);第470-475页 * |
《基于CSD编码的FIR数字滤波器优化设计》;朱霞 等;《计算机工程与设计》;20090228;第30卷(第2期);第271-271页 * |
《基于两种对称频率采样的全相位FIR滤波器设计;黄翔东 等;《电子与信息学报》;20070228;第29卷(第2期);第478-481页 * |
Also Published As
Publication number | Publication date |
---|---|
CN101840322A (zh) | 2010-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102687936B1 (ko) | 디지털 회로로 구현하는 보간 필터 시스템 | |
CN111291323B (zh) | 一种基于脉动阵列的矩阵乘法处理器及其数据处理方法 | |
CN100499371C (zh) | 一种可编程内插滤波器装置及其实现方法 | |
CN101840322B (zh) | 滤波器运算单元复用的方法和滤波器的运算系统 | |
CN104393854B (zh) | 基于fpga的时分复用级联积分梳状抽取滤波器及其实现方法 | |
US10050607B2 (en) | Polyphase decimation FIR filters and methods | |
CN107707219A (zh) | 一种基于fpga的高采样率fir滤波等效实现方法 | |
CN106817106A (zh) | 一种并行fir滤波方法及fir滤波器 | |
CN101820287B (zh) | 一种应用于双声道音频δ-∑数模转换器的插值滤波器 | |
Bougas et al. | Pipelined array-based FIR filter folding | |
CN113556101B (zh) | Iir滤波器及其数据处理方法 | |
CN204316468U (zh) | 一种多路数字滤波器 | |
CN104348446B (zh) | 一种实现fir滤波的方法和滤波装置 | |
CN109711542A (zh) | 一种支持动态精度的dnn加速器及其实现方法 | |
CN115549644B (zh) | 一种fir滤波器 | |
CN115640493B (zh) | 基于fpga的分段线性分数阶运算ip核 | |
CN108900177B (zh) | 一种fir滤波器对数据进行滤波的方法 | |
CN103078606B (zh) | 多通道的cic内插滤波器系统及其实现方法 | |
EP1355421B1 (en) | Digital matched filter | |
CN1166058C (zh) | 一种实现n阶插值滤波的方法与装置 | |
CN113783549A (zh) | 一种插值滤波方法和插值滤波装置 | |
CN100536331C (zh) | 一种半并行滤波器及其实现方法 | |
CN1330089C (zh) | 有限脉冲响应滤波与欠采样相结合的方法 | |
CN103293373A (zh) | 电能计量装置及其电能计量芯片 | |
CN203259592U (zh) | 电能计量装置及其电能计量芯片 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20201208 Address after: No.602, 6 / F, shining building, 35 Xueyuan Road, Haidian District, Beijing 100191 Patentee after: BEIJING ZHONGXINGTIANSHI TECHNOLOGY Co.,Ltd. Address before: 100083, Haidian District, Xueyuan Road, Beijing No. 35, Nanjing Ning building, 15 Floor Patentee before: Vimicro Corp. |
|
TR01 | Transfer of patent right |