Skip to content

Commit

Permalink
7 SRAMs
Browse files Browse the repository at this point in the history
  • Loading branch information
Peter-Herrmann committed Nov 6, 2023
1 parent e6d55c2 commit 0552563
Show file tree
Hide file tree
Showing 3 changed files with 27 additions and 8 deletions.
2 changes: 1 addition & 1 deletion openlane/user_project_wrapper/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@
"ROUTING_CORES": 20,
"KLAYOUT_XOR_THREADS": 20,
"FP_IO_UNMATCHED_ERROR": 0,
"FP_PDN_MACRO_HOOKS": "soc_i.sram.sram0 vccd1 vssd1 vccd1 vssd1, soc_i.sram.sram1 vccd1 vssd1 vccd1 vssd1, soc_i.sram.sram2 vccd1 vssd1 vccd1 vssd1, soc_i.sram.sram3 vccd1 vssd1 vccd1 vssd1, soc_i.sram.sram4 vccd1 vssd1 vccd1 vssd1, soc_i.sram.sram5 vccd1 vssd1 vccd1 vssd1",
"FP_PDN_MACRO_HOOKS": "soc_i.sram.sram0 vccd1 vssd1 vccd1 vssd1, soc_i.sram.sram1 vccd1 vssd1 vccd1 vssd1, soc_i.sram.sram2 vccd1 vssd1 vccd1 vssd1, soc_i.sram.sram3 vccd1 vssd1 vccd1 vssd1, soc_i.sram.sram4 vccd1 vssd1 vccd1 vssd1, soc_i.sram.sram5 vccd1 vssd1 vccd1 vssd1, soc_i.sram.sram6 vccd1 vssd1 vccd1 vssd1",
"CLOCK_PORT": "user_clock2",
"FP_SIZING": "absolute",
"DIE_AREA": "0 0 2920 3520",
Expand Down
13 changes: 7 additions & 6 deletions openlane/user_project_wrapper/macro.cfg
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
soc_i.sram.sram0 376.9 250.38 MY
soc_i.sram.sram1 376.9 1466.92 R180
soc_i.sram.sram2 376.9 2683.46 MY
soc_i.sram.sram0 376.9 300 R180
soc_i.sram.sram1 376.9 1134.5 MY
soc_i.sram.sram2 376.9 1968.97 R180
soc_i.sram.sram3 376.9 2803.46 MY

soc_i.sram.sram3 1860 250.38 R0
soc_i.sram.sram4 1860 1466.92 MX
soc_i.sram.sram5 1860 2683.46 R0
soc_i.sram.sram6 1860 1134.5 R0
soc_i.sram.sram7 1860 1968.97 MX
soc_i.sram.sram8 1860 2803.46 R0
20 changes: 19 additions & 1 deletion verilog/rtl/rtl/soc/modules/sram_wrap.sv
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

module sram_wrap #(
parameter SRAM_BASE_ADDR = 32'h8000_0000,
parameter SRAM_NUM_BLOCKS = 6,
parameter SRAM_NUM_BLOCKS = 7,
parameter SRAM_BLOCK_SIZE = 512,
parameter SRAM_LOG_BLOCK_SIZE = $clog2(SRAM_BLOCK_SIZE),
parameter SRAM_END_ADDR = (SRAM_BASE_ADDR + (SRAM_NUM_BLOCKS * SRAM_BLOCK_SIZE)),
Expand Down Expand Up @@ -209,6 +209,24 @@ module sram_wrap #(
.dout1 (sram_i_read_vec[5])
);

sky130_sram_2kbyte_1rw1r_32x512_8 #(.DELAY(0)) sram6 (
`ifdef USE_POWER_PINS
.vccd1(vccd1), // 1.8V
.vssd1(vssd1), // Digital ground
`endif
.clk0 (clk_i),
.csb0 (~cs_data[6]), // Active Low
.web0 (~sram_d_we_i), // Active Low
.wmask0 (sram_d_be_i),
.addr0 (sram_d_addr_i[SRAM_LOG_BLOCK_SIZE+2 -1 : 2]),
.din0 (sram_d_wdata_i),
.dout0 (sram_d_read_vec[6]),
.clk1 (clk_i),
.csb1 (~cs_inst[6]), // Active Low
.addr1 (sram_i_addr_i[SRAM_LOG_BLOCK_SIZE+2-1 : 2]),
.dout1 (sram_i_read_vec[6])
);


`ifdef VERILATOR
logic [31:0] _unused;
Expand Down

0 comments on commit 0552563

Please sign in to comment.