diff options
| author | Warrick Lo <wlo@warricklo.net> | 2026-06-15 14:57:20 -0700 |
|---|---|---|
| committer | Warrick Lo <wlo@warricklo.net> | 2026-06-15 14:57:20 -0700 |
| commit | 33e2b4bc3a82c5e1246d1def2e14b04cc3cc45ad (patch) | |
| tree | 2bc52a0b97f1f8d56f500f7d0cd427faabc37221 | |
| parent | Add register file with chunk access (diff) | |
| download | montreal-33e2b4bc3a82c5e1246d1def2e14b04cc3cc45ad.tar.xz montreal-33e2b4bc3a82c5e1246d1def2e14b04cc3cc45ad.zip | |
Add asynchronous reset to register file
Signed-off-by: Warrick Lo <wlo@warricklo.net>
Diffstat (limited to '')
| -rw-r--r-- | rtl/regfile.sv | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/rtl/regfile.sv b/rtl/regfile.sv index 39b4c79..1758c1a 100644 --- a/rtl/regfile.sv +++ b/rtl/regfile.sv @@ -25,6 +25,7 @@ module regfile #( localparam int unsigned NUM_CHUNKS = WORD_WIDTH / CHUNK_WIDTH ) ( input logic clk_i, + input logic rst_ni, input logic [$clog2(NUM_CHUNKS)-1:0] chunk_sel_i, input logic [NUM_READ_PORTS-1:0][ ADDR_WIDTH-1:0] raddr_i, @@ -45,7 +46,9 @@ module regfile #( end always_ff @(posedge clk_i) begin - if (wen_i && (waddr_i != '0)) begin + if (!rst_ni) begin + register <= '0; + end else if (wen_i && (waddr_i != '0)) begin /* verilog_lint: waive dff-name-style */ register[waddr_i][chunk_sel_i*CHUNK_WIDTH +: CHUNK_WIDTH] <= wdata_i; end |