自适应滤波器的制作方法

文档序号:7504823阅读:447来源:国知局
专利名称:自适应滤波器的制作方法
技术领域
本发明涉及自适应滤波器。
现有技术自适应滤波器可以方便地用于恢复受干扰影响的数字信号,特别地,如果干扰是由串音引起、由未知信道特性的传输信道引起或由于时序误差的影响。
一种简单的自适应滤波器算法是已知的LMS算法,该算法要求2N个乘法器用于N级滤波器结构。但是,每一个乘法器必须足够精确,以确保需要的稳定性。已知的LMS算法可以由软件或由软件和硬件滤波器结构的组合实现。然而,在实时硬件实现的情况中,存在的缺点是电路的成本太高,对于某些应用是无法接受的。
发明本发明的目的是用硬件实现自适应滤波器,该滤波器具有所要求的稳定性,并减少了硬件的成本。
本发明是通过权利要求1指定的特征实现的。
进一步的优点呈现在从属权利要求中。
按照本发明,通过修改LMS算法,实现自适应滤波器。这种算法节省了大量的乘法器,以这种方式,抑制了自适应系数,系数寄存器最好分成为两个子-区,以便减少滤波器乘法器的位宽度。
自适应滤波器的数学描述是y(n)=Σi=0N-1bi(n)*x(n-i)]]>当本发明的自适应滤波器用于低频分量时,根据公式,最好每秒采样一次,y(n)=Σi=0N-1bi(n)*x(n-2*i)]]>式中n=循环次数,x(n)和y(n)是输入和输出样本,并且,bi(n),i=0、1…N-1是循环n的滤波器系数。
用于系数适应的LMS算法按照下式计算bi(n)=bi(n-1)+μ*e(n-1)*x(n-i-1),i=0、1…,N-1其中e(n):=d(n)-y(n)式中d(n)是所谓的要求的输出,m是适应常数。很明显,LMS自适应滤波器要求两个乘法器,一个用于滤波,一个用于系数适应,用于每一个系数数字位置,下面称为抽头。
适应μ*e(n-1)*x(n-i-1)应当足够小,以确保适应过程的稳定性,就是说,获得系数bi(n),i=0、1…,N-1的足够准确性。
本发明修改的LMS算法如下bi(n)=bi(n-1)+e(n-1)*x(n-i-1)*2-(k-12),i=0、1、2…,14,其中e(n):=SIGN(d(n)-y(n))和 并且k=0、1、2、3是用户选项,指定该选项作为适应常数。
对于每一个抽头,只使用一个乘法器进行滤波。适应要求具有足够长度的寄存器,例如18位,以便对于采用LMS算法的稳定性获得要求的准确性。
为进一步减少硬件的成本,只采用数个MSB、系数位、最好8位寄存器作为滤波系数,并进行相乘。
为进一步改良本发明,8位寄存器连接到评价电路,根据8位的数值,评价电路执行窗口操作,以便获得进一步减少,例如5位。通过移位功能,评价电路排除空行等效位,并切断多个LSB。使用减少的值进行进一步的计算。评价电路的结果,最好是两位值,被用于进一步下游移位功能,以便恢复正确的值。
由本发明LMS算法的适应获得的优点是对于每一个抽头寄存器,只需要一个乘法器。其优点是,对于适应和滤波器相乘,分别利用抽头寄存器,对于乘法器只需要一个小的位宽度,而没有消弱适应处理要求的稳定性和准确性。使用本发明的窗口移动技术,获得了乘法器的必须位宽度的减少。结果,当选则乘法器位宽度时,不再考虑系数值的动态范围。
附图本发明的自适应滤波器的实施例参考附图进行描述。


图1是自适应滤波器;图2是系数适应的方框图;图3是详细的自适应滤波器;图4是抽头寄存器中的窗口移动。
实施例图1显示了包括详细显示在图2中的15个方框AD-CFF的自适应滤波器的例子。图2显示了一个方框,用于具有输入x、输出b和启动信号en的系数适应AD-CFF,输入k用于预定的适应常数,输入e、输入rst用于复位信号,输入em用于运行方式,I2C输入I2C用于外部驱动。输入x通过标记的6位线连接到多路器MX21的0输入,和通过反相器INV21连接到多路器MX21的1输入。多路器MX21的输出连接到多路器MX22的0输入,1输入接地。两个多路器MX21、MX22的控制线连接到输入e,多路器MX 21由位0(LSB)转换,多路器MX22由位1(MSB)转换。多路器MX22的输出通过乘法器M24连接到加法器A21,该加法器的系数通过标记的扩展装置SGNX21由输入k设定。加法器A21的输出通过多路器MX23的0输入传输到寄存器REG21,另一方面,加法器的输出返回到加法器A21的第二输入,并且,也通过装置TRNCL1返回到输出b,用于切断不重要的位,移位寄存器21和装置TRNCL2用于切断不重要的位。
多路器MX24已经应用到它的初始化模式的输入0、1、2的系数i0、i1、i2,用于内部初始化,和应用到它的初始化模式的控制输入系数,用于外部初始化。多路器MX24的输出通过乘法器M21、MSB扩展装置MSBX21、多路器MX25的0输入和LSB扩展装置LSBX21传输到多路器MX23的1输入。在假定系数值为“3”的情况中,逻辑“1”被馈送到多路器MX25的控制输入。I2C输入通过判定电路ENT21连接到多路器MX25的1输入。寄存器REG21的输出传输到判定电路ENT21的0输入。判定电路ENT21和多路器MX23的两个控制输入通过或们021及寄存器REG21的启动输入en连接到输入rst。输入en传输到或们021的第二输入。
用于切断不重要位的装置TRNCL1的输出传输到具有输入α、β、χ、δ的逻辑电路L21。根据哪一位7、6、5、4被设置,输入α、β、χ、δ被占据,对应的输出信号s从逻辑电路L21被馈送到移位寄存器S21的控制输入,该信号满足涵数2s。
对于系数适应的算法可以按下式计算bi(n)=bi(n-1)+e(n-1)*x(n-i-1)*2-k-11,i=0、1、2…,14,在这种情况下, 其中 并且k=0、1、2、3是用户选项,指定该选项作为适应常数。
为建立算法,对于每一个抽头,必须使用18位寄存器REG21,以便存储bi(n)位。在这种情况中,这样的寄存器被称为抽头寄存器。8个MSB被指定为系数位,并用作为滤波器系数,而整个寄存器REG21作为适应存储器。每一个抽头寄存器REG21的8个系数位通过12C总线由外部处理器读取或写入。
然而,如图1所示,18位中的5位被用来滤波器相乘。这5位由穿过寄存器REG21的8位,通过变化的窗口进行选择。如图4所示,可运动窗口的移动按照下面的规则由逻辑电路L21进行计算 系数可以复位到信号rst设置时提供的初始值。
最好提供4个模式用于初始化滤波器系数。前3个是内部的。这3个内部模式的预定的初始化系数最好按下面设置(b0(0)、b1(0)、…b14(0))={0、0、0、0、0、0、0、16、0、0、0、0、0、0、0}(内部模式0);{16、0、0、0、0、0、0、0、0、0、0、0、0、0、0}(内部模式1);或{0、0、0、0、0、0、0、0、0、0、0、0、0、0、16}(内部模式02)。
提供的第四个模式用于外部初始化系数,通过I2C总线,外部初始化系数被装载入每一个抽头寄存器REG21的8个系数位。
图3详细显示了用于系数适应AD-CFF的方框显示的自适应滤波器。一方面,输入x通过延迟级Z-1传输到第一个方框AD-CFF的x输入,然后,通过包括延迟级Z-1、多路器和进一步延迟级的各自的网络进一步传输到下一个方框AD-CFF的x输入。在这个实施例中,总共使用了15个方框AD-CFF。输入x开始被连接到乘法器M,然后,连接到每一个网络的多路器后面的乘法器M。网络的多路器共同地由它们的控制输入连接到输入em。15个方框AD-CFF的每一个b输出连接到指定的乘法器M的各自的第二输入。每一个乘法器M的输出连接到各自的下游LSB扩展装置LSBX,每一个LSBX输出传输到指定的移位寄存器S,移位寄存器S通过延迟级Z-1连接到指定的方框AD-CFF的s输入。
附加装置A组合了LSB扩展装置LSBX的输出。在每一种情况中,3个或4个加法器A的输出通过切断不重要位的各自装置TRNCL传输到下游加法器A,直到最后一个加法器A的所有线端。通过切断不重要位的装置TRNCL连接到最后加法器A的是一个限制器L1,该限制器在范围-16/15中限制信号。一方面,限制器L1的输出信号传输到自适应滤波器的输出y,也通过加法器传输到具有常数-8/8的第二输入,该常数由限制器11的输出信号的正负号确定。加法器的输出通过范围判定电路BE1、0值检测器和延迟单元传输到方框AD-CFF的e输入。
图4显示在抽头寄存器中的窗口移动。由于切断不重要位的装置TRNCL的输出信号的重要性,逻辑电路L21确定这些位,这些位由切断不重要位的下游装置TRNCL2转发到输出b。装置TRNCL2切断信号的后3位。作为例子,如果呈现大值,后者不由移位寄存器S21移动。但是,如果呈现小值,他将被移动3个位置,结果,抑制了空行0。有关移动操作的信息在输出s的下游电路获得,在计算完成之后,重新建立结果的正确的位置。
权利要求
1.一种使用N个抽头滤波器计算最小均方算法的方法,其特征在于修改的最小均方算法用于计算,在第一计算步骤,使用N个抽头(AD-CFF)中的第一、宽位宽度进行计算,在第二步,根据第一步计算的结果,选择第二、较小量的位用于进一步的方法步骤。
2.按权利要求1所述的方法,其特征在于计算按照方程完成y(n)=Σi=0N-1bi(n)*x(n-i)]]>式中n是循环次数,N是抽头数,x(n)是输入值,y(n)是输出值,其中,bi(n)=bi(n-1)+e(n-1)*x(n-i-1)*2-k-11,i=0、1、2…,14是滤波器系数,在这种情况下, 其中
3.按权利要求1所述的方法,其特征在于计算按照方程完成y(n)=Σi=0N-1bi(n)*x(n-2*i)]]>式中n是循环次数,N是抽头数,x(n)是输入值,y(n)是输出值,其中,bi(n)=bi(n-1)+e(n-1)*x(n-i-1)*2-k-11,i=0、1、2…,14是滤波器系数,在这种情况下, 其中
4.按权利要求1到3所述的方法,其特征在于在逻辑电路(L21)中判定第二个、较小数量的位,以这种方式选择具有5位长度的值,该值用第一个“10”或“01”位的组合开始,或,如果这样的组合没有呈现,则选择5个LSB。
5.按权利要求4所述的方法,其特征在于方法的进一步步骤-第三个值与输入值(x)相乘,相乘值的位长度被减少;-LSB扩展随后完成;-结果由移位寄存器移动,作为逻辑电路(L21)的判定函数;-N抽头的结果由具有下游LSB断开的加法器限制,并作为滤波器的输出信号(y)。
全文摘要
本发明涉及使用N-抽头滤波器计算最小均方根算法的方法。修改的最小均方根算法用于计算。在第一计算步骤中,在N抽头(AD-CFF)中使用第一、宽位宽度进行计算,在第二步骤中,根据第一计算步骤的结果,选择第二、较小数量的位进一步进行计算。
文档编号H03H21/00GK1299533SQ99805708
公开日2001年6月13日 申请日期1999年4月28日 优先权日1998年5月9日
发明者林纪南, 马克西米利安·埃尔巴尔 申请人:德国汤姆森-布兰特有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1