14位 ADC 的 8 LSB 台阶,正余弦采样要多看一拍

首发于公众号「如是有为」 · 查看原文

114 位中 8 LSB 等于满量程的约 488 ppm;它是确定性线性误差,不会靠平均消失。

2介质弛豫可用主电容并联多个慢 RC 支路建模,误差同时依赖前一拍电压步进与等待时间。

32003 年论文以残余电荷实验、建模与新测试芯片共同支持其归因;这不是“同一颗芯片只换介质”的单变量对照。

14位 ADC 的 8 LSB 台阶,正余弦采样要多看一拍

封面主题漫画|从 S/C 原始码、角度残差一路追到采样电容里尚未消失的上一拍电荷;为本文原创文生图,不对应任何一颗实际芯片。

我平时做的是编码器数字部分。磁编码器的传感器吐出一对正弦、余弦电压,ADC 把它们变成数字码 S、C,再用反算出角度。排一条角度误差时,手边先摆开的往往是原始 S/C 码、幅值、相位补偿、atan2 前后的数据和时序:误差是被算法放大了,还是在算法之前就已经写进 S/C?

固定形状的角度残差尤其值得这样拆。磁场或码盘可能改了幅值,前级放大器(PGA)的输出可能还没稳定下来;还有一条更底层、也更容易被忽略的路径:ADC 在采样 C 之前,尚未完全忘掉 S 的上一拍。数字侧把每一级都过一遍后,才值得沿这条线追进模拟采样网络。

Casier 讲义收录过一张很有意思的 INL 图。Herman Casier 是比利时的模拟芯片工程师,做过 AMI Semiconductor 的 Fellow;这份讲义是他 2010 年在瑞士洛桑 MEAD 混合信号课程上讲「匹配损伤」的课件。

INL(积分非线性)量的是 ADC 每个输出码的实际位置偏离理想直线多少,单位是 LSB,也就是最低一位对应的那一小格电压。一颗 14 位、70 MS/s 流水线 ADC,在 1 MHz 输入、20 MS/s 条件下测 INL。PECVD 氮化硅 MIM 电容的版本,INL 呈周期性锯齿:段内缓慢爬升,到判决点猛地跳落约 8 LSB,跳变点大约每 2048 个码出现一次。论文摘要原话是 8-LSB-wide gaps,这里的 wide 指缺口的纵向幅度,不是横向宽度。在工艺中引入 LPCVD 二氧化硅电容后的新测试芯片,INL 回到零附近。

MIM 电容是在芯片两层金属之间夹一层薄介质做成的电容。PECVD 和 LPCVD 是沉积这层介质的两种工艺:前者借等离子体在较低温度下成膜,后者在低压、较高温度下成膜。左右两块芯片最显眼的差别就在这层介质上,但它们并非只改了这一处,后文再说。

14位 ADC 的 8 LSB 台阶,正余弦采样要多看一拍

图 1|14 位流水线 ADC 的实测 INL 对比:1 MHz 输入、20 MS/s。左为 PECVD SiN MIM 电容版本,右为引入 LPCVD SiO₂ 电容后的新测试芯片。每个跳变约 8 LSB,跳变点约每 2048 码一个;图源为 Zanchi 等 2003 年 JSSC 论文,经 Casier 讲义转载。

这类台阶首先该怀疑参考端回弹、开关注入、残差放大器恢复、数字校准甚至夹具;它们都比“介质还在记着上一拍”更常见。

但 8 LSB 值得先算一笔账。14 位的一整个码域有个 LSB。8 LSB 只占满量程的,即约 488 ppm FSR,不到满量程的万分之五。这不大到能在示波器上看见一坨毛刺,却足以把一颗 14 位转换器的线性度切出可重复的断层。

曾经做 ADC 时学到的一件事,在这里重新变得具体:一只看起来已经放完电的片上电容,怎样把上一拍状态带进下一次采样,最后变成 atan2 里的角度残差?

01 它不是普通漏电

若只是漏电,电荷会沿一个电阻慢慢流走;静置越久,节点越接近零。那解释不了一个已经放到零的电容,为什么撤掉短路后还会“回一点”。介质弛豫多了一层状态。电容中间的绝缘介质在电场下,内部电荷会被拉得稍稍偏开,这叫极化;大部分极化瞬间就跟上电压,少数部分要几微秒甚至更久才慢慢跟上或退回。所以外部端子已经被短到零,介质内部较慢的极化却没有回到平衡。等短路撤掉,慢极化继续松弛,会把一小笔电荷推回端子。它也被称为介质吸收或 capacitor soakage。

工程上可先用一个可测、可证伪的等效模型处理:主电容负责立即响应;若干–慢支路代表不同时间常数的极化模式。时间常数大约是一条支路放掉六成三电荷所需的时间。每条慢支路在电压阶跃后都保留一点旧状态。

14位 ADC 的 8 LSB 台阶,正余弦采样要多看一拍

14位 ADC 的 8 LSB 台阶,正余弦采样要多看一拍

14位 ADC 的 8 LSB 台阶,正余弦采样要多看一拍

图 2|Casier 讲义给出的五支路模型,参数照讲义重算:(a) 五条 RC,时间常数从 20 ns 到 200 µs 每条差十倍;(b) 五个指数叠起来,拼出一条的幂律弛豫电流;(c) 端子短接 25 ns(20 MS/s 的半个周期)后,慢支路里还剩约 89% 的电荷。τ≥2 µs 的三条,一个时间常数就相当于 40~4000 个转换周期,要放到 1% 以下得跨过几百到近两万次转换,所以它们记住的是最近一段码流的平均,不只是上一拍。参数来自 SiO₂ 弛豫电流外推,只用来看形状,不是 Zanchi 芯片的 SiN 数据。

把第 nn 次采样的外加电压记为 V[n]V[n];第 kk 条慢支路在电容接到那一刻的内部电压记为 Uk[n]U_k[n]。对较快的支路它约等于上一拍电压,对图 2 里那几条慢支路则是最近一段码流的加权平均。电容从接到新电压到采样沿之间的时间记为 TidleT_{\mathrm{idle}}。一阶识别模型可写成:

e[n]≈∑kβk(Uk[n]−V[n])e−Tidle/τk.e[n]\approx\sum_k\beta_k\left(U_k[n]-V[n]\right)e^{-T_{\mathrm{idle}}/\tau_k}.

这里 βk\beta_k 是第 kk 条慢支路耦合到最终采样节点的系数,τk=RkCk\tau_k=R_kC_k 是相应的弛豫时间。这个式子给出三个可验证的指纹:

  • 前一拍(对慢支路是最近一段历史)与当前电压的差越大,当前误差越大,并且会随前一拍正负翻转而变号;

  • 在不改其他条件时,增加 TidleT_{\mathrm{idle}} 会让误差按若干时间常数衰减;

  • 同一序列反复出现,误差是可重复的确定性图样,不会像白噪声那样平均掉。

这就解释了“记住”的准确含义:电容不是在存一个数字码,而是在存一组还没松弛完的极化状态。

02 先把一颗 1.5-bit MDAC 当麻雀解剖

先交代流水线 ADC 怎么干活。它像接力:第一级只粗判输入落在哪一档,把这一档对应的电压减掉,剩下的零头(残差)放大后交给下一级接着判;一级级往下,最后把各级结果拼成 14 位。每级里负责「减掉再放大」的电路叫 MDAC。1.5-bit 级每次只分三档(−1、0、+1),多出来的半位冗余留给数字端纠正比较器的小误差。

本文不复原 Zanchi 芯片的级电路。下面用公开教材中最简单的常规 1.5-bit 流水线级解剖这个路径。1.5-bit 级只有 2 个判决点,而图 1 有 6 个跳变点,可见原芯片首级分段更多;段数不同,电荷被带进下一拍的机理相同。这一级有两只电容、一个 OTA(跨导运放,这里当普通运放理解即可)、两相开关 ΦS\Phi_S 和 ΦA\Phi_A,已经足以定位状态在哪一相被写入。

14位 ADC 的 8 LSB 台阶,正余弦采样要多看一拍

14位 ADC 的 8 LSB 台阶,正余弦采样要多看一拍

14位 ADC 的 8 LSB 台阶,正余弦采样要多看一拍

14位 ADC 的 8 LSB 台阶,正余弦采样要多看一拍

图 3|翻转式 1.5-bit MDAC(C1=C2C_1=C_2):(a) 采样相,两只电容一起记下输入电压;(b) 放大相,一只翻到输出,另一只切到参考端,介质没跟上的那点电荷参与残差转移;(c) 三段残差各自被拉歪;(d) 折回输入端后,误差在段内是斜坡、在判决点是断崖。拓扑与残差关系据公开教材,红色慢支路和误差幅度是为讲机理加的示意,不是 Zanchi 原芯片的电路或数据。

采样相 ΦS\Phi_S,两只电容(放大相里接参考的记作 C1C_1,翻到输出的记作 C2C_2)先记下当前输入 VinV_{\mathrm{in}} 与 OTA 的失调。放大相 ΦA\Phi_A,本级子 ADC 的三值判决决定参考端接到零、正参考还是负参考;OTA 把电荷重分配成残差:

Vres=2Vin−DVref,D∈{−1,0,1}.V_{\mathrm{res}}=2V_{\mathrm{in}}-D V_{\mathrm{ref}},\qquad D\in\{-1,0,1\}.

关键在红色虚线框。若介质的慢支路在 ΦS\Phi_S 结束时还带着前一周期的状态,到了 ΦA\Phi_A 它不会自动消失,而会和本应精确守恒的电荷一起参加这次转移。于是错误不是一个静态的“C1/C2C_1/C_2 比值偏了多少”,而是随前序切换和相位间隔变化的残差项。这就是 8 LSB 台阶可以呈现固定码区形状的电路入口。

这解释的是一条可行路径;究竟哪一级主导、慢支路参数多大,仍须原芯片的电路或实验数据。

03 数字侧看到的,最终是一条角度残差

常见的 ADC 不止流水线一种,先交代另两种。SAR(逐次逼近)ADC 像天平称重:拿一组电容做成的 DAC(即 CDAC)从最高位开始逐位试探,每比较一次定一位,N 位就比 N 次。ΣΔ(Sigma-Delta)ADC 走另一条路:以远高于信号的速率做很粗的量化,再靠反馈环路和数字滤波把精度换回来。Casier 讲义里,一颗三阶 12 位增量型 ΣΔ 调制器在最坏的 MIM 电容弛豫下没有退化,原因是积分器在低频的增益近乎无穷;流水线和 SAR 每次转换都是开环算完的,没有这层保护。

对数字侧而言,ADC 不是终点,而是送进算法的上游。若正余弦经前端后轮流送入同一采样保持节点、同一套 CDAC,或共享慢状态,上一拍就可能跨到下一拍。最后 atan2 会把采样误差翻成角度。是否存在这一结构,必须由具体芯片的电路或台架验证。

复用在编码器信号链里并不少见,举三个公开能查到的例子。

  • iC-Haus 的 iC-MNF,一颗三码道游标编码器芯片。手册写明:三路输入各有一个独立的采样保持,同一时刻采下来,再排队交给同一颗最高 14 位的 SAR 依次转换。这样消掉了三路之间的采样时差,但那颗 SAR 的电容阵列仍是一路接一路地换电压。这不说明它有问题,只说明「上一路会不会留到下一路」是它这种结构该问的题。

  • 微控制器自带的多输入 SAR。

用 MCU 自带 ADC 读正余弦编码器,S、C 往往接在同一颗 ADC 的两个输入上轮流转换。若连采样也是轮流的,S 和 C 之间还多出一段采样时差,转速一高就直接变成角度误差。前面引过的 A-SSCC 2024 论文做的正是这类芯片:一颗 22 nm 微控制器里的 16 位 SAR,在多个模拟输入间切换时,上一次转换的残余会影响当前精度,作者专门加了抵消电路,把通道间干扰压到 −108 dB。

  • 更早的教科书案例。

Fattaruso 等 1990 年在 JSSC 上用仿真展示过:在两通道复用的电荷重分配 ADC 里,介质弛豫会让一路信号漏进另一路。Casier 讲义把这张图和图 1 放在同一节。

把理想信号写成 S=Asin⁡θS=A\sin\theta、C=Acos⁡θC=A\cos\theta,AA 是幅值,θ\theta 是信号的电角度。当采样误差远小于幅值时,atan2 的一阶角度误差是:

δθ≈cos⁡θ δS−sin⁡θ δCA.\delta\theta\approx\frac{\cos\theta\,\delta S-\sin\theta\,\delta C}{A}.

这条式子是编码器工程师最在意的翻译器。它把“电容残了多少电荷”翻成“这会在角度的哪个位置冒出来”。例如 S 路采样误差若带着前一拍历史,乘上 cos⁡θ/A\cos\theta/A 后就会变成随电角度有固定形状的残差;C 路残留则带着 −sin⁡θ/A-\sin\theta/A 的权重。

所以验收不能只盯 ADC 的 ENOB(有效位数)。一个单通道正弦测试可以很好看,同时仍漏掉“先采 S 再采 C”和“先采 C 再采 S”之间的差异。前一拍是什么、两路之间隔了多久,是这个条件成立时必须写进信号链的边界。

041 MHz 输入仍躲不开内部的参考切换

1 MHz 听上去比 70 MS/s 的额定速度慢得多,直觉上“慢输入应该等得起”。但图 1 的测试时钟是 20 MS/s,一个正弦周期只采 20 个点,相邻两点最多差出幅值的约 31%(),外部输入本身就在一拍一拍地大步跳。更要紧的是,流水线 ADC 的误差不只由外部正弦决定。

通用流水线 MDAC 在每个周期都要采样、再把电容阵列切到输入或参考端,完成残差放大与电荷重分配。即使外部输入变化平缓,内部电容仍可能看到接近参考满摆幅的离散切换。真正给慢极化上历史的,是这些随子 ADC 判决反复改变的内部参考跳变,而不是正弦曲线在纸面上看起来有多平滑。

当输入扫过某些量化/子级判决区,MDAC 的切换序列会改变。若某些慢支路尚未归零,下一周期的等效电荷就多一点或少一点;这个偏差再经后级增益折回输入端,INL 上就可能在特定码区形成稳定台阶。这里是基于标准 MDAC 的解释路径,不是对 Zanchi 原芯片逐级时序的复原。

所以图 1 的“周期性”很关键:它更像随内部切换状态改变而出现的确定性结构,不像随机噪声,也不像单纯的全局增益误差。

05 介质不能只凭一张图定罪

仅凭左图,不能把结论写成“介质弛豫”。参考端回弹、开关注入、残差放大器恢复、数字校准和测试夹具都尚未排除。Zanchi 论文摘要还报告了 Matlab 行为级仿真与 SPICE 电路仿真、检测残余电荷的专项实验,以及引入 LPCVD 氧化物电容后的新 ADC 测试芯片性能。

这不是严格的“除介质外一切不变”的单变量实验:LPCVD 氧化物对应的是新的测试芯片。因此它不能推出“氮化硅都不能做 ADC”。沉积、退火、应力、陷阱密度、偏置和具体电容结构都会改与。它支持的是更窄的结论:作者在那套 PECVD SiN 工艺与那颗 14 位流水线 ADC 中,将介质弛豫识别为线性度损失的原因。

换句话说,介质在这里不再只是“电容量、击穿和面积”的工艺设计包(PDK)选项,而是一个动态精度参数。

06 回到编码器台架:先不看 ANGLE,先看原始 S/C 码

现场里最容易犯的错,是拿着最终 ANGLE 寄存器讨论 ADC。那时 atan2、幅值归一化、滤波和诊断逻辑已经把责任混在一起了。

公开的 cT N2 系列手册把正弦、余弦原始 ADC 码分别开放为带符号的 14 位 S_ADC 与 C_ADC,两者标称每 640 ns 更新一次,并被幅值诊断量使用。对做数字的人来说,这类寄存器就是顺手的排故入口:角度先放在一边,先问“只改变 S 的前史,C 的原始码会不会动?”

手册没有公开采样拓扑,不能由此推出它一定分时复用或共享采样电容。实验应使用可独立施加两路模拟刺激的台架或芯片测试模式:先把 C 保持在已知电平,再只翻转 S 的前置状态,并完整记录时序。把先转换的那一路叫 A(这里是 S),紧接着被测的那一路叫 B(这里是 C),定义:

DˉB\bar D_B 是 B 路原始码的多次平均,竖线右边是条件:前一拍 A 接的是正满量程还是负满量程。TidleT_{\mathrm{idle}} 是 A 转换结束到 B 采样沿之间的间隔(图 4a)。若是图 2 所示的历史相关误差,对前一拍符号敏感,且随 TidleT_{\mathrm{idle}} 拉长而衰减。由于两种条件只差前一拍 A 的电平,输入端的静态偏移、B 路自身的偏移和增益误差在差分里一阶抵消。

这个 A/B 序列最直接适用于多路复用 SAR;在正余弦前端,它首先只是一个排查实验,不是对内部结构的预设。若原始 C_ADC 随 S 的前史出现可重复差分,再去查是输入驱动、共用参考、开关节点,还是电容的慢状态。若原始码不动而 ANGLE 在动,就别把锅推给采样电容,应该先回到算法和数字处理链。

若要在流水线 ADC 上复核 Zanchi 这类现象,不应硬套“两个外部通道”。应固定外部输入的慢扫描方式,记录每级子 ADC 判决,或用数字码型重建 MDAC 的参考切换序列;再比较同一输入码在不同前序切换历史下的残差。两种实验改变的对象相同,都是前一次电荷重分配留下的状态,只是可控入口不同。

14位 ADC 的 8 LSB 台阶,正余弦采样要多看一拍

14位 ADC 的 8 LSB 台阶,正余弦采样要多看一拍

14位 ADC 的 8 LSB 台阶,正余弦采样要多看一拍

图 4|诊断实验:(a) B 的电平固定,只让它前面那一拍 A 在 +FS/−FS 之间换;(b) 扫,单一时间常数的建立问题一个多十倍频就掉光,介质弛豫是一道跨五个十倍频的缓坡;(c) 扫 A 的幅度,介质弛豫是一条过原点的直线,幅度和符号一次验完。介质曲线按图 2 的参数重算,其余三条是示意形状,都不是实测。

但这仍不是“看见尾巴就宣布介质弛豫”。下面这张排除表才是测试结论能不能签字的分界线。

可疑机制它也会像“上一拍影响下一拍”吗额外动作
输入驱动或残差放大器未建立会,

常对采样(跟踪)

时间敏感
改外部驱动带宽/串阻,监测采样节点建立;若尾巴随驱动改变而大幅移动,先查驱动
参考缓冲回弹会,

常与 CDAC/MDAC

切换权重相关
监测参考节点,比较不同参考去耦和不同子 ADC 码型
开关电荷注入会产生信号相关偏移

但不必有长时间尾巴
改开关控制与共模,保持扫描;若主要跟开关边沿走,不能归因介质
介质弛豫应同时满足

“前一拍

幅度、符号、

空闲时间”三项
做,再用不同介质或专用测试结构确认

Zanchi 的介质替换,正是最后一栏里最有力的那一步。它比“某次波形像个尾巴”强得多。

07 这张图最后该落到哪一项签字

对 14 位而言,图 1 的 8 LSB 台阶是约 488 ppm FSR。若产品线性度预算留给历史相关项的份额只是一两个 LSB,那么“电容标称值、失配、温漂都合格”不足以放行。评审表上应追问:在最大内部参考切换、最短时序和最坏输入序列下,残余项(是最大的内部电压步进)折回输入端后还剩多少 LSB?

这也是这桩旧案例仍然值得反复看的原因。它不是一个“某种老材料翻车”的故事,而是把一个通常藏在器件页里的参数,变成了可量化的 ADC 误差路径:介质 → 残余极化 → MDAC 电荷误差 → 特定码区 INL 台阶。

2003 年的实测图留下的不是“哪一种介质最好”的口号,而是一套查法:先用序列把误差的历史性逼出来,再用介质替换或专用结构,把“像”根因变成“是”根因。

下一次看到一条漂亮但带台阶的 INL 曲线,先别问电容做得够不够大。先问:在它开始这次采样之前,它刚刚记住了什么?

本文所引讲义出自 MEAD Education 的混合信号 IC 设计课程;这门课 2026 年还在开,10 月 12–23 日线上直播,详见 MEAD 官网。

08 公开来源

  • A. Zanchi、F. Tsay、I. Papantonopoulos,《Impact of Capacitor Dielectric Relaxation on a 14-bit 70-MS/s Pipeline ADC in 3-V BiCMOS》,IEEE Journal of Solid-State Circuits,2003。本文的 14 位、70 MS/s、PECVD SiN 与 LPCVD SiO₂ 对照、约 8 LSB 的 INL 缺口(摘要原文 8-LSB-wide gaps)均以此为准;该芯片工艺为 SiGe BiCMOS。

  • A-SSCC 2024 论文《A 16-Bit SAR ADC with Capacitor Dielectric Relaxation Effect Canceler in a 22-nm Microcontroller for Multi-Input Channel Applications》,A-SSCC 2024。用于核对该类“前一次转换残余影响当前精度”的问题仍见于多输入 SAR ADC;本文不把其性能数字外推到 Zanchi 案例。

  • iC-Haus,《iC-MNF 26-Bit Nonius Encoder with 3-Ch. Sampling 14-Bit Sin/D Interpolation》,数据手册 Rev C2,第 2 页 DESCRIPTION。「各路独立采样保持、再依次 A/D 转换」以此为准。

  • J. W. Fattaruso 等,《The Effect of Dielectric Relaxation on Charge-Redistribution A/D Converters》,IEEE Journal of Solid-State Circuits,Vol. 25, No. 6,1990 年 12 月。经 Casier 讲义 slide 130 转引,本文未读原文。

  • H. Casier,《Practical Aspects in Mixed-Signal ICs》,2010,slide 116–132。只用于提出极化机制、多 RC 等效和原论文图索引;历史案例的对外可核查出处仍为 Zanchi 论文。

◆ ◆ ◆

应作如是观
公众号「如是有为」二维码

关注公众号「如是有为」

微信扫一扫,新文章先在公众号发出。