ARTICLE DETAIL

资讯详情

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

模拟IC设计入门:电流镜原理、版图匹配与cascode结构详解

模拟IC设计入门:电流镜原理、版图匹配与cascode结构详解 从零开始做模拟IC设计第一道绕不过去的坎往往不是放大器也不是反馈而是一个看起来不起眼的电流镜。当年我刚接触偏置电路设计时以为电流镜就是把一个电流复制几份给其他模块用直到做第一个差分放大器时尾电流源在CMRR测试中表现稀烂翻回去查才发现是电流镜失配和沟道长度调制在捣鬼。那一刻才明白电流镜是整个模拟电路的地基地基没打牢上面盖的楼全在晃。这篇文章从MOS管偏置电路的实际需求出发把电流镜从原理到版图到调试的完整链条拉一遍最后附上我结合吴金课程内容做的一些学习补充。适合正在学模拟集成电路、刚开始做版图或刚接触偏置电路设计的人参考也适合那些“电路能仿真跑通但说不清为什么”的人回头补补课。1. 为什么偏置电路绕不开电流镜一个反直觉的结论1.1 没有电流镜的日子有多难熬芯片内部需要大量偏置电流差分对的尾电流、放大器的负载电流、比较器的迟滞电流、基准电路的分支电流。假如没有电流镜最朴素的办法是用电阻把电压转成电流。这个方案看着简单实际上有三道坎。第一道坎是工艺偏差。晶圆上的多晶硅方块电阻值在不同批次之间离散度不小同一个wafer上不同位置的电阻值也可能差百分之十几到几十电阻一变电流就跟着飘后级电路的工作点全变了。第二道坎是温度系数。电阻的温度系数通常在几百到几千ppm每摄氏度温度从-40到125跨度下来电流变化可能超过百分之二三十这还没算MOS管阈值电压的温漂。第三道坎是电压敏感度。用电压除以电阻产生电流意味着电源上的纹波和噪声会直接串进来对噪声性能是灾难。所以芯片内部需要一个“不靠绝对电阻值、不靠绝对电压值”的电流产生和复制方案。电流镜的聪明之处就在于它复制的是两个相同器件之间的电流比例而这个比例主要由器件的几何尺寸决定工艺偏移和温度变化对“比值”的影响要比对“绝对值”的影响小得多。1.2 电流镜真正承担的三个角色很多人以为电流镜只是把某个基准电流复制成几份给各个模块用这只是它的第一个角色。第二个角色是作为高阻抗电流源比如差分放大器的尾电流源、放大器的有源负载都需要输出端呈现很高的动态阻抗而基本电流镜在小信号下是从漏端看进去的阻抗大约等于1/gm和ro的并联输出阻抗有限但远比电阻负载好。第三个角色是电流域的运算比如电流求和、电流相减、电流比例缩放在电流模式下做信号处理时电流镜就是最基本的运算单元。学习电流镜的关键在于建立一条完整链路从电流镜的原理公式到版图的匹配设计再到cascode变体对输出阻抗的改善这条链路吃透了后面学运放设计、带隙基准、开关电容电路都会顺很多。1.3 这篇文章的主线安排接下来先拆解基本电流镜的工作原理搞清楚每个参数的影响然后手算一个偏置电流镜案例把设计流程走一遍再讲版图匹配的实操细节接着引入cascode电流镜等进阶结构最后结合实际调试中的问题补上吴金课程里的一些思路启发。2. 基本电流镜的原理拆解三个必须吃透的点2.1 MOS管饱和区条件与电流公式电流镜的基础是工作在饱和区的MOS管电流方程。对长沟道器件漏源电流可以近似为I_D (1/2) * μ * Cox * (W/L) * (V_GS - V_TH)^2这里μ是载流子迁移率Cox是单位面积栅氧化层电容W/L是栅宽栅长比V_GS是栅源电压V_TH是阈值电压。饱和区条件要求V_DS V_GS - V_TH也就是漏端电压必须比过驱动电压高管子才不会进入线性区。两个相同类型的MOS管如果栅源电压V_GS相同在忽略沟道长度调制的情况下它们的漏电流之比就等于宽长比之比。这个结论是电流镜能够工作的基石一个管子接成二极管形式来“定义”栅压另一个管子复制同样的V_GS条件就能得到一个比例精确的电流输出。要注意的是“相同的V_GS就能得到电流比例”这个说法成立的前提是两个管子都处于饱和区而且温度一致。如果输出管的漏端电压太低它掉进线性区电流就会大幅下降电流镜就失效了。2.2 宽长比比例复制到底谁在决定在设计电流镜时一般先确定参考电流I_REF再通过调整镜像管的宽长比来得到目标电流I_OUTI_OUT / I_REF (W/L)_OUT / (W/L)_REF所以电流镜本质上是“电流比例器”。你可以用相同的W/L得到1:1复制也可以用大管得到多倍电流省下重复的偏置电路。但在版图上W/L的比值不是随便写的。比如你画了一个W/L20/2的管子作为基准又想画一个W/L10/2的管子作为输出看起来比值是0.5实际上由于刻蚀偏差、多晶硅栅的线宽在不同位置的微小差异两条管子的实际L可能并不完全一致。为了降低这种系统性偏差通常会把管子画成多个叉指并联比如20/2画成4个5/2并联10/2画成2个5/2并联这样每个单指的尺寸一致匹配性会好很多。2.3 沟道长度调制电流镜精度的隐形杀手长沟道公式忽略了漏端电压对电流的影响实际器件里随着V_DS增大漏端耗尽区会向沟道方向扩展有效沟道长度变短电流会随之增大这就是沟道长度调制效应一阶模型用λ表示I_D (1/2) * μ * Cox * (W/L) * (V_GS - V_TH)^2 * (1 λ * V_DS)这意味着即使V_GS完全相同只要两个管子的V_DS不同输出电流和参考电流就不会是理想的宽长比关系。电流镜的输出阻抗也不再是无穷大而是近似为ro 1/(λ*I_D)。实际设计里沟道长度调制造成的误差是电流镜最主要的系统误差来源之一。要减小它最直接的手段是加长沟道长度L因为λ大致与L成反比。但L加长也会带来两个代价管子面积增大寄生电容增大速度变慢。我曾经在一个偏置设计里把镜像管的L从0.5μm加到1μm输出电流的电压敏感度明显改善但对应的面积几乎翻倍。后来改用cascode结构在不大幅增加L的前提下把输出阻抗提了两个数量级这就是后面要讲的进阶方案。2.4 失配的统计来源为什么版图要对称系统误差之外还有随机失配。MOS管之间的随机失配主要来自两个方面阈值电压差ΔV_TH和电流因子β (1/2)μCox*(W/L)的相对偏差。Pelgrom模型告诉我们失配大致与管子的面积平方根成反比σ(ΔV_TH) ≈ A_VTH / sqrt(W*L)其中A_VTH是工艺相关常数。要减小随机失配就得增大管子的面积。这里有一个常见误区只加大W不加大L或者只加并联指数不考虑整体面积失配改善有限因为影响阈值失配的是栅面积W*L。随机失配的另一个来源是边缘粗糙度这就是为什么版图中要把管子拆成多个叉指并联因为边缘效应会被平均掉。3. 手算一个偏置电流镜设计实例从指标到仿真3.1 设计目标和参数设定假设现在要为一个低压运放设计尾电流源指标要求偏置电流I_TAIL 4μA电源电压VDD 3.3V基准电流I_REF由片上电流源提供等于2μA。先用一个比例电流镜实现2倍增益也就是I_OUT 2 * I_REF。根据电流镜公式输出管和参考管的宽长比要满足(W/L)_OUT 2 * (W/L)_REF。选择一个小的沟道长度来保证速度暂定L 1μm。参考管取W/L 3/1即W3μmL1μm输出管则为W/L 6/1。这时输出电流接近4μA但要注意这里还没计入沟道长度调制误差后续要靠cascode结构来压低。再算一下过驱动电压。假设工艺参数μnCox约等于180μA/V²阈值电压约0.5V。参考管的电流为2μA由饱和区电流公式反推V_OV sqrt(2 * I_REF / (μnCox * (W/L)_REF)) sqrt(2 * 2 / (180 * 3)) V sqrt(4 / 540) V ≈ 0.086V这个过驱动电压比较低好处是输出管的最小工作电压不高适合低压应用坏处是V_GS本身离阈值电压很近失配的影响相对更明显而且温度变化时电流随V_TH的漂移会被放大。3.2 参考支路的设计电流怎么来参考电流2μA怎么产生通常有三个方案外部引脚直接注入电流、内部电阻分压产生、带隙基准加V-I转换。外部电流源最简单但芯片引脚受限内部电阻方案受电阻绝对值偏差影响带隙基准的方案最稳定但电路复杂度也最高。在要求不高的场景下可以用一个简单的电阻偏置从VDD接一个电阻到二极管连接管的漏端电流约等于(VDD - V_GS) / R。假设VDD3.3VV_GS约等于0.586V目标2μA那么电阻R约等于(3.3-0.586)/2μA ≈ 1.357MΩ。这个电阻阻值比较大占面积而且绝对精度一般所以很多设计里会改成“带隙基准电流镜”的组合。3.3 仿真要看哪几条曲线设计完成后需要做几项仿真验证。第一是DC工作点检查确认参考管和输出管都在饱和区V_DS_OUT要大于V_OV_OUT至少留20%裕量。第二是DC扫描输出端电压从0扫到VDD看输出电流在哪个范围保持平坦这个平顶区的电压宽度就是电流镜的合规工作范围。第三是温度扫描从-40°C到125°C看输出电流随温度的变化这个变化主要来自V_TH、μ、Cox的温漂如果偏差太大需要考虑用更高阶的基准做补偿。第四是蒙特卡洛仿真看随机失配下输出电流的分布判断失配是否满足设计指标。这些仿真跑完设计的前期验证就完成了。但仿真通过的电路到了版图阶段还会变形这才是电流镜实战的真正考验。4. 版图匹配实战电流镜性能从画版图那一刻就定了4.1 匹配性问题的来源版图阶段最核心的命题是保证同名器件的匹配。系统失配主要来自光刻、刻蚀、氧化层厚度差异、机械应力差异等因素。比如多晶硅栅如果方向不同刻蚀时的线宽偏差就不一样如果两个管子周围的环境不同氧化层生长速率也会有差异。这些系统性偏差在原理图仿真里完全看不见但对实际芯片的良率影响非常大。随机失配则来自掺杂原子数的泊松涨落、多晶硅栅边缘粗糙度等。随机失配只能靠增大面积和增加叉指数量来缓解。4.2 共质心、叉指和dummy管的具体做法匹配版图最基本的做法是叉指结构。比如要把W6μm的输出管和W3μm的参考管做在一起可以都拆成宽度为1.5μm的单指参考管2指输出管4指然后把它们交叉排列让两个管子的质心尽量重合。这样工艺梯度带来的偏差会在两个管子上对称分布整体失配减小。共质心布局要求两个管子的质心尽可能靠近甚至重合。对称轴上的梯度比如温度梯度和应力梯度会同时作用于两个管子形成共模误差而不是差模误差。如果质心偏离梯度就会转换成差模失配这是版图匹配的大忌。dummy管的作用是让有效管子的边缘环境一致。多晶硅栅的边缘处光刻和刻蚀环境和中间不同如果不加dummy最外侧的管子会被额外刻蚀有效宽度和内侧管子不一样。做法是在有效管的左右两侧各加一条与栅同层、同宽度、同间距的悬浮多晶硅它们不与源漏区连通只起“陪衬”作用。4.3 电源和地走线的对称性电流镜的源端通常接VDD或GND源端金属走线的寄生电阻会造成源电压不一致。镜像管和参考管的源电压差直接加到V_GS上等效为栅压误差。比如输出管源端多了一条10μm长、0.2μm宽的金属线方块电阻假设为0.1Ω流过4μA电流压降只有微伏级但如果电流是毫安级压降就会变成几十毫伏直接破坏电流比例。所以在大电流电流镜里源端走线必须加宽、加厚且两路走线保持对称。同时注意电流流入方向的一致性最好让参考管和输出管的源端电流从同一边进入避免产生不对称的欧姆压降。4.4 温度梯度和机械应力芯片工作时局部功耗不同会形成温度梯度。电流镜两个管子距离越远温差越大而MOS管的阈值电压和迁移率都随温度变化温差会直接变成失配。所以匹配管要靠近摆放共用同一个阱区和源区减少局部温差。机械应力则主要来自封装和划片过程敏感方向上的应力梯度也会导致器件参数偏移适量加宽周围保护环、减少不必要的接触孔应力点能起到一定的缓解作用。5. cascode电流镜与进阶变体低电压下怎么保住精度5.1 基本电流镜的输出阻抗瓶颈要解决沟道长度调制造成的电流误差核心是提高电流镜输出端的小信号阻抗。基本电流镜的输出阻抗就是输出管的ro等于1/(λ*I_D)。在短沟道工艺里λ可能做到0.1V⁻¹量级甚至更大ro只有几十千欧到几百千欧对高精度电流镜来说完全不够。提高输出阻抗的最直接方案是cascode结构在输出管上方串联一个共栅管利用共栅管的“屏蔽”作用让输出端电压变化主要落在共栅管的V_DS上而输出管的V_DS几乎不变电流就稳定了。5.2 cascode结构的工作原理简单cascode电流镜有四只管子参考支路由二极管连接的N_ref和cascode管N_cas_ref构成输出支路由N_out和N_cas_out构成。N_ref和N_out是电流镜核心栅压相同N_cas_ref和N_cas_out的栅压也连在一起。由于N_cas_ref的V_GS把参考管的漏端电压钳住输出管的漏端也被N_cas_out的V_GS钳住所以两个核心管的V_DS接近一致沟道长度调制误差被大幅消除。理想情况下cascode电流镜的输出阻抗可以近似为r_out ≈ gm_cas * r_o_cas * r_o_out设计时要注意给N_cas_out留够源漏电压余量。功率管在输出端需要的最低电压等于输出管的V_OV加上共栅管的V_OV这个电压余量在低压设计中往往非常珍贵。5.3 低压cascode和Wilson电流镜标准cascode虽然输出阻抗高但代价是输出摆幅损失至少一个V_GS。在低电压工艺里设计者经常用低压cascode结构通过附加偏置电路把共栅管的栅压偏置到比标准接法更低一档让每个管子只占用一个过驱动电压V_OV而不是一个V_GS的压降。Wilson电流镜则是另一种高输出阻抗方案它利用负反馈把输出管的V_DS稳定住。Wilson结构比cascode少一条偏置支路在某些场景下功耗更省但最小输出摆幅介于基本电流镜和标准cascode之间。选择哪种结构我在实际中一般按下面这个表来判断结构输出阻抗最小输出摆幅电路复杂度适用场景基本电流镜roV_OV低对精度要求不高的偏置标准cascodegm*ro^22V_OV到2V_GS中高精度偏置、高增益负载低压cascodegm*ro^22*V_OV中高低压高精度场景Wilson电流镜高约V_OVV_DS较高低对精度和功耗折中要求高的场景5.4 cascode偏置电压的产生电流镜设计里最容易被忽略的一个点是cascode管的偏置电压怎么来。标准cascode里N_cas_ref的栅极直接接到它自己的源即N_ref的漏端的做法简单但会导致输出摆幅损失一个完整的V_GS。低压cascode需要单独产生一个偏置电压V_BIAS使其等于输出管过驱动电压V_OV_OUT加上共栅管过驱动电压V_OV_CAS再加一个阈值电压。产生这个偏置电压的常见办法是加一条“半参考”支路用二极管连接的管子串联产生钳位电压。这个偏置支路自身也要做失配优化否则会引入额外的系统误差。6. 设计调试中的实际问题与吴金课程带来的思路补充6.1 实测中常见的问题发热、SOA和电流漂移有不少人在刚做电流镜时把仿真里的电流值直接当成了芯片实测的电流值结果差得离谱。第一个常见问题就是发热。MOS管的功耗等于V_DS乘以I_D如果电流镜输出级跨在高压和低压之间功耗大芯片温度升高V_TH和μ发生变化电流就会漂移。仿真即使做了温度扫描也模拟不了局部自热效应。第二个常见问题是SOA安全工作区。对于功率级电流镜如果输出管的V_DS超过了工艺给出的最大额定电压或者功耗超过了封装允许的范围管子就可能失效。在做电流镜负载时也要检查瞬态条件下V_GS是否超压避免栅氧击穿。第三个常见问题是电流镜在某些瞬态条件下会产生振荡或者响应缓慢。电流镜输出端如果接了大电容镜像管和输出管构成的环路里可能形成低频极点响应变慢。必要时可以在栅端增加一个小电阻或小电容做补偿但要注意不要过度补偿导致建立时间变长。6.2 大信号下的米勒效应和寄生电容电流镜在开关切换、快速建立等大信号场景下寄生电容的影响会显现出来。栅极节点的寄生电容主要由两个管子的C_GS、C_GD构成。对于输入级是共源放大或者接电容负载的电流镜栅漏之间的米勒电容会显著增大输入端的等效电容拖慢建立速度。在Boost电路、驱动电路这类功率场景里MOS管的米勒效应是开关损耗的主要来源之一电流镜作为驱动级的一部分时也必须考虑这一点。如果输出管是功率管栅电荷Qg大会导致驱动电流镜的建立时间变长必须在功耗和速度之间做折中。6.3 吴金课程的关键思路启发先直流后交流先大信号后小信号结合吴金课程的内容最打动我的一个观点是模拟电路的学习要分层次推进先直流、后交流、先大信号、后小信号。电流镜恰好是这条学习主线的绝佳载体。直流视角下电流镜解决“工作点在哪”的问题管子饱和没有、电流是多少、失配有多大。交流小信号视角下电流镜解决“阻抗是多少”的问题输出阻抗决定了增益和电源抑制比。大信号视角下电流镜解决“建立有多快”的问题寄生电容和米勒效应决定了瞬态性能。很多初学者在仿真里直接跑AC分析却说不清工作点是怎么来的这就像没搭好脚手架就急着盖楼。吴金课程另一个核心思路是“从系统需求反推器件参数”电流镜不是孤立存在的它的精度要求、速度要求、电压余量要求全部来自上级模块的指标设计时要先明确上级模块需要什么再回头决定管子的W/L和结构类型。6.4 学习电流镜的几个实操建议第一自己动手算一遍基本电流镜的电流和过驱动电压不要只依赖仿真器。手算可以帮助建立直觉知道哪些参数决定性能上限。第二拿到一个老工艺PDK把不同电流镜结构都搭一遍比较它们的输出阻抗、最小输出摆幅、建立时间和失配分布。仿真器不会说谎但只仿真不思考学到的东西也有限。第三有条件的话做过一次流片感受一下设计到封测之间的巨大鸿沟版图匹配和封装应力加在一起几乎决定了最终性能是否能达到设计预期。根据我个人的实际经验电流镜的设计看起来简单真正做精的功夫全在细节里。参考管和镜像管的V_DS相等吗版图质心对齐了吗cascode管的偏置电压是“刚好够用”还是“留有裕量”这些问题在原理图上往往看不出来但到了芯片实测阶段每一个都能决定产品成败。如果后面有机会建议把电流镜和带隙基准、运放输入级放在一起学习把它们组合起来理解会对整个模拟信号链的设计有一个更完整的认识。偏置电路的设计从来不是“写几个抄来的公式”那么简单它是一个需要反复权衡、不断迭代的系统工程。把电流镜这一层吃透了后面做再复杂的电路心里都会踏实许多。
返回列表