什么是PSPICE?及简单Pspice电路仿真分析
PSPICE是由SPICE(Simulation Program with Integrated Circuit Emphasis)发展而来的用于微机系列的通用电路分析程序。于1972年由美国加州大学伯克利分校的计算机辅助设计小组利用FORTRAN语言开发而成,主要用于大规模集成电路的计算机辅助设计。
用于模拟电路仿真的SPICE(Simulation Program with Integrated Circuit Emphasis)软件于1972年由美国加州大学伯克利分校的计算机辅助设计小组利用FORTR AN语言开发而成,主要用于大规模集成电路的计算机辅助设计。SPICE的正式版SPICE 2G在1975年正式推出,但是该程序的运行环境至少为小型机。1985年,加州大学伯克利分校用C语言对SPICE软件进行了改写, 并由MICROSIM公司推出。1988年SPICE被定为美国国家工业标准。与此同时,各种以SPICE为核心的商用模拟电路仿真软件,在SPICE的基础上做了大量实用化工作,从而使SPICE成为最为流行的电子电路仿真软件。
发展
PSPICE采用自由格式语言的5.0版本自80年代以来在我国得到广泛应用,并且从6.0版本开始引入图形界面。1998年著名的EDA商业软件开发商ORCAD公司与Microsim公司正 式合并,自此Microsim公司的PSPICE产品正式并入ORCAD公司的商业EDA系统中。不久之后,ORCAD公司已正式推出了ORCAD PSPICE Release 10.5,与传统的SPICE软件相比,PSPICE 10.5在三大方面实现了重大变革:首先,在对模拟电路进行直流、交流和瞬态等基本电路特性分析的基础上,实现了蒙特卡罗分析、最坏情况分析以及优化设计等较为复杂的电路特性分析;第二,不但能够对模拟电路进行,而且能够对数字电路、数/模混合电路进行仿真;第三,集成度大大提高,电路图绘制完成后可直接进行电路仿真,并且可以随时分析观察仿真结果。PSPICE软件的使用已经非常流行。在大学里,它是工科类学生必会的分析与设计电路工具;在公司里,它是产品从设计、实验到定型过程中不可缺少的设计工具。
PSPICE软件具有强大的电路图绘制功能、电路模拟仿真功能、图形后处理功能和元器件符号制作功能,以图形方式输入,自动进行电路检查,生成图表,模拟和计算电路。它的用途非常广泛,不仅可以用于电路分析和优化设计,还可用于电子线路、电路和信号与系统等课程的计算机辅助教学。与印制版设计软件配合使用,还可实现电子设计自动化。被公认是通用电路模拟程序中最优秀的软件,具有广阔的应用前景。这些特点使得PSPICE受到广大电子设计工作者、科研人员和高校师生的热烈欢迎,国内许多高校已将其列入电子类本科生和硕士生的辅修课程。
电路设计软件有很多,它们各有特色。如Protel和Tango,它对单层/双层电路板的原理图及PCB图的开发设计很适合,而对于布线复杂,元件较多的四层及六层板来说ORCAD更有优势。但在电路系统仿真方面,PSPICE可以说独具特色,是其他软件无法比拟的,它是一个多功能的电路模拟试验平台,PSPICE软件由于收敛性好,适于做系统及电路级仿真,具有快速、准确的仿真能力。
(1)图形界面友好,易学易用,操作简单
由Dos版本的PSPICE到Windows版本的PSPICE,使得该软件由原来单一的文本输入方式而更新升级为输入原理图方式,使电路设计更加直观形象。PSPICE 6.0以上版本全部采用菜单式结构,只要熟悉Windows操作系统就很容易学,利用鼠标和热键一起操作,既提高了工作效率,又缩短了设计周期。即使没有参考书,用户只要具备一定的英语基础就可以通过实际操作很快掌握该软件。
(2)实用性强,仿真效果好
在PSPICE中,对元件参数的修改很容易,它只需存一次盘、创建一次连接表,就可以实现一个复杂电路的仿真。如果用Protel等软件进行参数修改仿真,则过程十分繁琐。在改变一个参数时,哪怕是一个电阻阻值的大小都需要重新建立网络表的连接,设置其他参数更为复杂。
(3)功能强大,集成度高
在PSPICE内集成了许多仿真功能,如:直流分析、交流分析、噪声分析、温度分析等 ,用户只需在所要观察的节点放置电压(电流)探针,就可以在仿真结果图中观察到其“电压(或电流)-时间图”。而且该软件还集成了诸多数学运算,不仅为用户提供了加、减、乘、除等基本的数学运算,还提供了正弦、余弦、绝对值、对数、指数等基本的函数运算,这些都是其他软件所无法比拟的。
另外,用户还可以对仿真结果窗口进行编辑,如添加窗口、修改坐标、叠加图形等 ,还具有保存和打印图形的功能,这些功能都给用户提供了制作所需图形的一种快捷、简便的方法。因此,Windows版本的PSPICE更优于Dos版本的PSPICE,它不但可以输入原理图方式,而且也可以输入文本方式。无疑是广大电子电路设计师的好帮手。
电路原理图编辑程序 Schematics
PSPICE的输入有两种形式,一种是网单文件(或文本文件)形式,一种是电路原理图形式,相对而言后者比前者较简单直观,它既可以生成新的电路原理图文件,又可以打开已有的原理图文件。电路元器件符号库中备有各种原器件符号,除了电阻,电容,电感,晶体管,电源等基本器件及符号外,还有运算放大器,比较器等宏观模型级符号,组成电路图,原理图文件后缀为.sch。图形文字编辑器自动将原理图转化为电路网单文件以提供给模拟计算程序运行仿真。
激励源编辑程序 Stimulus Editor
PSPICE中有很丰富的信号源,如正弦源,脉冲源,指数源,分段线性源,单频调频源等等。该程序可用来快速完成各种模拟信号和数字信号的建立与修改,并且可以直观而方便的显示这些信号源的波形。
电路仿真程序 PSPICE A/D
模拟计算程序是PSPICE A/D也叫做电路仿真程序,它是软件核心部分。在PSPICE 4.1版本以上,该仿真程序具有数字电路和模拟电路的混合仿真能力。它接收电路输入程序确定的电路拓扑结构和原器件参数信息,经过原器件模型处理形成电路方程,然后求解电路方程的数值解并给出计算结果,最后产生扩展名为.dat的数据文件(给图形后处理程序Probe)和扩展名为.out的电路输出文本文件。模拟计算程序只能打开扩展名为.cir的电路输入文件,而不能打开扩展名为.sch 的电路输入文件。因此在Schemayics环境下,运行模拟计算程序时,系统首先将原理图.sch文件转换为.cir文件,而后再启动PSPICE A/D进行模拟分析。
输出结果绘图程序 Probe
Probe程序是PSPICE的输出图形后处理软件包。该程序的输入文件为用户作业文本文件或图形文件仿真运行后形成的后缀为.dat的数据文件。它可以起到万用表,示波器和扫描仪的作用,在屏幕上绘出仿真结果的波形和曲线。随着计算机图形功能的不断增强,PC机上windows95,98,2000/XP的出现,Probe的绘图能力也越来越强。
模型参数提取程序 Model Editor
电路仿真分析的精度和可靠性主要取决于元器件模型参数的精度。尽管PSPICE的模型参数库中包含了上万种元器件模型,但有时用户还是根据自己的需要而采用自己确定的元器件的模型及参数。这时可以调用模型参数提取程序Model ED从器件特性中提取该器件的模型参数。
元件模型参数库 LIB
PSPICE具有自建的元件模型,元件的建立以元件的物理原理为基础,模型参数与物理特性密切相关。元件的等效模型还有其工作条件与分析要求相关。在直流分析中,非线性元件的等效模型是小信号线性等效电路;在瞬态分析中,非线性元件的等效模型考虑到了电荷存储效应。双极管型晶体管采用GUMMEL-POON的积分电荷控制模型,结型场效应管采用SHICHMAN-HODGFS的场效应管模型。二极管模型既适用于结型二极管,也适用于肖特基势垒二极管。MOS1由I-V特性来描述,MOS2是一个解析模型,MOS3是一种半经验模型。除了分立元件参数库以外,还有集成电路的宏模型库,并提供了一些著名器件和IC生产厂家的专有元器件参数库。
SPICE程序的主要功能有非线性直流分析、非线性暂态分析、线性小信号交流分析、灵敏度分析和统计分析。
4.1 直流分析
非线性直流分析功能简称直流分析。它是计算直流电压源或直流电流源作用于电路时电路的工作状态。对电路进行的直流分析主要包括直流工作点分析、直流扫描分析和转移函数分析。
直流工作点是电路正常工作的基础。通过对电路进行直流工作点的分析,可以知道电路中各元件的电压和电流,从而知道电路是否正常工作以及工作的状态。一般在对电路进行仿真的过程中,首先要对电路的静态工作点进行分析和计算。
直流扫描分析主要是将电路中的直流电源、工作温度、元件参数作为扫描变量,让这些参量以特定的规律进行扫描,从而获取这些参量变化对电路各种性能参数的影响。直流扫描分析主要是为了获得直流大信号暂态特性。
与直流扫描分析相类似的还有温度分析。在这种分析过程中,将电路的温度作为扫描变量进行分析。因为电路的主要器件的特性都是与温度有关的,所以这就为分析电路在环境变化是的工作情况提供了一种非常有用的工具。特别重要的是,通过这种分析,我们可以预测电路在某些特殊环境如极端温度条件或极端电源电压条件或元件开路短路条件下电路的工作情况,从而在进行电路设计时采取必要的预防措施。
4.2 暂态分析
非线性暂态分析简称为暂态分析。暂态分析计。算电路中电压和电流随时间的变化,即电路的时域分析。这种分析在输入信号为时变信号时显得尤为重要。时域分析是指在某一函数激励下电路的时域响应特性。通过时域分析,设计者可以清楚地了解到电路中各点的电压和电流波形以及它们的相位关系,从而知道电路在交流信号作用下的工作状况,检查它们是否满足电路设计的要求。
4.3 交流分析
线性小信号交流分析简称为交流分析。它是SPICE程序的主要分析功能。它是在交流小信号的条件下,对电路的非线性元件选择合适的线性模型将电路在直流工作点附近线性化,然后在用户指定的范围内对电路输入一个扫频信号,从而计算出电路的幅频特性、相频特性、输入电阻、输出电阻等。这种分析等效于电路的正弦稳态分析即频域分析。频域分析用于分析电路的频域响应即频率响应特性。这种分析主要用于分析电路的幅频特性和相频特性。
小信号转移特性分析主要分析在小信号输入的情况下,电路的各种转移函数,通常分析的是电路的电压放大倍数。
噪声分析是电路设计的重要内容之一。在模拟电路中,无源器件和有源器件均会产生噪声,主要包括电阻上产生的热噪声,半导体器件产生的散粒噪声和闪烁噪声。在噪声分析时,将元件的噪声等效为一个输入信号进行交流分析。通过噪声分析可以计算出各器件在某一输出节点产生的总噪声以及某一输入节点的等效输入噪声。从而可以分析一个电路产生噪声的主要来源,采取一定的电路设计措施来减小噪声的影响。
4.4 灵敏度分析
灵敏度分析包括直流灵敏度分析和蒙特卡罗分析两种。
直流灵敏度分析业称为灵敏度分析。它是在工作点附近将所有的元件线性化后,计算各元器件参数值变化时对电路性能影响的敏感程度。通过对电路进行灵敏度分析,可以预先知道电路中的各个元件对电路的性能影响的重要程度。对于那些对电路性能有重要影响的元件,要在电路的生产或元件的选择时给予特别的关注。
4.5 统计分析
统计分析主要包括蒙特卡罗分析和最坏情况分析。蒙特卡罗分析是在考虑到器件参数存在容差的情况下,分析电路在直流分析、交流分析或暂态分析时电路特性随器件容差变化的情况。另一种统计分析是最坏情况分析,它不仅对各器件参数的变化逐一进行分析,得到单一器件对电路性能的灵敏度分析,同时分析各器件容差对电路性能的最大影响量(最坏情况分析),从而达到优化电路的目的。
PSPICE10.5个人认为它最为突出之处,是改进了其9.2版本,使绘制电路,以及仿真算法更加优化,更加节省时间(以前进行1S的仿真如果取点ms级,那将是非常恐怖的事情),而且蒙特卡罗分析和最坏情况分析有助于我们模拟在不同温度和环境,以及元件损坏的情况下电路的实现过程及结果,那么我们就知道电路的弱点,以及电路中的最重要元件,就可以相应的对其采取保护、散热等措施。
Pspice现在是集成到Cadence中的一个电路仿真工具,能通过Pspice模型的原理图仿真电路的输出结果。其大致步骤是:
1. 创建仿真工程
执行菜单命令File->New->Project,选择Analog or Mixed A/D,然后选择一个模板(这个看自己需要,也可以是空工程)
2. 添加仿真元件库
仿真所用的元件必须要有Pspice模型,Cadence安装目录下\tools\capture\library\pspice中所有的元件库都含有Pspice仿真模型。
\tools\capture\library\pspice下的库很多,比如:
Analog:包含无源元件(R、L、C),互感器,传输线,以及电压和电流非独立的源(电压控制的调用源E、电流控制的电流源F、电压控制的电流源G 和电流控制的电压源H)
Source:给出不同类型的独立电压和电流源,例如:Vdc(直流电压),Idc(直流电流),Vac(交流电压),Iac(交流电流),Vsin(正弦电压),Vexp(指数电压),脉冲,分段线性,等
Eval:提供二极管(D…),双极型晶体管(Q…),MOS 晶体管,结型场效应晶体管(J…),真实运算放大器;如u741,开关(SW_tClose, SW_tOpen),各种数字门和元件
Abm:包含一个可以应用于信号的数学运算符选择,例如:乘法(MULT),求和(SUM),平方根(SWRT),拉普拉斯(LAPLACE),反正切(ARCTAN),等
Special:包含多种其他元件,像参数、节点组,等
若不知道使用的元件,可以在Place part框中搜索,如下图:
3. 绘制原理图
就以上面找到的LM393电压比较器为例:
其中的元件来自不同的Pspice库(\tools\capture\library\pspice目录下):
电阻:Analog
电压比较器LM393:opamp
直流电源V1(Vdc):Source
正弦电源V2(VSIN):Source
4. 设置仿真参数并执行仿真
这步是最重要的,也是做仿真分析的目的——你要仿真什么?
通过菜单命令PSpice->New Simulation Profile设置仿真参数,如下图,可进行共4种类型的仿真:
时域仿真:
直流扫描:
交流扫描:一般用于频域及相位分析
偏置点分析:
这里就以一个上面电路的时域仿真为例,如上图,设置仿真时间10ms,仿真最大步长0.1ms。
设置好了仿真类型参数,接着添加探针,观测我们感兴趣的值(电压、电流),在工具栏中点击RUN开始仿真,
仿真结果默认会在电路网络上显示偏置电压值(可通过工具栏按钮选择显示与不显示),同时会弹出上面设置的时域仿真分析结果波形:
5. 分析仿真结果
还是那句话,仿真是为了帮助分析,因此做仿真后的分析是必不可少,相对于前面的软件傻瓜操作,分析更为重要。
我们来分析仿真与电路预期的效果是否一致?
原电路时一个LM393的电压比较电路,反相输入端电压通过等值的1K电阻分压(运放输入阻抗近似无穷大),因此理论上为2.5V。所以当正相输入端电压< 2.5V时,输出为低电平(0V),否则为高电平(LM393的输出电平电压通过上拉电阻的电位确定,这里使用10K电阻上拉到5V)。
我们来看看仿真结果:输入为正弦波(峰峰值5V,直流分量2.5V),当正弦波(绿线)>2.5V时,输出(红线)为高电平;当正弦波(绿线)< 2.5V时,输出(红线)为50mV->0V为低电平,这50mV是由于运放本身造成的,对输出电平判别而言值可以忽略。