From c2a9fbb1fc4dab54430d2ca7da774686f5cea10b Mon Sep 17 00:00:00 2001 From: Ross Thompson Date: Mon, 21 Aug 2023 17:51:51 -0500 Subject: [PATCH] Fixed bug with the cbo.inval clearing already cleared lines. --- src/cache/cachefsm.sv | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/cache/cachefsm.sv b/src/cache/cachefsm.sv index 5be35a1a8..8f0e7aa2d 100644 --- a/src/cache/cachefsm.sv +++ b/src/cache/cachefsm.sv @@ -156,7 +156,7 @@ module cachefsm import cvw::*; #(parameter cvw_t P, // write enables internal to cache assign SetValid = CurrState == STATE_WRITE_LINE | (CurrState == STATE_READY & CMOp[3]); // *** RT: NOT completely right has to be a hit - assign ClearValid = P.ZICBOM_SUPPORTED & ((CurrState == STATE_READY & CMOp[0]) | + assign ClearValid = P.ZICBOM_SUPPORTED & ((CurrState == STATE_READY & CMOp[0] & CacheHit) | (CurrState == STATE_CMO_WRITEBACK & CMOp[2] & CacheBusAck)); // coverage off -item e 1 -fecexprrow 8 assign LRUWriteEn = (CurrState == STATE_READY & AnyHit) |