1
0
mirror of https://github.com/antonblanchard/microwatt.git synced 2026-02-26 16:53:16 +00:00

icache_tb: Improve test and include test file

The icache_test.bin file was missing. This adds it (along with a python3
script to generate it).

We also add better reporting on errors

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
This commit is contained in:
Benjamin Herrenschmidt
2019-10-18 16:41:05 +11:00
parent 900c131083
commit f74e8a4f79
3 changed files with 29 additions and 4 deletions

View File

@@ -77,7 +77,11 @@ begin
wait for 30*clk_period;
assert i_in.valid = '1';
assert i_in.insn = x"00000001";
assert i_in.insn = x"00000001"
report "insn @" & to_hstring(i_out.nia) &
"=" & to_hstring(i_in.insn) &
" expected 00000001"
severity failure;
i_out.req <= '0';
@@ -88,7 +92,11 @@ begin
i_out.nia <= x"0000000000000008";
wait for clk_period;
assert i_in.valid = '1';
assert i_in.insn = x"00000002";
assert i_in.insn = x"00000002"
report "insn @" & to_hstring(i_out.nia) &
"=" & to_hstring(i_in.insn) &
" expected 00000002"
severity failure;
wait for clk_period;
-- another miss
@@ -98,7 +106,11 @@ begin
wait for 30*clk_period;
assert i_in.valid = '1';
assert i_in.insn = x"00000010";
assert i_in.insn = x"00000010"
report "insn @" & to_hstring(i_out.nia) &
"=" & to_hstring(i_in.insn) &
" expected 00000010"
severity failure;
-- test something that aliases
i_out.req <= '1';
@@ -110,7 +122,11 @@ begin
wait for 30*clk_period;
assert i_in.valid = '1';
assert i_in.insn = x"00000040";
assert i_in.insn = x"00000040"
report "insn @" & to_hstring(i_out.nia) &
"=" & to_hstring(i_in.insn) &
" expected 00000040"
severity failure;
i_out.req <= '0';

BIN
icache_test.bin Normal file

Binary file not shown.

9
scripts/gen_icache_tb.py Executable file
View File

@@ -0,0 +1,9 @@
#!/usr/bin/python3
b = bytearray()
for i in range(0x100):
b = b + i.to_bytes(4, 'little')
f = open('icache_test.bin', 'w+b')
f.write(b)
f.close()