尧图精选

电流镜优化指南:威尔逊电流镜与维德拉电流源的高阻抗与温漂控制

🕒 发布时间:2026/9/28 1:59:22 📁 来源:尧图网络
在模拟IC设计里电流镜是那种看着简单、用起来很容易翻车的电路。前阵子帮人调一颗LDO的片上偏置普通两管镜像在温度扫描下电流漂了18%逼着我把威尔逊电流镜和维德拉电流源的性能优化技巧重新捋了一遍。这两个拓扑用很低的电路代价把输出阻抗抬高一个量级以上同时改善匹配和温漂。这篇文章会把原理、参数推导、仿真实测方法以及我踩过的坑放在一起适合正在做模拟IC的工程师、研究生也想给硬件工程师提供一个快速判断电流镜选型的参考。1. 从基础电流镜的四个短板谈起1.1 一次温度扫描暴露了什么问题先看那个翻车案例。项目要做一颗5V输入的LDO静态电流预算只有15µA里面所有偏置都从一颗5µA参考电流派生。参考电流由带隙基准产生用普通两管NMOS镜像给误差放大器的尾电流源。第一次全温度仿真跑完我盯着结果愣了几秒25°C时Iout是5.08µA到125°C变成6.12µA-40°C掉到4.35µA。静态功耗随温度疯涨环路增益和带宽也跟着变整个补偿网络全部需要重调。问题的根源不在带隙而在镜像管本身。MOS管的漏电流模型里有一条核心公式ID ½µCox(W/L)(VGS−VTH)²(1λVDS)。温度升高VTH下降约1~2mV/°C导致同样VGS下电流上涨同时VDS变化会通过λ项扰动电流。简单镜像的输出阻抗Rout约等于ro 1/(λID)在0.18µm工艺、5µA偏置下典型只有几百kΩ到1MΩ量级。输出端电压只要摆1V电流就变动1~2µA。对要求稳定偏置的电路这不是误差是灾难。1.2 衡量电流镜性能的四个指标要讨论优化得先把评判标准立起来。我一般用四个指标看一个电流镜指标定义简单镜像的典型表现输出阻抗Rout dVout / dIout越高越接近理想恒流源约等于ro几百kΩ量级最小工作电压Vmin所有管子保持饱和时输出端的最低电压约等于Vov比较宽松匹配精度镜像输出与参考电流的偏差由ΔVTH、Δβ、Δ(W/L)决定中低失配随面积增大而改善温度与电源稳定性Iout在不同温度、不同VDD下的偏移量较差VTH温漂直接进入电流第一个指标决定一个电流源能不能扛住输出端电压波动。第二个指标决定它能不能用在低压电路里。第三个指标在高精度DAC、ADC、基准源那儿是生死线。第四个指标决定了整个系统在不同工况下是否还能保持设计指标。普通两管镜像在这四项上都不算好所以才有后面各种优化拓扑的存在空间。1.3 优化路径其实只有四条上面四个短板对应的优化手段也统一加负反馈来提高输出阻抗加Cascode管来隔离电压变化加大面积和做好版图匹配来压失配用合适的电阻类型和补偿结构来控温漂。威尔逊电流镜和维德拉电流源分别对应前两条路线而它们各自的改进型又覆盖了后两条。理解了这个框架后面读起来会顺很多。2. 威尔逊电流镜三管反馈如何换取高输出阻抗2.1 Wilson电路到底多了什么Wilson电流镜的标准接法是在输入支路里串一个M3M3的漏极接输入电流源IREF源极接二极管连接管M1的漏极栅极直接接输出节点M2的漏极。从拓扑上看它只是比普通镜像多了一只管子但这只M3不是简简单单做级联——它的栅极连接的是输出电压等于把输出端的信息实时反馈回了输入侧的偏置节点。这个拓扑用M3的栅源电压去感知输出电位的变化。输出端电压一旦波动M3的导通状态立刻改变再通过M1把M2的栅压往相反方向调整最终让输出电流回到原来的水平。简单说Wilson是在用一只管子和一个内部回路把“输出电压变化→电流变化”这条通路给钳住了。这也是它和普通Cascode的核心区别Cascode靠固定偏置隔离电压Wilson靠动态反馈抵消变化。2.2 输出阻抗提高多少怎么理解在工程估算里Wilson电流镜的输出阻抗可以近似写成Rout,Wilson ≈ gm3 · ro1 · ro2也就是三只管子的跨导和输出电阻乘在一起。考虑到gm·ro在典型CMOS工艺下大约在20到80之间Wilson输出阻抗相比简单镜像的ro通常能提升一到两个数量级。给一个有感觉的数字一颗普通镜像的输出阻抗如果是500kΩWilson做到20MΩ很正常。这意味着输出端电压变化1V电流偏差只有50nA相对5µA偏置只有1%。在设计精密偏置时这个量级的改善是决定性的。值得注意的是这个公式是经过小信号近似得到的精确值还会受到M3体效应、沟道调制以及电阻负载的影响但用它做数量级判断已经足够可靠。2.3 Wilson的代价电压余量、速度和匹配高阻抗不是白来的。Wilson的第一个代价是电压余量为了维持正常工作输出端至少需要两个过驱动电压Vov的余量比简单镜像多出一个Vov。在1.2V甚至更低电源电压的工艺里这个余量很奢侈。第二个代价在频率特性上。M3构成了一个内部反馈回路回路里存在寄生极点高频下输出阻抗会出现相位滞后严重时会在某个频率点产生谐振峰。设计高速开关电流镜时如果直接用Wilson输出电流的建立时间可能变差甚至振铃。第三个代价比较隐蔽M1和M2的VDS在小信号状态下并不完全相等所以Wilson并没有把所有沟道调制误差都消掉。它只是把误差压低了没有从根上消掉。换句话说Wilson解决的是“输出阻抗不够”的问题而不是“失配为零”的问题。2.4 从Wilson到现代Cascode镜像实际新设计里原样用Wilson的地方其实不多更常见的是高摆幅共源共栅电流镜和增益增强电流镜。前者用固定偏置的Cascode管隔离输出端电压变化偏置点通过电流源和二极管管生成使主镜像管和Cascode管都刚好饱和输出端最低电压约等于2Vov后者在Cascode管外面再套一个放大器把输出阻抗推到更高的量级。我给一个低压场景下的通用偏置做法假设主镜像管过驱动电压是Vov_mainCascode管阈值是Vth_casc那么Cascode管的栅极偏置电压大致取Vov_main Vth_casc Vov_casc。这个值需要根据具体电流和工艺微调目的是让Cascode管刚好进入饱和区从而把输出端压降控制在2Vov左右。我看到很多新手会把偏置电压取得过大结果Vmin凭空多出一个阈值电压输出摆幅白白损失。Wilson真正的价值在于提供了一个“反馈型高输出阻抗”的分析样本。你理解了M3怎么感知输出、怎么把变化折算回偏置侧再去看增益增强的Regulated Cascode会发现只是把M3换成了一个更“聪明”的放大器原理一脉相承。3. 维德拉电流源发射极/源极退化电阻的巧劲3.1 Widlar的“小电阻解决大问题”Widlar电流源的故事要从集成运放刚出现的年代说起。当时要在芯片上实现微安级的偏置电流常见做法是用一颗大电阻但芯片上做几十千欧甚至几百千欧的电阻非常占面积阻值误差也大。Widlar想到利用BJT的指数特性在输出管的发射极串一颗只有几千欧的电阻靠VBE的对数关系把参考电流“缩小”到目标微安级。这个思路后来被整个行业吸收成为源极退化电流镜的源头之一。从工程思维的角度看Widlar最值得学习的一点是他没有硬碰硬去造一个大电阻而是用电路关系改变电流量级。很多偏置设计里大电阻会带来巨大的版图面积和寄生电容用Widlar结构就能躲开这个坑。3.2 核心公式与设计直觉推导不复杂。Q1二极管连接VBE1 VT·ln(IC1/IS1)Q2发射极串联RE得到VBE2 IC2·RE VBE1。忽略基极电流并假设两管同尺寸时有IC2·RE VT·ln(IC1/IC2)。这个方程不能显式求解但迭代非常方便。举一个实际数字IC1 100µARE 1kΩVT 26mV。用迭代法算IC2大约落在30µA附近。也就是说一颗1kΩ的电阻就把100µA的参考“缩”成了30µA。如果把Q2的面积做成Q1的8倍IC2还能继续往下降。这个结果的意义在于输出电流并不等于输入电流的1:1镜像而是由一个很简单的电阻和对数关系共同决定设计自由度一下子大了很多。CMOS里的源极退化镜像也有类似效果但公式形态不同Iout·RS VGS1 − VGS2。如果工作在饱和区VGS与√ID相关电流比由尺寸比和RS压降共同决定如果工作在亚阈值区同样会退化回Widlar式对数关系。低功耗芯片常用后者产生nA级偏置电流面积代价很小但失配和噪声比饱和区要差这一点后面会展开。3.3 为什么输出阻抗也变大了Widlar结构的另一个优势在于那颗发射极/源极电阻同时带来了本地负反馈。设想输出电流Iout突然增大RE上的压降随之增大Q2的VBE或MOS管的VGS就会被压低从而把电流往回拉。小信号模型下输出阻抗约等于Rout ≈ (1 gm·RE)·ro当gm·RE远大于1时简化为Rout ≈ gm·RE·ro。也就是说在简单镜像的基础上加一颗电阻输出阻抗立刻被放大一个比例因子。这个特性和Wilson是互补的Wilson通过跨管反馈换来高阻抗Widlar通过管内反馈换来高阻抗两者不冲突可以同时用在一个电路里。代价同样是电压余量输出端必须额外容纳Iout·RE的直流压降。如果RS压降设计成50mVVmin就增加50mV为了追高阻抗把RS无限加大低压场合马上吃不消。我在实际设计里一般把RS压降控制在50到300mV范围内具体取决于电流精度和电压余量预算。3.4 温度特性PTAT的天然来源Widlar电流的温漂特性值得单独讲。公式里VT kT/q正比于绝对温度所以单纯靠VT做出来的电流天生是PTAT与绝对温度成正比。这个特性在带隙基准里是求之不得的用PTAT电流流过电阻产生PTAT电压再与BJT的VBE负温漂相加就能得到一阶零温漂参考。反过来如果设计要求偏置电流不随温度跑就得做手脚。常见做法是把参考电流IREF做成零温漂的RE选低温度系数电阻尽量让比例关系脱离纯VT主导。一个粗略的经验是裸的PTAT电流温漂大约在3300ppm/°C量级经过一阶补偿后可以压到几百ppm/°C继续压就需要曲率校正和更复杂的电阻组合。温度系数补偿的本质是做减法很依赖模型准确性所以实测前务必先跑温度扫描仿真。3.5 失配和噪声的工程权衡Widlar结构对输入失调电压VOS很敏感。如果把输入管和输出管看成一个“换能器”VGS差的偏差会全部折算到RS的压降上近似满足ΔI/I ≈ VOS / (Iout·RS)。假设RS两端的直流压降只有80mV两管的失配是±5mV电流误差就达到±6%。这个误差比沟道调制带来的误差值大得多。所以在设计Widlar结构时不能只盯着阻抗和温漂失配预算从一开始就要参与分配。加大RS压降可以降低失配影响但会吃掉电压余量加大管子和电阻面积可以降低随机失配但会增大寄生电容和版图面积。这些约束互相拉扯最终选型本质上是一个多目标折中。4. 优化三板斧Cascode、版图匹配与温度系数补偿4.1 加Cascode之前先算电压账Cascode是提高输出阻抗最直接的手段在输出管上再叠一个共栅管输出阻抗可以由主镜像管的ro和Cascode管的跨导/输出电阻一起贡献常规结构下能达到gm²ro³量级。但很多人忽略了一个前提——输出端电压余量必须足够。我见过最多的错误是不分青红皂白堆两层Cascode结果输出摆幅只剩几百毫伏整个放大器动态范围直接崩掉。不同Cascode形式的电压代价差异很大结构输出阻抗量级最小输出电压偏置复杂度常规Cascode约gm²ro³约2Vov Vth低高摆幅Cascode约gm²ro³约2Vov中Regulated Cascode约gm³ro⁴约2Vov高高摆幅Cascode之所以能把Vmin压到约2Vov关键在于精确控制Cascode管的栅极偏置。偏置电压取Vb Vov_main Vth_casc Vov_casc这样主镜像管和Cascode管都刚好进饱和区既不会损失余量也不会让Cascode管跑进线性区。实际调的时候我会在仿真里扫描Vb观察输出阻抗曲线上出现明显跌落的位置再把工作点定在刚好离开跌落点的位置留一点安全裕度。4.2 版图匹配失配不是玄学电流镜的失配来源很多阈值电压失配、栅氧厚度差异、W/L误差、STI应力、金属走线压降、温度梯度。随机失配部分可以用Pelgrom模型做估算σ(ΔVTH) ≈ Avt / √(W·L)Avt是工艺常数通常在1~10mV·µm。如果Avt 5mV·µmW L 10µmσ大约1.6mV面积再增大四倍σ降一半。这就是为什么高精度电流镜的管子不会做太小。版图布局层面几条经验值得记住镜像管要靠近摆放、方向一致周围加dummy管电阻做共质心交叉边上加dummy电阻电源走线尽可能对称减小欧姆压降导致的系统性失衡有功率管或大电流走线的地方镜像管要远离防止热点温度梯度造成失配。这些规则并没有多高深但不做的话仿真里再漂亮的失配指标都会在实测时现形。蒙特卡洛仿真是评估随机失配的主要手段。跑mismatch模式取200到500个点看输出电流的分布。重点看3σ相对均值的偏离是否落在设计规格内。随机失配和工艺角是两个维度的事情工艺角决定所有管子同时偏快/偏慢失配决定同一芯片上管子之间的相对偏差两者都要覆盖。4.3 温度系数补偿的实操配方温度补偿没有一劳永逸的电路关键是把温漂来源分开处理。第一种来源是器件的VTH或VBE温漂第二种来源是电阻的TC第三种是结构本身的PTAT特性。工程上常用的思路是组合抵消让PTAT电流流过负TC电阻或者让零温漂参考电压流过正TC电阻把电流温漂做低。具体操作层面如果工艺提供多种电阻类型我会在仿真里分别扫描不同电阻组合的温度特性选出使输出电流温漂最小的组合。通常高阻poly电阻TC偏正扩散电阻TC偏负两者串联或并联可以做出近似零TC的组合。一个我自己常用的方法是先用带隙基准得到与温度几乎无关的VREF用VREF除以一颗低TC电阻产生参考电流再把这个电流喂给Widlar的输入侧这样输出电流的TC主要由电阻和电流镜的残余失调决定可以从裸PTAT的几千ppm/°C压到几百ppm/°C。4.4 综合优化案例一个1µA高稳定偏置的完整设计说一个我惯用的设计路线以0.18µm CMOS、VDD 3.3V、目标Iout 1µA为例。指标要求输出阻抗大于50MΩ温度范围-40到125°C电流漂移小于5%电源电压变化±10%时电流变化小于2%。第一步选拓扑。电压余量充足所以可以用源退化Widlar加上高摆幅Cascode的组合。Widlar负责把5µA参考电流缩到1µA同时利用退化电阻把基础输出阻抗提升高摆幅Cascode负责把输出阻抗真正抬到MΩ量级以上。第二步定参数。输出管L取1µm以获得更高的roW/L按过驱动电压Vov约0.15V设计对应W约2µm。退化电阻RS的压降设计在45mV附近由Widlar公式反推Iout·RS VT·ln(IREF/Iout) ≈ 26mV·ln(5) ≈ 42mV所以RS取45kΩ。此时单靠源退化的输出阻抗大约在30MΩ量级加上Cascode后远大于50MΩ输出阻抗不再是瓶颈。第三步处理温度和失配。参考电流IREF用零温漂VREF除以低TC电阻生成RS选低TC poly电阻残余温漂主要来自VTH和电阻的二次效应。蒙特卡洛跑下来3σ失配约±4%温度角最差约±3%加在一起接近指标上限所以给设计留了20%的余量。整个过程里最花时间的不是加管子而是调RS和Cascode偏置电压让Vmin、温漂、失配三项同时满足每动一个参数都要重跑DC、AC、MC、温度四组仿真。5. 实测与仿真把输出阻抗和温度漂移量化验证5.1 输出阻抗的两种测量方法仿真的输出阻抗测量主要有两种方法。第一种是DC法把输出端接理想电压源从接近Vmin扫到接近VDD记录输出管电流在工作点附近对I-V曲线求斜率Zout dV/dI。直观可靠但要注意扫描范围不能超出饱和区否则斜率没有意义。第二种是AC法在输出端加一个理想AC电流源幅度固定为1A频率从1Hz扫到1GHz同时保持DC工作点不变AC分析得到的输出电压就是输出阻抗的频域曲线。AC法最大的好处是能看到阻抗随频率的跌落这对判断反馈环路稳定性很有用。如果阻抗曲线在高频段出现明显抬升通常是寄生电感和反馈环路在共振需要警惕。实测时DC法用一台高精度源表就能完成AC法需要网络分析仪配合偏置Tee普通实验室不一定会配置。对大多数偏置电路的评估DC法已经足够。有一个容易被忽略的细节源表扫描每步的等待时间要足够长否则电容充电电流会叠加到被测电流上导致低频段读出错误阻抗。5.2 PVT和蒙特卡洛仿真怎么看一个严谨的电流源设计仿真至少要覆盖四类条件温度点、工艺角、失配统计、电源电压扫描。以1µA设计为例我习惯这样组织结果仿真条件Iout (µA)偏差说明TT / 25°C1.0000%设计中心FF / 125°C1.0484.8%VTH下降带来电流回升SS / -40°C0.962-3.8%VTH上升与迁移率升高部分抵消MC 3σ±0.04±4%随机失配主导VDD 3.0V / 3.6V±1%—Cascode管必须未进线性区这组表说明单一工艺角下的“正常工作”远远不够。FF和SS两个角会对温度特性产生方向相反的影响MC又会在同一个die上引起管间相对偏差。更关键的是工艺角、温度和失配这三个维度不能割裂看要跑联合仿真。我曾经有个设计单独看MC只有±2%单独看SS角也只有-3%两个条件叠在一起却超过了规格线最后不得不把参考电流的源电阻加大牺牲一点面积才压回来。5.3 实测翻车点为什么仿真好不等于芯片好仿真和实测之间的差距通常不在理想器件模型而在测试环境里那些“看不见的电流”。低电流测量是第一大坑。用普通万用表量nA级电流就是自找麻烦微安级勉强能用但测试线稍微长一点就会引入噪声和漏电。至少要使用静电计或参数分析仪SMU并且用三轴电缆和屏蔽箱把外部干扰挡掉。防护环是第二大坑。PCB上在敏感节点周围画一圈与敏感节点同电位的铜环可以把表面漏电流导走。芯片测试探针台的漏电比PCB更隐蔽必要时用开尔文连接方式消除接触电阻影响。没有防护环时芯片在潮湿空气里放一晚表面漏电就能到nA级测出来的阻抗曲线会整体往下掉。自热是第三大坑。大电流密度下管子的温度会在几十毫秒内升高DC扫描如果每步等待时间太长I-V曲线会带上自热回滞。用脉冲测量可以缓解脉冲宽度尽量短占空比尽量低。我的经验是脉冲宽度控制在100µs左右既能保证测量稳定又不至于把芯片加热。最后一类问题是温度梯度。测试夹具上如果存在局部热源芯片不同位置的温度差异会比仿真模型预设大得多镜像管之间的失配会被温度梯度放大。解决方式是在版图阶段就把敏感器件摆得对称远离功率管并在测试夹具上做好导热和均温设计。这些现象仿真里很难复现但实测数据一出来所有版图上的偷懒都会现形。6. 选型对照什么场景该用哪个拓扑6.1 从指标需求倒推拓扑面对一个具体的偏置需求不要从“我想用Wilson”出发而是从指标倒推。先看输出端电压余量如果Vmin很紧张Cascode类结构直接出局优先考虑源退化或者简单镜像。再看输出阻抗要求高精度DAC或基准源需要几百MΩ以上那就必须上Cascode或Regulated Cascode。再看速度快电流镜不适合带强反馈回路优先考虑普通镜像加匹配版图。我把常用拓扑放在一张表里方便直接对照拓扑输出阻抗量级最小输出电压匹配/温漂适用场景普通两管镜像约ro约Vov中要求不高的尾电流/偏置源退化/Widlar约gm·RS·roVov VRS中可调PTAT可设计精密偏置、低功耗、带隙补偿Wilson约gm·ro²约2Vov较好频率受限中低速偏置对高频不敏感高摆幅Cascode约gm²ro³约2Vov较好DAC电流舵、高增益放大器尾电流Regulated Cascode约gm³ro⁴约2Vov很好偏置复杂超高精度基准/电流源注意里面的“约”字输出阻抗的实际量级会被版图寄生、工作电流、器件长度等条件大幅影响表格只用于快速筛选拓扑最终数量级必须用仿真确认。6.2 三个真实场景的选型建议场景一1.8V LDO里的1µA级偏置。电压余量很紧张常规Cascode的Vmin太高我会选源退化/Widlar加高摆幅Cascode的组合电阻用高阻poly面积可以接受。温漂优先靠参考电流的VREF/R产生来压失配用足够的电阻压降和版图匹配来控制。场景二12位DAC的电流舵阵列。每个电流舵单元都需要极好的单元间匹配和较高的输出阻抗。单元镜像用高摆幅Cascode版图做共质心加dummy管数字开关对镜像单元的干扰要用屏蔽环隔开。高位和低位单元的面积比例要精确设计必要时用动态元件匹配DEM把失配随机化。这个场景里Wilson并不常用因为它的反馈回路会拖慢电流开关速度影响建立时间。场景三高速SerDes里的CML尾电流源。输出端的高频阻抗主要靠匹配网络和电感峰化来整堆Cascode只会增加输出电容损害速度和功耗效率。这种场景反而更适合用简单镜像加足够电压余量器件尺寸不需要刻意做大匹配靠版图保证。道理很简单指标如果被速度主导就要避免任何带着慢反馈环的拓扑。6.3 选型口诀和一点个人体会选拓扑时我习惯默念几句话电压留多少决定能不能堆Cascode电流精度决定管子和电阻的面积温漂决定电阻类型和参考来源速度决定能不能用反馈型结构。剩下都是细节。这几年我实际项目里最常用的组合其实是源退化加高摆幅Cascode很少原封不动地照搬教科书Wilson。但每次调偏置我都会把Wilson的反馈思想在脑子里过一遍用它估算反馈环路的相位余量和可能出现的阻抗峰值。理解一个拓扑真正的价值不在于记住它的连接方式而在于明白它为什么要这样连以及当约束条件变化时你能从它的思路上迁移出什么新结构。
上一篇/下一篇内容由系统自动关联 返回资讯列表 →