mirror of
https://github.com/openhwgroup/cvw
synced 2025-02-02 17:55:19 +00:00
Cleanup
This commit is contained in:
parent
6cff03bd33
commit
d525cc25d8
@ -37,7 +37,6 @@ onerror {quit -f}
|
|||||||
# Initialize variables
|
# Initialize variables
|
||||||
set CFG ${1}
|
set CFG ${1}
|
||||||
set TESTSUITE ${2}
|
set TESTSUITE ${2}
|
||||||
set TESTSUITE_NO_ELF [file rootname ${TESTSUITE}]
|
|
||||||
set TESTBENCH ${3}
|
set TESTBENCH ${3}
|
||||||
set WKDIR wkdir/${CFG}_${TESTSUITE}
|
set WKDIR wkdir/${CFG}_${TESTSUITE}
|
||||||
set WALLY $::env(WALLY)
|
set WALLY $::env(WALLY)
|
||||||
@ -67,7 +66,6 @@ set FCvlog ""
|
|||||||
set breker 0
|
set breker 0
|
||||||
set brekervlog ""
|
set brekervlog ""
|
||||||
set brekervopt ""
|
set brekervopt ""
|
||||||
set brekervsim ""
|
|
||||||
|
|
||||||
set lockstep 0
|
set lockstep 0
|
||||||
set lockstepvlog ""
|
set lockstepvlog ""
|
||||||
@ -188,7 +186,7 @@ vlog -permissive -lint -work ${WKDIR} {*}${INC_DIRS} {*}${DefineArgs} {*}${FCvlo
|
|||||||
# remove +acc flag for faster sim during regressions if there is no need to access internal signals
|
# remove +acc flag for faster sim during regressions if there is no need to access internal signals
|
||||||
vopt $accFlag ${WKDIR}.${TESTBENCH} ${brekervopt} -work ${WKDIR} {*}${ExpandedParamArgs} -o testbenchopt ${CoverageVoptArg}
|
vopt $accFlag ${WKDIR}.${TESTBENCH} ${brekervopt} -work ${WKDIR} {*}${ExpandedParamArgs} -o testbenchopt ${CoverageVoptArg}
|
||||||
|
|
||||||
vsim -lib ${WKDIR} testbenchopt +TEST=${TESTSUITE} {*}${PlusArgs} -fatal 7 {*}${SVLib} {*}${brekervsim} -suppress 3829 ${CoverageVsimArg}
|
vsim -lib ${WKDIR} testbenchopt +TEST=${TESTSUITE} {*}${PlusArgs} -fatal 7 {*}${SVLib} -suppress 3829 ${CoverageVsimArg}
|
||||||
|
|
||||||
# power add generates the logging necessary for saif generation.
|
# power add generates the logging necessary for saif generation.
|
||||||
# power add -r /dut/core/*
|
# power add -r /dut/core/*
|
||||||
|
@ -700,7 +700,6 @@ module testbench;
|
|||||||
always @(posedge clk) begin
|
always @(posedge clk) begin
|
||||||
// if (reset) PrevPCZero <= 0;
|
// if (reset) PrevPCZero <= 0;
|
||||||
// else if (dut.core.InstrValidM) PrevPCZero <= (FunctionName.PCM == 0 & dut.core.ifu.InstrM == 0);
|
// else if (dut.core.InstrValidM) PrevPCZero <= (FunctionName.PCM == 0 & dut.core.ifu.InstrM == 0);
|
||||||
// $display("PCE: %0h IEUAdrM: %0h Label (tohost): %0h instruction: %s", dut.core.ifu.PCE, dut.core.lsu.IEUAdrM, ProgramAddrLabelArray["tohost"], InstrMName);
|
|
||||||
TestComplete <= ((InstrM == 32'h6f) & dut.core.InstrValidM ) |
|
TestComplete <= ((InstrM == 32'h6f) & dut.core.InstrValidM ) |
|
||||||
((dut.core.lsu.IEUAdrM == ProgramAddrLabelArray["tohost"] & dut.core.lsu.IEUAdrM != 0) & InstrMName == "SW"); // |
|
((dut.core.lsu.IEUAdrM == ProgramAddrLabelArray["tohost"] & dut.core.lsu.IEUAdrM != 0) & InstrMName == "SW"); // |
|
||||||
// (FunctionName.PCM == 0 & dut.core.ifu.InstrM == 0 & dut.core.InstrValidM & PrevPCZero));
|
// (FunctionName.PCM == 0 & dut.core.ifu.InstrM == 0 & dut.core.InstrValidM & PrevPCZero));
|
||||||
|
@ -9,20 +9,16 @@ CUSTOMER_YAML := $(TREKFILES)/customer.yaml
|
|||||||
TREKSVIP_YAML := $(BREKER_HOME)/examples/tutorials/svip/treksvip/yaml/treksvip.yaml
|
TREKSVIP_YAML := $(BREKER_HOME)/examples/tutorials/svip/treksvip/yaml/treksvip.yaml
|
||||||
CONSTRAINT_FILES := $(shell find $(CONSTRAINTS_DIR) -type f)
|
CONSTRAINT_FILES := $(shell find $(CONSTRAINTS_DIR) -type f)
|
||||||
TREKEXE_FLAGS += --seed 0x # free (0x) or lock (0x1) the seed used for test generation
|
TREKEXE_FLAGS += --seed 0x # free (0x) or lock (0x1) the seed used for test generation
|
||||||
TREKSVIP = source $(TREKFILES)/breker-setup.sh && treksvip -p $(PLATFORM_YAML) -p $(TREKSVIP_YAML) $(TREKEXE_FLAGS)
|
TREKSVIP := source $(TREKFILES)/breker-setup.sh && treksvip -p $(PLATFORM_YAML) -p $(TREKSVIP_YAML) $(TREKEXE_FLAGS)
|
||||||
|
|
||||||
EXAMPLES_LIB = $(WALLY)/examples/C/common
|
|
||||||
|
|
||||||
# -nostdlib -static -lm -fno-tree-loop-distribute-patterns
|
|
||||||
|
|
||||||
# Compilation paths and variables
|
# Compilation paths and variables
|
||||||
|
START_LIB_DIR := $(WALLY)/examples/C/common
|
||||||
|
START_LIB := $(START_LIB_DIR)/crt.S $(START_LIB_DIR)/syscalls.c
|
||||||
MARCH :=-march=rv64gc_zcb_zfa_zba_zbb_zbc_zbs_zfh_zicboz_zicbop_zicbom_zbkb_zbkx_zknd_zkne_zknh_svinval
|
MARCH :=-march=rv64gc_zcb_zfa_zba_zbb_zbc_zbs_zfh_zicboz_zicbop_zicbom_zbkb_zbkx_zknd_zkne_zknh_svinval
|
||||||
MABI :=-mabi=lp64d
|
MABI :=-mabi=lp64d
|
||||||
LINKER := $(EXAMPLES_LIB)/test.ld
|
LINKER := $(START_LIB_DIR)/test.ld
|
||||||
# $(WALLY)/tests/custom/linker8000-0000.x
|
|
||||||
LINK_FLAGS := -nostartfiles
|
LINK_FLAGS := -nostartfiles
|
||||||
CFLAGS := -Wa,-alhs -Wa,-L -mcmodel=medany -Og -DSINGLE_CPU
|
CFLAGS := -Wa,-alhs -Wa,-L -mcmodel=medany -Og -DSINGLE_CPU
|
||||||
CRT0_DIR := $(WALLY)/tests/custom/crt0
|
|
||||||
WIDTH := 64
|
WIDTH := 64
|
||||||
|
|
||||||
# Find all constraint files and generate tests for each one
|
# Find all constraint files and generate tests for each one
|
||||||
@ -37,9 +33,8 @@ $(TESTDIR)/%: $(CONSTRAINTS_DIR)/%.yaml | $(TESTDIR)
|
|||||||
|
|
||||||
# Compile c code
|
# Compile c code
|
||||||
.PRECIOUS: %.elf
|
.PRECIOUS: %.elf
|
||||||
%.elf: %.c $(CRT0_DIR)/libcrt0.a
|
%.elf: %.c
|
||||||
riscv64-unknown-elf-gcc $(MARCH) $(MABI) $(CFLAGS) $(LINK_FLAGS) -g -o $@ $< -T $(LINKER) -I$(EXAMPLES_LIB) $(EXAMPLES_LIB)/crt.S $(EXAMPLES_LIB)/syscalls.c> /dev/null
|
riscv64-unknown-elf-gcc $(MARCH) $(MABI) $(CFLAGS) $(LINK_FLAGS) -T$(LINKER) -I$(START_LIB_DIR) $(START_LIB) -g -o $@ $< > /dev/null
|
||||||
# riscv64-unknown-elf-gcc $(MARCH) $(MABI) $(CFLAGS) $(LINK_FLAGS) -g -o $@ $< -L$(CRT0_DIR) -lcrt0 -T $(LINKER) > /dev/null
|
|
||||||
|
|
||||||
# Convert elf to hex
|
# Convert elf to hex
|
||||||
%.elf.memfile: %.elf
|
%.elf.memfile: %.elf
|
||||||
@ -48,12 +43,8 @@ $(TESTDIR)/%: $(CONSTRAINTS_DIR)/%.yaml | $(TESTDIR)
|
|||||||
extractFunctionRadix.sh $<.objdump
|
extractFunctionRadix.sh $<.objdump
|
||||||
|
|
||||||
# View the model graph TODO: What does this do? Move to another makefile?
|
# View the model graph TODO: What does this do? Move to another makefile?
|
||||||
%.view_graph:%
|
%.view_graph: $(CONSTRAINTS_DIR)/%.yaml
|
||||||
$(TREKSVIP) -p ../tests/test_$^.yaml -p $(CUSTOMER_YAML) -t pss_top.entry
|
$(TREKSVIP) -p $(CONSTRAINTS_DIR)/$^.yaml -p $(CUSTOMER_YAML) -t pss_top.entry
|
||||||
|
|
||||||
# Library needed for C code
|
|
||||||
$(CRT0_DIR)/libcrt0.a:
|
|
||||||
make -C $(CRT0_DIR)
|
|
||||||
|
|
||||||
$(TESTDIR):
|
$(TESTDIR):
|
||||||
mkdir -p $(TESTDIR)
|
mkdir -p $(TESTDIR)
|
||||||
|
Loading…
Reference in New Issue
Block a user