diff --git a/sram/verilog/sl_sram.v b/sram/verilog/sl_sram.v index f0e05b621654bced2d4e5702b2ec0ad3afd21e9e..d99ee2d6cafc870342b35177f9102d8864b7822d 100644 --- a/sram/verilog/sl_sram.v +++ b/sram/verilog/sl_sram.v @@ -32,12 +32,17 @@ module sl_sram #( output wire [31:0] RDATA ); -localparam TIE_EMA = 3'b010; -localparam TIE_EMAW = 2'b00; -wire GWEN = (&WREN); -wire [31:0] WEN; -assign WEN = ({{8{WREN[3]}},{8{WREN[2]}},{8{WREN[1]}},{8{WREN[0]}}}); -localparam TIE_RET1N = 1'b1; +// fixed pre-compiled 16K instance supported +localparam TIE_EMA = 3'b010; +localparam TIE_EMAW = 2'b00; +wire [11:0] ADDR12 = ADDR; +wire [31:0] WDATA32 = WDATA; +wire [31:0] RDATA32; +assign RDATA = RDATA32; +wire CEN = !CS; +wire GWEN = &(~WREN); +wire [31:0] WEN32 = { {8{!WREN[3]}},{8{!WREN[2]}},{8{!WREN[1]}},{8{!WREN[0]}} }; +localparam TIE_RET1N = 1'b1; rf_sp_hdf u_rf_sp_hdf ( @@ -45,15 +50,15 @@ localparam TIE_RET1N = 1'b1; .VDD (VDD), .VSS (VSS), `endif - .Q (RDATA), - .CLK (CLK), - .CEN (!CS), - .WEN (WEN), - .A (ADDR), - .D (WDATA), - .EMA (TIE_EMA), - .EMAW (TIE_EMAW), - .GWEN (GWEN), + .Q (RDATA32), + .CLK (HCLK), + .CEN (CEN), + .WEN (WEN32), + .A (ADDR12), + .D (WDATA32), + .EMA (TIE_EMA), + .EMAW (TIE_EMAW), + .GWEN (GWEN), .RET1N (TIE_RET1N) );