一种可配置系数的数字滤波器和实现方法

文档序号:7520062阅读:598来源:国知局
专利名称:一种可配置系数的数字滤波器和实现方法
技术领域
本发明涉及数字信号处理领域,特别是涉及一种可配置系数的数字滤波器和实现方法。
背景技术
数字滤波器作用于离散时间系统,能利用系统特性对输入信号的波形或频谱进行处理,把输入信号变成一定的输出信号,达到改变信号的频谱的目的。数字滤波器的精确度高,可靠性强,并且使用灵活、方便,是数字信号处理技术中的重要手段。 图I给出了一般数字滤波器的通用结构。某一离散时间的输入信号input (k)经过具有一定系统函数H(Z)的数字滤波器后输出期望频谱的信号output (k)。为得到期望频谱的输出信号output (k),系统函数H(Z)需要根据输入信号和期望输出进行调整。系统函数H(Z)的调整反映在实际设计中,包括对滤波器类型(FIR或IIR滤波器)、滤波器阶数Order(极点和零点的个数)、滤波器的幅频响应的通带特性、滤波器中心频率f。和滤波器带宽Bw等参数的设计和调整。用电路实现数字滤波器时,由于滤波器类型(FIR或IIR滤波器)、滤波器阶数、滤波器设计方法等参数的改变会影响电路的结构和硬件的连接方式,而滤波器的幅频响应的通带特性、滤波器中心频率f。和滤波器带宽Bw是可通过改变滤波器的系数配置的。随着信号处理系统的广泛应用和信号的日益复杂,一个系统的设计往往需要大量的信号滤波工作,对于每一个需要用不同系统函数来处理的信号配置一块电路的方法显然不利于提高系统的集成化程度和器件的利用率。所以,集成电路中的滤波器的设计一般是在硬件结构固定的情况下,通过配置滤波器系数来改变系统函数H(Z),来实现可配置系数的滤波器。图2给出了传统的可配置系数的滤波器的结构。其包括一个与数字滤波器连接的滤波器系数存储器,在存储器中存储滤波器系数,数字滤波器根据滤波需要从滤波器系数存储器中调用相应的滤波器系数来改变系统函数,以满足同一系统中不同信号的滤波需求。这种滤波器实现方案的缺点是滤波器系数要根据滤波需求选择,因此必须在存储器中存储大量的滤波器系数。例如,当所需滤除的信号中心频率f。在AU'/厂 范围内变化时,为保证滤波准确度需要在R范围内每隔StepHz存储一组滤波器系数,那么滤波器每一个系数就需要存储至少I+个值。假设一个系统中的信号的中心频率变化范围在R[10MHz,20MHz],而为保证滤波准确度,所选的step为100Hz,直接存储滤波器系数就意味着每个滤波器系数需要存储100001个值。如果设计的滤波器是多阶的滤波器时,需要存储的系数值更将是一个巨大的数字。

发明内容
本发明公开了一种可配置系数的数字滤波器和实现方法,在存储器中不直接存储滤波器系数,而是存储滤波器系数按一定算法进行拟合后的拟合因子,在保证滤波准确度的情况下,大量节约用于存储滤波器系数的存储空间。本发明的技术方案是一种可配置系数的数字滤波器,其特征在于,包括拟合因子存储器、系数计算模块和数字滤波器,所述数字滤波器通过所述系数计算模块连接所述拟合因子存储器;所述拟合因子存储器用于存储通过拟合算法将滤波器系数进行拟合后的拟合因子;所述系数计算模块用于根据输入的控制信息读取拟合因子存储器中相应的拟合因子计算得出所需的滤波器系数;所述数字滤波器使用系数计算模块计算出的滤波器系数对输入的数字信号进行滤波。所述拟合因子存储器中存储的拟合因子是采用分段的一元线性回归拟合算法拟合后的所有Num个滤波器系数在每一拟合段变化范围内的拟合斜率…Mfam]和拟合截距。所述系数计算模块的结构包括Num个乘法器和Num个加法器,所述拟合因子存储器分别连接每个乘法器的拟合斜率数据输入端和每个加法器的拟合截距数据输入端,每个乘法器的输出端连接一个加法器的另一输入端,每个加法器的输出端均连接数字滤波器;所述控制信息输入至每个乘法器的另一输入端,控制信息分别与输入给每个乘法器的相应的拟合斜率相乘后再通过与之连接的加法器与对应的拟合截距相加,所得结果分别输出给数字滤波器。一种可配置系数的数字滤波器的实现方法,其特征在于,在拟合因子存储器中存储通过拟合算法将滤波器系数进行拟合后的拟合因子;通过系数计算模块根据输入的控制信息读取拟合因子存储器中的拟合因子计算出所需的滤波器系数;经系数计算模块计算出 的滤波器系数直接作用于数字滤波器,对输入的数字信号进行滤波。所述对滤波器系数进行拟合的方法包括对滤波器系数进行分段拟合,所述分段拟合的步骤包括1)将滤波器参数变化的范围分为M段,其中,M为自然数;2)对每段范围内的每一个滤波器系数进行拟合,并对拟合结果进行修正,得出每个滤波器系数在拟合的每一段对应的一组拟合因子;3)在拟合因子存储器中存储对应于M个拟合分段的M组拟合因子,通过每组拟合因子能计算出每一段范围内的所有滤波器系数。所述分段拟合得出的拟合因子是当只有一个滤波器参数变化时采用以该参数为自变量的一元线性回归拟合算法拟合出的拟合斜率和拟合截距,根据拟合后得出的拟合斜率和拟合截距,所述可配置滤波器实现的步骤包括I)控制信息生成①将滤波器参数变化的范围分为M段,判断出该参数f处于哪一段范围内,若参数f在所有分段中的第m段,得出第m段所对应的拟合因子存储器的读地址;②计算出该参数f超出第m段起始点多少个step (取整),记为t(f)
,(,) = (/-/:j/ .1 <m < M/ 卿.
(I)2)将第m段所对应的拟合因子存储器的读地址输入至拟合因子存储器,得到相应地址的存储数据,该地址的存储数据中包含了滤波器所有Num个系数在该段变化范围内拟合的斜率,…和拟合的截距[ΛΚ,,···,Mfm];
3)将控制信息t (f)以及拟合因子存储器中存储的Num个拟合斜率和Num个拟合截距输入至系数计算模块,其中拟合斜率分别与t(f)相乘,并与对应的拟合截距相加即得到参数为f时所有Num个滤波器系数[coef1 (f),coef2 (f),…coefNum(f)]的估计
Coefnum (J) 二 ss: X/(/) + bb:,num 二 1,2,· ·-Num
(2)4)将得到的所有Num个滤波器系数作为滤波器的参数对输入信号进行滤波,即可得到滤波后的信号。所述采用分段的一元线性回归拟合算法得到拟合斜率和拟合截距的方法,包括以下步骤
I)在滤波器参数变化范围内,将参数变化以步长P增加,采集滤波器系数拟合样本;2)将采集到的滤波器系数的样本空间均匀分为M段;3)计算各段样本空间中的任一元素相对于该段起始元素的斜率,所述斜率是指参数变化每改变一单位P时,所述滤波器系数数值变化的多少;并以各段起始元素为截距,对各段进行第一次拟合;4))计算各段第一次拟合的拟合误差以及各段第一次拟合误差的平均斜率;5)修正拟合斜率,进行第二次拟合;6)计算各段第二次拟合的误差以及各段第二次拟合误差的均值;7)修正拟合截距,进行第三次拟合;8)计算各段第三次拟合误差,并判断误差范围能否满足拟合精度要求,若误差范围不能满足拟合精度要求,则增加分段数,减小每段参数变化所跨越的范围,重复步骤2)至7),直至拟合精度达到精度要求;如果误差范围满足拟合精度要求,将以P为变化单位的拟合变为以期望单位step为变化单位的拟合,输出变化后拟合斜率和拟合截距。本发明的技术效果本发明公开的一种可配置系数的数字滤波器和实现方法,其特点是滤波器系数并不是直接在存储器中存储和调用的,而是将滤波器系数按一定算法进行拟合后在存储器中存储拟合后的拟合因子,滤波器系数是通过调用存储的拟合因子结合控制信息在系数计算模块中计算得出的。其中系数计算模块的结构和控制信息的内容需根据所采用的拟合算法而调整。拟合出的函数可以为一元(即仅以一个滤波器参数做自变量)乃至多元的拟合函数,拟合中所采用算法可以为本发明提供的分段的一元线性回归拟合算法,也可以为采用其他常用拟合算法,如最小二乘法等。对滤波器系数进行拟合且仅存储拟合后的拟合因子的做法能够在保证滤波准确度的情况下,大量节约用于存储滤波器系数的存储空间,实现可配置系数的数字滤波器。本发明还给出了一种滤波器系数的分段的一元线性回归拟合算法,该算法是针对滤波器参数仅有一个可变时,对滤波器系数进行拟合的一种简单算法。该算法的主要特点是,I.对滤波器系数进行分段拟合,所分段数和每段所跨越的因变量的可变范围均可根据拟合精度需求调整;2.拟合中包含两步拟合因子的调整步骤,这两步拟合因子的调整是为了提高拟合的精度而设计,实际应用中可根据实际需要跳过或重复进行其中的一步或全部步骤;3.该算法在拟合中所用变化单位P与实际使用中所用的变化单位step可相同也可不同,二者不同时,仅需在拟合完成后,进行单位转换即可。


图I为一般数字滤波器的通用结构示意图。图2为传统的可配置系数滤波器的结构示意图。图3为本发明的一种可配置系数的数字滤波器的通用结构示意图。图4为本发明的一种可配置系数的数字滤波器的实施例示意图。图5为任意一个滤波器系数采用分段一元线性回归拟合的具体过程流程图。
具体实施方式

以下结合附图对本发明的实施例做进一步的详细说明。如图3所示,是本发明给出的一种可配置系数的数字滤波器的通用结构示意图。一种可配置系数的数字滤波器,包括拟合因子存储器、系数计算模块和数字滤波器,拟合因子存储器连接系数计算模块,系数计算模块连接数字滤波器;拟合因子存储器用于存储通过拟合算法将滤波器系数进行拟合后的拟合因子;系数计算模块用于根据输入的控制信息读取拟合因子存储器中相应的拟合因子计算得出所需的滤波器系数;数字滤波器使用系数计算模块计算出的滤波器系数对输入的数字信号进行滤波。其中,拟合因子存储器并不直接存储滤波器系数,而是存储各个滤波器系数进行拟合后的拟合因子;此处所述的拟合因子可以是滤波器系数进行一阶线性拟合后的拟合斜率和拟合截距,也可以是滤波器系数用高阶函数进行拟合后的各阶的因数,甚至是使用运用统计分布函数或其它数学手段拟合的参数。系数拟合的方法不同不仅会影响拟合因子存储器中所存储的拟合因子的数量以及控制信息的内容,也决定了系数计算模块的结构;系数计算模块用于根据输入的控制信息从拟合因子存储器中调用出相应的拟合因子与控制信息结合计算得出所述滤波器系数;经系数计算模块计算出的滤波器系数可直接作用于数字滤波器电路,达到滤波效果。系数拟合方法的不同,则拟合后所需存储的拟合因子的数量不同,系数计算模块的结构也不同。系数拟合的原则是在保证拟合精度的情况下,所采用的系数拟合算法能使得所需存储的拟合因子尽量少,系数计算模块结构尽量简单,易实施。可配置系数的数字滤波器的实现方法,是在拟合因子存储器中存储通过拟合算法将滤波器系数进行拟合后的拟合因子;通过系数计算模块根据输入的控制信息读取拟合因子存储器中的拟合因子计算出所需的滤波器系数;经系数计算模块计算出的滤波器系数直接作用于数字滤波器,对输入的数字信号进行滤波。对滤波器系数进行拟合的方法,采用的是对滤波器系数进行分段拟合,在拟合因子存储器中存储的拟合因子是采用一定算法对滤波器系数进行分段拟合后的结果。分段拟合的主要步骤包括1)将滤波器参数变化的范围分为M段(M为自然数);2)对每段范围内的每一个滤波器系数进行拟合,并对拟合结果进行修正,得出每个滤波器系数在拟合的每一段对应的一组拟合因子;3)在拟合因子存储器中存储对应于M个拟合分段的M组拟合因子,通过每组拟合因子能计算出每一段范围内的所有滤波器系数。本发明除图3中给出的可配置系数滤波器的通用结构外,还给出了一个有Num个系数且其他参数不变仅中心频率在范围内变化的可配置系数的数字滤波器的实施例。该实施例中所采用的系数拟合方式是分段的一阶线性拟合,即将任意中心频率范
围,/rO分为M段(M为自然数),每一个滤波器系数在每段中采用一元线性回归来拟
合;拟合出的滤波器系数的估计是关于中心频率的分段函数,滤波器每个系数在拟合的每一段都有一组拟合斜率和拟合截距;在拟合因子存储器中存储了 M组数据,每组数据包含所有Num个滤波器在一段中心频率变化范围内的拟合斜率与拟合截距,其中拟合斜率是以中心频率相对于每段的起始频率每改变StepHz时,滤波器系数变化的多少来衡量的。如图4所示,为本发明的一种可配置系数的数字滤波器的实施例示意图,其中拟合因子存储器中存储的拟合因子是采用分段的一元线性回归拟合算法拟合后的所有Num个滤波器系数在每一拟合段变化范围内的拟合斜率[<,,和拟合截距Vbb1m,bbl,-Mum];系数计算模块的结构包括Num个乘法器和Num个加法器,拟合因子存储器分别连接每个乘法器的拟合斜率数据输入端和每个加法器的拟合截距数据输入端,每个乘法器的输出端连接一个加法器的另一输入端,每个加法器的输出端均连接数字滤波器; 所述控制信息输入至每个乘法器的另一输入端,控制信息分别与输入给每个乘法器的相应的拟合斜率相乘后再通过与之连接的加法器与对应的拟合截距相加,结果分别输出给数字滤波器。根据图4的一种可配置系数的数字滤波器的实施例,具有Num个系数且其他参数不变仅中心频率在)范围内变化的可配置系数的数字滤波器的具体实现方案I)控制信息生成①将滤波器参数变化的范围分为M段,判断出该参数f处于哪一段范围内,若参数f在所有分段中的第m段,得出第m段所对应的拟合因子存储器的读地址;②计算出该参数f超出第m段起始点多少个step (取整),记为t(f)1(f) = (, - ^Ys1ep ,l<m<M(I)2)将第m段所对应的拟合因子存储器的读地址输入至拟合因子存储器,得到相应地址的存储数据,该地址的存储数据中包含了滤波器所有Num个系数在该段变化范围内拟合的斜率[<,<,···<-]和拟合的截距[耐,呢,…,姑3)将控制信息t (f)以及拟合因子存储器中存储的Num个拟合斜率和拟合截距输入至系数计算模块,其中拟合斜率分别与t(f)相乘,并与对应的拟合截距相加即得到参数为f时所有Num个滤波器系数[coef1 (f),coef2 (f),…coefNum(f)]的估计
coef (/) = ss:m X/(/) + bb:m,num = 1,2,···Num
(2)4)将得到的所有Num个滤波器系数作为滤波器的参数对输入信号进行滤波,即可得到滤波后的信号。本领域的技术人员可以理解,图4中所给出的实施例,其适用范围、所采用的系数拟合方法、控制信息的内容、系数计算模块的结构等仅是示例性的,而非限制性的。该实施例意在说明适用范围、系数拟合方法、控制信息和系数计算模块的结构等需根据滤波需求配合和设计。如,适用范围可以是中心频率可变的滤波器设计,也可以是带宽Bw可变或其他参数可变的滤波器设计;系数拟合方法可以采用分段拟合,也可以不分段;控制信息除包含存储器的读地址等信息外也可以包含其他信息,如为实现电路的复用给出的时钟信息和使能信息等;系数计算模块可以为实施例中给出的采用分段一元线性回归拟合方法对系数拟合时的简单乘加计算结构,也可以为其他拟合算法相应的计算结构。本发明还在图5中给出了一种滤波 器系数的分段一元线性回归拟合的算法的实
施例。该实施例是中心频率变化范围的带阻滤波器的滤波器系数的分段一元线
性回归拟合的方案。根据滤波器阶数的不同,滤波器可能具有多个系数,其中任一系数都可通过本发明中提出的滤波器系数拟合算法进行拟合,现以所有Num个滤波器系数中任意一个系数a的拟合为例说明该分段一元线性回归拟合的具体过程I)在中心频率变化范围//& )内,将中心频率f。以步长P增加,采集相应中心频率下的滤波器系数,作为拟合的样本;设采集到的滤波器任一系数有一长度为N+1的样本空间{3(0),&(1>"&(1^"&(吣},其中¥ = (/7/-/厂')// 』为整数,&(11)为中心频率是/T + xp时获得的滤波器系数a的值;2)将采集到的滤波器系数a的样本空间均匀分为M段,则该样本空间可表示为M个元素数为K的子空间的集合{A (I),A⑵一A(IH) -A(M)},K= (N+1) /M(取整),第m段A (m)中第一个元素B111,i为样本空间中的第(111-1)\1(个元素&((111-1)\1(),B111,3寸应的中心频率为第m分段所包含的中心频率范围的起始频率
权利要求
1.ー种可配置系数的数字滤波器,其特征在于,包括拟合因子存储器、系数计算模块和数字滤波器,所述数字滤波器通过所述系数计算模块连接所述拟合因子存储器;所述拟合因子存储器用于存储通过拟合算法将滤波器系数进行拟合后的拟合因子;所述系数计算模块用于根据输入的控制信息读取拟合因子存储器中相应的拟合因子计算得出所需的滤波器系数;所述数字滤波器使用系数计算模块计算出的滤波器系数对输入的数字信号进行滤波。
2.根据权利要求I所述的ー种可配置系数的数字滤波器,其特征在于,所述拟合因子存储器中存储的拟合因子是采用分段的一元线性回归拟合算法拟合后的所有Num个滤波器系数在每ー拟合段变化范围内的拟合斜率[ぺ,,&4…和拟合截距[MX…,MfH。
3.根据权利要求2所述的ー种可配置系数的数字滤波器,其特征在于,所述系数计算模块包括Num个乘法器和Num个加法器,所述拟合因子存储器分别连接每个乘法器的拟合斜率数据输入端和每个加法器的拟合截距数据输入端,每个乘法器的输出端连接ー个加法器的另ー输入端,每个加法器的输出端均连接数字滤波器;所述控制信息输入至每个乘法器的另ー输入端,控制信息分别与输入给每个乘法器的相应的拟合斜率相乘后再通过与之连接的加法器与对应的拟合截距相加,所得结果分别输出给数字滤波器。
4.ー种可配置系数的数字滤波器的实现方法,其特征在于,在拟合因子存储器中存储通过拟合算法将滤波器系数进行拟合后的拟合因子;通过系数计算模块根据输入的控制信息读取拟合因子存储器中的拟合因子计算出所需的滤波器系数;经系数计算模块计算出的滤波器系数直接作用于数字滤波器,对输入的数字信号进行滤波。
5.根据权利要求4所述的可配置系数的数字滤波器的实现方法,其特征在干,所述对滤波器系数进行拟合的方法包括对滤波器系数进行分段拟合,所述分段拟合的步骤包括I)将滤波器參数变化的范围分为M段,其中,M为自然数;2)对每段范围内的每ー个滤波器系数进行拟合,并对拟合结果进行修正,得出每个滤波器系数在拟合的每一段对应的ー组拟合因子;3)在拟合因子存储器中存储对应于M个拟合分段的M组拟合因子,通过每组拟合因子能计算出每一段范围内的所有滤波器系数。
6.根据权利要求5所述的可配置系数的数字滤波器的实现方法,其特征在干,所述分段拟合得出的拟合因子是当只有一个滤波器參数变化时采用以该參数为自变量的一元线性回归拟合算法拟合出的拟合斜率和拟合截距,根据拟合后得出的拟合斜率和拟合截距,所述可配置滤波器实现的步骤包括 O控制信息生成①将滤波器參数变化的范围分为M段,判断出该參数f处于哪一段范围内,若参数f在所有分段中的第m段,得出第m段所对应的拟合因子存储器的读地址; ②计算出该參数f超出第m段起始点多少个step (取整),记为t(f) (I)2)将第m段所对应的拟合因子存储器的读地址输入至拟合因子存储器,得到相应地址的存储数据,该地址的存储数据中包含了滤波器所有Num个系数在该段变化范围内拟合的斜率和拟合的截距[岭し呢,…,· ]; 3)将控制信息t(f)以及拟合因子存储器中存储的Num个拟合斜率和拟合截距输入至系数计算模块,其中拟合斜率分别与t(f)相乗,并与对应的拟合截距相加即得到參数为f时所有Num个滤波器系数[coef1 (f),coef2 (f),…coefNum(f)]的估计
7.根据权利要求5所述的可配置系数的数字滤波器的实现方法,其特征在于,所述采用分段的一元线性回归拟合算法得到拟合斜率和拟合截距的方法,包括以下步骤 1)在滤波器參数变化范围内,将參数变化以步长P増加,采集滤波器系数拟合样本; 2)将采集到的滤波器系数的样本空间均匀分为M段; 3)计算各段样本空间中的任一元素相对于该段起始元素的斜率,所述斜率是指參数变化每改变一単位P时,所述滤波器系数数值变化的多少;并以各段起始元素为截距,对各段进行第一次拟合; 4))计算各段第一次拟合的拟合误差以及各段第一次拟合误差的平均斜率; 5)修正拟合斜率,进行第二次拟合; 6)计算各段第二次拟合的误差以及各段第二次拟合误差的均值; 7)修正拟合截距,进行第三次拟合; 8)计算各段第三次拟合误差,并判断误差范围能否满足拟合精度要求,若误差范围不能满足拟合精度要求,则増加分段数,减小每段參数变化所跨越的范围,重复步骤2)至7),直至拟合精度达到精度要求;如果误差范围满足拟合精度要求,将以P为变化単位的拟合变为以期望単位step为变化単位的拟合,输出变化后拟合斜率和拟合截距。
全文摘要
本发明公开的一种可配置系数的数字滤波器和实现方法,在存储器中存储的是滤波器系数按一定算法进行拟合后的拟合因子,在保证滤波准确度的情况下,大量节约用于存储滤波器系数的存储空间。本发明可配置系数的数字滤波器包括拟合因子存储器、系数计算模块和数字滤波器,数字滤波器通过系数计算模块连接拟合因子存储器;拟合因子存储器用于存储通过拟合算法将滤波器系数进行拟合后的拟合因子;系数计算模块用于根据输入的控制信息读取拟合因子存储器中相应的拟合因子计算得出所需的滤波器系数;数字滤波器使用系数计算模块计算出的滤波器系数对输入的数字信号进行滤波。
文档编号H03H17/02GK102868385SQ20121036095
公开日2013年1月9日 申请日期2012年9月25日 优先权日2012年9月25日
发明者不公告发明人 申请人:北京东方联星科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1