@@ -21,7 +21,7 @@ module soc_proxy_core_reg_top (
2121
2222 import soc_proxy_reg_pkg :: * ;
2323
24- localparam int AW = 4 ;
24+ localparam int AW = 5 ;
2525 localparam int DW = 32 ;
2626 localparam int DBW = DW / 8 ; // Byte Width
2727
@@ -52,9 +52,9 @@ module soc_proxy_core_reg_top (
5252
5353 // also check for spurious write enables
5454 logic reg_we_err;
55- logic [3 : 0 ] reg_we_check;
55+ logic [4 : 0 ] reg_we_check;
5656 prim_reg_we_check # (
57- .OneHotWidth (4 )
57+ .OneHotWidth (5 )
5858 ) u_prim_reg_we_check (
5959 .clk_i (clk_i),
6060 .rst_ni (rst_ni),
@@ -159,6 +159,7 @@ module soc_proxy_core_reg_top (
159159 logic alert_test_recov_alert_external_1_wd;
160160 logic alert_test_recov_alert_external_2_wd;
161161 logic alert_test_recov_alert_external_3_wd;
162+ logic dummy_qs;
162163
163164 // Register instances
164165 // R[intr_state]: V(False)
@@ -706,13 +707,19 @@ module soc_proxy_core_reg_top (
706707 assign reg2hw.alert_test.recov_alert_external_3.qe = alert_test_qe;
707708
708709
710+ // R[dummy]: V(False)
711+ // constant-only read
712+ assign dummy_qs = 1'h0 ;
709713
710- logic [3 : 0 ] addr_hit;
714+
715+
716+ logic [4 : 0 ] addr_hit;
711717 always_comb begin
712718 addr_hit[0 ] = (reg_addr == SOC_PROXY_INTR_STATE_OFFSET );
713719 addr_hit[1 ] = (reg_addr == SOC_PROXY_INTR_ENABLE_OFFSET );
714720 addr_hit[2 ] = (reg_addr == SOC_PROXY_INTR_TEST_OFFSET );
715721 addr_hit[3 ] = (reg_addr == SOC_PROXY_ALERT_TEST_OFFSET );
722+ addr_hit[4 ] = (reg_addr == SOC_PROXY_DUMMY_OFFSET );
716723 end
717724
718725 assign addrmiss = (reg_re || reg_we) ? ~| addr_hit : 1'b0 ;
@@ -723,7 +730,8 @@ module soc_proxy_core_reg_top (
723730 ((addr_hit[0 ] & (| (SOC_PROXY_CORE_PERMIT [0 ] & ~ reg_be))) |
724731 (addr_hit[1 ] & (| (SOC_PROXY_CORE_PERMIT [1 ] & ~ reg_be))) |
725732 (addr_hit[2 ] & (| (SOC_PROXY_CORE_PERMIT [2 ] & ~ reg_be))) |
726- (addr_hit[3 ] & (| (SOC_PROXY_CORE_PERMIT [3 ] & ~ reg_be)))));
733+ (addr_hit[3 ] & (| (SOC_PROXY_CORE_PERMIT [3 ] & ~ reg_be))) |
734+ (addr_hit[4 ] & (| (SOC_PROXY_CORE_PERMIT [4 ] & ~ reg_be)))));
727735 end
728736
729737 // Generate write-enables
@@ -802,6 +810,7 @@ module soc_proxy_core_reg_top (
802810 reg_we_check[1 ] = intr_enable_we;
803811 reg_we_check[2 ] = intr_test_we;
804812 reg_we_check[3 ] = alert_test_we;
813+ reg_we_check[4 ] = 1'b0 ;
805814 end
806815
807816 // Read data return
@@ -852,6 +861,10 @@ module soc_proxy_core_reg_top (
852861 reg_rdata_next[28 ] = '0 ;
853862 end
854863
864+ addr_hit[4 ]: begin
865+ reg_rdata_next[0 ] = dummy_qs;
866+ end
867+
855868 default : begin
856869 reg_rdata_next = '1 ;
857870 end
0 commit comments