ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

全差分运放共模反馈为何非加不可?开关电容SC-CMFB设计与仿真指南

全差分运放共模反馈为何非加不可?开关电容SC-CMFB设计与仿真指南 做全差分运放的人大概率都遇到过这种诡异现象原理图检查了三遍偏置也没毛病跑一个简单的 transient两路输出 Voutp 和 Voutn 的差分波形漂亮得很但它们的直流电平像商量好了一样慢慢往上爬最后直接怼到电源轨。我第一次碰到这事是在一个 SAR ADC 前端设计里第一版原理图把两级全差分运放搭好偷懒没加共模反馈结果就是上面这个画面。后来才彻底明白全差分运放的差分环路再结实输出共模也是一个无人看管的自由变量。今天这篇就好好聊一聊全差分运放 开关电容共模反馈SC-CMFB为什么非加不可、它怎么工作、设计时参数怎么定、仿真怎么验、版图怎么画以及最容易被忽略的坑都在哪里。想把手里的全差分运放从“能跑”做到“能用”这篇应该能帮到你。1. 从一次“忘加共模反馈”的事故说起全差分的共模失控1.1 事故回放仿真里爬升到电源轨的 Voutp/Voutn那是一个两级全差分结构第一级折叠共源共栅第二级 Class AB电源电压 1.8V输入共模和参考电压都设在 0.9V。刚开始做直流仿真一切正常增益、摆幅、功耗都在预期之内。等跑电路正常工作的 transient 时问题就来了输入给了一个 1MHz 差分正弦输出端 Voutp 和 Voutn 的差分信号一开始确实是对称的但两个节点的直流电平并不是稳稳停在 0.9V而是在几百纳秒内同时朝着电源轨方向漂移。差分输出幅度看起来还在增大实际已经出现削顶了。当时还以为是某个偏置电路没启动反复抓电路里的内部节点电压最后把 Voutp 和 Voutn 单独拉出来看发现这两个节点的平均值一直在变而差分环路并没有任何机制去纠正这个平均值。说白了全差分运放的差分环路把“Voutp - Voutn”控制得很好但“Voutp Voutn/ 2”这一项完全是开环的它就像一根没有对准零线的天平横梁差分环路管的是两边差值没人管两边的绝对位置。1.2 共模失控的物理根源悬空的输出直流电位很多人会有疑问理想情况下差分对不是天然抑制共模吗共模电压变化会被差动结构抵消掉怎么还会漂移理论上全差分结构确实对共模扰动有抑制作用但抑制共模干扰和稳定输出共模是完全两回事。抑制共模是指在输入端出现的共模扰动不会传到输出差分信号里去可输出端的直流电位本身靠什么锚定呢没有任何元器件给它一个明确的对地参考。实际电路里造成共模漂移的来源非常多差分输入对管阈值电压失配有源负载对称性不足输出节点的寄生电容不相等尾电流源的沟道长度调制效应随输出共模电压变化导致尾电流波动。任何一个不平衡的共模电流在输出节点上累积都会让输出直流电平整体移动。单端运放不存在这个问题是因为负反馈会强制输出直流跟随输入参考。而全差分运放的差分负反馈只约束两个输出之间的差值对它们共同漂移完全不敏感于是输出共模就变成了一个悬空的自由度。可以这样理解全差分运放的输出端像一艘没有自动舵的船差分环路管的是船舵方向但船整体的航向共模电平需要另一个人来纠偏。没有这个人船就会越偏越远直到撞上电源轨或地轨。1.3 共模反馈的本质并联在差分环路上的第二个负反馈要让输出共模稳定下来必须在电路里再加一套环路专门做一件事检测输出共模电压和参考电压比较生成一个控制信号调节共模电流把输出共模拉回到参考值。这个环路就是共模反馈CMFB环路。它不是用来处理差分信号的而是主差分环路之外并联的第二个负反馈。共模反馈环路的带宽其实不需要做多高因为差分信号的建立还是要靠主环但它的直流增益要足够不然输出共模误差压不下来。从结构上看共模环路和差分环路共用同一套放大器件只是检测量和控制量不同。它可能通过调节尾电流源电流、调节有源负载偏置或者改变输出级电流分配来稳定共模。做全差分运放的时候只要输出是浮动的、没有经过共模负反馈钳制的这个环路就省不掉差分管子摆得再漂亮都没用。2. 开关电容共模反馈的工作原理电容如何感知共模误差2.1 连续时间方案对比为什么 SC 方案没有静态功耗也不吃摆幅共模反馈的实现方式不只是开关电容这一种。最常见的对比方案是用两个大电阻把 Voutp 和 Voutn 分压出共模点再通过一个连续时间误差放大器把这个共模点与参考电压比较输出控制电压。这个方法简单直观但问题也很明显检测电阻直接并联在输出端会降低主放大器的输出阻抗进而吃掉一部分电压增益误差放大器本身还要消耗静态功耗和额外的电压裕度。在高增益、大摆幅的电路里这两个代价都不小。还有一种方案是用长尾管做共模检测直接在输出级串联一对交叉耦合的管子来感应共模电流。这种结构带宽很高适合连续时间应用但它对共模输入范围很敏感而且在小电源电压下很难把工作点设置妥当。SC-CMFB 的优势在于它用开关和电容代替了电阻分压和连续时间放大器。电容在采样相不消耗静态电流也不降低输出节点阻抗它只在开关切换的瞬间从输出端抽取一点电荷采样结束后和输出节点之间是断开的。这对高摆幅、低功耗的电路非常友好而且电容本身的匹配精度比电阻做分压要高得多。缺点是它是离散时间系统会带来采样保持纹波并且比较相期间输出共模只能靠电容保持所以它最适合用在本身就有时钟的开关电容电路里比如开关电容放大器、流水线 ADC 的残差放大器、SAR ADC 前端等。2.2 四电容结构的工作过程与电荷传递SC-CMFB 的结构有不少变体但最基础、最常用的是四电容结构两个采样电容 CS1、CS2两个保持/复位电容 CH1、CH2加上一组工作在两相非交叠时钟下的开关。我以最常见的接法来说明它的工作过程实际项目中可以根据主运放结构做细微调整。采样相 φ1 时CS1 一端接 Voutp另一端接共模参考电压 Vcm_refCS2 一端接 Voutn另一端也接 Vcm_ref。同时Vcmfb 节点通过一个复位开关接到预置电压 Vinit保持电容 CH 跨接在 Vcmfb 与 Vcm_ref或地之间把 Vcmfb 预充电到接近正常工作点的位置。换句话说φ1 的任务是把输出共模信息以电荷的形式存储在 CS1、CS2 上并且让 Vcmfb 复位到一个确定值。比较相 φ2 时原本接 Vcm_ref 的那两个电容端点连在一起接到 Vcmfb 节点CS1、CS2 的另一端仍然分别接 Voutp、Voutn。从外面看这两个采样电容变成串联连接中间节点是 Vcmfb。由于电容串联中点电压天然和两端电压的平均值成正比差模分量会在中点相互抵消中点电压携带的正是输出共模与参考之间的误差信息。这个误差通过电荷守恒作用把 Vcmfb 从预置电压拉到一个新值Vcmfb 再去控制主运放的共模调整管从而形成负反馈。稳态时每个时钟周期都会有微小电荷在采样电容和保持电容之间交换Vcmfb 最终停在某个平均值上输出共模被收敛到 Vcm_ref 附近。整个环路没有静态电流流过检测路径功耗主要是开关驱动的动态功耗代价则是 Vcmfb 在每个周期末尾会有一点点纹波。2.3 一个具体的定量估算纹波多大、反馈多强为了对这个结构有更直观的认识可以做一个简化估算。假设 CS1 CS2 0.5pF保持电容 CH 2pF输出共模电压偏离参考值 ΔVout_cm 50mV。根据电荷守恒Vcmfb 节点上产生的修正量大约是Vcmfb 修正量 ≈ (CS / CH) × ΔVout_cm (0.5 / 2) × 50mV 12.5mV也就是说共模误差被电容比例衰减后再送到控制管栅极。这个衰减不是坏事它防止输出共模出现大的瞬态过冲但代价是共模环路的检测灵敏度只有 0.25。最终环路的直流增益要靠控制管的跨导和主运放共模通路的增益来补。如果发现输出共模的直流误差偏大很多时候不是主环的问题而是这个检测比例或控制管跨导不够。Vcmfb 的纹波也可以用类似思路估算。每次采样相到比较相的切换CS 上的电荷变化量乘上开关切换的周期性会在 Vcmfb 上产生一个三角波或尖刺形态的纹波幅度大致在几十毫伏量级。如果纹波太大主要影响是输出共模带上了额外的周期性扰动在开关电容系统的保持相里可能被当作误差采样进去。通常我会看 Vcmfb 的纹波是否小于 30~50mV如果超过这个范围优先增大 CH而不是盲目减小开关尺寸。3. 从指标到尺寸SC-CMFB 的实际设计流程3.1 先定控制节点调尾电流还是调有源负载SC-CMFB 产生的 Vcmfb 最终要接到主运放某一个共模控制管上。选哪个节点直接决定了整个共模环路的极性和增益也影响输出摆幅和噪声。最常见的两种选择第一种是控制输入差分对的尾电流源。当输入对是 NMOS 管时尾电流源通常也是 NMOSVcmfb 直接接尾电流管栅极。输出共模升高时Vcmfb 需要朝某个方向变化改变尾电流进而改变输出支路电流分配把输出共模拉回来。这个方式简单控制效率高但对尾电流管的工作区有一定要求Vcmfb 波动不能把管子推到线性区。第二种是控制输出级的有源负载偏置。比如在折叠共源共栅结构里可以用 Vcmfb 调节 PMOS 负载管的栅极偏置改变输出节点的共模电流平衡。这种方式适合那些尾电流源本身已经由外部偏置固定、不方便再做动态调节的结构。选择控制节点时要先做一轮极性判断。我自己常用的做法是在第一版原理图里先把 Vcmfb 节点用理想电压源强制驱动手动扫描 Vcmfb 从低到高看输出共模电压往哪个方向走。这样就能明确知道“输出共模升高”对应“Vcmfb 应该变大还是变小”然后再去检查 SC-CMFB 比较相里 Vcmfb 的变化方向是否匹配。如果两者方向相反环路接上后就是正反馈仿真会直接出现等幅振荡。3.2 电容值、开关尺寸与时钟频率的约束关系SC-CMFB 的电容取值没有唯一标准但有几个硬约束要满足。采样电容 CS 不能太小太小会让开关电荷注入和时钟馈通的影响变得相对明显而且电容匹配精度也下降但 CS 也不能太大因为它直接挂在主运放输出端每次采样都会抽取电荷相当于一个动态负载会加重主放大器的建立负担。工程上我常用的范围是 0.2pF 到 1pF具体看主运放的输出负载电容多大一般不超过输出总负载电容的 1/5 到 1/10。保持电容 CH 的作用是让 Vcmfb 在比较相期间保持稳定。CH 越大Vcmfb 纹波越小共模控制管的工作点越稳定但 CH 太大会让复位相的时间常数变长Vcmfb 来不及回到预置电压反而影响下一个周期的采样。我一般取 CH (3~5) × CS。在 0.18μm 工艺、时钟 100MHz 的例子里CS 取 0.5pFCH 取 2pF工作起来比较舒服。开关尺寸的选取要考虑导通电阻和电荷注入的矛盾。采样相时间内RON 和 CS 构成的时间常数必须足够小通常要求 τ RON × CS Tphase / 10最好在 1/20 以下。假设时钟 100MHz采样相 5nsCS 0.5pF那 RON 要小于 1kΩ用最小沟长、宽长比十几微米/0.18微米的 NMOS 配合 CMOS 传输门可以做到几百欧姆。开关也不能只追求导通电阻低因为开关尺寸越大关断时注入到采样电容上的沟道电荷也越多会在 Vcmfb 上造成固定偏移。这里的核心准则是在满足建立时间的前提下开关尽量小。3.3 非交叠时钟与采样时刻的安排SC-CMFB 对时钟质量的要求比很多人想象的高。φ1 和 φ2 之间必须有明确的非交叠时间否则在开关切换时采样电容两端会同时存在两条电荷泄放路径Vcmfb 的工作点会被破坏甚至造成电荷共享错误。标准做法是加一个非交叠时钟生成电路死区时间取 2~3 个最小反相器延迟即可不要为了省事直接把两个反相时钟接到 SC-CMFB 上。更关键的是采样时刻的安排。SC-CMFB 的采样相应该选在主放大器输出信号已经基本稳定之后而不是在输出信号剧烈变化的时候。因为采样电容直接挂在输出端如果输出还在快速建立、摆幅很大采样电容抽取的电荷会随信号幅度变化导致 Vcmfb 混入信号相关的分量最后表现为输出共模上叠加了差分信号的失真成分。我在开关电容放大器里习惯把 CMFB 的采样相放在主放大器复位的那个相位把比较相放在主放大器高增益建立的相位。这样主放大器在建立阶段输出共模是被死死钳住的建立结束后的残余共模误差最小。4. 仿真验证怎么确认共模环路真的稳4.1 共模阶跃响应最直观的稳定性观察SC-CMFB 是周期时变系统严格来说不能直接用普通的 AC 仿真去验证稳定性。很多工程师习惯看差分环路的相位裕度却忽略共模环路结果流片回来才发现输出共模在某些条件下振荡。我最初级也这么干过被坑过一次之后就长记性了共模环路必须单独做瞬态验证。最直观的方法是做共模阶跃响应。给 Vcm_ref 一个阶跃比如从 0.9V 跳到 0.95V保持一段时间后再跳回 0.9V同时观察输出共模电压的响应。如果输出共模能在一个到几个时钟周期内跟随并收敛到新参考值并且没有持续振铃说明共模环路基本稳定。如果看到等幅振荡先别急着调电容去查极性大概率是 Vcmfb 接反了。如果收敛很慢且直流误差很大检查 CS/CH 的检测灵敏度和控制管跨导。另一个有效手段是在输出端并联一个理想脉冲电流源模拟共模扰动。因为 Vcm_ref 阶跃改变的是参考值而电流源扰动改变的是输出节点电荷两者结合可以更全面反映共模环路的动态响应。4.2 STB/PSS 分析与开关周期系统的小信号方法如果工具链支持 PSS周期稳态和 PSTB周期 STB强烈建议用它们专门分析共模环路的稳定性。做法是在 Vcmfb 到共模控制管栅极之间插入一个交流小信号探针用 PSS 求周期工作点再用 PSTB 扫描共模环路的开环增益和相位裕度。这样可以直接得到相位裕度数值不用靠 transient 波形猜。如果项目流程不允许跑 PSS也有一个工程化的近似办法把开关电容等效为离散时间电阻等效电阻约等于 1/(fclk × CS)再配合 CH 和共模控制管的 gm 建立一个小信号平均模型用普通 STB 仿真看趋势。这个平均模型在高频处不精确因为开关混叠效应没有建模但它能帮你快速判断共模环路有没有明显的增益不足或相位问题。我在实际项目中通常会先用 transient 阶跃响应观察整体行为再用 PSS/PSTB 出相位裕度数据两条路径互相印证。只有 transient 没有相位裕度数据评审时很难说服别人只有 PSS 没有瞬态行为又容易漏掉大信号下 Vcmfb 被拉到非线性区的问题。4.3 一组值得记录的检查项与调试对策仿真阶段我会固定检查几个指标整理成一张表方便每次新项目直接套用检查项常见现象优先对策输出共模直流误差比 Vcm_ref 偏离几十 mV 以上增大 CS/CH 比例或控制管 gmVcmfb 纹波超过 50mV增大 CH减小开关尺寸共模建立时间多个周期不收敛检查 CS 是否过大、开关 RON 是否过大比较相输出共模漂移高频分量叠加检查复位预置电压必要时加辅助连续时间共模正反馈振荡Vcmfb 呈现等幅振荡立即检查极性方向这些检查项里极性错误是最高频的翻车点。设计完第一版后先别着急优化性能先把极性确认清楚再谈精度和速度。5. 实战中的坑SC-CMFB 最容易翻车的几个细节5.1 复位相预置电压与建立死区很多初版 SC-CMFB 电路里Vcmfb 在复位相被开关直接拉到地或电源理由是反正复位嘛拉到哪都一样。但实际不是这样。如果 Vcmfb 正常工作在 0.7V复位相却拉到 0V那每次从采样相切到比较相时Vcmfb 都要从 0V 爬回 0.7V。这个爬升过程里共模控制管可能处于截止或弱导通状态输出共模在这段时间里几乎没有人管漂移的电荷就会在输出节点上积累。我习惯把复位预置电压设在这条支路正常工作点附近。一种简单做法是用一个由理想电流源和二极管连接的管子产生 Vinit让复位相时 Vcmfb 就被预置到接近稳态值的电平。这样采样相结束后比较相只需要做微小的电荷修正不需要从零开始建立Vcmfb 的毛刺明显减小。5.2 电荷注入和时钟馈通造成的共模偏移开关从导通到关断的瞬间沟道里存留的电荷会向源漏两端分配这叫作电荷注入。同时时钟跳变沿会通过 MOSFET 的栅源、栅漏交叠电容耦合到采样电容和 Vcmfb 节点这叫作时钟馈通。两者叠加在 Vcmfb 上的效果是每个开关周期开始时会有一个固定方向的电压阶跃最终表现为输出共模的直流偏移。减小电荷注入的方法有几种在采样开关旁边加 dummy 管尺寸取主开关的一半让沟道电荷对消或者用互补 NMOS/PMOS 传输门让两种载流子的注入方向相反或者增加保持电容 CH让注入电荷引起的电压变化变小。时钟馈通则主要靠版图解决尽量缩短时钟线与 Vcmfb 节点的耦合长度在关键节点周围加屏蔽线。这里要提一个容易忽略的问题Vcmfb 节点上不要挂任何不必要的探针电容或测试 buffer。仿真环境里加一个 50fF 的探针看起来没什么但它会改变 Vcmfb 节点的等效电容比进而改变纹波和环路相位裕度。我吃过这个亏清掉探针电容之后输出共模纹波从十几 mV 降到不到 3mV。5.3 采样电容对主放大器输出节点的动态负载效应CS 直接挂在输出节点上开关切换时它抽取的电荷和当前输出电平成比例。这意味着输出摆幅越大采样电容造成的动态负载非线性越明显主放大器的建立精度会受影响。这个问题在信号频率较高、CS 取到 1pF 以上时尤其明显。处理思路有三个方向。第一是减小 CS但前提是共模环路的检测灵敏度仍然够用。第二是把采样时刻放在输出建立已经完成的相位末端避免在输出变化斜率最大的时候抽取电荷。第三是在主放大器输出级和采样电容之间接受一点寄生电阻和电容把采样瞬间的电流冲击平滑掉但注意不能影响输出建立精度。我在流水线残差放大器里常把 SC-CMFB 的采样电容取在主运放输出负载电容的 1/10 以下以这台 SAR ADC 前端的经验来看0.3~0.5pF 是比较舒服的范围。5.4 纯 SC 方案与混合连续时间 CMFB 的取舍SC-CMFB 不是万能的。它的比较相期间Vcmfb 依靠保持电容维持但保持电容会缓慢漏电而且主运放输出节点的漏电流也不会完全消失。所以在比较相时间内输出共模实际上是在开环漂移的漂移量取决于漏电大小和时间长短。对于开关电容系统来说这个漂移可以接受因为随后采样相会把共模重新修正回来但如果是连续时间应用输出共模就会产生周期性纹波。高端流水线 ADC 里常见做法是 SC-CMFB 加一个低功耗连续时间辅助共模环路。SC-CMFB 负责主要的共模校正和直流精度辅助环路带宽很低、电流很小只负责把比较相期间的共模漂移拉住。两种方案配合既保留了 SC 方案不吃摆幅的优点又消除了离散时间系统的保持纹波。如果功耗预算宽松这是一个很值得考虑的组合。三种 CMFB 方案的直接对比我整理成下面这张表方案优点缺点适合场景电阻分压 连续时间放大器实现简单、连续稳定电阻负载降低增益、静态功耗高低频低摆幅电路长尾管共模检测带宽高、结构紧凑共模输入范围紧张、功耗大连续时间高速电路SC-CMFB无静态功耗、不吃摆幅离散时间纹波、对时钟敏感开关电容放大器、ADCSC 连续时间辅助混合精度高、纹波小面积和功耗略增高性能流水线 ADC6. 版图布局与在开关电容放大器中的典型配合6.1 电容匹配、开关对称与走线隔离版图阶段要做的事情不复杂但漏掉任何一个细节都可能让前仿结果作废。采样电容 CS 和保持电容 CH 必须使用同一种电容类型MIM 或 MOM不能混用并且要采用共质心布局减小工艺梯度带来的失配。开关管的摆放也要尽量对称因为不对称的源漏寄生电容会让电荷注入在 Voutp 和 Voutn 两条采样路径上产生不同影响最终转化为输出共模的偏移。Vcmfb 节点是所有模拟信号里最容易受干扰的一个因为它本身是高阻节点又直接连着共模控制管栅极。走线要短远离数字时钟线如果必须在时钟线附近穿给时钟线两边加地线屏蔽。Vcmfb 节点上布线的寄生电容会和 CH 并联改变电荷分享比例所以布线寄生电容要控制在 CH 的百分之几以内否则仿真里算好的纹波和环路增益会全部偏差。6.2 与开关电容主路的相位配合经验这篇文章开头我提到SC-CMFB 最适合用在开关电容放大器这类自带时钟的系统里。这里有一个特别重要的配合经验CMFB 的采样相和比较相必须和主放大器的主开关相位配合好。如果主放大器在放大相建立精确输出而 CMFB 偏偏在放大相里做采样复位那么整个放大相期间输出共模都没有环路限制会漂移到一个不确定的电平等主放大器已经建立完毕CMFB 才开始校正已经晚了。我曾在某款 SAR ADC 前端遇到过 SFDR 莫名掉了十几 dB 的情况排查了很久最后发现就是 SC-CMFB 的时钟相位接反了。把 CMFB 的采样相挪到主放大器复位相比较相挪到主放大器放大相问题直接消失。原因是输出建立阶段输出共模被环路主动钳在参考值动态负载的影响也被显著削弱。这个配合关系在做开关电容放大器相关设计时一定要记牢。最后分享一个调试习惯SC-CMFB 调好后用 Monte Carlo 跑一轮失配仿真重点看输出共模直流误差的分布。单点仿真好调但失配分布才是决定量产良率的关键。电容失配和开关电荷注入失配叠加会让输出共模出现几十毫伏的偏移如果你的后级电路对共模电平有严格要求提前在这个阶段做修正比流片后在测试板上补偿要省事得多。
返回列表