From 5c01cc3cf38f617ae6c9d841171531cceabb12bd Mon Sep 17 00:00:00 2001 From: zhanglinjuan Date: Sat, 6 Aug 2022 10:21:05 +0800 Subject: [PATCH] WritebackQueue: fix bug when ProbeAck is merged with a ReleaseData (#1709) --- .../xiangshan/cache/dcache/mainpipe/WritebackQueue.scala | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/scala/xiangshan/cache/dcache/mainpipe/WritebackQueue.scala b/src/main/scala/xiangshan/cache/dcache/mainpipe/WritebackQueue.scala index bfda99578..2e37367f5 100644 --- a/src/main/scala/xiangshan/cache/dcache/mainpipe/WritebackQueue.scala +++ b/src/main/scala/xiangshan/cache/dcache/mainpipe/WritebackQueue.scala @@ -358,7 +358,7 @@ class WritebackEntry(edge: TLEdgeOut)(implicit p: Parameters) extends DCacheModu req.voluntary := false.B req.hasData := req.hasData || io.req.bits.hasData req.dirty := req.dirty || io.req.bits.dirty - s_data_override := false.B + // s_data_override := false.B req.delay_release := false.B remain_set := Mux(req.hasData || io.req.bits.hasData, ~0.U(refillCycles.W), 1.U(refillCycles.W)) } @@ -483,7 +483,7 @@ class WritebackEntry(edge: TLEdgeOut)(implicit p: Parameters) extends DCacheModu data := mergeData(data, io.release_update.bits.data_delayed, io.release_update.bits.mask_delayed) } - when (!s_data_override) { + when (!s_data_override && req.hasData) { data := io.req_data.data } -- GitLab