Sinc5 是 AD7768-4 ADC 中一种高性能的数字滤波器架构,属于级联积分梳状(CIC, Cascaded Integrator-Comb)滤波器的变体。让我详细解释其原理和计算方法。
Sinc5 滤波器是什么
Sinc⁵(五次 sinc 函数) 是一种数字抽取滤波器,其频率响应为 sinc 函数的5次幂:
H(f)=(sin(πf/fs)πf/fs)5=sinc5(ffs)H(f) = \left(\frac{\sin(\pi f / f_s)}{\pi f / f_s}\right)^5 = \text{sinc}^5\left(\frac{f}{f_s}\right)H(f)=(πf/fssin(πf/fs))5=sinc5(fsf)
核心特性
| 特性 | 说明 |
|---|---|
| 阶数 | 5阶(5个积分器 + 5个梳状器级联) |
| 类型 | 低通滤波器,用于抽取(降采样) |
| 主要优势 | 极佳的阻带抑制、线性相位、无需乘法器(仅用加法/延迟) |
| 硬件实现 | 全数字逻辑,适合高速Σ-Δ ADC后端 |
数学原理
1. 时域表达式(脉冲响应)
Sinc5 滤波器的脉冲响应是5个矩形序列的卷积:
hn=rect∗rect∗rect∗rect∗rect⏟5次卷积hn = \underbrace{\text{rect} * \text{rect} * \text{rect} * \text{rect} * \text{rect}}_{5次卷积}hn=5次卷积 rect∗rect∗rect∗rect∗rect
这产生一个**离散化的5阶 B-spline(B样条)**波形,形状类似平滑的山峰。
2. 频域传递函数
H(z)=(1M⋅1−z−M1−z−1)5H(z) = \left(\frac{1}{M} \cdot \frac{1 - z^{-M}}{1 - z^{-1}}\right)^5H(z)=(M1⋅1−z−11−z−M)5
其中:
- M = 抽取率(Decimation Ratio)
- 分子 (1−z−M)(1 - z^{-M})(1−z−M) 是梳状部分(微分器)
- 分母 (1−z−1)(1 - z^{-1})(1−z−1) 是积分部分(累加器)
3. 频率响应幅度
∣H(ejω)∣=∣sin(Mω/2)M⋅sin(ω/2)∣5|H(e^{j\omega})| = \left|\frac{\sin(M\omega/2)}{M \cdot \sin(\omega/2)}\right|^5∣H(ejω)∣= M⋅sin(ω/2)sin(Mω/2) 5
计算方法详解
结构:5级积分器 → 抽取 → 5级梳状器
积分器部分(高速时钟 fs) 抽取 梳状器部分(低速时钟 fs/M)
x[n] → ∫ → ∫ → ∫ → ∫ → ∫ → [↓M] → ↓ → ↓ → ↓ → ↓ → ↓ → y[m]
(5个累加器) (抽取M倍) (5个差分器)
计算步骤
第一步:积分器阶段(5级累加)
在每个输入采样时钟,执行5级累加:
I1n=I1n−1+xnI2n=I2n−1+I1nI3n=I3n−1+I2nI4n=I4n−1+I3nI5n=I5n−1+I4n \begin{align} &I_1n = I_1n-1 + xn \\ &I_2n = I_2n-1 + I_1n \\ &I_3n = I_3n-1 + I_2n \\ &I_4n = I_4n-1 + I_3n \\ &I_5n = I_5n-1 + I_4n \end{align} I1n=I1n−1+xnI2n=I2n−1+I1nI3n=I3n−1+I2nI4n=I4n−1+I3nI5n=I5n−1+I4n
硬件实现:仅需5个寄存器和加法器,无乘法!
第二步:抽取(Decimation)
每 M 个高速采样保留一个:
vm=I5m⋅Mvm = I_5m \\cdot Mvm=I5m⋅M
第三步:梳状器阶段(5级差分)
在抽取后的低速时钟上,执行5级差分:
C1m=vm−vm−1C2m=C1m−C1m−1C3m=C2m−C2m−1C4m=C3m−C3m−1C5m=C4m−C4m−1=ym \begin{align} &C_1m = vm - vm-1 \\ &C_2m = C_1m - C_1m-1 \\ &C_3m = C_2m - C_2m-1 \\ &C_4m = C_3m - C_3m-1 \\ &C_5m = C_4m - C_4m-1 = ym \end{align} C1m=vm−vm−1C2m=C1m−C1m−1C3m=C2m−C2m−1C4m=C3m−C3m−1C5m=C4m−C4m−1=ym
AD7768-4 中的具体参数
根据 AD7768-4 数据手册,Sinc5 滤波器的关键配置:
| 参数 | 典型值/范围 |
|---|---|
| 抽取率 M | 可配置:8, 16, 32, 64, 128... 等2的幂次 |
| 输出数据率(ODR) | ODR = MCLK / (4 × M) 或类似关系(取决于时钟模式) |
| -3dB 带宽 | ≈ 0.22 × ODR(典型值) |
| 阻带抑制 | > 100 dB(得益于5阶滚降) |
| 群延迟 | 5M/2 个输入采样周期(线性相位) |
计算示例
假设配置:
- MCLK = 32.768 MHz
- 抽取率 M = 32
- 使用 Sinc5 滤波器
计算过程:
- 调制器速率 = MCLK / 4 = 8.192 MHz(典型模式)
- 输出数据率 ODR = 8.192 MHz / 32 = 256 kSPS
- -3dB 带宽 ≈ 0.22 × 256 kHz ≈ 56.3 kHz
- 群延迟 = 5 × 32 / 2 = 80 个调制器时钟周期 = 9.77 μs
Sinc5 vs 其他滤波器
| 滤波器类型 | 阶数 | 滚降速度 | 阻带抑制 | 实现复杂度 | 适用场景 |
|---|---|---|---|---|---|
| Sinc1 | 1 | 20 dB/dec | 一般 | 极低 | 简单抽取 |
| Sinc3 | 3 | 60 dB/dec | 良好 | 低 | 通用Σ-Δ ADC |
| Sinc5 | 5 | 100 dB/dec | 极佳 | 中等 | 高精度、强干扰抑制 |
| FIR | 自定义 | 灵活 | 可设计 | 高(需乘法器) | 需要平坦通带 |
关键优势总结
- 无需乘法器:仅用加法和延迟,硬件极简
- 天然抗混叠:5阶滚降提供 >100dB 的阻带衰减
- 线性相位:无相位失真,适合精密测量
- 完美直流响应:sinc⁵(0) = 1,无直流增益误差
在 AD7768-4 中,Sinc5 滤波器配合前端的高过采样率,是实现 24位高精度、低噪声 的关键数字信号处理环节。