从多个源编译 RTL 时,通常会将它们编译到单独的 SystemVerilog 库中。这样做意味着它们不会相互干扰,并且您可以将多个具有相同名称的不同模块编译到不同的库中。
SystemVerilog 配置用于选择从哪个库中详细说明模块。如 SV LRM 2017(33 配置设计内容)中所述。例如
config cfg1; // specify rtl adder for top.a1, gate-level adder for top.a2
design rtlLib.top;
default liblist rtlLib;
instance top.a2 liblist gateLib;
endconfig
Verilator 是否支持编译成单独的库,如商业模拟器?