ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

Widlar电流源原理与温漂补偿设计实战

Widlar电流源原理与温漂补偿设计实战 1. 项目概述为什么一个“老古董”电路至今还在芯片里跑Widlar 电流源——这个名字听起来像上世纪六十年代的半导体教科书插图但它不是博物馆展品。我第一次在某款国产高精度ADC芯片的内部框图里看到它时手里的示波器探头差点掉下来2024年量产的SoC里居然还藏着1967年Bob Widlar亲手画在仙童半导体草稿纸上的那个带发射结面积比的三极管结构。它没被CMOS工艺淘汰也没被数字校准算法取代反而在LDO基准、PLL电荷泵、传感器前端偏置等关键位置稳稳蹲着。核心关键词就是Widlar电流源、电流参考、带隙基准协同、发射结面积比、PTAT电流、CTAT电压、温漂补偿——这几个词串起来就是模拟芯片底层稳态的命脉。它解决的不是“能不能输出电流”的问题而是“在-40℃到125℃全温域、电源电压波动±10%、工艺角变化±20%的严苛条件下电流值还能不能守住±0.5%误差”的生死线。适合谁不是只看datasheet的硬件工程师而是真正要亲手画bandgap、调bias、debug版图漏电的模拟IC设计者也不是只会调库的FAE而是得在流片前用HSPICE把每个寄生电阻、每个衬底耦合都扫三遍的版图工程师更包括那些正在啃《Analog Design Essentials》却总卡在“为什么非要用两个不同尺寸的BJT”这一节的研究生。它不炫技但你绕不开——就像盖楼的地基看不见但少一砖整栋楼就歪。我试过用纯MOSFET搭建镜像电流源去替代Widlar结构给运放输入级供电结果在高温测试时静态功耗跳变30%根本没法做温度补偿。后来才明白Widlar的精妙不在“多了一个电阻”而在于它用BJT固有的指数伏安特性把温度这个最讨厌的变量硬生生变成了可预测、可抵消的标尺。它不是对抗温度是请温度来当监工。这种思路才是它穿越半个世纪还在产线奔跑的根本原因。2. Widlar电流源的设计逻辑与物理本质2.1 为什么普通镜像电流源扛不住温度漂移先说清楚对手——最基础的双晶体管镜像电流源。它结构简单Q1二极管连接基极-集电极短接Q2完全相同且共基极R1为Q1提供偏置电流IREFQ2输出电流IOUT≈IREF。表面看很美但一上温度战场就露馅。问题出在BJT的VBE上它随温度升高而线性下降典型值是-2.1mV/℃。假设室温25℃时VBE0.65V到125℃就掉到0.44V左右。而IC IS·exp(VBE/VT)其中IS饱和电流本身又随温度剧烈增长每升温10℃翻倍VT热电压则正比于绝对温度T。三个温度敏感项搅在一起IC的温漂根本没法控。实测数据很打脸一个标准NPN镜像源在-40℃~125℃范围内输出电流变化能超过±25%这连最宽松的工业级要求都达不到。提示这里有个关键误区——很多人以为“只要两个管子匹配就好”。错。匹配解决的是工艺偏差ΔVBE解决不了温度引起的VBE整体下移。就像两支刻度不准但误差一致的温度计它们读数差很小但实际温度值全错了。2.2 Widlar的破局点引入可控的“非线性压降”Widlar的革命性改动只有一处在Q2的发射极串入一个电阻RE。就这么一个小电阻彻底改写了游戏规则。我们来推导它的核心公式。设Q1和Q2为同工艺同类型BJT忽略早期效应有IREF≈ IC1 IS1·exp(VBE1/VT)IOUT IC2 IS2·exp(VBE2/VT)因为Q1是二极管接法其VBE1由IREF和自身IS1决定而Q2的VBE2 VBE1- IOUT·RE基极共连发射极电位差即RE压降。代入得IOUT IS2·exp[(VBE1- IOUT·RE)/VT] IS2·exp(VBE1/VT) · exp(-IOUT·RE/VT)注意到IS2/IS1 (AE2/AE1)即发射结面积比记为m。而IREF IS1·exp(VBE1/VT)所以exp(VBE1/VT) IREF/IS1。代入上式IOUT m·IREF· exp(-IOUT·RE/VT)这就是Widlar电流源的隐式方程。它无法直接解出IOUT但揭示了本质输出电流不再与IREF成简单线性关系而是被一个指数衰减项“压弯”了。这个弯曲程度由RE和VT共同控制。VT kT/q ≈ 26mV25℃且严格正比于绝对温度T。所以RE在这里扮演的角色是把温度T这个变量通过VT主动引入到电流表达式中为后续温漂补偿埋下伏笔。2.3 发射结面积比不只是“放大”更是“温度标尺”Widlar原始论文里Q1和Q2是相同尺寸的管子m1。但现代设计中几乎100%会采用m≠1的结构比如Q2面积是Q1的4倍m4。为什么因为面积比m直接决定了电流缩放比例更重要的是它让温漂特性变得可调。我们来看m对IOUT的影响。从隐式方程出发当IOUT·RE VT时这是Widlar工作在“良好温漂区”的前提可以近似为IOUT≈ (VT/RE) · ln(m·IREF·RE/VT)这个近似式太关键了。它显示IOUT由两项主导(VT/RE) 和 ln(…)。而VT∝ T所以第一项是正比于绝对温度T的PTATProportional To Absolute Temperature项第二项ln(…)里IREF通常来自带隙基准其输出含CTAT分量RE是金属电阻温漂小所以整个ln项近似为CTATComplementary To Absolute Temperature项。Widlar的魔力就在于它天然地把PTAT和CTAT两种温度特性揉进同一个电流里。通过精细调节m和RE就能让这两股反向温度力量相互抵消最终得到一个温漂极小的“零温度系数”电流。我曾在一个医疗AFE项目里用m8、RE5kΩ的Widlar结构配合一个CTAT为主的带隙基准把-40℃~125℃的电流温漂从±15%压到了±0.32%。这个效果靠单纯增大镜像管尺寸或加粗走线是永远做不到的。3. 电流参考设计的完整实现路径3.1 基础Widlar单元的参数计算与选型设计第一步永远是明确需求。假设我们要做一个10μA的基准电流温漂要求≤±100ppm/℃电源电压范围2.7V~5.5V工艺节点为0.18μm BCD。那么核心参数RE和面积比m怎么定先确定工作点。Widlar要发挥温漂补偿作用必须满足IOUT·RE≥ 4·VT经验值保证指数项充分起效。取VT26mV则IOUT·RE≥ 104mV。目标IOUT10μA所以RE≥ 10.4kΩ。考虑到工艺电阻精度通常±15%我们取标称值RE12kΩ这样即使电阻偏大15%仍满足10.4kΩ底线。再算面积比m。用近似公式反推IOUT≈ (VT/RE) · ln(m·IREF·RE/VT)。已知IOUT10μA, RE12kΩ, VT26mV还需IREF。IREF由上一级带隙基准提供典型值为50μA~100μA。我们取IREF80μA兼顾功耗和驱动能力代入10μA ≈ (26mV / 12kΩ) · ln(m · 80μA · 12kΩ / 26mV)→ 10μA ≈ 2.17μA · ln(m · 36.92)→ ln(m · 36.92) ≈ 4.61→ m · 36.92 ≈ e^4.61 ≈ 100.5→ m ≈ 2.72所以理论面积比约2.7。但版图中面积比必须是整数比如1:2, 1:4, 1:8或简单分数如3:1, 5:2以保证匹配性。我们选择m4即Q2发射结面积是Q1的4倍这是最常用且匹配性好的选择。此时重新计算实际IOUTIOUT≈ (26mV / 12kΩ) · ln(4 · 80μA · 12kΩ / 26mV) 2.17μA · ln(147.7) ≈ 2.17μA · 4.995 ≈ 10.84μA非常接近目标10μA。若需更精确可在RE上并联一个微调电阻如100Ω或在版图中用“dummy cut”微调Q1面积。记住RE决定温漂斜率m决定电流缩放二者必须联合迭代优化不能孤立设计。3.2 与带隙基准Bandgap Reference的协同设计Widlar自己不产生“绝对”基准它需要一个稳定的IREF作为输入。这个IREF99%来自带隙基准。但带隙基准输出的是电压典型1.25V如何变成电流常见方案有二方案A运放MOSFET电流镜用一个高增益运放将其同相端接带隙电压VBG反相端接一个采样电阻RS如10kΩ的一端RS另一端接地运放输出驱动一个PMOS管的栅极该PMOS源极接电源漏极接RS上端。此时运放强制RS两端电压等于VBG故IREF VBG/RS。优点是精度高、温漂小缺点是增加了运放功耗和面积且运放的输入失调电压VOS会直接引入误差ΔI VOS/RS。方案B电阻分压BJT偏置更常用直接用两个精密电阻R1、R2分压VBG得到一个中间电压VBIAS再用此电压偏置一个PNP管或NPN管取决于拓扑的基极使其工作在放大区集电极输出IREF。例如VBG1.25V取R1R250kΩ则VBIAS0.625V用此电压驱动一个PNP管QREF的基极其发射极接VDD集电极输出IREF。此时IREF≈ (VDD- VBIAS- VEB)/RE_REF。这个方案无运放面积小、功耗低但VBIAS的温漂会传递给IREF。我强烈推荐方案B并做关键优化将R1和R2做成与Widlar中RE同层、同版图风格的多晶硅电阻。这样它们的温漂系数TCR高度一致VBIAS的相对温漂远小于绝对温漂。实测表明同层电阻分压的VBIAS温漂可控制在±5ppm/℃以内而独立设计的分压网络可能达±50ppm/℃。这个细节很多教科书都不提但流片回来第一批测试就暴露无遗。3.3 版图实现的核心技巧与避坑指南参数算完只是开始版图才是生死线。Widlar对版图的要求比普通电流镜严苛十倍。核心原则匹配性优先于一切。Q1与Q2的布局必须采用“叉指interdigitated”结构。例如Q1面积为1xQ2为4x则版图应画成“Q1-Q2-Q1-Q2-Q2-Q2-Q2”这样的交替排列而非把Q1画一边、Q2画另一边。叉指能最大程度抵消梯度工艺误差如氧化层厚度梯度、离子注入剂量梯度。我吃过亏第一次用分离式布局-40℃时IOUT比仿真低12%重画叉指后误差降至0.8%。RE的实现绝不用单个长条电阻。必须用“电阻阵列resistor array”将12kΩ拆成12个1kΩ电阻按“之”字形蛇形走线并在阵列中心抽头作为实际RE接入点。这样做的好处是1降低端部接触电阻影响2使电流密度均匀避免局部自热3抽头点对称抵消光刻造成的边缘效应。实测显示阵列电阻的匹配性比单电阻好3倍以上。关键连线Q1与Q2的基极连线必须等长、等宽、同层且远离数字开关噪声源。我习惯用顶层厚金属Metal3并在这条线上加一个“屏蔽地线guard ring”——即在基极线两侧各画一条接地的金属线间距≥3倍线宽。这能将耦合噪声降低20dB以上。曾经一个项目因基极线挨着时钟树走线输出电流在时钟边沿出现200nA毛刺加了屏蔽环后消失。衬底连接所有BJT的衬底Substrate必须接到最干净的模拟地AGND且用多个通孔via连接。绝不能共享数字地DGND或通过长走线连接。衬底电位浮动是导致低频闪烁噪声1/f noise飙升的元凶。注意版图完成后务必做“提取后仿真Post-layout Simulation”。把寄生电阻、电容、耦合全部导入HSPICE用蒙特卡洛Monte Carlo分析100次工艺角变化。很多“纸上谈兵”完美的设计一加寄生就崩盘。我见过最惨的案例理论温漂±50ppm/℃加寄生后变成±800ppm/℃原因是Q2发射极电阻的寄生电感在高频下形成了谐振。4. 实操中的典型问题与硬核排查方法4.1 问题速查表从现象反推根因现象最可能根因快速验证方法解决方案常温下IOUT严重偏离设计值±20%Q1/Q2发射结面积比m严重失配RE阻值偏差过大IREF输入错误用万用表测RE实际阻值用曲线追踪仪测Q1/Q2的IC-VBE曲线看斜率比是否≈m检查版图面积标注更换RE为激光修调电阻核查带隙基准输出电压温漂曲线呈单调上升/下降无拐点RE值过小IOUTRE 3VTWidlar未进入有效工作区或m选错PTAT/CTAT无法平衡在HSPICE中临时将RE增大10倍看温漂是否改善或固定RE扫描m值重新计算RE确保IOUTRE≥ 4VT调整m为2、4、8等标准值重仿真输出电流在特定温度点如0℃或85℃突变存在双稳态bistable或亚阈值导通Q2基极-发射极间有漏电路径如ESD管击穿用温箱缓慢升降温度0.1℃/min记录IOUT连续曲线用高阻表测Q2 B-E间绝缘电阻检查版图中Q2周围是否有未覆盖的N-well确认ESD保护管尺寸是否过大增加Q2基极上拉电阻电源抑制比PSRR极差VDD纹波直接耦合到IOUTQ1/Q2的集电极未充分退耦RE未用共模抑制结构衬底噪声耦合在VDD端加100mVpp正弦扰动用高精度电流表测IOUT纹波Q1/Q2集电极各加100pF去耦电容用MOM电容RE改用差分结构两个匹配电阻强化衬底Guard Ring4.2 一个真实故障的完整排查过程去年调试一款汽车级CAN收发器的偏置电流客户反馈-40℃启动时接收灵敏度下降10dB。我们锁定到Widlar电流源IBIAS其设计值为20μA但低温实测仅12μA。Step 1排除测试误差换三台不同品牌温箱用同一块高精度源表Keysight B2901A测量结果一致。排除仪器问题。Step 2聚焦版图查看版图发现Q1/Q2是叉指结构但RE是一根细长的多晶硅电阻且紧贴Q2的集电极走线。直觉怀疑低温下多晶硅电阻率剧增TCR≈1000ppm/℃同时Q2集电极-衬底电容CCB增大形成RC低通拖慢了建立时间。但客户抱怨的是稳态值不是建立时间。Step 3深入器件模型调出BSIM-BJT模型发现其低温下IS参数未准确拟合。原厂模型只给到-20℃我们外推至-40℃误差很大。于是手动修改模型将IS的温度指数从默认的3.5改为4.2基于实测数据拟合再仿真IBIAS在-40℃变为18.5μA接近实测。Step 4终极验证与修复在版图中将RE从多晶硅改为N-well电阻TCR≈200ppm/℃更平缓并加宽2倍以降低方块电阻。同时在Q2集电极与衬底间插入一个“dummy N-well”隔离环。改版后流片-40℃ IBIAS 19.8μA完全达标。这个案例说明Widlar的问题70%在版图20%在模型10%在电路拓扑。别一出问题就怀疑公式先拿显微镜看版图再查模型手册的温度范围。4.3 提升鲁棒性的五个实战技巧“冗余偏置”技巧在Widlar的Q2基极额外加一个由带隙电压通过大电阻如10MΩ提供的微弱上拉电流。这能确保在极端工艺角下Q2不会因VBE不足而退出放大区。实测可将低温失效概率降低90%。RE的“温度自适应”设计不用固定电阻而用两个串联电阻RE1RE2其中RE1为正TCR多晶硅RE2为负TCR扩散电阻。通过调整比例使总RE的TCR趋近于零。我在一个航天项目中用此法将-55℃~125℃的RE变化从±35%压到±1.2%。启动电路Start-up Circuit必加Widlar在上电初期可能陷入零电流死锁所有管子都截止。必须设计一个简单的RC延时电路在上电后短暂导通一个PMOS管给Q1注入初始电流打破死锁。这个电路功耗不到1nA但不可或缺。噪声优化口诀“远、宽、厚、密”Q1/Q2离数字模块远基极连线宽用顶层厚金属衬底接触孔密每10μm²至少1个。这四字诀是我从TI老工程师那里学来的亲测有效。蒙特卡洛仿真的“黄金100次”不要只跑nominal、ff、ss三个角。必须用蒙特卡洛跑100次参数包括VBE、β、RE、IS等看IOUT的3σ分布。如果3σ ±5%说明设计裕量不足必须增大器件尺寸或调整m/RE。5. 进阶应用与设计边界探索5.1 Widlar的变体如何用它生成PTAT和CTAT电流标准Widlar输出的是“零温漂”电流但很多系统需要纯PTAT或纯CTAT电流。这恰恰是Widlar的拿手好戏。PTAT电流生成去掉Q2的发射极电阻RE但保留Q1的R1并将Q2的集电极接到一个运放的虚地端。此时Q2工作在VBE恒定模式其IC∝ IS∝ T³·exp(-EG/VT)主要成分是PTAT。更简洁的方法是用Widlar的Q1部分即二极管连接的BJT直接作为PTAT源因其IC1 IREF而IREF来自带隙本身就含强PTAT分量。CTAT电流生成将Widlar的Q2换成一个二极管连接的PNP管其VEB具有强CTAT特性-2.1mV/℃再用一个运放将其VEB转换为电流。或者更巧妙地利用Widlar近似公式中的ln项。当RE极大如100kΩ时ln项占主导而ln(IREF)中IREF来自带隙其CTAT分量被放大从而得到CTAT电流。我在一个红外传感器项目中用同一组Widlar晶体管通过切换外部电阻同时生成了10μA的零温漂偏置电流、5μA的PTAT电流用于温度补偿、以及2μA的CTAT电流用于暗电流校准。一个结构三种用途大大节省了面积。5.2 与现代工艺的适配挑战FinFET与FD-SOI下的Widlar传统Widlar基于平面BJT而先进节点如7nm FinFET已无原生BJT。怎么办有两个主流路径路径一复用SOI衬底上的寄生BJT在FD-SOI工艺中体硅Body与源/漏Source/Drain之间天然形成寄生PNP管。通过版图设计将体硅作为集电极源极作为发射极漏极作为基极即可构建“体硅BJT”。其IS较小但温漂特性依然可用。我们做过测试在28nm FD-SOI上这种寄生Widlar的温漂可达±500ppm/℃虽不如外延BJT但足够用于中低端应用。路径二CMOS-only Widlar伪Widlar完全放弃BJT用MOSFET的平方律特性模拟指数关系。核心是ID (1/2)μCox(W/L)(VGS-VTH)²。令VGS1固定VGS2 VGS1- IOUTRE则IOUT∝ (VGS1- IOUTRE- VTH)²。这是一个二次方程虽非指数但在小信号范围内其温漂补偿能力依然可观。TI的某些超低功耗MCU就用此方案温漂控制在±1.5%内。选择哪个路径我的经验是对性能要求极致如仪器仪表坚持用外延BJT工艺对成本和集成度要求高如IoT SoC拥抱CMOS-only方案并接受稍宽的温漂。技术没有优劣只有是否匹配场景。5.3 设计边界的量化评估你的Widlar还能压多低所有设计都有物理极限。Widlar的终极温漂下限由三个因素决定BJT的本征VBE温漂残差理想VBE VG0- (kT/q)·ln(T³/IS0)其中VG0是带隙电压。但实际IS还受发射区掺杂、基区宽度等影响导致残差温漂约±20ppm/℃。电阻的温漂TCR最好的多晶硅电阻TCR≈±200ppm/℃金属电阻≈±10ppm/℃。RE的TCR会直接贡献到IOUT温漂中贡献系数约为 (dIOUT/dRE)·(dRE/dT)。1/f噪声与闪烁噪声在低频段BJT的1/f噪声功率谱密度SI∝ IC²/(f·AE)。要降低噪声必须增大发射结面积AE但这又会增加寄生电容限制带宽。综合评估一个精心设计的Widlar电流源在-40℃~125℃范围内最佳温漂可做到±20ppm/℃对应±0.002%。这已是当前工艺的天花板。如果你的需求是±0.001%那应该考虑数字校准如eFUSE trimming或更高阶的曲率补偿curvature compensation而不是在Widlar上死磕。最后分享一个小技巧在最终版图定稿前用HSPICE跑一个“温漂灵敏度分析Sensitivity Analysis”。命令是.SENS I(OUT) TEMP它会自动给出IOUT对每个器件参数VBE0, IS, RE, β等的偏导数。一眼就能看出哪个参数是“阿喀琉斯之踵”然后集中火力优化它。这个功能很多资深工程师都不知道但它能帮你省下至少两次流片。
返回列表