[BUG] <Unrecognized an illegal instruction >
Created by: AyoubJalali
Is there an existing CVA6 bug for this?
-
I have searched the existing bug issues
Bug Description
Hello, so in order create several test to cover all possible instruction in ISA spec, I try also to inject some illegal instructions in some test, so the surprise is that the CVA6 didn't raise an exception on an illegal instruction (0x09994433), and continue to execute next instruction without raising an exception : 09994433 => b0000 1001 1001 1001 0100 0100 0011 0011 (illegal funct7 = 0000 100)
so to reproduce the bug you just need to insert .4byte 0x09994433 in your Assembly test or :
- Add the yaml description of the test in cva6_base_testlist.yaml
- test: riscv_arithmetic_basic_illegal description: > Arithmetic instruction test, no load/store/branch instructions gen_opts: > +instr_cnt=500 +num_of_sub_program=0 +no_data_page=1 +no_branch_jump=1 +boot_mode=m +no_csr_instr=1 +illegal_instr_ratio=100 +tvec_alignment=8 iterations: 2 gen_test: riscv_instr_base_test rtl_test: core_base_test
and run the commend : python3 cva6.py --testlist=cva6_base_testlist.yaml --test riscv_arithmetic_basic_illegal --iss_yaml cva6.yaml --target cv32a60x --iss=vcs-uvm,spike -i 10 --simulator_yaml ../env/corev-dv/simulator.yaml --iss_timeout 300 --seed 3512599541 in core-v-verif/cva6/sim (branch cva6/dev & RTL matser), normally you should get your failing test (the 3th one)