
1. 低供电电压下偏置电路为什么这么难做1.1 供电电压下降后最先扛不住的是“余量”做模拟IC设计的人基本都经历过这种尴尬工艺节点越做越新核心电压从5V降到3.3V、1.8V现在很多低压工艺直接到1.2V甚至0.9V可晶体管的阈值电压并没有按比例往下降。Vth还是那个Vth供电却越来越薄最先出问题的就是偏置电路。偏置电路看起来简单所有模块的静态工作点都靠它撑着。传统做法是上带隙基准再加一堆cascade电流镜去分配电流。但低电压下这套组合拳根本打不动。算算就知道一个典型cascade电流镜从电源到地要经过一个PMOS的|Vdsat|加一个PMOS的|Vth|再叠一个NMOS的Vdsat加NMOS的Vth粗略一加就是0.20.40.20.41.2V这还是在所有管子只有200mV过驱动电压的情况下。VDD只有1.2V的时候这一点点余量连温度变化、工艺角偏移都盖不住更别说还要给管子留线性区以上的工作空间。所以低供电电压设计里偏置结构必须走“少堆管子、多靠自洽”的路线。我见过很多团队在1.2V以下仍然坚持用带隙基准加运放最后要么是运放输入共模范围不够要么是启动和环路稳定问题把人折腾得够呛。相比之下题目里说的这种“有些类似于三支路电流源”的CMOS偏置结构反而是我实际项目里更常用、也更愿意推荐给别人的做法。这类电路的核心思想很简单利用MOS管自身Vgs和Vth的关系把阈值电压或Vgs差“翻译”成一个电流再用电流镜和负反馈环路把这个电流稳定住。整个过程不需要运放、不需要BJT、不需要高余量的叠管结构天然就适合低压环境。1.2 为什么三支路电流源这类结构会“顺理成章”所谓三支路电流源不同资料里叫法不太一样有人叫self-biased current reference有人叫threshold-referenced bias但结构上往往都绕不开三条支路一条支路产生参考电压或参考电流一条支路做反馈钳位一条支路把最终偏置电流镜像出去。三条支路互相牵制电流一旦建立环路会自动找到平衡点。这种结构在低压下的优势我总结有三个第一工作点不由外部基准决定而由管子和电阻的比例关系决定。只要管子尺寸差是确定的电流在原理上就跟电源电压无关这在headroom紧张的时候非常宝贵。第二所有管子都工作在饱和区边缘甚至亚阈值区单个管子消耗的电压余量可以压得很低。低压设计的核心就是“能少叠一层就少叠一层”三支路结构所有管子基本都在一到两层以内天然适合。第三不需要运放就不用去处理运放输入共模范围、输出摆幅这些额外约束。反馈是靠电流镜管的栅极直接耦合完成的结构紧凑寄生也少。当然这套结构也有自己的坑比如启动问题、环路稳定性问题、温漂控制问题。这些后面我会逐个展开。2. 低电压CMOS偏置电路架构解析2.1 把阈值电压“翻译”成电流的支路设计实际项目里我常搭的三支路偏置基本框架长这样上面是两个PMOS管组成电流镜下面接三条NMOS支路。第一条支路里一个二极管接法的NMOS管串联电阻到地这个二极管接法的NMOS就是阈值提取管它的Vgs约等于Vth加一点过驱动电压。第二条支路是另一个NMOS栅极和第一条支路的栅极节点相连源极根据设计选择直接接地或串一个小电阻。第三条支路是额外的NMOS或者PMOS输出管负责把电流镜像到外围电路。先看阈值提取这条支路的原理。二极管接法的NMOS假设它工作在饱和区那么电流关系是I (1/2)μCox(W/L)(Vgs − Vth)²Vgs Vth sqrt(2I / (μCox(W/L)))如果我把这条支路的电流取得很小同时用长沟道管子把(W/L)做得比较小、沟道长度做得比较大那么过驱动电压ΔV Vgs − Vth可以压到30mV以内。也就是说Vgs几乎就等于Vth。这时候如果再接一个电阻把Vgs转成电流那这路电流就正比于Vth。Vth本身有负温度系数电阻如果选正温度系数类型两种温度特性相互抵消就能得到温漂很小的参考电流。这里有个计算示例。假设工艺给的NMOS阈值电压典型值是0.45V设计要求偏置电流2μA我如果直接用Vgs/R来产生电流取R 0.45V / 2μA 225kΩ。这个阻值在标准CMOS工艺里用poly电阻很轻松能做出来长宽比大概几十比一面积也完全可以接受。但要注意Vgs Vth Vov实际上电阻上压降是包含过驱动电压的所以真实电流会比Vth/R偏大一些。设计时要反复跑一两次迭代把W/L和R调整到目标电流。我习惯的做法是先按理想值算一遍再用Spectre跑DC看每个管子的Vgs和Vds确认所有管子都留够了电压余量再回来微调电阻。2.2 反馈钳位与电流镜三支路是怎么互相牵制的三支路结构的核心不只是阈值提取更关键的是支路之间形成了一条负反馈环路。一个典型结构里假定第一条支路电流因某种扰动变大那么阈值提取管节点电压会上升这个电压连到第二条支路的NMOS栅极会让第二条支路的NMOS导通得更强然后第二条支路的电流变化再通过上方的PMOS电流镜反馈回第一条支路形成一个闭合环路。只要环路增益和相位裕度合适整个偏置电流会被死死稳定在一个值附近。有人第一次看这个结构会觉得绕其实可以把它理解成一个“电压自举”的过程。每个支路都不参考外部基准而是靠“邻居”的电压共同把自己稳住。这和传统的运放加基准的思路完全相反运放是拿一个精准电压来做误差放大三支路这里是拿管子之间的失配和Vgs差值来定义电流。PMOS电流镜在这里承担了电流分配的作用。上方的PMOS管尺寸比例决定了三条支路之间的电流分配系数这个比例同时影响环路的增益和瞬态响应。设计时我一般把PMOS电流镜的L取得稍微比最小长度大一点比如用0.5μm甚至1μm沟道长度调制效应会小很多电流镜镜像精度也更好。低压设计里很多人误以为L越小越好其实L过小会牺牲输出阻抗偏置电流随Vds变化明显低压下这是致命的。反馈钳位支路的NMOS尺寸也有讲究。它既要把第二条支路的电流拉起来又要在正常稳态下保持饱和。如果过驱动电压取得太大低电源电压下Vds余量就不够取得太小该支路的噪声和失配又会比较明显。通常我会让这个NMOS的Vdsat控制在100到150mV之间这样既保证饱和又留有足够余量。2.3 尺寸设计与宽长比选择的计算过程具体设计时我一般从输出电流指标反推尺寸。拿一个1.2V电源电压、目标2μA偏置电流的例子来说整体的尺寸和参数可以按下面思路来定。先决定电阻。R (Vth Vov) / I初算取0.45V/2μA225kΩ后面迭代再微调。然后定阈值提取管的尺寸。为了让Vov尽量小取(W/L) 2/10这样长沟道下拉电流能力弱在2μA下过驱动电压自然被压低。实际算下来如果μCox大约200μA/V²则Vov ≈ sqrt(2×2/(200×0.2)) ≈ 0.316V这个数偏大了。所以要么把(W/L)继续做小到1/20要么减小电流到更小值让Vov降到50mV以下。我的做法是先按目标电流反推一个(W/L)再用DC仿真看Vov不满足就迭代。设计过程中这种“预计算加仿真校准”的方式比手工硬算高效得多。反馈钳位NMOS的(W/L)可以按支路电流和目标Vdsat来定。第二条支路电流也设为2μA如果Vdsat取150mV那么(W/L)差不多是4/1到6/1这个范围具体数值看工艺的μCox参数。PMOS电流镜的尺寸则由电流镜比例决定两支路电流相同时一个典型取值是(W/L) 5/1。所有管子的Vds都必须检查。低压下最容易翻车的点就是某些管子以为自己在饱和区结果Vds不够实际上已经进了线性区电流关系完全不按公式走。我一般会在原理图仿真里把每个管子工作点都打出来逐个确认Vds比Vdsat大150mV以上。3. 核心细节启动、稳定性、温漂哪个都不能省3.1 自偏置的“死锁”问题与启动电路设计所有自偏置结构都必然面对一个问题上电瞬间环路存在一个零电流的状态。这个状态是稳定平衡点电路可能永远停在那里电流镜里几乎没有电流所有节点电压都掉到地电位然后整个偏置就“死”了。为什么零电流态是稳定的因为如果所有管子电流都是零反馈环路里没有任何信号变化来打破这个平衡。必须外加一个扰动把某个节点电压抬高让某条支路开始导通电流建立起来之后环路才能正常锁定。启动电路的做法很多我常用的是一种最简单的方案用一个很小的NMOS管栅极接电源源极接环路里的某个敏感节点比如阈值提取管的栅极或某个电流镜管的漏端。上电瞬间这个启动管导通给节点注入一个微小电流抬高节点电压让主环路开始建立电流。等环路正常工作后节点电压抬升启动管的Vgs会逐渐减小最终自行关断不再影响主电路。启动电路的尺寸要谨慎设计。电流太小节点电压抬不起来电路还是起不来电流太大启动阶段可能会把节点电压推过头导致其他管子异常导通反而拖慢启动时间。我一般先设一个初始值比如(W/L)0.2/1再在仿真里做上电瞬态扫描观察是否有电流建立、建立时间多少毫秒。如果启动太慢就适当增加W如果启动瞬间有大的过冲就减小W。还有一点容易被忽略启动管的栅极如果直接接电源电源快速上电时会有耦合电流这虽然不是坏事但要注意它在上电完成之后是不是真的能完全关断。如果关不断就会在正常工作时漏电流影响偏置电流的精度。所以启动管选型时尽量用低阈值器件或做成长沟道确保关断彻底。3.2 环路稳定性为什么有些人跑瞬态会看到正弦波自偏置电路本质上是带反馈的环路而反馈环路最怕的就是振荡。在设计三支路结构时总有工程师把原理图搭好后直接跑DC和瞬态结果发现偏置电流不是稳的而是以某个频率上下振荡有几个毫伏甚至几十毫伏的正弦波动。这就是典型的环路稳定性问题。这个环路由电流镜管、反馈NMOS管和寄生电容构成。环路的开环增益并不高通常就20到30dB但因为低压下管子的过驱动电压都很小跨导又相对大很容易在主极点附近再叠加一个次极点把相位裕度打下来。我测试过不少类似结构发现最容易振荡的工况是电流取到微安级以下管子工作在弱反型区边缘gm很大同时版图走线又带了比较大的寄生电容形成一个低频次极点。两个因素一叠加相位裕度可能只有二十几度瞬态跑出来就是持续的正弦波。解决办法有几个方向。第一合理选择管子的L加大反馈管沟道长度可以降低gm减小环路增益但代价是速度和电流精度需要权衡。第二减小寄生电容版图上把反馈节点周围的走线尽量缩短别让电源线和这个敏感节点挨得太近。第三实在不行可以在环路主节点加一个小的补偿电容但这个电容不能太大否则会把主极点压得很低启动时间变得不可接受。我习惯在仿真阶段专门做一次STB分析扫描温度和工艺角看每个corner下相位裕度是不是都大于60度。如果哪个corner低于45度我一定会回头调整尺寸而不是抱着侥幸心理流片。3.3 温漂与电源抑制实测数据的解读方式三支路电流源的温度特性取决于参考电压构建方式。如果是用Vth直接做参考那么电流I≈Vth/RVth常温下大约0.4到0.6V温度系数是负的大约−0.5mV/°C到−1.5mV/°C。如果电阻是正温度系数poly电阻温度系数大约300到800ppm/°C两者叠加后电流的温漂可以做到几十ppm/°C的量级虽然不是带隙基准那种极低漂移但对大部分低压模拟模块的偏置需求来说已经够用了。如果用的是Vgs差做参考思路类似Widlar结构I ΔVgs/R一阶上Vth被抵消电流主要由μCox和R决定。μCox是负温度系数R是正温度系数所以同样可以通过电阻类型的选择来拉平温漂。好处是不依赖绝对Vth的精度对工艺角偏移不那么敏感坏处是设计公式更复杂对尺寸比的误差比较敏感。电源抑制这块我们要诚实一点说纯三支路结构在高增益运放面前PSRR并不算优秀。因为管子数量少、没有cascade去屏蔽Vds变化电源上的纹波会通过沟道长度调制效应直接漏到偏置电流里。实测在1kHz频率下普通三支路结构的PSRR可能只有20到30dB而带基本共源共栅结构的传统偏置能做到50dB以上。低压下没法堆cascade想提高PSRR怎么办我自己的经验是第一把电流镜管的L做大输出阻抗变高电源纹波造成的电流扰动会变小。第二在版图上把电源线敏感节点隔离避免电源噪声直接耦合到反馈节点。第三如果系统允许可以在偏置电路前面加一个小RC滤波把电源中的高频纹波先滤一轮再进偏置。这些方法组合起来PSRR能提升到40dB左右足够大多数模拟模块使用了。4. 版图与后仿真低电压结构比想象中“娇气”4.1 三支路的匹配与隔离布局很多人觉得偏置电路规模小、管子少版图随便画一画就行。真实情况恰恰相反偏置电路是整颗芯片里对匹配和寄生最敏感的部分之一。三支路结构里两条关键支路的管子一旦失配输出偏置电流就会偏得非常离谱而且这种偏差不像数字电路那样可以通过后级校准拉回来。电流镜管的匹配是第一位。两个PMOS电流镜管必须做成共质心结构同时四周加dummy管保证刻蚀和注入环境一致。我见过有人为了省面积把dummy省了结果流片出来左右支路电流差了百分之十几整个IP的工作点全部跑偏最后只能改版。阈值提取管和反馈钳位管也是一样。这两个NMOS之间的任何阈值电压失配都会直接折算到最终偏置电流上。如果工艺的Vth失配系数比较大建议这两个管子都用相对较大的面积减小失配的sigma。我在设计时一般会估算一下假设Vth失配σ是3mV·μm两个管子面积分别是W×L5μm×1μm那么Vth失配大概是3mV对应的电流偏差大约百分之几这个量级还能接受。如果想进一步降低就把面积翻倍、用两个管子并联。电阻的布局同样关键。poly电阻要放在远离大功耗模块的地方避免温度梯度带来额外的阻值误差。如果同时用两种电阻做温漂抵消两种电阻必须紧紧贴在一起保持相同温度环境。给电阻加一圈guard ring也很重要防止衬底噪声和边缘漏电对高阻值电阻造成影响。4.2 后仿真中的寄生效应与修正低压偏置电路对寄生参数非常敏感。前端原理图仿真再漂亮后仿真一跑就原形毕露这是我做这类电路最深刻的体会。寄生电阻会直接改变参考支路的电阻值。比如225kΩ的电阻如果走线寄生串了5kΩ看起来只差百分之二但在电流计算里这个偏差会直接折算成电流误差。更麻烦的是有些走线电阻的温漂和poly电阻不一样会把精心调好的温度补偿曲线拉歪。寄生电容的影响主要体现在环路稳定性上。反馈节点如果走线长了寄生电容可能达到50到100fF这个电容会在环路里形成新的极点。当偏置电流很小时管子跨导本来就低这个次极点一旦落到主极点附近相位裕度急剧下降后仿真瞬态直接振荡。我处理后仿真问题的方法是先跑一次带完整RC提取的后仿观察所有关键节点电压和电流与前端仿真的偏差。如果偏差超过百分之五就回到版图逐段检查是哪段走线贡献了主要寄生。通常重灾区是电阻两端的长连线和高阻节点。高阻节点走线要尽量短而粗避免用最小间距走长线。电阻两端如果必须走比较长的线我会在版图阶段就把这条线也做成匹配结构让两端的寄生电阻尽量相等。5. 常见问题与排查技巧实录5.1 三类典型故障速查表在实际调试中我总结了一个针对低电压CMOS偏置电路的排查速查表基本覆盖了我遇到过的大部分问题。症状可能原因排查手段上电后偏置电流始终为零启动电路失效、启动电流过小、反馈节点被死锁检查启动管Vgs是否足够在敏感节点手动注入电流看电路能否进入正常态瞬态偏置电流呈正弦振荡反馈环路相位裕度不足、寄生电容形成次极点做STB分析看各corner的PM加大反馈管L减小敏感节点寄生电容电流温漂曲线出现异常拐点过驱动电压偏大、某管子进入线性区、电阻类型选择不当观察所有管子工作点确认Vds是否大于Vdsat检查电阻温漂系数第一个问题最常见的原因其实是启动电路设计不当。很多人把启动管W取得特别小比如0.1μm结果在某个工艺角上启动时间超过了系统上电时序要求看起来就像没启动。我一般会做一个跨温度和工艺角的上电瞬态仿真确保最慢corner下的启动时间也在预算之内。第二个问题我在前面已经详细说过这里再补一个经验如果振荡频率很低比如几百kHz多半是环路里某个偏置节点充电时间常数太大这时候不要急着加补偿电容先看是不是电流太小导致跨导不够。如果振荡频率在几MHz以上那通常就是版图寄生的问题回到版图去缩短走线更有效。第三个问题排查起来最花时间因为温漂曲线异常往往要在多个温度点反复跑仿真才能定位。我的习惯是先看所有管子在-40°C、25°C和125°C三个温度点下的工作点确认没有管子在线性区再看电阻类型。如果是Vth参考型电路温漂异常往往意味着Vov没有压到足够低如果是Vgs差参考型则是尺寸比没算准。5.2 设计收敛与个人实操心得这类低电压偏置电路我一共做过多版流片前前后后也踩了不少坑。在这里把一些能帮大家少走弯路的体会写出来。第一开始设计时先用理想电流源做环路方向验证。我搭电路的习惯是先不急着把最终拓扑画出来而是用几个理想电流源代替部分支路先把环路的反馈方向和参考电压节点关系推清楚确认逻辑上没问题再替换成实际晶体管。看起来多了一步实际上省了很多反复改原理图的时间。第二工作点检查一定要用工艺角和温度包络做不能只看tt corner。低压下工作点余量本来就紧ss工艺角低温时Vth会偏高ff工艺角高温时Vth偏低如果在tt下看起来留了200mV余量换到ss下可能只剩70mV。我自己定了一个规矩每个管子在所有corner下的Vds必须比Vdsat大150mV以上做不到就调整尺寸绝不妥协。第三蒙特卡洛仿真一定要跑。偏置电路的精髓是匹配和统计失配在低压下影响更加突出。我至少会跑200个点的蒙卡统计输出电流的均值和sigma。如果sigma超过设计指标的百分之三我会考虑增大关键管子的面积或者调整过驱动电压把失配等效压下来。第四输出偏置电流别直接用单管镜像到负载。我通常在基准电流产生电路和最终输出之间加一级缓冲或二次镜像这样负载端的寄生和噪声不会直接污染参考环路。代价是多消耗一点电流和余量但对整体稳定性收益很大。第五流片前做一遍电源上电斜率扫描。低压电路对电源上电斜率很敏感上电特别快或者特别慢都可能触发不同的启动行为。我会扫一下上电时间从1μs到10ms的范围确保整个区间内电路都能正确启动电流建立过程没有过冲或者振铃。6. 写在最后的设计建议做低电压CMOS偏置电路最重要的是建立一种“电压预算”的思维。VDD就那么多每个管子分走一些电阻分走一些启动电路和防护结构也要占一部分最终所有管子都必须饱和工作任何一个环节超支整个环路就崩了。我在设计开始前会先画一张电压分配表把每一支路的电压开销列出来确认总和低于VDD并留有足够余量才开始画原理图。这种方法一开始觉得繁琐但用熟了之后效率反而最高。因为很多问题在纸面预算阶段就能暴露出来省去了后续大量的仿真迭代。另外这类电路可供扩展的方向也很多。比如在参考支路里增加两个不同温度系数的电阻做比例组合可以把温漂从几个mV再压一个量级又比如把输出支路改造成动态电流源在某些需要快速瞬态响应的场景下很有帮助。每种扩展本质上还是在“少叠管子、多靠自洽”这个框架下做文章。偏置电路永远是模拟设计里最不起眼却最要命的一块希望这篇分析能帮你少踩一些我踩过的坑。