Skip to content

Commit 29ddedc

Browse files
authored
Merge pull request #1184 from The-OpenROAD-Project-staging/asap7+macro_halo
Introduce MACRO_HALO_X and MACRO_HALO_Y
2 parents 71d9279 + 60276cd commit 29ddedc

File tree

3 files changed

+15
-3
lines changed

3 files changed

+15
-3
lines changed

docs/user/FlowVariables.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,8 @@ Note:
6262
| `PLACE_SITE` | = | = | = | = | = |
6363
| `MAKE_TRACKS` | = | = | = | = | = |
6464
| `TAPCELL_TCL` | = | = | = | = | = |
65+
| `MACRO_HALO_X` | NA | NA | NA | ?= | NA |
66+
| `MACRO_HALO_Y` | NA | NA | NA | ?= | NA |
6567
| `MACRO_PLACE_HALO` | ?= | ?= | ?= | ?= | ?= |
6668
| `MACRO_PLACE_CHANNEL` | ?= | ?= | ?= | ?= | ?= |
6769
| `PDN_TCL` | ?= | ?= | ?= | ?= | ?= |
@@ -128,6 +130,7 @@ Note:
128130
| `PLACE_SITE` | Placement site for core cells defined in the technology LEF file. |
129131
| `TAPCELL_TCL` | Path to Endcap and Welltie cells file. |
130132
| `RTLMP_FLOW` | Enable the Hierarchical RTLMP flow. By default it is disabled. |
133+
| `MACRO_HALO` | Specifies keep out distance from macro, in X and Y, to standard cell row. |
131134
| `MACRO_PLACEMENT` | Specifies the path of a file on how to place certain macros manually using read_macro_placement. |
132135
| `MACRO_PLACEMENT_TCL` | Specifies the path of a TCL file on how to place certain macros manually. |
133136
| `MACRO_PLACE_HALO` | horizontal/vertical halo around macros (microns). Used by automatic macro placement. |

flow/platforms/asap7/config.mk

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -84,8 +84,13 @@ export PDN_TCL ?= $(PLATFORM_DIR)/openRoad/pdn/grid_strategy-M1-M2-M5-M6.tcl
8484
export IO_PLACER_H ?= M4
8585
export IO_PLACER_V ?= M5
8686

87-
export MACRO_PLACE_HALO ?= 10 10
88-
export MACRO_PLACE_CHANNEL ?= 12 12
87+
export MACRO_PLACE_HALO ?= 10 10
88+
export MACRO_PLACE_CHANNEL ?= 12 12
89+
90+
# the followings create a keep out / halo between
91+
# macro and core rows
92+
export MACRO_HALO_X ?= 2
93+
export MACRO_HALO_Y ?= 2
8994

9095
# Cell padding in SITE widths to ease rout-ability. Applied to both sides
9196
export CELL_PAD_IN_SITES_GLOBAL_PLACEMENT ?= 2
Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,13 @@
11
puts "\[INFO-FLOW\] Tap and End Cap cell insertion"
22
puts "\[INFO-FLOW\] TAP Cell : $::env(TAP_CELL_NAME)"
33
puts "\[INFO-FLOW\] ENDCAP Cell : $::env(TAP_CELL_NAME)"
4+
puts "\[INFO-FLOW\] Halo Around Macro : $::env(MACRO_HALO_X) $::env(MACRO_HALO_Y)"
45
puts "\[INFO-FLOW\] TAP Cell Distance : 25"
56

7+
# allow user to set the halo around macro with MACRO_HALO_?
68
tapcell \
79
-distance 25 \
810
-tapcell_master "$::env(TAP_CELL_NAME)" \
9-
-endcap_master "$::env(TAP_CELL_NAME)"
11+
-endcap_master "$::env(TAP_CELL_NAME)" \
12+
-halo_width_x $::env(MACRO_HALO_X) \
13+
-halo_width_y $::env(MACRO_HALO_X)

0 commit comments

Comments
 (0)