把我的Chrome浏览器清空的时候,发现打开过一个ADI的小文章,非常短:
我觉得这个文章接地气,仿佛看见了两个老朋友这样的现场对话,说实话我是喜欢老物件的,因为错过了前20年的电子世界,比如这个:
AD555
但是文章里面只言片语的,其实并没有说透,我决定重新写一下。
首先这段回忆以怀旧风格引出今天仍然有人对「分辨率」和「ENOB(有效位数)」之间的概念存在混淆。
某客户指出:你们的ADC标称12位分辨率,但 ENOB 只有 10.5,看起来像是“虚标”。
客户质疑:你们是不是在夸大分辨率?
分辨率 (N) :ADC输出码的理论最大精度,通常以bit表示,如12位表示个电平
ENOB : 有效位数,实际在噪声影响下能用的“真实”bit数(这个就是最终工程师功力所在)
SNR 公式: → 理想SNR公式
反推 ENOB:这个就很简单了
ENOB 体现的是真实可用精度,受到噪声、非理想性、Jitter、失真等实际因素影响。
作者强调:
我们并未违反规格
差分非线性(DNL)需小于1 LSB → 保证无丢码
积分非线性(INL)决定失真性能 → 更高分辨率有助于提升 SFDR(杂散动态范围)
简单说:我们保证 线性度和分辨率符合规范,但 ENOB 是一个 性能指标,而不是“规格虚标”。
最后提到25年前一款成功的12位ADC,速度只有10 MSPS(现今500 MSPS),ENOB也只有10.5。
强调:ENOB 一直是工程现实中的挑战,并不因年代或技术更替而消失。
一次三个因素不好研究,只能上热力图了:
ENOB 与线性度指标(DNL 和 INL)之间的关系热力图
横轴:最大 INL(积分非线性误差),单位为 LSB
纵轴:最大 DNL(差分非线性误差),单位为 LSB
颜色:ENOB(有效位数)
PS:这个坐标的顺序有些问题,总之就是两个恶化的指标会让ENOB这个值也恶化
DNL≈0,INL≈0:理想 ADC 情况,ENOB 接近理论最大值(12 位)。说明无误差时,性能最佳。
DNL 增加(垂直方向):
当 DNL 接近或超过 1 LSB,出现“跳码”风险;ENOB 开始下降,尤其是在 >1 LSB 区域表现更显著。
INL 增加(水平方向):
会导致整体失真(非线性弯曲),即使 DNL 小也会拉低 ENOB;ENOB 随 INL 增大而逐步降低。
高 INL + 高 DNL):最差情况,ENOB 可降至 8 位以下。
我们在研究一下
DNL(Differential Nonlinearity)差分非线性误差定义为:
其中:
:第 个码的转换阈值
Ideal LSB:满量程对应的理想最小电压步长
单位是“LSB”
image-20250731191721580
所以同样是 "1 LSB" 的 DNL,对不同分辨率的 ADC,其实际电压误差是不同量级的。
我愿意叫横向台阶
当所有码的 DNL < 1 LSB,意味着:所有量化码宽大致一致;不会出现“丢码”(Missing Code)。
对于逐次逼近型(SAR)ADC,DNL 是结构精度关键指标
使用这个如何理解?
参数 | 含义 |
---|---|
±0.4 LSB typical | 通常情况下,INL 在 ±0.4 LSB 范围内(非常优异) |
±1.5 LSB max | 最差情况下,INL 不会超过 ±1.5 LSB |
±23 ppm of FSR | 表示 ±1.5 LSB ≈ 满量程的 23 ppm(百万分率,等价于 0.0023%) |
分辨率:16位 ⇒ 个码
1 LSB =
±1.5 LSB ≈ ±114.5 μV
23 ppm × 5 V = 115 μV(与 ±1.5 LSB 匹配)→ 即,INL 最大误差对应的实际电压误差为 ±115 μV(在 5V 满量程下)。
不明显,明显一点
误差曲线(差值)
显示“实际输出 - 理想输出”的误差电压;峰值误差为 ±115 μV,刚好对应 ±1.5 LSB(在 16bit + 5V 满量程下)
对于Σ-Δ ADC,数字滤波器结构常使得 DNL 非常优越,甚至接近 0:
这个是AD7771的SD ADC
8个通道之间也不能完全一致
我们日常开发是面对的几个不同的电压,这里就算一下LSB是多少:
在一个图里面
在不同满量程电压(VFS)下,ADC 分辨率从 8 位到 32 位 时,1 LSB 的实际电压大小(μV)如何随位数指数级下降的变化趋势。
随着分辨率增加,每提升1位,1 LSB 缩小一半(对数下降)
看两个高位ADC;24位 ADC 在 ±1V 下,1 LSB ≈ 119 nV(极为敏感,对噪声、漂移、电容耦合极其敏感);32位 ADC 下,1 LSB 在 pV 量级,此时系统热噪声、参考漂移、电荷注入都会严重影响精度。
我们可以看更好的表格,直接查,但是没有单位
加入单位