Pavan《Understanding Delta-Sigma Data Converters》附录A 频谱估计 深度解析

本附录内容:系统阐述如何使用 FFT 对 ΔΣ 数据进行频谱分析。涵盖窗函数选择、缩放与噪声带宽、平均技术、完整示例和数学背景。对 ΔΣ 设计者准确评估 SNR/SNDR/SFDR 至关重要。

衔接:本书所有章节的仿真结果均依赖本附录的方法。附录 B(ΔΣ 工具箱)的 simulateDSM 和 logsmooth 等函数使用本附录的原理。


附录 A 目录结构

节号标题核心内容
A.1窗函数 (Windowing)矩形/Hann/Hann2 窗、噪声泄漏、信号泄漏、记录长度
A.2缩放与噪声带宽 (Scaling and NBW)正弦缩放 vs 噪声缩放、NBW 计算、dBFS/NBW
A.3平均 (Averaging)FFT 的方差、多记录平均、频域平滑、累积图
A.4完整示例 (Example)MATLAB 完整代码及分析
A.5数学背景 (Math Background)PSD 的正式定义、估计器偏差/方差、NBW 推导

核心内容深度解析

A.1 窗函数

三类窗函数(Figure A.1, Table A.1)

属性矩形窗Hann 窗Hann² 窗
定义 1
非零 FFT bin 数135
NBW
高频滚降不滚降60 dB/dec100 dB/dec

噪声泄漏(Figure A.3)

本质问题:有限长数据相当于乘以矩形窗 → 频域卷积 → 窗的旁瓣将带外噪声功率泄漏到带内

关键数据:

  • N=256 时,矩形窗仅能观察到 ~23 dB 的带外-带内噪声密度差
  • 矩形窗每倍频程仅改善 3 dB → 要可靠观察 80 dB 差需要 点!
  • Hann 窗 N=512 可分辨 80 dB 差;Hann² 窗 N=256 即可

Hann 窗通常足够:实际仿真通常数千点以上,Hann 窗即可提供充分保护

信号泄漏(Figure A.4)

相干采样 vs 非相干采样:

  • 信号频率精确在 FFT bin 上 → 功率集中在少数 bin(矩形 1,Hann 3,Hann² 5)
  • 非相干 → 功率涂抹到所有 bin
  • 仿真中可精确控制频率,消除信号泄漏
  • 频率精度要求: 中 四舍五入到 4 位小数时,Hann 窗的裙边总功率约 -84 dBc

数据记录长度

推荐 N = 64 × OSR:

  • SNR 估计标准差约 1.0 dB
  • N = 30 × OSR → 标准差约 1.4 dB
  • N = 256 × OSR → 标准差约 0.5 dB(通常不需要)
  • 信号 bin 应占带内 bin 的 < 20%(Hann 窗 3 bin → 至少 15 个带内 bin)

SFDR 观测:

  • N = 64 × OSR 可观测比 SNR 高约 10 dB 的 SFDR
  • 每加倍 N,可观测 SFDR 增加 3 dB

A.2 缩放与噪声带宽

正弦缩放(式 A.5)

  • 满量程正弦波 → 0 dBFS 峰值
  • 噪声功率随 N 变化(每倍频程 -3 dB,Figure A.5)

噪声缩放(式 A.7)

  • 单位功率白噪声 → 0 dB 密度(与窗类型和长度无关)
  • 但正弦波峰值依赖于窗

NBW 概念

频谱分析仪类比:解析为滤波器组,显示功率 = 噪声密度 × 滤波器噪声带宽

NBW 定义:与当前滤波器具有相同输出功率(对白噪声输入)的理想砖墙滤波器的等效带宽

NBW 计算(式 A.17-A.18):

核心用法:

  • 总噪声功率 = 平均噪声密度 (dBFS/NBW) +
  • 示例(Figure A.9):平均噪声密度 ≈ -100 dBFS/NBW,NBW = ,BW =
    • 转换因子: dB
    • 总噪声功率: dBFS
    • 信号功率:-6 dBFS → SNR = -6 - (-87) = 81 dB ✓

需始终标注 NBW:纵轴应标为 “dBFS/NBW”


A.3 平均

问题:单个 FFT bin 幅度的标准差等于期望值本身!→ 谱图非常”噪”(Figure A.6-A.7)

解决方案 1:多记录平均

  • 将大数据记录分割为多个(可重叠)子记录
  • 各自加窗、FFT、平方幅度后平均
  • 标准差降低 (K 为记录数)
  • 本书中的频谱图(Figure A.3, A.7)均使用了此技术

解决方案 2:频域平滑

  • 相邻 bin 功率平均 → “滤波”频谱
  • logsmooth 函数:几何增长 bin 数 → 对数坐标均匀分布

解决方案 3:累积谱(Figure A.8)

  • 绘制从 DC 到当前频率的累计功率(除以 )
  • 有效平滑噪声,但可能隐藏高频杂散

A.4 完整示例(Figure A.9)

MATLAB 代码流程:

% 1. 生成调制器数据
OSR = 32; ntf0 = synthesizeNTF(5,OSR,1);
N = 64*OSR; fbin = 11;          % N=2048, 相干bin
u = 0.5*sin(2*pi*fbin/N*[0:N-1]);
[v,~,~,y] = simulateDSM(u,ntf0);
 
% 2. 计算加窗FFT和NBW
w = hann(N); nb = 3;
w1 = norm(w,1); w2 = norm(w,2);
NBW = (w2/w1)^2;                 % = 1.5/N ≈ 7.3e-4
V = fft(w.*v) / (w1/2);          % 正弦缩放
 
% 3. 计算SNR - 信号bin / 噪声bin
signal_bins = fbin + [-(nb-1)/2:(nb-1)/2];
inband_bins = 0:N/(2*OSR);
noise_bins = setdiff(inband_bins, signal_bins);
snr = dbp(sum(|V(signal_bins+1)|^2) / sum(|V(noise_bins+1)|^2));

结果(Figure A.9):

  • Hann 窗 SNR ≈ 81 dB(矩形窗仅 58 dB——灾难性的 23 dB 差距)
  • 平滑后 PSD 与理论值高度吻合
  • 图中含:理论谱

A.5 数学背景

PSD 正式定义:

  • 自相关函数:
  • PSD:(自相关的傅里叶变换)
  • 总功率:
  • 滤波性质:

PSD 估计器性质:

  1. 有偏估计:(与窗谱的圆周卷积)
  2. 功率无偏:(积分得总功率无偏)
  3. 大方差:(标准差 = 被估计量本身)

NBW 正式推导(式 A.17):

由 得出

量化噪声 PSD 公式(式 A.19):

前提:M 步量化器、步长 Δ=2、白噪声假设、单边谱


关键公式汇总

公式说明
$\hat{S}‘(f) = \frac{1}{(\text{FS}/4)W(0)^2}\sum w[n]x[n]e^{-j2\pi fn}
$\hat{S}(f) = \frac{1}{|w|_2^2}\sum w[n]x[n]e^{-j2\pi fn}
噪声带宽
从 PSD 计算 SNR
$S_q(f) = (4/3M^2)NTF(e^{j2\pi f})
单边谱功率

参考文献

  1. A. V. Oppenheim and R. W. Schafer, Discrete-Time Signal Processing, Prentice-Hall.
  2. A. Papoulis, Probability, Random Variables, and Stochastic Processes, McGraw-Hill.
  3. F. J. Harris, “On the use of windows for harmonic analysis with the discrete Fourier transform,” Proc. IEEE, vol. 66, pp. 51–83, Jan. 1978.
  4. A. H. Nuttall, “Some windows with very good sidelobe behavior,” IEEE Trans. ASSP, vol. 29, pp. 84–91, Feb. 1981.


补充细节:频谱估计

G38 频谱估计中 PSD 的理论下限与估计器方差:

  • 周期图方差:,不随数据长度 增加而减小——这是周期图作为频谱估计器的根本缺陷。
  • 方差来源:DFT 的每个频率点上,周期图等价于数据加窗后的单样本功率估计,仅 2 个自由度(实部/虚部),所以方差 = 均值的平方。
  • 多记录平均法(Bartlett/Welch): 段独立记录的平均使方差降低 倍:。
  • K-L 权衡:总数据长度 固定时,↑ → ↓ → 频率分辨率 ↓。最优选择是使 (保证带内有足够频率点)同时最大化 。
  • Pavan 附录 A.5 扩展:对于 ΔΣ 调制器的 PSD 估计,建议使用 50% 重叠的 Welch 法, 段,Hanning 窗,以获得稳定的带内噪声 PSD 估计。

相关页面