| 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 | |