电路模拟实验专题
实验文档
一、简介
本实验专题基于SPICE(Simulation Program With Integrated Circuit)仿真模拟,讲授电路模拟的方法和spice仿真工具的使用。
SPICE仿真器有很多版本,比如商用的PSPICE、HSPICE、SPECTRE、ELDO,免费版本的WinSPICE,Spice OPUS等等,其中HSPICE和SPECTRE功能更为强大,在集成电路设计中使用得更为广泛。因此本实验专题以HSPICE和SPECTRE作为主要的仿真工具,进行电路模拟方法和技巧的训练。
参加本实验专题的人员应具备集成电路设计基础、器件模型等相关知识。
二、Spice基本知识 (2)
无论哪种spice仿真器,使用的spice语法或语句是一致的或相似的,差别只是在于形式上的不同而已,基本的原理和框架是一致的。因此这里简单介绍一下spice的基本框架,详细的spice语法可参照相关的spice教材或相应仿真器的说明文档。
首先看一个简单的例子,采用spice模拟MOS管的输出特性,对一个NMOS管进行输入输出特性直流扫描。VGS从1V变化到3V,步长为0.5V;VDS从0V变化到5V,步长为0.2V;输出以VGS为参量、ID与VDS之间关系波形图。
*Output Characteristics for NMOS M1 2 1 0 0 MNMOS w=5u l=1.0u
VGS 1 0 1.0 VDS 2 0 5 .op
.dc vds 0 5 .2 Vgs 1 3 0.5 .plot dc -I(vds) .probe
*model
.MODEL MNMOS NMOS VTO=0.7 KP=110U +LAMBDA=0.04 GAMMA=0.4 PHI=0.7 .end
描述的仿真电路如下图,
图2-1 MOS管输入输入特性仿真电路图
得到的仿真波形图如下图。
从这个简单的spice程序中可以知道spice电路描述的主要组成部分。 (1) 标题和电路结束语句
在输入的电路描述语句中输入的第一条语句必须是标题语句,最后一条必须是结束语句。在本例中,
*Output Characteristics for NMOS … … …. … .end
(2) 电路描述语句
电路描述语句描述电路的组成和连接关系,包括元器件、激励源、器件模型等描述,另外,如果电路是层次化的,即包含子电路,电路描述部分还包括子电路描述(.subckt)。
在描述元器件时,要根据类型,采用不同的关键字作为元件名的第一个字母,元器件关键字见下表。如本例中,NMOS管的描述为:
M1 2 1 0 0 MNMOS w=5u l=1.0u
←标题
←结束语句
表示的意思为:
元器件关键字x D G S B 模型名 宽=xx 长=xx
其中D:漏结点;G:栅结点;S:源结点;B:衬底结点。
器件模型描述电路中所使用的器件的spice模型参数,语句为.model。如在本例中,
.MODEL MNMOS NMOS VTO=0.7 KP=110U +LAMBDA=0.04 GAMMA=0.4 PHI=0.7
其中MNMOS为模型名,以便在元器件调用时使用,NMOS为模型的关键字。
元器件类型 电阻 电容 电感 二极管 NPN或PNP双极型晶体管 N沟或P沟结型场效应晶体管 N型或P型MOS场效应晶体管 GaAs场效应晶体管 电压控制开关 电流控制开关 互感 元器件关键字 R C L D Q J M B S W K 激励源说明供激励用的独立源和受控源,比如:V: 独立电压源; I: 独立电流源;E: 电压控制电压源; F: 电流控制电流源;G: 电压控制电流源; H: 电流控制电压源,等等。
(3) 分析类型描述语句
分析类型描述语句说明对电路进行何种分析。比如,直流工作点(.op),直流扫描分析(.dc),交流分析(.ac),噪声分析(.noise),瞬态分析(.tran)等等。 (4) 控制选项描述语句
控制选项用于描述spice仿真时的相关控制选项,一般在.option内进行设置,另外还有打印及输出控制选项(.print、.plot、.probe)等等
现将整个spice程序例子标注如下:
*Output Characteristics for NMOS M1 2 1 0 0 MNMOS w=5u l=1.0u VGS 1 0 1.0 VDS 2 0 5 .op
←标题 ←元器件描述
(模型名为MNMOS的场效应MOS管M1, 漏结点2、栅结点1、源结点0、衬底结点0, 栅宽5um,栅长1um) ←激励源描述
(连接在1和0结点之间的1V独立电压源) ←激励源描述
(连接在2和0结点之间的5V独立电压源)
←分析类型描述,直流工作点分析
.dc vds 0 5 .2 Vgs 1 3 0.5
.plot dc -I(vds) .probe
*model
←分析类型描述,直流扫描分析 (VGS从1V变化到3V,步长为0.5V; VDS从0V变化到5V,步长为0.2V) ←控制选项描述,打印声明 ←控制选项描述,打印输出
.MODEL MNMOS NMOS VTO=0.7 KP=110U
+LAMBDA=0.04 GAMMA=0.4 PHI=0.7 .end
←器件模型描述,定义模型名为MNMOS
的NMOS类型的模型 ←结束语句
三、Hspice电路仿真 (1+3)
HSPICE的输入网表文件通常为.sp文件,输出文件有运行状态文件.st0、输出列表文件.lis、瞬态分析文件.tr、直流分析文件.sw、交流分析文件.ac等,输出文件有运行状态文件.st0和输出列表文件.lis在每次hspice运行后均有出现,其他的输出文件视spice程序中选择的分析类型而出现,并且可以在波形显示工具中显示,如Avanwaves、cosmos scope等。
输入spice网表(程序)文件和库输入文件能够由一个线路网表转换器或用一个文本编辑器产生。
1.写输入网表文件的规则
输入网表文件的第一个语句必须是标题行,最后一个语句必须是.END语 句,它们之间的语句次序是随意的,除非是续行(行首有“+”的行)必须接在要接下去的行后面。注释行以*打头,可加在文件中的任何地方。 2. 输入文件的编辑
(a)HSPICE 采用自由格式输入。语句中的域由一个或多个空格,一个Tab,一个逗号, 一个等号或一个左/右圆括号分开。
(b)除UNIX 系统中的文件名外,不予区分大写或小写字母。 (c)每行语句长度限于80 个字符以下。
(d)一个语句如在一行写不下,可以用续号继续下去。续行以“+”作为第一个非数值、非空格字符。
(e)输入网表文件不能被“打包”,也不能被压缩。 (f)输入网表文件中不要采用特殊的控制字符。