微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC验证交流 > HDL和C/SC联合仿真,关于SC建模和C++建模两者有何区别?

HDL和C/SC联合仿真,关于SC建模和C++建模两者有何区别?

时间:10-02 整理:3721RD 点击:
1、不管是SC还是C++建模,只要是HDL和SC/C的联合仿真,都是必须选择一种接口标准的(PLI或是DPI)2、用SC建模或是C++建模两者有何区别?

没怎么用过SC或是C++,目前只知道SC可以理解为C++的一个类库,如果不是HDL和SC/C的联合仿真,那么如果要实现并行操作的话,有如下几类方法:

1)私有方法(使用pthread简单实现)

2)systemc(SC_METHOD)

3)verilog仿真器提供的并发执行环境(VCS+PLI,SV+DPI)


这种情况下(不是HDL和SC/C的联合仿真),用SC建模和C++建模最大的区别可能就是仿真速度了,理论上仿真速度1)>2)>3)


但是如果是HDL和SC/C的联合仿真,用SC建模或是C++建模有什么区别吗?都是通过PLI或是DPI接口,SC建模能周期精准?C++建模就只能是untime吗?两者有何区别,如果非要用C++建模,需要注意什么情况啊,刚接触这些,忘有经验的高手指点一下啊?


SC有自己的仿真引擎,就在SC库里,会负责事件调度等。普通C++没有。
SC建模能周期精准。SC有相当于Verilog的RTL建模能力。

还没有见到过用sc能做到周期精确的,做到周期精确的sc和rtl已经没有多少区别了。大部分算法工程师都对sc不感冒。另外,sc常用tlm接口和testbench通信。

SC用于ESL系统建模,重点在抽象,有4个层次,最精准的能达到cycle accurate. 到了后期可以和SV来做验证拉通。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top