分类:
2007-10-29 21:45:52
没有办法。
什么都得重学,谁叫我混过了一整个本科呢。
胡乱记的,各条没有逻辑关系:
1.MOS管的写法
m1 drain gate source body pmos Wp L
我想已经说清楚了,四端的顺序分别是D、G、S、B,然后写类型,最后写宽、长。
2.电压源/电流源的写法
V1 node1 node0 10V AC 2
这是连接在node1与node0间的电压源,直流10V,交流2V。电阻和电容的写法下面说。
I1 node1 node0 DC=5mA
这是一个没有交流的电流源。其中 DC= 可以写也可以不写。
I2 node1 node0 AC=2V,90
这是一个交流源,幅度为2V,相位为90度。
V2 node1 node0 PULSE(0 1.8V 10n 2n 2n 50n 100n)
脉冲电压源,低值0,高值1.8V,延时10ns,上升沿2ns,下降沿2ns,脉冲宽度50ns,周期100ns。
V3 node1 node0 SIN(0 1 100meg 2ns 5e7)
正统脉冲电压源,中值是0,幅度是1,频率是100MHez,延迟时间是2ns,阻尼因子是5e7,相位0(默认值)。
V4 node1 node0 PWL(0ns 0V 2ns 1.8V 6ns 1.8V 8ns 0V 9ns 0V R td=4ns)
线性电压源,在R前面先定义好如何循环,然后指出延时时间(td=4ns)。
3.注释
用 * 或者 $, * 必须写在行首, $ 可以写在语句后,但与语句间至少要空一格。
4.常量
常量有 f、p、n、u、m、k、meg、g。紧跟在数字后面即可,如: c1 1 2 10p
5.子电路
子电路的名字要以 X 开头,并且元件名不能超过16个字符,
端口写在前,子电路定义的模块名字写在最后,如:
Xopa1 a b c c OPAMP
举例:反向器链
.global vdd
vdc vdd 0 1.8V
.subckt inv in out wn=0.36u wp=0.72u
mn out in gnd gnd N_18_G2 w=wn l=0.18u
mp out in vdd vdd P_18_G2 w=wp l=0.18u
.ends
x1 in 1 inv wn=0.36u wp=0.72u
x2 1 2 inv wn=0.36u wp=0.72u
x3 2 out inv wn=0.36u wp=0.72u
cl out 0 1pf
6.全局节点
用.GLOBAL定义,如:
.GLOBAL node1 node2 node3
定义了三个全局节点。另外,节点 0、GND、GND!、GROUND都指全局的地电位。
7.电阻的写法
电阻也可以在后面加AC参数,如:
Rxxxx 9 8 1 AC=e10
定义了直流电阻1欧姆,交流电阻为1e10欧姆。电容和电感就没那么多鸟事情了。
8.子电路的写法
.SUBCKT SUBNAME node1 node2 ……
*电路描述
.ENDS SUBNAME
9.使用库
.lib 'C:\path\to\the\lib\mylib.lib' L18U18V_TT
助教的意思是说,后面的L18U18V_TT指出使用这个库里的这一部分。库中的模型是这样定义的:
.MODEL ModelName ……
我们使用的时候用引用那个ModelName
(据说在.lib上面一行写.protect,下面一行写.unprotect可以预防仿真时输出多余的信息,也就是一些库中的信息)
10.引用文件
.include "filename.sp"
这样做相当于把那个文件整个粘贴过来。小猪告诉我的。
11.定义参数
.param wp=0.72u,wn=0.36u,lm=0.18u
然后就可以在下面用wp、wn、lm来表示这些数值了。
12.直流工作点分析
.op
就这一句话。在输出文件.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)
扫描反相器链的值流特性并输出。
13.瞬态分析
.tran 1ns 100ns 0.5ns
步长1ns,从0.5ns扫描至100ns