diff --git a/src/main/scala/coupledL2/MSHR.scala b/src/main/scala/coupledL2/MSHR.scala index 3de89303..a936e2dd 100644 --- a/src/main/scala/coupledL2/MSHR.scala +++ b/src/main/scala/coupledL2/MSHR.scala @@ -374,7 +374,7 @@ class MSHR(implicit p: Parameters) extends L2Module { ) mp_grant.metaWen := true.B mp_grant.tagWen := !dirResult.hit - mp_grant.dsWen := gotDirty && gotGrantData || probeDirty && (req_get || req.aliasTask.getOrElse(false.B)) + mp_grant.dsWen := (!dirResult.hit || gotDirty) && gotGrantData || probeDirty && (req_get || req.aliasTask.getOrElse(false.B)) mp_grant.fromL2pft.foreach(_ := req.fromL2pft.get) mp_grant.needHint.foreach(_ := false.B) mp_grant.replTask := !dirResult.hit // Get and Alias are hit that does not need replacement