专利名称:利用算术处理器的数字基本增强器的制作方法
技术领域:
本发明涉及数字信号处理,尤其涉及数字音频系统中数字基本增强器(digital base booster(DBB))。
背景技术:
一般来说,用于加强在数字音频系统中再现的声音的特定频带的数字基本增强器是由有限脉冲响应(FIR)滤波器或无限脉冲(IIR)滤波器实现的。
图1显示了由无限脉冲滤波器实现的传统数字基本增强器的实施例的结构。参照图1,传统DBB包括三个分积木式模块,以及第一加法器170,这三个分积木式模块是基带滤波器110、中频带滤波器130和高频带滤波器150。
基带滤波器110包括第二加法器111、第三加法器112、第一延迟器件113和第一至第四移位器114-117。
第二加法器111把数据x(n)加入第一延迟器件113的输出数据qb[n-1]与存储在第一移位器114中的任意系数-b11相乘所得的数据中。第三加法器112把第一延迟器件113的输出数据qb[n-1]与存储在第二移位器115中的任意系数a11相乘所得的数据加入第二加法器111的输出数据qb[n]与存储在第三移位器116中的任意系数a01相乘所得的数据中。
第一延迟器件113延迟第二加法器111的输出,和第四移位器117存储被第三加法器112的输出相乘所得的系数Gb。
中频带滤波器130包括第四加法器131、第五加法器132、第二延迟器件133、第三延迟器134和第五至第十移位器135-140。
第四加法器131把数据x(n)和第二延迟器件133的输出数据qm[n-1]与存储在第五移位器135中的任意系数-b12相乘所得的数据加入第三延迟器件134的输出数据qm[n-2]与存储在第六移位器136中的任意系数-b22相乘所得的数据中。第五加法器132把第二延迟器件133的输出数据qm[n-1]与存储在第七移位器137中的任意系数a12相乘所得的数据和第三延迟器件134的输出数据qm[n-2]与存储在第八移位器138中的任意系数a22相乘所得的数据加入第四加法器131的输出数据qm[n]与存储在第九移位器139中的任意系数a02相乘所得的数据中。第二延迟器件133延迟第四加法器131的输出数据qm[n],和第三延迟器件134延迟第二延迟器件133的qm[n-1]。第十移位器140存储被第五加法器132的输出相乘所得的系数Gm。
高频带滤波器150包括第六加法器151、第七加法器152、第四延迟器件153和第十一至第十四移位器154-157。
第六加法器151把数据x(n)加入第四延迟器件153的输出数据qt[n-1]与存储在第十一移位器154中的任意系数-b13相乘所得的数据中。第七加法器152把第四延迟器件153的输出数据qt[n-1]与存储在第十二移位器155中的任意系数a13相乘所得的数据加入第六加法器151的输出数据qt[n]与存储在第十三移位器156中的任意系数a03相乘所得的数据中。第四延迟器件153延迟第六加法器151的输出数据qt[n],和第十四移位器157存储被第七加法器152的输出相乘所得的系数Gt。
第一加法器170相加基带滤波器110、中频带滤波器130和高频带滤波器150的输出数据。
图1所示的DBB的IIR滤波器的转移函数H(z)如下[公式1]H(z)=Gb*a01+a11Z-11+b11Z-1+Gm*a02+a12Z-1+a22Z-21+b12Z-1+b22Z-2+Gt*a03+a13Z-11+b13Z-1]]>在公式1中,IIR滤波器由直接形式(direct form)的级联结构组成。
一般来说,如果高级IIR滤波器由直接形式组成,那么,会出现有限位中由算术运算引起的算术舍入误差和系数量化误差。尤其是,在反馈加法器中会出现溢出,为了解决这个问题,具有级联结构的IIR滤波器如图1所示,由分积木式模块(partial building block)组成。
但是,在如图1所示,由三个分积木式模块组成的DBB系统的情况中,需要数个多位移位器来提供反馈系数-b11、-b12、-b22和-b13、正向系数a01、a11、a02、a12、a22、a03和a1 3和增益系数Gb、Gm和Gt,并且,对于系数的算术运算,递归地使用了多位移位器、多位反馈加法器和正向加法器。结果是,硬件应该与级联结构的数量和算术位的数目成比例地增加。
发明内容
为了解决上述问题,本发明的目的是提供一种利用算术处理器实现的、硬件数量减少了的数字基本增强器。
因此,为了达到上面目的,根据本发明的实施例,提供了一种数字基本增强器(DBB)。该DBB包括第一内部数据、输入部分、数据指定器、算术部分和输出数据存储器件。第一内部数据是算术部分的输出数据。输入部分包括对输入数据和第一内部数据作出响应的数个多位寄存器。数据指定器从输入部分的数个输出数据组中选择一个输出数据组。算术部分对数据指定器的输出数据和存储在算术部分中的数据进行算术运算,补偿算术运算得出的数据的舍入误差,存储补偿结果和输出第一内部数据。输出数据存储器件存储在算术部分中处理的数据。
在一个实施例中,数个多位寄存器的一个多位寄存器存储输入数据,并响应相关的控制信号输出存储的输入数据,其它的多位寄存器存储第一内部数据,并响应相关的控制信号输出存储的第一内部数据。
在一个实施例中,数据指定器是多路复用器。
在一个实施例中,算术部分包括第二内部数据、第一数据寄存器、第二数据寄存器、算术数据部分、第一多路复用器、算术处理器、误差补偿器和第三数据寄存器。第二内部数据是算术处理器的输出数据,和第一数据寄存器存储第二内部数据。第二数据寄存器存储和输出数据指定器的输出数据。第一多路复用器选择第一数据寄存器的输出数据和第二数据寄存器的输出数据。算术数据部分在算术运算期间,选择数据寄存器的输出数据和第二内部数据,存储和输出中间数据。算术处理器用算术方法处理第一多路复用器的输出数据和存储在算术处理器中的数据,把经算术处理的数据加入算术数据部分的输出数据中,输出第二内部数据。误差补偿器对作为算术处理器的输出数据的第二内部数据的舍入误差加以补偿。第三数据寄存器存储误差补偿器的输出数据。
在一个实施例中,算术数据部分包括第二多路复用器,用于选择第二内部数据和数据指定器的输出数据;第四数据寄存器,用于存储第二多路复用器的输出数据;和数据路径控制器,用于控制第四数据寄存器的输出数据的发送。在一个实施例中,算术处理器包括桶形移位器,用于响应第一多路复用器的输出数据,进行算术运算;第一加法器,用于相加桶形移位器的输出数据;和第二加法器,用于把第一加法器的输出数据加入算术数据部分的输出数据中。
当存在一个桶形移位器时,可以适当地降低硬件的面积,但是,应该重复地进行算术运算,因此,难以使桶形移位器应用在处理速度重要的系统中。在这样的情况中,最好使用数个桶形移位器。
通过结合附图对本发明的优选实施例进行如下详细描述,本发明的前述和其它目的、特征和优点将更加清楚,在这些不同的附图中自始至终相同的标号表示相同的部分。这些附图并非非按比例画出来不可,而是把能显示本发明原理的地方重点突出出来。
图1显示了通过无限脉冲响应(IIR)滤波器实现的传统数字基本增强器(DBB)的结构;和图2显示了根据本发明的数字基本增强器的结构。
具体实施例方式
图2显示了根据本发明的数字基本增强器的实施例的结构。参照图2,根据本发明实施例的数字基本增强器包括输入部分200、数据指定器300、算术部分400和输出数据存储器件500。
输入部分200包括数个多位寄存器201-207,用于存储输入数据X(n)和从算术部分400输出的第一内部数据ID1,并且响应预定控制信号输出存储的数据。多位寄存器201存储输入数据X(n),并响应预定控制信号(未示出)输出存储的数据,其它多位寄存器202-207存储第一内部数据ID1,并响应预定控制信号(未示出)输出存储的数据。数据指定器300从输入部分200的数个输出数据中选择一个输出数据。
算术部分400包括第一数据寄存器410、第一多路复用器420、第二数据寄存器430、算术数据部分440、算术处理器450、误差补偿器460和第三数据寄存器470。
算术部分400对从数据指定器300输出的数据和存储在算术处理器450中的数据(未示出)进行算术运算,补偿运算得出的数据的舍入误差,存储补偿结果和输出第一内部数据ID1。
第一数据寄存器410存储从算术处理器450输出的第二内部数据ID2。第二数据寄存器430存储从数据指定器300输出的第一内部数据ID1,把存储的延迟数据提供给算术处理器450。第一多路复用器420选择第一数据寄存器410的输出数据和第二数据寄存器430的输出数据,从而把它们提供给算术处理器450。算术数据部分440包括第二多路复用器441,用于选择数据指定器300的输出数据和第二内部数据ID2;第四数据寄存器442,用于存储第二多路复用器441的输出数据;以及数据路径控制器443,用于控制第四数据寄存器442的输出数据的发送,从而存储算术处理器450的算术运算期间的中间数据,并把存储数据提供给算术处理器450。
算术处理器450包括数个桶形移位器451-453,用于对第一多路复用器420输出的数据和内部数据(未示出)进行算术运算;第一加法器454,用于将桶形移位器451-453的输出数据相加;以及第二加法器455,用于把第一加法器454的输出数据加入算术数据部分440的输出数据中。
误差补偿器460补偿从算术处理器450输出的第二内部数据ID2的舍入误差,和第三寄存器470存储误差补偿器460的输出数据。
输出数据存储器件500存储算术部分400的处理结果。
利用根据本发明的数字基本增强器实现传统中频带滤波器的算术过程如下步骤1Sx←X(n)步骤2Ap←Sx步骤3Bp←qm[n-2]步骤4Ap←Ap+(b22*Bp),Bp←qm[n-1]步骤5Cp,Dp←Ap+(b12*Bp),Bp←qm[n-2]步骤6Ap←0+(a22*Bp), Bp←qm[n-1]步骤7Ap←Ap+(a12*Bp)步骤8Ap,Cp←Ap+(a02*Cp),步骤9Dp←0+Bp,qm[n-1]←Dp步骤10Dp←Ap+(Gm*Cp),qm[n-2]←Dp步骤11OUT_m←Dp这里,箭头(←)指的是把箭头(←)右侧的数据存储在箭头(←)左侧的寄存器中。
在步骤1,把输入数据X(n)存储在寄存器201中。
在步骤2,让存储在寄存器201中的输入数据X(n)通过数据指定器300和第二多路复用器441,然后存储在第四数据寄存器442中。
在步骤3,让存储在输入部分200的多位寄存器204中的中频带延迟数据qm[n-2]通过数据指定器300,然后存储在第二数据寄存器430中。
在步骤4,在算术处理器450中,把存储在第二数据寄存器430中的中频带延迟数据qm[n-2]与存储在算术处理器450中的反馈路径系数(未示出,b22)相乘。把乘积数据加入存储在第四数据寄存器442中的输入数据X(n)中,然后存储在第四数据寄存器442中,同时,把从输入部分200的多位寄存器203输出的中频带延迟数据qm[n-2]存储在第二数据寄存器430中。
在步骤5,在算术处理器450中,把存储在第二数据寄存器430中的中频带延迟数据qm[n-1]与存储在算术处理器450中的反馈路径系数(未示出,b12)相乘。把乘积数据加入存储在第四数据寄存器442中的数据中,然后存储在第一数据寄存器410和第三数据寄存器470中,同时,把从输入部分200的多位寄存器204输出的中频带延迟数据qm[n-2]存储在第二数据寄存器430中。
在步骤6,把存储在第四数据寄存器442中的数据发送到数据路径控制器443,从而移去所有数据。此后,在算术处理器450中,把存储在第二数据寄存器430中的中频带延迟数据qm[n-2]与存储在算术处理器450中的正向路径系数(未示出,a22)相乘。把乘积数据存储在第四数据寄存器442中,同时,把从输入部分200的多位寄存器204输出的中频带延迟数据qm[n-1]存储在第二数据寄存器430中。
在步骤7,在算术处理器450中,把存储在第二数据寄存器430中的中频带延迟数据qm[n-1]与存储在算术处理器450中的正向路径系数(未示出,a12)相乘。把乘积数据加入存储在第四数据寄存器442中的数据中,然后存储在第四数据寄存器442中。
在步骤8,在算术处理器450中,把存储在第一数据寄存器410中的数据与存储在算术处理器450中的正向路径系数(未示出,a02)相乘。把乘积数据加入存储在第四数据寄存器442中的数据中,然后存储在第一数据寄存器410和第四数据寄存器442中。
在步骤9,把存储在第四数据寄存器442中的数据发送到数据路径控制器443,从而移去所有数据。此后,在算术处理器450中,把存储在第二数据寄存器430中的中频带延迟数据qm[n-1]与存储在算术处理器450中的旁路系数(未示出)相乘。让乘积数据通过误差补偿器460,然后,存储在第三数据寄存器470中,同时,把从第三数据寄存器470输出的第一内部数据ID1存储在输入部分200的多位寄存器203中。
在步骤10,在算术处理器450中,把存储在第一数据寄存器410中的数据与存储在算术处理器450中的中频带增益系数(未示出,Gm)相乘。把乘积数据加入存储在第四数据寄存器442中的数据中,然后,存储在第三数据寄存器47 0中,同时,把从第三数据寄存器470输出的第一内部数据ID1存储在输入部分200的多位寄存器204中。
在步骤11,把存储在第三数据寄存器470中的数据存储在输入部分200的多位寄存器207中。
在步骤4-6和9-10,同时进行两个算术运算。可以同时处理算术运算的理由是因为要处理的数据的路径是不同的。这是本发明的优点之一。最好,用在算术运算中的数据寄存器包括两个独立的级,即主级和从级。这是输入到数据寄存器的数据不与从数据寄存器输出的数据发送冲突的原因。上述中频带滤波器是作为例子实现的,基带滤波器和高频带滤波器可以利用算术运算过程实现,从而获得数据。
如上所述,在根据本发明的数字基本增强器中,安装和重复使用了传统算术处理器,从而,与需要大面积的传统IIR滤波器相比,实现了小面积的传统IIR滤波器的功能。在算术处理器中的算术运算时间比系统时钟的循环短得多,因此,从输出到输入的特性来看,显示出了传统IIR滤波器的性能。
如上所述,根据本发明的利用算术处理器的数字基本增强器用桶式移位器取代乘法器,当实现具有包括分积木式模块的级联结构的传统IIR滤波器时,通过共享加法器的算术处理器构成反馈回路,从而降低了硬件占用的面积。
虽然通过参照本发明的某些优选实施例,已经对本发明进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种各样的改变,而不偏离所附权利要求书所限定的本发明的精神和范围。
权利要求
1.一数字基本增强器(DBB),包括输入部分,包括对输入数据和第一内部数据作出响应的数个多位寄存器;数据指定器,用于从输入部分的数组输出数据中选择一组输出数据;算术部分,用于对数据指定器的输出数据和存储在算术部分中的数据进行算术运算,补偿算术运算得出的数据的舍入误差,存储补偿结果和输出第一内部数据;和输出数据存储器件,用于存储在算术部分中处理的数据。
2.根据权利要求1所述的数字基本增强器,其中,数个多位寄存器的一个多位寄存器存储输入数据,并响应相关的控制信号输出存储的输入数据,和其它的多位寄存器存储第一内部数据,并响应相关的控制信号输出存储的第一内部数据。
3.根据权利要求1所述的数字基本增强器,其中,数据指定器是多路复用器。
4.根据权利要求1所述的数字基本增强器,其中,算术部分包括第一数据寄存器,用于存储第二内部数据;第二数据寄存器,用于存储和输出数据指定器的输出数据;第一多路复用器,用于选择第一数据寄存器器的输出数据和第二数据寄存器的输出数据;算术数据部分,用于选择数据指定器的输出数据和第二内部数据,存储和输出在算术运算期间的中间数据;算术处理器,用于用算术方法处理第一多路复用器的输出数据和存储在算术处理器中的数据,把经算术处理的数据加入算术数据部分的输出数据中,输出第二内部数据;误差补偿器,用于对作为算术处理器的输出数据的第二内部数据的舍入误差加以补偿;和第三数据寄存器,用于存储误差补偿器的输出数据。
5.根据权利要求4所述的数字基本增强器,其中,算术数据部分包括第二多路复用器,用于选择第二内部数据和数据指定器的输出数据;第四数据寄存器,用于存储第二多路复用器的输出数据;和数据路径控制器,用于控制第四数据寄存器的输出数据的发送。
6.根据权利要求4所述的数字基本增强器,其中,算术处理器包括桶形移位器,用于响应第一多路复用器的输出数据,进行算术运算;第一加法器,用于相加桶形移位器的输出数据;和第二加法器,用于把第一加法器的输出数据加入算术数据部分的输出数据中。
全文摘要
本发明提供了一种利用算术处理器减少硬件的数字基本增强器(DBB)。不是利用具有包括数个分积木式模块的级联结构的传统IIR滤波器,利用算术处理器的数字基本增强器包括第一内部数据、输入部分、数据指定器、算术部分和输出数据存储器件。第一内部数据是算术部分的输出数据。输入部分包括数个多位寄存器,从而存储输入数据和第一内部数据,并以预定信号的形式输出存储的数据。数据指定器从输入部分的数组输出数据中选择一组输出数据。算术部分对数据指定器的输出数据和存储在算术部分中的数据进行算术运算,补偿和存储算术运算得出的数据的舍入误差,并输出第一内部数据;输出数据存储器件存储和输出在算术部分中处理过的数据。
文档编号H03H17/02GK1366383SQ0210205
公开日2002年8月28日 申请日期2002年1月18日 优先权日2001年1月19日
发明者廉旺燮 申请人:三星电子株式会社