Fix DM I$ deadlock
BTB predictions were causing infinite miss loops
This commit is contained in:
parent
3a1b5f01b2
commit
dcde377303
@ -110,7 +110,7 @@ class Frontend(implicit c: ICacheConfig, lnconf: LogicalNetworkConfiguration) ex
|
|||||||
icache.io.req.bits.idx := Mux(io.cpu.req.valid, io.cpu.req.bits.pc, npc)
|
icache.io.req.bits.idx := Mux(io.cpu.req.valid, io.cpu.req.bits.pc, npc)
|
||||||
icache.io.invalidate := io.cpu.invalidate
|
icache.io.invalidate := io.cpu.invalidate
|
||||||
icache.io.req.bits.ppn := tlb.io.resp.ppn
|
icache.io.req.bits.ppn := tlb.io.resp.ppn
|
||||||
icache.io.req.bits.kill := io.cpu.req.valid || tlb.io.resp.miss
|
icache.io.req.bits.kill := io.cpu.req.valid || tlb.io.resp.miss || icmiss
|
||||||
icache.io.resp.ready := !stall && !s1_same_block
|
icache.io.resp.ready := !stall && !s1_same_block
|
||||||
|
|
||||||
io.cpu.resp.valid := s2_valid && (s2_xcpt_if || icache.io.resp.valid)
|
io.cpu.resp.valid := s2_valid && (s2_xcpt_if || icache.io.resp.valid)
|
||||||
|
Loading…
Reference in New Issue
Block a user