集成电路设计-电路网表写法
时间:2023-01-09 20:00:00
集成电路设计采用 HSPICE 软件可以直流到高于 100MHz 在微波频率范围内准确模拟、分析和优化电路。在实际应用中,HSPICE 它可以提供关键的电路模拟和设计方案,并应用 HSPICE 进行电路模拟时,其电路规模仅取决于用户计算机的实际存储器容量。我们需要写一个电路的网表,也可以称之为电路描述语句,
这里博客的目的是介绍HSPICE 一些主要描述电路的句子。用这些句子描述电路模拟的标题,电路的连接方式是拓扑信息,构成电路元件、设备、电源的属性、参数、模型、附加注释、电路模拟结束等。
1、标题语句(.TITLE 语句)
一般形式:.TITLE
或
例:POWER AMPLIFIER CIRCUIT TEST
如果用户不需要标题,第一行必须空,否则第一行的其他行必须空。 HSPICE 句子被用作标题线,而不是执行。
注:.SP第一行为标题在文件中(必须有)。
2、MOS管
M1 drain gate source body pmos W L
eg:M1 OUT IN VDD VDD PMOS W=20u L=0.6u
3、电压源/电流源的写法
电压源
1、V1 NODE1 NODE0 10V AC 2
连接在NODE1与NODE0个电压源,直流10个V,交流2V。
2、V2 NODE1 NODE0 PULSE(0 1.8V 10n 2n 2n 50n 100n)
脉冲电压源,低值0,高值1.8V,延时10ns,上升沿2ns,下降沿2ns,脉冲宽度50ns,
3、 V3 NODE1 NODE0 SIN(0 1 100meg 2ns 5e7)
中值为0,幅度为1,频率为100MHez,延迟时间是2ns,阻尼因子是5e7、相位0(默认值)。
4、V4 NODE1 NODE0 PWL(0ns 0V 2ns 1.8V 6ns 1.8V 8ns 0V 9ns 0V R td=4ns)
在R前定义如何循环线性电压源,然后指出延迟时间(td=4ns)。周期100ns
电流源
I1 NODE1 NODE0 DC=5mA
无交流电流源。 DC= 可写不可写。
I2 NODE1 NODE0 AC=2V,90
交流源,幅度为2V,相位为90度。
4、注释
它是用户在操作和分析程序时解释的句子。在列出输入程序时打印,但不参与模拟分析。该句子可以在输入文件标题句后的任何位置注释。
一般形式:①*
②
用 * 或者 $, * 必须写在行首, $ 它可以写在句子后面,但至少应该是空的。
5、常量
常量有 f、p、n、u、m、k、meg、g。跟着数字,比如: c1 1 2 10
6、子电路
子电路的名称应为 X 而且元件名不能超过16个字符,
端口写在前面,子电路定义的模块名写在最后,如:
Xopa1 a b c c OPAMP
例子:反向器链
.global vdd gnd
gnd vdd01.8V
.subckt inv in out
M1 out in gnd gnd NMOS w=0.36l=0.18u
M2 out in vdd vdd PMOS w=0.72 l=0.18u
.ends
x1in 1 inv
x21 2inv
x32 out inv
c1out 01pf
7、全局节点
用.GLOBAL定义,如:
.GLOBAL NODE1 NODE2 NODE3 eg:.GLOBAL VDD GND
定义了三个全局节点。此外,节点 0、GND、GND!、GROUND指全局地电位。
8、电阻/电阻/电感的写法
电阻:
①RXXX n1 n2
②RXXX n1 n2
③RXXX n1 n2 R=equation
eg: R1 1 2 100k
RC1 12 17 1k TC=0.001, 0 1.2
R4 5 54 RMOD 12k
在上述电阻描述语句中,电阻值可以是正值或负值,但不能为零。TC1 和 TC2 是温度系数,零
电容:
CXXX n1n2 C=equation CTYPE=0 or 1
eg:C13 2 10U IC=3V
电感:
&nbp;LXXX n1 n2 L=equation LTYPE=0 or 1
eg:LLINK 42 69 1U
9.子电路的写法
.SUBCKT SUBNAME node1 node2 ……
*电路描述
.ENDS SUBNAME
eg:.subckt inv in out
M1 out in gnd gnd NMOS w=0.36 l=0.18u
M2 out in vdd vdd PMOS w=0.72 l=0.18u
.ends
10.使用库
.LIB ′< filepath > f ilename ′ entryname
.LIB libnumber entryname
eg:.LIB ′MODELS ′ cmos1
.LIB ′../sum/MODELS ′ cmos1
(it is said:在.lib上面一行写.protect,下面一行写.unprotect可以预防仿真时输出多余的信息,也就是一些库中的信息)
11.引用文件
.include "hua05.sp"
相当于把那个文件整个粘贴过来。
12.定义参数
.param wp=0.72u,wn=0.36u,lm=0.18u
即可在下面用wp、wn、lm来表示这些数值。
13.直流工作点分析
.op
eg:.OP .5NS CUR 10NS VOL 17.5NS 20NS 25NS
在eg 中计算了直流工作点,并要求在 0.5ns 时打印出所有直流工作点值,此外电流在 10 ns,电压在 17.5 ns、20ns 以及 25 ns 时进行瞬态分析。
在输出文件.lis中会列出一些直流参数和各结点的工作点电压、支路电流、静态功耗等。
.dc xval 1k 10k .5k SWEEP TEMP LIN 5 25 125
扫描变量TEMP,线性扫描,在25和125间线性取5个点进行分析。(SWEEP前面的xval那一串应该是说,扫描TEMP的时候,xval作为变量,取值从1k到10k,以0.5k为步长)
实际上输出的结果里面,先取TEMP为25,扫描xval的取值范围;再取TEMP的下一个点,再扫一遍xval;一直找到TEMP=125。
.dc vgs 0 1.8 0.1 sweep vds 0.5 1.8 0.2
MOS管直流特性扫描,Vgs从0到1.8V,步长为0.1V。
(以上面定义的反向器链为例)
.dc vin 0.1V 1.8V 0.01V
.print dc v(out)
扫描反相器链的直流特性并输出。
14.瞬态分析
.tran 1ns 100ns 0.5ns
步长1ns,从0.5ns扫描至100ns
15、结束语句(.END)
一般形式:.END
注意“.”不能少,它是结束语句整体的一部分。若一个 HSPICE 输入文件包含有几个 HSPICE 的运行,则每一个 HSPICE 运行的最后都要加上.END 语句。
部分内容转载至http://blog.sina.com.cn/s/blog_63ea4a270101fwj7.html
之后也会上传一些实例供大家参考
二输入与非门:https://download.csdn.net/download/qq_38716211/11103581
二输入与门: https://download.csdn.net/download/qq_38716211/11103595