From 4a3cc8b9c8f52c6f2037a2b60004d648094bc2a9 Mon Sep 17 00:00:00 2001 From: Rose Thompson Date: Mon, 18 Dec 2023 13:26:43 -0600 Subject: [PATCH] More progress towards verilator. --- testbench/common/DCacheFlushFSM.sv | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/testbench/common/DCacheFlushFSM.sv b/testbench/common/DCacheFlushFSM.sv index d82d4753a..334c6a6af 100644 --- a/testbench/common/DCacheFlushFSM.sv +++ b/testbench/common/DCacheFlushFSM.sv @@ -124,15 +124,22 @@ module copyShadow import cvw::*; #(parameter cvw_t P, output logic [P.XLEN-1:0] CacheTag, output logic CacheValid, output logic CacheDirty); + + logic [P.XLEN-1:0] TagExtend; + logic [P.XLEN-1:0] IndexExtend; + logic [P.XLEN-1:0] CacheWordExtend; + assign TagExtend = {{{P.XLEN-(P.PA_BITS-tagstart)}{1'b0}}, tag}; + assign IndexExtend = {{{P.XLEN-32}{1'b0}}, index}; + assign CacheWordExtend = {{{P.XLEN-32}{1'b0}}, cacheWord}; always_ff @(posedge clk) begin if(start) begin - CacheTag = tag; + CacheTag = TagExtend; CacheValid = valid; CacheDirty = dirty; CacheData = data; - CacheAdr = (tag << tagstart) + (index << loglinebytelen) + (cacheWord << $clog2(sramlen/8)); + CacheAdr = (TagExtend << tagstart) + (IndexExtend << loglinebytelen) + (CacheWordExtend << $clog2(sramlen/8)); end end