forked from Github_Repos/cvw
Found an issue where the btb was not forwarding the valid bit!
This commit is contained in:
parent
6d9c463893
commit
57deb68fb3
@ -56,6 +56,7 @@ module btb
|
||||
logic [`XLEN-1:0] PredPCD;
|
||||
logic [3:0] PredInstrClassD; // *** copy of reg outside module
|
||||
logic UpdateEn;
|
||||
logic TablePredValidF;
|
||||
|
||||
// hashing function for indexing the PC
|
||||
// We have Depth bits to index, but XLEN bits as the input.
|
||||
@ -93,9 +94,11 @@ module btb
|
||||
end else if ((UpdateEn) & ~StallM & ~FlushM) begin
|
||||
ValidBits[PCEIndex] <= #1 |InstrClassE;
|
||||
end
|
||||
PredValidF = ValidBits[PCNextFIndex];
|
||||
TablePredValidF = ValidBits[PCNextFIndex];
|
||||
end
|
||||
|
||||
assign PredValidF = MatchXF ? 1'b1 : TablePredValidF;
|
||||
|
||||
assign UpdateEn = |InstrClassE | PredictionInstrClassWrongE;
|
||||
|
||||
// An optimization may be using a PC relative address.
|
||||
|
Loading…
Reference in New Issue
Block a user