Add a new sram_1rw1r_32_256_8_sky130 wrapper
- includes extended pins for routability and two extra power stripes to
automate power routing
diff --git a/openlane/storage/config.tcl b/openlane/storage/config.tcl
index 689258e..15743c6 100644
--- a/openlane/storage/config.tcl
+++ b/openlane/storage/config.tcl
@@ -1,32 +1,40 @@
set script_dir [file dirname [file normalize [info script]]]
set ::env(DESIGN_NAME) storage
+set ::env(SYNTH_TOP_LEVEL) 1
set ::env(CLOCK_PORT) "mgmt_clk"
set ::env(CLOCK_PERIOD) "50"
-set ::env(SYNTH_STRATEGY) 2
+set ::env(CLOCK_TREE_SYNTH) 0
set ::env(PDN_CFG) $script_dir/pdn.tcl
-#set ::env(FP_PIN_ORDER_CFG) $script_dir/pin_order.cfg
+set ::env(FP_PIN_ORDER_CFG) $script_dir/pin_order.cfg
# set ::env(FP_CORE_UTIL) 40
set ::env(FP_SIZING) absolute
-set ::env(DIE_AREA) "0 0 950 1900"
+set ::env(DIE_AREA) "0 0 450 950"
set ::env(FP_HORIZONTAL_HALO) 5
-set ::env(FP_VERTICAL_HALO) 10
-set ::env(FP_PDN_VPITCH) 50
+set ::env(FP_VERTICAL_HALO) 14
+set ::env(FP_PDN_VOFFSET) 5
+set ::env(FP_PDN_VPITCH) 20
set ::env(FP_PDN_HPITCH) 50
set ::env(MACRO_PLACEMENT_CFG) $script_dir/macro_placement.cfg
-set ::env(PL_TARGET_DENSITY) 0.45
+set ::env(PL_TARGET_DENSITY) 0.99
set ::env(PL_OPENPHYSYN_OPTIMIZATIONS) 0
+set ::env(PL_RANDOM_GLB_PLACEMENT) 1
+set ::env(PL_BASIC_PLACEMENT) 1
set ::env(GLB_RT_ADJUSTMENT) 0
set ::env(GLB_RT_TILES) 14
+set ::env(GLB_RT_ALLOW_CONGESTION) 1
-set ::env(DIODE_INSERTION_STRATEGY) 0
+set ::env(DIODE_INSERTION_STRATEGY) 1
+
+# magic drc checking on the sram block shows millions of false errors
+set ::env(MAGIC_DRC_USE_GDS) 0
set ::env(VERILOG_FILES) "\
$script_dir/../../verilog/rtl/defines.v\
diff --git a/openlane/storage/macro_placement.cfg b/openlane/storage/macro_placement.cfg
index a5bd41d..6aecdc7 100644
--- a/openlane/storage/macro_placement.cfg
+++ b/openlane/storage/macro_placement.cfg
@@ -1,8 +1,2 @@
-SRAM_0\[1\] 41.430 21.000 N
-SRAM_1\[0\] 41.430 491.235 N
-SRAM_1\[3\] 41.430 959.845 N
-SRAM_1\[5\] 41.430 1429.360 N
-SRAM_1\[1\] 523.985 28.885 N
-SRAM_0\[0\] 523.985 496.830 N
-SRAM_1\[2\] 523.985 969.000 N
-SRAM_1\[4\] 523.985 1429.360 N
+SRAM_0 30 11.805 N
+SRAM_1 30 482.040 N
diff --git a/openlane/storage/pdn.tcl b/openlane/storage/pdn.tcl
index 4e918b8..cac8c69 100644
--- a/openlane/storage/pdn.tcl
+++ b/openlane/storage/pdn.tcl
@@ -17,8 +17,8 @@
}
pdngen::specify_grid macro {
- power_pins "VPWR VDD"
- ground_pins "VGND VSS"
+ power_pins "VPWR VDD vdd"
+ ground_pins "VGND VSS gnd"
blockages "li1 met1 met2 met3 met4"
straps {
}