circuitssimulationbyspectrelabs-2016update_第1页
circuitssimulationbyspectrelabs-2016update_第2页
circuitssimulationbyspectrelabs-2016update_第3页
circuitssimulationbyspectrelabs-2016update_第4页
circuitssimulationbyspectrelabs-2016update_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

1、集成电路课程设计电路设计部分实验文档微电子中心王永生工欲善其事,必先利其器。孔子一、简介当前,典型的集成电路电路设计基于SPICE(Simulation Program With Integrated Circuit Emphasis)的仿真模拟,本部分讲授电路模拟的方法和spice仿真工具的使用。SPICE仿真器有很多版本,比如商用的PSPICE、HSPICE、SPECTRE、ELDO,免费版本的WinSPICE,Spice OPUS等等,其中HSPICE和SPECTRE功能更为强大,在集成电路设计中使用得更为广泛。因此本课程设计以SPECTRE作为主要的仿真工具,进行电路模拟方法和技巧的训

2、练。参加本课程设计的人员应具备集成电路设计基础、器件模型等相关知识。二、Spice基本知识 (1)无论哪种spice仿真器,使用的spice语法或语句是一致的或相似的,差别只是在于形式上的不同而已,基本的原理和框架是一致的。因此这里简单介绍一下spice的基本框架,详细的spice语法可参照相关的spice教材或相应仿真器的说明文档。首先看一个简单的例子,采用spice模拟MOS管的输出特性,对一个NMOS管进行输入输出特性直流扫描。VGS从1V变化到3V,步长为0.5V;VDS从0V变化到5V,步长为0.2V;输出以VGS为参量、ID与VDS之间关系波形图。*Output Character

3、istics for NMOSM1 2 1 0 0 MNMOS w=5u l=1.0uVGS 1 0 1.0VDS 2 0 5.op.dc vds 0 5 .2 Vgs 1 3 0.5 .plot dc -I(vds).probe*model.MODEL MNMOS NMOS VTO=0.7 KP=110U+LAMBDA=0.04 GAMMA=0.4 PHI=0.7.end描述的仿真电路如下图,图2-1 MOS管输入输入特性仿真电路图得到的仿真波形图如下图。从这个简单的spice程序中可以知道spice电路描述的主要组成部分。(1) 标题和电路结束语句在输入的电路描述语句中输入的第一条语句必须

4、是标题语句,最后一条必须是结束语句。在本例中,*Output Characteristics for NMOS标题 . .end结束语句(2) 电路描述语句电路描述语句描述电路的组成和连接关系,包括元器件、激励源、器件模型等描述,另外,如果电路是层次化的,即包含子电路,电路描述部分还包括子电路描述(.subckt)。在描述元器件时,要根据类型,采用不同的关键字作为元件名的第一个字母,元器件关键字见下表。如本例中,NMOS管的描述为:M1 2 1 0 0 MNMOS w=5u l=1.0u表示的意思为:元器件关键字x D G S B 模型名 宽=xx 长=xx其中D:漏结点;G:栅结点;S:源结

5、点;B:衬底结点。器件模型描述电路中所使用的器件的spice模型参数,语句为.model。如在本例中,.MODEL MNMOS NMOS VTO=0.7 KP=110U+LAMBDA=0.04 GAMMA=0.4 PHI=0.7其中MNMOS为模型名,以便在元器件调用时使用,NMOS为模型的关键字。元器件类型元器件关键字电阻R电容C电感L二极管DNPN或PNP双极型晶体管QN沟或P沟结型场效应晶体管JN型或P型MOS场效应晶体管MGaAs场效应晶体管B电压控制开关S电流控制开关W互感K激励源说明供激励用的独立源和受控源,比如:V: 独立电压源; I: 独立电流源;E: 电压控制电压源; F:

6、电流控制电流源;G: 电压控制电流源; H: 电流控制电压源,等等。(3) 分析类型描述语句分析类型描述语句说明对电路进行何种分析。比如,直流工作点(.op),直流扫描分析(.dc),交流分析(.ac),噪声分析(.noise),瞬态分析(.tran)等等。(4) 控制选项描述语句控制选项用于描述spice仿真时的相关控制选项,一般在.option内进行设置,另外还有打印及输出控制选项(.print、.plot、.probe)等等现将整个spice程序例子标注如下:*Output Characteristics for NMOS标题M1 2 1 0 0 MNMOS w=5u l=1.0u元器件

7、描述(模型名为MNMOS的场效应MOS管M1,漏结点2、栅结点1、源结点0、衬底结点0,栅宽5um,栅长1um)VGS 1 0 1.0激励源描述(连接在1和0结点之间的1V独立电压源)VDS 2 0 5激励源描述(连接在2和0结点之间的5V独立电压源).op分析类型描述,直流工作点分析.dc vds 0 5 .2 Vgs 1 3 0.5 分析类型描述,直流扫描分析(VGS从1V变化到3V,步长为0.5V;VDS从0V变化到5V,步长为0.2V).plot dc -I(vds)控制选项描述,打印声明.probe控制选项描述,打印输出*model.MODEL MNMOS NMOS VTO=0.7

8、KP=110U器件模型描述,定义模型名为MNMOS+LAMBDA=0.04 GAMMA=0.4 PHI=0.7的NMOS类型的模型.end结束语句三、Spectre电路仿真 (2)Cadence公司的Spectre仿真器的实质和HSPICE等spice仿真软件是一样的,但由于集成了cadence的ADE仿真集成环境,可以在图形界面下操作,使用更为方便和直观一些,比如,不用写spice的网表程序,可以在schematic view中绘制电路图。这里以一个基本的共源级电路作为例子,讲解工具的使用和基本电路分析的方法。1、工具的使用1.1 编辑电路图(schematic)(见附录1做数据准备工作)进

9、入/training/ic/spice_labs$目录,启动cadence的设计环境平台,在命令行提示符($)下执行, $ icfb &首先建立一个设计库,tools -> library manager, File -> New -> Library,在Name内添上lab1,ok后,选择Dont need a techfile,然后ok。这样就建立了一个设计库。这里之所以不选择编译techfile,是因为我们只进行电路的设计和仿真,如果还有设计电路的版图,则根据选择的工艺厂家的techfile来进行编译。然后,在设计库里建立一个schemtic view,在Lib

10、rary Manager菜单 New-> cell view,填入amp1,view name选schematic,然后ok,则会出现电路图的编辑界面。插入元器件,选择analogLib中的nmos4 、pmos4、res、cap等器件。形成如下电路图,然后check and save,如下图。下面做这个放大器的symbol,Design->Create Cellview -> From Cellview,在弹出的界面,按ok后出现symbol Generation options,选择端口排放顺序和外观,然后按ok出现symbol编辑界面。按照需要编辑成想要的符号外观,如下

11、图。保存退出。下面建立仿真的电路图cut_amp1。方法和前面的“建立schemtic view”的方法一样,但在调用单元时除了调用analogLib库中的电压源、(正弦)信号源等之外,将此放大器(lab1中的amp1)调用到电路图中,如下图。下图是添加输入激励源的设置。1.2 启动仿真环境(ADE)在schematic编辑界面,选择Tools-> Analog Environment,出现Virtuoso Analog Design Environment (ADE),如下图在ADE中,设置仿真器、仿真数据存放路径和工艺库,具体地,setup->Simulator/Directo

12、ry/Host 中选择simulator为spectre,project Directory改为./simulation。 Setup->Model Libraries中Model Library File 找到sm046005-1j.scs文件填入,section部分填typical,如下图,按add,然后ok。Variables->copy from cellview, 则电路中的变量出现在ADE中Design Variable一栏中,如下图,至此工具的初步使用已经进行了简单的介绍,下面结合具体的基本电路仿真进行介绍。2、基本电路分析2.1直流仿真结合上面例子,首先设计仿真电路

13、中的变量,vpower=3,vbias=1,va=2,f0=100K。然后选择Analyses->choose,在analysis一栏中选dc,在DC Analysis中选中Save DC operating Point;在sweep Variable中选中Design Variable,variable Name填vbias,在sweep Range, start选0, stop选3,然后ok。然后,simulation->Netlist and Run,运行仿真。再后观察仿真波形,这里有两种波形查看工具,一种是WaveScan,一种是AWD。在session->optio

14、ns中进行设置。这里选择AWD。在tools中选择calculator。如下图,按vs按钮,在schematic 中选择需要输出波形的节点,如out,然后按plot,得到如下波形,可见输入偏置在772.5mv903.7mv的范围内存在一个高增益区,因此输入偏置应设置在这个区域内,改vias从1v到0.86v。由于在做直流仿真时也选择了Save DC operating Point,因此可以查看电路的工作点,在calculator中按vdc,同时选中Evaluate buffer,比如查看out的电压工作点。也可以查看器件的工作状态,按op,然后在电路中选择需要查看的器件,如I0/M1的vth。

15、2.2交流仿真后选择Analyses->choose,在analysis一栏中选ac,注意此时vbias已经选择到了0.82v。 Sweep Variable选Frequency,Sweep Range 选1100M,按ok。然后,simulation->Netlist and Run,运行仿真。仿真运行结束后,仍可以采用calculator打印结果。这里采用另外一种方法,在Results-> Direct Plot选中AC Magnitude & Phase,然后在schematic view中点中out,则AC的结果打印如下图。2.3瞬态仿真后选择Analyses

16、->choose,在analysis一栏中选tran,大信号1V时,小信号0.1mV时,2.4 练习修改偏置电流,即修改R0,对上述电路的上述分析分别重新进行仿真,并总结出仿真结果。注意:由于改变了偏置条件,因此电路的性能参数发生了变化,特别要注意的是输入偏置的设置。四、实例:放大器的仿真及分析 (4)下面以一个放大器作为实例讨论一些电路设计分析方法。图1比较器电路比较器采用单级运放后加一反相器构成,如图1所示。其中Ibias为自偏置电路如图2A所示(注:自偏置电路原理见Razavi书310页,实际工作时要加上启动电路,解释启动电路的原理。),comp_amp为一级运放如图2B所示,in

17、v为反向器。 图2A自偏置电路 图2B运算放大器电路运算放大器为双端输入单端输出的结构,可以在满足输入和输出摆幅的情况下实现一定的电压增益(考虑其值是多少时满足性能要求)。首先确定所采用管子的宽度(所有晶体管的沟道长度不必为同一值),手工设计:根据拟定的设计指标,确定满足指标的运算放大器各元件的尺寸和所需要的偏置电流的大小(可能需要迭代);设计偏置电路:采用自偏置电流源技术a)选定电路结构;b)手工设计:确定各元件的尺寸;c)Spectre仿真(采用TT Corner模型),验证电流源的性能;将偏置电路和运算放大器电路合在一起仿真(采用TT Corner模型,27o),确定运放的最终性能参数:

18、a) 开环增益的幅频和相频响应;b) CMRR的频率响应;c) PSRR的频率响应;d) 共模输入范围;e) 输出电压摆幅;f) 压摆率;g) 建立时间;h) 噪声;i) 功耗;采用SS Corner模型,0o仿真温度,重新仿真以上参数。采用FF Corner模型,80o仿真温度,重新仿真以上参数。图3所示的仿真电路可仿真放大器的交流特性和瞬态特性。采用闭环电路仿开环的方法,通过R0形成负反馈通路从而确定输出共模电平(此时的共模电平实际是V1的直流值),并稳定直流偏置。在这个电路中选择RC时间常数的倒数与Av的乘积小于运放预期的主极点是必须的,即选择大电阻和大电容值(本实验选择1G欧姆电阻和1

19、mf电容,具体见allen的运算放大器仿真)。由于反馈电阻的大阻值,输入的共模会自动调整到和输入V1相等。图3 AC特性仿真图中输入为正弦波形对其进行相应设置来满足功能,主要包括直流电压值提供输入端的直流偏置、交流AC幅值和相位(通常为1V,相位默认为0)、瞬态电压幅值频率和相位值。具体设置如下图所示:同理设置电阻电容值和直流电源值(直流电压),后在菜单栏toolsAnalog Environment调用仿真工具进行电路仿真。选取仿真工具,添加模型文件并进行仿真设置,下面主要介绍一下仿真的设置,包括交流瞬态tran、交流ac、直流dc、噪声noise,具体如下所示:大家应该注意到了,在电源的设

20、置中直流电压和瞬态偏置电压(即DC voltage和offsetvoltage)都设置了变量vin。在仿真之前需要在variable中选择edit设置变量值。另一种方法如下图。在 tools项中选择选择parametric analysis选项,合理设置rang type和step control。然后选择analysis中start就可以了。在设置一个电压源时最主要会用到三类参数:交流仿真参数(ac magnitude是交流信号摆幅,一般设为1;ac phase一般用在双端放大器仿真,一端为0另一端为180)、直流仿真参数(dc voltage)和瞬态仿真参数等。仿真器仿真时,这几个状态仿真

21、是分开仿的,各参数互不影响。下边两图仿真结果就是参数扫描的结果,直流dc仿真可以计算出直流偏置点,从而可以看各点的静态电压和直路的静态电流。交流仿真可以仿真静态工作点的交流特性,主要是直流增益和频率特性,随输入的正弦激励的直流偏置结果如下,上图为幅频图,下图为相频图:当输入的直流偏置为1.2V时的交流相应如下,从图中可以看出其直流增益为47dB,相位裕度为63o满足稳定性要求(相位裕度为180度减去增益0dB时的相移。另外在比较器应用中并不一定满足相位裕度的要求,因为比较器工作在开环状态)。瞬态结果如下(瞬态电压幅值为50mV,频率为1K),从图中可以看出输出低电平不能达到0,且与输入的直流电

22、平有关,在不同的直流输入下,输出高电平基本一样。试分析这些影响并解释原因。 噪声分析主要包括闪烁噪声和热燥声,其输入等效噪声如下:图4 输入共模范围仿真无论运放的开环还是闭环模式都可以定义输入输出共模范围,因为运放常工作在闭环状态,这种测量使输入输出CMR更敏感。单位增益结构对于测量和仿真输入CMR是有用的,如图4所示为运算放大器的输入CMR仿真。其中对输入v1从0到VDD进行参数扫描,观测输出结构,传输曲线的线性部分对应于输入共模电压范围的斜率是1。仿真设置和结果如下:(这里,大家思考一下,为什么仿真得到输入共模范围看似比电路分析的结果要大一些?)图5输出共模范围仿真在单位增益结构中,传输曲

23、线的线性受到ICMR的限制。若采用高增益结构,传输曲线的线性部分与输出电压摆幅一致。图5为反相增益为10 的结构可用来测试输出CMR。设置同上,结果如下:图6共模抑制比仿真图6所示为运放共模抑制比的仿真电路结构,两个相同的电压源Vcm,与单位增益结构的运放的两输入端连接,V1提供输入共模电平。对输出的结果取倒数可以得出CMRR,这可以用计算器完成原理见Allen运算放大器仿真。仿真设置如上,结果如下:输入直流电压为1V时共模抑制比扫描输入直流电压时得到的CMRR图7 PSRR电源抑制比仿真图7所示为运放的正电源抑制比的仿真电路结构,运放为单位增益结构,交流输入与电源串联,对其进行AC仿真后取倒

24、数得出PSRR(思考仿真方法的原理,具体见Allen第6.6节)。仿真结果如下:输入直流电压为1.2V时电源抑制比输入直流电压变化时电源抑制比图8 运放建立时间图8为运放建立时间的仿真电路结构,输出加大摆幅的方波,观测输出的瞬态波形测量建立时间,方波输入信号分别从0V,3.3V变为1.65V。仿真结果如下图: 方波输入从0到1.65V的建立时间 方波输入从3.3V到1.65V的建立时间图9运放压摆率的仿真电路结构图9为运放压摆率的仿真电路结构,输入加大摆幅的方波,在这种情况下,输出受电路摆率的影响,而不是输出节点时间常数的影响。观测输出的瞬态波形测量压摆率,运放正输入端是0V到3.3V的方波信

25、号。仿真结果如下输出波形放大图正压摆率练习利用提供的0.35微米的PDK库构建电路,完成上述电路分析的仿真(提示:在layout_labs目录下启动软件,见集成电路课程设计版图部分(layout design and verification labs.doc)文档),然后考虑改变放大器结构,比如电流源做负载的放大器、或者二级放大器结构,对电路的上述分析分别重新进行仿真,并总结出仿真结果。注意:如果采用二级放大器,需要特别注意相位裕度,如果相位裕度不够需要考虑相位补偿,如米勒补偿。备选参考题目(第一题满分90分,其它题目满分100分):1、 采用电容做miller补偿的二级运算放大器设计 (R

26、azavi教材10.5节;英文版Allen教材6.3节)完成电路设计、电路仿真、版图设计、版图验证、版图后仿真。详细讨论采用电容做miller补偿的二级运算放大器设计过程,注意由miller电容引入的零点的处理。得到开环增益的幅频和相频响应、CMRR、PSRR、共模输入范围、输出电压摆幅、压摆率(slew rate)、建立时间、噪声、功耗等特性。2、 采用电阻电容做miller补偿的二级运算放大器设计(Razavi教材10.5节;英文版Allen教材6.3节)完成电路设计、电路仿真、版图设计、版图验证、版图后仿真。详细讨论采用电阻电容做miller补偿的二级运算放大器设计过程,注意与仅采用电容

27、做miller补偿的运算放大器的区别。得到开环增益的幅频和相频响应、CMRR、PSRR、共模输入范围、输出电压摆幅、压摆率(slew rate)、建立时间、噪声、功耗等特性。3、 采用跟随器和电容做miller补偿的二级运算放大器设计(Razavi教材10.6节;英文版Allen教材6.2节)完成电路设计、电路仿真、版图设计、版图验证、版图后仿真。详细讨论采用跟随器和电容做miller补偿的二级运算放大器设计过程,注意与其它miller补偿的运算放大器的区别,并且注意对slew rate的影响。得到开环增益的幅频和相频响应、CMRR、PSRR、共模输入范围、输出电压摆幅、压摆率(slew ra

28、te)、建立时间、噪声、功耗等特性。4、 大输入摆幅的运算放大器设计 (Razavi教材9.7节)完成电路设计、电路仿真、版图设计、版图验证、版图后仿真。详细讨论如何得到大输入摆幅的运算放大器,说明设计过程,注意讨论运放增益在整个输入CM范围内的变化情况。得到如开环增益的幅频和相频响应、CMRR、PSRR、共模输入范围、输出电压摆幅、压摆率(slew rate)、建立时间、噪声、功耗、增益随CM电压变化情况等特性。5、 一阶补偿的带隙基准电路设计 (Razavi教材11.3节; 英文版Allen教材4.6节)完成电路设计、电路仿真、版图设计、版图验证、版图后仿真。理解一阶补偿的带隙基准电路的工作原理。采用运算放大器,完成一阶补偿的带隙基准电路设计。得到带隙基准电路的温度特性、PSR、上电等特性,同时对其中的运算放大器的特性也进行仿真,得到如开环增益的幅频和相频响应等主要特性。6、 与温度无关的电流基准电路设计(英文版Allen教材4.6节)完成电路设计、电路仿真、版图设计、版图验证、版图后仿真。理解与温度无关的电流基准电路的工作原理。特别注意考虑电阻温度特性和不考虑电阻温度特性对电路性能的影响,完成一阶补偿的电流基准电路设计。得到电流基准电路的温度特性、PSR、上

温馨提示

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

评论

0/150

提交评论