Bandgap带隙基准源设计全解析:从原理到流片实战
1. 从一个“不随温度跳舞”的电压说起做模拟电路的人迟早会跟带隙基准源打交道。你画好了一个LDO仿真发现输出电压随温度漂移了几十毫伏你搭了一个ADC发现高低温下有效位数掉得厉害你给传感器做偏置结果零漂比信号还大。追到根上十有八九是基准源没做好。Bandgap带隙基准源就是干这个的——它要产生一个对温度不敏感、对电源不敏感、对工艺角也不那么敏感的参考电压通常是1.2V左右。这个数字不是随便定的它来自硅的带隙电压外推到绝对零度的值大约1.205V。我第一次接触这个概念的时候觉得挺神奇一个跟温度强相关的PN结电压加上一个跟温度正相关的热电压按比例一掺温度系数就抵消了。听起来简单但真要做到几个ppm每摄氏度的水平架构选型、器件匹配、版图布局每一步都是坑。这篇内容适合刚入行的模拟IC工程师、正在做基准源模块的学生以及想重新梳理Bandgap知识体系的老手。我会从基本原理讲起把几种主流架构的取舍逻辑拆开再给出一套可复现的设计流程和排查经验。不堆公式但关键推导会补全不吹架构但会告诉你什么场景该选什么。2. Bandgap带隙基准源的基本原理拆解2.1 为什么是1.2V带隙电压的物理来源硅的带隙能量在绝对零度时约为1.17eV外推到0K时的带隙电压约1.205V。这个电压本身并不是直接拿来做基准的而是通过双极型晶体管的基极-发射极电压VBE来间接体现。一个二极管连接的BJT其VBE在室温下大约0.7V温度系数约-2mV/°C。这个负温度系数很稳定但绝对值太小而且随温度变化太大单独用根本做不了基准。关键的一步在于两个工作在不同电流密度下的BJT它们的VBE之差ΔVBE正比于绝对温度。这就是所谓的PTAT电压。把VBE和ΔVBE按一定比例相加就能得到一个温度系数接近零的电压。这个比例系数通常记为K最终输出VREF VBE K·ΔVBE。当K选得合适时VREF的温度系数在某个温度点附近为零这个值大约就是1.2V。所以Bandgap的核心思想就是用一个负温度系数的电压去抵消一个正温度系数的电压。注意这里说的“抵消”是一阶补偿。实际上VBE和ΔVBE都不是严格线性的高阶项会导致输出在宽温度范围内仍有弯曲这就是为什么高精度Bandgap需要曲率补偿。2.2 一阶补偿的数学推导与参数计算假设两个BJT的发射极面积比为N偏置电流比为M那么ΔVBE VT·ln(M·N)其中VT kT/q室温下约26mV。VBE的温度系数约-1.5mV/°C到-2mV/°C具体取决于偏置电流。要让VREF的温度系数为零需要满足d(VBE)/dT K·d(ΔVBE)/dT 0由于d(ΔVBE)/dT (k/q)·ln(M·N)而d(VBE)/dT ≈ (VBE - Vg0)/T - (γ)·(k/q)其中Vg0是带隙电压外推值γ是与工艺相关的常数。简化计算时通常取d(VBE)/dT ≈ -1.8mV/°Cd(ΔVBE)/dT ≈ 0.087mV/°C当ln(M·N)≈10时。那么K ≈ 1.8/0.087 ≈ 20.7。也就是说需要把ΔVBE放大20倍左右再与VBE相加。这个放大倍数直接决定了电阻比值也是版图匹配的重点。实际设计中我会先确定ΔVBE的大小。如果取ln(M·N)8ΔVBE≈208mV那么K≈8.65输出VREF≈0.78.65×0.208≈2.5V这太高了。所以通常会把ΔVBE做小一点比如ln(M·N)4ΔVBE≈104mVK≈17.3VREF≈0.717.3×0.104≈2.5V还是不对。等等这里我算错了——VBE在室温下约0.7V但实际带隙输出是1.2V左右说明K·ΔVBE应该约0.5V。如果ΔVBE104mVK应该约4.8。重新算d(VBE)/dT-1.8mV/°Cd(ΔVBE)/dT0.087mV/°CK20.7那么K·ΔVBE20.7×0.1042.15V加上0.7V就是2.85V显然不对。问题出在d(ΔVBE)/dT的数值上ΔVBEVT·ln(MN)d(ΔVBE)/dT(k/q)·ln(MN)0.087mV/°C×ln(MN)。如果ln(MN)4则d(ΔVBE)/dT0.348mV/°CK1.8/0.3485.17K·ΔVBE5.17×0.1040.538V加上0.7V得1.238V。这就对了。所以关键在于ln(MN)不能太大否则K太小输出偏低也不能太小否则ΔVBE太小失调影响大。通常ln(MN)取4到8之间对应ΔVBE约104mV到208mVK约5到10。2.3 温度系数的仿真验证方法理论算完只是第一步实际温度系数要靠仿真扫。我一般会做-40°C到125°C的DC扫描看VREF的抛物线。一阶补偿后曲线通常在中点附近有一个峰值或谷值两端往下掉。如果峰值不在室温说明K偏了需要微调电阻比。仿真时要注意BJT模型要选带温度参数的理想模型没有自热效应和高注入效应结果会偏乐观。另外扫描步长要细至少1°C否则峰值位置看不准。我习惯用参数扫描同时看几个工艺角tt、ff、ss、fs、sf都跑一遍记录每个角下的温度系数和绝对值。如果某个角下温度系数突然变差多半是BJT的beta或电阻的绝对值变化导致偏置电流变了需要检查偏置电路的温度跟踪。3. 主流架构选取与对比分析3.1 简单KVL架构最直观但最挑工艺最简单的Bandgap就是两个BJT加一个电阻网络利用KVL直接相加。典型电路是一个BJT的VBE加在电阻上产生PTAT电流这个电流再流过另一个电阻加上另一个BJT的VBE输出就是VBEK·ΔVBE。这种架构的优点是结构简单、功耗低、面积小。缺点是输出电平固定不能低于1.2V而且对电阻匹配要求极高。如果电阻的绝对值漂了PTAT电流就变了温度系数直接恶化。我早期做过一版tt角下温度系数15ppm/°C看起来还行但ff角下跳到80ppm/°C原因就是电阻的绝对值在ff角下小了10%导致偏置电流大了VBE的温度系数变了。后来加了trim才勉强能用。这种架构适合对成本极度敏感、对精度要求不高的场景比如给内部LDO做参考或者给比较器做阈值。如果你要做高精度ADC的基准别选这个。3.2 运放反馈架构精度高但功耗和噪声是代价运放反馈架构是目前最主流的。核心思想是用运放强制两个节点的电压相等从而在电阻上产生精确的PTAT电流。典型电路是两个BJT的VBE分别接到运放的两个输入端运放输出驱动电阻网络形成负反馈。这样PTAT电流由电阻比值决定而不是电阻绝对值匹配要求从绝对值变成了比值精度大幅提升。运放的失调会成为主要误差源所以通常会用chopper或auto-zero来降低失调。我做过一版带chopper的温度系数可以做到5ppm/°C以内但chopper的时钟馈通会引入纹波需要加滤波。这种架构的缺点是功耗大运放本身要消耗电流而且噪声比简单架构高。如果系统对噪声敏感比如高分辨率ADC就要在运放后面加RC滤波或者选低噪声运放。另外运放的增益有限会导致两个输入节点有残余电压差这个差会直接调制PTAT电流所以增益至少要做到60dB以上。3.3 电流模架构低压应用的优选电流模架构把VBE和ΔVBE都转换成电流然后在电阻上相加。这样输出电平可以低于1.2V甚至做到0.5V。原理是VBE加在电阻上产生负温度系数电流ΔVBE加在另一个电阻上产生正温度系数电流两路电流按比例镜像后相加再流过输出电阻。这种架构适合低压工艺比如1.8V甚至1.2V供电。缺点是电流镜的失配会直接导致温度系数恶化所以电流镜的匹配要做得很好通常用共源共栅或者大尺寸器件。我做过一版0.9V输出的电流模Bandgap在1.2V供电下工作温度系数12ppm/°C。关键点是电流镜的沟道长度要足够长至少2倍最小尺寸而且要走对称布局。另外输出电阻的温度系数也会影响结果最好用同类型电阻让一阶温度系数抵消。3.4 架构对比与选型决策表架构类型输出范围精度潜力功耗面积适用场景简单KVL固定1.2V低20-50ppm/°C低小内部参考、比较器阈值运放反馈1.2V左右高10ppm/°C中高中高精度ADC、DAC电流模可低于1V中高10-20ppm/°C中中低压系统、便携设备曲率补偿1.2V左右极高5ppm/°C高大精密仪器、基准源芯片选型时先看供电电压和输出要求再看精度和功耗预算。如果供电低于1.5V基本只能选电流模。如果精度要求低于5ppm/°C必须加曲率补偿。如果只是给内部电路做偏置简单KVL就够了别过度设计。4. 实操过程与核心环节实现4.1 从指标到电路参数的完整设计流程假设要设计一个温度系数小于10ppm/°C、输出1.2V、供电3.3V、功耗小于50μA的Bandgap。第一步选架构运放反馈架构因为精度要求中等功耗预算够。第二步定BJT面积比和偏置电流比取N8M1则ln(MN)2.08ΔVBE≈54mV太小了失调影响大。改N24M1ln(24)3.18ΔVBE≈83mV还是偏小。取N8M8ln(64)4.16ΔVBE≈108mV合适。第三步算Kd(VBE)/dT≈-1.8mV/°Cd(ΔVBE)/dT0.087×4.160.362mV/°CK1.8/0.3624.97。第四步算电阻比PTAT电流IΔVBE/R1输出VREFVBEI·R2VBE(R2/R1)·ΔVBE所以R2/R1K4.97。取R110kΩ则R249.7kΩ取50kΩ。第五步算偏置电流I108mV/10kΩ10.8μA两路一共21.6μA运放消耗20μA总功耗约42μA满足要求。第六步选运放两级米勒补偿增益70dB相位裕度60度输入失调用chopper降到10μV以下。4.2 关键器件的选型与匹配技巧BJT选纵向PNP因为纵向PNP的beta高、匹配好。面积比N8用3×3的阵列中心对称布局周围加dummy。电阻选同一类型比如高阻多晶硅温度系数一阶约-100ppm/°C但比值匹配可以做到0.1%以内。电阻的宽度要足够至少2倍最小宽度减少边缘效应。运放的输入对管用大尺寸面积至少10倍最小尺寸降低失调。电流镜的沟道长度取2倍最小匹配更好。实操心得BJT的集电极要接到最低电位避免衬底漏电。如果工艺支持用深N阱隔离减少衬底噪声耦合。4.3 版图布局与后仿真要点版图是Bandgap成败的关键。我踩过的坑第一次流片原理图仿真温度系数8ppm/°C实测200ppm/°C。原因就是版图不对称两个BJT的基极电阻不匹配导致ΔVBE有误差。后来改成共中心布局BJT和电阻都做成交叉对称实测降到15ppm/°C。具体做法BJT阵列按ABBA排列电阻用叉指结构走线等长等宽。运放的输入对管要远离功率器件避免热梯度。输出电阻要放在等温线上减少热电动势。后仿真时要提取寄生电阻和电容特别是BJT的基极电阻和电阻网络的寄生。如果寄生电阻与主电阻可比温度系数会明显恶化。我一般会做蒙特卡洛仿真跑200次看温度系数的分布。如果3σ超过30ppm/°C说明匹配不够需要加大器件面积或加trim。4.4 测试与trim策略流片回来先测室温输出如果偏离1.2V超过5%说明电阻比或BJT面积比有系统误差。然后测温度系数用温箱从-40°C到125°C每10°C记录一次。如果曲线是抛物线说明一阶补偿基本对但K有偏差可以通过trim电阻微调。如果曲线单调说明PTAT或CTAT有一路没工作检查偏置电路。Trim方案通常用熔丝或EEPROM在封装后做。我习惯在电阻网络里留几个可调支路每个支路改变0.5%的比值覆盖±5%的范围。注意Trim要在多个温度点做不能只测室温。因为trim改变的是K会影响整个温度曲线。最好在-40°C、25°C、125°C三个点测然后拟合出最佳trim码。5. 常见问题与排查技巧实录5.1 温度系数突然恶化的排查思路温度系数从10ppm/°C跳到100ppm/°C先查偏置电流。如果偏置电流随温度变化大说明偏置电路的温度系数没做好。常见原因是偏置电阻的温度系数太高或者电流镜的参考电流来自一个温度相关的源。解决办法偏置电流用PTAT电流源或者用与Bandgap核心同类型的电阻。另一个原因是运放的失调随温度漂移chopper没工作或者时钟频率不对。检查chopper的时钟幅度和频率确保开关完全导通和关断。5.2 输出噪声与纹波的抑制方法Bandgap的输出噪声主要来自运放和电阻。运放的闪烁噪声在低频段占主导chopper可以把它搬到高频但会引入纹波。纹波频率等于chopper频率幅度取决于失调和开关电荷注入。抑制方法在运放输出加RC滤波截止频率低于chopper频率的十分之一。电阻的热噪声用大电阻降低但大电阻会增加面积和寄生电容。我一般取电阻在10kΩ到100kΩ之间噪声和面积折中。5.3 启动电路失效的典型场景Bandgap有两个简并点零点和正常工作点。启动电路要把电路从零点拉出来。如果启动电路失效输出为0V。常见原因启动管的阈值电压漂了或者启动电流太小。我遇到过启动管在ff角下漏电太大导致正常工作点被拉偏。解决办法启动管用倒比设计或者加迟滞。启动完成后要完全关断否则会引入额外功耗和噪声。5.4 常见问题速查表现象可能原因排查方法解决措施输出为0V启动电路失效测启动管栅极电压加大启动电流或改迟滞温度系数大电阻比偏差测电阻绝对值Trim或加大匹配输出噪声高运放闪烁噪声测噪声谱密度加chopper或滤波高低温输出跳变BJT漏电测BJT集电极电流加保护环或换工艺功耗超标运放偏置电流大测各支路电流降低偏置或换架构5.5 独家避坑经验第一个坑别忽略BJT的基极电阻。在低电流下基极电阻上的压降会叠加到VBE上导致ΔVBE计算错误。我一般会在仿真时把基极电阻提取出来手动加进去。第二个坑电阻的电压系数。如果电阻上的电压超过一定值电阻值会变导致非线性。高阻多晶硅的电压系数通常很小但扩散电阻就明显。第三个坑封装应力。塑料封装会对芯片产生应力导致BJT的VBE漂移。如果精度要求高用陶瓷封装或者做应力补偿。第四个坑电源抑制比。Bandgap的PSRR在低频段通常只有40dB到60dB如果系统对电源噪声敏感要在Bandgap后面加LDO或者RC滤波。6. 曲率补偿与高阶优化6.1 曲率补偿的两种实现方式一阶补偿后温度曲线是抛物线两端往下掉。曲率补偿就是把这个抛物线拉平。常见方法有两种一种是利用BJT的VBE高阶项通过不同偏置电流下的VBE差来产生一个与T·ln(T)相关的项抵消高阶项。另一种是用MOS管的亚阈值区产生一个与T相关的电流注入到输出节点。第一种精度高但复杂第二种简单但补偿范围有限。我做过一版用亚阈值补偿的温度系数从15ppm/°C降到5ppm/°C但补偿电流对工艺角敏感需要trim。6.2 高阶补偿的代价与取舍曲率补偿不是免费的。它增加电路复杂度、功耗和面积而且可能引入新的噪声和失调。如果系统要求低于5ppm/°C才值得做。如果只是10ppm/°C一阶加trim就够了。另外曲率补偿的效果在宽温度范围内才明显如果工作范围只有0°C到70°C一阶补偿已经很好没必要加。我一般先做一阶测完如果不够再加补偿避免过度设计。6.3 低压低功耗场景的架构变体在1.2V供电下传统运放反馈架构的运放输入共模范围不够需要改成电流模或者用低压运放。电流模架构的输出可以低于1V但电流镜的匹配要求高。另一种变体是用亚阈值MOS代替BJT利用MOS的亚阈值特性产生PTAT电压。这种架构功耗极低可以做到1μA以下但精度差温度系数通常50ppm/°C以上。适合给物联网传感器做参考不适合精密测量。7. 从仿真到流片的完整检查清单7.1 仿真阶段必须覆盖的工艺角与温度点仿真不能只跑tt角。我一般跑tt、ff、ss、fs、sf五个角每个角跑-40°C、-20°C、0°C、25°C、50°C、85°C、125°C七个温度点。记录每个组合下的VREF、温度系数、功耗、PSRR。如果某个角下温度系数超过指标先看是不是电阻绝对值变化导致的如果是加trim如果是BJT的beta变化导致的改偏置电路。另外蒙特卡洛仿真至少跑200次看温度系数的均值和标准差。如果均值偏了说明有系统误差如果标准差大说明匹配不够。7.2 版图检查的十个关键点BJT阵列是否共中心对称电阻是否叉指且等长运放输入对管是否远离热源电流镜是否对称且沟道长度足够启动管是否完全关断输出走线是否远离时钟线电源和地是否分开走保护环是否完整焊盘是否远离敏感节点是否加了dummy器件7.3 流片后的测试计划与数据分析流片回来先做功能测试上电看输出是否正常扫电源看PSRR扫温度看温度系数。然后做trim在室温下测输出如果偏离1.2Vtrim电阻比在-40°C和125°C测如果温度系数大trim K。记录trim码和对应的温度系数找出最佳码。最后做长期稳定性测试高温老化1000小时看输出漂移。如果漂移超过0.1%说明封装应力或器件老化有问题需要改工艺或封装。最后再分享一个小技巧Bandgap的测试最好用高精度万用表至少6位半否则读数误差会掩盖温度系数。测试时远离风扇和空调避免气流导致温度波动。如果条件允许用油浴槽控温比温箱稳定。
上一篇/下一篇内容由系统自动关联
返回资讯列表 →