1

接上篇,运行control命令时候运行到run时候开始仿真

  1. 仿真运行模型的创建
    仿真采用的节点分析法,会创建一个电路的导纳矩阵,例如在INPpas2中识别出来是电阻会调用INP2R,通过IFC newInstance 调用CKTcrtElt 创建并将电阻挂在到ckt->DEVnameHash上,再通过IFC bindNode在电阻中记录两端的网络号,在后续setup时候会将该电阻在导纳矩阵中的指针保存到实例电阻中,每次迭代将当前具体值更新上去。
  2. 运行run命令初始化仿真环境
    调用到run时候会调用到dosim函数,最终通过ft_sim一个用户调用和仿真之间的中间层的doAnalyses接口调用到CKTdoJob,这这里初始化仿真的环境,并通过CKTsetup CKTtemp 根据温度 设备的参数实例化设备
  3. 一次瞬态分析仿真过程
    通过an_func接口调用到DCtran函数,在仿真开始前通过OUTpBeginPlot创建一个绘图,然后通过CKTop初始化电路的初始状态,如果没有设置初始状态会通过NIiter迭代来确定每个网络的初始状态,然后再通过NIiter迭代进行每一步仿真,每一步的仿真结果会通过CKTdump放到申请好的绘图中,仿真结束通过接口OUTendPlot调用OUTendPlot将此次记录的数据放到全局的ft_curckt中,后续调用write命令保存到文件中。

o_ra
6 声望4 粉丝

记录工作中碰到的问题


引用和评论

0 条评论