Research Article

Performance Analysis of Multilayered Multipriority Asymmetric-Sized Delta Networks

Algorithm 1

Queue-process for multilayered, multipriority MINs.
Queue-Process (csid, clid, nlid, sqid)
Input: Current stage_id (csid); Current and Next Stage Layer_id (clid, nlid) of Send- and Accept-Queue/s respectively;
     Send-Queue_id (sqid) of Current Stage
{
Processor = 0;
for (prid= P−1; prid>= 0; prid- -) // where P is the total number of priorities
 if (Pop[sqid][csid][clid][prid] > 0) and (processor = 0)
 // prid-class Send-Queue is not empty and processor is still ready for forwarding
 {
  RAbit = get_bit(RA[sqid][csid][clid][prid][1]); // get the (csid)th bit of Routing Address (RA)
  // for the leading packet of prid-class Send-Queue by a cyclic logical left shift
       if (RAbit = 0) // upper port forwarding
       aqid = 2 (sqid% (N/2) ); // link for perfect shuffle algorithm
         // where N is the total number of input/output ports
else // lower port forwarding
            aqid = 2 (sqid% (N/2) ) + 1; // link for perfect shuffle algorithm
  // the above network implementation (omega-type) has the same interconnection links between the crossbar stages
Unicast-Forwarding (csid, clid, nlid, sqid, aqid, prid);
Processor = 1;
   }
}