Updated test structures
diff --git a/verilog/dv/caravel/hs32_soc/core1test1/Makefile b/verilog/dv/caravel/hs32_soc/test1/Makefile
similarity index 87%
rename from verilog/dv/caravel/hs32_soc/core1test1/Makefile
rename to verilog/dv/caravel/hs32_soc/test1/Makefile
index 37e9da3..7fa7302 100644
--- a/verilog/dv/caravel/hs32_soc/core1test1/Makefile
+++ b/verilog/dv/caravel/hs32_soc/test1/Makefile
@@ -1,6 +1,5 @@
-FIRMWARE_PATH = ../..
+FIRMWARE_PATH = ../../
RTL_PATH = ../../../../rtl
-IP_PATH = ../../../../ip
BEHAVIOURAL_MODELS = ../../
VERILOG_PATH = ../../../../
@@ -21,16 +20,16 @@
%.vvp: %_tb.v %.hex
ifeq ($(SIM),RTL)
iverilog -DSIM -DFUNCTIONAL -I $(BEHAVIOURAL_MODELS) \
- -I $(PDK_PATH) -I $(IP_PATH) -I $(RTL_PATH) \
+ -I $(PDK_PATH) -I $(RTL_PATH) \
-I $(RTL_PATH)/hs32cpu $< -o $@
else
iverilog -DSIM -DFUNCTIONAL -DGL_SIM -I $(BEHAVIOURAL_MODELS) \
- -I $(PDK_PATH) -I $(IP_PATH) -I $(RTL_PATH) \
+ -I $(PDK_PATH) -I $(RTL_PATH) \
-I $(RTL_PATH)/hs32cpu -I $(VERILOG_PATH) $< -o $@
endif
%.vcd: %.vvp
- vvp $< -fst-speed
+ vvp $< -fst-speed $(OPT)
%.elf: %.c $(FIRMWARE_PATH)/sections.lds $(FIRMWARE_PATH)/start.s
${GCC_PATH}/${GCC_PREFIX}-gcc -march=rv32imc -mabi=ilp32 -Wl,-Bstatic,-T,$(FIRMWARE_PATH)/sections.lds,--strip-debug -ffreestanding -nostdlib -o $@ $(FIRMWARE_PATH)/start.s $<
diff --git a/verilog/dv/caravel/hs32_soc/core1test1/README.md b/verilog/dv/caravel/hs32_soc/test1/README.md
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test1/README.md
rename to verilog/dv/caravel/hs32_soc/test1/README.md
diff --git a/verilog/dv/caravel/hs32_soc/core1test1/tb.gtkw b/verilog/dv/caravel/hs32_soc/test1/tb.gtkw
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test1/tb.gtkw
rename to verilog/dv/caravel/hs32_soc/test1/tb.gtkw
diff --git a/verilog/dv/caravel/hs32_soc/core1test1/test1.c b/verilog/dv/caravel/hs32_soc/test1/test1.c
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test1/test1.c
rename to verilog/dv/caravel/hs32_soc/test1/test1.c
diff --git a/verilog/dv/caravel/hs32_soc/core1test1/test1_tb.v b/verilog/dv/caravel/hs32_soc/test1/test1_tb.v
similarity index 92%
rename from verilog/dv/caravel/hs32_soc/core1test1/test1_tb.v
rename to verilog/dv/caravel/hs32_soc/test1/test1_tb.v
index a167e05..6e12574 100644
--- a/verilog/dv/caravel/hs32_soc/core1test1/test1_tb.v
+++ b/verilog/dv/caravel/hs32_soc/test1/test1_tb.v
@@ -12,6 +12,7 @@
module tb();
parameter TEST_ID = 1;
+ parameter FILENAME = "test1.hex";
reg clock;
reg RSTB;
@@ -47,7 +48,11 @@
`ifndef GL_SIM
if(failed) begin
$display("%c[1;31m",27);
- $display("Test 1: Failed (timed out)!");
+ $display("Test %d: Failed (timed out)!", TEST_ID);
+ $display("%c[0m",27);
+ end else begin
+ $display("%c[1;32m",27);
+ $display("Test %d: Passed weak cases.", TEST_ID);
$display("%c[0m",27);
end
`endif
@@ -86,7 +91,6 @@
wait(tb.uut.mprj.core1.core.EXEC.regfile_s.regs[2] == 32'hCAFE);
failed = 0;
end
-
always @(*) begin
if(tb.uut.mprj.core1.core.EXEC.fault) begin
$display("%c[1;31m",27);
@@ -138,7 +142,7 @@
);
spiflash #(
- .FILENAME("test1.hex")
+ .FILENAME(FILENAME)
) spiflash (
.csb(flash_csb),
.clk(flash_clk),
diff --git a/verilog/dv/caravel/hs32_soc/core1test2/Makefile b/verilog/dv/caravel/hs32_soc/test2/Makefile
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test2/Makefile
rename to verilog/dv/caravel/hs32_soc/test2/Makefile
diff --git a/verilog/dv/caravel/hs32_soc/core1test2/README.md b/verilog/dv/caravel/hs32_soc/test2/README.md
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test2/README.md
rename to verilog/dv/caravel/hs32_soc/test2/README.md
diff --git a/verilog/dv/caravel/hs32_soc/core1test2/tb.gtkw b/verilog/dv/caravel/hs32_soc/test2/tb.gtkw
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test2/tb.gtkw
rename to verilog/dv/caravel/hs32_soc/test2/tb.gtkw
diff --git a/verilog/dv/caravel/hs32_soc/core1test2/test2.c b/verilog/dv/caravel/hs32_soc/test2/test2.c
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test2/test2.c
rename to verilog/dv/caravel/hs32_soc/test2/test2.c
diff --git a/verilog/dv/caravel/hs32_soc/core1test2/test2_tb.v b/verilog/dv/caravel/hs32_soc/test2/test2_tb.v
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test2/test2_tb.v
rename to verilog/dv/caravel/hs32_soc/test2/test2_tb.v
diff --git a/verilog/dv/caravel/hs32_soc/core1test3/Makefile b/verilog/dv/caravel/hs32_soc/test3/Makefile
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test3/Makefile
rename to verilog/dv/caravel/hs32_soc/test3/Makefile
diff --git a/verilog/dv/caravel/hs32_soc/core1test3/README.md b/verilog/dv/caravel/hs32_soc/test3/README.md
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test3/README.md
rename to verilog/dv/caravel/hs32_soc/test3/README.md
diff --git a/verilog/dv/caravel/hs32_soc/core1test3/tb.gtkw b/verilog/dv/caravel/hs32_soc/test3/tb.gtkw
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test3/tb.gtkw
rename to verilog/dv/caravel/hs32_soc/test3/tb.gtkw
diff --git a/verilog/dv/caravel/hs32_soc/core1test3/test3.c b/verilog/dv/caravel/hs32_soc/test3/test3.c
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test3/test3.c
rename to verilog/dv/caravel/hs32_soc/test3/test3.c
diff --git a/verilog/dv/caravel/hs32_soc/core1test3/test3_tb.v b/verilog/dv/caravel/hs32_soc/test3/test3_tb.v
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test3/test3_tb.v
rename to verilog/dv/caravel/hs32_soc/test3/test3_tb.v
diff --git a/verilog/dv/caravel/hs32_soc/core1test4/Makefile b/verilog/dv/caravel/hs32_soc/test4/Makefile
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test4/Makefile
rename to verilog/dv/caravel/hs32_soc/test4/Makefile
diff --git a/verilog/dv/caravel/hs32_soc/core1test4/README.md b/verilog/dv/caravel/hs32_soc/test4/README.md
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test4/README.md
rename to verilog/dv/caravel/hs32_soc/test4/README.md
diff --git a/verilog/dv/caravel/hs32_soc/core1test4/tb.gtkw b/verilog/dv/caravel/hs32_soc/test4/tb.gtkw
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test4/tb.gtkw
rename to verilog/dv/caravel/hs32_soc/test4/tb.gtkw
diff --git a/verilog/dv/caravel/hs32_soc/core1test4/test4.c b/verilog/dv/caravel/hs32_soc/test4/test4.c
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test4/test4.c
rename to verilog/dv/caravel/hs32_soc/test4/test4.c
diff --git a/verilog/dv/caravel/hs32_soc/core1test4/test4_tb.v b/verilog/dv/caravel/hs32_soc/test4/test4_tb.v
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test4/test4_tb.v
rename to verilog/dv/caravel/hs32_soc/test4/test4_tb.v
diff --git a/verilog/dv/caravel/hs32_soc/core1test5/Makefile b/verilog/dv/caravel/hs32_soc/test5/Makefile
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test5/Makefile
rename to verilog/dv/caravel/hs32_soc/test5/Makefile
diff --git a/verilog/dv/caravel/hs32_soc/core1test5/README.md b/verilog/dv/caravel/hs32_soc/test5/README.md
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test5/README.md
rename to verilog/dv/caravel/hs32_soc/test5/README.md
diff --git a/verilog/dv/caravel/hs32_soc/core1test5/tb.gtkw b/verilog/dv/caravel/hs32_soc/test5/tb.gtkw
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test5/tb.gtkw
rename to verilog/dv/caravel/hs32_soc/test5/tb.gtkw
diff --git a/verilog/dv/caravel/hs32_soc/core1test5/test5.c b/verilog/dv/caravel/hs32_soc/test5/test5.c
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test5/test5.c
rename to verilog/dv/caravel/hs32_soc/test5/test5.c
diff --git a/verilog/dv/caravel/hs32_soc/core1test5/test5_tb.v b/verilog/dv/caravel/hs32_soc/test5/test5_tb.v
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test5/test5_tb.v
rename to verilog/dv/caravel/hs32_soc/test5/test5_tb.v
diff --git a/verilog/dv/caravel/hs32_soc/core1test6/Makefile b/verilog/dv/caravel/hs32_soc/test6/Makefile
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test6/Makefile
rename to verilog/dv/caravel/hs32_soc/test6/Makefile
diff --git a/verilog/dv/caravel/hs32_soc/core1test6/README.md b/verilog/dv/caravel/hs32_soc/test6/README.md
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test6/README.md
rename to verilog/dv/caravel/hs32_soc/test6/README.md
diff --git a/verilog/dv/caravel/hs32_soc/core1test6/tb.gtkw b/verilog/dv/caravel/hs32_soc/test6/tb.gtkw
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test6/tb.gtkw
rename to verilog/dv/caravel/hs32_soc/test6/tb.gtkw
diff --git a/verilog/dv/caravel/hs32_soc/core1test6/test6.c b/verilog/dv/caravel/hs32_soc/test6/test6.c
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test6/test6.c
rename to verilog/dv/caravel/hs32_soc/test6/test6.c
diff --git a/verilog/dv/caravel/hs32_soc/core1test6/test6_tb.v b/verilog/dv/caravel/hs32_soc/test6/test6_tb.v
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test6/test6_tb.v
rename to verilog/dv/caravel/hs32_soc/test6/test6_tb.v
diff --git a/verilog/dv/caravel/hs32_soc/core1test7/Makefile b/verilog/dv/caravel/hs32_soc/test7/Makefile
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test7/Makefile
rename to verilog/dv/caravel/hs32_soc/test7/Makefile
diff --git a/verilog/dv/caravel/hs32_soc/core1test7/README.md b/verilog/dv/caravel/hs32_soc/test7/README.md
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test7/README.md
rename to verilog/dv/caravel/hs32_soc/test7/README.md
diff --git a/verilog/dv/caravel/hs32_soc/core1test7/tb.gtkw b/verilog/dv/caravel/hs32_soc/test7/tb.gtkw
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test7/tb.gtkw
rename to verilog/dv/caravel/hs32_soc/test7/tb.gtkw
diff --git a/verilog/dv/caravel/hs32_soc/core1test7/test7.c b/verilog/dv/caravel/hs32_soc/test7/test7.c
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test7/test7.c
rename to verilog/dv/caravel/hs32_soc/test7/test7.c
diff --git a/verilog/dv/caravel/hs32_soc/core1test7/test7_tb.v b/verilog/dv/caravel/hs32_soc/test7/test7_tb.v
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test7/test7_tb.v
rename to verilog/dv/caravel/hs32_soc/test7/test7_tb.v
diff --git a/verilog/dv/caravel/hs32_soc/core1test8/Makefile b/verilog/dv/caravel/hs32_soc/test8/Makefile
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test8/Makefile
rename to verilog/dv/caravel/hs32_soc/test8/Makefile
diff --git a/verilog/dv/caravel/hs32_soc/core1test8/README.md b/verilog/dv/caravel/hs32_soc/test8/README.md
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test8/README.md
rename to verilog/dv/caravel/hs32_soc/test8/README.md
diff --git a/verilog/dv/caravel/hs32_soc/core1test8/tb.gtkw b/verilog/dv/caravel/hs32_soc/test8/tb.gtkw
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test8/tb.gtkw
rename to verilog/dv/caravel/hs32_soc/test8/tb.gtkw
diff --git a/verilog/dv/caravel/hs32_soc/core1test8/test6.c b/verilog/dv/caravel/hs32_soc/test8/test6.c
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test8/test6.c
rename to verilog/dv/caravel/hs32_soc/test8/test6.c
diff --git a/verilog/dv/caravel/hs32_soc/core1test8/test6_tb.v b/verilog/dv/caravel/hs32_soc/test8/test6_tb.v
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1test8/test6_tb.v
rename to verilog/dv/caravel/hs32_soc/test8/test6_tb.v
diff --git a/verilog/dv/caravel/hs32_soc/core1mem/Makefile b/verilog/dv/caravel/hs32_soc/testmem/Makefile
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1mem/Makefile
rename to verilog/dv/caravel/hs32_soc/testmem/Makefile
diff --git a/verilog/dv/caravel/hs32_soc/core1mem/README.md b/verilog/dv/caravel/hs32_soc/testmem/README.md
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1mem/README.md
rename to verilog/dv/caravel/hs32_soc/testmem/README.md
diff --git a/verilog/dv/caravel/hs32_soc/core1mem/mem.c b/verilog/dv/caravel/hs32_soc/testmem/mem.c
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1mem/mem.c
rename to verilog/dv/caravel/hs32_soc/testmem/mem.c
diff --git a/verilog/dv/caravel/hs32_soc/core1mem/mem_tb.v b/verilog/dv/caravel/hs32_soc/testmem/mem_tb.v
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1mem/mem_tb.v
rename to verilog/dv/caravel/hs32_soc/testmem/mem_tb.v
diff --git a/verilog/dv/caravel/hs32_soc/core1mem/tb.gtkw b/verilog/dv/caravel/hs32_soc/testmem/tb.gtkw
similarity index 100%
rename from verilog/dv/caravel/hs32_soc/core1mem/tb.gtkw
rename to verilog/dv/caravel/hs32_soc/testmem/tb.gtkw
diff --git a/verilog/dv/hs32_nocaravel/mmiotest/tb.gtkw b/verilog/dv/hs32_nocaravel/mmiotest/tb.gtkw
index ddfdf8c..98493dd 100644
--- a/verilog/dv/hs32_nocaravel/mmiotest/tb.gtkw
+++ b/verilog/dv/hs32_nocaravel/mmiotest/tb.gtkw
@@ -1,28 +1,69 @@
[*]
[*] GTKWave Analyzer v3.3.86 (w)1999-2017 BSI
-[*] Tue Dec 22 02:52:28 2020
+[*] Tue Dec 22 22:38:55 2020
[*]
[dumpfile] "/data/caravel-hs32core/verilog/dv/hs32_nocaravel/mmiotest/dump.fst"
-[dumpfile_mtime] "Tue Dec 22 02:49:24 2020"
-[dumpfile_size] 9941
+[dumpfile_mtime] "Tue Dec 22 22:34:50 2020"
+[dumpfile_size] 10579
[savefile] "/data/caravel-hs32core/verilog/dv/hs32_nocaravel/mmiotest/tb.gtkw"
[timestart] 0
-[size] 1000 600
-[pos] 318 63
-*-9.502302 370 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1
+[size] 911 572
+[pos] 727 46
+*-7.502302 1660 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1
[treeopen] tb.
[treeopen] tb.mprj.
[treeopen] tb.mprj.core1.
[sst_width] 314
-[signals_width] 224
+[signals_width] 255
[sst_expanded] 1
[sst_vpaned_height] 151
@28
tb.mprj.core1.clk
@22
tb.mprj.core1.io_in[37:0]
-@28
+@c00028
tb.mprj.core1.io_out[37:0]
+@28
+(0)tb.mprj.core1.io_out[37:0]
+(1)tb.mprj.core1.io_out[37:0]
+(2)tb.mprj.core1.io_out[37:0]
+(3)tb.mprj.core1.io_out[37:0]
+(4)tb.mprj.core1.io_out[37:0]
+(5)tb.mprj.core1.io_out[37:0]
+(6)tb.mprj.core1.io_out[37:0]
+(7)tb.mprj.core1.io_out[37:0]
+(8)tb.mprj.core1.io_out[37:0]
+(9)tb.mprj.core1.io_out[37:0]
+(10)tb.mprj.core1.io_out[37:0]
+(11)tb.mprj.core1.io_out[37:0]
+(12)tb.mprj.core1.io_out[37:0]
+(13)tb.mprj.core1.io_out[37:0]
+(14)tb.mprj.core1.io_out[37:0]
+(15)tb.mprj.core1.io_out[37:0]
+(16)tb.mprj.core1.io_out[37:0]
+(17)tb.mprj.core1.io_out[37:0]
+(18)tb.mprj.core1.io_out[37:0]
+(19)tb.mprj.core1.io_out[37:0]
+(20)tb.mprj.core1.io_out[37:0]
+(21)tb.mprj.core1.io_out[37:0]
+(22)tb.mprj.core1.io_out[37:0]
+(23)tb.mprj.core1.io_out[37:0]
+(24)tb.mprj.core1.io_out[37:0]
+(25)tb.mprj.core1.io_out[37:0]
+(26)tb.mprj.core1.io_out[37:0]
+(27)tb.mprj.core1.io_out[37:0]
+(28)tb.mprj.core1.io_out[37:0]
+(29)tb.mprj.core1.io_out[37:0]
+(30)tb.mprj.core1.io_out[37:0]
+(31)tb.mprj.core1.io_out[37:0]
+(32)tb.mprj.core1.io_out[37:0]
+(33)tb.mprj.core1.io_out[37:0]
+(34)tb.mprj.core1.io_out[37:0]
+(35)tb.mprj.core1.io_out[37:0]
+(36)tb.mprj.core1.io_out[37:0]
+(37)tb.mprj.core1.io_out[37:0]
+@1401200
+-group_end
@200
-
@800200
@@ -86,15 +127,14 @@
@28
tb.mprj.core1.t0_io_oe
tb.mprj.core1.t0_io_out
-tb.mprj.core1.t0_match_int
tb.mprj.core1.t1_io_oe
tb.mprj.core1.t1_io_out
-tb.mprj.core1.t1_match_int
tb.mprj.core1.t2_io_oe
tb.mprj.core1.t2_io_out
-tb.mprj.core1.t2_match_int
@1401200
-Timers
+@c00200
+-Timer0
@28
tb.mprj.core1.dev_timer0.clk
@22
@@ -105,7 +145,20 @@
@22
tb.mprj.core1.dev_timer0.tconfig[6:0]
tb.mprj.core1.dev_timer0.match[15:0]
-@29
+@28
tb.mprj.core1.dev_timer0.addr[1:0]
+@1401200
+-Timer0
+@800200
+-WB Device
+@22
+tb.mprj.core1.wb.r_adr[31:0]
+@28
+tb.mprj.core1.wb.r_cfg[1:0]
+@22
+tb.mprj.core1.wb.r_dtr[31:0]
+tb.mprj.core1.wb.r_dtw[31:0]
+@1000200
+-WB Device
[pattern_trace] 1
[pattern_trace] 0