Skip to content

Commit 63cf7b2

Browse files
authored
Merge pull request #9056 from gadfort/odb-use-halo
odb: use instance halo when available
2 parents 95dd84c + cea19cb commit 63cf7b2

File tree

6 files changed

+359
-9
lines changed

6 files changed

+359
-9
lines changed

src/odb/src/zutil/util.cpp

Lines changed: 31 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -72,8 +72,21 @@ static void cutRow(dbBlock* block,
7272
vector<std::pair<int, int>> row_blockage_xs;
7373
row_blockage_xs.reserve(row_blockages.size());
7474
for (dbBox* row_blockage_bbox : row_blockages) {
75-
row_blockage_xs.emplace_back(row_blockage_bbox->xMin(),
76-
row_blockage_bbox->xMax());
75+
if (row_blockage_bbox->getOwnerType() == odb::dbBoxOwner::INST) {
76+
odb::dbInst* inst
77+
= static_cast<odb::dbInst*>(row_blockage_bbox->getBoxOwner());
78+
odb::dbBox* halo = inst->getHalo();
79+
if (halo != nullptr) {
80+
row_blockage_xs.emplace_back(row_blockage_bbox->xMin() - halo->xMin(),
81+
row_blockage_bbox->xMax() + halo->xMax());
82+
} else {
83+
row_blockage_xs.emplace_back(row_blockage_bbox->xMin() - halo_x,
84+
row_blockage_bbox->xMax() + halo_x);
85+
}
86+
} else {
87+
row_blockage_xs.emplace_back(row_blockage_bbox->xMin() - halo_x,
88+
row_blockage_bbox->xMax() + halo_x);
89+
}
7790
}
7891

7992
std::sort(row_blockage_xs.begin(), row_blockage_xs.end());
@@ -84,7 +97,7 @@ static void cutRow(dbBlock* block,
8497
for (std::pair<int, int> blockage : row_blockage_xs) {
8598
const int blockage_x0 = blockage.first;
8699
const int new_row_end_x
87-
= makeSiteLoc(blockage_x0 - halo_x, site_width, true, start_origin_x);
100+
= makeSiteLoc(blockage_x0, site_width, true, start_origin_x);
88101
buildRow(block,
89102
row_name + "_" + std::to_string(row_sub_idx),
90103
row_site,
@@ -97,7 +110,7 @@ static void cutRow(dbBlock* block,
97110
row_sub_idx++;
98111
const int blockage_x1 = blockage.second;
99112
start_origin_x
100-
= makeSiteLoc(blockage_x1 + halo_x, site_width, false, start_origin_x);
113+
= makeSiteLoc(blockage_x1, site_width, false, start_origin_x);
101114
}
102115
// Make last row
103116
buildRow(block,
@@ -115,20 +128,29 @@ static void cutRow(dbBlock* block,
115128

116129
static bool overlaps(dbBox* blockage, dbRow* row, int halo_x, int halo_y)
117130
{
118-
Rect rowBB = row->getBBox();
131+
const Rect rowBB = row->getBBox();
132+
133+
odb::dbBox* halo = nullptr;
134+
if (blockage->getOwnerType() == odb::dbBoxOwner::INST) {
135+
halo = static_cast<odb::dbInst*>(blockage->getBoxOwner())->getHalo();
136+
}
119137

120138
// Check if Y has overlap first since rows are long and skinny
121-
const int blockage_lly = blockage->yMin() - halo_y;
122-
const int blockage_ury = blockage->yMax() + halo_y;
139+
const int blockage_lly
140+
= blockage->yMin() - (halo != nullptr ? halo->yMin() : halo_y);
141+
const int blockage_ury
142+
= blockage->yMax() + (halo != nullptr ? halo->yMax() : halo_y);
123143
const int row_lly = rowBB.yMin();
124144
const int row_ury = rowBB.yMax();
125145

126146
if (blockage_lly >= row_ury || row_lly >= blockage_ury) {
127147
return false;
128148
}
129149

130-
const int blockage_llx = blockage->xMin() - halo_x;
131-
const int blockage_urx = blockage->xMax() + halo_x;
150+
const int blockage_llx
151+
= blockage->xMin() - (halo != nullptr ? halo->xMin() : halo_x);
152+
const int blockage_urx
153+
= blockage->xMax() + (halo != nullptr ? halo->xMax() : halo_x);
132154
const int row_llx = rowBB.xMin();
133155
const int row_urx = rowBB.xMax();
134156

src/tap/test/BUILD

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ COMPULSORY_TESTS = [
1515
"boundary_macros_separate2",
1616
"boundary_macros_tapcell",
1717
"cut_rows",
18+
"cut_rows_halo",
1819
"cut_rows_min_width",
1920
"cut_rows_with_endcaps",
2021
"disallow_one_site_gaps",

src/tap/test/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ or_integration_tests(
1010
boundary_macros_separate2
1111
boundary_macros_tapcell
1212
cut_rows
13+
cut_rows_halo
1314
cut_rows_min_width
1415
cut_rows_with_endcaps
1516
disallow_one_site_gaps

src/tap/test/cut_rows_halo.defok

Lines changed: 301 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,301 @@
1+
VERSION 5.8 ;
2+
DIVIDERCHAR "/" ;
3+
BUSBITCHARS "[]" ;
4+
DESIGN gcd ;
5+
UNITS DISTANCE MICRONS 2000 ;
6+
DIEAREA ( 0 0 ) ( 200260 201600 ) ;
7+
ROW ROW_1_2 FreePDK45_38x28_10R_NP_162NW_34O 131860 25200 N DO 41 BY 1 STEP 380 0 ;
8+
ROW ROW_2_2 FreePDK45_38x28_10R_NP_162NW_34O 131860 28000 FS DO 41 BY 1 STEP 380 0 ;
9+
ROW ROW_3_2 FreePDK45_38x28_10R_NP_162NW_34O 131860 30800 N DO 41 BY 1 STEP 380 0 ;
10+
ROW ROW_4_2 FreePDK45_38x28_10R_NP_162NW_34O 131860 33600 FS DO 41 BY 1 STEP 380 0 ;
11+
ROW ROW_5_2 FreePDK45_38x28_10R_NP_162NW_34O 131860 36400 N DO 41 BY 1 STEP 380 0 ;
12+
ROW ROW_6_2 FreePDK45_38x28_10R_NP_162NW_34O 131860 39200 FS DO 41 BY 1 STEP 380 0 ;
13+
ROW ROW_7_2 FreePDK45_38x28_10R_NP_162NW_34O 131860 42000 N DO 41 BY 1 STEP 380 0 ;
14+
ROW ROW_8_2 FreePDK45_38x28_10R_NP_162NW_34O 131860 44800 FS DO 41 BY 1 STEP 380 0 ;
15+
ROW ROW_53_2 FreePDK45_38x28_10R_NP_162NW_34O 131860 170800 N DO 58 BY 1 STEP 380 0 ;
16+
ROW ROW_54_2 FreePDK45_38x28_10R_NP_162NW_34O 131860 173600 FS DO 58 BY 1 STEP 380 0 ;
17+
ROW ROW_55_2 FreePDK45_38x28_10R_NP_162NW_34O 131860 176400 N DO 58 BY 1 STEP 380 0 ;
18+
ROW ROW_56_2 FreePDK45_38x28_10R_NP_162NW_34O 131860 179200 FS DO 58 BY 1 STEP 380 0 ;
19+
ROW ROW_0_2 FreePDK45_38x28_10R_NP_162NW_34O 131860 22400 FS DO 41 BY 1 STEP 380 0 ;
20+
COMPONENTS 5 ;
21+
- memC fakeram45_64x7 + FIXED ( 63840 52880 ) N ;
22+
- memNE fakeram45_64x7 + FIXED ( 155980 109200 ) N + HALO 2000 2000 2000 2000 ;
23+
- memNW fakeram45_64x7 + FIXED ( 20140 109200 ) N ;
24+
- memSE fakeram45_64x7 + FIXED ( 151740 22400 ) N ;
25+
- memSW fakeram45_64x7 + FIXED ( 20140 22400 ) N ;
26+
END COMPONENTS
27+
PINS 54 ;
28+
- clk + NET clk + DIRECTION INPUT + USE SIGNAL
29+
+ PORT
30+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
31+
+ PLACED ( 70 66220 ) N ;
32+
- req_msg[0] + NET req_msg[0] + DIRECTION INPUT + USE SIGNAL
33+
+ PORT
34+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
35+
+ PLACED ( 70 173180 ) N ;
36+
- req_msg[10] + NET req_msg[10] + DIRECTION INPUT + USE SIGNAL
37+
+ PORT
38+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
39+
+ PLACED ( 70 149660 ) N ;
40+
- req_msg[11] + NET req_msg[11] + DIRECTION INPUT + USE SIGNAL
41+
+ PORT
42+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
43+
+ PLACED ( 70 113820 ) N ;
44+
- req_msg[12] + NET req_msg[12] + DIRECTION INPUT + USE SIGNAL
45+
+ PORT
46+
+ LAYER metal2 ( -70 -70 ) ( 70 70 )
47+
+ PLACED ( 77710 201530 ) N ;
48+
- req_msg[13] + NET req_msg[13] + DIRECTION INPUT + USE SIGNAL
49+
+ PORT
50+
+ LAYER metal2 ( -70 -70 ) ( 70 70 )
51+
+ PLACED ( 154470 70 ) N ;
52+
- req_msg[14] + NET req_msg[14] + DIRECTION INPUT + USE SIGNAL
53+
+ PORT
54+
+ LAYER metal2 ( -70 -70 ) ( 70 70 )
55+
+ PLACED ( 187150 70 ) N ;
56+
- req_msg[15] + NET req_msg[15] + DIRECTION INPUT + USE SIGNAL
57+
+ PORT
58+
+ LAYER metal2 ( -70 -70 ) ( 70 70 )
59+
+ PLACED ( 45790 201530 ) N ;
60+
- req_msg[16] + NET req_msg[16] + DIRECTION INPUT + USE SIGNAL
61+
+ PORT
62+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
63+
+ PLACED ( 70 78540 ) N ;
64+
- req_msg[17] + NET req_msg[17] + DIRECTION INPUT + USE SIGNAL
65+
+ PORT
66+
+ LAYER metal2 ( -70 -70 ) ( 70 70 )
67+
+ PLACED ( 190190 201530 ) N ;
68+
- req_msg[18] + NET req_msg[18] + DIRECTION INPUT + USE SIGNAL
69+
+ PORT
70+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
71+
+ PLACED ( 200190 135100 ) N ;
72+
- req_msg[19] + NET req_msg[19] + DIRECTION INPUT + USE SIGNAL
73+
+ PORT
74+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
75+
+ PLACED ( 70 137900 ) N ;
76+
- req_msg[1] + NET req_msg[1] + DIRECTION INPUT + USE SIGNAL
77+
+ PORT
78+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
79+
+ PLACED ( 200190 16380 ) N ;
80+
- req_msg[20] + NET req_msg[20] + DIRECTION INPUT + USE SIGNAL
81+
+ PORT
82+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
83+
+ PLACED ( 70 161420 ) N ;
84+
- req_msg[21] + NET req_msg[21] + DIRECTION INPUT + USE SIGNAL
85+
+ PORT
86+
+ LAYER metal2 ( -70 -70 ) ( 70 70 )
87+
+ PLACED ( 93670 201530 ) N ;
88+
- req_msg[22] + NET req_msg[22] + DIRECTION INPUT + USE SIGNAL
89+
+ PORT
90+
+ LAYER metal2 ( -70 -70 ) ( 70 70 )
91+
+ PLACED ( 41990 70 ) N ;
92+
- req_msg[23] + NET req_msg[23] + DIRECTION INPUT + USE SIGNAL
93+
+ PORT
94+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
95+
+ PLACED ( 200190 75740 ) N ;
96+
- req_msg[24] + NET req_msg[24] + DIRECTION INPUT + USE SIGNAL
97+
+ PORT
98+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
99+
+ PLACED ( 70 90300 ) N ;
100+
- req_msg[25] + NET req_msg[25] + DIRECTION INPUT + USE SIGNAL
101+
+ PORT
102+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
103+
+ PLACED ( 200190 99260 ) N ;
104+
- req_msg[26] + NET req_msg[26] + DIRECTION INPUT + USE SIGNAL
105+
+ PORT
106+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
107+
+ PLACED ( 200190 170380 ) N ;
108+
- req_msg[27] + NET req_msg[27] + DIRECTION INPUT + USE SIGNAL
109+
+ PORT
110+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
111+
+ PLACED ( 200190 63420 ) N ;
112+
- req_msg[28] + NET req_msg[28] + DIRECTION INPUT + USE SIGNAL
113+
+ PORT
114+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
115+
+ PLACED ( 70 184940 ) N ;
116+
- req_msg[29] + NET req_msg[29] + DIRECTION INPUT + USE SIGNAL
117+
+ PORT
118+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
119+
+ PLACED ( 70 19180 ) N ;
120+
- req_msg[2] + NET req_msg[2] + DIRECTION INPUT + USE SIGNAL
121+
+ PORT
122+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
123+
+ PLACED ( 200190 51660 ) N ;
124+
- req_msg[30] + NET req_msg[30] + DIRECTION INPUT + USE SIGNAL
125+
+ PORT
126+
+ LAYER metal2 ( -70 -70 ) ( 70 70 )
127+
+ PLACED ( 61750 201530 ) N ;
128+
- req_msg[31] + NET req_msg[31] + DIRECTION INPUT + USE SIGNAL
129+
+ PORT
130+
+ LAYER metal2 ( -70 -70 ) ( 70 70 )
131+
+ PLACED ( 89870 70 ) N ;
132+
- req_msg[3] + NET req_msg[3] + DIRECTION INPUT + USE SIGNAL
133+
+ PORT
134+
+ LAYER metal2 ( -70 -70 ) ( 70 70 )
135+
+ PLACED ( 29830 201530 ) N ;
136+
- req_msg[4] + NET req_msg[4] + DIRECTION INPUT + USE SIGNAL
137+
+ PORT
138+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
139+
+ PLACED ( 200190 39900 ) N ;
140+
- req_msg[5] + NET req_msg[5] + DIRECTION INPUT + USE SIGNAL
141+
+ PORT
142+
+ LAYER metal2 ( -70 -70 ) ( 70 70 )
143+
+ PLACED ( 174230 201530 ) N ;
144+
- req_msg[6] + NET req_msg[6] + DIRECTION INPUT + USE SIGNAL
145+
+ PORT
146+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
147+
+ PLACED ( 70 125580 ) N ;
148+
- req_msg[7] + NET req_msg[7] + DIRECTION INPUT + USE SIGNAL
149+
+ PORT
150+
+ LAYER metal2 ( -70 -70 ) ( 70 70 )
151+
+ PLACED ( 122550 70 ) N ;
152+
- req_msg[8] + NET req_msg[8] + DIRECTION INPUT + USE SIGNAL
153+
+ PORT
154+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
155+
+ PLACED ( 200190 146860 ) N ;
156+
- req_msg[9] + NET req_msg[9] + DIRECTION INPUT + USE SIGNAL
157+
+ PORT
158+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
159+
+ PLACED ( 70 30940 ) N ;
160+
- req_rdy + NET req_rdy + DIRECTION OUTPUT + USE SIGNAL
161+
+ PORT
162+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
163+
+ PLACED ( 200190 182140 ) N ;
164+
- req_val + NET req_val + DIRECTION INPUT + USE SIGNAL
165+
+ PORT
166+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
167+
+ PLACED ( 200190 87500 ) N ;
168+
- reset + NET reset + DIRECTION INPUT + USE SIGNAL
169+
+ PORT
170+
+ LAYER metal2 ( -70 -70 ) ( 70 70 )
171+
+ PLACED ( 73910 70 ) N ;
172+
- resp_msg[0] + NET resp_msg[0] + DIRECTION OUTPUT + USE SIGNAL
173+
+ PORT
174+
+ LAYER metal2 ( -70 -70 ) ( 70 70 )
175+
+ PLACED ( 57950 70 ) N ;
176+
- resp_msg[10] + NET resp_msg[10] + DIRECTION OUTPUT + USE SIGNAL
177+
+ PORT
178+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
179+
+ PLACED ( 200190 28140 ) N ;
180+
- resp_msg[11] + NET resp_msg[11] + DIRECTION OUTPUT + USE SIGNAL
181+
+ PORT
182+
+ LAYER metal2 ( -70 -70 ) ( 70 70 )
183+
+ PLACED ( 170430 70 ) N ;
184+
- resp_msg[12] + NET resp_msg[12] + DIRECTION OUTPUT + USE SIGNAL
185+
+ PORT
186+
+ LAYER metal2 ( -70 -70 ) ( 70 70 )
187+
+ PLACED ( 138510 70 ) N ;
188+
- resp_msg[13] + NET resp_msg[13] + DIRECTION OUTPUT + USE SIGNAL
189+
+ PORT
190+
+ LAYER metal2 ( -70 -70 ) ( 70 70 )
191+
+ PLACED ( 106590 70 ) N ;
192+
- resp_msg[14] + NET resp_msg[14] + DIRECTION OUTPUT + USE SIGNAL
193+
+ PORT
194+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
195+
+ PLACED ( 70 102060 ) N ;
196+
- resp_msg[15] + NET resp_msg[15] + DIRECTION OUTPUT + USE SIGNAL
197+
+ PORT
198+
+ LAYER metal2 ( -70 -70 ) ( 70 70 )
199+
+ PLACED ( 26030 70 ) N ;
200+
- resp_msg[1] + NET resp_msg[1] + DIRECTION OUTPUT + USE SIGNAL
201+
+ PORT
202+
+ LAYER metal2 ( -70 -70 ) ( 70 70 )
203+
+ PLACED ( 110390 201530 ) N ;
204+
- resp_msg[2] + NET resp_msg[2] + DIRECTION OUTPUT + USE SIGNAL
205+
+ PORT
206+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
207+
+ PLACED ( 200190 122780 ) N ;
208+
- resp_msg[3] + NET resp_msg[3] + DIRECTION OUTPUT + USE SIGNAL
209+
+ PORT
210+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
211+
+ PLACED ( 70 54460 ) N ;
212+
- resp_msg[4] + NET resp_msg[4] + DIRECTION OUTPUT + USE SIGNAL
213+
+ PORT
214+
+ LAYER metal2 ( -70 -70 ) ( 70 70 )
215+
+ PLACED ( 13110 201530 ) N ;
216+
- resp_msg[5] + NET resp_msg[5] + DIRECTION OUTPUT + USE SIGNAL
217+
+ PORT
218+
+ LAYER metal2 ( -70 -70 ) ( 70 70 )
219+
+ PLACED ( 126350 201530 ) N ;
220+
- resp_msg[6] + NET resp_msg[6] + DIRECTION OUTPUT + USE SIGNAL
221+
+ PORT
222+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
223+
+ PLACED ( 200190 158620 ) N ;
224+
- resp_msg[7] + NET resp_msg[7] + DIRECTION OUTPUT + USE SIGNAL
225+
+ PORT
226+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
227+
+ PLACED ( 200190 111020 ) N ;
228+
- resp_msg[8] + NET resp_msg[8] + DIRECTION OUTPUT + USE SIGNAL
229+
+ PORT
230+
+ LAYER metal2 ( -70 -70 ) ( 70 70 )
231+
+ PLACED ( 10070 70 ) N ;
232+
- resp_msg[9] + NET resp_msg[9] + DIRECTION OUTPUT + USE SIGNAL
233+
+ PORT
234+
+ LAYER metal2 ( -70 -70 ) ( 70 70 )
235+
+ PLACED ( 142310 201530 ) N ;
236+
- resp_rdy + NET resp_rdy + DIRECTION INPUT + USE SIGNAL
237+
+ PORT
238+
+ LAYER metal2 ( -70 -70 ) ( 70 70 )
239+
+ PLACED ( 158270 201530 ) N ;
240+
- resp_val + NET resp_val + DIRECTION OUTPUT + USE SIGNAL
241+
+ PORT
242+
+ LAYER metal3 ( -70 -70 ) ( 70 70 )
243+
+ PLACED ( 70 42700 ) N ;
244+
END PINS
245+
NETS 54 ;
246+
- clk ( PIN clk ) + USE SIGNAL ;
247+
- req_msg[0] ( PIN req_msg[0] ) + USE SIGNAL ;
248+
- req_msg[10] ( PIN req_msg[10] ) + USE SIGNAL ;
249+
- req_msg[11] ( PIN req_msg[11] ) + USE SIGNAL ;
250+
- req_msg[12] ( PIN req_msg[12] ) + USE SIGNAL ;
251+
- req_msg[13] ( PIN req_msg[13] ) + USE SIGNAL ;
252+
- req_msg[14] ( PIN req_msg[14] ) + USE SIGNAL ;
253+
- req_msg[15] ( PIN req_msg[15] ) + USE SIGNAL ;
254+
- req_msg[16] ( PIN req_msg[16] ) + USE SIGNAL ;
255+
- req_msg[17] ( PIN req_msg[17] ) + USE SIGNAL ;
256+
- req_msg[18] ( PIN req_msg[18] ) + USE SIGNAL ;
257+
- req_msg[19] ( PIN req_msg[19] ) + USE SIGNAL ;
258+
- req_msg[1] ( PIN req_msg[1] ) + USE SIGNAL ;
259+
- req_msg[20] ( PIN req_msg[20] ) + USE SIGNAL ;
260+
- req_msg[21] ( PIN req_msg[21] ) + USE SIGNAL ;
261+
- req_msg[22] ( PIN req_msg[22] ) + USE SIGNAL ;
262+
- req_msg[23] ( PIN req_msg[23] ) + USE SIGNAL ;
263+
- req_msg[24] ( PIN req_msg[24] ) + USE SIGNAL ;
264+
- req_msg[25] ( PIN req_msg[25] ) + USE SIGNAL ;
265+
- req_msg[26] ( PIN req_msg[26] ) + USE SIGNAL ;
266+
- req_msg[27] ( PIN req_msg[27] ) + USE SIGNAL ;
267+
- req_msg[28] ( PIN req_msg[28] ) + USE SIGNAL ;
268+
- req_msg[29] ( PIN req_msg[29] ) + USE SIGNAL ;
269+
- req_msg[2] ( PIN req_msg[2] ) + USE SIGNAL ;
270+
- req_msg[30] ( PIN req_msg[30] ) + USE SIGNAL ;
271+
- req_msg[31] ( PIN req_msg[31] ) + USE SIGNAL ;
272+
- req_msg[3] ( PIN req_msg[3] ) + USE SIGNAL ;
273+
- req_msg[4] ( PIN req_msg[4] ) + USE SIGNAL ;
274+
- req_msg[5] ( PIN req_msg[5] ) + USE SIGNAL ;
275+
- req_msg[6] ( PIN req_msg[6] ) + USE SIGNAL ;
276+
- req_msg[7] ( PIN req_msg[7] ) + USE SIGNAL ;
277+
- req_msg[8] ( PIN req_msg[8] ) + USE SIGNAL ;
278+
- req_msg[9] ( PIN req_msg[9] ) + USE SIGNAL ;
279+
- req_rdy ( PIN req_rdy ) + USE SIGNAL ;
280+
- req_val ( PIN req_val ) + USE SIGNAL ;
281+
- reset ( PIN reset ) + USE SIGNAL ;
282+
- resp_msg[0] ( PIN resp_msg[0] ) + USE SIGNAL ;
283+
- resp_msg[10] ( PIN resp_msg[10] ) + USE SIGNAL ;
284+
- resp_msg[11] ( PIN resp_msg[11] ) + USE SIGNAL ;
285+
- resp_msg[12] ( PIN resp_msg[12] ) + USE SIGNAL ;
286+
- resp_msg[13] ( PIN resp_msg[13] ) + USE SIGNAL ;
287+
- resp_msg[14] ( PIN resp_msg[14] ) + USE SIGNAL ;
288+
- resp_msg[15] ( PIN resp_msg[15] ) + USE SIGNAL ;
289+
- resp_msg[1] ( PIN resp_msg[1] ) + USE SIGNAL ;
290+
- resp_msg[2] ( PIN resp_msg[2] ) + USE SIGNAL ;
291+
- resp_msg[3] ( PIN resp_msg[3] ) + USE SIGNAL ;
292+
- resp_msg[4] ( PIN resp_msg[4] ) + USE SIGNAL ;
293+
- resp_msg[5] ( PIN resp_msg[5] ) + USE SIGNAL ;
294+
- resp_msg[6] ( PIN resp_msg[6] ) + USE SIGNAL ;
295+
- resp_msg[7] ( PIN resp_msg[7] ) + USE SIGNAL ;
296+
- resp_msg[8] ( PIN resp_msg[8] ) + USE SIGNAL ;
297+
- resp_msg[9] ( PIN resp_msg[9] ) + USE SIGNAL ;
298+
- resp_rdy ( PIN resp_rdy ) + USE SIGNAL ;
299+
- resp_val ( PIN resp_val ) + USE SIGNAL ;
300+
END NETS
301+
END DESIGN

0 commit comments

Comments
 (0)