本文主要是介绍FIR滤波器抽头系数和冲激响应的关系,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
设输入序列为 x ( n ) x(n) x(n),抽头系数为 ω ( m ) \omega(m) ω(m),则输出序列可表示为
y ( n ) = ∑ m ω ( m ) x ( n − m Δ ) (1) y(n)=\sum_m \omega(m)x(n-m\Delta) \tag{1} y(n)=m∑ω(m)x(n−mΔ)(1)
其中, Δ \Delta Δ表示延迟单元。若 Δ = 1 \Delta=1 Δ=1,则表示图1中是以一个采样点为单位进行延迟的。若 Δ ≠ 1 \Delta \neq 1 Δ=1,则表示延迟单元不等于一个采样点,比如在FFE均衡器中,延迟单元通常为一个符号周期,此时 Δ \Delta Δ等于一个符号包含的采样点数。
设FIR滤波器的冲激响应为 h ( n ) h(n) h(n),则滤波器输出 y ( n ) y(n) y(n)可表示为输入序列 x ( n ) x(n) x(n)和冲激响应 h ( n ) h(n) h(n)的卷积,表示如下:
y ( n ) = ∑ m h ( m ) x ( n − m ) (2) y(n)=\sum_m h(m)x(n-m) \tag{2} y(n)=m∑h(m)x(n−m)(2)
对比(1)(2)可发现两个式子形式相同,差异体现在延迟单元上,当延迟单元 Δ = 1 \Delta=1 Δ=1时,两者的作用完全一致。即若FIR滤波是以一个样点作为延迟单元的,则其抽头系数和冲激响应是等价的。否则,两者是有差别的。
通常情况下, Δ ≥ 1 \Delta \geq 1 Δ≥1,不是一般地,我们令 Δ = 2 \Delta=2 Δ=2,进行分析,此时将(1)和(2)重新整理如下:
y ( n ) = ω ( 0 ) x ( n ) + ω ( 1 ) x ( n − 2 ) + ω ( 2 ) x ( n − 4 ) + . . . + ω ( M − 1 ) x ( n − 2 ( M − 1 ) ) = ω ( 0 ) x ( n ) + 0 ∗ x ( n − 1 ) + ω ( 2 ) x ( n − 4 ) + . . . + 0 ∗ x ( n − 2 M + 1 ) + ω ( M − 1 ) x ( n − 2 ( M − 1 ) ) (3) y(n)=\omega(0)x(n)+\omega(1)x(n-2)+\omega(2)x(n-4)+...+\omega(M-1)x(n-2(M-1))\\=\omega(0)x(n)+0 *x(n-1)+\omega(2)x(n-4)+...+0*x(n-2M+1)+\omega(M-1)x(n-2(M-1))\tag{3} y(n)=ω(0)x(n)+ω(1)x(n−2)+ω(2)x(n−4)+...+ω(M−1)x(n−2(M−1))=ω(0)x(n)+0∗x(n−1)+ω(2)x(n−4)+...+0∗x(n−2M+1)+ω(M−1)x(n−2(M−1))(3)
y ( n ) = h ( 0 ) x ( n ) + h ( 1 ) x ( n − 1 ) + h ( 2 ) x ( n − 2 ) + . . . + h ( M − 1 ) x ( n − ( M − 1 ) ) (4) y(n)=h(0)x(n)+h(1)x(n-1)+h(2)x(n-2)+...+h(M-1)x(n-(M-1))\tag{4} y(n)=h(0)x(n)+h(1)x(n−1)+h(2)x(n−2)+...+h(M−1)x(n−(M−1))(4)
从上面的结果可知,若在相邻抽头系数中间插入 Δ − 1 \Delta-1 Δ−1个0,则可以利用输入序列和插0后的抽头系数进行卷积,求得输出序列。更一般地,若 Δ \Delta Δ为小数,则可以对 ω \omega ω进行插值,利用插值后的序列与输入序列进行卷积,求得输出序列。
这篇关于FIR滤波器抽头系数和冲激响应的关系的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!