1
0

Mitigate D$ hit -> branch -> NPC critical path

This commit is contained in:
Andrew Waterman
2013-11-24 14:19:46 -08:00
parent 53f726008b
commit 65b8340cea
3 changed files with 6 additions and 8 deletions

View File

@ -185,7 +185,7 @@ class Datapath(implicit conf: RocketConfiguration) extends Module
e(0)))
}
val ex_br_base = Mux(io.ctrl.ex_jalr, ex_rs1, ex_reg_pc)
val ex_br_offset = Mux(io.ctrl.ex_predicted_taken && !io.ctrl.ex_jalr, SInt(4), ex_imm(19,0).toSInt)
val ex_br_offset = Mux(io.ctrl.ex_predicted_taken, SInt(4), ex_imm(19,0).toSInt)
val ex_br64 = ex_br_base + ex_br_offset
val ex_br_msb = Mux(io.ctrl.ex_jalr, vaSign(ex_rs1, ex_br64), vaSign(ex_reg_pc, ex_br64))
val ex_br_addr = Cat(ex_br_msb, ex_br64(VADDR_BITS-1,0))