forked from Github_Repos/cvw
several options for pcnextf on fence.i
This commit is contained in:
parent
2df18cc758
commit
dedc08bd42
@ -269,8 +269,14 @@ module bpred
|
|||||||
|
|
||||||
mux2 #(`XLEN) pccorrectemux(.d0(PCLinkE), .d1(IEUAdrE), .s(PCSrcE), .y(PCCorrectE));
|
mux2 #(`XLEN) pccorrectemux(.d0(PCLinkE), .d1(IEUAdrE), .s(PCSrcE), .y(PCCorrectE));
|
||||||
// If the fence/csrw was predicted as a taken branch then we select PCF, rather PCE.
|
// If the fence/csrw was predicted as a taken branch then we select PCF, rather PCE.
|
||||||
// could also just use PCM+4
|
// could also just use PCM+4, which should be pclinke
|
||||||
mux2 #(`XLEN) pcmuxBPWrongInvalidateFlush(.d0(PCE), .d1(PCF), .s(BPPredWrongM), .y(NextValidPCE));
|
mux2 #(`XLEN) pcmuxBPWrongInvalidateFlush(.d0(PCE), .d1(PCF), .s(BPPredWrongM), .y(NextValidPCE));
|
||||||
|
//logic [`XLEN-1:0] PCLinkM;
|
||||||
|
//flopenr #(`XLEN) PCPEReg(clk, reset, ~StallM, PCLinkE, PCLinkM);
|
||||||
|
//assign NextValidPCE = PCLinkM;
|
||||||
|
// of the three, the mux is the cheapest, but the least clear.
|
||||||
|
// this could move entirely into ifu with no relation to bp with the third.
|
||||||
|
|
||||||
//assign NextValidPCE = PCE;
|
//assign NextValidPCE = PCE;
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user