diff --git a/uncore/src/main/scala/cache.scala b/uncore/src/main/scala/cache.scala index edc9b015..da383ee8 100644 --- a/uncore/src/main/scala/cache.scala +++ b/uncore/src/main/scala/cache.scala @@ -410,10 +410,9 @@ class TSHRFile(implicit p: Parameters) extends L2HellaCacheModule()(p) tracker.inner.release.bits := io.inner.release.bits tracker.inner.release.valid := io.inner.release.valid } - assert(PopCount(releaseReadys) <= UInt(nReleaseTransactors), + assert(!io.inner.release.valid || PopCount(releaseReadys) <= UInt(1), "At most a single tracker should match for any given Release") - assert(!io.inner.release.valid || - io.inner.release.bits.isVoluntary() || releaseReadys.orR, + assert(!io.inner.release.valid || io.irel().isVoluntary() || releaseReadys.orR, "Non-voluntary release should always have a Tracker waiting for it.") // Wire probe requests and grant reply to clients, finish acks from clients