diff --git a/core/cva6_tip.sv b/core/cva6_tip.sv index 973aef4046d..d69ac1257b1 100644 --- a/core/cva6_tip.sv +++ b/core/cva6_tip.sv @@ -57,12 +57,14 @@ endgenerate -//TIP signals -always_comb begin - for (int i = 0; i < cva6_config_pkg::CVA6ConfigNrCommitPorts; i++) begin - logic exception, mem_exception; - exception = commit_instr_i[i].valid && ex_commit_i.valid; - mem_exception = exception && + + + //TIP signals + always_comb begin + for (int i = 0; i < cva6_config_pkg::CVA6ConfigNrCommitPorts; i++) begin + logic exception, mem_exception; + exception = commit_instr_i[i].valid && ex_commit_i.valid; + mem_exception = exception && (ex_commit_i.cause == riscv::INSTR_ADDR_MISALIGNED || ex_commit_i.cause == riscv::INSTR_ACCESS_FAULT || ex_commit_i.cause == riscv::ILLEGAL_INSTR ||