diff --git a/flow/designs/ihp-sg13g2/aes/rules-base.json b/flow/designs/ihp-sg13g2/aes/rules-base.json index c0dbd17b30..39d01ef6cf 100644 --- a/flow/designs/ihp-sg13g2/aes/rules-base.json +++ b/flow/designs/ihp-sg13g2/aes/rules-base.json @@ -44,7 +44,7 @@ "compare": "<=" }, "detailedroute__antenna_diodes_count": { - "value": 5, + "value": 12, "compare": "<=" }, "finish__timing__setup__ws": { diff --git a/flow/designs/ihp-sg13g2/jpeg/rules-base.json b/flow/designs/ihp-sg13g2/jpeg/rules-base.json index 913c3fa3c8..115f3ccc12 100644 --- a/flow/designs/ihp-sg13g2/jpeg/rules-base.json +++ b/flow/designs/ihp-sg13g2/jpeg/rules-base.json @@ -28,7 +28,7 @@ "compare": "<=" }, "globalroute__antenna_diodes_count": { - "value": 4, + "value": 12, "compare": "<=" }, "detailedroute__route__wirelength": { diff --git a/flow/designs/nangate45/bp_fe_top/config.mk b/flow/designs/nangate45/bp_fe_top/config.mk index 5e972adb6a..249771d43d 100644 --- a/flow/designs/nangate45/bp_fe_top/config.mk +++ b/flow/designs/nangate45/bp_fe_top/config.mk @@ -29,3 +29,5 @@ export PLACE_DENSITY_MAX_POST_HOLD = 0.13 export TNS_END_PERCENT = 100 export FASTROUTE_TCL = $(DESIGN_HOME)/$(PLATFORM)/$(DESIGN_NAME)/fastroute.tcl + +export GPL_KEEP_OVERFLOW = 0 diff --git a/flow/designs/nangate45/bp_fe_top/rules-base.json b/flow/designs/nangate45/bp_fe_top/rules-base.json index c5bec52251..8ae464c9af 100644 --- a/flow/designs/nangate45/bp_fe_top/rules-base.json +++ b/flow/designs/nangate45/bp_fe_top/rules-base.json @@ -48,7 +48,7 @@ "compare": "<=" }, "finish__timing__setup__ws": { - "value": -0.12, + "value": -0.21, "compare": ">=" }, "finish__design__instance__area": { diff --git a/flow/designs/sky130hd/gcd/rules-base.json b/flow/designs/sky130hd/gcd/rules-base.json index eda2d1a286..68014abc69 100644 --- a/flow/designs/sky130hd/gcd/rules-base.json +++ b/flow/designs/sky130hd/gcd/rules-base.json @@ -32,7 +32,7 @@ "compare": "<=" }, "detailedroute__route__wirelength": { - "value": 9752, + "value": 11675, "compare": "<=" }, "detailedroute__route__drc_errors": { @@ -56,7 +56,7 @@ "compare": "<=" }, "finish__timing__drv__setup_violation_count": { - "value": 81, + "value": 86, "compare": "<=" }, "finish__timing__drv__hold_violation_count": { diff --git a/flow/designs/sky130hd/riscv32i/rules-base.json b/flow/designs/sky130hd/riscv32i/rules-base.json index c1df764f6c..ac2c4c89f9 100644 --- a/flow/designs/sky130hd/riscv32i/rules-base.json +++ b/flow/designs/sky130hd/riscv32i/rules-base.json @@ -28,7 +28,7 @@ "compare": "<=" }, "globalroute__antenna_diodes_count": { - "value": 10, + "value": 20, "compare": "<=" }, "detailedroute__route__wirelength": { diff --git a/flow/scripts/load.tcl b/flow/scripts/load.tcl index 2134f61dda..78c678081d 100644 --- a/flow/scripts/load.tcl +++ b/flow/scripts/load.tcl @@ -108,8 +108,14 @@ proc write_eqy_script { } { # See issue OpenROAD#6545 "Equivalence check failure due to non-unique resizer nets" puts $outfile "gate-nomatch net*" - # Necessary to avoid false positive after Yosys 0.49 - puts $outfile "gate-nomatch clone*\n\n" + # Forbid matching on buffer instances or cloned instances to make it less + # likely EQY will fail to prove equivalence because of its assuming structural + # similarity between gold and gate netlists. This doesn't remove coverage. + puts $outfile "gate-nomatch clone*" + puts $outfile "gate-nomatch place*" + puts $outfile "gate-nomatch rebuffer*" + puts $outfile "gate-nomatch wire*" + puts $outfile "gate-nomatch place*\n\n" # Equivalence check recipe 1 puts $outfile "\[strategy basic]\nuse sat\ndepth 10\n\n" diff --git a/tools/OpenROAD b/tools/OpenROAD index c79c8317e0..a090ebaa03 160000 --- a/tools/OpenROAD +++ b/tools/OpenROAD @@ -1 +1 @@ -Subproject commit c79c8317e05ecbf45eba5096a74cb421ab97b7ae +Subproject commit a090ebaa03b3171cc7282e49d651c8280d9372b2