SAR ADC:逐次逼近、电容 DAC、采样保持与转换时序
更新时间:2026-09-19。前置:ADC 过采样/抽取/ENOB、ΣΔ 调制器、流水线 ADC。SAR(Successive Approximation Register)是 MCU、传感器、控制环里最常见的 ADC 架构:12~16 位、几百 kSPS 到数 MSPS、功耗低。
本文要回答的问题
- 为什么一个 N 位 SAR 只需 N 次比较就能出结果?
- 采样保持、电容 DAC、比较器、SAR 逻辑如何协作?
- 电荷再分配 CDAC 怎么实现「二分天平」?
- 采样时间、失配、基准稳定性带来哪些坑?
一、核心思想:二分搜索
SAR 像用天平二分称重:先猜最高位(满量程一半),用内部 DAC 产生猜测电压和输入比较,根据结果保留/撤回该位;再试次高位……逐位逼近,直到最低位。
- N 位结果 = N 次逐位比较 + 一个内部 DAC + 一个比较器 + SAR 控制逻辑。
- 每次比较确定 1 位(MSB→LSB),所以转换时间≈N 个比较周期 + 采样时间,速度中等。
- 与 ΣΔ 用速度换精度(见此)不同,SAR 在单个采样点上快速给出结果,延迟低、适合多路复用和控制环。
二、信号链与时序
bash
模拟输入
│ 采样相(sample): 开关把输入接到 CDAC 顶/底板,SHA 跟踪输入
▼
采样保持(SHA / CDAC 本身兼采样电容)
│ 转换相(hold): 开关断开,电容上保持采样电荷
▼
比较器(+端: CDAC 残压 / −端: 比较基准,常为共模)
▲
CDAC(电容阵列 DAC,受 SAR 逐位控制接 Vref/GND/共模)
│
SAR 数字逻辑: MSB→LSB 逐位置位试探,按比较结果保留或清位
▼
N 位结果寄存器两阶段时序:
- 采样(acquisition/sample):开关闭合,输入通过驱动给采样电容(CDAC 阵列)充电,必须充到足够精度(>0.5 LSB),需要 ≥ 若干 RC 时间常数;这就是数据手册的最小采样/采集时间。
- 转换(conversion):采样开关断开(底/顶板切换),SAR 从 MSB 开始逐位切换 CDAC,比较器判残差符号,N 拍后得到码字;转换期间输入变化不影响已采样电荷(但带宽/kickback 要注意)。
三、电荷再分配 CDAC(主流实现)
现代 SAR 多用电容阵列而非电阻 DAC:二进制加权电容(总电容 2C、C、C/2……对应各位),底板在采样时接输入,转换时由 SAR 在 Vref/GND(或差分 Vref±)间切换,顶板做电荷再分配产生残压。
- 电容 DAC 不静态耗电流(切换时才动电荷),功耗低;电容匹配比电阻匹配好,温度稳定。
- 采样电容即 CDAC 总电容,输入驱动要在采集时间内充满这个电容(输入阻抗随采样率变化,呈开关电容负载)。
- 采用单调(monotonic)、Vcm-based 等切换方案可省电、减共模跳变;差分结构抑制共模和 kickback。
四、关键非理想因素
- 电容失配(DNL/INL):二进制电容若不严格按 2 倍比例,产生 DNL/INL、失码。高端 SAR 用**分段(split/bridge cap)阵列、前台/后台数字校准(trim)**改善电容失配。
- 比较器失调/亚稳态:输入对管失调导致偏移;末位附近比较器可能亚稳。用 offset trim、比较器前置放大/正反馈,必要时冗余位(redundancy)容忍错误比较。
- 基准缓冲与去耦:每次 CDAC 切换都从 Vref 抽电荷(charge kick),Vref 若被拉低会影响后续位和下一次转换。Vref 引脚要就近大去耦电容 + 强缓冲,多通道/高吞吐时基准建立是常见瓶颈。
- 采样开关/kickback:开关关断瞬间时钟馈通、沟道电荷注入、底板跳变回馈到输入(kickback noise);用底板采样、互补开关、dummy 管、bootstrap 栅压自举(高输入电压时保证开关充分导通)缓解。
- 孔径不确定(aperture jitter):采样时刻抖动在高频输入时引入噪声(见 过采样里的 jitter)。
五、吞吐、多路复用与架构对比
- 吞吐:转换速率受采集时间 + N×比较时间限制;提高时钟/异步 SAR(每比较自定时)可加速。
- 多路复用:一个 SAR 配模拟 mux 轮询多通道,切换后必须重新等采集时间(与 ΣΔ 多通道建立 类似,CDAC 要从新源充电,可能需更长 acquisition)。
- 架构对比:
| 架构 | 分辨率 | 速度 | 特点 |
|---|---|---|---|
| SAR | 12~16 位 | 中(kSPS~MSPS) | 低功耗、低延迟、需元件匹配/基准稳 |
| ΣΔ | 16~24 位 | 低 | 高分辨率、低速、数字抽取、延迟大 |
| 流水线 | 12~16 位 | 高(10s~100s MSPS) | 多级流水、高带宽、耗功耗(见 流水线 ADC) |
| Flash | 6~8 位 | 极高 | 一次比较、2^N 比较器、功耗大 |
六、常见的坑
- 采集时间给太短:高源阻抗驱动不动 CDAC,采样值未建立,读数偏小/非线性;按 RC×ln2^(N+1) 留足时间或加运放缓冲。
- 基准去耦不足:Vref 被 CDAC charge kick 拉低,码值跳变、通道间串扰;就近大电容、低阻缓冲。
- 切换通道立刻读:CDAC 还带着上一通道电荷,读数串味;插入足够 acquisition 或 dummy 转换。
- 源阻抗随采样率变化没考虑:SAR 是开关电容负载,源阻+采样电容形成低通,高频吞吐下衰减。
- 时钟/孔径抖动:高输入频率下 jitter 转成噪声。
- 输入超共模/满量程:差分 SAR 共模范围严格,超范围结果错误。
- 采样期间转换未完成就读:EOC/DRDY 未到就读旧值;转换中重配通道破坏本次。
- 忽略 kickback 扰源:高阻传感源被开关注入干扰,需缓冲/RC。
- 温度下失配超差:未校准的 CDAC 在温度两端 DNL/INL 变差。
- 比较器末位亚稳:极慢斜率输入时末位抖,可过采样平均。
- 把分辨率当 ENOB:16 位是位数,实际 ENOB 受噪声/参考/温漂影响更低。
- Vref 与 VDDA 混用噪声:数字开关噪声耦合进基准/模拟电源,需隔离去耦(见 ESD/IO)。
相关与延伸
速度换精度的对照见 ΣΔ ADC;高速对照见 流水线 ADC;通用 ENOB/混叠见 ADC 过采样与滤波;触发配合见 定时器捕获/PWM。
总结
SAR ADC 用「采样保持 + 电容阵列 DAC(CDAC)+ 单个比较器 + 逐位逼近逻辑」对采样电压做二分搜索:采样相输入对 CDAC 充电跟踪、转换相断开开关后由 SAR 从 MSB 到 LSB 逐位置位切换 CDAC、比较残差并按结果保留或撤回,N 位只需 N 次比较,天然低延迟低功耗;电荷再分配 CDAC 不静态耗电但每次切换都从基准抽电荷,因此采样驱动必须在采集时间内充满电容、Vref 必须强缓冲近旁大去耦,多路复用要给足重新采集时间——采集不足、基准被拉低、通道切换未等建立和 CDAC 失配是四大常见坑。