HSpice实战

HSpice实战
HSpice实战

hspice的实战应用

最初写作本文的目的是希望提供一份中文版的Hspice手册从而方便初学者的使用,本文的缘起是几位曾经一起工作过的同事分别进入不同的新公司,而公司主要是使用Hspice,对于已经熟悉了Cadence的GUI界面的使用者转而面对Hspice的文本格式,其难度是不言而喻的,而Hspice冗长的manual(长达2000页以上)更让人在短时间内理不出头绪。鉴于我曾经使用过相当一段时间的Hspice,于是我向他们提供了一份简单而明了的handbook来帮助他们学习,本来是准备借助一个具体运放的设计例子,逐步完善成为一份case by case 的教程,但由于工作比较浩大,加之时间的关系,一直难以完成,愈拖愈久,在几个朋友的劝说下,与其等其日臻完善后再发布,不如先行发布在逐步完善,以便可以让更多的朋友及早使用收益。本文虽通过网络发表,但作者保留全部的著作权,转载时务请通知本人。由于水平的有限,讨论范围的局限及错误不可避免,恳请读者指正。联系方式为e-mail:nkchenliy@https://www.360docs.net/doc/033486443.html,。

一、HSPICE基础知识

Avant! Start-Hspice(现在属于Synopsys公司)是IC设计中最常使用的电路仿真工具,是目前业界使用最为广泛的IC设计工具,甚至可以说是事实上的标准。目前,一般书籍都采用Level 2的MOS Model进行计算和估算,与Foundry经常提供的Level 49和Mos 9、EKV 等Library不同,而以上Model要比Level 2的Model复杂的多,因此Designer除利用Level 2的Model进行电路的估算以外,还一定要使用电路仿真软件Hspice、Spectre等进行仿真,以便得到精确的结果。

本文将从最基本的设计和使用开始,逐步带领读者熟悉Hspice的使用,并对仿真结果加以讨论,并以一个运算放大器为例,以便建立IC设计的基本概念。在文章的最后还将对Hspice的收敛性做深入细致的讨论。

Hspice输入网表文件为.sp文件,模型和库文件为.inc和.lib,Hspice输出文件有运行状态文件.st0、输出列表文件.lis、瞬态分析文件.tr#、直流分析文件.sw#、交流分析文件.ac#、测量输出文件.m*#等。其中,所有的分析数据文件均可作为AvanWaves的输入文件用来显示波形。

表1 Hspice所使用的单位

独立电压和电流源包括:

1. 直流源(DC):

电压源Vxxx n+ n- dcval

电流源Ixxx n+ n- dcval

2. 交流源(AC):Vxxx n+ n- AC=acmag,acphase

3. 瞬态源(随时间变化):

脉冲源:pulse v1 v2 td trtf pw per

线性源:pwl t1 v1

正弦源:sinvovafreq td damping phasedelay

4. 混合源:可以包括以上所有的形式,如:VIN 13 2 0.001 AC 1 SIN(0 1 1Meg)

二、输入网表文件

TITLE

.INCLUDE

.LIB MACRO

元件描述

信号源描述

分析命令

测量命令

.ALTER

.END

图1 输入网表(Netlist)文件标准格式

二、有源器件和分析类型

有源器件包括二极管(D)、MOS管(M)、BJT管(Q)、JFET和MESFET(J)、子电路(X)和宏、Behavioral器件(E,G)、传输线(T,U,W)等。这里值得注意的是MOS、JFET 和MESFET的L和W的scale是m,而不是um。

分析的类型包括:直流、交流和瞬态分析。

1.直流分析:

对DC、AC和TRAN分析将自动进行直流操作点(DC OP)的计算,但.TRAN UIC将直接设置初始条件,不进行DC OP的计算。

.DC var1 start1 stop1 inc1 sweep var2 type np start2 stop2

直流分析包含以下五种语句:

.DC:直流扫描分析;

.OP:直流操作点分析;

.PZ:Pole/Zero分析;

.SENS:直流小信号敏感度分析;

.TF:直流小信号传输函数分析。

2.交流分析:

交流分析是指输出变量作为频率的函数。

.AC var1 start1 stop1 inc1 sweep var2 type np start2 stop2

交流分析包括以下四种语句:

.NOISE:噪声分析;

.DISTO:失真分析;

.NET:网络分析;

.SAMPLE:采样噪声分析。

3.瞬态分析:

瞬态分析是指计算的电路结果作为时间的函数。

.TRAN tinc1 tstop1 tinc2 tstop2… START=.. UIC SWEEP..

三、输出格式和子电路

(1)输出命令包括:.PRINT、.PLOT、GRAPH、.PROBE和.MEASURE。

.PLOT antype ov1 ov2… plo1,phhi1…plo32,phi32

.PROBE ov1 ov2… ov32

.PRINT antype ov1 ov2… ov32

有五种输出变量形式:

1. 直流和瞬态分析:

用于显示单个节点电压,支路电流和器件功耗。

.print V(node) 或.plot I(node),也可用.graph、.probe。

V(node)表示节点电压,I(node)表示节点电流,p(rload)表示在负载rload上的分析点的功耗。

2. 交流分析:

用于显示节点电压和支路电流的实部、虚部和相位。

vi(node)表示节点电压的虚部,ip(node)表示节点电流的相位,vp(4,6)表示节点4,6间的相位角。

3. 器件模版:

用于显示制定的器件节点的电压、支路电流和器件参数。

lv16(m3)表示MOS管m3的漏电流,其他表示方式见手册。

4. MEASURE语句:

用于显示用户自定义的变量。

可以采用的句法包括:raise,fall,delay,average,RMS,min,max,p-p等。

5. 参数语句:

用于显示用户自定义的节点电压等表达式。

语法格式:.print tranout_var_name=PAR(‘expression’)

(2)还可以采用AvanWave进行波形输出,启动AvanWave的命令为:awaves& (3)子电路:

1. 采用.GLOBAL设置全局节点:

.GLOBAL node1 node2 node3…

2. 子电路语句.SUBCKT和.MACRO:

.SUBCKT subnam n1 n2 n3… parnam=val…

.MACRO subnam n1 n2 n3… parnam=val…

子电路的调用:

Xyyy n1 n2 n3… sunnamparnam=val… M=val

四、控制语句和option语句

1.OPTION语句:

.options语句格式:.options opt1 opt2 opt3…pt=x

一般在每个仿真文件中设置options为.options acct list post,也可以设置为.options node opts,其中.option list表示将器件网表、节点连接方式等输入到列表文件,用于debug与电路拓扑结构有关的问题,.option node表示将输出节点连接表到列表文件,用于debug与由于电路拓扑结构引起的不收敛问题,.option acct表示在列表文件中输出运行时间统计和仿真效率,.option opts在列表文件中报告所有的.option设置,.option nomod表示不输出MODEL 参数,以便减小列表文件的大小,.option brief=1表示不输出网表信息,直到设置.option brief=0,.protect/.unprotect用于屏蔽网表文件中要保护的信息,.option bypass=1不计算latent 器件,.option autostop表示当所有.measure语句完成时,终止仿真,.option accurate=1表示设置为最精确的仿真算法和容差,tstep表示仿真步长值,delmax表示最大允许时间步长,其中delmax=tstep*max,.option dvdt=4用于数字CMOS电路仿真(默认设置),.option dcca=1在直流扫描时强行计算随电压变化的电容,.option captab对二极管、BJT管、MOS、JFET、无源电容器,打印出信号的节点电容值,.option dcstep=val将直流模型和器件转换为电导,主要应用于“No DC Path to Ground”或有直流通路,但不符合Hspice定义的情况。

2.MODEL OPTION语句:

SCALE影响器件参数,如:L、W、area,SCALM影响model参数,如:tox、vto、tnom。

五、仿真控制和收敛

Hspice仿真过程采用Newton-Raphson算法通过迭代解矩阵方程,使节点电压和支路电流满足Kirchoff定律。迭代算法计算不成功的节点,主要是因为计算时超过了Hspice限制的每种仿真迭代的总次数从而超过了迭代的限制,或是时间步长值小于Hspice允许的最小值。

(1) 造成Hspice仿真不收敛主要有“No Convergence in DC Solution”和“Timestep too

Small”,其可能的原因是:

1.电路的拓扑结构:

电路拓扑结构造成仿真不收敛主要有:电路连线错误,scale、scalm和param语句错误,其他错误可以通过查找列表文件中的warning和errors发现。

解决的方法是:将电路分成不同的小模块,分别进行仿真;简化输入源;调整二极管的寄生电阻;调整错误容差,重新设置RELV,ABSV,RELI,ABSI,RELMOS,ABSMOS 等。

2.仿真模型:

由于所有的半导体器件模型都可能包含电感为零的区域,因此可能引起迭代的不收敛。

解决的方法是:在PN结或MOS的漏与源之间跨接一个小电阻;将.option中默认的GMINDC、GMIN增大。

3.仿真器的options设置:

仿真错误容差决定了仿真的精度和速度,要了解你所能接受的容差是多少。

解决的方法是:调整错误容差,重新设置RELV,ABSV,RELI,ABSI,RELMOS,ABSMOS等。

(2) 针对仿真分析中可能出现的不收敛情况进行分析:

1.直流工作点分析:

每种分析方式都以直流操作点分析开始,由于Hspice有很少的关于偏置点的信息,所以进行DC OP分析是很困难的,分析结果将输出到.ic文件中。

对DC OP分析不收敛的情况,解决方法是:删除.option语句中除acct,list,node,post 之外的所有设置,采用默认设置,查找.lis文件中关于不收敛的原因;使

用.nodeset和.ic语句自行设置部分工作点的偏置;DC OP不收敛还有可能是由于model 引起的,如在亚阈值区模型出现电导为负的情况。

2.直流扫描分析:

在开始直流扫描分析之前,Hspice先做DC OP计算,引起直流扫描分析不收敛的原因可能是快速的电压或电流变化,模型的不连续。

解决的方法是:对于电压或电流变化太快,通过增加ITL2来保证收敛,.option ITL2是在直流扫描分析中在每一步允许迭代的次数,通过增加迭代次数,可以在电压或电流变化很快的点收敛。对于模型的不收敛,主要是由于MOS管线性区和饱和区之间的不连续,Newton-Raphson算法再不连续点处进行迭点计算产生震荡,可以通过增减仿真步长值或改变仿真初始值来保证收敛,如:.dc vin 0v 5v 0.1v的直流分析不收敛,可以改为.dc vin 0v 5v 0.2v增大步长值,.dc vin 0.01v 5.01v 0.1v改变仿真的范围。

3.AC频率分析:

由于AC扫描是进行频率分析,一旦有了DC OP,AC分析一般都会收敛,造成不收敛的原因主要是DC OP分析不收敛,解决的方法可以参看前面关于DC OP的分析。

4.瞬态分析:

瞬态分析先进行直流工作点的计算,将计算结果作为瞬态分析在T0时刻的初始值,再通过Newton-Raphson算法进行迭代计算,在迭代计算过程中时间步长值是动态变化的,.trantstep中的步长值并不是仿真的步长值,只是打印输出仿真结果的时间间隔的值,可以通过调整.options lvltimimaximin来调整步长值。

瞬态分析不收敛主要是由于快速的电压变化和模型的不连续,对于快速的电压变化可以通过改变分析的步长值来保证收敛。对模型的不连续,可以通过设置CAPOP和ACM电容,对于给定的直流模型一般选择CAPOP=4,ACM=3,对于level 49,ACM=0。

对瞬态分析,默认采用Trapezoidal算法,精度比较高,但容易产生寄生振荡,采用GEAR

算法作为滤波器可以滤去由于算法产生的振荡,具有更高的稳定性。

六、输入语句

对于.param语句,.param PARHIER=GLOBAL是默认的,使得参数可以按照Top-Down 变化,.param PARHIER=LOCAL,可以是参数只在局部有效。

对于.measure语句,可以采用的模式有rise,fall,delay,average,rms,min,peak-to-peak,Find-When,微分和积分等。对Find-When语句,.measure result find val when out_val=val,对微分和积分语句,.measure result val

对于.ALTER语句,可以通过改变.ALTER来改变使用不同的库,其中.ALTER语句可以包含element语句、.data、.lib、.del lib、.include、.model、.nodeset、.ic、.op、.options、.param、.temp、.tf、.dc、.ac语句,不能包含.print、.plot、.graph或其他I/O语句,同时应该避免在.ALTER中增加分析语句。

七、统计分析仿真

主要是对器件和模型进行Monte Carlo分析,随机数的产生主要依赖Gaussian、Uniform、Limit分析,通过.param设置分布类型,将dc、ac、tran设置为Monte Carlo分析,用.measure 输出分析结果,如:

.paramtox=agauss(200,10,1)

.tran 20p 1n sweep MONTE=20

.model … tox=tox …

其中,对Gaussian分析.paramver=gauss(nom_val,rel_variation,sigma,mult),

.paramver=agauss(nom_val,abs_variation,sigma,mult),

对Uniform分析,.paramver=unif(nom_val,rel_variation,mult),

.paramver=aunif(nom_val,abs_variation,mult),

对Limit分析,.paramver=limit(nom_val,abs_variation),如果你拼错Gauss或Uniform、Limit,不会产生警告,但不将产生分布。

HSpice实战

hspice的实战应用 最初写作本文的目的是希望提供一份中文版的Hspice手册从而方便初学者的使用,本文的缘起是几位曾经一起工作过的同事分别进入不同的新公司,而公司主要是使用Hspice,对于已经熟悉了Cadence的GUI界面的使用者转而面对Hspice的文本格式,其难度是不言而喻的,而Hspice冗长的manual(长达2000页以上)更让人在短时间内理不出头绪。鉴于我曾经使用过相当一段时间的Hspice,于是我向他们提供了一份简单而明了的handbook来帮助他们学习,本来是准备借助一个具体运放的设计例子,逐步完善成为一份case by case 的教程,但由于工作比较浩大,加之时间的关系,一直难以完成,愈拖愈久,在几个朋友的劝说下,与其等其日臻完善后再发布,不如先行发布在逐步完善,以便可以让更多的朋友及早使用收益。本文虽通过网络发表,但作者保留全部的著作权,转载时务请通知本人。由于水平的有限,讨论范围的局限及错误不可避免,恳请读者指正。联系方式为e-mail:nkchenliy@https://www.360docs.net/doc/033486443.html,。 一、HSPICE基础知识 Avant! Start-Hspice(现在属于Synopsys公司)是IC设计中最常使用的电路仿真工具,是目前业界使用最为广泛的IC设计工具,甚至可以说是事实上的标准。目前,一般书籍都采用Level 2的MOS Model进行计算和估算,与Foundry经常提供的Level 49和Mos 9、EKV 等Library不同,而以上Model要比Level 2的Model复杂的多,因此Designer除利用Level 2的Model进行电路的估算以外,还一定要使用电路仿真软件Hspice、Spectre等进行仿真,以便得到精确的结果。 本文将从最基本的设计和使用开始,逐步带领读者熟悉Hspice的使用,并对仿真结果加以讨论,并以一个运算放大器为例,以便建立IC设计的基本概念。在文章的最后还将对Hspice的收敛性做深入细致的讨论。 Hspice输入网表文件为.sp文件,模型和库文件为.inc和.lib,Hspice输出文件有运行状态文件.st0、输出列表文件.lis、瞬态分析文件.tr#、直流分析文件.sw#、交流分析文件.ac#、测量输出文件.m*#等。其中,所有的分析数据文件均可作为AvanWaves的输入文件用来显示波形。 表1 Hspice所使用的单位 独立电压和电流源包括: 1. 直流源(DC): 电压源Vxxx n+ n- dcval 电流源Ixxx n+ n- dcval 2. 交流源(AC):Vxxx n+ n- AC=acmag,acphase 3. 瞬态源(随时间变化): 脉冲源:pulse v1 v2 td trtf pw per 线性源:pwl t1 v1 正弦源:sinvovafreq td damping phasedelay 4. 混合源:可以包括以上所有的形式,如:VIN 13 2 0.001 AC 1 SIN(0 1 1Meg) 二、输入网表文件 TITLE .INCLUDE .LIB MACRO 元件描述 信号源描述

hspice语法手册

Hspice语法手册 天津大学电信学院 陈力颖

Preface 最初写作本文的目的是希望提供一份中文版的Hspice手册从而方便初学者的使用,本文的缘起是几位曾经一起工作过的同事分别进入不同的新公司,而公司主要是使用Hspice,对于已经熟悉了Cadence的GUI界面的使用者转而面对Hspice的文本格式,其难度是不言而喻的,而Hspice冗长的manual(长达2000页以上)更让人在短时间内理不出头绪。鉴于我曾经使用过相当一段时间的Hspice,于是我向他们提供了一份简单而明了的handbook来帮助他们学习,本来是准备借助一个具体运放的设计例子,逐步完善成为一份case by case的教程,但由于工作比较浩大,加之时间的关系,一直难以完成,愈拖愈久,在几个朋友的劝说下,与其等其日臻完善后再发布,不如先行发布在逐步完善,以便可以让更多的朋友及早使用收益。本文虽通过网络发表,但作者保留全部的著作权,转载时务请通知本人。由于水平的有限,讨论范围的局限及错误不可避免,恳请读者指正。联系方式为e-mail: nkchenliy@https://www.360docs.net/doc/033486443.html,。

目录 一、HSPICE基础知识 (2) 二、有源器件和分析类型 (3) 三、输出格式和子电路 (4) 四、控制语句和OPTION语句 (6) 五、仿真控制和收敛 (7) 六、输入语句 (8) 七、统计分析仿真 (9) 天津大学电信学院 陈力颖 2006年2月

一、HSPICE基础知识 Avant! Start-Hspice(现在属于Synopsys公司)是IC设计中最常使用的电路仿真工 具,是目前业界使用最为广泛的IC设计工具,甚至可以说是事实上的标准。目前,一 般书籍都采用Level 2的MOS Model进行计算和估算,与Foundry经常提供的Level 49 和Mos 9、EKV等Library不同,而以上Model要比Level 2的Model复杂的多,因此 Designer除利用Level 2的Model进行电路的估算以外,还一定要使用电路仿真软件 Hspice、Spectre等进行仿真,以便得到精确的结果。 本文将从最基本的设计和使用开始,逐步带领读者熟悉Hspice的使用,以便建立   IC设计的基本概念。文章还将对Hspice的收敛性做深入细致的讨论。 Hspice输入网表文件为.sp文件,模型和库文件为.inc和.lib,Hspice输出文件有运 行状态文件.st0、输出列表文件.lis、瞬态分析文件.tr#、直流分析文件.sw#、交流分析 文件.ac#、测量输出文件.m*#等。其中,所有的分析数据文件均可作为AvanWaves的 输入文件用来显示波形。 表1 Hspice所使用的单位 单位缩写含义 F(f) 1e-15 P(p) 1e-12 N(n) 1e-10 U(u) 1e-06 M(m) 1e-03 K(k) 1e+03 Meg(meg) 1e+06 G(g) 1e+09 T(t) 1e+12 DB(db) 20log10 注:Hspice单位不区分大小写 独立电压和电流源包括: 1. 直流源(DC):

HSPICE入门

HSPICE 入门 说明: 1. 网上已经有大量有关SPICE如何使用的说明文档,所以本篇不拟详细介绍SPICE 的语法,而把重点放在软件的安装和范例上. 2. SPICE诸多版本(such as HSPICE,PSPICE,TSPICE,IsSPICE,SPICE2G.6,spice3e,etc) 其内核是相同的,它们的语法绝大部分也彼此兼容(注意:也有例外). 3. 本文中使用的是SYNOPSYS公司的HSPICE PC版(Hspice_2002.2.2_pc). 4. 简单的HSPICE语法请参考(与本篇放在同一文夹中).详细的 SPICE语法,使用方面的资料放在服务器上,地址: \\Rddomain\规范标准\教材\other 5. 后面附有HSPICE安装说明,和BIAS前后的尺寸变换原则. 模拟集成电路的仿真工具是众多EDA工具中的一个重要组成部分.模拟电路复杂的性能和多样的电路结构,决定了其对仿真工具的精度,可靠性,收敛性以及速度等都有很高的要求.国际上公认的模拟电路通用仿真工具是美国加利福尼亚大学Berkeley分校开发的SPICE程序,目前享有盛誉的EDA公司的模拟电路工具,都是以SPICE为基础开发的. SPICE-------S imulation P rogram with I ntegrated C ircuit E mphasis. 输入HPSICE程序进行分析的电路,由一组元件语句和一组分析控制语句来描述.用元件语句指定电路的拓扑关系和元件值;用分析语句来规定电路的分析类型,模型参数和运行的控制. 一.HSPICE语法简介: SPICE可以做直流分析(DC Analysis),交流分析(AC Analysis),瞬态分析(Transient Analysis)等. (一)分析类型. 1) .OP 计算并打印工作点. 2) .DC var1 start1 stop1 incr1 [var2 start2 stop2 incr2] DC 扫描分析. 例: .DC Vin 0.25 5.0 0.25 $从0.25V到5 V扫描Vin,步长0.25V .DC Vds 0 5 0.1 Vgs 0 5 1 $在Vgs分别在0,1,2,3,4,5V这六个电压点上,以步长0.1V从0V到5V扫描Vds. .DC TEMP –55 125 25

HSPICE基础知识

一、HSPICE基础知识 Avant! Start-Hspice(现在属于Synopsys公司)是IC设计中最常使用的电路仿真工具,是目前业界使用最为广泛的IC设计工具,甚至可以说是事实上的标准。目前,一般书籍都采用Level 2的MOS Model进行计算和估算,与Foundry 经常提供的Level 49和Mos 9、EKV等Library不同,而以上Model要比Level 2的Model复杂的多,因此Designer除利用Level 2的Model进行电路的估算以外,还一定要使用电路仿真软件Hspice、Spectre等进行仿真,以便得到精确的结果。 本文将从最基本的设计和使用开始,逐步带领读者熟悉Hspice的使用,并对仿真结果加以讨论,并以一个运算放大器为例,以便建立IC设计的基本概念。在文章的最后还将对Hspice的收敛性做深入细致的讨论。 Hspice输入网表文件为.sp文件,模型和库文件为.inc和.lib,Hspice输出文件有运行状态文件.st0、输出列表文件.lis、瞬态分析文件.tr#、直流分析文件.sw#、交流分析文件.ac#、测量输出文件.m*#等。其中,所有的分析数据文件均可作为AvanWaves的输入文件用来显示波形。 表1 Hspice所使用的单位 独立电压和电流源包括: 1. 直流源(DC): 电压源Vxxx n+ n- dcval 电流源 Ixxx n+ n- dcval 2. 交流源(AC):Vxxx n+ n- AC=acmag,acphase 3. 瞬态源(随时间变化): 脉冲源:pulse v1 v2 td tr tf pw per 线性源:pwl t1 v1 正弦源:sin vo va freq td damping phasedelay 4. 混合源:可以包括以上所有的形式,如:VIN 13 2 0.001 AC 1 SIN(0 1 1Meg) 二、输入网表文件 TITLE .INCLUDE .LIB MACRO 元件描述 信号源描述 分析命令 测量命令 .ALTER .END 图1 输入网表(Netlist)文件标准格式 二、有源器件和分析类型 有源器件包括二极管(D)、MOS管(M)、BJT管(Q)、JFET和MESFET (J)、子电路(X)和宏、Behavioral器件(E,G)、传输线(T,U,W)等。这里值得注意的是MOS、JFET和MESFET的L和W的scale是m,而不是um。 分析的类型包括:直流、交流和瞬态分析。 1.直流分析: 对DC、AC和TRAN分析将自动进行直流操作点(DC OP)的计算,但.TRAN UIC将直接设置初始条件,不进行DC OP的计算。

HSPICE-使用流程

HSPICE 使用流程 HPICE软件主要用于模拟电路的仿真。模拟电路仿真工具是以电路理论、数值计算方法和计算机技术为基础实现的,由于模拟电路在性能上的复杂性和电路结构上的多样性,对仿真工具的精度、可靠性、收敛性以及速度等都有相当高的要求。HSPICE程序由于收敛性好,适于做系统及电路仿真,又有工作站版和微机版本,在国内外的用户十分广泛。 一、HSPICE可模拟的内容 1.直流分析:包括非线性电路的直流分析 ①电路的直流工作点:分析时电路中的电感全部短路,电容全部开路, 得到电路的每一节点的电流和电压(相对参考点)值。 ②直流小信号传输值:传输函数的直流小信号值为直流小信号工作下的 输出变量和输入变量之比值,包括电路的输入电阻和输出电阻。 ③直流转移曲线:HSPICE可在用户指定的范围内,逐步改变指定的独 立电压或电流源,对每一个电源值的变化,都得到储存的输出变量。 ④灵敏度分析:求出指定输出变量对于电路参数(包括电路中所有的元 件,器件参数,直流电源的输入电平)的直流小信号灵敏度。 2.交流小信号分析:将交流输出变量作为频率的函数计算出来。先计算电 路的直流工作点,决定电路中所有非线性器件的线性化小信号模型参数, 然后在用户所指定的频率范围内对该线性化电路进行分析。 ①频域分析:在用户规定的频率范围内完成电路的交流分析。 ②噪声分析:HSPICE可计算每个频率点上总的输出噪声电平及其等效

输入噪声电平。 ③失真分析:计算电路交流小信号工作下电路的失真特性,分析时是在 输入端加有一个或两个频率的信号,在用户给定的输出负载电阻时, 求出在该负载上的输出失真功率。 3.瞬态分析 ①瞬态响应:是从时间为零开始,到用户规定的时间范围内进行电路的 瞬态特性分析。 ②傅立叶分析:可以对输出波形进行傅立叶分析,得到在用户指定的基 频及时间间隔范围的傅立叶系数。 4.电路的温度特性分析:HSPICE在用户未说明时,是在27℃的标称温度 下进行各种模拟的。当用户指定电路在什么温度下工作时,HSPICE也 能进行不同温度下的电路特性分析,在温度低于-273℃时不予模拟。 二、HSPICE程序可输入的元器件和电源 1.元件:包括电阻、电容、电感、耦合互感、无损耗传输线及开关等。 2.半导体器件:结型二极管、双极型晶体管、结型场效应管、MOS场效应 管及MESFET等。 3.电源:独立电流源、独立电压源、线性电压控制电流源、线性电压控制 电压源、线性电流控制电流源、线性电流控制电压源以及相应的非线性 受控源。其中独立源除直流源外还有脉冲源、交流正弦源、分段线性源、 调幅信号源、调频信号源等。 4.子电路:HSPICE允许用户用定义器件模型相似的形式自行定义一组元

HSPICE学习总结

生产实习报告 一.目录 1.实习内容记述分析 1)HSPICE的基本操作过程 2)网表文件结构的总结 3)简单的网表文件练习 4)总结书写网表文件练习过程中的注意事项 5)练习电路参数的调整 2.生产实习的收获与体会 HSPICE学习总结 操作的基本过程 1.打开HSPICE操作平台:开始——程序——HSPICE——HSPUI 2.打开EDIT NL项,输入网表文件并保存或者可直接在记事本中输入网表文件并保存attention:一般情况下从EDIT NL项直接保存的文件后辍为.exe,应回到保存处强行把文件后辍改为.sp,否则无法运行仿真过程 3.通过OPEN项调出刚才保存的网表文件 4.通过SIMULATE项可对网表文件进行仿真 5.查看EDIT LL项可知仿真过程中是否出现错误,还可查管子的工作状态 attention:模拟过程中经常要查看管子的工作状态以便对电路参数进行调整

6.仿真所得波形可通过打开A V ANW A VES项查看 网表文件结构的总结 1.网表文件的基本大体结构 .exe1一个简单的网表文件

A SIMPLE CS AMPLIFIER *第一行为标题.OPTION POST NODE .TRAN 200P 20N *瞬态分析 .PRINT TRAN V(1) V(2) M1 2 1 0 0 N L=1.6U W=50U *连接结构的描述R 3 2 5K VDD 3 0 3V VIN 1 0 0 PULSE 0.2 4.8 2N 1N 1N 5N 20N *输入的描述 .MODEL N NMOS LEVEL=1 *模型的定义 .END exe2.差分结构的网表文件 DIFFERENTIAL TEST .OPTION POST NODE .TRAN 200P 20N .PRINT TRAN V(5,6) V(2) M1 2 1 0 0 N L=1.6U W=50U M2 5 3 2 2 N L=1.6U W=50U

hspice简明使用手册

HSPICE简明使用手册 水平有限,如有错误请予以改正。还有很多的功能不太了解,希望大家都来补充完善。谢谢!大家也可以把一些自己在调试过程中的bug 汇总到一起,给大家作参考。方便以后少犯这种错误,最好加上为什么错了,如何改正。我会建立一个名字为our_bugs_go_away的文件夹来放大家调试过程中的bug。 如果你认真看了正文中的红字部分,应该就可以使用hspice的基本功能来实现电路模拟。 附录中会有基本的语法,供大家查阅,不一定很全。 1. 常用文件类型 .sp 网表文件输入文件 该文件是hspice唯一的输入文件,用网表形式描述电路。下面会专门讲解该文件的几个基本构成。 .mt0 中存放测试数据输出文件 .lis 中存放仿真的过程以及仿真时的错误输出文件 2. hspui按钮的作用 Open 打开.sp文件 Simulate 仿真开始 Edit LL 观察.lis文件,debug Edit NL 修改.sp 文件 Avanwaves 观察模拟波形 Explore 找到模拟中所用文件的文件夹 3.AvanWaves 使用 用来观察模拟得到的波形 3.1 results brower 对话框用来选择要看的是那种分析(tran,dc,ac)的那种波形,双击你要看的波形就可以了。 3.2主面板 3.2.1窗口 panel# 用来看波形 wave list 观察波形的列表 3.2.2按钮 panels 观察窗口个数控制

window 观察窗口显示控制 measure 测量控制,有对某点的测量和点到点的测量 configuration 不明 tools 不明 3.3快捷按钮 3.3.1 results brower 的开关按钮 3.3.2变量运算函数编辑器 3.3.3打印 3.3.4测量某点坐标 3.3.5两点间坐标检测 3.3.6窗口显示控制 4..sp 文件介绍 对于一个用hspice模拟的电路,一般可以分为两个部分来描述: 1 电路单元的.sp文件。名字多为:unit.sp 比如:nand2g.sp 它一种子电路的形式,就像我们电路中的一些小单元或者Verilog中的module,用来调用,。可以参考程军老师给的.sp文件。 2 电路整体.sp文件。名字多为:sim_unit.sp 比如:sim_nand2g.sp 一般为电路的顶层部分,用来调用单元电路,用网表来描述整个电路,并声明激励源来模拟。可以控制模拟的类型,是直流模拟.dc ,交流模拟(频域分析).ac ,瞬态模拟.tran。这个文件就像是Verilog中的top + testbench。 当然编写网表文件的风格多种多样,这只是其中一种。 在流程后面会有一个.sp文件的讲解,告诉大家.sp文件有哪些基本部分,如何写.sp文件。.sp文件的构成 以程序为例 5. 完整的模拟流程: 直接用记事本建立.sp文件,只要改一下文件扩展名即可。或者直接复制一个.sp文件改个名字。 (下面的内容不用细看,只要知道有哪些步骤) 1 建立模型(一般采用现成模型,直接利用.lib 命令调用。采用何种模型由工艺来定)NMOS 和PMOS的模型 2 子电路建立(例子:nand2g.sp) 描述该子电路的晶体管连接和长宽等即可。 3 编写模拟程序(例子:sim_nand2g.sp) 详见下面对模拟程序的说明。

Hspice 语法手册

一、HSPICE基础知识 Avant!Start-Hspice(现在属于Synopsys公司)是IC设计中最常使用的电路仿真工具,是目前业界使用最为广泛的IC设计工具,甚至可以说是事实上的标准。目前,一般书籍都采用Level2的MOS Model进行计算和估算,与Foundry经常提供的Level49和Mos9、EKV 等Library不同,而以上Model要比Level2的Model复杂的多,因此Designer除利用Level 2的Model进行电路的估算以外,还一定要使用电路仿真软件Hspice、Spectre等进行仿真,以便得到精确的结果。 本文将从最基本的设计和使用开始,逐步带领读者熟悉Hspice的使用,并对仿真结果加以讨论,并以一个运算放大器为例,以便建立IC设计的基本概念。在文章的最后还将对Hspice 的收敛性做深入细致的讨论。 Hspice输入网表文件为.sp文件,模型和库文件为.inc和.lib,Hspice输出文件有运行状态文件.st0、输出列表文件.lis、瞬态分析文件.tr#、直流分析文件.sw#、交流分析文件.ac#、测量输出文件.m*#等。其中,所有的分析数据文件均可作为AvanWaves的输入文件用来显示波形。 表1Hspice所使用的单位 独立电压和电流源包括: 1.直流源(DC): 电压源Vxxx n+n-dcval 电流源Ixxx n+n-dcval 2.交流源(AC):Vxxx n+n-AC=acmag,acphase 3.瞬态源(随时间变化): 脉冲源:pulse v1v2td tr tf pw per 线性源:pwl t1v1 正弦源:sin vo va freq td damping phasedelay 4.混合源:可以包括以上所有的形式,如:VIN1320.001AC1SIN(011Meg) 二、输入网表文件 TITLE .INCLUDE .LIB MACRO 元件描述

相关主题
相关文档
最新文档