Hello,
We are trying to instantiate SystemC module generated using Verilator tool and simulate using irun.
We have a sample counter DUT and we are running 3 configurations.
(1) Pure Verilog
There is top.v, dut.v and a small piece of code for stimulus in top.v. This is for reference.
(2) dut.v converted manually to SystemC dut.cpp
This compiles and runs fine.
(3) dut. converted using Verilator
This is where we encounter following error. Not sure why this error was not encountered in configuration (2) where we have a SystemC module manually written.
Error:
TOOL: ncsc 13.20-s010
ncsc C++ parameters:
ncsc -COMPILER $CDSROOT/tools/cdsgcc/gcc/4.4/bin/g++
-f ./INCA_libs/irun.lnx86.13.20.nc/ncsc_run/ncsc_obj/ncsc.args
-MANUAL
-CFLAGS "-DNCSC
-I$CDSROOT/tools/systemc/include_pch
-I$CDSROOT/tools/tbsc/include
-I$CDSROOT/tools/vic/include
-I$CDSROOT/tools/methodology/OVM/CDNS-2.1.2/sc/src
-I$CDSROOT/tools/methodology/UVM/CDNS-1.1d/sc/sc
-I$CDSROOT/tools/methodology/UVM/CDNS-1.1d/ml/sc
-I$CDSROOT/tools/systemc/include/cci
-I$CDSROOT/tools/systemc/include/factory
-I$CDSROOT/tools/systemc/include/tlm2
-c
-x c++ -m32 -Wall
-I${VERILATOR_INCDIR}
-DVERILATED
-I$CDSROOT/tools/include
-I$CDSROOT/tools/inca/include"
Caching library 'worklib' ....... Done
Elaborating the design hierarchy:
ncelab: *F,SCILDD: Could not load SystemC model library ./INCA_libs/irun.lnx86.13.20.nc/librun (./INCA_libs/irun.lnx86.13.20.nc/librun.so: undefined symbol: _Z8vl_fatalPKciS0_S0_).
irun: *E,ELBERR: Error during elaboration (status 3), exiting.
TOOL: irun 13.20-s010: Exiting on Oct 19, 2016 at 10:33:06 IST (total: 00:00:39)
The irun command we are using is -
$ irun
+define+SYSTEMC
-DVERILATED
top.v
dut.v
-sysc
dut.cpp
-access +rcw
-l log.verilator
-I${VERILATOR_INCDIR}
-L${SYSTEMC_LIBDIR}