电子百科
HSPICE 除了具备绝大多数 SPICE 特性外,还具有许多新的特点,主要有:
优越的收敛性
精确的模型参数,包括许多 Foundry 模型参数
层次式节点命名和参考
基于模型和库单元的电路优化,逐项或同时进行 AC,DC 和瞬态分析中的优化
具备蒙特卡罗(MONte Carlo)和最坏情况(worst-case)分析
对于参数化单元的输入、出和行为代数化
具备较高级逻辑模拟标准库的单元特性描述工具
对于 PCB、多芯片系统、封装以及 IC 技术中连线间的几何损耗加以模拟
在 HSPICE 中电路的分析类型及其内部建模情况如图 1和图2 所示:
图1 HSPICE 的电路分析类型
图2 HSPICE 的内部建模技术
集成电路设计中的分析和验证是一种典型的围绕一系列结构的试验和数据管理。在电路性能分析中,一般都要在不同应用条件下,根据需要加入各种容差 和限制后进行直流分析(.DC)、交流分析(.AC)和瞬态分析(.TRAN)。HSPICE 模拟时的程序结构如图3所示。
图3 HSPICE 模拟时的程序结构
HSPICE 能够通过不同的源文件去访问各种输入和模拟控制信息,并绘制和输出有关节点的分析曲线和结果。图4 表示了 HSPICE 模拟过程中各数据的状态。
图4 HSPICE 模拟过程各数据状态
HSPICE 根据输入网表(netliST)文件运算并产生仿真结果,仿真结果存储 在输出列表文件或图形数据文件之中。
HSPICE 读或写的文件都与当前的电路设计有关,而且都采用电路设计名作
为前缀。一般情况下,与一个设计有关的所有文件都存放在同一目录下面。
一.文件名的后缀
1.HSPICE 输入文件
配制文件 meta.cfg
初始化文件 hspice.ini
直流工作点初始化文件
输入网表文件
库输入文件
模拟转移数据文件
2.HSPICE 输出文件
输出列表 .lis 或由用户自己定义
瞬态分析结果 .tr#+
瞬态分析测量结果 .mt#
直流分析结果 .sw#+
直流分析测量结果 .ms#
交流分析结果 .ac#+
交流分析测量结果 .ma#
硬拷贝图形数据 .gr#++
数字输出 .a2d
FFT 分析图形数据 .ft#++
子电路交叉列表 .pa#
输出状态 .st#
工作点节点电压(初始条件) .ic
# :代表扫描分析序号或者硬拷贝文件序号,一般从 0 开始。
+:表示在用.POST 语句产生图形数据后该文件才被确立。
++:表示该文件需要一个.GRAPH 语句或有一个针对 meta.cfg 文件中存在的
文件的地址计数器。该文件在 HSPICE 的 PC 版中不产生。
+++:表示只有当应用了.FFT 语句后该文件才被确立。
二. 输入网表文件
输入网表文件和库输入文件能够由一个线路网表转换器或用一个文本编 辑器产生。
1.写输入网表文件的规则
输入网表文件的第一个语句必须是标题行,最后一个语句必须是.END 语 句,它们之间的语句次序是随意的,除非是续行(行首有“+”的行)必须 接在要接下去的行后面,最后值得注意的是.ALTER 子模块必须紧跟文件的 结尾并出现在.END 语句前。注释行可加在文件中的任何地方。
2. 输入文件的编辑
(a)HSPICE 采用自由格式输入。语句中的域由一个或多个空格,一个 Tab,一个逗号, 一个等号或一个左/右圆括号分开。
(b)除 UNIX 系统中的文件名外,不予区分大写或小写字母。
(c)每行语句长度限于 80 个字符以下。
(d)一个语句如在一行写不下,可以用续号继续下去。续行以“+”作为 第一个非数值、非空格字符。
(e)输入网表文件不能被“打包”,也不能被压缩。
(f)输入网表文件中不要采用特殊的控制字符。
三. 输出列表文件
电路模拟运行的结果和输入网表都被放入输出列表文件。输出列表文件被 自动地取与指定的输入列表文件相同的前缀,不同的仅是带有“.lis”后缀。 如输入列表文件为 netlist.sp,则输出列表文件为 netlist.lis。
输出列表文件包含了由输入列表文件中的.PLOT、.PRINT 以及分析语句指定
的 模 拟 结 果 。 例 如 输 入 列 表 文 件 包 含 了 多 于 一 次 的 模 拟 运 行 ( 通 过 采用.ALTER、.INCLUDE、.DATA 等语句),输出列表文件中也包含了每一次模拟 运行的结果。
四. 数值比例因子
HSPICE 中的数值可以是整形数、浮点数。一个整形数或浮点数后跟随一 个整形指数(如 1e-14,2.65e3,但不能是 1e-3pf)或者一个整形数或浮点数后跟 随一个以下列出的数值比例因子:
MI=25.4E-6 FT=.305 DB=20lg10 F=1e-15
P=1e-12 N=1e-9 U=1e-6 M=1e-3 T=1e12
G=1e9 MEG=X=1e6 K=1e3
图 显示了 HSPICE 的模拟流程。
图 HSPICE 模拟流程
完成电路图输入并生成相应的网表文件后,可以使用 HS- PICE 来对电路 性能进行模拟了。键入以下命令,启动 HSPICE 模拟程序:
hspice filename (例如 demo.sp)
若使用 GSI 软件,则直接键入 gsi&命令。此命令在打开 Meta Window 窗口的同 时,还会打开 Graph Window 和 File SelectiON DIALOG 窗口,在 Meta Window 中点击 Hspice,在 File Selection DIALOG 中选择所需网表文件,然后点击 HspiceRun 中的 Run 即可运行 HSPICE 进行电路模拟;也可以在点击 MetaWindow 窗口中的 Hspice 后,直接在 HspiceRun 窗口内键入 InputFile,即装入需运行 的 Hspice 输入文件,然后点击 Run 即可。
如前几章所述,HSPICE 可进行多种分析。每运行一次 HSPICE 模拟工具, 都会产生一个文字型的输出文件(如 demo.list),并根据分析的种类不同,而 产生相应的图形数据文件。几种常见的输出文件列于表中:
分析语句 功能 输出文件格式(以电路 demo 为例)
此外,HSPICE 运行时还会产生用于硬件拷贝(hardcopy)的图形数据文件(如demo.CR#),上述文件名的后缀中,# 是序号,表明此种分析运行的次数。若一个输入文件中,某种分析只做了一次,则相应的输出文件名的“ # ”为 0; 在输入文件中用了 .ALTER 语句,则模拟后的输出文件中”#”根据实际运行的次数而定。
HSICE 模拟输出结果显示方法
HSPICE 对电路性能进行模拟后,在其输出结果的图形输出文件中可用多种方法将模拟得出的图形曲线显示出来。例如用 HSPLOT、GSI、WorkView 及Cadence 等软件。本节主要介绍 HSPLOT、 WorkView 和 GSI 三种方法。
一 .用 HSPLOT 方法显示
使用 HSPLOT 时,先键入如下命令:
HSPLOT filename ( 例如: demo.TRO、demo.SW1 或 demo.ACO 等)
键入上述命令后,屏幕上出现一张菜单,首先键入 p,设定希望看几幅图 形曲线(p 最大值为 6),然后键入 n,逐一选择需显示的节点号,也可以用类似 方法设置菜单上列出的其它项,最后键入 g,此时屏幕上即出现所要观察的波 形图,同时屏幕下方出现菜单,可根据其提示进行各种操作。
二.用 WorkView 显示
我们也可以用 WorkView 中 Viewtrace 的命令看输出结果。首先在主菜单上选中 Window 项,然后在弹出的子菜单上选中 Option 项,再击中 Viewtrace 项并键 入所要显示文件的文件名,打开显示窗口,则该窗口内将出现输出结果波形图。 同样,也可以通过菜单对波形图进行各种操作。
三.用 GSI 软件来显示输出波形图
首先键入 gsi&命令,此命令在打开 Meta Window 窗口的同时,还会打开 Graph Window 和File Selection DIALOG 窗口, 当装入输入文件并运行 Hspice 后,在 MetaWindow 中会显示输入文件中各相应的 Curves 名,选择需要观测的Curves 名,然后点击 Draw,即会在 Graph Window 窗口中出现对应的曲线,在GraphWindow 窗口中通过选择 Panels 项可同时最多看 6 个曲线,也可以在同一显示坐标中同时显示几种类型曲线,若在观测输出曲线的同时选择Measurement 选项中的 Turn Measure On 项,则可以通过移动光标观测各点的具体数值。