找回密码
 注册
关于网站域名变更的通知
查看: 634|回复: 4
打印 上一主题 下一主题

开关电源Pspice仿真技巧及收敛性问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-9-24 10:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
摘要:本文主要讲述了开关电源的Pspice仿真中,速度与精度的权衡,收敛性问题的常规解决方法。
收敛性问题快速解决办法
目前最最快速的办法,就是用16.0以上的版本,有自动收敛功能,能解决至少95%以上的收敛性问题。但对于原理,还是要需要了解下面一些知识。
在做开关电源仿真时,经常会遇到收敛性的问题。我也在其中遇到各种各样的收敛性问题,根据我的经验和前辈的传授,下面我对这个问题进行一个说明。

' z9 C* R# k% S" r6 d, _8 C3 Z- G
如果在仿真时遇到收敛性问题,快速解决办法如下:设置.OPTION设置里的一些选项。
_ ABSTOL = 0.01μ (Default=1p)
_ VNTOL = 10μ (Default=1μ)
_ GMIN = 0.1n (Default=1p)
_ RELTOL = 0.05 (Default=0.001)
_ ITL4 = 500 (Default=10)
这些设置可以解决大多收敛性问题,当然如果电路中的错误,它是解决不了的。如果模型不够精确,上面的设置需要实时调整才能得到想要的结果。
2 A+ S. E3 e7 e! p1 d( [7 r
4 \& D" {& V0 k  h% i: z, B6 o
开关仿真中速度与精度的权衡
开关仿真就是仿真时有很多重复的周期性的上升下降信号的仿真,比如开关电源的仿真。在这种仿真中,需要丢弃一些仿真时间点,不然仿真将会非常慢。而尽管如此,开关电源的仿真还是非常慢。这种仿真中,Pspice的时间步长会在一个很大的步长范围内波动。这个波动范围主要由一些设置限定,比如RELTOL,ABSTOL,VNTOL等。因为它是线性迭代算法,为了在信号的上升沿和下降沿得到限定精度范围内的值,在沿处理时,它需要提高步长细度,否则难以得到限定的仿真精度。因为一般可信的仿真精度是不可能有太大的误差的。为解决这种问题,通常可以通过设置TRTOL=25(DEFAULT 7),和TMAX,将时间步长限定在开关周期的1/10到1/100之间。这样做基本可以提高一倍的仿真速度。当然精度应该在可接受范围内。
! i8 J8 s1 ~) K3 N
# {& e0 |# W' l" ]' r6 r( T
收敛性问题
在进行DC和瞬态仿真时,SPICE会先给每一个节点假定一个初始值,然后通过误差范围内的数次迭代,最终得到一个误差范围内的结果,这个迭代次数也是有限定的,通过ITL来限定。
如果在限定的迭代次数内没能得到误差范围内的结果,那么仿真器会产生收敛性的问题。在DC分析时会出现如“No convergencein DC analysis,” “Singular matrix,” “GMIN stepping failed,” “Source stepping failed.”等提示,同时,仿真也停止了。在瞬态仿真中,仿真器会实时调节时间步长以求能迭代出误差范围内的结果,但如果在设定的时间步长范围内没能得到结果,仿真器会产生“Time step too small”的提示。
收敛性问题会以各种形式出现,但主要有以下三种根本原因:
一、电路结构不当
二、器件模型不当
三、仿真器设置不当
DC分析时,也有可能不正确的初始值设置、模型的不连续性(如果其中有理想开关)、不稳定的工作点、或虚的电路阻抗。
瞬态仿真问题则主要是因为模型的不连续性、不当的电路结构、电源、或是寄生参数等。如果电路的阻抗太高或是太低都可能产生收敛性问题。
通常,可以通过根据问题的提示逐步调地节仿真器的设置。这样做的不足之处是它可能掩盖了电路不稳定的真相。当然如果电路的模型建得足够好,是不会有收敛性问题发生的。
常用方法:
许多开关电源的仿真收敛性问题都可以通常设置.OPTION中的GMIN选项来进行修复。这个选项的作用是将方程矩阵保持在良好的状态下。其默认值是1p,通常将它设置到1n到10n之间就能解决大多收敛性问题。
GMIN步增长方式是PSPICE和SPICE3中用来提高DC仿真收敛性问题的很好的方法。
Pspice中将RELTOL设置成大于0.01也可能带来收敛性问题。
设置ABSTOL大于0.1u能解决电流大于几安培时的问题,但也可能带来更多的问题。
通常,在电路结构进行调整时,可能需要进行很多次不同的.OPTION的设置,但一旦电路的模型建得够好时,所有的问题都没有了。
如果实在不行,可以将初始值都设置成0。
最好的办法就是一行一行地看电路的网表,以修正其中的不发之处。
大多收敛性问题都可能是软件的问题,但也还是有少部分时候是电路本身的问题,特别是对自己电路不十分了解的人。
DC收敛性问题
通常解决的办法有以下几种:
一、检查电路的拓朴结构和电路连接
1、 确认所有器件都连对了,包括极性。
2、 确认语法错误,包括单位没错(如MEG和M的不同)
3、 确认所在节点对地都有直流通路。
4、 确认电源都是真实值,特别是沿处。
5、 确认受控源的正确性,如受表达式控制的源中,表达式中分子中不能有0
二、将ITL1增加到400
三、加入.NODESETs:如.NODESET V(6)=0。
四、给二极管、三极管SD极并一个大电阻,用来模拟漏电流和实际的沟道阻抗。
五、用脉冲源模拟直流源
六、加入UIC在TRAN仿真中。
TRAN收敛性问题
一、 检查电路的拓朴结构和电路连接
二、设置TELTOL=0.01或0.005
三、设置ITL4=500
四、减小ABSTOL和VNTOL。
五、靠近实际地建立电路模型,加入寄生参数等。
六、减小升、降沿的速度。
七、加入UIC
八、如果仿真器支持,将收敛方法改成GEAR。
基本上我就是用了上面的方法解决了我遇到的问题。当然,目前,对于建模方面,还有不少的东西需要学习与研究。目前我所建立的模型还有很多问题,要么是不够精确,甚至于都不能正确工作;要么是仿真速度很慢,当然,开关电源本身的特点也决定了速度与精确度的矛盾性,但对于我来说,还是有很多东西需要提高。
关于建模
器件模型的正确建立,不仅要对器件的物理和电气特性有深入的理解,还需要对常用的应用电路有相当的熟悉程度。否则,建模,就是一个不可能完成的任务!
器件的数据手册是建模的基础,但记住一条:“尽可能用最简单的模型。”
下面是一些小细节:
一、越简单越好,复杂的模型会导致很慢的仿真速度。
二、建模只是一个妥协,不能完全替代实际电路。所以实际电路板的制作,还是非常重要的。
三、一个部分一个部分地写电路中的模型,特别是器件模型较复杂时。
四、对于可重用的模型,做成子电路。
五、对模型要有好的说明文档,不然一段时间后,自己都不知道是怎么建立的,有什么功能。
六、对于器件厂商提供的模型,在利用时要慎重考虑,最好是很好地验证。很多的都有很多限制甚至是不对的。
七、半导体器件的模型中,一定要有结电容和传输时间参数。
八、用.model来表示一个大的器件时,如果测试结果不够精确,可以改用子电路来表示。
九、对于形为级的开关电源器件模型,很多模型都是没有进行过完全测试的。能在一个工作点工作,但不一定能在所有点都能正确工作。

) V0 n# g0 Y* m* g

该用户从未签到

2#
发表于 2021-9-24 12:05 | 只看该作者
开关仿真就是仿真时有很多重复的周期性的上升下降信号的仿真,比如开关电源的仿真

该用户从未签到

3#
发表于 2021-9-24 14:28 | 只看该作者
开关电源Pspice仿真技巧及收敛性问题

该用户从未签到

4#
发表于 2021-9-24 14:29 | 只看该作者
开关电源的Pspice仿真中,速度与精度的权衡,收敛性问题的常规解决方法

该用户从未签到

5#
发表于 2021-9-24 14:29 | 只看该作者
收敛性问题会以各种形式出现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-6-6 15:18 , Processed in 0.093750 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表