1717`timescale 1ns / 10ps
1818
1919module sdctrl_cache # (
20- parameter bit async_reset = 1'b0
20+ parameter logic async_reset = 1'b0
2121)
2222(
2323 input logic i_clk, // CPU clock
@@ -60,15 +60,16 @@ logic line_hit_o;
6060// Snoop signals:
6161logic [CFG_SDCACHE_ADDR_BITS - 1 : 0 ] line_snoop_addr_i;
6262logic [SDCACHE_FL_TOTAL - 1 : 0 ] line_snoop_flags_o;
63- sdctrl_cache_registers r, rin;
63+ sdctrl_cache_registers r;
64+ sdctrl_cache_registers rin;
6465
6566TagMem # (
66- .async_reset (async_reset),
6767 .abus (abus),
6868 .ibits (ibits),
6969 .lnbits (lnbits),
7070 .flbits (flbits),
71- .snoop (0 )
71+ .snoop (0 ),
72+ .async_reset (async_reset)
7273) mem0 (
7374 .i_clk (i_clk),
7475 .i_nrst (i_nrst),
@@ -106,6 +107,7 @@ begin: comb_proc
106107 logic v_mem_addr_last;
107108 logic [CFG_SDCACHE_ADDR_BITS - 1 : 0 ] vb_addr_direct_next;
108109
110+ v = r;
109111 vb_cache_line_i_modified = '0 ;
110112 vb_line_rdata_o_modified = '0 ;
111113 vb_line_rdata_o_wstrb = '0 ;
@@ -125,8 +127,6 @@ begin: comb_proc
125127 v_mem_addr_last = 1'b0 ;
126128 vb_addr_direct_next = '0 ;
127129
128- v = r;
129-
130130 ridx = r.req_addr[(CFG_LOG2_SDCACHE_BYTES_PER_LINE - 1 ): 3 ];
131131 v_mem_addr_last = (& r.mem_addr[9 : CFG_LOG2_SDCACHE_BYTES_PER_LINE ]);
132132
@@ -347,7 +347,7 @@ begin: comb_proc
347347 end
348348 endcase
349349
350- if (~ async_reset && i_nrst == 1'b0 ) begin
350+ if (( ~ async_reset) && ( i_nrst == 1'b0 ) ) begin
351351 v = sdctrl_cache_r_reset;
352352 end
353353
@@ -371,26 +371,25 @@ begin: comb_proc
371371 rin = v;
372372end : comb_proc
373373
374-
375374generate
376- if (async_reset) begin : async_rst_gen
375+ if (async_reset) begin : async_r_en
377376
378- always_ff @ (posedge i_clk, negedge i_nrst) begin : rg_proc
377+ always_ff @ (posedge i_clk, negedge i_nrst) begin
379378 if (i_nrst == 1'b0 ) begin
380379 r <= sdctrl_cache_r_reset;
381380 end else begin
382381 r <= rin;
383382 end
384- end : rg_proc
383+ end
385384
386- end : async_rst_gen
387- else begin : no_rst_gen
385+ end : async_r_en
386+ else begin : async_r_dis
388387
389- always_ff @ (posedge i_clk) begin : rg_proc
388+ always_ff @ (posedge i_clk) begin
390389 r <= rin;
391- end : rg_proc
390+ end
392391
393- end : no_rst_gen
392+ end : async_r_dis
394393endgenerate
395394
396395endmodule : sdctrl_cache
0 commit comments