System verilog SystemC与SystemVerilog的仿真速度

System verilog SystemC与SystemVerilog的仿真速度,system-verilog,systemc,System Verilog,Systemc,有没有人有一个指针来测量用SystemC编写的行为模型与用SystemVerilog编写的相同模型相比的速度?或者,在对同一事物建模时,至少有两种模拟速度的第一手经验 为了澄清这一点,这适用于高级系统模拟,其中模型是模拟行为的最小代码。它显然是不可合成的。在System Verilog中,它将使用尽可能多的不可合成的行为结构,以获得最大的执行速度。关键是,我们要问的是一个苹果对苹果的比较,有人做了,他们试图做到这两个:保持高水平的不可合成性,并使代码尽可能接近两种语言之间的等效性 如果他们能够说

有没有人有一个指针来测量用SystemC编写的行为模型与用SystemVerilog编写的相同模型相比的速度?或者,在对同一事物建模时,至少有两种模拟速度的第一手经验

为了澄清这一点,这适用于高级系统模拟,其中模型是模拟行为的最小代码。它显然是不可合成的。在System Verilog中,它将使用尽可能多的不可合成的行为结构,以获得最大的执行速度。关键是,我们要问的是一个苹果对苹果的比较,有人做了,他们试图做到这两个:保持高水平的不可合成性,并使代码尽可能接近两种语言之间的等效性

如果他们能够说明所使用的SystemVerilog环境,以及每台机器运行的机器,以便能够进行翻译,那就太好了。希望能对各种各样的人在选择方法上有所帮助


谢谢

与其他语言基准测试一样,一般来说不可能回答,因为它取决于多种因素,如建模风格、编译器供应商和版本、编译选项

<> P>还可以将Verilog转换为C++和C++到Verilog。因此,您可以通过从一种语言转换到另一种语言来始终匹配模拟性能

可以使用Verilator将Verilog转换为C++/SystemC


要将C++/SystemC转换为Verilog,您可以使用HLS高级合成工具。

您提到的转换工具中没有一个完全适用于system Verilog,特别是测试台。@Serge OP提到了相同的行为模型。我猜他指的是RTL行为模型。是的,转换器不适用于TLM2.0模型。感谢评论,但是我们的经验是,在转换之后,verilog转换为C++的Verilog代码比行为模型慢100-1000倍。行为模型是不可合成的,只是模拟行为的最小代码。另外,Verilator也不支持系统Verilog的行为构造,因为这些构造是不可合成的。为了澄清这个问题,我对问题进行了编辑。系统verilog本身由几个部分组成:rtl、gates、测试台、约束求解器、覆盖范围。你对哪部分感兴趣?Verilog也有一组不同于方便C++语言的语义。你想要什么样的语义映射?