1
0

Bypass scoreboard to reduce MMIO latency

This commit is contained in:
Andrew Waterman 2017-04-22 22:13:40 -07:00 committed by Andrew Waterman
parent 845e6f7458
commit 36a7971975

View File

@ -520,7 +520,7 @@ class Rocket(implicit p: Parameters) extends CoreModule()(p)
val sboard = new Scoreboard(32, true) val sboard = new Scoreboard(32, true)
sboard.clear(ll_wen, ll_waddr) sboard.clear(ll_wen, ll_waddr)
val id_sboard_hazard = checkHazards(hazard_targets, sboard.read _) val id_sboard_hazard = checkHazards(hazard_targets, rd => sboard.read(rd) && !(ll_wen && ll_waddr === rd))
sboard.set(wb_set_sboard && wb_wen, wb_waddr) sboard.set(wb_set_sboard && wb_wen, wb_waddr)
// stall for RAW/WAW hazards on CSRs, loads, AMOs, and mul/div in execute stage. // stall for RAW/WAW hazards on CSRs, loads, AMOs, and mul/div in execute stage.