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个矩形序列的卷积:
h[n]=rect∗rect∗rect∗rect∗rect⏟5次卷积h[n] = \underbrace{\text{rect} * \text{rect} * \text{rect} * \text{rect} * \text{rect}}_{5次卷积}h[n]=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级累加:
I1[n]=I1[n−1]+x[n]I2[n]=I2[n−1]+I1[n]I3[n]=I3[n−1]+I2[n]I4[n]=I4[n−1]+I3[n]I5[n]=I5[n−1]+I4[n] \begin{align} &I_1[n] = I_1[n-1] + x[n] \\ &I_2[n] = I_2[n-1] + I_1[n] \\ &I_3[n] = I_3[n-1] + I_2[n] \\ &I_4[n] = I_4[n-1] + I_3[n] \\ &I_5[n] = I_5[n-1] + I_4[n] \end{align} I1[n]=I1[n−1]+x[n]I2[n]=I2[n−1]+I1[n]I3[n]=I3[n−1]+I2[n]I4[n]=I4[n−1]+I3[n]I5[n]=I5[n−1]+I4[n]
硬件实现:仅需5个寄存器和加法器,无乘法!
第二步:抽取(Decimation)
每 M 个高速采样保留一个:
v[m]=I5[m⋅M]v[m] = I_5[m \cdot M]v[m]=I5[m⋅M]
第三步:梳状器阶段(5级差分)
在抽取后的低速时钟上,执行5级差分:
C1[m]=v[m]−v[m−1]C2[m]=C1[m]−C1[m−1]C3[m]=C2[m]−C2[m−1]C4[m]=C3[m]−C3[m−1]C5[m]=C4[m]−C4[m−1]=y[m] \begin{align} &C_1[m] = v[m] - v[m-1] \\ &C_2[m] = C_1[m] - C_1[m-1] \\ &C_3[m] = C_2[m] - C_2[m-1] \\ &C_4[m] = C_3[m] - C_3[m-1] \\ &C_5[m] = C_4[m] - C_4[m-1] = y[m] \end{align} C1[m]=v[m]−v[m−1]C2[m]=C1[m]−C1[m−1]C3[m]=C2[m]−C2[m−1]C4[m]=C3[m]−C3[m−1]C5[m]=C4[m]−C4[m−1]=y[m]
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位高精度、低噪声 的关键数字信号处理环节。