集成电路设计基础Ch07_第1页
集成电路设计基础Ch07_第2页
集成电路设计基础Ch07_第3页
集成电路设计基础Ch07_第4页
集成电路设计基础Ch07_第5页
已阅读5页,还剩88页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1第7章 SPICE数模混合仿真程序的设计流程及方法27.1 采用SPICE的电路设计流程7.2 电路元件的SPICE输入语句格式7.3 电路特性分析语句7.4 电路特性控制语句7.5 缓冲驱动器设计实例7.6 跨导放大器设计实例第7章 SPICE数模混合仿真程序的设计流程及方法347.1 采用SPICE的电路设计流程7.2 电路元件的SPICE输入语句格式7.3 电路特性分析语句7.4 电路特性控制语句7.5 缓冲驱动器设计实例7.6 简单跨导放大器设计实例第7章 SPICE数模混合仿真程序的设计流程及方法566.1 采用SPICE的电路设计流程6.2 电路元件的SPICE输入语句格式6.3

2、 电路特性分析语句6.4 电路特性控制语句6.5 缓冲驱动器设计实例6.6 跨导放大器设计实例第7章 SPICE数模混合仿真程序的设计流程及方法7891011121314151617181920217.1 采用SPICE的电路设计流程7.2 电路元件的SPICE输入语句格式7.3 电路特性分析语句7.4 电路特性控制语句7.5 缓冲驱动器设计实例7.6 跨导放大器设计实例第7章 SPICE数模混合仿真程序的设计流程及方法227.3 电路特性分析语句2324直流分析举例例:分析反相器链的直流传输特性和工作点.global vdd.SUBCKT INV IN OUT wn=1.2u wp=1.2u

3、.ENDSX1 IN 1 INV WN=1.2U WP=3UX2 1 2 INV WN=1.2U WP=3UX3 2 OUT INV WN=1.2U WP=3UCL OUT 0 1PFVCC VDD 0 5VVIN IN 0.DC VIN0 5V 0.1V.OP.END25262727低通滤波器频率响应举例.title ac sweep example.OPTIONS POSTR1 in 1 5C1 1 0 500pFV1 IN 0 0 AC=10V,37.AC OCT 10 1 100MEG.PRINT ac V(1).END2829控制卡噪声分析噪声分析:用来计算各个器件的噪声对输出节点的

4、影响并给出其均方根并输出,可完成.AC语句规定的各频率的计算,应在.AC分析之后。.NOISE ovv srcnam interOvv输出变量,srcnam输入源,inter频率间隔例:.title ac sweep example.OPTIONS POSTR1 in 1 5C1 1 0 500pfV1 IN 0 0 AC=10V,37.AC OCT 10 1 100MEG.noise v(1) v1 20分析1点电压的噪声情况,噪声源为V1端口.END303132833349.温度分析与直流或瞬态分析等命令结合使用:例如对反相器链瞬态特性的温度扫描:VIN IN 0 PULSE(0 5V 1

5、0NS 1N 1N 50N100N).TRAN 1N 200N sweep temp 0 125 20.PRINT V(OUT).END曲线如右:.TEMP t1 t2 :会产生一系列的瞬态分析文件:tr0,tr1.,在metawave中对应不同的分析。357.1 采用SPICE的电路设计流程7.2 电路元件的SPICE输入语句格式7.3 电路特性分析语句7.4 电路特性控制语句7.5 缓冲驱动器设计实例7.6 跨导放大器设计实例第7章 SPICE数模混合仿真程序的设计流程及方法361.初始化.IC var1=val1 瞬态分析的初始化语句.NODESET var1=val1 直流分析的初始条

6、件设定语句进行含有多稳态电路的模拟时往往需要给出初始化条件。AA11A1BoutI初始化问题举例:含有双稳态的电路固定A端为1,扫描输出输入B的直流特性:va a 0 5vvb b 0.dc vb lin 10 0 5不收敛!应加上.nodeset v(i)=5v v(out)=0v3738上面电路的瞬态分析也需要初始化:.va a 0 5vvb b 0 pulse(0 5 1n 0.1n 0.1n 5n 10n).IC v(i)=5v v(out)=0v.tran 0.1n 20ns.392.重置参数-.OPTIONS.OPTIONS:该语句允许用户重新设置程序的参数或控制程序的功能。常用的

7、一些如下:node: 列出个节点的元件端点,便于查错;post: 使输出数据可以使用 MetaWaves 浏览(即将数据输出到post processor)list: 列出元件列表;MEASDGT:.MEASURE语句输出的有效数字位数例:.option post probe $MetaWaves只观察.probe语句输出的变量。40341计算反相器链电路的延迟时间.TITLE 1.2UM CMOS INVERTER CHAIN.INCLUDE models.spX1 IN 1 INV WN=1.2U WP=3UX2 1 2 INV WN=1.2U WP=3UX3 2 OUT INV WN=1

8、.2U WP=3UCL OUT 0 1PFVCC VDD 0 5VVIN IN 0 PULSE(0 5V 10NS 1N 1N 50N 100N).TRAN 1N 200N.measure tran tdelay trig v(in) val=2.5 td=8ns rise=1+ targ v(out) val=2.5 td=9n fall=1.END457.1 采用SPICE的电路设计流程7.2 电路元件的SPICE输入语句格式7.3 电路特性分析语句7.4 电路特性控制语句7.5 缓冲驱动器设计实例7.6 跨导放大器设计实例第7章 SPICE数模混合仿真程序的设计流程及方法46一个例子:缓

9、冲驱动器分析HSPICE分析举例47准备模型文件选用1.2um CMOS工艺level II模型(Models.sp).MODEL NMOS NMOS LEVEL=2 LD=0.15U TOX=200.0E-10 VTO=0.74 KP=8.0E-05+NSUB=5.37E+15 GAMMA=0.54 PHI=0.6 U0=656 UEXP=0.157 UCRIT=31444+DELTA=2.34 VMAX=55261 XJ=0.25U LAMBDA=0.037 NFS=1E+12 NEFF=1.001+NSS=1E+11 TPG=1.0 RSH=70.00 PB=0.58+CGDO=4.3E

10、-10 CGSO=4.3E-10 CJ=0.0003 MJ=0.66 CJSW=8.0E-10 MJSW=0.24.MODEL PMOS PMOS LEVEL=2 LD=0.15U TOX=200.0E-10 VTO=-0.74 KP=2.70E-05+NSUB=4.33E+15 GAMMA=0.58 PHI=0.6 U0=262 UEXP=0.324 UCRIT=65720+DELTA=1.79 VMAX=25694 XJ=0.25U LAMBDA=0.061 NFS=1E+12 NEFF=1.001+NSS=1E+11 TPG=-1.0 RSH=121.00 PB=0.64+CGDO=4.

11、3E-10 CGSO=4.3E-10 CJ=0.0005 MJ=0.51 CJSW=1.35E-10 MJSW=0.2448设计基本反相器单元根据模型参数、设计要求设定管子尺寸写出反相器网单:.TITLE 1.2UM CMOS INVERTER CHAIN.INCLUDE models.sp.global vddMn out in 0 0 NMOS W=1.2u L=1.2uMp out in vdd vdd PMOS W=3u L=1.2uCL OUT 0 0.5PFVCC VDD 0 5VVIN IN 0 PULSE(0 5V 10NS 1N 1N 50N 100N)491.直流传输特性分

12、析.TITLE 1.2UM CMOS INVERTER CHAIN.INCLUDE models.sp.global vdd.option probeMn out in 0 0 NMOS W=1.2u L=1.2uMp out in vdd vdd PMOS W=1.2u L=1.2uCL OUT 0 0.5PFVCC VDD 0 5VVIN IN 0 PULSE(0 5V 10NS 1N 1N 50N 100N).DC VIN 0 5V 0.1V.be dc v(out).end50输出的直流传输特性曲线51利用含参数的子电路组成反相器链.TITLE 1.2UM CMOS INV

13、ERTER CHAIN.INCLUDE models.sp.global vdd.SUBCKT INV IN OUT wn=1.2u wp=1.2uMn out in 0 0 NMOS W=wn L=1.2uMp out in vdd vdd PMOS W=wp L=1.2u.ENDSX1 IN 1 INV WN=1.2U WP=3UX2 1 2 INV WN=1.2U WP=3UX3 2 OUT INV WN=1.2U WP=3UCL OUT 0 1PFVCC VDD 0 5VVIN IN 052直流特性分析.DC VIN 0 5V 0.1V.measure DC ttrans whenv(

14、out)=2.5v.ENDttrans temper alter#2.4500 25.00001.0000532.时序特性VIN IN 0 PULSE(0 5V 10NS 1N1N 50N 100N)*.DC VIN 0 5V 0.1V.TRAN 1N 200N.measure tran tdelay trig v(in) val=2.5 td=8ns rise=1+ targ v(out) val=2.5 td=9n fall=1.PRINT V(OUT).end543.考察驱动能力扫描负载电容,观察时序波形:.param cload=1pf.data cvcload0.5p1p2p.end

15、dataCL OUT 0 cloadVIN IN 0 PULSE(0 5V 10NS 1N 1N50N 100N).TRAN 1N 200N sweep data=cv55.TRAN 1N 200N sweep data=cv.measure tran td trig v(in) val=2.5 td=8nsrise=1 targ v(out) val=2.5 td=9n fall=1.END固定负载,扫描管子尺寸$DATA1 SOURCE=HSPICE VERSION=1999.4.TITLE .title 1.2um cmos inverter chainindex wpt td temp

16、er alter#1.0000 1.200e-06 9.121e-09 25.0000 1.00002.0000 2.400e-06 4.724e-09 25.0000 1.00003.0000 3.000e-06 3.891e-09 25.0000 1.0000.enddataX1 IN 1 INV WN=wu WP=wptX2 1 2 INV WN=wu WP=wptX3 2 OUT INV WN=wu WP=wptCL OUT 0 1pf567.1 采用SPICE的电路设计流程7.2 电路元件的SPICE输入语句格式7.3 电路特性分析语句7.4 电路特性控制语句7.5 缓冲驱动器设计实

17、例7.6 跨导放大器设计实例第7章 SPICE数模混合仿真程序的设计流程及方法57例子:简单跨导放大器分析HSPICE分析举例58电路与网表指标分析偏置电流与功耗、开环增益、GBW与相位裕度、压摆率、Swing Range、失调、噪声、工艺corner分析、温度特性分析等59V_VpV_VacV_Vdcvdd 0 5Vvin 0 DC 2.5V AC 1V 0vip 0 2.5VR_RzC_Ccvo1 N_0001 rzvN_0001 vo ccvC_CLC_CbR_RbM_U2M_M1M_M3M_U1M_U4M_U5M_U30 vo clv0 vb 10pvb vdd 100kvo1 vip

18、 N_0002 0 nm L=0.6u W=12u M=2N_0003 N_0003 vdd vdd pm L=2u W=12u M=2vo vo1 vdd vdd pm L=0.6u W=12u M=8N_0003 vin N_0002 0 nm L=0.6u W=12u M=2vo vb 0 0 nm L=5u W=12u M=8vb vb 0 0 nm L=5u W=12u M=1N_0002 vb 0 0 nm L=5u W=12u M=4M_M2 vo1 N_0003 vdd vdd pm L=2u W=12u M=2存在文件 中60Hspice执行网表Ota simulation.

19、prot.lib LIB_PATHcsmc.lib tt.unprot.option post be ac v(vo1) v(vo) vp(vo).op*.dc v_vdc 2.48 2.5 0.0001*.trans 10ns 200ns 20ns 0.1ns.ac dec 10 1k 100meg $sweep rzv 0 2k 0.2k.para rzv=1k ccv=1p clv=1p.inc NETLIST_PATH.end611.工作点分析Ota t.lib LIB_PATHcsmc.lib tt.unprot*.option post

20、 probe*.probe ac v(vo1) v(vo) vp(vo).op*.dc v_vdc 2.48 2.5 0.0001*.trans 10ns 200ns 20ns 0.1ns*.ac dec 10 1k 100meg $sweep rzv 0 2k 0.2k.para rzv=1k ccv=1p clv=1p.inc NETLIST_PATH.end62工作点分析浏览并分析.lis文件的内容.prot与.unprot使用将使得其中的内容不在.lis中出现用oper查找,即可找到operating point information这一段,可看到电路各节点的电压、各元件的工作状态注

21、意此时vo=4.8916对于提供电源的电压源v_vp,注意其功耗就是电路功耗,因此可查得电路功耗为2.47mW对于MOS管,注意各参量的含义:region、id、vgs、vds、vth、vdsat、gm、gmb、gds可查得流过M_U3的偏置电流为149.8uA,并注意到M_M3的region为Linear2.直流扫描分析Ota t.lib LIB_PATHcsmc.lib tt.unprot.option post be dc v(vo1) v(vo).op.dc v_vdc 2.45 2.55 0.001*.trans 10ns 200ns 2

22、0ns 0.1ns*.ac dec 10 1k 100meg $sweep rzv 0 2k 0.2k.para rzv=1k ccv=1p clv=1p.inc NETLIST_PATH.end63粗扫64dvo直流扫描分析vo1vo对vo求导小信号增益Gain=d(vo)/d(v_vdc)确定精扫扫描范围65直流扫描分析2中键拖动对vo求导的操作步骤1中键拖动derivative 3定义结果名回车直流扫描分析Ota t.lib LIB_PATHcsmc.lib tt.unprot.option post be dc v(vo1) v(vo).o

23、p.dc v_vdc 2.48 2.495 0.0001*.trans 10ns 200ns 20ns 0.1ns*.ac dec 10 1k 100meg $sweep rzv 0 2k 0.2k.para rzv=1k ccv=1p clv=1p.inc NETLIST_PATH.end66精扫67直流扫描分析对于增益要求G0,存在对应的输出swing range,若用小信号增益gainG0作为swing range,则一定满足增益要求例如G0=500,则根据下图其swing range (0.485, 4.29)若取输出中心电压为vdd/2,而令vo=vdd/2时,可测得此时v_dc=2

24、.4876V故ota的系统失调:Vos=12.4mVnonlinearSmall-signal gain3.交流扫描分析Ota t.lib LIB_PATHcsmc.lib tt.unprot.option post be ac v(vo1) v(vo) vp(vo).op*.dc v_vdc 2.48 2.495 0.0001*.trans 10ns 200ns 20ns 0.1ns.ac dec 10 1k 200meg $sweep rzv 0 2k 0.2k.para rzv=0 ccv=1p clv=1p.inc NETLIST_PATH

25、.end表示没有补偿电阻Rz将中的v_vdc值设为:V_Vdc vip 0 2.4876V6869交流扫描分析GBW=99.8MHz相位裕度34.6度直流small-signal gain70单位增益带宽 GBW gm1/(Cc+CGD3)主极点 p1 1/Ro1gm3Ro(Cc+CGD3)第二极点 p2 gm3/(CL+Co)零点 z 1/(Cc+CGD3)(gm3-1-Rz)查看.lis文件 可知gm3 2m gm1 0.83mgm1b 0.13m由于零点的作用,相位裕度从60多度减小至39度!交流扫描分析 gm1为输入管M_U1的跨导gm3为第二级输入管M_M3的跨导交流扫描分析Ota

26、t.lib LIB_PATHcsmc.lib tt.unprot.option post be ac v(vo1) v(vo) vp(vo).op*.dc v_vdc 2.48 2.495 0.0001*.trans 10ns 200ns 20ns 0.1ns.ac dec 10 1k 500meg sweep ccv 0 5p 1p.para rzv=0 ccv=1p clv=1p.inc NETLIST_PATH.end71分析miller补偿效应交流扫描分析增加Cc, p1 向下移动,GBW减小相位裕度增加增加Cc到5p时,相位裕度增加到约5

27、9度,而GBW已经减小到24.8MHz!72交流扫描分析Ota t.lib LIB_PATHcsmc.lib tt.unprot.option post be ac v(vo1) v(vo) vp(vo).op*.dc v_vdc 2.48 2.495 0.0001*.trans 10ns 200ns 20ns 0.1ns.ac dec 10 1k 500meg sweep rzv 0 2k 0.2k.para rzv=0 ccv=1p clv=1p.inc NETLIST_PATH.end分析零极点抵消效果73加Rz,可减弱零点的作用,提高相位裕

28、度;当达到零极点抵消时,应满足:Rz (CL+Cc)/(gm3Cc)得出 Rz 1k74交流扫描分析Rz增加到0.6k时,相位裕度增加到约55度,GBW约76MHzRz增加到1k时,相位裕度增加到约67度,GBW约103MHz754.噪声分析Ota t.lib LIB_PATHcsmc.lib tt.unprot.option post be ac v(vo1) v(vo) vp(vo).op*.dc v_vdc 2.48 2.495 0.0001*.trans 10ns 200ns 20ns 0.1ns.ac dec 10 1k 500meg $

29、sweep rzv 0 2k 0.2k.noise v(vo) v_vac 10.para rzv=1k ccv=1p clv=1p.inc NETLIST_PATH.end分析热噪声76噪声分析.lis文件中会给出每一个频率采样点上的噪声频谱密度,以及从开始频率到该频率点的等效噪声电压等找到如下一段:* the results of the sqrt of integral (v*2 / freq)from fstart upto 100.0000 x hz. using more freqpointsresults in more accurate total noise values.*

30、 total output noise voltage = 2.5009mvolts* total equivalent input noise = 64.7944u注意.lis文件中各个MOS元件的噪声大小对比,并根据电路图进行对应的分析还可以改变Cc的值,来看总的等效输入噪声有什么变化825.压摆率分析在输入端输入一个较大的脉冲信号,以观察输出端的电压摆率在中将V_vac的定义换成:V_vpulse vin 0 PULSE 2 3 20ns 0.1n 0.1n 100n 200n83压摆率分析Ota t.lib LIB_PATHcsmc.lib tt.unpro

31、t.option post be tran v(vo1) v(vo).op*.dc v_vdc 2.45 2.51 0.001 sweep monte = 30.trans 0.1ns 1000ns*.ac dec 10 1k 500meg $sweep ccv 0 5p 1p*.noise v(vo) v_vac 20.para rzv=1k ccv=1p clv=1p $alfa=agauss(0,3,3).inc NETLIST_PATH.end用瞬态仿真来分析ota输出slew rate压摆率分析压摆率仿真结果由右图可测得ota的上升和下降压摆率分别为146V/us和

32、132V/usProblem: 在电路图中如何分析上升和下降压摆率?将结果与仿真结果进行对比84856.模型corner仿真在中将V_vpulse的定义换回来:V_Vacvin 0 DC 2.5V AC 1V 086模型corner仿真Ota t.lib LIB_PATHcsmc.lib tt.unprot.option post be dc v(vo).op.dc v_vdc 2.45 2.51 0.0001 $sweep monte = 30*.trans 0.1ns 1000ns*.ac dec 10 1k 500meg $sweep ccv

33、 0 5p 1p*.noise v(vo) v_vac 20.para rzv=1k ccv=1p clv=1p $alfa=agauss(0,3,3).inc NETLIST_PATH.end做DC扫描,分析各种corner下的增益和失调的变化模型corner仿真在.end前插入.alter语句,如下:Ota simulation.alter.lib LIB_PATHcsmc.lib.alter.lib LIB_PATHcsmc.lib.alter.lib LIB_PATHcsmc.lib.alter.lib LIB_PATHcsmc.libfffssfss.end8788ttfffffs

34、ttfssfsssf ss模型corner仿真Ff时增益最小,ss时增益最大Vo=vdd/2分别对应于V_vdc为:2.48762.48142.48612.48812.491289模型corner仿真Ota t.lib LIB_PATHcsmc.lib tt.unprot.option post be ac v(vo) vp(vo).op*.dc v_vdc 2.45 2.51 0.0001 $sweep monte = 30*.trans 0.1ns 1000ns.ac dec 10 1k 500meg $sweep ccv 0 5p 1p*.n

35、oise v(vo) v_vac 20.para rzv=1k ccv=1p clv=1p $alfa=agauss(0,3,3).inc NETLIST_PATH.end知道了各种corner下的失调后,就可以设置V_vdc做AC扫描,分析各种corner下的增益和GBW的变化模型corner仿真.alterV_Vdc vip 0 2.4814V.lib f:spiceuserlibcsmc.lib ff.alterV_Vdc vip 0 2.4861V.lib f:spiceuserlibcsmc.lib fs.alterV_Vdc vip 0 2.4881V.lib f:spiceuserlibcsmc.lib sf.alterV_Vdc vip 0 2.4912V.lib f:spiceuserlibcsmc.lib ss.end对于各种corner加入了对应的V_vdc定义9091模型corner仿真ffss92模型corner仿真ffssffssgainGBWPhase margintt989103MHz67.2ff585122MHz75.9fs922108MHz64.8sf93997.9MHz 71.2ss1.46k87.4M

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论