0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

transient仿真的Dynamic Parameter设置技巧

通向模拟集成电路设计师之路 来源:通向模拟集成电路设计师 作者:通向模拟集成电路 2021-07-29 17:56 次阅读

不知道大家跑仿真的时候,会不会遇到需要动态调整设置的情况?

比如一个bandgap的startup,一开始需要仿真精度比较高,之后电路基本上稳定之后,各个工作点基本上不变,可以降低仿真精度。

又比如我想测试一个电路的温度稳定性能,假设这个芯片在冬天的东北,忽然从温暖的室内拿到室外,环境温度骤降好几十度。

或者是输入的信号是个动态的幅值连续变化的情况。

一般来说,如果用一个高精度的仿真或者好几个独立的仿真,是足以应付上面的需求的。不过Cadence既然已经给了一个很不错的设置功能,我们何不试试看呢?

在这篇文章的例子里面,作者君用了一个ahdlLib的理想放大器test bench如下:

4cd3ea68-edfc-11eb-a97a-12bb97331649.jpg

左边是一个全差分输入的设置,VDD是1.8V。右边是ideal opamp,增益我填的是10。此时我们的输入信号用的是V0的vsin, V4是个vdc,目前有个红色的叉叉在上面。这个叉叉是shift加delete键按出来的,表示目前没有用到这个模块。后面需要这个模块的时候,再按一次shift加delete键就可以清除掉这个叉叉了。

现在就让我们来看看如何在transient仿真里面设置吧?

可以看到,最下面有个叫Dynamic Parameter的东西。打上勾之后,出现了Parameter和Parameter Set两种选项。我们先来看看Parameter。

如果下面的Param选择默认的User-defined,就可以手动输入自己设置的变量。我这里的vamp是我在vsin里面设置的amplitude变量。输入vamp之后,下面会出来这个可以一直添加的表格,自己填写时间和vamp的数值,就可以了。

好了,我随便写了几个变量值,让我们跑一下transient吧!

仿真结果就是这样的。颜色较浅的两条线是差分输入信号,蓝色的线是ideal opamp的输出。可以看到,和我前面的设置相对应,在2us,4us,6us的时候,输入信号发生了变化,因此输出也随之发生了变化。这个仿真结果说明了上面的设置是可行的。

同样的,除了改变我们自己设置的参数变量值,我们还可以改变其他一些仿真设置。

这张图里的errpreset就是仿真精度的设置。如同我刚刚举的bandgap例子,大家可以在startup开始工作的一段时间内,使用高精度conservative,在后面的时间里使用moderate或者liberal。当需要跑大量的PVT或者MC时,这样的设置方法相比于一直使用conservative的高精度,应该是可以加快仿真速度的。有兴趣的同学可以试试看。

除此之外,还有set的设置。

如上图,如果选择了Parameter Set,就不单单是前面的一个变量了。你可以加上各种各样的变量组合。比如我在2us的时候,设置了vamp,设置了温度变量temp为-25,还准备加上仿真精度errpreset。后面的尝试,就交给各位读者朋友了!

前面我讲到了我的test bench里面那个红色的叉叉。现在我们换一个信号源:

4d72cf02-edfc-11eb-a97a-12bb97331649.png

我还是用shift加上delete,删掉了vsin,但是重新采用了vdc。dynamic parameter的设置还是跟前文一样,新的电路仿真结果如图:

4d85c116-edfc-11eb-a97a-12bb97331649.png

其实这个结果比vsin还要清晰一点。同样也是在2u,4u,6u,的时候,输入信号发生了变化,因此输出也随之发生了变化。

好了,这点transient仿真的小技巧就讲到这里了。有兴趣的读者们可以试试看啦!

编辑:jq

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

    关注

    50

    文章

    4051

    浏览量

    133433

原文标题:Cadence 仿真小技巧——transient仿真的Dynamic Parameter设置

文章出处:【微信号:analogIC_gossip,微信公众号:通向模拟集成电路设计师之路】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    LMX2694-EP仿真环路带宽时,环路带宽和数据手册中不一样是怎么回事?

    仿真LMX2694-EP环路带宽时,按照手册中P77页的200k带宽来仿真,得不到手册中的值: 下图为手册中的仿真设置: 下图为自己仿真的
    发表于 11-11 07:17

    如何在Cadence的EMX仿真中精准设置长边PORT

    请问在Cadence的EMX仿真里,如果需要在一个较长的边打PORT,需要怎么设置仿真比较精准?像这样子直接吸附一个上去可以吗?
    的头像 发表于 10-23 10:27 452次阅读
    如何在Cadence的EMX<b class='flag-5'>仿真</b>中精准<b class='flag-5'>设置</b>长边PORT

    机器人仿真的类型和优势

    机器人仿真使机器人工程师和研究人员能够创建机器人及其环境的虚拟模型。这项技术支持在仿真的无风险环境中测试和验证机器人设计与控制算法以及与各种元素进行交互。通过使用仿真软件,可以预测和分析机器人在各种条件下的行为,而不需要物理原型
    的头像 发表于 10-14 10:43 430次阅读
    机器人<b class='flag-5'>仿真的</b>类型和优势

    TINA仿真_LM5022 LOAD TRANSIENT SIMULATION电压表测量电压提示:“未发现操作点”警告,为什么?

    TINA仿真_LM5022 LOAD TRANSIENT SIMULATION电压表测量电压提示:“未发现操作点”警告
    发表于 08-08 07:43

    tina仿真的噪声分析,可以分析电流噪声吗?

    tina仿真的噪声分析,可以分析电流噪声吗
    发表于 08-06 08:23

    stm8如果使用到多功能引脚,用stvd调试仿真的时候,是否还需要设置option byte 来使功能正常使用?

    各位前辈,请问一下如果使用到多功能引脚,其中的一个功能比如tim2_ch1 。用stvd调试仿真的时候,是否还需要设置option byte 来使功能正常使用。 我记得用stvp下载程序的时候需要
    发表于 05-08 07:23

    STlink仿真的时候断点个数有限是为什么?不能多打吗?

    比较好奇,为什么STlink仿真的时候断点个数有限啊?好像就支持3个吧,还是几个来着,为什么不像jlink一样,断点可以多打呢?
    发表于 03-20 07:36

    fpga前仿真和后仿真的区别

    FPGA的前仿真和后仿真在芯片设计和验证过程中扮演着不同的角色,各自具有独特的特点和重要性。
    的头像 发表于 03-15 15:29 2054次阅读

    fpga时序仿真和功能仿真的区别

    FPGA时序仿真和功能仿真在芯片设计和验证过程中各自扮演着不可或缺的角色,它们之间存在明显的区别。
    的头像 发表于 03-15 15:28 2022次阅读

    最实用的Modelsim使用及仿真的基本步骤

    仿真也称为时序仿真或者布局布线后仿真,是指电路已经映射到特定的工艺环境以后,综合考虑电路的路径延迟与门延迟的影响,验证电路能否在一定时序条件下满足设计构想的过程,是否存在时序违规。
    的头像 发表于 03-06 09:58 8813次阅读
    最实用的Modelsim使用及<b class='flag-5'>仿真的</b>基本步骤

    CPU DLL文件内SARMCM3.DLL的parameter如何设定?

    , 等各个外设的设定插件 这个是外设插件是在 DEBUG 内的dialog DLL 中的parameter设置的----- 请问,1:什么样的参数适合 以下的 DLL 文件
    发表于 01-16 08:13

    如何设置LTspice来让仿真的速度快一些?

    我在用LTspice做电源仿真的时候,我发现仿真的速度很慢,该如何设置LTspice来让仿真的速度快一些,thanks
    发表于 01-05 07:03

    芯片前仿真和后仿真的区别

    在芯片设计中,前仿真和后仿真都是非常重要的环节,但它们在功能和目的上存在明显的区别。本文将详细介绍前仿真和后仿真的区别,以及它们在芯片设计中的应用和重要性。 一、前
    的头像 发表于 12-13 15:06 7209次阅读

    介绍一种通过SystemC做RTL/C/C++联合仿真的方法

    当FPGA开发者需要做RTL和C/C++联合仿真的时候,一些常用的方法包括使用MicroBlaze软核,或者使用QEMU仿真ZYNQ的PS部分。
    的头像 发表于 12-13 10:11 1863次阅读
    介绍一种通过SystemC做RTL/C/C++联合<b class='flag-5'>仿真的</b>方法

    Saber中如何更好地提高仿真的收敛性(一)

    仿真过程中,由于仿真模型的不连续性,或者模型没有适当地表征/参数化,或者当求解器无法求解控制模型行为的方程时,可能就会出现仿真的收敛问题。
    的头像 发表于 12-05 14:43 1560次阅读
    Saber中如何更好地提高<b class='flag-5'>仿真的</b>收敛性(一)