模拟电路仿真技巧之如何延长仿真时间呢

模拟技术

2412人已加入

描述

设想如下情景:

设计ADC的时候,忽然发现跑了一天的结果拿出来做FFT,之前的取点数量算错了!我晕!怎么办?也就再多一点点的时间就行了,难道要重新跑一天?生无可恋……

设计PLL的时候,我也不知道loop啥时候能settle,然后随便写了个截止时间,结果……果然不够……-_-

或者做其他电路设计的时候,反正我就想再多跑一段时间吧!

作者君最近学到了一个可以在之前仿真基础上接着跑仿真的办法,拿来跟大家分享一下,希望大家也能提供一些建议!

PS:作者君试过ADEXL和ADE Explore,都是可以的。ADE似乎不行。

嗯,又是熟悉的配方,来自ADEXL:

1. 打开ADEXL,在option下面选择Save,可以看到右边的对话框。

)Simulation Results: 两个选项都勾上;

)Results Location:选一个你设置的仿真文件地址。

电路仿真

ADEXL 的设置

2. 打开一个test state:随便填一个stop time

电路仿真

打开tran里面的Options选项, 在state file里面填两个东西:

1)State File Parameters: “write”和“writefinal” 可以用作接下来subsequent的初始状态文件。
2)savetime: 可以设置任何中间值,这些时间对应的仿真文件都可以被保存下来,也可以拿来debug或者做subsequent 仿真的初始状态。

3. 拿到一个初始仿真结果:明显没有settle ---》我想多跑一段时间

电路仿真

4. 找到之前设置的仿真文件的存放地址:

电路仿真

如果使用ADE Explore,下次的仿真会覆盖之前的文件,建议把需要的文件复制到local的文件夹下面。

如果使用ADEXL,每次仿真会生成对应的interactive文件夹,虽然不一定会覆盖之前的文件,但是还是建议拷贝出来。

5. 设置继续仿真的时间:

电路仿真

这一次,我把stop time改成了750u(这个是实际的仿真时长,不是之前150us之后的750us)。继续打开options的state file,最后一行填入上一步copy出来的仿真文件,比如我拿的是最终150us的对应文件。

6. 继续仿真:

电路仿真

在simulation的log里面看到,starttime是150us,而且使用了我加入的150us的对应文件。最后确认一下仿真结果,在右图里面,可以看出来,仿真确实是从150us跑到了750us。

好了,完结,撒花!

PS: 遇到很长的仿真,可能把仿真分割成这样小段的,不太会被同学和同事complain?大家可以试试看哈!

PSS:不要问我为啥这个电压是negative的,我也不知道……我在debug……遁了



审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分