深亚微米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标准工艺包。
SPICE仿真环境架构 网表文件 (.sp/.cir) 电路拓扑 + 分析语句 模型库文件 (.lib/.scs) BSIM4/BSIM-IMG参数 工艺技术文件 (.tf) 版图/寄生参数 HSPICE / SPECTRE SPICE仿真引擎 原始输出 (.tr0/.ac0) 二进制波形数据 测量输出 (.mt0/.ma0) .MEASURE 结果 日志文件 .lis / .log 输入文件 → 仿真引擎 → 输出文件:三者通过文件路径与模型引用语句关联

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" 等版本信息

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语句引用,便于多项目复用与版本管理。
SPICE仿真文件结构 主网表 top.sp 模型库 bsim4.lib 子电路 subckts.sp 激励 stimuli.sp 输出控制 control.sp 波形 .tr0/.ac0 测量 .mt0/.ma0 日志 .lis/.log 文件引用关系 主网表通过 .LIB 引用模型库,通过 .INCLUDE 引用子电路/激励/控制文件 仿真器自动生成波形、测量、日志三类输出文件

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
对比项HSPICESPECTRE
开发商SynopsysCadence
输入网表格式.sp / .cir(HSPICE语法).scs(SPECTRE语法)
模型库格式.lib(HSPICE模型库).scs(SPECTRE模型库)
波形输出.tr0 / .ac0(二进制).raw / .psf(二进制)
典型应用存储器、标准单元特征化模拟/RF电路、混合信号
模型库版本兼容性: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分析,观察电容充放电波形。
三种核心分析语句对比 .DC 分析 直流扫描 C-V特性曲线 工作点提取 .AC 分析 小信号频率扫描 C-f频率特性 Y参数提取 .TRAN 分析 时域瞬态扫描 充放电波形 电荷积分提取 Cgg vs Vgs 曲线 Cgg vs Freq 曲线 Vout vs Time 波形 三种分析可组合使用:DC扫描偏置 → AC叠加小信号 → TRAN验证瞬态响应 C-V仿真典型流程:.DC + .PROBE CGG 直接提取电容

4.6 仿真环境验证流程

完成安装与配置后,建议通过以下步骤验证环境可用性:

  1. 运行测试网表:使用本章提供的反相器网表(inv_cv.sp),执行hspice inv_cv.sp -o inv_cv。
  2. 检查日志文件:打开inv_cv.lis,确认无ERROR或FATAL信息,查看DC工作点是否合理。
  3. 查看波形:使用awaves inv_cv.tr0(HSPICE)或wavescan(SPECTRE)查看DC扫描曲线。
  4. 验证模型加载:在日志中搜索“Model: NMOS”或“BSIM4”,确认模型参数已正确加载。
快速调试技巧:若仿真失败,首先检查.LIB或include语句中的模型库路径是否正确;其次确认模型库文件格式与仿真器版本匹配;最后检查网表中器件尺寸是否在模型有效范围内(如L不能小于最小沟道长度)。

通过以上步骤,即可完成深亚微米CMOS工艺SPICE仿真环境的搭建,为后续C-V特性仿真奠定基础。

配置方式HSPICESPECTRE
网表内路径.LIB 'path/lib' TTinclude "path/lib.scs"
环境变量HSPICE_MODEL_PATHSPECTRE_MODEL_PATH
搜索顺序网表路径优先,其次环境变量网表路径优先,其次环境变量
多工艺角切换.LIB 'lib' TT 改为 .LIB 'lib' FF修改 section 名称