FIR数字滤波器的设计
- 线性相位FIR滤波器的特点
- 单位冲激响应:\(h(n),0\leq n\leq N-1\)
- 系统函数:\(H(z)=\sum_{n=0}^{N-1}h(n)z^{-n}\)
- 零极点分布:无穷远处N-1个零点,z=0处有一个N-1阶极点
- 线性相位条件
线性相位是FIR滤波器的一个优势,因为FIR滤波器相比于IIR滤波器的阶数一般要高很多。
\(H(e^{j\omega})=\sum_{n=0}^{N-1}h(n)e^{-j\omega n}=\pm|H(e^{j\omega})|e^{j\theta(\omega)}\)
线性相位是指\(\theta(\omega)\)是\(\omega\)的线性函数。根据它们之间的线性关系,将线性相位分为两种:正比例;一次函数。- 第一类线性相位:\(\theta(\omega)=-\tau\omega\)
若实序列\(h(n)\)为第一类线性相位,则\(\sum_{n=0}^{N-1}h(n)e^{-j\omega n}=\sum_{n=0}^{N-1}h(n)\cos(\omega n)-j\sum_{n=0}^{N-1}h(n)\sin(\omega n)=\pm|H(e^{j\omega})|\cos(\omega \tau)\pm j|H(e^{j\omega})|\sin(\omega \tau)\) 于是:\(\tan(\omega\tau)=\frac{\sum_{n=0}^{N-1}h(n)\sin (\omega n)}{\sum_{n=0}^{N-1}h(n)\cos (\omega n)}\) \(\rightarrow \sum_{n=0}^{N-1}h(n)\sin[(\tau-n)\omega]=0\)\[\text{FIR系统满足线性相位的充要条件}\begin{cases} \text{$\tau=\frac{N-1}{2}$}\\ h(n)=h(N-1-n)\end{cases}$$ ,即h(n)为偶对称,对称中心为$\frac{N-1}{2}$ . \]同理可得,满足线性相位的冲要条件\(h(n)=-h(N-1-n),\tau=\frac{N-1}{2},\beta_0=\pm\frac{\pi}{2}\)
- 第一类线性相位:\(\theta(\omega)=-\tau\omega\)
窗函数设计法
-
方法及原理
性能指标\(\rightarrow\)理想低通滤波器的系统函数\(\rightarrow\)反变换时域无限长信号\(\rightarrow\)信号截断\(\rightarrow\)右移变因果系统。
线性相位理想低通滤波器的频率响应(周期连续)为:\[H_d(e^{j\omega)})=\begin{cases} e^{-j\omega\alpha}&-\omega_c \leq \omega \leq\omega_c\\ 0&-\pi\leq\omega\leq-\omega_c, \omega_c\leq\omega\leq\pi \end{cases} \]经过离散傅里叶反变换对应的序列(非周期离散)为:
\[h_d(n)=\frac{\omega_c}{\pi}\frac{\sin[\omega_c(n-\alpha)]}{\omega_c(n-\alpha)} \]该序列为中心点为\(\alpha\)的偶对称无限长非因果序列。
现需要将其转变为偶对称有限长因果序列。取矩形窗\(w(n)=R_N(n)\),则FIR滤波器的单位抽样响应:\[h(n)=h_d(n)=\begin{cases} h_d(n) & 0\leq n\leq N-1 \\ 0 & \text{else}\end{cases} \]根据第一类线性相位的条件,应有:\(\alpha=\frac{N-1}{2}\),即:
\[h(n)=\frac{\omega_c}{\pi}\frac{\sin[\omega_c(n-\frac{N-1}{2})]}{\omega_c(n-\frac{N-1}{2})},0\leq n \leq N-1 \]FIR滤波器的频率响应的幅度函数为h(n)的幅度函数与w(n)幅度函数的卷积,即为\(H(\omega)=\frac{1}{2\pi}\int_{-\pi}^{\pi}H_d(\omega)W_R(\omega-\theta)d\theta\),变换的具体过程如下:

可以看做\(W_R(\theta)\)平移\(\omega\)之后在\([-\omega_c,\omega_c]\)内的积分(因为\(H_d(\theta)\)在此区间内为1).\(\omega\) \(H(\omega)\) 0 近似\(W_R(\theta)\)的全部面积 \(\omega_c\) 0.5\(H(0)\) \(\omega_c-\frac{2\pi}{N}\) 最大,正肩峰 \(\omega_c+\frac{2\pi}{N}\) 最小,负肩峰 \(>\omega_c+\frac{2\pi}{N}\) 在零值上下波动 \(<\omega_c-\frac{2\pi}{N}\) 在\(H(0)\)上下波动 \(-\frac{2\pi}{N},\frac{2\pi}{N}\)为窗函数频谱主瓣的两个零点,主瓣宽度为\(\frac{4\pi}{N}\)。
从图中可以看出,FIR滤波器的幅值函数在\(\omega_c\pm\frac{2\pi}{N}\)出现肩峰。改变N值改变主瓣宽度,使过渡带变得更窄,但是并不能改变正肩峰与负肩峰的相对比例(相对比例由窗函数的形状决定,此为Gibbs效应)。 -
几种窗函数的对比
窗函数 窗谱性能指标 加窗后滤波器性能指标 旁瓣峰值幅度/dB 主瓣宽度/(2pi/N) 过渡带宽△w/(2pi/N) 最小阻带衰减/dB 矩形窗 -13 2 0.9 -21 三角形窗 -25 4 2.1 -25 汉宁窗 -31 4 3.1 -44 海明窗 -41 4 3.3 -53 布莱克曼窗 -57 6 5.5 -74 凯泽窗(β=8.865) -57 5 -80 阻带最小衰减只由窗函数形状决定。过渡带宽与窗形状和窗宽N都有关。
-
设计步骤
graph LR A(理想的频率响应函数及技术指标)-->B(理想的单位抽样响应) D(根据阻带衰减选择窗函数)-->C(根据过渡带宽度确定N) E(FIR滤波器的单位冲激响应) B-->D C-->E技术指标包括:阻带衰减和过渡带宽。一般取\(\omega_c\)为通带截止频率和阻带截止频率的平均值
从理想的频率响应函数(\(H_d(e^{j\omega})\))得到理想的单位抽样响应\(h_d(n)\),有两种方法:- 公式法
- IFFT法:对\(H_d\)进行M点IFFT变换,要求M>>N
最终得到FIR滤波器的h(n),并求得\(H(e^{j\omega})\),进行验证
浙公网安备 33010602011771号