影响SaberRD仿真速度的因素有哪些呢?

电子说

1.2w人已加入

描述

目前,专业仿真软件的功能不断增加,仿真领域不断扩大,处理的对象越来越复杂,这一切都使得软件自身显得越来越庞大,而硬件的更新速度也往往慢于软件更新的速度,这就造成了我们的仿真工作感觉越来越慢了。那么广泛应用于电力电子、伺服控制、混合电路等领域的系统仿真软件Saber是怎么样的呢?

通常,仿真时间受多种因素影响的,下面从Saber本身到使用方法再到硬件平台加以说明。

一、仿真器算法和用户分析设置

仿真器算法的先进性是仿真速度和仿真收敛性的决定性因素。Saber利用专利算法Calaveras实现最佳的运算性能,以达到仿真速度快、仿真精度高的目的。这样仿真器算法将花费多少时间作为所研究的设计/系统的线性/非线性的函数。

1、分析设置会影响完成仿真所需的步数。这个数字可以由仿真器(使用默认设置和动态调整)或用户控制。但是,用户在修改之前应该了解要仿真的系统以及每个设置的影响。

示例 1:在仿真刚性系统(混合技术)时,重要的是要限制时间步长,以防止仿真在切换点等急剧过渡期间偏离轨道太远。如果时间步长太小,仿真时间可能会过长。如果时间步长太大,瞬态分析可能难以启动。

示例 2:如果将截断错误类型“terrtype”设置为“all”,则仿真器将在每次 LTE 计算中使用更多信息,因此仿真会更准确,但与其他设置相比会更慢。

示例 3:将截断误差“terror”设置为一个非常小的值会导致更多的时间步长(有时可能需要)和更长的仿真时间。但是,某些系统可能不会收敛(例如:刚性系统)。

2、对于混合信号系统,正在处理的模拟数字事件的数量也会影响仿真时间。

3、从仿真中选择要保存的信号数量会影响仿真时间。

4、花在显示操作上的时间会增加整体时间。因此,设置监视器和使用波形探针将对仿真时间产生很大影响。对于持续时间较长的仿真,解决方案是以批处理模式运行,使用网格分布式迭代分析 (SABER_RUNTIME) 或将作业提交到快速服务器。

二、设计复杂性

仿真时间的进度取决于系统的复杂程度。

1、模拟与数字:在 1:1 大小的比较中,仿真模拟系统比数字系统慢。

2、混合信号电气系统:仿真速度取决于 Calaveras 算法必须评估同时发生的模拟和数字信号(进程间通信)事件的次数。

3、混合信号和刚度(通常是混合技术设计)。

4、混合信号仿真的模拟变量与数字变量的比率,因为数字部分将比模拟部分运行得更快。例如,具有 200,000 个数字部件和 20,000 个模拟部件的设计将比具有 20,000 个数字部件和 200,000 个模拟部件的设计运行得更快。

5、设计的大小被转化为变量的数量,这些变量决定了仿真器构建的矩阵的大小。一个大的设计将需要一个大的矩阵,并将分配/使用大面积的 RAM 内存。

建议:使用具有大容量 L2 缓存、大量 RAM 和高速FSB(前端总线)的机器。

三、建模方面

1、设计中使用的模型的复杂性:

  • 顶层模型非常简单,因此仿真速度很快(用于自顶向下的设计阶段)
  • 非常详细的模型需要更多的计算资源并提供最高级别的准确性(用于自下而上和设计验证阶段)。

示例 1:在晶体管级电路中,晶体管级模型应由特征行为模型代替,以获得更快的仿真。

示例 2:写得不好或错误的模型会迫使算法花费时间并给出糟糕的结果,而稳健的模型可以非常准确并在很短的时间内进行模拟。仿真中使用的模型应根据设计流程中特定级别(高级、自下而上、验证/板级等)的预期行为进行验证。

2、在电源设计的情况下,使用平均模型可以大大减少仿真时间。

3、使用理想的超模型也将缩短仿真时间,而使用特定于技术的超模型以更慢的仿真时间为代价提供更高的准确性。

示例 1:使用行为模型而不是映射到 MOS 超模型,这意味着数字电路将由数字模型而不是由 MOS 门表示,并且仿真会更快。

示例 2:创建并使用您自己的超模型。

4、如果设计包含时钟模型,则将强制使用最大仿真时间步长,以确保获得平滑的结果。

5、C和Fortran外部例程/函数的进程间通信频率调用也往往会减慢仿真速度。

示例:外部例程是循环的一部分,并且在系统处于蒙特卡罗仿真下时被调用 n 次。

6、模型中的消息应主要用于模型开发的调试/验证阶段。

示例:在循环期间和蒙特卡罗模拟下使用消息可能会花费大量时间。

四、联合仿真和其它进程

通常,进程间通信特定于:

1、Sabre 与另一个仿真器(Cadence、Mentor、Matlab等)的联合仿真

2、C和Fortran外部程序/函数的调用

3、SaberRT

4、其他进程:同时运行多个应用程序将强制 cpu 在进程之间共享时间,除非有进程优先级设置为 Saber 提供最高优先级。实现实时能力的设计尺寸、刚度和时间常数扩展是有限的。

五、硬件性能

1、从硬件角度来看,仿真时间主要受以下因素影响:

  • CPU 速度
  • L2 Cache(BSB后端总线)的大小和速度
  • FSB(前端总线)速度
  • RAM 内存的大小和类型

2、仿真后处理(波形查看与分析)性能主要受以下因素影响:

  • 显存大小
  • 硬盘转速(转速越高,访问数据文件越快)

最后说明:如果仿真时间是一个关键问题,用户应该考虑以下几点:

  • 更高的 CPU 速度和更大的内存大小通常会导致更高的仿真和后处理时间性能。
  • 停止所有其他占用 CPU 时间的系统活动将加速仿真过程。
  • 增加截断误差会减少仿真步数,但会降低精度。
  • 选择更简单的模型将导致更少的计算时间。
  • 您可以通过将设计分解为可以独立于系统其余部分进行仿真的功能块来降低设计复杂性。换句话说,花更多的时间在模拟关键块上,而不是每次设计发生变化时都模拟整个系统。
  • 在仿真时实现最佳速度和精度是一种权衡,这对于设计验证至关重要,但对于自上而下的设计阶段则不然。
打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

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

×
20
完善资料,
赚取积分