Merge branch 'CHERI' into jdw57-512axi

This commit is contained in:
Jonathan Woodruff
2023-02-21 12:18:02 +00:00
2 changed files with 15 additions and 8 deletions

View File

@@ -147,6 +147,7 @@ module mkCoreW (CoreW_IFC #(t_n_irq));
`endif
, .ifc}
<- mkCoreW_reset ( rst, reset_by newRst.new_rst);
(* no_implicit_conditions, fire_when_enabled *)
rule rl_forward_debug_reset (otherRst);
newRst.assertReset;
endrule

View File

@@ -519,6 +519,8 @@ function DecodeResult decode(Instruction inst, Bool cap_mode);
dInst.csr = tagged Invalid;
dInst.execFunc = tagged Br AT;
if (funct3 != 0) illegalInst = True;
dInst.capChecks.check_enable = True;
dInst.capChecks.check_low_src = Src1Addr;
dInst.capChecks.check_high_src = Src1AddrPlus2;
@@ -542,14 +544,18 @@ function DecodeResult decode(Instruction inst, Bool cap_mode);
opcBranch: begin
dInst.iType = Br;
dInst.execFunc = tagged Br (case(funct3)
fnBEQ: Eq;
fnBNE: Neq;
fnBLT: Lt;
fnBLTU: Ltu;
fnBGE: Ge;
fnBGEU: Geu;
endcase);
ExecFunc execFunc = ?;
{illegalInst, execFunc} = case(funct3)
fnBEQ: tuple2(False, Br(Eq));
fnBNE: tuple2(False, Br(Neq));
fnBLT: tuple2(False, Br(Lt));
fnBLTU: tuple2(False, Br(Ltu));
fnBGE: tuple2(False, Br(Ge));
fnBGEU: tuple2(False, Br(Geu));
default: tuple2(True, Br(?));
endcase;
dInst.execFunc = execFunc;
regs.dst = Invalid;
regs.src1 = Valid(tagged Gpr rs1);
regs.src2 = Valid(tagged Gpr rs2);