Improved RAS predictor coverage by eliminating unreachable StallM term

This commit is contained in:
David Harris 2023-04-07 21:37:12 -07:00
parent 5cdd3d57c7
commit 2f4074b9c2

View File

@ -62,7 +62,7 @@ module RASPredictor #(parameter int StackSize = 16 )(
assign PushE = CallE & ~StallM & ~FlushM; assign PushE = CallE & ~StallM & ~FlushM;
assign WrongPredReturnD = (BPReturnWrongD) & ~StallE & ~FlushE; assign WrongPredReturnD = (BPReturnWrongD) & ~StallE & ~FlushE;
assign FlushedReturnDE = (~StallE & FlushE & ReturnD) | (~StallM & FlushM & ReturnE); // flushed return assign FlushedReturnDE = (~StallE & FlushE & ReturnD) | (FlushM & ReturnE); // flushed return
assign RepairD = WrongPredReturnD | FlushedReturnDE ; assign RepairD = WrongPredReturnD | FlushedReturnDE ;