diff --git a/sim/imperas.ic b/sim/imperas.ic index ad19aaf68..8ac8dd64e 100644 --- a/sim/imperas.ic +++ b/sim/imperas.ic @@ -14,6 +14,9 @@ --override cpu/add_implicit_Extensions=B --override cpu/bitmanip_version=1.0.0 +# ???? +--override cpu/Zicbom=T + # clarify #--override refRoot/cpu/mtvec_sext=F diff --git a/sim/wally-imperas.do b/sim/wally-imperas.do index e4cd75f38..6a24b653d 100644 --- a/sim/wally-imperas.do +++ b/sim/wally-imperas.do @@ -32,6 +32,7 @@ vlog +incdir+../config/$1 \ +incdir+$env(IMPERAS_HOME)/ImpProprietary/include/host \ $env(IMPERAS_HOME)/ImpPublic/source/host/rvvi/rvviApiPkg.sv \ $env(IMPERAS_HOME)/ImpPublic/source/host/rvvi/rvviTrace.sv \ + $env(IMPERAS_HOME)/ImpProprietary/source/host/idv/idvApiPkg.sv \ $env(IMPERAS_HOME)/ImpProprietary/source/host/idv/idvPkg.sv \ $env(IMPERAS_HOME)/ImpProprietary/source/host/idv/idvApiPkg.sv \ $env(IMPERAS_HOME)/ImpProprietary/source/host/idv/trace2api.sv \ diff --git a/testbench/testbench-linux-imperas.sv b/testbench/testbench-linux-imperas.sv index 79b354cb0..3deac00f0 100644 --- a/testbench/testbench-linux-imperas.sv +++ b/testbench/testbench-linux-imperas.sv @@ -302,11 +302,12 @@ module testbench; initial begin int iter; #1; - IDV_MAX_ERRS = 3; + IDV_MAX_ERRORS = 3; // Initialize REF (do this before initializing the DUT) if (!rvviVersionCheck(RVVI_API_VERSION)) begin - msgfatal($sformatf("%m @ t=%0t: Expecting RVVI API version %0d.", $time, RVVI_API_VERSION)); + $display($sformatf("%m @ t=%0t: Expecting RVVI API version %0d.", $time, RVVI_API_VERSION)); + $fatal; end void'(rvviRefConfigSetString(IDV_CONFIG_MODEL_VENDOR, "riscv.ovpworld.org")); @@ -316,7 +317,8 @@ module testbench; void'(rvviRefConfigSetInt(IDV_CONFIG_MAX_NET_LATENCY_RETIREMENTS, 6)); if (!rvviRefInit("")) begin - msgfatal($sformatf("%m @ t=%0t: rvviRefInit failed", $time)); + $display($sformatf("%m @ t=%0t: rvviRefInit failed", $time)); + $fatal; end // Volatile CSRs diff --git a/testbench/testbench_imperas.sv b/testbench/testbench_imperas.sv index 41a6db450..ac7e49a48 100644 --- a/testbench/testbench_imperas.sv +++ b/testbench/testbench_imperas.sv @@ -140,11 +140,12 @@ module testbench; initial begin - IDV_MAX_ERRS = 3; + IDV_MAX_ERRORS = 3; // Initialize REF (do this before initializing the DUT) if (!rvviVersionCheck(RVVI_API_VERSION)) begin - msgfatal($sformatf("%m @ t=%0t: Expecting RVVI API version %0d.", $time, RVVI_API_VERSION)); + $display($sformatf("%m @ t=%0t: Expecting RVVI API version %0d.", $time, RVVI_API_VERSION)); + $fatal; end void'(rvviRefConfigSetString(IDV_CONFIG_MODEL_VENDOR, "riscv.ovpworld.org")); void'(rvviRefConfigSetString(IDV_CONFIG_MODEL_NAME, "riscv")); @@ -153,7 +154,8 @@ module testbench; void'(rvviRefConfigSetInt(IDV_CONFIG_MAX_NET_LATENCY_RETIREMENTS, 6)); if (!rvviRefInit(elffilename)) begin - msgfatal($sformatf("%m @ t=%0t: rvviRefInit failed", $time)); + $display($sformatf("%m @ t=%0t: rvviRefInit failed", $time)); + $fatal; end // Volatile CSRs