Skip to content

Commit 2296671

Browse files
authored
Merge pull request #1957 from The-OpenROAD-Project-staging/asap7-pdn-halo
asap7: set a 2um pdn halo on the macros
2 parents 470955d + faf8651 commit 2296671

File tree

5 files changed

+42
-5
lines changed

5 files changed

+42
-5
lines changed
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# Top level PDN for macros using BLOCK_grid_strategy.tcl
2+
3+
####################################
4+
# global connections
5+
####################################
6+
add_global_connection -net {VDD} -inst_pattern {.*} -pin_pattern {^VDD$} -power
7+
add_global_connection -net {VSS} -inst_pattern {.*} -pin_pattern {^VSS$} -ground
8+
9+
####################################
10+
# voltage domains
11+
####################################
12+
set_voltage_domain -name {CORE} -power {VDD} -ground {VSS}
13+
14+
####################################
15+
# standard cell grid
16+
####################################
17+
define_pdn_grid -name {top} -voltage_domains {CORE}
18+
add_pdn_stripe -grid {top} -layer {M1} -width {0.018} -pitch {0.54} -offset {0} -followpins
19+
add_pdn_stripe -grid {top} -layer {M2} -width {0.018} -pitch {0.54} -offset {0} -followpins
20+
add_pdn_ring -grid {top} -layers {M5 M6} -widths {0.504 0.544} -spacings {0.096} -core_offset {0.504}
21+
22+
add_pdn_stripe -grid {top} -layer {M5} -width {0.12} -spacing {0.072} -pitch {2.16} -offset {1.50} -extend_to_core_ring
23+
add_pdn_stripe -grid {top} -layer {M6} -width {0.288} -spacing {0.096} -pitch {4.32} -offset {1.504} -extend_to_core_ring
24+
25+
add_pdn_connect -grid {top} -layers {M1 M2}
26+
add_pdn_connect -grid {top} -layers {M2 M5}
27+
add_pdn_connect -grid {top} -layers {M5 M6}
28+
29+
####################################
30+
# Element grid
31+
####################################
32+
# The halo around the macro prevents pdn from blocking pin access
33+
define_pdn_grid -macro -cells $::env(MACROS) \
34+
-halo "$::env(MACRO_HALO_X) $::env(MACRO_HALO_Y)" \
35+
-voltage_domains {CORE} -name ElementGrid
36+
37+
add_pdn_connect -grid {ElementGrid} -layers {M5 M6}

flow/designs/asap7/mock-array/config.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ export BLOCKS ?= Element
2828
ifneq ($(BLOCKS),)
2929
export GDS_ALLOW_EMPTY = Element
3030
export MACRO_PLACEMENT_TCL = ./designs/asap7/mock-array/macro-placement.tcl
31-
export PDN_TCL = $(FLOW_HOME)/platforms/asap7/openRoad/pdn/BLOCKS_grid_strategy.tcl
31+
export PDN_TCL = designs/asap7/mock-array/BLOCKS_grid_strategy.tcl
3232
endif
3333

3434
export IO_CONSTRAINTS = designs/asap7/mock-array/io.tcl

flow/platforms/asap7/openRoad/pdn/BLOCKS_grid_strategy.tcl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,6 @@ add_pdn_connect -grid {top} -layers {M5 M6}
3030
# Element grid
3131
####################################
3232
# The halo around the macro prevents pdn from blocking pin access
33-
define_pdn_grid -macro -cells $::env(MACROS) -halo "0.25 0.25 0.25 0.25" -voltage_domains {CORE} -name ElementGrid
33+
define_pdn_grid -macro -cells $::env(MACROS) -halo "2.0 2.0 2.0 2.0" -voltage_domains {CORE} -name ElementGrid
3434

3535
add_pdn_connect -grid {ElementGrid} -layers {M5 M6}

flow/platforms/asap7/openRoad/pdn/grid_strategy-M1-M2-M5-M6.tcl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,10 @@ add_pdn_connect -grid {top} -layers {M5 M6}
2828
####################################
2929
# grid for: CORE_macro_grid_1
3030
####################################
31-
define_pdn_grid -name {CORE_macro_grid_1} -voltage_domains {CORE} -macro -orient {R0 R180 MX MY} -cells {.*}
31+
define_pdn_grid -name {CORE_macro_grid_1} -voltage_domains {CORE} -macro -orient {R0 R180 MX MY} -halo {2.0 2.0 2.0 2.0} -cells {.*}
3232
add_pdn_connect -grid {CORE_macro_grid_1} -layers {M4 M5}
3333
####################################
3434
# grid for: CORE_macro_grid_2
3535
####################################
36-
define_pdn_grid -name {CORE_macro_grid_2} -voltage_domains {CORE} -macro -orient {R90 R270 MXR90 MYR90} -cells {.*}
36+
define_pdn_grid -name {CORE_macro_grid_2} -voltage_domains {CORE} -macro -orient {R90 R270 MXR90 MYR90} -halo {2.0 2.0 2.0 2.0} -cells {.*}
3737
add_pdn_connect -grid {CORE_macro_grid_2} -layers {M4 M5}

tools/OpenROAD

Submodule OpenROAD updated 448 files

0 commit comments

Comments
 (0)