2. ADC基础回顾

在进入ADC噪声与ENOB测试之前,必须先把“理想ADC”这条基准线画清楚。因为ENOB本质上是在问:一个真实ADC,等效于多少位理想ADC?如果对采样、量化、分辨率、满量程这些基础概念理解模糊,后续测出的SNR、SINAD、ENOB就会变成没有参照的数字。本节从信号链角度回顾ADC工作的四个关键环节,并给出理想与实际ADC的差异对照。

一、采样定理:把连续时间变成离散时间

ADC的第一步是采样,即在时间轴上以固定间隔 Ts 对模拟输入进行“抓取”。采样定理指出:若输入信号最高频率为 fin,则采样频率 fs 必须大于 2×fin,才能避免频谱混叠。这个 fs/2 边界称为奈奎斯特频率。

工程上通常不会刚好取2倍,而是留出余量,并用抗混叠滤波器把 fs/2 以上的噪声和干扰压下去。否则高频成分会折叠回带内,和有用信号叠加,后续无论怎样平均或滤波都无法区分。对ENOB测试而言,混叠会直接抬高噪声底,使测得的ENOB偏低,因此测试前必须确认输入频率、采样率和滤波器配置匹配。

fs = 100 MSPS
fin = 10 MHz
奈奎斯特频率 = fs / 2 = 50 MHz
结论:fin < fs/2,满足采样定理,但抗混叠滤波器仍需抑制 50 MHz 以上成分

二、量化过程:把连续幅度变成离散码

采样只离散了时间,幅度仍是连续的。量化把每个采样点的幅度映射到有限个离散电平,再用二进制码表示。一个N位ADC有 2^N 个输出码,相邻码之间的电压间隔称为量化步长,也叫LSB大小:

LSB = FSR / 2^N
FSR = 满量程范围 = VREF+ - VREF-(或对应输入范围)

量化必然引入误差。理想情况下,量化误差在 ±0.5 LSB 内均匀分布,其均方根值为 LSB/√12。由此可推出理想ADC的SNR理论极限:

SNR_ideal = 6.02 × N + 1.76 (dB)

这条公式是ENOB测试的“标尺”。例如12位理想ADC的SNR约为74.0 dB,16位约为98.1 dB。实际ADC测出的SNR低于该值,差值就反映了噪声、失真和非理想因素。

三、分辨率与满量程范围:两个容易混淆的概念

分辨率指ADC能区分的最小电压变化,通常用位数N表示,但真正决定“能分辨多小”的是LSB大小,而LSB同时取决于N和FSR。同样是16位ADC,FSR为2.5 V时LSB约38 µV,FSR为10 V时LSB约153 µV。因此讨论分辨率时必须同时说明满量程范围,否则数字没有意义。

满量程范围由参考电压和输入结构决定。单极性输入常见0~VREF,差分输入常见±VREF或2×VREF。实际ADC的可用输入范围往往比标称FSR略小,因为靠近电源轨和地附近存在非线性、饱和或输出码削顶。测试ENOB时,输入幅度通常取满量程的-0.5 dBFS到-1 dBFS,既充分利用动态范围,又避免削顶失真。

记忆要点:分辨率是“位数”,LSB是“电压台阶”,FSR是“总台阶数×台阶高度”。三者关系为 LSB = FSR / 2^N。

四、理想ADC与实际ADC的差异

理想ADC只存在量化噪声,输出码与输入电压严格成线性阶梯关系。实际ADC则叠加了多种非理想因素:

  • 量化噪声:理想ADC固有,无法消除,只能通过增加位数或过采样降低带内密度。
  • 热噪声与闪烁噪声:来自采样开关、比较器、参考源和内部模拟电路,抬高噪声底。
  • 谐波失真:非线性导致2次、3次等谐波,表现为THD恶化。
  • 时钟抖动:采样时刻不确定,对高频输入影响尤其明显,等效为SNR下降。
  • DNL/INL:码宽不均匀和整体弯曲,造成失真和缺失码。
  • 参考电压噪声:直接调制量化台阶,转化为输出噪声。

这些因素共同作用后,实际ADC的SNR、SINAD低于理想值,ENOB也随之下降。ENOB的定义正是把实测SINAD反推回理想位数:

ENOB = (SINAD - 1.76) / 6.02

例如某16位ADC实测SINAD为90.0 dB,则ENOB = (90.0 - 1.76)/6.02 ≈ 14.66位。说明它虽然标称16位,但在该输入频率和采样率下,等效精度约14.7位。

五、关键参数对照表

项目理想ADC实际ADC对ENOB的影响
量化误差±0.5 LSB均匀分布同样存在,但被其他噪声掩盖决定理论上限
噪声来源仅量化噪声热噪声、闪烁噪声、参考噪声抬高噪声底,ENOB下降
线性度完美阶梯DNL/INL非零产生谐波,SINAD恶化
采样时刻完全确定存在时钟抖动高频输入时SNR显著下降
满量程利用可用到FSR边界靠近轨到轨时非线性需回退0.5~1 dBFS
SNR6.02N+1.76 dB低于理论值直接决定ENOB

六、案例与常见误区

假设用一款16位、1 MSPS ADC采集1 kHz正弦波,输入幅度设为满量程的-1 dBFS,测得SINAD为92 dB。按公式计算ENOB约15.0位。若把输入频率提高到100 kHz,SINAD降到84 dB,ENOB约13.7位。这说明ENOB不是固定值,而是随输入频率、幅度、采样率和PCB布局变化的“工作点指标”。

常见误区一:把“分辨率位数”直接当成“有效位数”。标称16位只代表输出码有16位,不代表精度有16位。误区二:忽略满量程范围谈LSB。误区三:测试时输入幅度过小,导致SNR被人为压低;或过大导致削顶,谐波急剧上升。误区四:未加抗混叠滤波,把带外噪声折叠进带内,误判ADC本身噪声大。

复盘时建议按以下顺序排查:先确认采样率和输入频率满足奈奎斯特条件;再确认输入幅度在-0.5~-1 dBFS;然后检查参考电压是否干净、时钟抖动是否可控;最后再看DNL/INL和谐波分布。只有把理想基准和实际偏差分开,ENOB测试结果才具备工程指导意义。

ADC 采样—量化—编码链路与理想/实际差异 模拟输入 Vin, fin 抗混叠滤波 抑制 fs/2 以上 采样保持 fs, 时钟抖动 量化与编码 N位, LSB=FSR/2^N 数字输出 D[0..N-1] 量化阶梯与量化误差 Vin 码值 理想直线 实际阶梯 ±0.5 LSB 理想 ADC 与实际 ADC 频谱对比 频率 幅度 fin 理想:仅量化噪声底 fin 2次 3次 噪声 实际:噪声底抬高 + 谐波 核心关系 LSB = FSR / 2^N  SNR_ideal = 6.02N + 1.76 dB  ENOB = (SINAD − 1.76) / 6.02 理想ADC只有量化噪声;实际ADC叠加热噪声、谐波、时钟抖动、参考噪声与DNL/INL,导致ENOB低于标称位数。