Add xrun-testharness support

This commit is contained in:
isabelle schmid 2024-03-19 14:14:50 +01:00 committed by JeanRochCoulon
parent 27aab922b9
commit fa9a36860c

View file

@ -223,8 +223,10 @@ ALL_SIMV_UVM_FLAGS = +vcs+lic+wait -licwait 20 \
ALL_XRUN_UVM_FLAGS = -elaborate -messages -sv +incdir+$(XCELIUM_HOME)/tools.lnx86/methodology/UVM/CDNS-1.2/sv/src/ \
$(XCELIUM_HOME)/tools.lnx86/methodology/UVM/CDNS-1.2/sv/src/uvm_pkg.sv +UVM_VERBOSITY=UVM_LOW -uvm -uvmhome CDNS-1.2 \
-64 +incdir+$(XCELIUM_HOME)/tools.lnx86/methodology/UVM/CDNS-1.2/sv/src \
+incdir+$(CVA6_REPO_DIR)/verif/core-v-verif/$(CV_CORE_LC)/env/uvme +incdir+$(CVA6_REPO_DIR)/verif/core-v-verif/$(CV_CORE_LC)/tb/uvmt \
+incdir+$(CVA6_REPO_DIR)/verif/core-v-verif/cva6/env/uvme +incdir+$(CVA6_REPO_DIR)/verif/core-v-verif/cva6/tb/uvmt \
-xmerror CUNOTB -nowarn CUDEFB -nowarn CUSRCH -warn_multiple_driver -relax_svbtis -timescale 1ns/1ps -status -access +rwc -log $(XRUN_WORK_DIR)/tb_compile.log
## +incdir+$(CVA6_UVME_PATH) +incdir+$(CVA6_UVMT_PATH)
##-relax_svbtis
##ALL_XRUN_SIMV_UVM_FLAGS = -licwait 20 $(issrun_opts)
ALL_XRUN_SIMV_UVM_FLAGS = +sv_lib=$(CVA6_REPO_DIR)/tools/spike/lib/libdisasm +signature=I-ADD-01.signature_output
@ -349,8 +351,6 @@ questa-uvm:
make questa_uvm_run
xrun_dpi-library = $(XRUN_WORK_DIR)/work-dpi
xrun_uvm_comp:
@echo "[XRUN] Building Model"
mkdir -p $(XRUN_WORK_DIR)
@ -358,10 +358,13 @@ xrun_uvm_comp:
xrun $(ALL_XRUN_UVM_FLAGS) \
-f $(FLIST_CORE) \
-f $(FLIST_TB) \
-f $(CVA6_UVMT_DIR)/uvmt_cva6.flist \
-f $(CVA6_UVMT_PATH)/uvmt_cva6.flist \
$(cov-comp-opt) $(isscomp_opts)\
-top uvmt_cva6_tb
## -f $(FLIST_TB) \
## -f $(CVA6_UVMT_PATH)/uvmt_cva6.flist \
xrun_uvm_run:
@echo "[XRUN] Running"
cd $(XRUN_WORK_DIR) && \
@ -378,6 +381,7 @@ xrun_uvm_run:
xrun-uvm: xrun_uvm_comp xrun_uvm_run
$(tool_path)/spike-dasm --isa=$(variant) < ./xrun_results/trace_rvfi_hart_00.dasm > $(log)
generate_cov_dash:
urg -warn none -hvp_proj cva6_embedded -format both -group instcov_for_score -hvp_attributes weight+description+Comment -dir vcs_results/default/vcs.d/simv.vdb -plan cva6.hvp -tgl portsonly
@ -388,7 +392,25 @@ vcs_clean_all:
xrun_clean_all:
@echo "[XRUN] Cleanup (entire xrun_work dir)"
# rm -rf $(XRUN_WORK_DIR)
rm -rf $(CVA6_REPO_DIR)/verif/sim/xrun_results/
xrun-testharness:
@echo "[XRUN-TESTHARNESS] Running"
@echo "[XRUN-TESTHARNESS] $(path_var)"
@echo "[XRUN-TESTHARNESS] $(XRUN_WORK_DIR)"
@echo "[XRUN-TESTHARNESS] $(elf)"
mkdir -p $(XRUN_WORK_DIR)
make -C $(path_var) work-dpi/xrun_ariane_dpi.so
@echo "[XRUN-TESTHARNESS] $(elf)"
make -C $(path_var) xrun_sim target=$(target) defines=$(subst +define+,,$(isscomp_opts))$(if $(spike-tandem),SPIKE_TANDEM=1)
@echo "[XRUN-TESTHARNESS1] $(elf)"
$(CVA6_REPO_DIR)/tools/spike/spike-dasm --isa=$(variant) < ./xrun_results/xcelium.d/trace_rvfi_hart_00.dasm > $(log)
###############################################################################
# testharness specific commands, variables
@ -430,18 +452,12 @@ questa-testharness:
# Common targets and rules
###############################################################################
clean_all: vcs_clean_all
clean_all: vcs_clean_all
rm -f *.txt
rm -f trace*.log
rm -f trace*.dasm
rm -f *.vpd *.fsdb *.vcd *.fst
#xrun_clean_all: xrun_clean_all
# rm -f *.txt
# rm -f trace*.log
# rm -f trace*.dasm
## rm -f *.vpd *.fsdb *.vcd *.fst
help:
@echo "Shell environment:"
@echo " CVA6_REPO_DIR : $(CVA6_REPO_DIR)"