From 104fbce32864c36fc69eb2d8802eb3114d2faa18 Mon Sep 17 00:00:00 2001 From: Zhu Yu Date: Wed, 8 Apr 2026 11:44:19 +0800 Subject: [PATCH 1/2] fix(SinkA): return IDLE when cmoAll finished --- src/main/scala/coupledL2/SinkA.scala | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/main/scala/coupledL2/SinkA.scala b/src/main/scala/coupledL2/SinkA.scala index 794d449d7..e3a4b5df4 100644 --- a/src/main/scala/coupledL2/SinkA.scala +++ b/src/main/scala/coupledL2/SinkA.scala @@ -188,6 +188,9 @@ class SinkA(implicit p: Parameters) extends L2Module { when (stateVal === sWAITMSHR && !mshrValid) { state.foreach { _ := sCMOREQ } } + when (stateVal === sDONE && !l2Flush) { + state.foreach { _ := sIDLE } + } // Performance counters // num of reqs From fa4657c296da18e27f0953937e831f779929f09f Mon Sep 17 00:00:00 2001 From: Zhu Yu Date: Wed, 8 Apr 2026 18:24:37 +0800 Subject: [PATCH 2/2] fix(SinkA): reset cmoAll set/way when return to IDLE --- src/main/scala/coupledL2/SinkA.scala | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/scala/coupledL2/SinkA.scala b/src/main/scala/coupledL2/SinkA.scala index e3a4b5df4..88cde19c1 100644 --- a/src/main/scala/coupledL2/SinkA.scala +++ b/src/main/scala/coupledL2/SinkA.scala @@ -190,6 +190,8 @@ class SinkA(implicit p: Parameters) extends L2Module { } when (stateVal === sDONE && !l2Flush) { state.foreach { _ := sIDLE } + set.foreach { _ := 0.U } + way.foreach { _ := 0.U } } // Performance counters