尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

自偏置电流镜设计全流程:从原理到版图,再到流片测试

自偏置电流镜设计全流程:从原理到版图,再到流片测试 做模拟IC的朋友应该都有这种经历电流镜用了一堆但很少有人仔细想过镜子里那路基准电流到底从哪来。我入行前几年一直把它当“搬运工”——外部给一个基准电流它负责复制多路偏置。真正被上课是我接手一个电源管理项目顶层只留了一个电源引脚所有片上偏置电流都得自己产生——既没有外部基准引脚也没有bandgap先给你一个参考电压。从那时候起我才认真把自偏置电流镜从头到尾设计了一遍。这篇文章就讲那次设计的完整过程自偏置电流镜到底是什么、怎么用一颗电阻和几个晶体管把电流“算”出来、启动电路怎么设计、PVT仿真怎么校验、版图有什么讲究、流片回来怎么排查。适合正在做模拟/混合信号芯片、需要自己搭偏置链路的工程师也适合研究生阶段做电流基准课题的同学。下面所有参数和坑都是当时仿真和测试的真实记录。1. 为什么非要自偏置从“只有电源脚”的项目说起1.1 常规偏置方案的三个痛点传统的电流镜偏置最常见的方式有三种引脚外接电阻、电阻直接接电源、以及用bandgap输出电压做V-I转换。每种都有它别扭的地方。外接电阻基准意味着芯片必须多一个专用引脚PCB上多一颗精密电阻还得承受ESD保护和bonding wire上串联电阻带来的误差。一个1%的板上电阻流过1μA电流只要bonding wire等效几十欧误差就到了几个百分点更别说引脚上的噪声耦合。电阻直接接电源这种方式I (VDD - VGS)/R电流天生跟着电源电压走。电源3.3V波动±10%电流直接波动接近±10%这还没算电阻的温度系数。很多粗放的数字电路偏置可以这么糊弄但模拟前端、比较器、振荡器这些对偏置敏感的模块接受不了。用bandgap输出做V-I转换看起来最“正规”但这里有个鸡生蛋的问题bandgap里面那个运放自己也需要一个偏置电流才能工作。谁来给bandgap提供它的第一路电流答案恰恰就是一个自偏置电流镜。所以从系统启动顺序上讲自偏置电流镜往往是全芯片第一个醒过来的模拟电路。1.2 自偏置解决的是“先有鸡还是先有蛋”自偏置电流镜的思路是把“外部给基准电流”改成“电路自己用自己的几何尺寸和一颗电阻构造一个电流”。它不需要外部基准不需要bandgap先输出只需要保证电源电压能正常建立它就能自己达到一个稳定的工作电流。代价是精度有限。你没法指望它像bandgap基准那样在-40℃到125℃范围内做到±2%一个典型自偏置电流镜全温区、全工艺角下电流浮动±30%~50%都很正常。但它作为偏置电流够用了——给运放尾巴电流、给比较器偏置、给振荡器控制电流这些场景要的是“一个确定的量级”和“相对稳定的工作点”而不是绝对值精确到微安。真正要求精确的地方再在它基础上做cascode、做校准、甚至再叠一个bandgap闭环调那是后面的故事。1.3 应用场景与精度定位我在这类芯片里见过它的三种典型用法一是给全片提供“初始偏置电流”让bandgap运放、基准比较器这些模块先有电流、先睁开眼睛属于启动链路最底层的一环。二是给低功耗模拟前端提供不随电源变化太快的偏置电流比如SAR ADC的比较器、采样开关的自举电路偏置。三是给需要跟踪电阻绝对值的模块做参考因为自偏置电流的值本身就由片上电阻决定如果后级有个同样材质、同样方块数的电阻电流和电阻的乘积基本恒定这种“R-I对消”特性在很多RC振荡器里被用来稳住频率。精度定位上我一般把它当作“±30%~50%可用的粗基准”。下面这个设计实例目标就按粗基准来定。2. 电流自洽Widlar自偏置结构怎么用电阻“算”出电流2.1 电路连接方式自偏置电流镜的经典拓扑是beta multiplier结构也叫CMOS版Widlar自偏置。电路由四颗晶体管加一颗电阻组成M3、M4是PMOS宽长比相同M3接成二极管形式M4跟它组成1:1电流镜M1是NMOS接成二极管形式跟M2组成K:1的镜像对M2的源极串了一颗电阻R到地电源从M3、M4的源极进M3的漏极接到M1的漏极M4的漏极接到M2的漏极M1的栅极和M2的栅极短接M2源极和电阻R的公共端是节点D。工作过程可以一句话概括M3/M4这个PMOS镜把两条支路的电流强行为成相等M1和M2之间因为有R的存在它们的栅源电压差恰好等于I×R而这个电压差又由两管子的宽长比决定于是电流就被唯一确定下来。2.2 电流与电压的自洽方程设M1的宽长比是(W/L)₁M2的宽长比是K(W/L)₁两条支路电流均为I晶体管都工作在饱和区。写两个管子栅源电压的表达式VGS1 VTH1 Vov1 VGS2 VTH2 Vov2其中Vov1 sqrt(2I / (μCox·(W/L)₁))Vov2 Vov1/√K。再看节点D的电压它的电位被电阻抬到I×R所以M2的源极比M1的源极高I×R于是VGS1 VGS2 I×R把过驱电压代进去忽略阈值电压差得到I×R Vov1 - Vov1/√K Vov1·(1 - 1/√K)再把Vov1 sqrt(2I/β₁)代进去两边平方就得到这个电路最核心的设计方程I 2(1 - 1/√K)² / (β₁·R²)其中β₁ μCox·(W/L)₁。这个式子有点意思电流I完全不取决于VDD只由K、宽长比和电阻R决定。这正是自偏置电流镜能在电源电压变化时基本稳住电流的原因。K越大括号里越接近1I越由β₁和R²决定K越小括号项越敏感设计容差越不好控制。2.3 体效应带来的修正初算和仿真差20%的根源初学的时候我犯过一个典型错误拿着这个方程算完就直接画版图结果仿真出来电流偏了将近25%。问题出在体效应。注意节点D的电压是I×R正常工作时有几十到一百多毫伏所以M2的源极对地并不为0M2的衬底如果接的是全局地标准CMOS工艺里NMOS共用P衬底这是默认情况VSB2 I×R阈值电压会往上抬。以γ0.5√V、2φF0.7V为例VSB100mV时VTH2比VTH1大约高29mV。别小看这29mV我们的自洽方程里I×R本来也才100mV量级等于说体效应直接分走了三分之一到四分之一的“可用电压”电流误差自然就到了百分之二三十。正确做法是迭代先按忽略体效应的方程算出一个R初值然后手工估算ΔVTH代回方程修正R最后在仿真里微调一两次。很多号称“手算一遍就能出活”的教程其实都省略了这个迭代过程。另外提醒一句如果工艺允许三阱可以把M2单独放在一个N阱里衬底接它自己的源极这样体效应直接消失。代价是面积和layout复杂度增加适合对电流绝对值有要求的设计。3. 设计实例3.3V/2μA偏置电流的完整计算流程3.1 设计规格与技术参数这个实例的实际需求是一颗3.3V供电的传感器信号链芯片需要一路2μA的偏置电流给片内一个比较器和两个运算放大器做尾电流。温度范围-40℃到125℃不要求高精度但要求电流不能随VDD出现明显跳变。工艺是0.18μm标准CMOS用的核心器件参数参数数值说明VDD3.3V ±10%电源I目标2μA偏置电流VTHN≈0.5VNMOS阈值VTHP≈-0.5VPMOS阈值μnCox200μA/V²NMOS工艺因子μpCox70μA/V²PMOS工艺因子温度范围-40~125℃全温区3.2 逐项参数确定与验算第一步选K值。K是M2和M1的宽长比倍数它决定I×R占过驱电压的比例。K太小设计方程里(1 - 1/√K)项变化剧烈电流对K的失配太敏感K太大M2面积变大而且Vov2被压得特别低容易进入弱反型。我最后选了K8折中比较舒服。第二步定Vov1。过驱电压不能太低否则M1容易被工艺偏差和噪声扰动也不能太高否则VGS1太大低压场景下摆幅不够。这里选Vov10.2V比较常规。第三步算M1宽长比(W/L)₁ 2I / (μnCox·Vov1²) 2×2μ / (200μ×0.04) 0.5取L2μmW1μm。L取2μm而不是最小工艺尺寸是为了压低沟道长度调制效应让电流对VDD更不敏感。第四步算M2宽长比(W/L)₂ K·(W/L)₁ 4取L2μmW8μm8根1μm宽的手指并联。第五步算电阻R。先用忽略体效应的初值公式I×R Vov1(1 - 1/√8) 0.2×0.646 0.129V R 0.129V / 2μA 64.5kΩ然后做体效应修正。VSB2大约就是这个0.129V附近估算VTH2抬升约37mV自洽方程变成I×R Vov1(1 - 1/√8) - ΔVTH 0.129 - 0.037 0.092V R 0.092V / 2μA 46kΩ这个46k就是考虑了体效应后的目标值方向。最后在仿真里迭代R取50kΩ时标称条件下电流正好回到2μA。这里有一个很实用的经验如果你初算完全不考虑体效应就把R定下来实际流片出来的电流会偏大面积越紧凑、R上的压降越小偏差越明显。仿真迭代不是可选项是必选项。第六步定PMOS镜。M3、M4要1:1镜像两管电流都是2μA选它们的过驱电压也按0.2V设计(W/L)₃ (W/L)₄ 2I / (μpCox·Vovp²) 4μ / (70μ×0.04) ≈ 1.43取整为1.5即L2μmW3μm。完整参数汇总器件宽长比说明M11μm/2μmNMOS二极管连接M28μm/2μmNMOS源极串RM33μm/2μmPMOS二极管连接M43μm/2μmPMOS镜像输出R50kΩ高阻多晶硅电阻3.3 直流工作点与摆幅检查参数定了之后一定要重新检查工作点是否满足饱和条件这一步很多人省略然后layout回来才发现某个管子进了线性区。我习惯把关键节点电压列出来VGS1 0.7VM1栅极节点C电压0.7V节点AM3漏/M1漏 VDD - VSG3 3.3 - 0.7 2.6V节点DM2源 I×R 2μA×50k 0.1VVGS2 VGS1 - I×R 0.6VVov2约0.07VM1的VDS 2.6V远超Vov10.2V饱和M2的VDS 2.6 - 0.1 2.5V远超Vov2≈0.07V饱和M4的VSD ≈ 3.3 - 2.6 0.7V远大于Vovp0.2V饱和。最低工作电压方面整个支路从VDD到地经过一个PMOS的VSD、一个NMOS的VDS、一个电阻压降。VDD最低取2.97V时M4的VSD还有约0.37V仍然能维持饱和。当然这没算cascode后面我们会讨论加cascode后的余量变化。4. 启动电路设计从零电流简并态里醒过来4.1 简并态问题是什么自偏置电路有个绕不开的痛点它有两个稳定工作状态一个是设计想要的正常状态另一个是完全没有电流的“零电流状态”。为什么会有零电流状态因为电路结构是对称的如果上电瞬间M1、M2的栅压为0所有晶体管都关断没有任何机制强迫电流路自动导通。这个状态还特别“稳”——所有电流为0所有节点电压要么是0要么悬空没有任何变化它可以一直安安静静待在那里。更麻烦的是仿真直流扫描往往会停在零状态因为SPICE的初值默认就在那里。所以启动电路的唯一使命就是破坏这个零电流状态的稳定性在某个节点注入一点电流让环路自己滚进正常工作状态。启动电路本身要在启动完成后“退位”不能继续往主环路里灌太多电流否则会污染参考电流的精度。4.2 三种启动方案及取舍实际工程里我见过三种主流做法各有各的脾气。第一种是电阻直灌。从VDD拉一颗大电阻到节点AM1的漏/二极管连接节点上电时电阻给节点A充电把M1栅压拽起来环路启动。电阻选得越大稳态时额外灌入的电流越小但启动能力也越弱。50k主电阻配5MΩ启动电阻灌入电流约0.5μA对2μA的目标来说已经太可观了会对镜像输出造成看得见的偏移。第二种是弱MOS常通打火。用一颗超大L、极小W的PMOS栅接地源接VDD漏接节点A相当于一个输出电流几十纳安的“打火机”。它永远导通不管电源怎么建立都会持续注一点电流彻底消除零状态。代价是这几十纳安会一直“赖”在主环路上使得输出电流比理论值偏大一些。对2μA的目标注入50nA就是2.5%的偏移做非精密偏置完全能接受。PPMU、LDO这些要精确的地方就得小心了。第三种是电容耦合一击脱离。从VDD放一颗电容到节点A上电时电源电压爬升的dv/dt通过电容给节点A一个瞬态冲击把电路踢醒。电容不消耗直流功耗稳态时也不会像电阻那样持续灌电流理论上是最干净的。问题是它是一次性的如果电路被某种负载扰动踢回零状态电容已经充好电没法再踢第二次。要有复位机制要么靠电源完全掉电再来一次要么加一颗弱放电管。三种方案对比我列个表方案启动能力稳态扰动重新触发能力面积电阻直灌强大μA级强大弱MOS常通中小nA级强小电容一击强无弱中4.3 本设计选用的启动方案与验证这个设计我最后用的是“弱MOS常通打火 电容辅助”的组合一颗W/L0.2μm/2μm的PMOS常通提供约50nA直流注入再用一颗400fF的MIM电容从VDD耦合到节点A负责上电瞬间的强kick。这么做是出于两个考虑一是黑盒测试时电源爬升时间不确定有可能慢到电容电流几乎为零弱MOS兜底保证一定能启动二是有电容的瞬态kick上电速度对启动成功率不敏感整机测试不会出现“这次上电能启动下次不能”的玄学问题。验证方法很简单也建议你照做把电路所有节点初始电压用.ic语句设成0然后仿真tran电源用一个实际的上电斜线我一般设100μs从0爬到3.3V看电路能否自行爬升到正常工作点。再用.ic语句直接把电路打在正常状态tran跑一段确认弱MOS的注入没有把环路逼出正常工作点。两个仿真都过了启动设计才算稳。仿真里还有个常被忽略的细节如果你直接跑DC operating point仿真器可能报出零电流解别急着以为是电路坏了先看启动电路有没有参与工作。很多刚入行的同事在这上面浪费了半天时间。5. PVT仿真结果与鲁棒性提升路线5.1 典型仿真结果与现象设计完成后按工艺角、温度、电压三个维度做PVT扫描。这个实例的典型仿真结果如下条件电流值TT27℃3.3V2.0μASS-40℃3.3V约1.5μAFF125℃3.3V约3.1μATT27℃2.97V约1.9μATT27℃3.63V约2.1μA三个结论第一电源灵敏度其实还不错。从2.97V到3.63V电流只变化了约5%这得益于2μm长沟道带来的低λ以及PMOS镜有足够的输出阻抗。如果希望更好后面讲cascode。第二温度跨度非常可观。从-40℃到125℃电流从1.5μA飘到3.1μA翻了一倍还多。这在粗基准场景可以接受但如果你后级电路对偏置电流有±20%以内的要求就得琢磨温度补偿了。第三工艺角的影响体现在绝对值偏移上SS角电流变小、FF角变大主要是μCox和VTH共同作用的结果。5.2 温度特性为什么几乎无法避免温度变化的核心原因是设计方程里μ和R都在变。从方程I 2(1 - 1/√K)² / (β₁·R²)看β₁里含μμ随温度升高而下降所以I随温度升高而上升这是主导项。R的温度系数则取决于电阻材质常规高阻多晶硅电阻的TC大约1000ppm/℃温度升高时R增大反过来压低电流。两个作用方向相反但并不完全抵消。我在这个工艺下的实测结果是电流随温度正漂125℃比27℃偏大约25%-40℃偏低约25%。如果你选一颗负温度系数的电阻某些扩散电阻是负TC可以把温度曲线压得更平一些但这类电阻往往绝对精度差、寄生电容大未必划算。想真正把温度特性做平就得往bandgap方向走了利用VBE的负温度系数和ΔVBE的正温度系数做补偿或者给电流镜叠一个温补电路。这是个系统工程不是换个电阻能解决的。作为偏置电流±40%温度范围的容差很多时候是可以接受的别过度设计。5.3 两条提升路线cascode与温度补偿如果你非要提升这个电路的性能我建议优先考虑加cascode而不是盲目去折腾温度。给M3/M4这个PMOS镜各串一颗同尺寸PMOS管做成cascode镜能显著提高镜像输出阻抗把电源灵敏度从5%压低到1%以内。代价是每个支路多压掉0.2~0.3V的摆幅最低工作电压从2.97V抬到3.2V左右对3.3V供电来说余量变小低压项目要谨慎。给M1/M2也可以加cascode但NMOS侧串cascode会把节点A、B的电压抬高进而影响I×R的自洽参数要重新迭代一遍工作量不小。温度补偿方面如果实在接受不了全温区电流翻倍我见过一个实用的笨办法在R上串一截正温度系数的扩散电阻和主体多晶电阻形成温度补偿网络通过调整比例把温度曲线压平。这个办法缺点是温度补偿和绝对电阻值是耦合的调温度特性会动电流绝对值建议在台面上先花两天做Design of Experiments再决定要不要上。6. 版图细节与流片后的排查经验6.1 匹配与寄生控制版图阶段这个电路最需要操心的是匹配和寄生。M1和M2宽长比是1:8至少用单位器件法画定义最小单位管W1μmM1用1个M2用8个全部同方向排列在同一个有源区附近。有条件的话M1放中间M2的8个单位围着它或做common centroid排布四周加dummy管减少刻蚀不均带来的几何失配。这个电路的电流精度很大程度由M2和M1的相对匹配决定别偷懒。M3/M4这对PMOS镜像更是要命它们失配会直接变成两条支路电流差最终反映到输出电流误差。常规做法是interdigitate交错排列四根手指交叉周围一圈dummy。电阻R的版图也不能忽视。50kΩ高阻多晶电阻面积不小画serpentine时两端的dummy段一定加上流片回来的sheet resistance误差在±20%级别这是电流绝对值不准的最大来源之一。如果项目允许给R预留一组trim string哪怕只留激光修调或者熔丝位产品阶段会好过很多。节点C是M1、M2的栅极公共节点高阻、敏感。它的寄生电容会影响启动时间寄生电阻会和栅电容形成RC延迟所以走线尽量短、尽量细别在它上面跨金属线。节点A是二极管连接节点也是启动电路注入点它对地寄生电容会影响环路稳定性同样别乱拉线。6.2 测试时最容易踩的几个坑流片回来测试我有几个“第一次全都踩过”的坑列出来给你省时间。电流偏大的情况先查启动电路。常通弱MOS如果尺寸画错或者漏电流比预想大会直接抬高输出电流。测一下把启动管的栅断开或者仿真时单独看它贡献了多少就能定位。电流随电源电压剧烈变化多半是M3/M4镜像的沟道长度调制没有压住或者某个管子根本没进饱和区。先测各个节点电压跟仿真对比看哪个节点电平不对。节点BM4漏/M2漏如果被拉到离VDD太远说明M2的VDS余量被吃掉了。上电测不到任何电流十有八九是启动失败。用示波器抓节点C看它有没有从0慢慢爬升。如果一直趴在地上不动查启动管有没有接反、有没有被别的路径泄掉电流。我遇到过一颗水货芯片问题出在启动管的源漏接反了。还有一个隐蔽的坑测量探针或PCB漏电。2μA级别的电流PCB表面没洗干净手指摸一下漏电都能把测量结果带偏。用三同轴屏蔽线加guard环环境湿度大的时候尤其要注意。6.3 根据症状反推原因最后给一张傻瓜式故障定位表是我做测试时贴在工作台上的症状优先怀疑排查顺序电流比仿真大20%以上启动管注入、R偏小、VTH偏小单独测启动管→量R→复查工作点电流随VDD明显变化PMOS镜像λ、NMOS进入线性区扫VDD看斜率→查节点电压上电无电流启动失败、环路未建立抓节点C波形→查启动管接法温度特性比仿真差很多R的TC与model不符、体效应算错换温箱实测R→核对model噪声明显偏大节点C耦合干扰、地线噪声检查layout屏蔽→加去耦电容这张表不是万能药但能帮你把注意力先聚焦到最可能的地方别再像我当年一样从电源一路查到输出花了一个礼拜才发现是启动管漏电。自偏置电流镜这个电路结构上就七八个器件但“算参数、防简并、控匹配、排寄生”每一步都有讲究。把这一套设计流程走熟之后再去看带隙基准、LDO内部偏置你会发现它们的骨架里都有这个电路的影子——所谓基本功说白了就是把这种小电路做到心里有数。
返回列表