diff --git a/flow/designs/asap7/cva6/config.mk b/flow/designs/asap7/cva6/config.mk index 355dba03aa..4f628b4fd4 100644 --- a/flow/designs/asap7/cva6/config.mk +++ b/flow/designs/asap7/cva6/config.mk @@ -90,7 +90,7 @@ export SDC_FILE = $(DESIGN_HOME)/$(PLATFORM)/$(DESIGN_NAME)/constr export CORE_UTILIZATION = 70 export CORE_MARGIN = 2 -export MACRO_PLACE_HALO = 3 3 +export MACRO_PLACE_HALO = 5 5 export PLACE_DENSITY = 0.69 # a smoketest for this option, there are a diff --git a/flow/designs/asap7/riscv32i/config.mk b/flow/designs/asap7/riscv32i/config.mk index 6b4175b16a..ebd8fe9f63 100644 --- a/flow/designs/asap7/riscv32i/config.mk +++ b/flow/designs/asap7/riscv32i/config.mk @@ -20,7 +20,7 @@ export CORE_MARGIN = 5 export PLACE_DENSITY_LB_ADDON = 0.10 export IO_CONSTRAINTS = $(DESIGN_HOME)/$(PLATFORM)/$(DESIGN_NICKNAME)/io.tcl -export MACRO_PLACE_HALO = 2 2 +export MACRO_PLACE_HALO = 4 4 export TNS_END_PERCENT = 100 diff --git a/flow/designs/gf12/ariane/config.mk b/flow/designs/gf12/ariane/config.mk index 4a8e331a21..0a700d0971 100644 --- a/flow/designs/gf12/ariane/config.mk +++ b/flow/designs/gf12/ariane/config.mk @@ -24,7 +24,7 @@ export PLACE_DENSITY ?= 0.50 export IO_CONSTRAINTS = $(DESIGN_HOME)/$(PLATFORM)/$(DESIGN_NICKNAME)/io.tcl -export MACRO_PLACE_HALO = 7 7 +export MACRO_PLACE_HALO = 10 10 export MACRO_WRAPPERS = $(DESIGN_HOME)/$(PLATFORM)/$(DESIGN_NICKNAME)/wrappers.tcl ifeq ($(USE_FILL),1) diff --git a/flow/designs/gf12/swerv_wrapper/config.mk b/flow/designs/gf12/swerv_wrapper/config.mk index 2ed5601613..7ce6add1cb 100644 --- a/flow/designs/gf12/swerv_wrapper/config.mk +++ b/flow/designs/gf12/swerv_wrapper/config.mk @@ -28,7 +28,7 @@ export IO_CONSTRAINTS = $(DESIGN_HOME)/$(PLATFORM)/$(DESIGN_NAME)/io.tcl export PLACE_DENSITY_LB_ADDON = 0.05 export MACRO_WRAPPERS = $(DESIGN_HOME)/$(PLATFORM)/$(DESIGN_NICKNAME)/wrappers.tcl # -export MACRO_PLACE_HALO = 7 7 +export MACRO_PLACE_HALO = 9 9 ifeq ($(USE_FILL),1) export DESIGN_TYPE = CELL diff --git a/flow/designs/nangate45/ariane136/config.mk b/flow/designs/nangate45/ariane136/config.mk index 04da1dc265..3ba5ef624e 100644 --- a/flow/designs/nangate45/ariane136/config.mk +++ b/flow/designs/nangate45/ariane136/config.mk @@ -18,7 +18,7 @@ export CORE_AREA = 10 12 1448 1448 export IO_CONSTRAINTS = $(DESIGN_HOME)/$(PLATFORM)/$(DESIGN_NICKNAME)/io.tcl -export MACRO_PLACE_HALO = 10 10 +export MACRO_PLACE_HALO = 12 12 export TNS_END_PERCENT = 100 export PLACE_DENSITY = 0.35 diff --git a/flow/designs/nangate45/black_parrot/config.mk b/flow/designs/nangate45/black_parrot/config.mk index 771ea51da1..0014d85fb9 100644 --- a/flow/designs/nangate45/black_parrot/config.mk +++ b/flow/designs/nangate45/black_parrot/config.mk @@ -33,7 +33,7 @@ export PLACE_DENSITY_LB_ADDON = 0.05 export MACRO_PLACEMENT_TCL = $(DESIGN_HOME)/$(PLATFORM)/$(DESIGN_NAME)/macro_placement.tcl -export MACRO_PLACE_HALO = 10 10 +export MACRO_PLACE_HALO = 15 15 export TNS_END_PERCENT = 100 diff --git a/flow/designs/nangate45/bp_multi_top/config.mk b/flow/designs/nangate45/bp_multi_top/config.mk index 60edf46ef3..767b26d48b 100644 --- a/flow/designs/nangate45/bp_multi_top/config.mk +++ b/flow/designs/nangate45/bp_multi_top/config.mk @@ -28,7 +28,7 @@ export DIE_AREA = 0 0 1100 1100 export CORE_AREA = 10.07 9.8 1090 1090 export IO_CONSTRAINTS = $(DESIGN_HOME)/$(PLATFORM)/$(DESIGN_NAME)/io.tcl -export MACRO_PLACE_HALO = 10 10 +export MACRO_PLACE_HALO = 20 20 export PLACE_DENSITY_LB_ADDON = 0.05 export SKIP_GATE_CLONING = 1 diff --git a/flow/designs/nangate45/swerv_wrapper/config.mk b/flow/designs/nangate45/swerv_wrapper/config.mk index 9be4aea995..b813b20b2e 100644 --- a/flow/designs/nangate45/swerv_wrapper/config.mk +++ b/flow/designs/nangate45/swerv_wrapper/config.mk @@ -17,7 +17,7 @@ export CORE_AREA = 10.07 11.2 1090 990 export IO_CONSTRAINTS = $(DESIGN_HOME)/$(PLATFORM)/$(DESIGN_NAME)/io.tcl -export MACRO_PLACE_HALO = 10 10 +export MACRO_PLACE_HALO = 12 12 export PLACE_DENSITY_LB_ADDON = 0.08 export TNS_END_PERCENT = 100 diff --git a/flow/designs/nangate45/swerv_wrapper/rules-base.json b/flow/designs/nangate45/swerv_wrapper/rules-base.json index 0e69b2a5a8..9af62948f6 100644 --- a/flow/designs/nangate45/swerv_wrapper/rules-base.json +++ b/flow/designs/nangate45/swerv_wrapper/rules-base.json @@ -1,11 +1,11 @@ { "synth__canonical_netlist__hash": { - "value": "ae72f3b5b3c6b8883c8448eb3086b1310345c412", + "value": "04876aa8597747afe76a824832e5cc47e7188033", "compare": "==", "level": "warning" }, "synth__netlist__hash": { - "value": "4960294d07ead3c1bd0d38e18b415d8b7a3cdfcd", + "value": "69293fd12a9316eb3db4f3ae97753fe26adb41e7", "compare": "==", "level": "warning" }, @@ -18,11 +18,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 729155, + "value": 727527, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 110775, + "value": 106084, "compare": "<=" }, "detailedplace__design__violations": { @@ -30,11 +30,11 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 9633, + "value": 9225, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 9633, + "value": 9225, "compare": "<=" }, "cts__timing__setup__ws": { @@ -42,7 +42,7 @@ "compare": ">=" }, "cts__timing__setup__tns": { - "value": -422.0, + "value": -415.0, "compare": ">=" }, "cts__timing__hold__ws": { @@ -54,15 +54,15 @@ "compare": ">=" }, "globalroute__antenna_diodes_count": { - "value": 107, + "value": 105, "compare": "<=" }, "globalroute__timing__setup__ws": { - "value": -0.337, + "value": -0.466, "compare": ">=" }, "globalroute__timing__setup__tns": { - "value": -426.0, + "value": -438.0, "compare": ">=" }, "globalroute__timing__hold__ws": { @@ -86,7 +86,7 @@ "compare": "<=" }, "detailedroute__antenna_diodes_count": { - "value": 107, + "value": 106, "compare": "<=" }, "finish__timing__setup__ws": { @@ -94,7 +94,7 @@ "compare": ">=" }, "finish__timing__setup__tns": { - "value": -418.0, + "value": -384.0, "compare": ">=" }, "finish__timing__hold__ws": { diff --git a/flow/designs/nangate45/tinyRocket/rules-base.json b/flow/designs/nangate45/tinyRocket/rules-base.json index 0e2aa067a2..84863ee8a8 100644 --- a/flow/designs/nangate45/tinyRocket/rules-base.json +++ b/flow/designs/nangate45/tinyRocket/rules-base.json @@ -1,11 +1,11 @@ { "synth__canonical_netlist__hash": { - "value": "675929b98a2f4adc51e7ab08dc15383435147b74", + "value": "a044a2ec26d32ce5c142fe453bf2bb6c70d468e9", "compare": "==", "level": "warning" }, "synth__netlist__hash": { - "value": "414fc0fd97ec190c6e3f5c44e9ee1c249ba40234", + "value": "b130a04aa6e0139ef5a81a1134effc31a22505fc", "compare": "==", "level": "warning" }, @@ -38,11 +38,11 @@ "compare": "<=" }, "cts__timing__setup__ws": { - "value": -0.14, + "value": -0.201, "compare": ">=" }, "cts__timing__setup__tns": { - "value": -54.5, + "value": -27.9, "compare": ">=" }, "cts__timing__hold__ws": { @@ -62,7 +62,7 @@ "compare": ">=" }, "globalroute__timing__setup__tns": { - "value": -57.4, + "value": -49.7, "compare": ">=" }, "globalroute__timing__hold__ws": { @@ -94,7 +94,7 @@ "compare": ">=" }, "finish__timing__setup__tns": { - "value": -50.5, + "value": -47.7, "compare": ">=" }, "finish__timing__hold__ws": { diff --git a/flow/designs/sky130hd/chameleon/config.mk b/flow/designs/sky130hd/chameleon/config.mk index 9636be3769..1952391e61 100644 --- a/flow/designs/sky130hd/chameleon/config.mk +++ b/flow/designs/sky130hd/chameleon/config.mk @@ -48,3 +48,5 @@ export ADDITIONAL_LEFS = $(DESIGN_DIR)/lef/apb_sys_0.lef \ export FP_PDN_RAIL_WIDTH = 0.48 export FP_PDN_RAIL_OFFSET = 0 export TNS_END_PERCENT = 100 + +export MACRO_PLACE_HALO = 35 35 diff --git a/flow/designs/sky130hd/chameleon/rules-base.json b/flow/designs/sky130hd/chameleon/rules-base.json index af39080e88..11af363074 100644 --- a/flow/designs/sky130hd/chameleon/rules-base.json +++ b/flow/designs/sky130hd/chameleon/rules-base.json @@ -1,11 +1,11 @@ { "synth__canonical_netlist__hash": { - "value": "a279612250a1367c37ea08f7b0bb8a08ae725da3", + "value": "3024027ad30e973f5b4459bd0e120c6c23ceb89e", "compare": "==", "level": "warning" }, "synth__netlist__hash": { - "value": "edd4949a57adadaae7b7d99d440f03eae351e498", + "value": "8a1f4c88e692a05b73d7d3e5192e75e79822f1d5", "compare": "==", "level": "warning" }, @@ -42,7 +42,7 @@ "compare": ">=" }, "cts__timing__setup__tns": { - "value": -373.0, + "value": -114.0, "compare": ">=" }, "cts__timing__hold__ws": { @@ -54,15 +54,15 @@ "compare": ">=" }, "globalroute__antenna_diodes_count": { - "value": 161, + "value": 224, "compare": "<=" }, "globalroute__timing__setup__ws": { - "value": -2.35, + "value": -2.32, "compare": ">=" }, "globalroute__timing__setup__tns": { - "value": -363.0, + "value": -42.9, "compare": ">=" }, "globalroute__timing__hold__ws": { @@ -86,15 +86,15 @@ "compare": "<=" }, "detailedroute__antenna_diodes_count": { - "value": 100, + "value": 158, "compare": "<=" }, "finish__timing__setup__ws": { - "value": -2.15, + "value": -2.06, "compare": ">=" }, "finish__timing__setup__tns": { - "value": -354.0, + "value": -39.9, "compare": ">=" }, "finish__timing__hold__ws": { @@ -109,4 +109,4 @@ "value": 6519902, "compare": "<=" } -} +} \ No newline at end of file diff --git a/flow/designs/sky130hd/microwatt/config.mk b/flow/designs/sky130hd/microwatt/config.mk index 22cb13c023..9eef7cd484 100644 --- a/flow/designs/sky130hd/microwatt/config.mk +++ b/flow/designs/sky130hd/microwatt/config.mk @@ -21,7 +21,7 @@ export SYNTH_HIERARCHICAL = 1 export PLACE_DENSITY = 0.3 -export MACRO_PLACE_HALO = 60 60 +export MACRO_PLACE_HALO = 50 50 # CTS tuning export CTS_BUF_DISTANCE = 600 diff --git a/flow/designs/sky130hd/microwatt/rules-base.json b/flow/designs/sky130hd/microwatt/rules-base.json index 1b1aa392bc..593fe9e678 100644 --- a/flow/designs/sky130hd/microwatt/rules-base.json +++ b/flow/designs/sky130hd/microwatt/rules-base.json @@ -1,11 +1,11 @@ { "synth__canonical_netlist__hash": { - "value": "642ebe77b86723b162e5f260e5abae1ad1003847", + "value": "a07cb0bb2ab74796be4909c263c6dff6da4b470a", "compare": "==", "level": "warning" }, "synth__netlist__hash": { - "value": "f6ccf3a646ec63990a474d9bdcb96fcfe1b7edde", + "value": "388289eb539881bcf988621a3b4daa444487f655", "compare": "==", "level": "warning" }, @@ -18,11 +18,11 @@ "compare": "==" }, "placeopt__design__instance__area": { - "value": 5427782, + "value": 5408427, "compare": "<=" }, "placeopt__design__instance__count__stdcell": { - "value": 184133, + "value": 181507, "compare": "<=" }, "detailedplace__design__violations": { @@ -30,19 +30,19 @@ "compare": "==" }, "cts__design__instance__count__setup_buffer": { - "value": 16012, + "value": 15783, "compare": "<=" }, "cts__design__instance__count__hold_buffer": { - "value": 16012, + "value": 15783, "compare": "<=" }, "cts__timing__setup__ws": { - "value": -2.43, + "value": -2.32, "compare": ">=" }, "cts__timing__setup__tns": { - "value": -249.0, + "value": -254.0, "compare": ">=" }, "cts__timing__hold__ws": { @@ -54,15 +54,15 @@ "compare": ">=" }, "globalroute__antenna_diodes_count": { - "value": 5162, + "value": 1456, "compare": "<=" }, "globalroute__timing__setup__ws": { - "value": -2.28, + "value": -2.21, "compare": ">=" }, "globalroute__timing__setup__tns": { - "value": -241.0, + "value": -227.0, "compare": ">=" }, "globalroute__timing__hold__ws": { @@ -74,7 +74,7 @@ "compare": ">=" }, "detailedroute__route__wirelength": { - "value": 8240415, + "value": 8076674, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -82,31 +82,31 @@ "compare": "<=" }, "detailedroute__antenna__violating__nets": { - "value": 10, + "value": 1, "compare": "<=" }, "detailedroute__antenna_diodes_count": { - "value": 2411, + "value": 1219, "compare": "<=" }, "finish__timing__setup__ws": { - "value": -2.27, + "value": -2.16, "compare": ">=" }, "finish__timing__setup__tns": { - "value": -236.0, + "value": -215.0, "compare": ">=" }, "finish__timing__hold__ws": { - "value": -0.89, + "value": -0.883, "compare": ">=" }, "finish__timing__hold__tns": { - "value": -4.0, + "value": -3.42, "compare": ">=" }, "finish__design__instance__area": { - "value": 5570244, + "value": 5568932, "compare": "<=" } -} +} \ No newline at end of file diff --git a/tools/OpenROAD b/tools/OpenROAD index 2f4beb6c91..7cfb2105c9 160000 --- a/tools/OpenROAD +++ b/tools/OpenROAD @@ -1 +1 @@ -Subproject commit 2f4beb6c917d5de4c05a4f59354d3bd77ed4a5c4 +Subproject commit 7cfb2105c93c35ce73de9cf4f538de1c9bf8115a