Research Article

On Asymptotic Analysis of Packet and Wormhole Switched Routing Algorithm for Application-Specific Networks-on-Chip

Algorithm 2

NoC_PS_IRREGULAR_PNN.
Input: n, stores Number of parallel processing NoC.
Source, a NoC type array, stores the Source NoC Numbers a part of NoC structure.
Destination, a NoC type array, stores the Destination NoC Numbers a part of NoC structure.
Payload, a part of NoC structure that holds the data generated as Source NoC.
Output: Payload.
BEGIN
(2)FOR (I = 0 to 4) DO /*Initialization of Elements of Switching Element structure*/
(3) Info = NULL
(4) Info1 = NULL
(5) Source = −999
(6) Destination = −999
(7)END FOR
(8)FOR (I = 0 to 3) DO
(9) Payload = 0 /*Initializing payload of all the 4 NoC to 0*/
(10) Number = I /*Numbering of all the 4 NoC from 0 to 3*/
(11)END FOR
(12) Get the Number of parallel communicating NoC, n
(13)FOR (l = 0 to n) DO
(14) Get the Source and Destination NoC S[l], D[l]
(15) Get the respective payloads
(16)END FOR
(17)FOR (x = 0 to n) DO
(18)  BEGIN
/*Stage1: Transferring the “Payload” values from the NoC to the respective “Info” values of Switching Element structure*/
(19) FOR (y = 0 to n−1) DO
(20) Transfer the payloads of NoC to the Info of next immediate Switching Elements
(21)  Transfer the Source NoC Number to the Source of Switching Element
(22)  Transfer the Destination Number to the Switching Element
(23)   END FOR
/*Stage2: If the communicating NoC are on the same side then check the source and respective destination number of the
Switching Element and transferring it to the next Switching Element having empty “Info” value*/
(24)   FOR (t = 0 to 2) DO
(25)   Check Source and respective Destination pair DO
(26)  Check Info of first linked Switching Element DO
(27)    IF Info = NULL
(28)   Transfer Info into this Switching Element
(29)   Transfer the Source and Destination Number to this Switching Element
(30)    END IF
/*If “Info” of first linked Switching Element is not empty then transfer the packet to the “Info” of Second linked Switching
Element*/
(31)     ELSE
(32)     Check Info of Second linked Switching Element DO
(33)      IF Info = NULL
(34)      Transfer Info into Switching Element
(35)      Transfer the Source and Destination Number to the Switching Element
(36)      END IF
/*Stage2: If communicating NoC are on the opposite side then Check the source and respective destination number of the
Switching Element and transferring it to Switching Element having empty “Info” value*/
(37)  Check Source and respective Destination pair DO
(38)  Check Info of first linked Switching Element DO
(39)    IF Info = NULL
(40)   Transfer Info into this Switching Element
(41)   Transfer the Source and Destination Number to this Switching Element
(42)    END IF
/*If the “Info” of first linked Switching Element is not empty then transfer the packet to “Info” of Second linked Switching
Element*/
(43)    ELSE
(44)   Check Info of Second linked Switching Element DO
(45)     IF Info = NULL
(46)     Transfer Info into Switching Element
(47)      Transfer the Source and Destination Number to the Switching Element
(48)     END IF
/*If the “Info” of first and Second linked Switching Elements are not empty then transfer “Info” To third linked Switching
Element*/
(49)    ELSE
(50)   Check Info of third linked Switching Element DO
(51)     IF Info = NULL
(52)     Transfer Info into Switching Element
(53)      Transfer the Source and Destination Number to the Switching Element
(54)     END IF
/*Stage3: If the linked NoC is the destination that is, NoC-0 for SE 0 , NoC-1 for SE 1 NoC-3 for SE 2 , NoC-4 for SE 3
then transfer the “Info” of the Switching Element to their respective linked NoC*/
(55)  IF Destination of SE 0 = 0
(56)  Transfer Info to payload of NoC-0
/*If the linked NoC is not the destination then transfer the “Info” of Switching Element (SE) to the next empty
Switching Element. If not then destroy the packet*/
(57)  ELSE
(58)   Transfer Info to first linked Switching Element
(59)  END IF
(60)  IF Destination of SE 1 = 1
(61)  Transfer Info to payload of NoC-1
(62)      ELSE
(63)     Transfer Info to first linked Switching Element
(64)  END IF
(65)  IF Destination of SE 3 = 2
(66)  Transfer Info to payload of NoC-2
(67)     ELSE
(68)    Transfer Info to first linked Switching Element
(69)  END IF
(70)  IF Destination of SE 4 = 3
(71)  Transfer Info to payload of NoC-3
(72)     ELSE
(73)    Transfer Info to first linked Switching Element
(74)  END IF
/*Stage4: Transfer the Info of the Switching Element (that could not be transferred in the previous stage) to the destination
NoC*/
(75)  Transfer Info of Switching Element to the payload of the Destination NoC
(76) END FOR
(77) END BEGIN
(78)END FOR
(79)  END BEGIN
The run time Complexity of the Algorithm: NoC_PS_IRREGULAR_PNN is