每日精学 108|半带 FIR 抽取滤波器

2026-09-25

雷达 · 通信 · 电子战 / 基础精学 108

CIC 适合大倍率粗抽取,通带补偿和后续二倍变换常由半带 FIR 完成。

奇数长度线性相位半带 FIR 的除中心抽头外每隔一个系数为零,结合系数对称性后可显著减少二倍抽取器的乘法数量。

01
模型与符号

L:奇数滤波器长度(抽头)

h[n]:半带冲激响应(系数)

fc:四分之一采样率截止(cycles/sample)

As:阻带衰减(dB)

R=2:抽取因子(倍)

02
半带对称

令实对称奇数长度滤波器的中心索引为 D=(L−1)/2。去掉线性相位后,实幅度响应为

A(\omega)=e^{j\omega D}H(e^{j\omega}).

对具有半带交替零结构的系数,有

A(\omega)+A(\pi-\omega)=2h[D].

标准中心系数 h[D]=1/2 时右端为 1。该互补式适用于带符号的零相位响应 A,不能直接套用于复频响 H 或幅度模 |H|。本算例又做了直流增益归一化,中心系数为 0.500808226947,故互补和约为 1.001616453894。

03
交替零系数

对奇数长度奇对称索引设计,除中心外一组交替系数为零。实际实现只保留非零对称系数对。

04
抽取抗混叠

二倍抽取前必须抑制原数字频率 |f|>0.25 的分量,否则它们折叠到新基带。过渡带围绕四分之一采样率对称。

05
物理含义

半带滤波器只需区分频谱的一半保留区和一半舍弃区。对称约束使时域系数自然出现交替零值。

06
固定参数算例

MATLAB 用窗函数设计三十一抽头半带 FIR,验证交替零系数、通阻带响应,并演示二倍抽取对通带与阻带单音的处理。

MATLAB 固定参数数值验证结果
量数值
滤波器长度31
截止频率 / (周/样本)0.25
精确零系数个数14
中心系数0.500808226947
通带单音增益1.00325902987
阻带单音增益0.00059479743759
阻带与通带增益比 / dB-64.5408797682
抽取倍数2
图 1:半带 FIR 系数结构 幅频响应与二倍抽取抗混叠(子图 1)图 1:半带 FIR 系数结构 幅频响应与二倍抽取抗混叠(子图 2)图 1:半带 FIR 系数结构 幅频响应与二倍抽取抗混叠(子图 3)图 1:半带 FIR 系数结构 幅频响应与二倍抽取抗混叠(子图 4)

图 1 半带 FIR 系数结构 幅频响应与二倍抽取抗混叠

数值结果由配套 MATLAB 脚本在固定参数和固定随机种子下实际执行。脚本包含针对闭式关系 边界条件或估计误差的断言,并把 MATLAB 版本与关键数值写入独立结果文件。

07
数字实现的边界

RTL 只存储非零唯一系数,先相加对称样本再乘系数,并在偶数输出时刻计算。

配套 RTL 只实现本课中可明确量化的定点核函数或数据通路。浮点矩阵分解 概率统计和图形生成保留在 MATLAB 参考程序中。

08
适用范围

半带 FIR 用于多级二倍抽取 插值和 CIC 后级补偿。规格较严时可用等波纹设计替代简单窗函数。

09
工程上需要注意

  • 窗函数设计不保证最优阶数。

  • 系数量化会破坏精确零系数附近的阻带。

  • 群时延必须在多通道间对齐。

  • 抽取相位选择影响输出时间标记。

半带 FIR 利用交替零系数和对称性高效实现二倍采样率转换。其核心任务是在抽取前抑制将要折叠的高频分量。

内容依据:每日精学第 108 课《半带 FIR 抽取滤波器》。图表沿用原课固定参数数值结果,属于数值验证,不代表设备实测。

阅读9
分享
写评论...