diff --git a/dvtestplan.md b/dvtestplan.md new file mode 100644 index 00000000..3b469e3b --- /dev/null +++ b/dvtestplan.md @@ -0,0 +1,30 @@ +# core-v-wally Design Verification Test Plan + +This document outlines the test plan for the Wally rv64gc configuration to reach Technology Readiness Level 5. + +1. Pass riscv-arch-test +2. Boot Linux +3. FPU pass all TestFloat vectors +4. Performance verification: Caches and branch predictor miss rates match independent simulation +5. Directed tests + - Privileged unit: Chapter 5 test plan + - MMU: PMA, PMP, virtual memory: Chapter 8 test plan + - Peripherals: Chapter 16 test plan +6. Random tests + - riscdv tests +7. Coverage tests + - Directed tests to bring coverage up to 100%. + - Statement, experssion, branch, condition, FSM coverage in Questa + - Do not measure toggle coverage + +All tests operate correctly in lock-step with ImperasDV + +Open questions: +1. How to define extent of riscdv random tests needed? +2. What other directed tests? + PMP Tests + Virtual Memory Tests + How to define pipeline tests? + Simple ones like use after load stall are not important. + Hard ones such as page table walker fault during data access while I$ access is pending are hard to articulate and code + Is there an example of a good directed pipeline test plan & implementation