From e1e3ac8274bd02954ff4d64ad9462ef4a8bb2f1b Mon Sep 17 00:00:00 2001 From: Hansung Kim Date: Wed, 16 Oct 2024 22:22:27 -0700 Subject: [PATCH] tensor: Fix busy state --- src/main/scala/radiance/core/TensorCoreDecoupled.scala | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/main/scala/radiance/core/TensorCoreDecoupled.scala b/src/main/scala/radiance/core/TensorCoreDecoupled.scala index 154a3cf..652608b 100644 --- a/src/main/scala/radiance/core/TensorCoreDecoupled.scala +++ b/src/main/scala/radiance/core/TensorCoreDecoupled.scala @@ -128,7 +128,13 @@ class TensorCoreDecoupled( ) } } - when(io.writeback.fire) { + + // TODO: @perf: Instead of waiting until the last writeback, release busy as + // soon as the access frontend is complete so that there's a better chance to + // saturate the backend with back-to-back HGMMAs. This would require sending + // the 'wid' register to backend instead of having it shared with the + // frontend. + when(io.writeback.fire && io.writeback.bits.last) { busy := false.B }