深亚微米CMOS工艺SPICE建模与C-V特性仿真 - 第4节
4.1 SPICE仿真环境概览
在深亚微米CMOS工艺建模与C-V特性仿真中,仿真环境是连接物理模型与电路行为的桥梁。主流工业级SPICE仿真器包括HSPICE(Synopsys)和SPECTRE(Cadence),两者均支持BSIM4/BSIM-IMG等先进模型,但在安装配置、文件组织与运行方式上存在差异。
核心要点:仿真环境搭建的核心任务是完成仿真器安装、工艺模型库配置、仿真文件结构定义以及基本分析语句的验证。本章将围绕这四个维度展开。
版本提示:本课程基于HSPICE 2022.06-SP1与SPECTRE 21.1.0.400,模型库采用BSIM4.8.1标准工艺包。
4.2 HSPICE与SPECTRE安装要点
4.2.1 HSPICE安装与验证
HSPICE通常以Synopsys EDA工具套件形式安装,核心组件包括hspice可执行文件、awaves波形查看器以及模型库目录。安装后需设置环境变量:
# 设置HSPICE环境(bash示例)
export HSPICE_HOME=/opt/synopsys/hspice/2022.06
export PATH=$HSPICE_HOME/bin:$PATH
export LM_LICENSE_FILE=27000@license_server
验证安装是否成功:
hspice -v
# 应输出类似 "HSPICE 2022.06-SP1 (64-bit)" 的版本信息
常见问题:若提示“license check failed”,请检查环境变量LM_LICENSE_FILE或SNPSLMD_LICENSE_FILE是否指向正确的license服务器或文件。
4.2.2 SPECTRE安装与集成
SPECTRE作为Cadence Virtuoso平台的一部分,通常通过ICADV或IC安装包部署。独立运行方式:
# 设置SPECTRE环境
export CDS_ROOT=/opt/cadence/IC21.1
export PATH=$CDS_ROOT/tools/bin:$PATH
export CDS_LIC_FILE=5280@license_server
验证SPECTRE:
spectre -version
# 应输出 "Subversion version 21.1.0.400" 等版本信息
| 对比项 | HSPICE | SPECTRE |
| 开发商 | Synopsys | Cadence |
| 输入网表格式 | .sp / .cir(HSPICE语法) | .scs(SPECTRE语法) |
| 模型库格式 | .lib(HSPICE模型库) | .scs(SPECTRE模型库) |
| 波形输出 | .tr0 / .ac0(二进制) | .raw / .psf(二进制) |
| 典型应用 | 存储器、标准单元特征化 | 模拟/RF电路、混合信号 |
4.3 仿真文件结构
一个完整的SPICE仿真项目通常包含以下文件层次:
- 主网表文件(
top.sp 或 top.scs):定义电路拓扑、分析语句、输出控制。
- 模型库文件(
bsim4.lib 或 bsim4.scs):包含MOSFET、电阻、电容等器件的工艺参数。
- 子电路文件(
subckts.sp):存放标准单元、反相器、运放等可复用模块。
- 激励文件(
stimuli.sp):定义电压源、电流源、脉冲源等测试激励。
- 输出控制文件(
control.sp):指定需要保存的节点、电流、功率等。
典型HSPICE网表文件结构示例:
****************************************************************
* 深亚微米CMOS反相器C-V特性仿真
* 文件: inv_cv.sp
****************************************************************
.TITLE "CMOS Inverter C-V Simulation"
* 包含模型库
.LIB 'bsim4_180nm.lib' TT
* 电源与地
VDD vdd 0 DC=1.8V
VSS vss 0 DC=0V
* 输入激励(DC扫描)
VIN in 0 DC=0V
* 电路网表
M1 out in vdd vdd PMOS W=1u L=0.18u
M2 out in vss vss NMOS W=0.5u L=0.18u
* 负载电容
CL out 0 10fF
* 分析语句
.DC VIN 0 1.8 0.01
.AC DEC 100 1k 10G
.TRAN 1n 100n
* 输出控制
.PROBE DC V(out) I(VDD)
.PROBE AC V(out) V(in)
.PROBE TRAN V(out) I(CL)
.END
文件组织建议:将模型库、子电路、激励与主网表分离,使用.INCLUDE或.LIB语句引用,便于多项目复用与版本管理。
4.4 模型库配置
4.4.1 模型库文件格式
深亚微米CMOS工艺模型库通常以.lib(HSPICE)或.scs(SPECTRE)格式提供。一个典型的BSIM4模型库包含以下部分:
- 工艺角定义:TT(典型)、FF(快NMOS快PMOS)、SS(慢NMOS慢PMOS)、FS、SF。
- 器件模型语句:
.MODEL NMOS NMOS LEVEL=54 ...(BSIM4对应LEVEL=54)。
- 几何缩放规则:W/L缩放因子、沟道长度调制参数、窄沟道效应参数。
- 温度与噪声参数:TNOM、NOIMOD、NOIA、NOIB等。
HSPICE模型库引用示例:
.LIB 'bsim4_180nm.lib' TT
* 该语句将加载bsim4_180nm.lib中名为TT的工艺角
SPECTRE模型库引用示例:
include "bsim4_180nm.scs"
section TT
// 模型定义
endsection
4.4.2 模型库路径配置
为避免每次仿真都写路径,可通过环境变量或仿真器配置文件设定模型库搜索路径:
# HSPICE: 在 .sp 网表开头设置
.SEARCH PATH=/home/models/bsim4 /shared/models
# SPECTRE: 在 .cdsenv 或 .simrc 中设置
setenv SPECTRE_MODEL_PATH /home/models/bsim4:/shared/models
| 配置方式 | HSPICE | SPECTRE |
| 网表内路径 | .LIB 'path/lib' TT | include "path/lib.scs" |
| 环境变量 | HSPICE_MODEL_PATH | SPECTRE_MODEL_PATH |
| 搜索顺序 | 网表路径优先,其次环境变量 | 网表路径优先,其次环境变量 |
| 多工艺角切换 | .LIB 'lib' TT 改为 .LIB 'lib' FF | 修改 section 名称 |
模型库版本兼容性:BSIM4模型版本(如4.6.1、4.8.1)必须与仿真器支持的LEVEL号匹配。HSPICE 2022支持LEVEL=54(BSIM4.8.1),SPECTRE 21.1支持bsim4v81模型。使用不匹配的模型版本会导致参数解析错误或仿真不收敛。
4.5 常用分析语句
4.5.1 DC分析(.DC)
DC分析用于扫描直流工作点,是C-V特性仿真的核心。基本语法:
.DC 源名 起始值 终止值 步长
.DC VGS 0 1.8 0.01 ; 扫描VGS从0到1.8V,步长10mV
.DC VDS 0 1.8 0.02 VGS 0 1.8 0.2 ; 嵌套扫描:VDS为主扫描,VGS为副扫描
在C-V仿真中,DC扫描用于获取MOSFET的栅电容随偏压变化关系:
.DC VGS -0.5 2.0 0.01
.PROBE DC CGG(M1) ; 保存M1管的栅电容
4.5.2 AC分析(.AC)
AC分析用于小信号频率响应,提取电容-频率特性:
.AC DEC 100 1k 10G ; 从1kHz到10GHz,每十倍频100个点
.AC LIN 1000 1MEG 100MEG ; 线性扫描1MHz到100MHz,1000个点
AC分析结合.PROBE可输出Y参数,进而计算电容:
.PROBE AC Y11(M1) ; 保存M1管的Y11参数
; 电容 Cgg = imag(Y11) / (2*pi*freq)
4.5.3 瞬态分析(.TRAN)
瞬态分析用于时域响应,验证电容充放电行为:
.TRAN 1n 100n ; 步长1ns,总时长100ns
.TRAN 0.1n 50n UIC ; 使用初始条件(UIC)
瞬态分析中可通过电流积分提取电容:
.MEASURE TRAN Qg INTEG I(VG) FROM=0 TO=50n
.MEASURE TRAN Cgg PARAM='Qg/1.8'
分析语句选择指南:
- C-V特性曲线:优先使用
.DC扫描,配合.PROBE CGG或Y参数提取。
- 频率依赖性:使用
.AC分析,观察电容随频率变化。
- 开关瞬态:使用
.TRAN分析,观察电容充放电波形。
4.6 仿真环境验证流程
完成安装与配置后,建议通过以下步骤验证环境可用性:
- 运行测试网表:使用本章提供的反相器网表(
inv_cv.sp),执行hspice inv_cv.sp -o inv_cv。
- 检查日志文件:打开
inv_cv.lis,确认无ERROR或FATAL信息,查看DC工作点是否合理。
- 查看波形:使用
awaves inv_cv.tr0(HSPICE)或wavescan(SPECTRE)查看DC扫描曲线。
- 验证模型加载:在日志中搜索“Model: NMOS”或“BSIM4”,确认模型参数已正确加载。
快速调试技巧:若仿真失败,首先检查.LIB或include语句中的模型库路径是否正确;其次确认模型库文件格式与仿真器版本匹配;最后检查网表中器件尺寸是否在模型有效范围内(如L不能小于最小沟道长度)。
通过以上步骤,即可完成深亚微米CMOS工艺SPICE仿真环境的搭建,为后续C-V特性仿真奠定基础。