@@ -25,6 +25,9 @@ package cva6_config_pkg;
2525 localparam CVA6ConfigAxiDataWidth = 128 ;
2626 localparam CVA6ConfigDataUserWidth = 12 ;
2727
28+ localparam CVA6ConfigICacheSpmAddrBase = 56'h01A0_0000 ;
29+ localparam CVA6ConfigDCacheSpmAddrBase = 56'h0180_0000 ;
30+
2831
2932`ifndef __UVMA_AXI_MACROS_SV__
3033 `define __UVMA_AXI_MACROS_SV__
@@ -108,9 +111,9 @@ localparam config_pkg::cva6_user_cfg_t cva6_cfg = '{
108111 NrNonIdempotentRules : unsigned'(2 ),
109112 NonIdempotentAddrBase : 1024 '({ 64'b0 , 64'b0 } ),
110113 NonIdempotentLength : 1024 '({ 64'b0 , 64'b0 } ),
111- NrExecuteRegionRules : unsigned'(6 ),
112- ExecuteRegionAddrBase : 1024 '({ 64'h1_0000_0000 , 64'h8000_0000 , 64'h300_0000 , 64'h0 , 64'h2000_0000 , 64'h8_0000_0000 } ),
113- ExecuteRegionLength : 1024 '({ 64'h2_0000_0000 , 64'h1_0000 , 64'h1000 , 64'h1_0000 , 64'h2000_0000 , 64'h7_FFFF_FFFF } ),
114+ NrExecuteRegionRules : unsigned'(7 ),
115+ ExecuteRegionAddrBase : 1024 '({ 64'h1_0000_0000 , 64'h8000_0000 , 64 '(CVA6ConfigICacheSpmAddrBase), 64' h300_0000 , 64'h0 , 64'h2000_0000 , 64'h8_0000_0000 } ),
116+ ExecuteRegionLength : 1024 '({ 64'h2_0000_0000 , 64'h1_0000 , 64 '(CVA6ConfigIcacheByteSize), 64' h1000 , 64'h1_0000 , 64'h2000_0000 , 64'h7_FFFF_FFFF } ),
114117 NrCachedRegionRules : unsigned'(2 ),
115118 CachedRegionAddrBase : 1024 '({ 64'h1_0000_0000 , 64'h8000_0000 } ),
116119 CachedRegionLength : 1024 '({ 64'h2_0000_0000 , 64'h1_0000 } ),
@@ -125,6 +128,10 @@ localparam config_pkg::cva6_user_cfg_t cva6_cfg = '{
125128 IcacheByteSize : unsigned'(32768 ),
126129 IcacheSetAssoc : unsigned'(8 ),
127130 IcacheLineWidth : unsigned'(512 ),
131+ ICacheSpmAddrBase : 56 '(CVA6ConfigICacheSpmAddrBase),
132+ ICacheSpmLength : 56 '(CVA6ConfigIcacheByteSize),
133+ DCacheSpmAddrBase : 56 '(CVA6ConfigDCacheSpmAddrBase),
134+ DCacheSpmLength : 56 '(CVA6ConfigDcacheByteSize),
128135 DCacheType : config_pkg :: HPDCACHE_WT ,
129136 DcacheByteSize : unsigned'(32768 ),
130137 DcacheSetAssoc : unsigned'(8 ),
0 commit comments