文章分类

当前位置:首页>文章中心>行业新闻>第10周:PSpice AA —— 灵敏度分析

第10周:PSpice AA —— 灵敏度分析

发布时间:2021-12-20 点击数:2393

PSpice Advanced Analysis(简称PSpice AA),了解PSpice AA中包含的灵敏度(Sensitivity)工具、优化(Optimizer)工具、蒙特卡洛(Monte Carlo)工具、电应力(Smoke)工具和参数测绘仪(Parametric Plotter)工具。这五种高级分析工具,可以改善电路性能、优化电路设计、提高电路的可靠性和生产的成品率。图10.1是PSpice高级分析典型的设计流程。


从上图设计流程可以看出进行PSpice高级分析对电路设计本身有几点要求:


  1. 电路中元器件的参数设置必须配备有高级分析要求的元器件参数。本期第一节会详细介绍高级分析要求的元器件参数和参数库,以及如何设置;

  2. 电路设计方案已通过PSpice AD仿真,而且仿真结果表明电路特性参数值与设计要求之间的差距并不大;

  3. 高级分析中的每一项分析工具都是针对一个或者多个电路特性指标(如增益、最大值、带宽、中心频率等)进行的,因此在PSpice AD仿真时应调用和计算电路特性的测量函数。


本周看点:

  • 高级分析参数的设置

  • 灵敏度分析的操作步骤

  • 灵敏度分析结果的处理



灵敏度工具是对电路进行灵敏度分析,鉴别出电路设计中哪些元器件的参数对电路特性指标起关键作用。在电路设计中,使用灵敏度分析可以帮助实现:


1)  确定关键元器件,精确调整

通过灵敏度分析找到对性能指标起关键作用的元器件,针对关键的元器件,采用参数扫描等方法,精确调整最灵敏元器件参数,就可以达到满意的设计效果。


2)  加快优化设计进程,兼顾成本

在电路设计中标识出最灵敏的几个元器件,然后在优化设计中对这些灵敏元器件参数值进行优化,可以加快优化设计的进程。同时适当减小高灵敏元器件的容差范围,放宽低灵敏度元器件的容差值,在大批量生产电路中做到兼顾成本和成品率两方面的要求。


所以灵敏度分析既是优化分析的前提,又是容差分析的基础。本期以串联反馈式稳压电路为例,其中负载电阻的变化范围为5%,要求该电路输出电压为9V +/- 5%,最大输出电流为190mA。


1

高级分析参数的设置


在电路设计过程中为了能够顺利调用相关的高级分析工具。要求电路中元器件具有表10.1所示的相应参数。

表10.1 高级分析需要的模型参数


  • 容差参数(Tolerance parameters TOL):定义实际的元器件参数相对标称值(正向或负向)偏离的大小(多用百分比表示),包括正容差(参数名称为POSTOL)和负容差(参数名称为NEGTOL)


  • 优化参数(Optimizer parameters):指优化过程中能够对其进行调整的元器件。对于无源元器件,优化参数就是其元器件值,如:电阻就是其阻值;对于有源器件,优化参数就是其模型参数,如:晶体管的电流放大倍数β


  • 分布参数(Distribution parameters DIST):用来描述元器件参数分散性服从的分布规律。在进行蒙特卡罗分析时,通过分布函数在元器件容差规定的允许范围内随机选取元器件的参数值


  • 应力参数(Smoke parameters):描述元器件的最大(安全)工作额定值。如电阻参数中包含:应力参数POWER,描述电阻允许承受的最大损耗功率;以及MAX-TEMP,描述电阻允许的最大温度等。


01

配备高级分析参数的无源元件库


为了确保使用的电阻、电容等无源元件具有高级分析参数,应从PSPICE_ELEM库文件中调用。图10.3以放置电阻为例展示两种方法选择具有高级分析参数的电阻,一种可以使用Place → part命令,输入“RESISTOR”,另一种是使用Place → PSpice component → Search,找到PSPICE_ELEM库后选择。


图10.3 两种方法选择具有高级分析参数的无源元件


将电阻元件放置在电路中后,双击电阻符号,出现如图10.4所示的参数编辑器。可以看出从PSPICE_ELEM库文件中调用的电阻符号已经带有高级分析参数了。

图10.4 带有高级分析参数的电阻属性参数


如果电阻等元件是从analog库或其他库中调用,可能有的高级参数没有,也可以采用在属性编辑器中“添加”参数名的方法进行添加,并设置参数值。需要注意的是添加的参数名称必须符合规定,比如电阻,可以参照图10.4中的参数名进行设置。


02

Variables符号的调用


PSpice提供Variables符号,是以一种全局方式来设置高级分析的参数值。Variables符号同样在PSPICE_ELEM库文件中,可以参照图10.3的两种方式查找Variables符号。并如同放置元器件一样放置到电路图中,如图10.2实例电路中就放置了Variables符号。Variables符号中Tolerances下方描述了电阻、电容、电感、电源等无源元件的容差参数;Smoke Limits下方前四个变量描述电阻4个Smoke参数设置值的应力参数:


  • RMAX:电阻的最大功耗,默认设置为0.25W

  • RTMAX:电阻的最高温度,默认设置为200oC

  • RVMAX:电阻的最大耐压值,默认设置为100V

  • RSMAX:功耗导致的最大温度变化率,默认设置为0.0125W/oC


各个变量的默认设置值用户都是可以根据需要进行修改的,只要双击需要修改的参数名就可以进行设置。


03

配备高级分析参数的半导体器件库


绘制电路图过程中,从软件安装路径:

...\tool\Capture\Library\PSpice\Advanls\下的器件符号库文件中调用的半导体器件都配置有高级分析参数。图10.5显示的就是该路径下有36个元器件库,包括4300多个元器件。

图10.5 PSpice AA元器件库


如果是通过搜索器件窗口选择器件,可以看器件陈述,如果陈述中注明是可以进行高级分析,那说明该器件配备了高级分析参数。


图10.6 配备高级分析参数的器件


以半导体器件2N1613为例,右键选择Edit PSpice Model,将打开Model Editor窗口,可以看到半导体器件的高级分析参数分两个标签页:Simulation和Smoke。其中Simulation标签页如图10.7所示。对于每一个模型参数都可以设置容差参数、分布参数以及可以优化的参数。对于Smoke标签页,我们将在介绍Smoke工具时详细讲解。

图10.7 半导体器件的高级分析参数


04

容差分配窗口


元器件的容差值可以在属性编辑器中单独设置,也可以使用Variables符号中完成,在17.2及之后版本中还可以使用容差分配(Assign Tolerance)窗口完成。


打开PSpice → Advanced Analysis → Assign Tolerance,或者打开工具栏图标:

可以得到图10.8的窗口,可以对电路中的无源器件直接分配正容差、负容差以及分布参数,同时对于半导体器件,可以在分配容差窗口中打开模型编辑器(Model Editor),调出图10.7的界面,同样可以设置和修改半导体器件的高级参数。



图10.8 分配容差窗口


2

灵敏度工具的操作步骤


在PSpice 10.0以前的版本中,灵敏度分析仅限于直流灵敏度分析,从10.0之后高级分析的Sensitivity工具可以对直流、交流和瞬态等多种电路特性进行灵敏度分析。调用灵敏度工具是高级分析工具中进行其他几种分析工具的基础。


01

灵敏度的定义


电路分析可以采用绝对灵敏度和相对灵敏度两种方式表示——


绝对灵敏度指电路网络函数(输出变量)T相对于某一元器件变化1个单位时引起的变化量:


其中T为电路网络函数,比如输入阻抗、传输函数、带宽、时间常数等等;X为元器件值或影响元器件值的某些物理参数,比如温度等。


比如图10.9所示简单的RC充放电电路:


图10.9 RC充放电电路


若网络函数T设为是充放电的时间常数,因此时间常数对电阻R1和电容C1的绝对灵敏度为:



RC充放电电路中电阻和电容对时间常数的影响是对等的,但绝对灵敏度的数值结果却相差了1012。感觉电容对时间常数的影响要大得多,但其实是由于绝对灵敏度是对应器件X的数值变化1个单位,电阻变化1欧姆是很正常的,但电容变化1法拉就不可能发生了。因此采用变化1个工程单位往往会导致不同类型元器件的绝对灵敏度结果数值相差巨大,容易引起误解。尤其是在有电容和电感的电路中。针对这一问题,采用相对灵敏度就能客观地分析不同类型元器件实际的灵敏度水平了。


相对灵敏度指元器件X变化了自身数值1%情况下,引起电路特性T的变化量:

同样对应图10.9的RC充放电电路,时间常数T对电阻R1和电容C1的相对灵敏度为:



由上分析可知,对于RC回路,虽然时间常数对电阻电容的绝对灵敏度的数值相差很大,但对于两个元件的相对灵敏度是一样的,即电阻值和电容值变化1%时,都导致时间常数变化了10ns,这样也较好地反映了实际使用情况。


02

步骤一:电路准备


绘制图10.2所示电路,注意电路中的元器件按照前面介绍的高级分析参数设置方法进行选取。然后进行PSpice AD的仿真,由于电路特性指标是输出电压的最大值和输出电流的最大值,因此选择瞬态分析:


图10.10 设置瞬态分析


运行仿真后,调用测量函数Max(V(out))和Max(I(RL))。



图10.11 计算电路特性函数


03

步骤二:调用灵敏度工具


在电路设置已满足灵敏度分析要求的条件后,在电路编辑器Capture中选择执行PSpice → Advanced Analysis → Sensitivity命令,即调用灵敏度分析工具,屏幕会打开PSpice Advanced Analysis软件,显示图10.12所示的Sensitivity工具窗口。

图10.12 Sensitivity工具窗口


在参数显示区内自动显示了电路中设置有容差的元器件列表。前面三列分别显示了元器件名称、参数类型、该器件的标称值。待启动灵敏度分析后,后面的几列将分别显示考虑容差后这些元器件参数的最大值、最小值以及灵敏度大小。


电路特性函数调整区在没有添加函数前是空表,用于设置灵敏度分析中需要分析的是哪些电路特性对元器件的灵敏度,分析结束后将同时显示极端情况分析结果。


04

步骤三:设置电路特性函数


在运行之前,需要设置电路特性函数。添加特性函数有两个方法:


方法一:在图10.12所示界面的电路特性函数调整区(Specifications表)中,单击“Click here to import a measurement created within PSpice…”所在的行,将弹出图10.13所示的插入电路特性函数的对话框。其中列出了在进行瞬态分析时调用过的电路特性函数。



图10.13 插入特性函数的对话框


对于本期的实例电路要求分析输出电压和输出电流最大值的灵敏度,因此选中这两个函数,单击OK后函数将出现在电路特性函数调整区中。


方法二:如果需要的函数没有显示在图10.13的对话框中,可以选择执行Analysis → Sensitivity → Create New Measurement,屏幕上将出现图10.14所示的New Measurement对话框。

图10.14 创建新的特性函数


确定后,新建的特性函数也出现在电路特性函数调整区中。


05

步骤四:运行灵敏度分析


完成上述设置后,在Sensitivity窗口中执行Run → Start Sensitivity,即进行灵敏度分析。分析结束后,用户就可以看到图10.15的仿真结果。


图10.15 灵敏度分析运行结果


3

灵敏度分析结果的处理


图10.15的运行结果可以看到分两个区域,一个是元器件数据区(Sensitivity Component Filter),一个是特性函数调整区(Specifications)。另外灵敏度分析结果还可以查看文本文档。


01

 元器件数据区的数据


图10.15中元器件数据区中的每一行描述电路特性函数对一个元器件参数的灵敏度,一共分8列,双击任何一列的标题栏,将按照该列数据的增大或者减小顺序排列。


  • 第一列显示小箭头,表示选中标志列可调

  • 第二列到第四列分别是元器件名称、参数类型、该器件的标称值

  • 第五列和第六列分别表示最小和最大值,供极端情况电路特性值使用。但@min并不是相应元器件参数的最小值,而是显示极端情况电路特性最小值时采用的元器件参数值,比如图10.15中R3、R1和RL,其中@min列的数值都比@max列的数值大,原因是max(V(out))对于这三个元器件参数的灵敏度是负的。

  • 第七列显示灵敏度结果,这里可以选择显示相对灵敏度还是绝对灵敏度值,具体操作如图10.16所示。



图10.16 灵敏度显示类型选取


  • 第八列是灵敏度大小比较,这里可以选择所用坐标是采用线性(Linear)比例还是采用对数(Log)比例。具体在Analysis → Sensitivity → Bar Graph Style下选择。图10.15中灵敏度选用线性比例,最后两个参数的灵敏度结果显示为,表示结果很小,但不为零。改为对数比例,就可以显示具体数值了。



图10.17 选用对数坐标后的结果


02

特性函数调整区的数据


特性函数调整区(Specifications)同样也有8列:


  • 第一列为选中标志

  • 第二列是运行状态标志,小绿旗表示运行正常,小红旗表示运行出错

  • 第三列选中√标志运行时才会调用该单元描述的电路特性函数

  • 第四列和第五列分别表示电路特性函数仿真分析类型和函数名称

  • 第六列表示该电路特性函数的标称值

  • 第七列是最坏情况列,表示该函数的最小值

  • 第八列也是最坏情况列,表示该函数的最大值


03

仿真结果的处理


1)  在电路图中修改灵敏元器件的参数

灵敏度工具运行后,显示了每个电路特性函数的关键器件,用户可以在元器件数据区选中该元器件,此时第一列会出现选中的小三角符号,然后在选中的元器件上单击右键,在屏幕上出现的快捷菜单中选中Find in Design,屏幕随即返回电路图编辑状态,电路图中相应的元器件自动处于选中状态,用户可以根据需要修改其参数值或容差值。


2)  调用Optimizer工具优化最灵敏的元器件参数

改进电路设计的最佳方法是在灵敏度分析之后调用Optimizer工具,优化设计电路中最灵敏的元器件。采用前面介绍的方法,在元器件数据区选中关键器件,点击右键,在屏幕上出现的快捷菜单中选择Send to Optimizer,系统将自动将选中的元器件参数传送到Optimizer工具中。对于电路特性函数也可以用相同方法传送到Optimizer工具中。


图10.18 将关键器件传送给电路图和Optimizer工具


3)  查看原始数据运行结果

若要查看灵敏度分析的原始数据,在Sensitivity界面下选择View → Log File → Sensitivity即可调出灵敏度分析结果清单,如图10.19所示。



图10.19 原始数据运行结果


图中显示了第9次运行结果,整个文本文档中包含10次运行结果,第0次是标称值下的运行结果,带容差的元器件参数有5个,第1次到第5次是逐个带容差的元器件变化的运行结果,第六次到第九次是两个电路特性函数的最大值和最小值分析。


灵敏度分析的重点是针对电路中不同的元器件特性找出最关键的元器件,对于这些最关键的元器件,既指出容差类型又可以作为后续Optimizer和Monte Carlo分析的候选角色。同时也可以指出影响较小的元器件,在不影响设计效率或成品率的前提下, 做出较好选择,以便减小成本。