Hspice程序编写主要遵循以下步骤和要点:
打开HSPICE程序
通过OPEN命令打开编写好的网表文件。
编写网表文件
网表文件通常包括电路标题语句、电路描述语句、分析类型描述语句、输出描述语句、注释语句和结束语句。
电路描述语句中需要定义电路元器件、元器件模型、电路的输入激励和源、子电路等。
分析类型描述语句用于指定仿真类型,如瞬态分析、交流分析、直流扫描等。
信号源和信号链路的编写
常用的信号源包括TDR源和眼图测试码,可以作为Macro使用,并在调用时设定参数。
过孔和接插件的调用
可以从供应商处获取过孔和接插件的SPICE模型,并在程序中通过SUBckt命令调用子电路模型。
运行仿真
使用SIMULATE命令进行网表文件的仿真。
使用AVANWAVES命令查看波形图(仿真结果)。
查看仿真结果
仿真结果将输出到终端窗口,可以通过查看终端窗口中的输出信息来获取仿真结果。
使用工艺库模型
有时候需要采用工艺库模型进行仿真,这需要调用工艺库中的模型,并进行相应设置。
环境变量设置
在Linux环境下,需要设置环境变量,将HSPICE安装目录添加到PATH中,以便在终端中直接运行HSPICE命令。
编写输入文件
使用文本编辑器创建一个扩展名为“.sp”的HSPICE输入文件,定义电路的拓扑结构、元器件模型以及仿真参数等。
编译和仿真
在Windows环境下,通过Hspui.exe启动,使用标准输入文件进行操作。在Linux环境下,直接运行HSPICE命令即可。
示例代码
```hspice
.TITLE Inverter
.option post accurate probe
.lib 'D:\hspice2007\model\PTM45nm\nmos90.lib' TT.lib 'D:\hspice2007\model\PTM45nm\pmos90.lib' TTV1
V1 1 0 DC=1.8
R1 1 0 1k
C1 1 0 10p
.SUBCKT inverter
Mp0 out in 1 1 pmos W=20u L=180n
Mn0 out in 0 0 nmos W=10u L=180n
Vdd 1 0 3.3
Vss 0 1 GND
.ENDS
```
在这个示例中:
`.TITLE` 定义了电路的标题。
`.option post accurate probe` 指定了仿真后处理选项。
`.lib` 命令包含了使用的模型库。
`V1` 是一个电压源,连接到晶体管的门极。
`R1` 和 `C1` 分别代表电阻和电容。
`.SUBCKT` 定义了一个子电路,包含两个晶体管(PMOS和NMOS)及其连接。
`.ENDS` 标记了子电路的结束。
通过以上步骤和示例代码,可以开始编写和运行Hspice程序进行电路仿真。