[发明专利]一种电路仿真中减少矩阵分解的方法有效
申请号: | 202110334854.3 | 申请日: | 2021-03-29 |
公开(公告)号: | CN113032722B | 公开(公告)日: | 2022-08-16 |
发明(设计)人: | 程明厚;周振亚;吴大可;李骥;王鹏飞 | 申请(专利权)人: | 北京华大九天科技股份有限公司 |
主分类号: | G06F17/16 | 分类号: | G06F17/16;G06F17/11;G06F30/3308 |
代理公司: | 北京德崇智捷知识产权代理有限公司 11467 | 代理人: | 王金双 |
地址: | 100102 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 电路 仿真 减少 矩阵 分解 方法 | ||
一种电路仿真中减少矩阵分解的方法,包括以下步骤:建立Newton‑Raphson迭代方程;进行Newton‑Raphson迭代,计算每次迭代对应的残差和器件状态;根据所述残差或所述器件状态,判断是否需要矩阵分解。本发明的电路仿真中减少矩阵分解的方法,可以在电路仿真过程中自适应的判断当前的Newton‑Raphson迭代是否需要做矩阵分解,从而减少仿真过程中矩阵分解的次数,大大提高了计算效率。
技术领域
本发明涉及EDA电路仿真技术领域,特别涉及电路仿真中减少矩阵分解的方法。
背景技术
电路仿真工具spice是根据电路中的电子元件的连接关系,基于基尔霍夫电流定律建立一套微分方程组,并进行求解的一套仿真工具。在时间尺度上,会根据数值积分方法对原始的微分方程组进行离散,从而得到每个工作点上电路所满足的非线性方程组。进而通过Newton-Raphson(牛顿-拉夫逊)迭代算法求解该非线性方程组,得到该工作点上电路中每个节点的电压。Newton-Raphson迭代算法是非常实用且经典的迭代求解方法。该算法最主要的计算量是每次迭代时要求解一个大规模的稀疏线性方程组。
对于大规模电路的仿真,采用Newton-Raphson迭代算法在每次迭代时都要求解的大规模稀疏线性方程组,求解线性方程组的瓶颈是矩阵的LU分解,而且占比超过90%,大大降低了仿真的效率。
发明内容
为了解决现有技术存在的不足,本发明的目的在于提供一种电路仿真中减少矩阵分解的方法,根据电路仿真中器件的状态以及收敛状态来有效减少矩阵分解次数,提高仿真的效率。
为实现上述目的,本发明提供的电路仿真中减少矩阵分解的方法,包括以下步骤:
建立Newton-Raphson迭代方程;
进行Newton-Raphson迭代,计算每次迭代对应的残差和器件状态;
根据所述残差或所述器件状态,判断是否需要矩阵分解。
进一步地,所述计算每次迭代对应的残差的步骤,还包括,根据每个节点的参考容差,计算整体残差的赋权无穷范数,得到相对最坏的残差。
进一步地,所述计算每次迭代对应的器件状态的步骤,还包括,根据每个节点的电压变化,以及器件的工作区来标记每个器件的工作状态。
进一步地,所述根据所述残差,判断是否需要矩阵分解的步骤,还包括,判断所述残差下降是否满足当前残差值与前一次残差值的比值小于1e-1的要求,其中,
如果在迭代的过程中,所述残差下降满足要求,此时可以复用前一次迭代的分解结果,当前迭代不做矩阵分解;如果所述残差下降不满足要求,需要进行矩阵分解。
进一步地,还包括,如果在迭代过程中,前一步迭代没有做矩阵分解,并且当前迭代的残差下降不满足要求,则当前迭代进行矩阵分解;如果前一步迭代做了矩阵分解,并且残差下降不好,则认为当前时刻收敛性不好,提前终止迭代。
更进一步地,所述根据所述器件状态,判断是否需要矩阵分解的步骤,还包括,判断器件的状态变化是否满足要求:器件中的支路电压变化,满足|Δvp,n|≤relTol*|vp,n|+absTol,
其中,Δvp,n为支路电压的变化量,vp,n为支路电压,relTol为相对误差,默认值为1e-4,absTol为绝对误差,默认值为1e-5,如果满足上述要求,则认为器件的状态变化满足要求,可以复用前一次迭代的矩阵分解结果,当前迭代不做矩阵分解;否则器件的状态变化不满足要求,需要进行矩阵分解。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京华大九天科技股份有限公司,未经北京华大九天科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110334854.3/2.html,转载请声明来源钻瓜专利网。