Cadence公司有全套的模拟电路设计软件,但是实际情况多数设计公司都是使用Cadence与Synopsys两家公司的部分软件结合使用,各取所长。使用Cadence套件输入电原理图,然后使用Synopsys的Hspice进行仿真,再用Synopsys的awaves软件查看波形文件,或者用Sandwork公司的Spice Explorer软件查看波形文件。简要步骤如下:
用Cadence编辑好电原理图以后,单击电路图窗口的Tools->Simulation->Other,然后电路图窗口会多出一项菜单Simulation。单击这个Simulation->Initialize,填写仿真运行目录,如hspice.run1。点ok以后再Simulation->Netlist/Simulate,出来对话框中这样填:Simulator Name选hspice,Run Actions只选取Netlist,去掉Simulate。填写上面的Library Name,Cell Name,View Name为对应的电路图,点ok则在运行目录(如hspice.run1)中生成spice格式的网表文件netlist。
网表文件生成了,下面编写hspice输入文件,如下所示:
tran simulation
.option nomod scale=1u nopage method=gear lvltim=2 list
.option post accurate
.lib 'libname.lib' TT
.temp 25
.inc 'netlist'
.ic v(vm)=1.5v
.tran 0.1u 100u
.plot tran
.end
这是一个示例的hspice输入文件,具体的语法见hspice使用手册。这里简单描述一下各语句的含义。hspice输入文件按大块分为三块,一是电路描述语句,二是电路分析语句,三是输出描述语句。如果再细分,还有标题语句,注释语句,结束语句。这样共六块。
.option属于电路分析语句,后面跟着的都是分析参数,参数的详细意思见参考手册。.lib .temp .inc属于电路描述语句。.lib指定电路参数的模型名,即libnam.lib,也是一个文本文件,晶圆厂会提供每种工艺的模型文件,后面的TT指定工艺角为TT。.temp指定温度25摄氏度。.inc即.include,指将名为netlist的文件包含进这个输入文件,效果和将netlist文件中的全部文本复制到此文件中是一样的。.ic指给定电路一个初始值,不然电路不会动了。.tran为分析语句,指瞬态分析,后面的意思是分析电路100u即一百微秒以前的关况,0.1u指每零点一微秒步进一次。.plot为输出语句,后面tran指输出.tran的分析,即瞬态分析。.end结束语句。
hspice输入文件写好以后,假设这个文件保存为my.sp文件,则在终端中输入hspice my.sp,然后hspice开始运行,不断输出一些文本。运行结束以后,目录就会多出一些文件,其中my.tr0指瞬态分析的波形文件。用查看波形的软件,比如awaves打开波形文件(在终端中敲awaves),可查看波形。或者用更好的波形查看工具Sandwork的Spice Explorer查看,打开方法是在终端中敲sx,软件开启后Import进波形文件即可。