Verilator是一个高性能VerilogHDL模拟器与lint系统,用户编写一个小的C++/SystemC封装文件,该文件实例化用户顶层模块的“Verilate化”模型。然后,这些C++/SystemC文件由C++编译器(gcc/clang/MSVC++)进行编译,最终生成的可执行文件执行设计模拟。
Verilator不会简单地将VerilogHDL转换为C++或SystemC。Verilator不仅可以翻译,还可以将代码编译为速度更快的优化与可选的线程分区模型,同时这些模型封装在C++/SystemC/Python模块中。
经过编译的Verilog模型,即使在单线程上执行的速度也比独立SystemC快10倍以上,并且在单线程上的执行速度比诸如IcarusVerilog之类的解释Verilog模拟器快100倍。多线程可能还会使速度提高2-10倍(在解释型模拟器上总共可以提高200-1000倍)。
评论