Wrapper now hardens and DRC/LVS clean.
Still need to double check timing and add remaining IP blocks.
diff --git a/openlane/user_project_wrapper/config.tcl b/openlane/user_project_wrapper/config.tcl
index c94b7a0..80814ac 100755
--- a/openlane/user_project_wrapper/config.tcl
+++ b/openlane/user_project_wrapper/config.tcl
@@ -51,16 +51,25 @@
### Black-box verilog and views
set ::env(VERILOG_FILES_BLACKBOX) "\
$::env(CARAVEL_ROOT)/verilog/rtl/defines.v \
- $script_dir/../../verilog/rtl/user_proj_example.v"
+ $script_dir/../../verilog/rtl/user_proj_example.v \
+ $script_dir/../../ip/randsack/rtl/digitalcore_macro.v \
+ $script_dir/../../ip/randsack/rtl/collapsering_macro.v"
set ::env(EXTRA_LEFS) "\
- $script_dir/../../lef/user_proj_example.lef"
+ $script_dir/../../lef/user_proj_example.lef \
+ $script_dir/../../lef/digitalcore_macro.lef \
+ $script_dir/../../lef/collapsering_macro.lef"
set ::env(EXTRA_GDS_FILES) "\
- $script_dir/../../gds/user_proj_example.gds"
+ $script_dir/../../gds/user_proj_example.gds \
+ $script_dir/../../gds/digitalcore_macro.gds \
+ $script_dir/../../gds/collapsering_macro.gds"
set ::env(GLB_RT_MAXLAYER) 5
+# Don't use high resistance li1 for long routes.
+set ::env(GLB_RT_OBS) "li1 0 0 2920 3520"
+
# disable pdn check nodes becuase it hangs with multiple power domains.
# any issue with pdn connections will be flagged with LVS so it is not a critical check.
set ::env(FP_PDN_CHECK_NODES) 0
@@ -80,3 +89,5 @@
set ::env(FILL_INSERTION) 0
set ::env(TAP_DECAP_INSERTION) 0
set ::env(CLOCK_TREE_SYNTH) 0
+
+set ::env(ROUTING_CORES) 10
diff --git a/openlane/user_project_wrapper/macro.cfg b/openlane/user_project_wrapper/macro.cfg
index a7365ab..732f5ab 100644
--- a/openlane/user_project_wrapper/macro.cfg
+++ b/openlane/user_project_wrapper/macro.cfg
@@ -1 +1,2 @@
-mprj 1175 1690 N
+digitalcore 1000 500 N
+collapsering0 700 620 N
diff --git a/verilog/rtl/user_project_wrapper.v b/verilog/rtl/user_project_wrapper.v
index 646c96d..bde06b6 100644
--- a/verilog/rtl/user_project_wrapper.v
+++ b/verilog/rtl/user_project_wrapper.v
@@ -88,7 +88,7 @@
wire [27:0] ring0_trim_b;
wire [2:0] ring0_clkmux;
-digitalcore_macro mprj (
+digitalcore_macro digitalcore (
`ifdef USE_POWER_PINS
.vccd1(vccd1), // User area 1 1.8V power
.vssd1(vssd1), // User area 1 digital ground
@@ -129,6 +129,11 @@
);
collapsering_macro collapsering0 (
+`ifdef USE_POWER_PINS
+ .vccd1(vccd1), // User area 1 1.8V power
+ .vssd1(vssd1), // User area 1 digital ground
+`endif
+
.clk_out(ring0_clk),
.start(ring0_start),
.trim_a(ring0_trim_a),