SAR ADC核心原理:逐次逼近逻辑、电容阵列DAC、比较器设计要点

各位同学,今天咱们来啃SAR ADC这块硬骨头。说实话,SAR ADC是我个人觉得最“聪明”的架构之一——它用最少的模拟电路,干最复杂的活。我刚开始接触时也觉得玄乎,后来亲手搭过几个电路才明白,说白了就是“二分法查找”的硬件实现。

一、逐次逼近逻辑:SAR的核心大脑

逐次逼近逻辑,简称SAR逻辑。它的任务很简单:告诉DAC该输出什么电压,然后看比较器的结果,再决定下一步。你想想看,这就像猜数字游戏——我说“50”,你说“大了”,我就猜“25”,直到猜中为止。

SAR ADC的转换过程,我习惯用“三步走”来理解:

  1. 采样阶段:开关闭合,输入信号VIN给电容阵列充电
  2. 保持阶段:开关断开,电容上电荷保持不变
  3. 逐次逼近阶段:从MSB到LSB,一位一位地比较

这里有个关键点——时序控制。我在项目中遇到过一个问题:SAR逻辑的时钟频率没算好,导致比较器还没稳定就触发了下一拍,结果转换结果全乱套。嗯,这里要注意,SAR逻辑的每个bit比较周期,必须给比较器留够建立时间。

核心公式:N位SAR ADC需要N+1个时钟周期完成一次转换(1个采样周期 + N个比较周期)

SAR逻辑的实现方式有两种:

  • 同步SAR:用外部时钟驱动,时序可控,但速度受限
  • 异步SAR:靠内部自定时,速度快,但设计复杂

我个人更偏爱异步SAR,尤其是做高速设计时。但异步SAR有个坑——亚稳态问题。我曾经因为没处理好亚稳态,导致芯片在某些工艺角下偶尔出错,查了整整两周才定位到问题。

避坑指南:异步SAR逻辑中,比较器的“Valid”信号必须做同步处理,否则亚稳态会传播到整个逻辑链。

二、电容阵列DAC:精度与面积的博弈

电容阵列DAC是SAR ADC的“心脏”。它负责把数字码转换成模拟电压,然后跟输入信号做比较。说白了,它就是一堆电容,通过开关切换来产生不同的分压比。

最常见的结构是二进制加权电容阵列。假设一个10位SAR ADC,电容阵列从大到小依次是:512C、256C、128C……一直到1C。总电容是1024C。

但这里有个现实问题——电容失配。你想想看,512C和1C差了512倍,工艺偏差对它们的影响完全不一样。我做过一个12位SAR ADC,流片回来测试发现INL很差,一查就是大电容和小电容的匹配出了问题。

我的经验:对于10位以上的SAR ADC,建议采用“分段式电容阵列”或“C-2C结构”来减小面积和失配。分段式结构把高位和低位分开,中间用耦合电容连接,能有效降低总电容值。

电容阵列的另一个关键点是开关策略。常见的开关方式有:

开关策略 优点 缺点
传统开关 结构简单,容易理解 功耗大,共模电压变化大
单调开关 功耗低,共模稳定 需要额外参考电压
VCM-based开关 功耗最低,面积小 逻辑复杂,时序要求高

我个人在低功耗项目中常用VCM-based开关,功耗能降低50%以上。但要注意,VCM电压的精度直接影响ADC性能,必须用低阻抗的buffer来驱动。

三、比较器设计要点:速度与噪声的平衡

比较器是SAR ADC的“眼睛”。它要判断DAC输出和输入信号谁大谁小,然后给SAR逻辑一个0或1。这个判断必须又快又准。

比较器的核心指标有三个:

  • 速度:决定了SAR ADC能跑多快
  • 噪声:决定了ADC的精度上限
  • 失调:决定了ADC的偏移误差

我常用的比较器结构是动态锁存比较器。它没有静态功耗,速度也快,非常适合SAR ADC。但动态比较器有个毛病——回踢噪声。比较器在锁存瞬间会从输入端抽取电荷,这个电荷会干扰DAC的输出电压。

解决方案:在比较器输入端加一对“预放大级”,或者用“隔离电容”来阻断回踢噪声。我习惯用前者,因为预放大级还能顺便提供一点增益,降低比较器的输入参考噪声。

比较器的失调校准也是个绕不开的话题。对于10位以上的SAR ADC,比较器的失调必须校准。常用的校准方法有:

  1. 输入失调存储:在采样阶段把失调电压存到电容上
  2. 输出失调存储:在输出端用辅助DAC补偿
  3. 数字校准:在数字域减去测得的失调值

我曾经在一个项目中用了输入失调存储,结果发现校准精度受限于电容的电荷泄漏。后来换成数字校准,虽然多花了点数字逻辑,但效果稳定多了。

注意:比较器的噪声和速度是矛盾的。想降低噪声,就得增加功耗或面积。做设计时一定要根据系统指标来权衡,别一味追求低噪声而把功耗做爆了。

四、知识体系总览

下面这张图是我自己画的SAR ADC核心知识框架,帮你理清思路:

SAR ADC 核心知识体系 逐次逼近逻辑 电容阵列DAC 比较器 同步SAR / 异步SAR 时序控制 / 亚稳态处理 二进制加权 / 分段式 / C-2C 开关策略 / 电容失配 动态锁存 / 预放大级 回踢噪声 / 失调校准 关键设计要点:速度 vs 精度 vs 功耗 SAR ADC = 逐次逼近逻辑 + 电容阵列DAC + 比较器 三者协同工作,缺一不可

这张图把SAR ADC的三个核心模块和它们的关键设计点都列出来了。你仔细看看,每个模块都有自己的一堆坑要填。做设计时,这三个模块必须一起考虑,不能孤立地优化某一个。

好了,SAR ADC的核心原理就讲到这里。记住,理论是基础,但真正的功夫在流片回来的测试台上。多动手,多踩坑,你才能真正理解SAR ADC。