3. 双极型晶体管与二极管模型
Bandgap基准的核心机理,是把一个具有负温度系数的 PN 结电压与一个具有正温度系数的热电压项按权重相加,从而在某一温度附近得到近似零温漂的输出。因此,能否把双极型晶体管(BJT)与二极管的模型用对、把 VBE 的温度行为看清楚,直接决定了基准电路的仿真结果是否可信。本节围绕 Virtuoso 中 BJT 模型的调用方式、VBE 的温度特性、饱和电流 IS 与理想因子 N 的作用,以及工艺角与温度扫描的设置展开。
一、Virtuoso 中 BJT 模型的调用方式
在 Cadence Virtuoso 的 ADE 环境中,BJT 并不是一个“自带物理模型”的器件,而是通过模型库文件把符号(symbol)与具体的 SPICE 模型卡绑定。常用做法是在原理图中放置 npn 或 pnp 符号(来自 analogLib 或工艺库),然后在其属性中指定 model name,例如 npn_10x10,并在 ADE 的 Model Libraries 中加载对应的 .scs(Spectre)或 .lib(HSPICE)文件。
以 Spectre 语法为例,一个典型的模型卡片段如下:
section npn
model npn_10x10 bjt type=npn is=1e-16 bf=200 vaf=80 \
+ ikf=1e-3 ise=1e-15 ne=1.5 br=10 rb=200 re=5 rc=50
endsection
其中 is 为饱和电流,bf 为正向电流增益,vaf 为正向 Early 电压,ise 与 ne 描述基极-发射极复合电流。调用时需注意三点:一是符号的 model 字段必须与模型卡中的名字完全一致;二是多指(multi-finger)或并联结构要通过 m 参数或面积因子 area 体现,而不是简单复制多个符号;三是模型库的 section 要与工艺角(tt/ff/ss)对应,否则扫描结果没有意义。
二、基极-发射极电压的温度特性
对于正向偏置的 BJT,集电极电流可写为
IC = IS · exp(VBE / (N · VT))
其中 VT = kT/q 为热电压,室温下约 25.85 mV。反解得到
VBE = N · VT · ln(IC / IS)
由于 IS 随温度强烈增大(近似正比于 T3 并含 exp(-Eg/kT) 项),而 VT 只线性增大,两者竞争的结果是:在固定 IC 下,VBE 随温度升高而下降,典型值约为 −1.5 mV/℃ 到 −2 mV/℃。这个负温度系数正是 bandgap 中“负温项”的来源。
在 Virtuoso 中观察这一特性,最直接的方式是做 DC 温度扫描:固定 IC(例如用理想电流源注入 10 µA),令温度从 −40 ℃ 扫到 125 ℃,绘制 VBE 曲线。若曲线斜率明显偏离 −1.5~−2 mV/℃,应检查模型卡的 eg、xti 参数是否被正确设置。
三、饱和电流与理想因子的影响
IS 决定 VBE 的绝对水平。IS 每增大 10 倍,VBE 约下降 N·VT·ln(10) ≈ 60 mV(N=1 时)。在 bandgap 中,两个 BJT 的 IS 之比决定了 ΔVBE 的大小,因此版图面积比(如 1:8)必须与模型中的面积因子一致。
理想因子 N 反映 PN 结偏离理想指数关系的程度。当基极电流中复合分量占比较大时,N 会大于 1,典型值为 1.0~1.2。N 增大会使 VBE 对 ln(IC) 的斜率变大,也会改变 ΔVBE 的温度系数。在仿真中可通过扫描 IC 并拟合 VBE-ln(IC) 直线的斜率来提取 N:斜率等于 N·VT。
area 是否被误设为默认值 1,以及模型卡中 is 的单位(Spectre 中为 A,部分库文件用 A/µm²)。四、工艺角与温度扫描设置
Bandgap 的温漂和绝对电压对工艺角敏感。在 ADE 中通常需要同时扫描:工艺角(tt、ff、ss、fs、sf)与温度(−40 ℃~125 ℃)。设置方法是在 ADE 的 Corners 工具中定义各 corner 对应的 model section,再在 DC 分析中启用 Temperature Sweep,步长建议 5 ℃ 或 10 ℃,以便观察曲率。
判断结果是否合格,主要看三点:一是输出电压在温度范围内的最大值与最小值之差(即温漂);二是输出电压在室温附近的绝对值是否落在目标窗口内;三是不同工艺角下曲线是否保持单调、无异常拐点。若某 corner 下曲线出现明显上翘或下弯,往往说明该 corner 的 IS 或 N 与标称值差异较大,需要回到模型卡核对。
上图把“模型调用—参数—仿真设置—结果判读”串成一条链路:左侧决定器件身份,中间决定 VBE 的定量行为,右侧决定扫描条件,下方则给出三种工艺角下 VBE 随温度下降的示意曲线。实际仿真中,tt 曲线通常位于中间,ff 因 IS 偏大而整体偏低,ss 则偏高,但三者斜率接近,这正是 bandgap 能够通过 ΔVBE 抵消一阶温漂的前提。
五、实操检查清单
| 检查项 | 正确做法 | 常见错误 |
|---|---|---|
| 模型名绑定 | 符号 model 字段与 .scs 中 model 名一致 | 大小写不一致或漏加载库 |
| 面积因子 | 用 area 或 m 体现 1:8 比例 | 复制 8 个符号但未设 area |
| I_S 单位 | 确认 Spectre 用 A,部分库用 A/µm² | 直接套用导致 V_BE 偏差 100 mV 以上 |
| 理想因子 N | 通过 V_BE-ln(I_C) 斜率提取 | 默认 N=1 忽略复合电流 |
| 温度扫描 | −40 ℃~125 ℃,步长 5 ℃ | 只扫 0~100 ℃ 漏掉低温拐点 |
| 工艺角 | 至少覆盖 tt/ff/ss 三档 | 只跑 tt 就判定温漂合格 |