Skip to content

Commit ae9a8ed

Browse files
authored
Merge pull request The-OpenROAD-Project#4311 from lanserge/gf180-metal-density-fill
gf180: add metal density fill rules (fill.json)
2 parents 21f7411 + 0bceea9 commit ae9a8ed

6 files changed

Lines changed: 122 additions & 40 deletions

flow/platforms/gf180/config.mk

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,10 @@ export FILL_CELLS ?= gf180mcu_fd_sc_mcu$(TRACK_OPTIO
3232
gf180mcu_fd_sc_mcu$(TRACK_OPTION)$(POWER_OPTION)__fill_2 \
3333
gf180mcu_fd_sc_mcu$(TRACK_OPTION)$(POWER_OPTION)__fill_1
3434

35+
# Metal density fill rules (OpenROAD density_fill). Applied at chip level
36+
# only when USE_FILL=1; macro/block builds leave USE_FILL=0 (the default).
37+
export FILL_CONFIG ?= $(PLATFORM_DIR)/fill.json
38+
3539
export TIE_CELL = gf180mcu_fd_sc_mcu$(TRACK_OPTION)$(POWER_OPTION)__filltie
3640
export ENDCAP_CELL = gf180mcu_fd_sc_mcu$(TRACK_OPTION)$(POWER_OPTION)__endcap
3741
export RC_FILE = $(PLATFORM_DIR)/setRC.tcl

flow/platforms/gf180/fill.json

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
{
2+
"layers" : {
3+
"Metal1" : {
4+
"layer": 34,
5+
"name": "Metal1",
6+
"dir": "H",
7+
"datatype": 0,
8+
"space_to_outline": 5,
9+
"non-opc": {
10+
"datatype": 4,
11+
"width": [12.00, 6.00, 3.00, 2.00],
12+
"height": [2.00, 2.00, 2.00, 2.00],
13+
"space_to_fill": 1.0,
14+
"space_to_non_fill": 2.0
15+
}
16+
},
17+
18+
"Metal2" : {
19+
"layer": 36,
20+
"name": "Metal2",
21+
"dir": "V",
22+
"datatype": 0,
23+
"space_to_outline": 5,
24+
"non-opc": {
25+
"datatype": 4,
26+
"width": [2.00, 2.00, 2.00, 2.00],
27+
"height": [12.00, 6.00, 3.00, 2.00],
28+
"space_to_fill": 1.0,
29+
"space_to_non_fill": 2.0
30+
}
31+
},
32+
33+
"Metal3" : {
34+
"layer": 42,
35+
"name": "Metal3",
36+
"dir": "H",
37+
"datatype": 0,
38+
"space_to_outline": 5,
39+
"non-opc": {
40+
"datatype": 4,
41+
"width": [12.00, 6.00, 3.00, 2.00],
42+
"height": [2.00, 2.00, 2.00, 2.00],
43+
"space_to_fill": 1.0,
44+
"space_to_non_fill": 2.0
45+
}
46+
},
47+
48+
"Metal4" : {
49+
"layer": 46,
50+
"name": "Metal4",
51+
"dir": "V",
52+
"datatype": 0,
53+
"space_to_outline": 5,
54+
"non-opc": {
55+
"datatype": 4,
56+
"width": [2.00, 2.00, 2.00, 2.00],
57+
"height": [12.00, 6.00, 3.00, 2.00],
58+
"space_to_fill": 1.0,
59+
"space_to_non_fill": 2.0
60+
}
61+
},
62+
63+
"Metal5" : {
64+
"layer": 81,
65+
"name": "Metal5",
66+
"dir": "H",
67+
"datatype": 0,
68+
"space_to_outline": 5,
69+
"non-opc": {
70+
"datatype": 4,
71+
"width": [12.00, 6.00, 3.00, 2.00],
72+
"height": [2.00, 2.00, 2.00, 2.00],
73+
"space_to_fill": 1.0,
74+
"space_to_non_fill": 2.0
75+
}
76+
}
77+
}
78+
}

flow/platforms/gf180/gds/7t/gf180mcu_5LM_1TM_9K_7t_edi2gds.layermap

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ Metal1 NET 34 0
66
Metal1 SPNET 34 0
77
Metal1 PIN 34 0
88
Metal1 LEFPIN 34 0
9-
Metal1 FILL 34 0
10-
Metal1 FILLOPC 34 0
9+
Metal1 FILL 34 4
10+
Metal1 FILLOPC 34 4
1111
Metal1 VIA 34 0
1212
Metal1 VIAFILL 34 0
1313
Metal1 VIAFILLOPC 34 0
@@ -31,8 +31,8 @@ Metal2 NET 36 0
3131
Metal2 SPNET 36 0
3232
Metal2 PIN 36 0
3333
Metal2 LEFPIN 36 0
34-
Metal2 FILL 36 0
35-
Metal2 FILLOPC 36 0
34+
Metal2 FILL 36 4
35+
Metal2 FILLOPC 36 4
3636
Metal2 VIA 36 0
3737
Metal2 VIAFILL 36 0
3838
Metal2 VIAFILLOPC 36 0
@@ -56,8 +56,8 @@ Metal3 NET 42 0
5656
Metal3 SPNET 42 0
5757
Metal3 PIN 42 0
5858
Metal3 LEFPIN 42 0
59-
Metal3 FILL 42 0
60-
Metal3 FILLOPC 42 0
59+
Metal3 FILL 42 4
60+
Metal3 FILLOPC 42 4
6161
Metal3 VIA 42 0
6262
Metal3 VIAFILL 42 0
6363
Metal3 VIAFILLOPC 42 0
@@ -81,8 +81,8 @@ Metal4 NET 46 0
8181
Metal4 SPNET 46 0
8282
Metal4 PIN 46 0
8383
Metal4 LEFPIN 46 0
84-
Metal4 FILL 46 0
85-
Metal4 FILLOPC 46 0
84+
Metal4 FILL 46 4
85+
Metal4 FILLOPC 46 4
8686
Metal4 VIA 46 0
8787
Metal4 VIAFILL 46 0
8888
Metal4 VIAFILLOPC 46 0
@@ -106,8 +106,8 @@ Metal5 NET 81 0
106106
Metal5 SPNET 81 0
107107
Metal5 PIN 81 0
108108
Metal5 LEFPIN 81 0
109-
Metal5 FILL 81 0
110-
Metal5 FILLOPC 81 0
109+
Metal5 FILL 81 4
110+
Metal5 FILLOPC 81 4
111111
Metal5 VIA 81 0
112112
Metal5 VIAFILL 81 0
113113
Metal5 VIAFILLOPC 81 0

flow/platforms/gf180/gds/7t/gf180mcu_6LM_1TM_9K_7t_edi2gds.layermap

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ Metal1 NET 34 0
66
Metal1 SPNET 34 0
77
Metal1 PIN 34 0
88
Metal1 LEFPIN 34 0
9-
Metal1 FILL 34 0
10-
Metal1 FILLOPC 34 0
9+
Metal1 FILL 34 4
10+
Metal1 FILLOPC 34 4
1111
Metal1 VIA 34 0
1212
Metal1 VIAFILL 34 0
1313
Metal1 VIAFILLOPC 34 0
@@ -31,8 +31,8 @@ Metal2 NET 36 0
3131
Metal2 SPNET 36 0
3232
Metal2 PIN 36 0
3333
Metal2 LEFPIN 36 0
34-
Metal2 FILL 36 0
35-
Metal2 FILLOPC 36 0
34+
Metal2 FILL 36 4
35+
Metal2 FILLOPC 36 4
3636
Metal2 VIA 36 0
3737
Metal2 VIAFILL 36 0
3838
Metal2 VIAFILLOPC 36 0
@@ -56,8 +56,8 @@ Metal3 NET 42 0
5656
Metal3 SPNET 42 0
5757
Metal3 PIN 42 0
5858
Metal3 LEFPIN 42 0
59-
Metal3 FILL 42 0
60-
Metal3 FILLOPC 42 0
59+
Metal3 FILL 42 4
60+
Metal3 FILLOPC 42 4
6161
Metal3 VIA 42 0
6262
Metal3 VIAFILL 42 0
6363
Metal3 VIAFILLOPC 42 0
@@ -81,8 +81,8 @@ Metal4 NET 46 0
8181
Metal4 SPNET 46 0
8282
Metal4 PIN 46 0
8383
Metal4 LEFPIN 46 0
84-
Metal4 FILL 46 0
85-
Metal4 FILLOPC 46 0
84+
Metal4 FILL 46 4
85+
Metal4 FILLOPC 46 4
8686
Metal4 VIA 46 0
8787
Metal4 VIAFILL 46 0
8888
Metal4 VIAFILLOPC 46 0
@@ -106,8 +106,8 @@ Metal5 NET 81 0
106106
Metal5 SPNET 81 0
107107
Metal5 PIN 81 0
108108
Metal5 LEFPIN 81 0
109-
Metal5 FILL 81 0
110-
Metal5 FILLOPC 81 0
109+
Metal5 FILL 81 4
110+
Metal5 FILLOPC 81 4
111111
Metal5 VIA 81 0
112112
Metal5 VIAFILL 81 0
113113
Metal5 VIAFILLOPC 81 0

flow/platforms/gf180/gds/9t/gf180mcu_5LM_1TM_9K_9t_edi2gds.layermap

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ Metal1 NET 34 0
66
Metal1 SPNET 34 0
77
Metal1 PIN 34 0
88
Metal1 LEFPIN 34 0
9-
Metal1 FILL 34 0
10-
Metal1 FILLOPC 34 0
9+
Metal1 FILL 34 4
10+
Metal1 FILLOPC 34 4
1111
Metal1 VIA 34 0
1212
Metal1 VIAFILL 34 0
1313
Metal1 VIAFILLOPC 34 0
@@ -31,8 +31,8 @@ Metal2 NET 36 0
3131
Metal2 SPNET 36 0
3232
Metal2 PIN 36 0
3333
Metal2 LEFPIN 36 0
34-
Metal2 FILL 36 0
35-
Metal2 FILLOPC 36 0
34+
Metal2 FILL 36 4
35+
Metal2 FILLOPC 36 4
3636
Metal2 VIA 36 0
3737
Metal2 VIAFILL 36 0
3838
Metal2 VIAFILLOPC 36 0
@@ -56,8 +56,8 @@ Metal3 NET 42 0
5656
Metal3 SPNET 42 0
5757
Metal3 PIN 42 0
5858
Metal3 LEFPIN 42 0
59-
Metal3 FILL 42 0
60-
Metal3 FILLOPC 42 0
59+
Metal3 FILL 42 4
60+
Metal3 FILLOPC 42 4
6161
Metal3 VIA 42 0
6262
Metal3 VIAFILL 42 0
6363
Metal3 VIAFILLOPC 42 0
@@ -81,8 +81,8 @@ Metal4 NET 46 0
8181
Metal4 SPNET 46 0
8282
Metal4 PIN 46 0
8383
Metal4 LEFPIN 46 0
84-
Metal4 FILL 46 0
85-
Metal4 FILLOPC 46 0
84+
Metal4 FILL 46 4
85+
Metal4 FILLOPC 46 4
8686
Metal4 VIA 46 0
8787
Metal4 VIAFILL 46 0
8888
Metal4 VIAFILLOPC 46 0
@@ -106,8 +106,8 @@ Metal5 NET 81 0
106106
Metal5 SPNET 81 0
107107
Metal5 PIN 81 0
108108
Metal5 LEFPIN 81 0
109-
Metal5 FILL 81 0
110-
Metal5 FILLOPC 81 0
109+
Metal5 FILL 81 4
110+
Metal5 FILLOPC 81 4
111111
Metal5 VIA 81 0
112112
Metal5 VIAFILL 81 0
113113
Metal5 VIAFILLOPC 81 0

flow/platforms/gf180/gds/9t/gf180mcu_6LM_1TM_9K_9t_edi2gds.layermap

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ Metal1 NET 34 0
66
Metal1 SPNET 34 0
77
Metal1 PIN 34 0
88
Metal1 LEFPIN 34 0
9-
Metal1 FILL 34 0
10-
Metal1 FILLOPC 34 0
9+
Metal1 FILL 34 4
10+
Metal1 FILLOPC 34 4
1111
Metal1 VIA 34 0
1212
Metal1 VIAFILL 34 0
1313
Metal1 VIAFILLOPC 34 0
@@ -31,8 +31,8 @@ Metal2 NET 36 0
3131
Metal2 SPNET 36 0
3232
Metal2 PIN 36 0
3333
Metal2 LEFPIN 36 0
34-
Metal2 FILL 36 0
35-
Metal2 FILLOPC 36 0
34+
Metal2 FILL 36 4
35+
Metal2 FILLOPC 36 4
3636
Metal2 VIA 36 0
3737
Metal2 VIAFILL 36 0
3838
Metal2 VIAFILLOPC 36 0
@@ -56,8 +56,8 @@ Metal3 NET 42 0
5656
Metal3 SPNET 42 0
5757
Metal3 PIN 42 0
5858
Metal3 LEFPIN 42 0
59-
Metal3 FILL 42 0
60-
Metal3 FILLOPC 42 0
59+
Metal3 FILL 42 4
60+
Metal3 FILLOPC 42 4
6161
Metal3 VIA 42 0
6262
Metal3 VIAFILL 42 0
6363
Metal3 VIAFILLOPC 42 0
@@ -81,8 +81,8 @@ Metal4 NET 46 0
8181
Metal4 SPNET 46 0
8282
Metal4 PIN 46 0
8383
Metal4 LEFPIN 46 0
84-
Metal4 FILL 46 0
85-
Metal4 FILLOPC 46 0
84+
Metal4 FILL 46 4
85+
Metal4 FILLOPC 46 4
8686
Metal4 VIA 46 0
8787
Metal4 VIAFILL 46 0
8888
Metal4 VIAFILLOPC 46 0
@@ -106,8 +106,8 @@ Metal5 NET 81 0
106106
Metal5 SPNET 81 0
107107
Metal5 PIN 81 0
108108
Metal5 LEFPIN 81 0
109-
Metal5 FILL 81 0
110-
Metal5 FILLOPC 81 0
109+
Metal5 FILL 81 4
110+
Metal5 FILLOPC 81 4
111111
Metal5 VIA 81 0
112112
Metal5 VIAFILL 81 0
113113
Metal5 VIAFILLOPC 81 0

0 commit comments

Comments
 (0)