2. SPICE热模型概述:SPICE中的温度参数(TNOM、T_ABS、DTEMP)及其全局与局部作用域
在SPICE仿真中,温度效应并非简单的环境温度代入,而是通过一组精心设计的温度参数体系来精确控制器件行为。理解TNOM、T_ABS和DTEMP这三个核心参数的作用域与交互规则,是进行热参数校准的第一步。本章将系统梳理这些参数的语义、优先级以及它们在网表中的全局与局部配置方法。
2.1 温度参数体系总览
SPICE的温度模型建立在“参考温度”与“仿真温度”的差值计算之上。所有与温度相关的模型参数(如阈值电压VTO、载流子迁移率μ0、结饱和电流IS等)均以TNOM为基准进行温度缩放。下表列出了三个核心温度参数的定义与作用域:
| 参数名称 | 默认值 | 作用域 | 语义说明 |
|---|---|---|---|
| TNOM | 27 °C (300.15 K) | 模型级(.MODEL) | 模型参数提取时的参考温度;温度系数计算的基准点 |
| T_ABS | 未定义(默认使用电路温度) | 器件实例级(M/Q/D) | 器件工作的温度,覆盖全局温度设置 |
| DTEMP | 0 | 器件实例级(M/Q/D) | 相对于电路温度的温差偏移量,与T_ABS互斥 |
关键概念: TNOM决定了模型参数“在什么温度下是准确的”;T_ABS和DTEMP决定了器件“在什么温度下工作”。两者通过温度缩放公式共同决定最终的电学特性。
2.2 全局温度设置与局部覆盖机制
SPICE仿真中,温度参数遵循“全局默认 → 局部覆盖”的层级规则。理解这一规则对于调试多温度域电路(如功率级与信号级共存)至关重要。
2.2.1 全局温度设置
在仿真控制语句中,.TEMP 语句设置整个电路的全局环境温度。所有未显式指定T_ABS或DTEMP的器件,均默认工作在此温度下。
*** 全局温度设置示例 ***
.TEMP 27 ; 设置全局仿真温度为27°C
.OPTIONS TNOM=25 ; 设置全局模型参考温度为25°C(覆盖模型默认值)
2.2.2 局部温度覆盖
在器件实例行中,通过T_ABS或DTEMP参数实现局部温度覆盖。其优先级规则如下:
- T_ABS 具有最高优先级:一旦指定,器件完全忽略全局温度,直接使用T_ABS值。
- DTEMP 次之:器件温度 = 全局温度 + DTEMP。当T_ABS未定义时生效。
- 若两者均未指定,器件温度 = 全局温度(由.TEMP语句定义)。
工程经验: 在功率MOSFET或IGBT的仿真中,建议使用T_ABS显式指定结温,避免因全局温度变化导致功率器件温度被意外修改。对于温度敏感的对管(如差分输入对),使用DTEMP可以方便地模拟失配引起的温度梯度。
2.3 温度参数作用域的可视化
下图展示了温度参数在SPICE网表中的层级结构与作用域边界。全局设置位于网表顶层,模型参数在.MODEL语句内定义,而实例级覆盖则直接作用于具体器件。
2.4 参数交互规则与典型配置
在实际工程中,TNOM、T_ABS和DTEMP的交互需要遵循以下规则,以避免温度计算错误:
- TNOM与T_ABS/DTEMP独立:TNOM仅影响模型参数的温度缩放系数,不参与器件工作温度的计算。即使T_ABS=125°C,模型仍以其内部TNOM为基准进行参数修正。
- DTEMP与T_ABS互斥:若同时指定两者,SPICE通常忽略DTEMP,以T_ABS为准。不同仿真器(如HSPICE、LTspice)对此行为有细微差异,建议不要同时使用。
- 负温度系数器件的处理:对于BJT等负温度系数器件,DTEMP可用于模拟热耦合效应(如一个器件发热导致邻近器件温度升高)。
常见陷阱: 在BSIM4等先进MOSFET模型中,TNOM的默认值可能为25°C而非27°C。若模型提取时使用的TNOM与仿真设置不一致,将导致迁移率、饱和速度等关键参数的温度缩放出现系统性偏差。建议在模型文件中显式声明TNOM。
2.5 温度参数配置速查表
以下表格总结了不同仿真场景下的推荐参数配置方式,便于快速参考:
| 仿真场景 | 推荐配置 | 说明 |
|---|---|---|
| 单一温度点分析 | .TEMP 27 |
所有器件使用同一温度,最简单 |
| 温度扫描(.STEP TEMP) | .TEMP -40 25 125 |
全局扫描,无需修改器件实例 |
| 功率器件自热效应 | 实例行加 T_ABS=125 |
固定结温,忽略全局温度变化 |
| 热耦合/温度梯度 | 实例行加 DTEMP=5 |
相对全局温度偏移,模拟局部温升 |
| 模型参数校准 | .MODEL ... TNOM=25 |
确保与提取数据时的环境温度一致 |
2.6 温度参数在网表中的完整示例
以下是一个包含全局与局部温度配置的完整网表片段,展示了温度参数的实际应用:
*** 温度参数综合示例 ***
.TEMP 27 ; 全局温度27°C
.OPTIONS TNOM=25 ; 全局模型参考温度25°C
*** 模型定义 ***
.MODEL NMOS_5V NMOS ( ; 5V NMOS模型
+ TNOM=25 ; 模型级参考温度(覆盖全局OPTIONS)
+ VTO=0.7 ; 阈值电压 @ TNOM
+ U0=500 ; 迁移率 @ TNOM
+ THETA=0.1 ; 迁移率退化系数
+ TCJ=1e-3 ; 结电容温度系数
)
*** 器件实例 ***
M1 drain gate source bulk NMOS_5V W=10u L=0.5u
+ T_ABS=85 ; M1工作在85°C(温度)
M2 drain gate source bulk NMOS_5V W=10u L=0.5u
+ DTEMP=10 ; M2工作在27+10=37°C
M3 drain gate source bulk NMOS_5V W=10u L=0.5u
; M3无温度参数,默认使用全局.TEMP=27°C
校准要点: 在进行热参数校准时,建议先固定TNOM为模型提取温度,然后通过T_ABS或DTEMP独立调节器件工作温度。这样可以将“模型基准”与“工作条件”解耦,便于定位温度误差的来源。