Increase iterations for PMP tests to improve coverage

This commit is contained in:
Harry Callahan 2022-11-01 09:46:02 +00:00
parent dda18c155f
commit 31cc8e0b5a

View file

@ -716,7 +716,7 @@
Basic PMP test - all PMP regions will be configured to default setting,
enabling all forms of accesses, expect that no exception will be thrown.
Randomize mstatus.mprv.
iterations: 10
iterations: 50
gen_test: riscv_rand_instr_test
gen_opts: >
+instr_cnt=6000
@ -727,6 +727,7 @@
rtl_test: core_ibex_base_test
rtl_params:
PMPEnable: 1
timeout_s: 300
- test: riscv_pmp_disable_all_regions_test
desc: >
@ -734,7 +735,7 @@
and randomize mstatus.mprv.
Expect that all appropriate faults are taken, and that the core
finishes executing successfully.
iterations: 20
iterations: 50
gen_test: riscv_rand_instr_test
gen_opts: >
+instr_cnt=6000
@ -760,13 +761,14 @@
rtl_test: core_ibex_base_test
rtl_params:
PMPEnable: 1
timeout_s: 300
- test: riscv_pmp_out_of_bounds_test
desc: >
Default PMP settings - enable all regions with full permissions.
Randomize mstatus.mprv and the boot mode.
Insert streams of memory instructions that access addresses out of PMP boundaries.
iterations: 25
iterations: 50
gen_test: riscv_rand_instr_test
gen_opts: >
+instr_cnt=6000
@ -776,13 +778,12 @@
+directed_instr_0=riscv_load_store_rand_addr_instr_stream,50
+mseccfg=MML:0,MMWP:0,RLB:0
rtl_test: core_ibex_base_test
sim_opts: >
+enable_bad_intg_on_uninit_access=0
rtl_params:
PMPEnable: 1
sim_opts: >
+is_double_fault_detected_fatal=0
+enable_bad_intg_on_uninit_access=0
timeout_s: 300
- test: riscv_pmp_full_random_test
desc: >
@ -790,7 +791,7 @@
and allow PMP regions to overlap.
A large number of iterations will be required since this introduces a huge
state space of configurations.
iterations: 20
iterations: 600
gen_test: riscv_rand_instr_test
gen_opts: >
+instr_cnt=6000
@ -818,7 +819,7 @@
regions are set to execute only in both M and U modes. All other regions
are set to read/write only. Exceptions when reading/writing code or
executing data. Randomize mstatus.mprv.
iterations: 3
iterations: 20
gen_test: riscv_rand_instr_test
gen_opts: >
+instr_cnt=6000
@ -845,13 +846,14 @@
rtl_test: core_ibex_base_test
rtl_params:
PMPEnable: 1
timeout_s: 300
- test: riscv_epmp_mml_execute_only_test
desc: >
An enhanced PMP machine mode lockdown test - all PMP regions are set to
execute only. Exception is expected on any store or load. Randomize
mstatus.mprv.
iterations: 3
iterations: 20
gen_test: riscv_rand_instr_test
gen_opts: >
+instr_cnt=6000
@ -880,13 +882,14 @@
PMPEnable: 1
sim_opts: >
+is_double_fault_detected_fatal=0
timeout_s: 300
- test: riscv_epmp_mml_read_only_test
desc: >
An enhanced PMP machine mode lockdown test - all PMP regions are set to
shared read only. Exception is expected right after enabling MML. Randomize
mstatus.mprv.
iterations: 3
iterations: 20
gen_test: riscv_rand_instr_test
gen_opts: >
+instr_cnt=6000
@ -915,6 +918,7 @@
rtl_test: core_ibex_base_test
rtl_params:
PMPEnable: 1
timeout_s: 300
- test: riscv_epmp_mmwp_test
desc: >
@ -922,7 +926,7 @@
configured to default setting, enabling all forms of accesses, expect that
an exception when machine mode access memory not in PMP. Randomize
mstatus.mprv.
iterations: 3
iterations: 20
gen_test: riscv_rand_instr_test
gen_opts: >
+instr_cnt=6000
@ -935,13 +939,14 @@
PMPEnable: 1
sim_opts: >
+is_double_fault_detected_fatal=0
timeout_s: 300
- test: riscv_epmp_rlb_test
desc: >
An enhanced PMP rule lock bypass - all PMP regions are locked and enable
all forms of accesses, expect that no exception will be thrown even when
trying to change locked entries. Randomize mstatus.mprv.
iterations: 3
iterations: 20
gen_test: riscv_rand_instr_test
gen_opts: >
+instr_cnt=6000
@ -968,6 +973,7 @@
rtl_test: core_ibex_base_test
rtl_params:
PMPEnable: 1
timeout_s: 300
# Both an updated compiler and ISS are required to verify the bitmanip v.1.00
# and draft v.0.93 extensions. For now, disable the bitmanip tests.