tilelink: RAMModel must support source reuse
If a multibeat response comes back, the source might be reused. If response reordering has made the multibeat response invalid, we need to remember this even if the valid bit is cleared on reuse.
This commit is contained in:
parent
aff028f8f0
commit
f8b45564d1
@ -223,7 +223,7 @@ class TLRAMModel(log: String = "")(implicit p: Parameters) extends LazyModule
|
|||||||
val d_inc = d_inc_bytes.map(_ + d_inc_tree)
|
val d_inc = d_inc_bytes.map(_ + d_inc_tree)
|
||||||
val d_dec = d_dec_bytes.map(_ + d_dec_tree)
|
val d_dec = d_dec_bytes.map(_ + d_dec_tree)
|
||||||
val d_shadow = shadow.map(_.read(d_addr_hi))
|
val d_shadow = shadow.map(_.read(d_addr_hi))
|
||||||
val d_valid = valid(d.source)
|
val d_valid = valid(d.source) holdUnless d_first
|
||||||
|
|
||||||
// CRC check
|
// CRC check
|
||||||
val d_crc_reg = Reg(UInt(width = 16))
|
val d_crc_reg = Reg(UInt(width = 16))
|
||||||
|
Loading…
Reference in New Issue
Block a user