技术领域
本发明涉及数字滤波器领域,具体涉及一种节省乘法器的数字滤波器及其实现方法。
背景技术
在数字信号处理中,FIR滤波器经常是一个数字处理系统里不可或缺的基本模块。滤波器的作用在于滤除所要处理信号的带外噪声,避免噪声影响信号的后续处理,它普遍应用在通信处理、视频处理、语音处理等领域。FIR滤波器的实现方式较为简单,目前存在多种设计FIR滤波的方法。但在滤波性能要求较高的时候,即滤波器的过渡带要求较窄时,一般设计所得的滤波器阶数会很高,而阶数越高意味着其中需要完成的乘法操作越多,造成系统乘法器资源的大量消耗。
输入x(n)经过FIR滤波器后得到输出y(n)的通用数学表达如下所示
其中h(m)为FIR滤波器系数,M为滤波器系数长度,n为时间序号,m为求和所用序号。FIR滤波器实现结构主要分为直接型结构和对称型结构两种。直接型结构的直接根据滤波器公式设计,这种结构设计下乘法器的消耗数量等于滤波器的阶数,实用性较低;对称型结构是利用滤波器系数的对称性,使得处于对称位置的两个数据共用一个乘法器,乘法器的消耗可以缩减为直接型的一半,但依然不能更好地降低乘法器的消耗。
发明内容
为了克服现有技术存在的缺点与不足,本发明的首要目的是提供一种节省乘法器的数字滤波器。
本发明的次要目的是提供一种节省乘法器的数字滤波器的实现方法。
本发明首要目的采用如下技术方案:
一种节省乘法器的数字滤波器,包括:
一种节省乘法器的数字滤波器包括左侧迭代结构的输出y
y(n)=y
左侧迭代结构,利用等效FIR滤波器系数的左侧部分系数进行迭代运算,作为滤波器左侧系数的滤波输出;
中间对称结构,利用等效FIR滤波器系数的中间部分系数以及对称型结构滤波器进行运算,作为滤波器中间系数的滤波输出;
右侧迭代结构,利用等效FIR滤波器系数的右侧部分系数进行迭代运算,作为滤波器右侧系数的滤波输出。
所述右侧迭代结构与左侧迭代结构相同,只是乘法器系数不同。
所述左侧迭代结构包括:
迭代计算单元,对待处理输入信号x(n)进行信号迭代运算,得到迭代输出信号y'
系数相乘单元,对迭代计算单元输出信号y'
求和单元,对系数相乘单元输出信号y
所述迭代计算单元对等效FIR滤波器系列的左侧部分系数进行迭代运算,包括两个复数乘法器及两个延时器,其中对应时域运算输出如下公式所示:
β
y'
其中n为时间序号,L
所述系数相乘单元包括两个实数乘法器及一个减法器,将迭代输出信号y'
所述系数相乘单元的信号处理过程如下:
y
y
其中C
所述求和单元,对所有系数相乘输出信号进行求和,得到左侧迭代结构的输出y
求和单元所进行的处理如下公式所示
其中K为复指数函数总阶数,对2K路并行的系数相乘输出信号y
所述右侧迭代结构与左侧迭代结构的结构设计完全相同,区别在于乘法器系数。右侧迭代结构参数设置在对应的乘法器系数上,并输入信号x(n)得到右侧迭代结构的输出y
本发明次要目的是采用如下技术方案:
一种节省乘法器的数字滤波器的实现方法,本发明中节省乘法器的数字滤波器的左侧、右侧迭代结构中乘法器系数及延时量,以下均简称为拟合参数,拟合参数可以在数学软件(例如MATLAB等)通过等效FIR滤波器系数和正交匹配追踪(OMP)得到,而中间迭代结构中乘法器系数直接采用等效FIR滤波器的中间系数。由于等效滤波器系数的对称性,在数学软件计算右侧迭代结构的乘法器系数时,部分系数的计算过程无需重复计算。
拟合参数在数学软件通过正交匹配追踪得到,具体过程如下:
设定等效FIR滤波器的左侧系数、右侧系数与该实现结构拟合参数的误差阈值,将拟合参数的求取转化为最小化拟合误差问题,通过OMP算法寻找出平均相对误差小于误差阈值的拟合参数,然后根据获得的拟合参数,设置对应结构的乘法器系数以及延时器的延时量,完成数字滤波器的设计。所述拟合参数包括基波角频率、相位、幅度系数、拟合长度、总阶数。
本发明的有益效果:
本发明根据所需滤波器指标,通过节省乘法器的数字滤波器结构实现等效的滤波处理,用迭代结构完成滤波器左侧、右侧系数的运算,用对称结构完成滤波器中间系数的运算,然后将三者求和得出整体滤波器的输出。
该滤波器结构在FPGA或者DSP实现所消耗的乘法器数量总共是28K+(M+1)/2-L
附图说明
图1是本发明迭代计算单元结构示意图;
图2是本发明系数相乘单元结构示意图;
图3是本发明求和计算单元结构示意图;
图4是本发明一种节省乘法器的数字滤波器的结构示意图;
图5是本发明拟合参数的求解过程示意图。
具体实施方式
下面结合实施例及附图,对本发明作进一步地详细说明,但本发明的实施方式不限于此。
实施例
考虑一个利用窗函数法设计等效的传统直接型FIR滤波器,其具体参数设置如下,截止频率为ω
一种节省乘法器的数字滤波器,包括左侧迭代结构,中间对称结构以及右侧迭代结构。
所述左侧迭代结构及右侧迭代结构具体通过指数函数拟合等效FIR滤波器系数的两侧系数,得到两侧系数的滤波输出y
所述左侧迭代结构,利用等效FIR滤波器系数的左侧部分系数进行迭代运算,作为滤波器左侧系数的滤波输出;包括迭代计算单元、系数相乘单元以及求和单元。
迭代计算单元,具体如图1所示,用于对输入信号进行迭代运算以获得迭代输出信号y'
系数相乘单元,具体如图2所示,对迭代计算单元的迭代输出信号y'
求和单元,具体如图3所示,对系数相乘输出信号进行求和运算并得到左侧迭代结构输出y
右侧迭代结构,与左侧迭代结构完全相同,区别在于乘法器系数的设置。由于等效FIR滤波器系数的对称性,在数学软件部分计算过程可以无需重复计算,通过OMP算法得出参数设置在对应的乘法器系数上,将信号输入右侧迭代结构得到右侧迭代结构输出y
中间迭代结构,使用传统FIR滤波器的对称型结构,其中乘法器系数为等效滤波器的中间非拟合部分系数,将信号输入中间系数对称结构得到中间系数结构输出y
本实施例中一种节省乘法器的数字滤波器的总体结构如图4所示,将左侧迭代结构、中间迭代结构及右侧迭代结构的输出y
本节省乘法器的数字滤波器的实现方法一共使用108个乘法器,在相同滤波情况下,用直接型结构实现需要343个乘法器以及用对称型结构实现需要172个乘法器的FIR滤波器,此方法更加有效地节省了数字滤波器中的乘法器消耗,验证了该发明的有益效果。
为了实现节省乘法器的数字滤波器结构,要获得拟合参数,其具体过程如下:
获得和FIR滤波器左侧、右侧系数良好的拟合,设左侧系数、右侧系数与该实现结构拟合参数的误差阈值,将拟合参数的求取问题转化为最小化拟合误差e问题。
其中e=[e(0),e(1),...,e(L
如图5所示,首先需要设置拟合函数与等效滤波器系数可接受的误差阈值η,复指数函数总阶数K,滤波器系数拟合最小长度N
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受所述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
机译: 共享存储器和共享乘法器可编程数字滤波器的实现
机译: 共享存储器和共享乘法器可编程数字滤波器的实现
机译: 共享存储器和共享乘法器可编程数字滤波器的实现