forked from Github_Repos/cvw
instrfaults not respecting stalls bugfix
This commit is contained in:
parent
1e3f683a9d
commit
02e924e55a
@ -162,7 +162,7 @@ module ifu (
|
||||
endgenerate
|
||||
|
||||
// Decode stage pipeline register and logic
|
||||
flopenl #(32) InstrDReg(clk, reset, ~StallD, (FlushD ? nop : InstrF), nop, InstrRawD);
|
||||
flopenl #(32) InstrDReg(clk, reset, ~StallD | FlushD, (FlushD ? nop : InstrF), nop, InstrRawD);
|
||||
flopenrc #(`XLEN) PCDReg(clk, reset, FlushD, ~StallD, PCF, PCD);
|
||||
|
||||
// expand 16-bit compressed instructions to 32 bits
|
||||
|
@ -125,10 +125,10 @@ module privileged (
|
||||
|
||||
// pipeline fault signals
|
||||
flopenrc #(1) faultregD(clk, reset, FlushD, ~StallD, InstrAccessFaultF, InstrAccessFaultD);
|
||||
floprc #(2) faultregE(clk, reset, FlushE,
|
||||
flopenrc #(2) faultregE(clk, reset, FlushE, ~StallE,
|
||||
{IllegalIEUInstrFaultD, InstrAccessFaultD}, // ** vs IllegalInstrFaultInD
|
||||
{IllegalIEUInstrFaultE, InstrAccessFaultE});
|
||||
floprc #(2) faultregM(clk, reset, FlushM,
|
||||
flopenrc #(2) faultregM(clk, reset, FlushM, ~StallM,
|
||||
{IllegalIEUInstrFaultE, InstrAccessFaultE},
|
||||
{IllegalIEUInstrFaultM, InstrAccessFaultM});
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user