Commit | Line | Data |
---|---|---|
86530b38 AT |
1 | // ========== Copyright Header Begin ========================================== |
2 | // | |
3 | // OpenSPARC T2 Processor File: niu_pio_ic.v | |
4 | // Copyright (C) 1995-2007 Sun Microsystems, Inc. All Rights Reserved | |
5 | // 4150 Network Circle, Santa Clara, California 95054, U.S.A. | |
6 | // | |
7 | // * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. | |
8 | // | |
9 | // This program is free software; you can redistribute it and/or modify | |
10 | // it under the terms of the GNU General Public License as published by | |
11 | // the Free Software Foundation; version 2 of the License. | |
12 | // | |
13 | // This program is distributed in the hope that it will be useful, | |
14 | // but WITHOUT ANY WARRANTY; without even the implied warranty of | |
15 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
16 | // GNU General Public License for more details. | |
17 | // | |
18 | // You should have received a copy of the GNU General Public License | |
19 | // along with this program; if not, write to the Free Software | |
20 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
21 | // | |
22 | // For the avoidance of doubt, and except that if any non-GPL license | |
23 | // choice is available it will apply instead, Sun elects to use only | |
24 | // the General Public License version 2 (GPLv2) at this time for any | |
25 | // software where a choice of GPL license versions is made | |
26 | // available with the language indicating that GPLv2 or any later version | |
27 | // may be used, or where a choice of which version of the GPL is applied is | |
28 | // otherwise unspecified. | |
29 | // | |
30 | // Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, | |
31 | // CA 95054 USA or visit www.sun.com if you need additional information or | |
32 | // have any questions. | |
33 | // | |
34 | // ========== Copyright Header End ============================================ | |
35 | /*%W% %G%*/ | |
36 | ||
37 | /***************************************************************** | |
38 | * | |
39 | * File Name : niu_pio_ic.v | |
40 | * Author Name : John Lo | |
41 | * Description : Interrupt Controller | |
42 | * | |
43 | * Parent Module: | |
44 | * Child Module: | |
45 | * Interface Mod: many. | |
46 | * Date Created : 3/18/04 | |
47 | * | |
48 | * Copyright (c) 2020, Sun Microsystems, Inc. | |
49 | * Sun Proprietary and Confidential | |
50 | * | |
51 | * Modification : | |
52 | * | |
53 | ****************************************************************/ | |
54 | module niu_pio_ic (/*AUTOARG*/ | |
55 | // Outputs | |
56 | intr_valid, intr_invalid, rst_at, group, memship_group0, | |
57 | memship_group1, memship_group2, memship_group3, memship_group4, | |
58 | memship_group5, memship_group6, memship_group7, memship_group8, | |
59 | memship_group9, memship_group10, memship_group11, memship_group12, | |
60 | memship_group13, memship_group14, memship_group15, | |
61 | memship_group16, memship_group17, memship_group18, | |
62 | memship_group19, memship_group20, memship_group21, | |
63 | memship_group22, memship_group23, memship_group24, | |
64 | memship_group25, memship_group26, memship_group27, | |
65 | memship_group28, memship_group29, memship_group30, | |
66 | memship_group31, memship_group32, memship_group33, | |
67 | memship_group34, memship_group35, memship_group36, | |
68 | memship_group37, memship_group38, memship_group39, | |
69 | memship_group40, memship_group41, memship_group42, | |
70 | memship_group43, memship_group44, memship_group45, | |
71 | memship_group46, memship_group47, memship_group48, | |
72 | memship_group49, memship_group50, memship_group51, | |
73 | memship_group52, memship_group53, memship_group54, | |
74 | memship_group55, memship_group56, memship_group57, | |
75 | memship_group58, memship_group59, memship_group60, | |
76 | memship_group61, memship_group62, memship_group63, | |
77 | ig_state, | |
78 | // Inputs | |
79 | clk, reset, ldgn0, ldgn1, ldgn2, ldgn3, ldgn4, ldgn5, | |
80 | ldgn6, ldgn7, ldgn8, ldgn9, ldgn10, ldgn11, ldgn12, ldgn13, | |
81 | ldgn14, ldgn15, ldgn16, ldgn17, ldgn18, ldgn19, ldgn20, ldgn21, | |
82 | ldgn22, ldgn23, ldgn24, ldgn25, ldgn26, ldgn27, ldgn28, ldgn29, | |
83 | ldgn30, ldgn31, ldgn32, ldgn33, ldgn34, ldgn35, ldgn36, ldgn37, | |
84 | ldgn38, ldgn39, ldgn40, ldgn41, ldgn42, ldgn43, ldgn44, ldgn45, | |
85 | ldgn46, ldgn47, ldgn48, ldgn49, ldgn50, ldgn51, ldgn52, ldgn53, | |
86 | ldgn54, ldgn55, ldgn56, ldgn57, ldgn58, ldgn59, ldgn60, ldgn61, | |
87 | ldgn62, ldgn63, ldgn64, ldgn65, ldgn66, ldgn67, ldgn68, ldf_mask0, | |
88 | ldf_mask1, ldf_mask2, ldf_mask3, ldf_mask4, ldf_mask5, ldf_mask6, | |
89 | ldf_mask7, ldf_mask8, ldf_mask9, ldf_mask10, ldf_mask11, | |
90 | ldf_mask12, ldf_mask13, ldf_mask14, ldf_mask15, ldf_mask16, | |
91 | ldf_mask17, ldf_mask18, ldf_mask19, ldf_mask20, ldf_mask21, | |
92 | ldf_mask22, ldf_mask23, ldf_mask24, ldf_mask25, ldf_mask26, | |
93 | ldf_mask27, ldf_mask28, ldf_mask29, ldf_mask30, ldf_mask31, | |
94 | ldf_mask32, ldf_mask33, ldf_mask34, ldf_mask35, ldf_mask36, | |
95 | ldf_mask37, ldf_mask38, ldf_mask39, ldf_mask40, ldf_mask41, | |
96 | ldf_mask42, ldf_mask43, ldf_mask44, ldf_mask45, ldf_mask46, | |
97 | ldf_mask47, ldf_mask48, ldf_mask49, ldf_mask50, ldf_mask51, | |
98 | ldf_mask52, ldf_mask53, ldf_mask54, ldf_mask55, ldf_mask56, | |
99 | ldf_mask57, ldf_mask58, ldf_mask59, ldf_mask60, ldf_mask61, | |
100 | ldf_mask62, ldf_mask63, ldf_mask64, ldf_mask65, ldf_mask66, | |
101 | ldf_mask67, ldf_mask68, ldfi, ldfj, arm0, arm1, arm2, arm3, arm4, | |
102 | arm5, arm6, arm7, arm8, arm9, arm10, arm11, arm12, arm13, arm14, | |
103 | arm15, arm16, arm17, arm18, arm19, arm20, arm21, arm22, arm23, | |
104 | arm24, arm25, arm26, arm27, arm28, arm29, arm30, arm31, arm32, | |
105 | arm33, arm34, arm35, arm36, arm37, arm38, arm39, arm40, arm41, | |
106 | arm42, arm43, arm44, arm45, arm46, arm47, arm48, arm49, arm50, | |
107 | arm51, arm52, arm53, arm54, arm55, arm56, arm57, arm58, arm59, | |
108 | arm60, arm61, arm62, arm63, timer0, timer1, timer2, timer3, | |
109 | timer4, timer5, timer6, timer7, timer8, timer9, timer10, timer11, | |
110 | timer12, timer13, timer14, timer15, timer16, timer17, timer18, | |
111 | timer19, timer20, timer21, timer22, timer23, timer24, timer25, | |
112 | timer26, timer27, timer28, timer29, timer30, timer31, timer32, | |
113 | timer33, timer34, timer35, timer36, timer37, timer38, timer39, | |
114 | timer40, timer41, timer42, timer43, timer44, timer45, timer46, | |
115 | timer47, timer48, timer49, timer50, timer51, timer52, timer53, | |
116 | timer54, timer55, timer56, timer57, timer58, timer59, timer60, | |
117 | timer61, timer62, timer63, ibusy | |
118 | ); | |
119 | ||
120 | input clk; | |
121 | input reset; | |
122 | ||
123 | input [5:0] ldgn0 ; | |
124 | input [5:0] ldgn1 ; | |
125 | input [5:0] ldgn2 ; | |
126 | input [5:0] ldgn3 ; | |
127 | input [5:0] ldgn4 ; | |
128 | input [5:0] ldgn5 ; | |
129 | input [5:0] ldgn6 ; | |
130 | input [5:0] ldgn7 ; | |
131 | input [5:0] ldgn8 ; | |
132 | input [5:0] ldgn9 ; | |
133 | input [5:0] ldgn10; | |
134 | input [5:0] ldgn11; | |
135 | input [5:0] ldgn12; | |
136 | input [5:0] ldgn13; | |
137 | input [5:0] ldgn14; | |
138 | input [5:0] ldgn15; | |
139 | input [5:0] ldgn16; | |
140 | input [5:0] ldgn17; | |
141 | input [5:0] ldgn18; | |
142 | input [5:0] ldgn19; | |
143 | input [5:0] ldgn20; | |
144 | input [5:0] ldgn21; | |
145 | input [5:0] ldgn22; | |
146 | input [5:0] ldgn23; | |
147 | input [5:0] ldgn24; | |
148 | input [5:0] ldgn25; | |
149 | input [5:0] ldgn26; | |
150 | input [5:0] ldgn27; | |
151 | input [5:0] ldgn28; | |
152 | input [5:0] ldgn29; | |
153 | input [5:0] ldgn30; | |
154 | input [5:0] ldgn31; | |
155 | input [5:0] ldgn32; | |
156 | input [5:0] ldgn33; | |
157 | input [5:0] ldgn34; | |
158 | input [5:0] ldgn35; | |
159 | input [5:0] ldgn36; | |
160 | input [5:0] ldgn37; | |
161 | input [5:0] ldgn38; | |
162 | input [5:0] ldgn39; | |
163 | input [5:0] ldgn40; | |
164 | input [5:0] ldgn41; | |
165 | input [5:0] ldgn42; | |
166 | input [5:0] ldgn43; | |
167 | input [5:0] ldgn44; | |
168 | input [5:0] ldgn45; | |
169 | input [5:0] ldgn46; | |
170 | input [5:0] ldgn47; | |
171 | input [5:0] ldgn48; | |
172 | input [5:0] ldgn49; | |
173 | input [5:0] ldgn50; | |
174 | input [5:0] ldgn51; | |
175 | input [5:0] ldgn52; | |
176 | input [5:0] ldgn53; | |
177 | input [5:0] ldgn54; | |
178 | input [5:0] ldgn55; | |
179 | input [5:0] ldgn56; | |
180 | input [5:0] ldgn57; | |
181 | input [5:0] ldgn58; | |
182 | input [5:0] ldgn59; | |
183 | input [5:0] ldgn60; | |
184 | input [5:0] ldgn61; | |
185 | input [5:0] ldgn62; | |
186 | input [5:0] ldgn63; | |
187 | input [5:0] ldgn64; | |
188 | input [5:0] ldgn65; | |
189 | input [5:0] ldgn66; | |
190 | input [5:0] ldgn67; | |
191 | input [5:0] ldgn68; | |
192 | ||
193 | input [1:0] ldf_mask0 ; | |
194 | input [1:0] ldf_mask1 ; | |
195 | input [1:0] ldf_mask2 ; | |
196 | input [1:0] ldf_mask3 ; | |
197 | input [1:0] ldf_mask4 ; | |
198 | input [1:0] ldf_mask5 ; | |
199 | input [1:0] ldf_mask6 ; | |
200 | input [1:0] ldf_mask7 ; | |
201 | input [1:0] ldf_mask8 ; | |
202 | input [1:0] ldf_mask9 ; | |
203 | input [1:0] ldf_mask10; | |
204 | input [1:0] ldf_mask11; | |
205 | input [1:0] ldf_mask12; | |
206 | input [1:0] ldf_mask13; | |
207 | input [1:0] ldf_mask14; | |
208 | input [1:0] ldf_mask15; | |
209 | input [1:0] ldf_mask16; | |
210 | input [1:0] ldf_mask17; | |
211 | input [1:0] ldf_mask18; | |
212 | input [1:0] ldf_mask19; | |
213 | input [1:0] ldf_mask20; | |
214 | input [1:0] ldf_mask21; | |
215 | input [1:0] ldf_mask22; | |
216 | input [1:0] ldf_mask23; | |
217 | input [1:0] ldf_mask24; | |
218 | input [1:0] ldf_mask25; | |
219 | input [1:0] ldf_mask26; | |
220 | input [1:0] ldf_mask27; | |
221 | input [1:0] ldf_mask28; | |
222 | input [1:0] ldf_mask29; | |
223 | input [1:0] ldf_mask30; | |
224 | input [1:0] ldf_mask31; | |
225 | input [1:0] ldf_mask32; | |
226 | input [1:0] ldf_mask33; | |
227 | input [1:0] ldf_mask34; | |
228 | input [1:0] ldf_mask35; | |
229 | input [1:0] ldf_mask36; | |
230 | input [1:0] ldf_mask37; | |
231 | input [1:0] ldf_mask38; | |
232 | input [1:0] ldf_mask39; | |
233 | input [1:0] ldf_mask40; | |
234 | input [1:0] ldf_mask41; | |
235 | input [1:0] ldf_mask42; | |
236 | input [1:0] ldf_mask43; | |
237 | input [1:0] ldf_mask44; | |
238 | input [1:0] ldf_mask45; | |
239 | input [1:0] ldf_mask46; | |
240 | input [1:0] ldf_mask47; | |
241 | input [1:0] ldf_mask48; | |
242 | input [1:0] ldf_mask49; | |
243 | input [1:0] ldf_mask50; | |
244 | input [1:0] ldf_mask51; | |
245 | input [1:0] ldf_mask52; | |
246 | input [1:0] ldf_mask53; | |
247 | input [1:0] ldf_mask54; | |
248 | input [1:0] ldf_mask55; | |
249 | input [1:0] ldf_mask56; | |
250 | input [1:0] ldf_mask57; | |
251 | input [1:0] ldf_mask58; | |
252 | input [1:0] ldf_mask59; | |
253 | input [1:0] ldf_mask60; | |
254 | input [1:0] ldf_mask61; | |
255 | input [1:0] ldf_mask62; | |
256 | input [1:0] ldf_mask63; | |
257 | input [1:0] ldf_mask64; | |
258 | input [1:0] ldf_mask65; | |
259 | input [1:0] ldf_mask66; | |
260 | input [1:0] ldf_mask67; | |
261 | input [1:0] ldf_mask68; | |
262 | ||
263 | input [68:0] ldfi; | |
264 | input [68:0] ldfj; | |
265 | ||
266 | input arm0 ; | |
267 | input arm1 ; | |
268 | input arm2 ; | |
269 | input arm3 ; | |
270 | input arm4 ; | |
271 | input arm5 ; | |
272 | input arm6 ; | |
273 | input arm7 ; | |
274 | input arm8 ; | |
275 | input arm9 ; | |
276 | input arm10; | |
277 | input arm11; | |
278 | input arm12; | |
279 | input arm13; | |
280 | input arm14; | |
281 | input arm15; | |
282 | input arm16; | |
283 | input arm17; | |
284 | input arm18; | |
285 | input arm19; | |
286 | input arm20; | |
287 | input arm21; | |
288 | input arm22; | |
289 | input arm23; | |
290 | input arm24; | |
291 | input arm25; | |
292 | input arm26; | |
293 | input arm27; | |
294 | input arm28; | |
295 | input arm29; | |
296 | input arm30; | |
297 | input arm31; | |
298 | input arm32; | |
299 | input arm33; | |
300 | input arm34; | |
301 | input arm35; | |
302 | input arm36; | |
303 | input arm37; | |
304 | input arm38; | |
305 | input arm39; | |
306 | input arm40; | |
307 | input arm41; | |
308 | input arm42; | |
309 | input arm43; | |
310 | input arm44; | |
311 | input arm45; | |
312 | input arm46; | |
313 | input arm47; | |
314 | input arm48; | |
315 | input arm49; | |
316 | input arm50; | |
317 | input arm51; | |
318 | input arm52; | |
319 | input arm53; | |
320 | input arm54; | |
321 | input arm55; | |
322 | input arm56; | |
323 | input arm57; | |
324 | input arm58; | |
325 | input arm59; | |
326 | input arm60; | |
327 | input arm61; | |
328 | input arm62; | |
329 | input arm63; | |
330 | ||
331 | input [5:0] timer0 ; | |
332 | input [5:0] timer1 ; | |
333 | input [5:0] timer2 ; | |
334 | input [5:0] timer3 ; | |
335 | input [5:0] timer4 ; | |
336 | input [5:0] timer5 ; | |
337 | input [5:0] timer6 ; | |
338 | input [5:0] timer7 ; | |
339 | input [5:0] timer8 ; | |
340 | input [5:0] timer9 ; | |
341 | input [5:0] timer10; | |
342 | input [5:0] timer11; | |
343 | input [5:0] timer12; | |
344 | input [5:0] timer13; | |
345 | input [5:0] timer14; | |
346 | input [5:0] timer15; | |
347 | input [5:0] timer16; | |
348 | input [5:0] timer17; | |
349 | input [5:0] timer18; | |
350 | input [5:0] timer19; | |
351 | input [5:0] timer20; | |
352 | input [5:0] timer21; | |
353 | input [5:0] timer22; | |
354 | input [5:0] timer23; | |
355 | input [5:0] timer24; | |
356 | input [5:0] timer25; | |
357 | input [5:0] timer26; | |
358 | input [5:0] timer27; | |
359 | input [5:0] timer28; | |
360 | input [5:0] timer29; | |
361 | input [5:0] timer30; | |
362 | input [5:0] timer31; | |
363 | input [5:0] timer32; | |
364 | input [5:0] timer33; | |
365 | input [5:0] timer34; | |
366 | input [5:0] timer35; | |
367 | input [5:0] timer36; | |
368 | input [5:0] timer37; | |
369 | input [5:0] timer38; | |
370 | input [5:0] timer39; | |
371 | input [5:0] timer40; | |
372 | input [5:0] timer41; | |
373 | input [5:0] timer42; | |
374 | input [5:0] timer43; | |
375 | input [5:0] timer44; | |
376 | input [5:0] timer45; | |
377 | input [5:0] timer46; | |
378 | input [5:0] timer47; | |
379 | input [5:0] timer48; | |
380 | input [5:0] timer49; | |
381 | input [5:0] timer50; | |
382 | input [5:0] timer51; | |
383 | input [5:0] timer52; | |
384 | input [5:0] timer53; | |
385 | input [5:0] timer54; | |
386 | input [5:0] timer55; | |
387 | input [5:0] timer56; | |
388 | input [5:0] timer57; | |
389 | input [5:0] timer58; | |
390 | input [5:0] timer59; | |
391 | input [5:0] timer60; | |
392 | input [5:0] timer61; | |
393 | input [5:0] timer62; | |
394 | input [5:0] timer63; | |
395 | ||
396 | input ibusy; | |
397 | output intr_valid; | |
398 | output intr_invalid; | |
399 | output rst_at; | |
400 | output [5:0] group; | |
401 | ||
402 | output [68:0] memship_group0 ; | |
403 | output [68:0] memship_group1 ; | |
404 | output [68:0] memship_group2 ; | |
405 | output [68:0] memship_group3 ; | |
406 | output [68:0] memship_group4 ; | |
407 | output [68:0] memship_group5 ; | |
408 | output [68:0] memship_group6 ; | |
409 | output [68:0] memship_group7 ; | |
410 | output [68:0] memship_group8 ; | |
411 | output [68:0] memship_group9 ; | |
412 | output [68:0] memship_group10; | |
413 | output [68:0] memship_group11; | |
414 | output [68:0] memship_group12; | |
415 | output [68:0] memship_group13; | |
416 | output [68:0] memship_group14; | |
417 | output [68:0] memship_group15; | |
418 | output [68:0] memship_group16; | |
419 | output [68:0] memship_group17; | |
420 | output [68:0] memship_group18; | |
421 | output [68:0] memship_group19; | |
422 | output [68:0] memship_group20; | |
423 | output [68:0] memship_group21; | |
424 | output [68:0] memship_group22; | |
425 | output [68:0] memship_group23; | |
426 | output [68:0] memship_group24; | |
427 | output [68:0] memship_group25; | |
428 | output [68:0] memship_group26; | |
429 | output [68:0] memship_group27; | |
430 | output [68:0] memship_group28; | |
431 | output [68:0] memship_group29; | |
432 | output [68:0] memship_group30; | |
433 | output [68:0] memship_group31; | |
434 | output [68:0] memship_group32; | |
435 | output [68:0] memship_group33; | |
436 | output [68:0] memship_group34; | |
437 | output [68:0] memship_group35; | |
438 | output [68:0] memship_group36; | |
439 | output [68:0] memship_group37; | |
440 | output [68:0] memship_group38; | |
441 | output [68:0] memship_group39; | |
442 | output [68:0] memship_group40; | |
443 | output [68:0] memship_group41; | |
444 | output [68:0] memship_group42; | |
445 | output [68:0] memship_group43; | |
446 | output [68:0] memship_group44; | |
447 | output [68:0] memship_group45; | |
448 | output [68:0] memship_group46; | |
449 | output [68:0] memship_group47; | |
450 | output [68:0] memship_group48; | |
451 | output [68:0] memship_group49; | |
452 | output [68:0] memship_group50; | |
453 | output [68:0] memship_group51; | |
454 | output [68:0] memship_group52; | |
455 | output [68:0] memship_group53; | |
456 | output [68:0] memship_group54; | |
457 | output [68:0] memship_group55; | |
458 | output [68:0] memship_group56; | |
459 | output [68:0] memship_group57; | |
460 | output [68:0] memship_group58; | |
461 | output [68:0] memship_group59; | |
462 | output [68:0] memship_group60; | |
463 | output [68:0] memship_group61; | |
464 | output [68:0] memship_group62; | |
465 | output [68:0] memship_group63; | |
466 | ||
467 | output [2:0] ig_state; // From niu_pio_ig_sm of niu_pio_ig_sm.v | |
468 | /*AUTOWIRE*/ | |
469 | // Beginning of automatic wires (for undeclared instantiated-module outputs) | |
470 | wire latch_nx_pri_group; // From niu_pio_ig_sm of niu_pio_ig_sm.v | |
471 | wire latch_req_mux_out; // From niu_pio_ig_sm of niu_pio_ig_sm.v | |
472 | wire latch_result_group; // From niu_pio_ig_sm of niu_pio_ig_sm.v | |
473 | // End of automatics | |
474 | wire [63:0] ldgn_map0 ; | |
475 | wire [63:0] ldgn_map1 ; | |
476 | wire [63:0] ldgn_map2 ; | |
477 | wire [63:0] ldgn_map3 ; | |
478 | wire [63:0] ldgn_map4 ; | |
479 | wire [63:0] ldgn_map5 ; | |
480 | wire [63:0] ldgn_map6 ; | |
481 | wire [63:0] ldgn_map7 ; | |
482 | wire [63:0] ldgn_map8 ; | |
483 | wire [63:0] ldgn_map9 ; | |
484 | wire [63:0] ldgn_map10; | |
485 | wire [63:0] ldgn_map11; | |
486 | wire [63:0] ldgn_map12; | |
487 | wire [63:0] ldgn_map13; | |
488 | wire [63:0] ldgn_map14; | |
489 | wire [63:0] ldgn_map15; | |
490 | wire [63:0] ldgn_map16; | |
491 | wire [63:0] ldgn_map17; | |
492 | wire [63:0] ldgn_map18; | |
493 | wire [63:0] ldgn_map19; | |
494 | wire [63:0] ldgn_map20; | |
495 | wire [63:0] ldgn_map21; | |
496 | wire [63:0] ldgn_map22; | |
497 | wire [63:0] ldgn_map23; | |
498 | wire [63:0] ldgn_map24; | |
499 | wire [63:0] ldgn_map25; | |
500 | wire [63:0] ldgn_map26; | |
501 | wire [63:0] ldgn_map27; | |
502 | wire [63:0] ldgn_map28; | |
503 | wire [63:0] ldgn_map29; | |
504 | wire [63:0] ldgn_map30; | |
505 | wire [63:0] ldgn_map31; | |
506 | wire [63:0] ldgn_map32; | |
507 | wire [63:0] ldgn_map33; | |
508 | wire [63:0] ldgn_map34; | |
509 | wire [63:0] ldgn_map35; | |
510 | wire [63:0] ldgn_map36; | |
511 | wire [63:0] ldgn_map37; | |
512 | wire [63:0] ldgn_map38; | |
513 | wire [63:0] ldgn_map39; | |
514 | wire [63:0] ldgn_map40; | |
515 | wire [63:0] ldgn_map41; | |
516 | wire [63:0] ldgn_map42; | |
517 | wire [63:0] ldgn_map43; | |
518 | wire [63:0] ldgn_map44; | |
519 | wire [63:0] ldgn_map45; | |
520 | wire [63:0] ldgn_map46; | |
521 | wire [63:0] ldgn_map47; | |
522 | wire [63:0] ldgn_map48; | |
523 | wire [63:0] ldgn_map49; | |
524 | wire [63:0] ldgn_map50; | |
525 | wire [63:0] ldgn_map51; | |
526 | wire [63:0] ldgn_map52; | |
527 | wire [63:0] ldgn_map53; | |
528 | wire [63:0] ldgn_map54; | |
529 | wire [63:0] ldgn_map55; | |
530 | wire [63:0] ldgn_map56; | |
531 | wire [63:0] ldgn_map57; | |
532 | wire [63:0] ldgn_map58; | |
533 | wire [63:0] ldgn_map59; | |
534 | wire [63:0] ldgn_map60; | |
535 | wire [63:0] ldgn_map61; | |
536 | wire [63:0] ldgn_map62; | |
537 | wire [63:0] ldgn_map63; | |
538 | wire [63:0] ldgn_map64; | |
539 | wire [63:0] ldgn_map65; | |
540 | wire [63:0] ldgn_map66; | |
541 | wire [63:0] ldgn_map67; | |
542 | wire [63:0] ldgn_map68; | |
543 | ||
544 | wire [68:0] memship_group0 ; | |
545 | wire [68:0] memship_group1 ; | |
546 | wire [68:0] memship_group2 ; | |
547 | wire [68:0] memship_group3 ; | |
548 | wire [68:0] memship_group4 ; | |
549 | wire [68:0] memship_group5 ; | |
550 | wire [68:0] memship_group6 ; | |
551 | wire [68:0] memship_group7 ; | |
552 | wire [68:0] memship_group8 ; | |
553 | wire [68:0] memship_group9 ; | |
554 | wire [68:0] memship_group10; | |
555 | wire [68:0] memship_group11; | |
556 | wire [68:0] memship_group12; | |
557 | wire [68:0] memship_group13; | |
558 | wire [68:0] memship_group14; | |
559 | wire [68:0] memship_group15; | |
560 | wire [68:0] memship_group16; | |
561 | wire [68:0] memship_group17; | |
562 | wire [68:0] memship_group18; | |
563 | wire [68:0] memship_group19; | |
564 | wire [68:0] memship_group20; | |
565 | wire [68:0] memship_group21; | |
566 | wire [68:0] memship_group22; | |
567 | wire [68:0] memship_group23; | |
568 | wire [68:0] memship_group24; | |
569 | wire [68:0] memship_group25; | |
570 | wire [68:0] memship_group26; | |
571 | wire [68:0] memship_group27; | |
572 | wire [68:0] memship_group28; | |
573 | wire [68:0] memship_group29; | |
574 | wire [68:0] memship_group30; | |
575 | wire [68:0] memship_group31; | |
576 | wire [68:0] memship_group32; | |
577 | wire [68:0] memship_group33; | |
578 | wire [68:0] memship_group34; | |
579 | wire [68:0] memship_group35; | |
580 | wire [68:0] memship_group36; | |
581 | wire [68:0] memship_group37; | |
582 | wire [68:0] memship_group38; | |
583 | wire [68:0] memship_group39; | |
584 | wire [68:0] memship_group40; | |
585 | wire [68:0] memship_group41; | |
586 | wire [68:0] memship_group42; | |
587 | wire [68:0] memship_group43; | |
588 | wire [68:0] memship_group44; | |
589 | wire [68:0] memship_group45; | |
590 | wire [68:0] memship_group46; | |
591 | wire [68:0] memship_group47; | |
592 | wire [68:0] memship_group48; | |
593 | wire [68:0] memship_group49; | |
594 | wire [68:0] memship_group50; | |
595 | wire [68:0] memship_group51; | |
596 | wire [68:0] memship_group52; | |
597 | wire [68:0] memship_group53; | |
598 | wire [68:0] memship_group54; | |
599 | wire [68:0] memship_group55; | |
600 | wire [68:0] memship_group56; | |
601 | wire [68:0] memship_group57; | |
602 | wire [68:0] memship_group58; | |
603 | wire [68:0] memship_group59; | |
604 | wire [68:0] memship_group60; | |
605 | wire [68:0] memship_group61; | |
606 | wire [68:0] memship_group62; | |
607 | wire [68:0] memship_group63; | |
608 | ||
609 | wire [68:0] ldfi; | |
610 | wire [68:0] ldfj; | |
611 | wire [68:0] ld_intr; // logic device interrupt | |
612 | wire [63:0] intr_req_group; | |
613 | wire [63:0] intr_rel_group; | |
614 | wire [63:0] TO_group; | |
615 | ||
616 | // time out counter logic | |
617 | assign TO_group[0] = (timer0 == 6'b0) ? 1'b1:1'b0 ; | |
618 | assign TO_group[1] = (timer1 == 6'b0) ? 1'b1:1'b0 ; | |
619 | assign TO_group[2] = (timer2 == 6'b0) ? 1'b1:1'b0 ; | |
620 | assign TO_group[3] = (timer3 == 6'b0) ? 1'b1:1'b0 ; | |
621 | assign TO_group[4] = (timer4 == 6'b0) ? 1'b1:1'b0 ; | |
622 | assign TO_group[5] = (timer5 == 6'b0) ? 1'b1:1'b0 ; | |
623 | assign TO_group[6] = (timer6 == 6'b0) ? 1'b1:1'b0 ; | |
624 | assign TO_group[7] = (timer7 == 6'b0) ? 1'b1:1'b0 ; | |
625 | assign TO_group[8] = (timer8 == 6'b0) ? 1'b1:1'b0 ; | |
626 | assign TO_group[9] = (timer9 == 6'b0) ? 1'b1:1'b0 ; | |
627 | assign TO_group[10] = (timer10 == 6'b0) ? 1'b1:1'b0 ; | |
628 | assign TO_group[11] = (timer11 == 6'b0) ? 1'b1:1'b0 ; | |
629 | assign TO_group[12] = (timer12 == 6'b0) ? 1'b1:1'b0 ; | |
630 | assign TO_group[13] = (timer13 == 6'b0) ? 1'b1:1'b0 ; | |
631 | assign TO_group[14] = (timer14 == 6'b0) ? 1'b1:1'b0 ; | |
632 | assign TO_group[15] = (timer15 == 6'b0) ? 1'b1:1'b0 ; | |
633 | assign TO_group[16] = (timer16 == 6'b0) ? 1'b1:1'b0 ; | |
634 | assign TO_group[17] = (timer17 == 6'b0) ? 1'b1:1'b0 ; | |
635 | assign TO_group[18] = (timer18 == 6'b0) ? 1'b1:1'b0 ; | |
636 | assign TO_group[19] = (timer19 == 6'b0) ? 1'b1:1'b0 ; | |
637 | assign TO_group[20] = (timer20 == 6'b0) ? 1'b1:1'b0 ; | |
638 | assign TO_group[21] = (timer21 == 6'b0) ? 1'b1:1'b0 ; | |
639 | assign TO_group[22] = (timer22 == 6'b0) ? 1'b1:1'b0 ; | |
640 | assign TO_group[23] = (timer23 == 6'b0) ? 1'b1:1'b0 ; | |
641 | assign TO_group[24] = (timer24 == 6'b0) ? 1'b1:1'b0 ; | |
642 | assign TO_group[25] = (timer25 == 6'b0) ? 1'b1:1'b0 ; | |
643 | assign TO_group[26] = (timer26 == 6'b0) ? 1'b1:1'b0 ; | |
644 | assign TO_group[27] = (timer27 == 6'b0) ? 1'b1:1'b0 ; | |
645 | assign TO_group[28] = (timer28 == 6'b0) ? 1'b1:1'b0 ; | |
646 | assign TO_group[29] = (timer29 == 6'b0) ? 1'b1:1'b0 ; | |
647 | assign TO_group[30] = (timer30 == 6'b0) ? 1'b1:1'b0 ; | |
648 | assign TO_group[31] = (timer31 == 6'b0) ? 1'b1:1'b0 ; | |
649 | assign TO_group[32] = (timer32 == 6'b0) ? 1'b1:1'b0 ; | |
650 | assign TO_group[33] = (timer33 == 6'b0) ? 1'b1:1'b0 ; | |
651 | assign TO_group[34] = (timer34 == 6'b0) ? 1'b1:1'b0 ; | |
652 | assign TO_group[35] = (timer35 == 6'b0) ? 1'b1:1'b0 ; | |
653 | assign TO_group[36] = (timer36 == 6'b0) ? 1'b1:1'b0 ; | |
654 | assign TO_group[37] = (timer37 == 6'b0) ? 1'b1:1'b0 ; | |
655 | assign TO_group[38] = (timer38 == 6'b0) ? 1'b1:1'b0 ; | |
656 | assign TO_group[39] = (timer39 == 6'b0) ? 1'b1:1'b0 ; | |
657 | assign TO_group[40] = (timer40 == 6'b0) ? 1'b1:1'b0 ; | |
658 | assign TO_group[41] = (timer41 == 6'b0) ? 1'b1:1'b0 ; | |
659 | assign TO_group[42] = (timer42 == 6'b0) ? 1'b1:1'b0 ; | |
660 | assign TO_group[43] = (timer43 == 6'b0) ? 1'b1:1'b0 ; | |
661 | assign TO_group[44] = (timer44 == 6'b0) ? 1'b1:1'b0 ; | |
662 | assign TO_group[45] = (timer45 == 6'b0) ? 1'b1:1'b0 ; | |
663 | assign TO_group[46] = (timer46 == 6'b0) ? 1'b1:1'b0 ; | |
664 | assign TO_group[47] = (timer47 == 6'b0) ? 1'b1:1'b0 ; | |
665 | assign TO_group[48] = (timer48 == 6'b0) ? 1'b1:1'b0 ; | |
666 | assign TO_group[49] = (timer49 == 6'b0) ? 1'b1:1'b0 ; | |
667 | assign TO_group[50] = (timer50 == 6'b0) ? 1'b1:1'b0 ; | |
668 | assign TO_group[51] = (timer51 == 6'b0) ? 1'b1:1'b0 ; | |
669 | assign TO_group[52] = (timer52 == 6'b0) ? 1'b1:1'b0 ; | |
670 | assign TO_group[53] = (timer53 == 6'b0) ? 1'b1:1'b0 ; | |
671 | assign TO_group[54] = (timer54 == 6'b0) ? 1'b1:1'b0 ; | |
672 | assign TO_group[55] = (timer55 == 6'b0) ? 1'b1:1'b0 ; | |
673 | assign TO_group[56] = (timer56 == 6'b0) ? 1'b1:1'b0 ; | |
674 | assign TO_group[57] = (timer57 == 6'b0) ? 1'b1:1'b0 ; | |
675 | assign TO_group[58] = (timer58 == 6'b0) ? 1'b1:1'b0 ; | |
676 | assign TO_group[59] = (timer59 == 6'b0) ? 1'b1:1'b0 ; | |
677 | assign TO_group[60] = (timer60 == 6'b0) ? 1'b1:1'b0 ; | |
678 | assign TO_group[61] = (timer61 == 6'b0) ? 1'b1:1'b0 ; | |
679 | assign TO_group[62] = (timer62 == 6'b0) ? 1'b1:1'b0 ; | |
680 | assign TO_group[63] = (timer63 == 6'b0) ? 1'b1:1'b0 ; | |
681 | ||
682 | //********************************************************************************************************************** | |
683 | ||
684 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u0 (.ldgn(ldgn0[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map0[63:0])); | |
685 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u1 (.ldgn(ldgn1[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map1[63:0])); | |
686 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u2 (.ldgn(ldgn2[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map2[63:0])); | |
687 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u3 (.ldgn(ldgn3[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map3[63:0])); | |
688 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u4 (.ldgn(ldgn4[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map4[63:0])); | |
689 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u5 (.ldgn(ldgn5[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map5[63:0])); | |
690 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u6 (.ldgn(ldgn6[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map6[63:0])); | |
691 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u7 (.ldgn(ldgn7[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map7[63:0])); | |
692 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u8 (.ldgn(ldgn8[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map8[63:0])); | |
693 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u9 (.ldgn(ldgn9[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map9[63:0])); | |
694 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u10 (.ldgn(ldgn10[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map10[63:0])); | |
695 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u11 (.ldgn(ldgn11[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map11[63:0])); | |
696 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u12 (.ldgn(ldgn12[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map12[63:0])); | |
697 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u13 (.ldgn(ldgn13[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map13[63:0])); | |
698 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u14 (.ldgn(ldgn14[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map14[63:0])); | |
699 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u15 (.ldgn(ldgn15[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map15[63:0])); | |
700 | ||
701 | assign ldgn_map16 = 64'b0 ; | |
702 | assign ldgn_map17 = 64'b0 ; | |
703 | assign ldgn_map18 = 64'b0 ; | |
704 | assign ldgn_map19 = 64'b0 ; | |
705 | assign ldgn_map20 = 64'b0 ; | |
706 | assign ldgn_map21 = 64'b0 ; | |
707 | assign ldgn_map22 = 64'b0 ; | |
708 | assign ldgn_map23 = 64'b0 ; | |
709 | assign ldgn_map24 = 64'b0 ; | |
710 | assign ldgn_map25 = 64'b0 ; | |
711 | assign ldgn_map26 = 64'b0 ; | |
712 | assign ldgn_map27 = 64'b0 ; | |
713 | assign ldgn_map28 = 64'b0 ; | |
714 | assign ldgn_map29 = 64'b0 ; | |
715 | assign ldgn_map30 = 64'b0 ; | |
716 | assign ldgn_map31 = 64'b0 ; | |
717 | ||
718 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u32 (.ldgn(ldgn32[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map32[63:0])); | |
719 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u33 (.ldgn(ldgn33[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map33[63:0])); | |
720 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u34 (.ldgn(ldgn34[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map34[63:0])); | |
721 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u35 (.ldgn(ldgn35[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map35[63:0])); | |
722 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u36 (.ldgn(ldgn36[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map36[63:0])); | |
723 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u37 (.ldgn(ldgn37[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map37[63:0])); | |
724 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u38 (.ldgn(ldgn38[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map38[63:0])); | |
725 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u39 (.ldgn(ldgn39[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map39[63:0])); | |
726 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u40 (.ldgn(ldgn40[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map40[63:0])); | |
727 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u41 (.ldgn(ldgn41[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map41[63:0])); | |
728 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u42 (.ldgn(ldgn42[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map42[63:0])); | |
729 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u43 (.ldgn(ldgn43[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map43[63:0])); | |
730 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u44 (.ldgn(ldgn44[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map44[63:0])); | |
731 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u45 (.ldgn(ldgn45[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map45[63:0])); | |
732 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u46 (.ldgn(ldgn46[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map46[63:0])); | |
733 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u47 (.ldgn(ldgn47[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map47[63:0])); | |
734 | ||
735 | `ifdef NEPTUNE | |
736 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u48 (.ldgn(ldgn48[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map48[63:0])); | |
737 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u49 (.ldgn(ldgn49[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map49[63:0])); | |
738 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u50 (.ldgn(ldgn50[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map50[63:0])); | |
739 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u51 (.ldgn(ldgn51[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map51[63:0])); | |
740 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u52 (.ldgn(ldgn52[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map52[63:0])); | |
741 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u53 (.ldgn(ldgn53[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map53[63:0])); | |
742 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u54 (.ldgn(ldgn54[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map54[63:0])); | |
743 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u55 (.ldgn(ldgn55[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map55[63:0])); | |
744 | `else | |
745 | assign ldgn_map48 = 64'b0 ; | |
746 | assign ldgn_map49 = 64'b0 ; | |
747 | assign ldgn_map50 = 64'b0 ; | |
748 | assign ldgn_map51 = 64'b0 ; | |
749 | assign ldgn_map52 = 64'b0 ; | |
750 | assign ldgn_map53 = 64'b0 ; | |
751 | assign ldgn_map54 = 64'b0 ; | |
752 | assign ldgn_map55 = 64'b0 ; | |
753 | `endif | |
754 | ||
755 | assign ldgn_map56 = 64'b0 ; | |
756 | assign ldgn_map57 = 64'b0 ; | |
757 | assign ldgn_map58 = 64'b0 ; | |
758 | assign ldgn_map59 = 64'b0 ; | |
759 | assign ldgn_map60 = 64'b0 ; | |
760 | assign ldgn_map61 = 64'b0 ; | |
761 | assign ldgn_map62 = 64'b0 ; | |
762 | ||
763 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u63 (.ldgn(ldgn63[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map63[63:0])); | |
764 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u64 (.ldgn(ldgn64[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map64[63:0])); | |
765 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u65 (.ldgn(ldgn65[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map65[63:0])); | |
766 | `ifdef NEPTUNE | |
767 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u66 (.ldgn(ldgn66[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map66[63:0])); | |
768 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u67 (.ldgn(ldgn67[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map67[63:0])); | |
769 | `else | |
770 | assign ldgn_map66 = 64'b0 ; | |
771 | assign ldgn_map67 = 64'b0 ; | |
772 | `endif | |
773 | ||
774 | niu_pio_decoder_6to64 niu_pio_decoder_6to64_u68 (.ldgn(ldgn68[5:0]),.clk(clk), .reset(reset), .ldgn_map(ldgn_map68[63:0])); | |
775 | ||
776 | //********************************************************************************************************************** | |
777 | ||
778 | niu_pio_ldgn2group niu_pio_ldgn2group | |
779 | (/*AUTOINST*/ | |
780 | // Outputs | |
781 | .memship_group0 (memship_group0[68:0]), | |
782 | .memship_group1 (memship_group1[68:0]), | |
783 | .memship_group2 (memship_group2[68:0]), | |
784 | .memship_group3 (memship_group3[68:0]), | |
785 | .memship_group4 (memship_group4[68:0]), | |
786 | .memship_group5 (memship_group5[68:0]), | |
787 | .memship_group6 (memship_group6[68:0]), | |
788 | .memship_group7 (memship_group7[68:0]), | |
789 | .memship_group8 (memship_group8[68:0]), | |
790 | .memship_group9 (memship_group9[68:0]), | |
791 | .memship_group10 (memship_group10[68:0]), | |
792 | .memship_group11 (memship_group11[68:0]), | |
793 | .memship_group12 (memship_group12[68:0]), | |
794 | .memship_group13 (memship_group13[68:0]), | |
795 | .memship_group14 (memship_group14[68:0]), | |
796 | .memship_group15 (memship_group15[68:0]), | |
797 | .memship_group16 (memship_group16[68:0]), | |
798 | .memship_group17 (memship_group17[68:0]), | |
799 | .memship_group18 (memship_group18[68:0]), | |
800 | .memship_group19 (memship_group19[68:0]), | |
801 | .memship_group20 (memship_group20[68:0]), | |
802 | .memship_group21 (memship_group21[68:0]), | |
803 | .memship_group22 (memship_group22[68:0]), | |
804 | .memship_group23 (memship_group23[68:0]), | |
805 | .memship_group24 (memship_group24[68:0]), | |
806 | .memship_group25 (memship_group25[68:0]), | |
807 | .memship_group26 (memship_group26[68:0]), | |
808 | .memship_group27 (memship_group27[68:0]), | |
809 | .memship_group28 (memship_group28[68:0]), | |
810 | .memship_group29 (memship_group29[68:0]), | |
811 | .memship_group30 (memship_group30[68:0]), | |
812 | .memship_group31 (memship_group31[68:0]), | |
813 | .memship_group32 (memship_group32[68:0]), | |
814 | .memship_group33 (memship_group33[68:0]), | |
815 | .memship_group34 (memship_group34[68:0]), | |
816 | .memship_group35 (memship_group35[68:0]), | |
817 | .memship_group36 (memship_group36[68:0]), | |
818 | .memship_group37 (memship_group37[68:0]), | |
819 | .memship_group38 (memship_group38[68:0]), | |
820 | .memship_group39 (memship_group39[68:0]), | |
821 | .memship_group40 (memship_group40[68:0]), | |
822 | .memship_group41 (memship_group41[68:0]), | |
823 | .memship_group42 (memship_group42[68:0]), | |
824 | .memship_group43 (memship_group43[68:0]), | |
825 | .memship_group44 (memship_group44[68:0]), | |
826 | .memship_group45 (memship_group45[68:0]), | |
827 | .memship_group46 (memship_group46[68:0]), | |
828 | .memship_group47 (memship_group47[68:0]), | |
829 | .memship_group48 (memship_group48[68:0]), | |
830 | .memship_group49 (memship_group49[68:0]), | |
831 | .memship_group50 (memship_group50[68:0]), | |
832 | .memship_group51 (memship_group51[68:0]), | |
833 | .memship_group52 (memship_group52[68:0]), | |
834 | .memship_group53 (memship_group53[68:0]), | |
835 | .memship_group54 (memship_group54[68:0]), | |
836 | .memship_group55 (memship_group55[68:0]), | |
837 | .memship_group56 (memship_group56[68:0]), | |
838 | .memship_group57 (memship_group57[68:0]), | |
839 | .memship_group58 (memship_group58[68:0]), | |
840 | .memship_group59 (memship_group59[68:0]), | |
841 | .memship_group60 (memship_group60[68:0]), | |
842 | .memship_group61 (memship_group61[68:0]), | |
843 | .memship_group62 (memship_group62[68:0]), | |
844 | .memship_group63 (memship_group63[68:0]), | |
845 | // Inputs | |
846 | .ldgn_map0 (ldgn_map0[63:0]), | |
847 | .ldgn_map1 (ldgn_map1[63:0]), | |
848 | .ldgn_map2 (ldgn_map2[63:0]), | |
849 | .ldgn_map3 (ldgn_map3[63:0]), | |
850 | .ldgn_map4 (ldgn_map4[63:0]), | |
851 | .ldgn_map5 (ldgn_map5[63:0]), | |
852 | .ldgn_map6 (ldgn_map6[63:0]), | |
853 | .ldgn_map7 (ldgn_map7[63:0]), | |
854 | .ldgn_map8 (ldgn_map8[63:0]), | |
855 | .ldgn_map9 (ldgn_map9[63:0]), | |
856 | .ldgn_map10 (ldgn_map10[63:0]), | |
857 | .ldgn_map11 (ldgn_map11[63:0]), | |
858 | .ldgn_map12 (ldgn_map12[63:0]), | |
859 | .ldgn_map13 (ldgn_map13[63:0]), | |
860 | .ldgn_map14 (ldgn_map14[63:0]), | |
861 | .ldgn_map15 (ldgn_map15[63:0]), | |
862 | .ldgn_map16 (ldgn_map16[63:0]), | |
863 | .ldgn_map17 (ldgn_map17[63:0]), | |
864 | .ldgn_map18 (ldgn_map18[63:0]), | |
865 | .ldgn_map19 (ldgn_map19[63:0]), | |
866 | .ldgn_map20 (ldgn_map20[63:0]), | |
867 | .ldgn_map21 (ldgn_map21[63:0]), | |
868 | .ldgn_map22 (ldgn_map22[63:0]), | |
869 | .ldgn_map23 (ldgn_map23[63:0]), | |
870 | .ldgn_map24 (ldgn_map24[63:0]), | |
871 | .ldgn_map25 (ldgn_map25[63:0]), | |
872 | .ldgn_map26 (ldgn_map26[63:0]), | |
873 | .ldgn_map27 (ldgn_map27[63:0]), | |
874 | .ldgn_map28 (ldgn_map28[63:0]), | |
875 | .ldgn_map29 (ldgn_map29[63:0]), | |
876 | .ldgn_map30 (ldgn_map30[63:0]), | |
877 | .ldgn_map31 (ldgn_map31[63:0]), | |
878 | .ldgn_map32 (ldgn_map32[63:0]), | |
879 | .ldgn_map33 (ldgn_map33[63:0]), | |
880 | .ldgn_map34 (ldgn_map34[63:0]), | |
881 | .ldgn_map35 (ldgn_map35[63:0]), | |
882 | .ldgn_map36 (ldgn_map36[63:0]), | |
883 | .ldgn_map37 (ldgn_map37[63:0]), | |
884 | .ldgn_map38 (ldgn_map38[63:0]), | |
885 | .ldgn_map39 (ldgn_map39[63:0]), | |
886 | .ldgn_map40 (ldgn_map40[63:0]), | |
887 | .ldgn_map41 (ldgn_map41[63:0]), | |
888 | .ldgn_map42 (ldgn_map42[63:0]), | |
889 | .ldgn_map43 (ldgn_map43[63:0]), | |
890 | .ldgn_map44 (ldgn_map44[63:0]), | |
891 | .ldgn_map45 (ldgn_map45[63:0]), | |
892 | .ldgn_map46 (ldgn_map46[63:0]), | |
893 | .ldgn_map47 (ldgn_map47[63:0]), | |
894 | .ldgn_map48 (ldgn_map48[63:0]), | |
895 | .ldgn_map49 (ldgn_map49[63:0]), | |
896 | .ldgn_map50 (ldgn_map50[63:0]), | |
897 | .ldgn_map51 (ldgn_map51[63:0]), | |
898 | .ldgn_map52 (ldgn_map52[63:0]), | |
899 | .ldgn_map53 (ldgn_map53[63:0]), | |
900 | .ldgn_map54 (ldgn_map54[63:0]), | |
901 | .ldgn_map55 (ldgn_map55[63:0]), | |
902 | .ldgn_map56 (ldgn_map56[63:0]), | |
903 | .ldgn_map57 (ldgn_map57[63:0]), | |
904 | .ldgn_map58 (ldgn_map58[63:0]), | |
905 | .ldgn_map59 (ldgn_map59[63:0]), | |
906 | .ldgn_map60 (ldgn_map60[63:0]), | |
907 | .ldgn_map61 (ldgn_map61[63:0]), | |
908 | .ldgn_map62 (ldgn_map62[63:0]), | |
909 | .ldgn_map63 (ldgn_map63[63:0]), | |
910 | .ldgn_map64 (ldgn_map64[63:0]), | |
911 | .ldgn_map65 (ldgn_map65[63:0]), | |
912 | .ldgn_map66 (ldgn_map66[63:0]), | |
913 | .ldgn_map67 (ldgn_map67[63:0]), | |
914 | .ldgn_map68 (ldgn_map68[63:0])); | |
915 | ||
916 | // one set of interrupt mask for all groups | |
917 | assign ld_intr[0 ] = (ldfi[0 ] & (~ldf_mask0 [1])) | (ldfj[0 ] & (~ldf_mask0 [0])); | |
918 | assign ld_intr[1 ] = (ldfi[1 ] & (~ldf_mask1 [1])) | (ldfj[1 ] & (~ldf_mask1 [0])); | |
919 | assign ld_intr[2 ] = (ldfi[2 ] & (~ldf_mask2 [1])) | (ldfj[2 ] & (~ldf_mask2 [0])); | |
920 | assign ld_intr[3 ] = (ldfi[3 ] & (~ldf_mask3 [1])) | (ldfj[3 ] & (~ldf_mask3 [0])); | |
921 | assign ld_intr[4 ] = (ldfi[4 ] & (~ldf_mask4 [1])) | (ldfj[4 ] & (~ldf_mask4 [0])); | |
922 | assign ld_intr[5 ] = (ldfi[5 ] & (~ldf_mask5 [1])) | (ldfj[5 ] & (~ldf_mask5 [0])); | |
923 | assign ld_intr[6 ] = (ldfi[6 ] & (~ldf_mask6 [1])) | (ldfj[6 ] & (~ldf_mask6 [0])); | |
924 | assign ld_intr[7 ] = (ldfi[7 ] & (~ldf_mask7 [1])) | (ldfj[7 ] & (~ldf_mask7 [0])); | |
925 | assign ld_intr[8 ] = (ldfi[8 ] & (~ldf_mask8 [1])) | (ldfj[8 ] & (~ldf_mask8 [0])); | |
926 | assign ld_intr[9 ] = (ldfi[9 ] & (~ldf_mask9 [1])) | (ldfj[9 ] & (~ldf_mask9 [0])); | |
927 | assign ld_intr[10] = (ldfi[10] & (~ldf_mask10[1])) | (ldfj[10] & (~ldf_mask10[0])); | |
928 | assign ld_intr[11] = (ldfi[11] & (~ldf_mask11[1])) | (ldfj[11] & (~ldf_mask11[0])); | |
929 | assign ld_intr[12] = (ldfi[12] & (~ldf_mask12[1])) | (ldfj[12] & (~ldf_mask12[0])); | |
930 | assign ld_intr[13] = (ldfi[13] & (~ldf_mask13[1])) | (ldfj[13] & (~ldf_mask13[0])); | |
931 | assign ld_intr[14] = (ldfi[14] & (~ldf_mask14[1])) | (ldfj[14] & (~ldf_mask14[0])); | |
932 | assign ld_intr[15] = (ldfi[15] & (~ldf_mask15[1])) | (ldfj[15] & (~ldf_mask15[0])); | |
933 | assign ld_intr[16] = (ldfi[16] & (~ldf_mask16[1])) | (ldfj[16] & (~ldf_mask16[0])); | |
934 | assign ld_intr[17] = (ldfi[17] & (~ldf_mask17[1])) | (ldfj[17] & (~ldf_mask17[0])); | |
935 | assign ld_intr[18] = (ldfi[18] & (~ldf_mask18[1])) | (ldfj[18] & (~ldf_mask18[0])); | |
936 | assign ld_intr[19] = (ldfi[19] & (~ldf_mask19[1])) | (ldfj[19] & (~ldf_mask19[0])); | |
937 | assign ld_intr[20] = (ldfi[20] & (~ldf_mask20[1])) | (ldfj[20] & (~ldf_mask20[0])); | |
938 | assign ld_intr[21] = (ldfi[21] & (~ldf_mask21[1])) | (ldfj[21] & (~ldf_mask21[0])); | |
939 | assign ld_intr[22] = (ldfi[22] & (~ldf_mask22[1])) | (ldfj[22] & (~ldf_mask22[0])); | |
940 | assign ld_intr[23] = (ldfi[23] & (~ldf_mask23[1])) | (ldfj[23] & (~ldf_mask23[0])); | |
941 | assign ld_intr[24] = (ldfi[24] & (~ldf_mask24[1])) | (ldfj[24] & (~ldf_mask24[0])); | |
942 | assign ld_intr[25] = (ldfi[25] & (~ldf_mask25[1])) | (ldfj[25] & (~ldf_mask25[0])); | |
943 | assign ld_intr[26] = (ldfi[26] & (~ldf_mask26[1])) | (ldfj[26] & (~ldf_mask26[0])); | |
944 | assign ld_intr[27] = (ldfi[27] & (~ldf_mask27[1])) | (ldfj[27] & (~ldf_mask27[0])); | |
945 | assign ld_intr[28] = (ldfi[28] & (~ldf_mask28[1])) | (ldfj[28] & (~ldf_mask28[0])); | |
946 | assign ld_intr[29] = (ldfi[29] & (~ldf_mask29[1])) | (ldfj[29] & (~ldf_mask29[0])); | |
947 | assign ld_intr[30] = (ldfi[30] & (~ldf_mask30[1])) | (ldfj[30] & (~ldf_mask30[0])); | |
948 | assign ld_intr[31] = (ldfi[31] & (~ldf_mask31[1])) | (ldfj[31] & (~ldf_mask31[0])); | |
949 | assign ld_intr[32] = (ldfi[32] & (~ldf_mask32[1])) | (ldfj[32] & (~ldf_mask32[0])); | |
950 | assign ld_intr[33] = (ldfi[33] & (~ldf_mask33[1])) | (ldfj[33] & (~ldf_mask33[0])); | |
951 | assign ld_intr[34] = (ldfi[34] & (~ldf_mask34[1])) | (ldfj[34] & (~ldf_mask34[0])); | |
952 | assign ld_intr[35] = (ldfi[35] & (~ldf_mask35[1])) | (ldfj[35] & (~ldf_mask35[0])); | |
953 | assign ld_intr[36] = (ldfi[36] & (~ldf_mask36[1])) | (ldfj[36] & (~ldf_mask36[0])); | |
954 | assign ld_intr[37] = (ldfi[37] & (~ldf_mask37[1])) | (ldfj[37] & (~ldf_mask37[0])); | |
955 | assign ld_intr[38] = (ldfi[38] & (~ldf_mask38[1])) | (ldfj[38] & (~ldf_mask38[0])); | |
956 | assign ld_intr[39] = (ldfi[39] & (~ldf_mask39[1])) | (ldfj[39] & (~ldf_mask39[0])); | |
957 | assign ld_intr[40] = (ldfi[40] & (~ldf_mask40[1])) | (ldfj[40] & (~ldf_mask40[0])); | |
958 | assign ld_intr[41] = (ldfi[41] & (~ldf_mask41[1])) | (ldfj[41] & (~ldf_mask41[0])); | |
959 | assign ld_intr[42] = (ldfi[42] & (~ldf_mask42[1])) | (ldfj[42] & (~ldf_mask42[0])); | |
960 | assign ld_intr[43] = (ldfi[43] & (~ldf_mask43[1])) | (ldfj[43] & (~ldf_mask43[0])); | |
961 | assign ld_intr[44] = (ldfi[44] & (~ldf_mask44[1])) | (ldfj[44] & (~ldf_mask44[0])); | |
962 | assign ld_intr[45] = (ldfi[45] & (~ldf_mask45[1])) | (ldfj[45] & (~ldf_mask45[0])); | |
963 | assign ld_intr[46] = (ldfi[46] & (~ldf_mask46[1])) | (ldfj[46] & (~ldf_mask46[0])); | |
964 | assign ld_intr[47] = (ldfi[47] & (~ldf_mask47[1])) | (ldfj[47] & (~ldf_mask47[0])); | |
965 | assign ld_intr[48] = (ldfi[48] & (~ldf_mask48[1])) | (ldfj[48] & (~ldf_mask48[0])); | |
966 | assign ld_intr[49] = (ldfi[49] & (~ldf_mask49[1])) | (ldfj[49] & (~ldf_mask49[0])); | |
967 | assign ld_intr[50] = (ldfi[50] & (~ldf_mask50[1])) | (ldfj[50] & (~ldf_mask50[0])); | |
968 | assign ld_intr[51] = (ldfi[51] & (~ldf_mask51[1])) | (ldfj[51] & (~ldf_mask51[0])); | |
969 | assign ld_intr[52] = (ldfi[52] & (~ldf_mask52[1])) | (ldfj[52] & (~ldf_mask52[0])); | |
970 | assign ld_intr[53] = (ldfi[53] & (~ldf_mask53[1])) | (ldfj[53] & (~ldf_mask53[0])); | |
971 | assign ld_intr[54] = (ldfi[54] & (~ldf_mask54[1])) | (ldfj[54] & (~ldf_mask54[0])); | |
972 | assign ld_intr[55] = (ldfi[55] & (~ldf_mask55[1])) | (ldfj[55] & (~ldf_mask55[0])); | |
973 | assign ld_intr[56] = (ldfi[56] & (~ldf_mask56[1])) | (ldfj[56] & (~ldf_mask56[0])); | |
974 | assign ld_intr[57] = (ldfi[57] & (~ldf_mask57[1])) | (ldfj[57] & (~ldf_mask57[0])); | |
975 | assign ld_intr[58] = (ldfi[58] & (~ldf_mask58[1])) | (ldfj[58] & (~ldf_mask58[0])); | |
976 | assign ld_intr[59] = (ldfi[59] & (~ldf_mask59[1])) | (ldfj[59] & (~ldf_mask59[0])); | |
977 | assign ld_intr[60] = (ldfi[60] & (~ldf_mask60[1])) | (ldfj[60] & (~ldf_mask60[0])); | |
978 | assign ld_intr[61] = (ldfi[61] & (~ldf_mask61[1])) | (ldfj[61] & (~ldf_mask61[0])); | |
979 | assign ld_intr[62] = (ldfi[62] & (~ldf_mask62[1])) | (ldfj[62] & (~ldf_mask62[0])); | |
980 | assign ld_intr[63] = (ldfi[63] & (~ldf_mask63[1])) | (ldfj[63] & (~ldf_mask63[0])); | |
981 | assign ld_intr[64] = (ldfi[64] & (~ldf_mask64[1])) | (ldfj[64] & (~ldf_mask64[0])); | |
982 | assign ld_intr[65] = (ldfi[65] & (~ldf_mask65[1])) | (ldfj[65] & (~ldf_mask65[0])); | |
983 | assign ld_intr[66] = (ldfi[66] & (~ldf_mask66[1])) | (ldfj[66] & (~ldf_mask66[0])); | |
984 | assign ld_intr[67] = (ldfi[67] & (~ldf_mask67[1])) | (ldfj[67] & (~ldf_mask67[0])); | |
985 | assign ld_intr[68] = (ldfi[68] & (~ldf_mask68[1])) | (ldfj[68] & (~ldf_mask68[0])); | |
986 | ||
987 | // | |
988 | wire [63:0] memship_intr_TO ; | |
989 | ||
990 | assign memship_intr_TO[0 ] = ((|(memship_group0 [68:0] & (ld_intr[68:0]))) & TO_group[0 ]) ; | |
991 | assign memship_intr_TO[1 ] = ((|(memship_group1 [68:0] & (ld_intr[68:0]))) & TO_group[1 ]) ; | |
992 | assign memship_intr_TO[2 ] = ((|(memship_group2 [68:0] & (ld_intr[68:0]))) & TO_group[2 ]) ; | |
993 | assign memship_intr_TO[3 ] = ((|(memship_group3 [68:0] & (ld_intr[68:0]))) & TO_group[3 ]) ; | |
994 | assign memship_intr_TO[4 ] = ((|(memship_group4 [68:0] & (ld_intr[68:0]))) & TO_group[4 ]) ; | |
995 | assign memship_intr_TO[5 ] = ((|(memship_group5 [68:0] & (ld_intr[68:0]))) & TO_group[5 ]) ; | |
996 | assign memship_intr_TO[6 ] = ((|(memship_group6 [68:0] & (ld_intr[68:0]))) & TO_group[6 ]) ; | |
997 | assign memship_intr_TO[7 ] = ((|(memship_group7 [68:0] & (ld_intr[68:0]))) & TO_group[7 ]) ; | |
998 | assign memship_intr_TO[8 ] = ((|(memship_group8 [68:0] & (ld_intr[68:0]))) & TO_group[8 ]) ; | |
999 | assign memship_intr_TO[9 ] = ((|(memship_group9 [68:0] & (ld_intr[68:0]))) & TO_group[9 ]) ; | |
1000 | assign memship_intr_TO[10] = ((|(memship_group10[68:0] & (ld_intr[68:0]))) & TO_group[10]) ; | |
1001 | assign memship_intr_TO[11] = ((|(memship_group11[68:0] & (ld_intr[68:0]))) & TO_group[11]) ; | |
1002 | assign memship_intr_TO[12] = ((|(memship_group12[68:0] & (ld_intr[68:0]))) & TO_group[12]) ; | |
1003 | assign memship_intr_TO[13] = ((|(memship_group13[68:0] & (ld_intr[68:0]))) & TO_group[13]) ; | |
1004 | assign memship_intr_TO[14] = ((|(memship_group14[68:0] & (ld_intr[68:0]))) & TO_group[14]) ; | |
1005 | assign memship_intr_TO[15] = ((|(memship_group15[68:0] & (ld_intr[68:0]))) & TO_group[15]) ; | |
1006 | assign memship_intr_TO[16] = ((|(memship_group16[68:0] & (ld_intr[68:0]))) & TO_group[16]) ; | |
1007 | assign memship_intr_TO[17] = ((|(memship_group17[68:0] & (ld_intr[68:0]))) & TO_group[17]) ; | |
1008 | assign memship_intr_TO[18] = ((|(memship_group18[68:0] & (ld_intr[68:0]))) & TO_group[18]) ; | |
1009 | assign memship_intr_TO[19] = ((|(memship_group19[68:0] & (ld_intr[68:0]))) & TO_group[19]) ; | |
1010 | assign memship_intr_TO[20] = ((|(memship_group20[68:0] & (ld_intr[68:0]))) & TO_group[20]) ; | |
1011 | assign memship_intr_TO[21] = ((|(memship_group21[68:0] & (ld_intr[68:0]))) & TO_group[21]) ; | |
1012 | assign memship_intr_TO[22] = ((|(memship_group22[68:0] & (ld_intr[68:0]))) & TO_group[22]) ; | |
1013 | assign memship_intr_TO[23] = ((|(memship_group23[68:0] & (ld_intr[68:0]))) & TO_group[23]) ; | |
1014 | assign memship_intr_TO[24] = ((|(memship_group24[68:0] & (ld_intr[68:0]))) & TO_group[24]) ; | |
1015 | assign memship_intr_TO[25] = ((|(memship_group25[68:0] & (ld_intr[68:0]))) & TO_group[25]) ; | |
1016 | assign memship_intr_TO[26] = ((|(memship_group26[68:0] & (ld_intr[68:0]))) & TO_group[26]) ; | |
1017 | assign memship_intr_TO[27] = ((|(memship_group27[68:0] & (ld_intr[68:0]))) & TO_group[27]) ; | |
1018 | assign memship_intr_TO[28] = ((|(memship_group28[68:0] & (ld_intr[68:0]))) & TO_group[28]) ; | |
1019 | assign memship_intr_TO[29] = ((|(memship_group29[68:0] & (ld_intr[68:0]))) & TO_group[29]) ; | |
1020 | assign memship_intr_TO[30] = ((|(memship_group30[68:0] & (ld_intr[68:0]))) & TO_group[30]) ; | |
1021 | assign memship_intr_TO[31] = ((|(memship_group31[68:0] & (ld_intr[68:0]))) & TO_group[31]) ; | |
1022 | assign memship_intr_TO[32] = ((|(memship_group32[68:0] & (ld_intr[68:0]))) & TO_group[32]) ; | |
1023 | assign memship_intr_TO[33] = ((|(memship_group33[68:0] & (ld_intr[68:0]))) & TO_group[33]) ; | |
1024 | assign memship_intr_TO[34] = ((|(memship_group34[68:0] & (ld_intr[68:0]))) & TO_group[34]) ; | |
1025 | assign memship_intr_TO[35] = ((|(memship_group35[68:0] & (ld_intr[68:0]))) & TO_group[35]) ; | |
1026 | assign memship_intr_TO[36] = ((|(memship_group36[68:0] & (ld_intr[68:0]))) & TO_group[36]) ; | |
1027 | assign memship_intr_TO[37] = ((|(memship_group37[68:0] & (ld_intr[68:0]))) & TO_group[37]) ; | |
1028 | assign memship_intr_TO[38] = ((|(memship_group38[68:0] & (ld_intr[68:0]))) & TO_group[38]) ; | |
1029 | assign memship_intr_TO[39] = ((|(memship_group39[68:0] & (ld_intr[68:0]))) & TO_group[39]) ; | |
1030 | assign memship_intr_TO[40] = ((|(memship_group40[68:0] & (ld_intr[68:0]))) & TO_group[40]) ; | |
1031 | assign memship_intr_TO[41] = ((|(memship_group41[68:0] & (ld_intr[68:0]))) & TO_group[41]) ; | |
1032 | assign memship_intr_TO[42] = ((|(memship_group42[68:0] & (ld_intr[68:0]))) & TO_group[42]) ; | |
1033 | assign memship_intr_TO[43] = ((|(memship_group43[68:0] & (ld_intr[68:0]))) & TO_group[43]) ; | |
1034 | assign memship_intr_TO[44] = ((|(memship_group44[68:0] & (ld_intr[68:0]))) & TO_group[44]) ; | |
1035 | assign memship_intr_TO[45] = ((|(memship_group45[68:0] & (ld_intr[68:0]))) & TO_group[45]) ; | |
1036 | assign memship_intr_TO[46] = ((|(memship_group46[68:0] & (ld_intr[68:0]))) & TO_group[46]) ; | |
1037 | assign memship_intr_TO[47] = ((|(memship_group47[68:0] & (ld_intr[68:0]))) & TO_group[47]) ; | |
1038 | assign memship_intr_TO[48] = ((|(memship_group48[68:0] & (ld_intr[68:0]))) & TO_group[48]) ; | |
1039 | assign memship_intr_TO[49] = ((|(memship_group49[68:0] & (ld_intr[68:0]))) & TO_group[49]) ; | |
1040 | assign memship_intr_TO[50] = ((|(memship_group50[68:0] & (ld_intr[68:0]))) & TO_group[50]) ; | |
1041 | assign memship_intr_TO[51] = ((|(memship_group51[68:0] & (ld_intr[68:0]))) & TO_group[51]) ; | |
1042 | assign memship_intr_TO[52] = ((|(memship_group52[68:0] & (ld_intr[68:0]))) & TO_group[52]) ; | |
1043 | assign memship_intr_TO[53] = ((|(memship_group53[68:0] & (ld_intr[68:0]))) & TO_group[53]) ; | |
1044 | assign memship_intr_TO[54] = ((|(memship_group54[68:0] & (ld_intr[68:0]))) & TO_group[54]) ; | |
1045 | assign memship_intr_TO[55] = ((|(memship_group55[68:0] & (ld_intr[68:0]))) & TO_group[55]) ; | |
1046 | assign memship_intr_TO[56] = ((|(memship_group56[68:0] & (ld_intr[68:0]))) & TO_group[56]) ; | |
1047 | assign memship_intr_TO[57] = ((|(memship_group57[68:0] & (ld_intr[68:0]))) & TO_group[57]) ; | |
1048 | assign memship_intr_TO[58] = ((|(memship_group58[68:0] & (ld_intr[68:0]))) & TO_group[58]) ; | |
1049 | assign memship_intr_TO[59] = ((|(memship_group59[68:0] & (ld_intr[68:0]))) & TO_group[59]) ; | |
1050 | assign memship_intr_TO[60] = ((|(memship_group60[68:0] & (ld_intr[68:0]))) & TO_group[60]) ; | |
1051 | assign memship_intr_TO[61] = ((|(memship_group61[68:0] & (ld_intr[68:0]))) & TO_group[61]) ; | |
1052 | assign memship_intr_TO[62] = ((|(memship_group62[68:0] & (ld_intr[68:0]))) & TO_group[62]) ; | |
1053 | assign memship_intr_TO[63] = ((|(memship_group63[68:0] & (ld_intr[68:0]))) & TO_group[63]) ; | |
1054 | ||
1055 | // | |
1056 | ||
1057 | assign intr_req_group[0 ] = (memship_intr_TO[0] & arm0) ; | |
1058 | assign intr_req_group[1 ] = (memship_intr_TO[1] & arm1) ; | |
1059 | assign intr_req_group[2 ] = (memship_intr_TO[2] & arm2) ; | |
1060 | assign intr_req_group[3 ] = (memship_intr_TO[3] & arm3) ; | |
1061 | assign intr_req_group[4 ] = (memship_intr_TO[4] & arm4) ; | |
1062 | assign intr_req_group[5 ] = (memship_intr_TO[5] & arm5) ; | |
1063 | assign intr_req_group[6 ] = (memship_intr_TO[6] & arm6) ; | |
1064 | assign intr_req_group[7 ] = (memship_intr_TO[7] & arm7) ; | |
1065 | assign intr_req_group[8 ] = (memship_intr_TO[8] & arm8) ; | |
1066 | assign intr_req_group[9 ] = (memship_intr_TO[9] & arm9) ; | |
1067 | assign intr_req_group[10] = (memship_intr_TO[10] & arm10) ; | |
1068 | assign intr_req_group[11] = (memship_intr_TO[11] & arm11) ; | |
1069 | assign intr_req_group[12] = (memship_intr_TO[12] & arm12) ; | |
1070 | assign intr_req_group[13] = (memship_intr_TO[13] & arm13) ; | |
1071 | assign intr_req_group[14] = (memship_intr_TO[14] & arm14) ; | |
1072 | assign intr_req_group[15] = (memship_intr_TO[15] & arm15) ; | |
1073 | assign intr_req_group[16] = (memship_intr_TO[16] & arm16) ; | |
1074 | assign intr_req_group[17] = (memship_intr_TO[17] & arm17) ; | |
1075 | assign intr_req_group[18] = (memship_intr_TO[18] & arm18) ; | |
1076 | assign intr_req_group[19] = (memship_intr_TO[19] & arm19) ; | |
1077 | assign intr_req_group[20] = (memship_intr_TO[20] & arm20) ; | |
1078 | assign intr_req_group[21] = (memship_intr_TO[21] & arm21) ; | |
1079 | assign intr_req_group[22] = (memship_intr_TO[22] & arm22) ; | |
1080 | assign intr_req_group[23] = (memship_intr_TO[23] & arm23) ; | |
1081 | assign intr_req_group[24] = (memship_intr_TO[24] & arm24) ; | |
1082 | assign intr_req_group[25] = (memship_intr_TO[25] & arm25) ; | |
1083 | assign intr_req_group[26] = (memship_intr_TO[26] & arm26) ; | |
1084 | assign intr_req_group[27] = (memship_intr_TO[27] & arm27) ; | |
1085 | assign intr_req_group[28] = (memship_intr_TO[28] & arm28) ; | |
1086 | assign intr_req_group[29] = (memship_intr_TO[29] & arm29) ; | |
1087 | assign intr_req_group[30] = (memship_intr_TO[30] & arm30) ; | |
1088 | assign intr_req_group[31] = (memship_intr_TO[31] & arm31) ; | |
1089 | assign intr_req_group[32] = (memship_intr_TO[32] & arm32) ; | |
1090 | assign intr_req_group[33] = (memship_intr_TO[33] & arm33) ; | |
1091 | assign intr_req_group[34] = (memship_intr_TO[34] & arm34) ; | |
1092 | assign intr_req_group[35] = (memship_intr_TO[35] & arm35) ; | |
1093 | assign intr_req_group[36] = (memship_intr_TO[36] & arm36) ; | |
1094 | assign intr_req_group[37] = (memship_intr_TO[37] & arm37) ; | |
1095 | assign intr_req_group[38] = (memship_intr_TO[38] & arm38) ; | |
1096 | assign intr_req_group[39] = (memship_intr_TO[39] & arm39) ; | |
1097 | assign intr_req_group[40] = (memship_intr_TO[40] & arm40) ; | |
1098 | assign intr_req_group[41] = (memship_intr_TO[41] & arm41) ; | |
1099 | assign intr_req_group[42] = (memship_intr_TO[42] & arm42) ; | |
1100 | assign intr_req_group[43] = (memship_intr_TO[43] & arm43) ; | |
1101 | assign intr_req_group[44] = (memship_intr_TO[44] & arm44) ; | |
1102 | assign intr_req_group[45] = (memship_intr_TO[45] & arm45) ; | |
1103 | assign intr_req_group[46] = (memship_intr_TO[46] & arm46) ; | |
1104 | assign intr_req_group[47] = (memship_intr_TO[47] & arm47) ; | |
1105 | assign intr_req_group[48] = (memship_intr_TO[48] & arm48) ; | |
1106 | assign intr_req_group[49] = (memship_intr_TO[49] & arm49) ; | |
1107 | assign intr_req_group[50] = (memship_intr_TO[50] & arm50) ; | |
1108 | assign intr_req_group[51] = (memship_intr_TO[51] & arm51) ; | |
1109 | assign intr_req_group[52] = (memship_intr_TO[52] & arm52) ; | |
1110 | assign intr_req_group[53] = (memship_intr_TO[53] & arm53) ; | |
1111 | assign intr_req_group[54] = (memship_intr_TO[54] & arm54) ; | |
1112 | assign intr_req_group[55] = (memship_intr_TO[55] & arm55) ; | |
1113 | assign intr_req_group[56] = (memship_intr_TO[56] & arm56) ; | |
1114 | assign intr_req_group[57] = (memship_intr_TO[57] & arm57) ; | |
1115 | assign intr_req_group[58] = (memship_intr_TO[58] & arm58) ; | |
1116 | assign intr_req_group[59] = (memship_intr_TO[59] & arm59) ; | |
1117 | assign intr_req_group[60] = (memship_intr_TO[60] & arm60) ; | |
1118 | assign intr_req_group[61] = (memship_intr_TO[61] & arm61) ; | |
1119 | assign intr_req_group[62] = (memship_intr_TO[62] & arm62) ; | |
1120 | assign intr_req_group[63] = (memship_intr_TO[63] & arm63) ; | |
1121 | ||
1122 | wire activate_ig_sm = |intr_req_group; | |
1123 | ||
1124 | // | |
1125 | wire [63:0] issued_intr ; | |
1126 | ||
1127 | assign intr_rel_group[0 ] = (~memship_intr_TO[0] & issued_intr[0] ) ; | |
1128 | assign intr_rel_group[1 ] = (~memship_intr_TO[1] & issued_intr[1] ) ; | |
1129 | assign intr_rel_group[2 ] = (~memship_intr_TO[2] & issued_intr[2] ) ; | |
1130 | assign intr_rel_group[3 ] = (~memship_intr_TO[3] & issued_intr[3] ) ; | |
1131 | assign intr_rel_group[4 ] = (~memship_intr_TO[4] & issued_intr[4] ) ; | |
1132 | assign intr_rel_group[5 ] = (~memship_intr_TO[5] & issued_intr[5] ) ; | |
1133 | assign intr_rel_group[6 ] = (~memship_intr_TO[6] & issued_intr[6] ) ; | |
1134 | assign intr_rel_group[7 ] = (~memship_intr_TO[7] & issued_intr[7] ) ; | |
1135 | assign intr_rel_group[8 ] = (~memship_intr_TO[8] & issued_intr[8] ) ; | |
1136 | assign intr_rel_group[9 ] = (~memship_intr_TO[9] & issued_intr[9] ) ; | |
1137 | assign intr_rel_group[10] = (~memship_intr_TO[10] & issued_intr[10] ) ; | |
1138 | assign intr_rel_group[11] = (~memship_intr_TO[11] & issued_intr[11] ) ; | |
1139 | assign intr_rel_group[12] = (~memship_intr_TO[12] & issued_intr[12] ) ; | |
1140 | assign intr_rel_group[13] = (~memship_intr_TO[13] & issued_intr[13] ) ; | |
1141 | assign intr_rel_group[14] = (~memship_intr_TO[14] & issued_intr[14] ) ; | |
1142 | assign intr_rel_group[15] = (~memship_intr_TO[15] & issued_intr[15] ) ; | |
1143 | assign intr_rel_group[16] = (~memship_intr_TO[16] & issued_intr[16] ) ; | |
1144 | assign intr_rel_group[17] = (~memship_intr_TO[17] & issued_intr[17] ) ; | |
1145 | assign intr_rel_group[18] = (~memship_intr_TO[18] & issued_intr[18] ) ; | |
1146 | assign intr_rel_group[19] = (~memship_intr_TO[19] & issued_intr[19] ) ; | |
1147 | assign intr_rel_group[20] = (~memship_intr_TO[20] & issued_intr[20] ) ; | |
1148 | assign intr_rel_group[21] = (~memship_intr_TO[21] & issued_intr[21] ) ; | |
1149 | assign intr_rel_group[22] = (~memship_intr_TO[22] & issued_intr[22] ) ; | |
1150 | assign intr_rel_group[23] = (~memship_intr_TO[23] & issued_intr[23] ) ; | |
1151 | assign intr_rel_group[24] = (~memship_intr_TO[24] & issued_intr[24] ) ; | |
1152 | assign intr_rel_group[25] = (~memship_intr_TO[25] & issued_intr[25] ) ; | |
1153 | assign intr_rel_group[26] = (~memship_intr_TO[26] & issued_intr[26] ) ; | |
1154 | assign intr_rel_group[27] = (~memship_intr_TO[27] & issued_intr[27] ) ; | |
1155 | assign intr_rel_group[28] = (~memship_intr_TO[28] & issued_intr[28] ) ; | |
1156 | assign intr_rel_group[29] = (~memship_intr_TO[29] & issued_intr[29] ) ; | |
1157 | assign intr_rel_group[30] = (~memship_intr_TO[30] & issued_intr[30] ) ; | |
1158 | assign intr_rel_group[31] = (~memship_intr_TO[31] & issued_intr[31] ) ; | |
1159 | assign intr_rel_group[32] = (~memship_intr_TO[32] & issued_intr[32] ) ; | |
1160 | assign intr_rel_group[33] = (~memship_intr_TO[33] & issued_intr[33] ) ; | |
1161 | assign intr_rel_group[34] = (~memship_intr_TO[34] & issued_intr[34] ) ; | |
1162 | assign intr_rel_group[35] = (~memship_intr_TO[35] & issued_intr[35] ) ; | |
1163 | assign intr_rel_group[36] = (~memship_intr_TO[36] & issued_intr[36] ) ; | |
1164 | assign intr_rel_group[37] = (~memship_intr_TO[37] & issued_intr[37] ) ; | |
1165 | assign intr_rel_group[38] = (~memship_intr_TO[38] & issued_intr[38] ) ; | |
1166 | assign intr_rel_group[39] = (~memship_intr_TO[39] & issued_intr[39] ) ; | |
1167 | assign intr_rel_group[40] = (~memship_intr_TO[40] & issued_intr[40] ) ; | |
1168 | assign intr_rel_group[41] = (~memship_intr_TO[41] & issued_intr[41] ) ; | |
1169 | assign intr_rel_group[42] = (~memship_intr_TO[42] & issued_intr[42] ) ; | |
1170 | assign intr_rel_group[43] = (~memship_intr_TO[43] & issued_intr[43] ) ; | |
1171 | assign intr_rel_group[44] = (~memship_intr_TO[44] & issued_intr[44] ) ; | |
1172 | assign intr_rel_group[45] = (~memship_intr_TO[45] & issued_intr[45] ) ; | |
1173 | assign intr_rel_group[46] = (~memship_intr_TO[46] & issued_intr[46] ) ; | |
1174 | assign intr_rel_group[47] = (~memship_intr_TO[47] & issued_intr[47] ) ; | |
1175 | assign intr_rel_group[48] = (~memship_intr_TO[48] & issued_intr[48] ) ; | |
1176 | assign intr_rel_group[49] = (~memship_intr_TO[49] & issued_intr[49] ) ; | |
1177 | assign intr_rel_group[50] = (~memship_intr_TO[50] & issued_intr[50] ) ; | |
1178 | assign intr_rel_group[51] = (~memship_intr_TO[51] & issued_intr[51] ) ; | |
1179 | assign intr_rel_group[52] = (~memship_intr_TO[52] & issued_intr[52] ) ; | |
1180 | assign intr_rel_group[53] = (~memship_intr_TO[53] & issued_intr[53] ) ; | |
1181 | assign intr_rel_group[54] = (~memship_intr_TO[54] & issued_intr[54] ) ; | |
1182 | assign intr_rel_group[55] = (~memship_intr_TO[55] & issued_intr[55] ) ; | |
1183 | assign intr_rel_group[56] = (~memship_intr_TO[56] & issued_intr[56] ) ; | |
1184 | assign intr_rel_group[57] = (~memship_intr_TO[57] & issued_intr[57] ) ; | |
1185 | assign intr_rel_group[58] = (~memship_intr_TO[58] & issued_intr[58] ) ; | |
1186 | assign intr_rel_group[59] = (~memship_intr_TO[59] & issued_intr[59] ) ; | |
1187 | assign intr_rel_group[60] = (~memship_intr_TO[60] & issued_intr[60] ) ; | |
1188 | assign intr_rel_group[61] = (~memship_intr_TO[61] & issued_intr[61] ) ; | |
1189 | assign intr_rel_group[62] = (~memship_intr_TO[62] & issued_intr[62] ) ; | |
1190 | assign intr_rel_group[63] = (~memship_intr_TO[63] & issued_intr[63] ) ; | |
1191 | ||
1192 | wire activate_ig_sm_rel = |intr_rel_group; | |
1193 | wire activate_ig_sm_rel_latched ; | |
1194 | ||
1195 | // | |
1196 | ||
1197 | pio_SRFF issued_intr0_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[0]),.iRst(intr_rel_group[0]),.oQ(issued_intr[0])); | |
1198 | pio_SRFF issued_intr1_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[1]),.iRst(intr_rel_group[1]),.oQ(issued_intr[1])); | |
1199 | pio_SRFF issued_intr2_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[2]),.iRst(intr_rel_group[2]),.oQ(issued_intr[2])); | |
1200 | pio_SRFF issued_intr3_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[3]),.iRst(intr_rel_group[3]),.oQ(issued_intr[3])); | |
1201 | pio_SRFF issued_intr4_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[4]),.iRst(intr_rel_group[4]),.oQ(issued_intr[4])); | |
1202 | pio_SRFF issued_intr5_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[5]),.iRst(intr_rel_group[5]),.oQ(issued_intr[5])); | |
1203 | pio_SRFF issued_intr6_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[6]),.iRst(intr_rel_group[6]),.oQ(issued_intr[6])); | |
1204 | pio_SRFF issued_intr7_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[7]),.iRst(intr_rel_group[7]),.oQ(issued_intr[7])); | |
1205 | pio_SRFF issued_intr8_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[8]),.iRst(intr_rel_group[8]),.oQ(issued_intr[8])); | |
1206 | pio_SRFF issued_intr9_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[9]),.iRst(intr_rel_group[9]),.oQ(issued_intr[9])); | |
1207 | pio_SRFF issued_intr10_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[10]),.iRst(intr_rel_group[10]),.oQ(issued_intr[10])); | |
1208 | pio_SRFF issued_intr11_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[11]),.iRst(intr_rel_group[11]),.oQ(issued_intr[11])); | |
1209 | pio_SRFF issued_intr12_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[12]),.iRst(intr_rel_group[12]),.oQ(issued_intr[12])); | |
1210 | pio_SRFF issued_intr13_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[13]),.iRst(intr_rel_group[13]),.oQ(issued_intr[13])); | |
1211 | pio_SRFF issued_intr14_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[14]),.iRst(intr_rel_group[14]),.oQ(issued_intr[14])); | |
1212 | pio_SRFF issued_intr15_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[15]),.iRst(intr_rel_group[15]),.oQ(issued_intr[15])); | |
1213 | pio_SRFF issued_intr16_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[16]),.iRst(intr_rel_group[16]),.oQ(issued_intr[16])); | |
1214 | pio_SRFF issued_intr17_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[17]),.iRst(intr_rel_group[17]),.oQ(issued_intr[17])); | |
1215 | pio_SRFF issued_intr18_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[18]),.iRst(intr_rel_group[18]),.oQ(issued_intr[18])); | |
1216 | pio_SRFF issued_intr19_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[19]),.iRst(intr_rel_group[19]),.oQ(issued_intr[19])); | |
1217 | pio_SRFF issued_intr20_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[20]),.iRst(intr_rel_group[20]),.oQ(issued_intr[20])); | |
1218 | pio_SRFF issued_intr21_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[21]),.iRst(intr_rel_group[21]),.oQ(issued_intr[21])); | |
1219 | pio_SRFF issued_intr22_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[22]),.iRst(intr_rel_group[22]),.oQ(issued_intr[22])); | |
1220 | pio_SRFF issued_intr23_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[23]),.iRst(intr_rel_group[23]),.oQ(issued_intr[23])); | |
1221 | pio_SRFF issued_intr24_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[24]),.iRst(intr_rel_group[24]),.oQ(issued_intr[24])); | |
1222 | pio_SRFF issued_intr25_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[25]),.iRst(intr_rel_group[25]),.oQ(issued_intr[25])); | |
1223 | pio_SRFF issued_intr26_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[26]),.iRst(intr_rel_group[26]),.oQ(issued_intr[26])); | |
1224 | pio_SRFF issued_intr27_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[27]),.iRst(intr_rel_group[27]),.oQ(issued_intr[27])); | |
1225 | pio_SRFF issued_intr28_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[28]),.iRst(intr_rel_group[28]),.oQ(issued_intr[28])); | |
1226 | pio_SRFF issued_intr29_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[29]),.iRst(intr_rel_group[29]),.oQ(issued_intr[29])); | |
1227 | pio_SRFF issued_intr30_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[30]),.iRst(intr_rel_group[30]),.oQ(issued_intr[30])); | |
1228 | pio_SRFF issued_intr31_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[31]),.iRst(intr_rel_group[31]),.oQ(issued_intr[31])); | |
1229 | pio_SRFF issued_intr32_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[32]),.iRst(intr_rel_group[32]),.oQ(issued_intr[32])); | |
1230 | pio_SRFF issued_intr33_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[33]),.iRst(intr_rel_group[33]),.oQ(issued_intr[33])); | |
1231 | pio_SRFF issued_intr34_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[34]),.iRst(intr_rel_group[34]),.oQ(issued_intr[34])); | |
1232 | pio_SRFF issued_intr35_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[35]),.iRst(intr_rel_group[35]),.oQ(issued_intr[35])); | |
1233 | pio_SRFF issued_intr36_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[36]),.iRst(intr_rel_group[36]),.oQ(issued_intr[36])); | |
1234 | pio_SRFF issued_intr37_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[37]),.iRst(intr_rel_group[37]),.oQ(issued_intr[37])); | |
1235 | pio_SRFF issued_intr38_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[38]),.iRst(intr_rel_group[38]),.oQ(issued_intr[38])); | |
1236 | pio_SRFF issued_intr39_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[39]),.iRst(intr_rel_group[39]),.oQ(issued_intr[39])); | |
1237 | pio_SRFF issued_intr40_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[40]),.iRst(intr_rel_group[40]),.oQ(issued_intr[40])); | |
1238 | pio_SRFF issued_intr41_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[41]),.iRst(intr_rel_group[41]),.oQ(issued_intr[41])); | |
1239 | pio_SRFF issued_intr42_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[42]),.iRst(intr_rel_group[42]),.oQ(issued_intr[42])); | |
1240 | pio_SRFF issued_intr43_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[43]),.iRst(intr_rel_group[43]),.oQ(issued_intr[43])); | |
1241 | pio_SRFF issued_intr44_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[44]),.iRst(intr_rel_group[44]),.oQ(issued_intr[44])); | |
1242 | pio_SRFF issued_intr45_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[45]),.iRst(intr_rel_group[45]),.oQ(issued_intr[45])); | |
1243 | pio_SRFF issued_intr46_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[46]),.iRst(intr_rel_group[46]),.oQ(issued_intr[46])); | |
1244 | pio_SRFF issued_intr47_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[47]),.iRst(intr_rel_group[47]),.oQ(issued_intr[47])); | |
1245 | pio_SRFF issued_intr48_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[48]),.iRst(intr_rel_group[48]),.oQ(issued_intr[48])); | |
1246 | pio_SRFF issued_intr49_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[49]),.iRst(intr_rel_group[49]),.oQ(issued_intr[49])); | |
1247 | pio_SRFF issued_intr50_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[50]),.iRst(intr_rel_group[50]),.oQ(issued_intr[50])); | |
1248 | pio_SRFF issued_intr51_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[51]),.iRst(intr_rel_group[51]),.oQ(issued_intr[51])); | |
1249 | pio_SRFF issued_intr52_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[52]),.iRst(intr_rel_group[52]),.oQ(issued_intr[52])); | |
1250 | pio_SRFF issued_intr53_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[53]),.iRst(intr_rel_group[53]),.oQ(issued_intr[53])); | |
1251 | pio_SRFF issued_intr54_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[54]),.iRst(intr_rel_group[54]),.oQ(issued_intr[54])); | |
1252 | pio_SRFF issued_intr55_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[55]),.iRst(intr_rel_group[55]),.oQ(issued_intr[55])); | |
1253 | pio_SRFF issued_intr56_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[56]),.iRst(intr_rel_group[56]),.oQ(issued_intr[56])); | |
1254 | pio_SRFF issued_intr57_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[57]),.iRst(intr_rel_group[57]),.oQ(issued_intr[57])); | |
1255 | pio_SRFF issued_intr58_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[58]),.iRst(intr_rel_group[58]),.oQ(issued_intr[58])); | |
1256 | pio_SRFF issued_intr59_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[59]),.iRst(intr_rel_group[59]),.oQ(issued_intr[59])); | |
1257 | pio_SRFF issued_intr60_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[60]),.iRst(intr_rel_group[60]),.oQ(issued_intr[60])); | |
1258 | pio_SRFF issued_intr61_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[61]),.iRst(intr_rel_group[61]),.oQ(issued_intr[61])); | |
1259 | pio_SRFF issued_intr62_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[62]),.iRst(intr_rel_group[62]),.oQ(issued_intr[62])); | |
1260 | pio_SRFF issued_intr63_srflop (.reset(reset),.clk(clk),.iSet(intr_req_group[63]),.iRst(intr_rel_group[63]),.oQ(issued_intr[63])); | |
1261 | ||
1262 | niu_pio_scheduler64 niu_pio_scheduler64 | |
1263 | (/*AUTOINST*/ | |
1264 | // Outputs | |
1265 | .group (group[5:0]), | |
1266 | // Inputs | |
1267 | .clk (clk), | |
1268 | .reset (reset), | |
1269 | .intr_req_group (intr_req_group[63:0]), | |
1270 | .intr_rel_group (intr_rel_group[63:0]), | |
1271 | .activate_ig_sm (activate_ig_sm), | |
1272 | .activate_ig_sm_rel (activate_ig_sm_rel), | |
1273 | .activate_ig_sm_rel_latched (activate_ig_sm_rel_latched), | |
1274 | .latch_req_mux_out (latch_req_mux_out), | |
1275 | .latch_result_group (latch_result_group), | |
1276 | .latch_nx_pri_group (latch_nx_pri_group)); | |
1277 | ||
1278 | ||
1279 | niu_pio_ig_sm niu_pio_ig_sm | |
1280 | (/*AUTOINST*/ | |
1281 | // Outputs | |
1282 | .latch_req_mux_out (latch_req_mux_out), | |
1283 | .latch_result_group (latch_result_group), | |
1284 | .latch_nx_pri_group (latch_nx_pri_group), | |
1285 | .intr_valid (intr_valid), | |
1286 | .intr_invalid (intr_invalid), | |
1287 | .rst_at (rst_at), | |
1288 | .ig_state (ig_state[2:0]), | |
1289 | // Inputs | |
1290 | .clk (clk), | |
1291 | .reset (reset), | |
1292 | .ibusy (ibusy), | |
1293 | .activate_ig_sm (activate_ig_sm), | |
1294 | .activate_ig_sm_rel_latched (activate_ig_sm_rel_latched), | |
1295 | .activate_ig_sm_rel (activate_ig_sm_rel)); | |
1296 | ||
1297 | endmodule // niu_pio_ic | |
1298 | // Local Variables: | |
1299 | // verilog-library-directories:(".") | |
1300 | // End: | |
1301 | ||
1302 | module pio_SRFF (reset,clk,iSet,iRst,oQ); | |
1303 | ||
1304 | input reset, clk, iSet, iRst; | |
1305 | output oQ; | |
1306 | ||
1307 | reg oQ; | |
1308 | ||
1309 | always @ (posedge clk) | |
1310 | if (reset) | |
1311 | oQ <= 0; | |
1312 | else | |
1313 | casex({iSet, iRst}) | |
1314 | 2'b00: oQ <= oQ; | |
1315 | 2'b01: oQ <= 0; | |
1316 | 2'b1x: oQ <= 1; | |
1317 | endcase | |
1318 | ||
1319 | endmodule // end of Set Reset Flip Flop | |
1320 | ||
1321 |