From 9123228244408facc5902732a622bd2c5c97f3bf Mon Sep 17 00:00:00 2001 From: Nils Wistoff Date: Fri, 27 Sep 2024 13:41:19 +0200 Subject: [PATCH] fixup! Add self-invalidation coherence Signed-off-by: Nils Wistoff --- core/cache_subsystem/std_nbdcache.sv | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/core/cache_subsystem/std_nbdcache.sv b/core/cache_subsystem/std_nbdcache.sv index 18e6c3f213..43e639c66a 100644 --- a/core/cache_subsystem/std_nbdcache.sv +++ b/core/cache_subsystem/std_nbdcache.sv @@ -55,17 +55,17 @@ module std_nbdcache logic [CVA6Cfg.DCACHE_TAG_WIDTH-1:0] tag; // tag array logic [CVA6Cfg.DCACHE_LINE_WIDTH-1:0] data; // data array logic valid; // state array - logic dirty; // state array - }; - localparam type cl_be_t = struct packed { - logic [(CVA6Cfg.DCACHE_TAG_WIDTH+7)/8-1:0] tag; // byte enable into tag array - logic [(CVA6Cfg.DCACHE_LINE_WIDTH+7)/8-1:0] data; // byte enable into data array - logic [CVA6Cfg.DCACHE_SET_ASSOC-1:0] vldrty; // bit enable into state array (valid for a pair of dirty/valid bits) + logic [(CVA6Cfg.DCACHE_LINE_WIDTH-1+7)/8-1:0] dirty; // state array }; typedef struct packed { logic [CVA6Cfg.DCACHE_LINE_WIDTH/8-1:0] dirty; logic valid; } vldrty_t; + localparam type cl_be_t = struct packed { + logic [(CVA6Cfg.DCACHE_TAG_WIDTH+7)/8-1:0] tag; // byte enable into tag array + logic [(CVA6Cfg.DCACHE_LINE_WIDTH+7)/8-1:0] data; // byte enable into data array + vldrty_t [CVA6Cfg.DCACHE_SET_ASSOC-1:0] vldrty; // bit enable into state array (valid for a pair of dirty/valid bits) + }; // ------------------------------- // Controller <-> Arbiter