From 21dd4649de47154038dfd2e6acf762bfdc3f4245 Mon Sep 17 00:00:00 2001 From: Quswar Abid Date: Tue, 26 Mar 2024 14:17:41 -0700 Subject: [PATCH] ISACOV is functioning - March 27, 2024 --- Makefile | 15 +++++++++++++++ sim/wally-imperas-cov.do | 14 +++++++++----- 2 files changed, 24 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index f8bd79d5a..97e61f47e 100644 --- a/Makefile +++ b/Makefile @@ -39,6 +39,21 @@ imperasdv: iter-elf.bash --search ${WALLY}/tests/riscof/work/wally-riscv-arch-test/rv64i_m iter-elf.bash --search ${WALLY}/tests/riscof/work/riscv-arch-test/rv64i_m +imperasdv_cov: + touch ${WALLY}/sim/seed0.txt + echo "0" > ${WALLY}/sim/seed0.txt +# /opt/riscv/ImperasDV-OpenHW/scripts/cvw/run-elf-cov.bash --verbose --seed 0 --search ${WALLY}/tests/riscof/work/wally-riscv-arch-test/rv64i_m +# /opt/riscv/ImperasDV-OpenHW/scripts/cvw/run-elf-cov.bash --elf ${WALLY}/tests/riscof/work/riscv-arch-test/rv64i_m/I/src/add-01.S/dut/my.elf --seed ${WALLY}/sim/seed0.txt --coverdb ${WALLY}/sim/cov/rv64gc_arch64i.ucdb --verbose + /opt/riscv/ImperasDV-OpenHW/scripts/cvw/run-elf-cov.bash --elf ${WALLY}/tests/riscof/work/riscv-arch-test/rv64i_m/I/src/add-01.S/dut/my.elf --seed ${WALLY}/sim/seed0.txt --coverdb riscv.ucdb --verbose + vcover report -details -html sim/riscv.ucdb + +funcovreg: + iter-elf.bash --search ${WALLY}/tests/riscof/work/wally-riscv-arch-test/rv64i_m --cover + #iter-elf.bash --search ${WALLY}/tests/riscof/work/wally-riscv-arch-test/rv64i_m/I --cover + #iter-elf.bash --search ${WALLY}/tests/riscof/work/wally-riscv-arch-test/rv64i_m/privilege --cover + #iter-elf.bash --search ${WALLY}/tests/riscof/work/wally-riscv-arch-test/rv64i_m/Q --cover + vcover report -details -html sim/riscv.ucdb + coverage: cd ${WALLY}/sim; ./regression-wally -coverage -fp diff --git a/sim/wally-imperas-cov.do b/sim/wally-imperas-cov.do index 2309b01df..5cc56529e 100644 --- a/sim/wally-imperas-cov.do +++ b/sim/wally-imperas-cov.do @@ -27,12 +27,14 @@ vlib work vlog +incdir+../config/$1 \ +incdir+../config/shared \ +define+USE_IMPERAS_DV \ + +define+IDV_INCLUDE_TRACE2COV \ +incdir+$env(IMPERAS_HOME)/ImpPublic/include/host \ +incdir+$env(IMPERAS_HOME)/ImpProprietary/include/host \ $env(IMPERAS_HOME)/ImpPublic/source/host/rvvi/rvviApiPkg.sv \ + $env(IMPERAS_HOME)/ImpProprietary/source/host/idv/idvApiPkg.sv \ $env(IMPERAS_HOME)/ImpPublic/source/host/rvvi/rvviTrace.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/trace2bin.sv \ $env(IMPERAS_HOME)/ImpProprietary/source/host/idv/trace2api.sv \ $env(IMPERAS_HOME)/ImpProprietary/source/host/idv/trace2log.sv \ \ @@ -44,7 +46,7 @@ vlog +incdir+../config/$1 \ $env(IMPERAS_HOME)/ImpProprietary/source/host/idv/trace2cov.sv \ \ ../src/cvw.sv \ - ../testbench/testbench_imperas.sv \ + ../testbench/testbench-imperas.sv \ ../testbench/common/*.sv \ ../src/*/*.sv \ ../src/*/*/*.sv \ @@ -54,8 +56,10 @@ vlog +incdir+../config/$1 \ vopt +acc work.testbench -G DEBUG=1 -o workopt eval vsim workopt +nowarn3829 -fatal 7 \ -sv_lib $env(IMPERAS_HOME)/lib/Linux64/ImperasLib/imperas.com/verification/riscv/1.0/model \ - +testDir=$env(TESTDIR) $env(OTHERFLAGS) +TRACE2COV_ENABLE=1 \ - -do "coverage save -onexit ./riscv.ucdb" + +testDir=$env(TESTDIR) $env(OTHERFLAGS) +TRACE2COV_ENABLE=1 + +coverage save -onexit ./riscv.ucdb + view wave #-- display input and output signals as hexidecimal values @@ -64,7 +68,7 @@ view wave run -all -noview ../testbench/testbench_imperas.sv +noview ../testbench/testbench-imperas.sv view wave quit -f