Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Download
Standard view
Full view
of .
Save to My Library
Look up keyword
Like this
1Activity
0 of .
Results for:
No results containing your search query
P. 1
Performance of Input and Output Selection Techniques on Routing Efficiency in Network-On-Chip: A Review

Performance of Input and Output Selection Techniques on Routing Efficiency in Network-On-Chip: A Review

Ratings: (0)|Views: 54 |Likes:
Published by ijcsis
Network-On-Chip (NOC) is a new paradigm to make the interconnections inside a System-On-Chip (SOC) system. Networks-On-Chip have emerged as alternative to buses to provide a packet-switched communication medium for modular development of large Systems-On-Chip. The performance of Network-On-Chip largely depends on the underlying routing techniques. Routing algorithm can be classified into three categories, namely, deterministic routing, oblivious routing and adaptive routing. Each routing algorithm has two constituencies: output selection and input selection. In this paper we discuss about some input and output selection techniques which used by routing algorithms. Also, to provide new and more efficient algorithms we examine the strengths and weaknesses of the algorithm.
Network-On-Chip (NOC) is a new paradigm to make the interconnections inside a System-On-Chip (SOC) system. Networks-On-Chip have emerged as alternative to buses to provide a packet-switched communication medium for modular development of large Systems-On-Chip. The performance of Network-On-Chip largely depends on the underlying routing techniques. Routing algorithm can be classified into three categories, namely, deterministic routing, oblivious routing and adaptive routing. Each routing algorithm has two constituencies: output selection and input selection. In this paper we discuss about some input and output selection techniques which used by routing algorithms. Also, to provide new and more efficient algorithms we examine the strengths and weaknesses of the algorithm.

More info:

Published by: ijcsis on Oct 12, 2011
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

10/12/2011

pdf

text

original

 
(IJCSIS) International Journal of Computer Science and Information Security,Vol. 9, No. 9, September 2011
Performance of Input and Output SelectionTechniques on Routing Efficiency inNetwork-On-Chip
Mohammad Behrouzian Nejad
Young Researchers Club, Dezfoul BranchIslamic Azad UniversityDezfoul, IranMohamad.behrouzian@gmail.com
Amin Mehranzadeh
Department of Computer EngineeringDezfoul Branch, Islamic Azad UniversityDezfoul, IranMehranzadeh@iaud.ac.ir
Mehdi Hoodgar
Department of Computer EngineeringDezfoul Branch, Islamic Azad UniversityDezfoul, IranHoodgar@iaud.ac.ir
 Abstract
— Network-On-Chip (NOC) is a new paradigm to makethe interconnections inside a System-On-Chip (SOC) system.Networks-On-Chip have emerged as alternative to buses toprovide a packet-switched communication medium for modulardevelopment of large Systems-On-Chip. The performance of Network-On-Chip largely depends on the underlying routingtechniques. Routing algorithm can be classified into threecategories, namely, deterministic routing, oblivious routing andadaptive routing. Each routing algorithm has two constituencies:output selection and input selection. In this paper we discussabout some input and output selection techniques which used byrouting algorithms. Also, to provide new and more efficientalgorithms we examine the strengths and weaknesses of thealgorithm.
 Keywords: Network, System-On-Chip, Network-On-Chip, Routing algorithm, Input selection, Output selection.
I.
 
I
NTRODUCTION
As technology scales and chip integrity grows, on chipcommunication is playing an increasing dominant role inSystem-On-Chip design. System-On-Chip complexity scalingdriven by the effect of Moore’s Law in Integrated Circuits arerequired to integrate from dozens of cores today to hundreds of cores within a single chip in the near future. The NOCapproach has been recently proposed for efficientcommunication in SOC designs. In order Network-On-Chip isa new paradigm for System on Chip design. Increasingintegration produces a situation where bus structure, which iscommonly used in SOC, becomes blocked and increasedcapacitance poses physical problems. Traditional bus in NOCarchitecture is replaced with a network which is a lot similar tothe Internet. Data communications between segments of chiptransferred through the network. In the most commonly foundorganization, a NOC is a set of interconnected switches, withIP cores connected to these switches. NOCs present betterperformance, bandwidth, and scalability than shared busses[1-8].II.
 
N
ETWORK
-
ON
-
CHIP
 The idea of NOC is derived from large scale computernetworks and distributed computing. The Network-On-Chiparchitecture provides the communication infrastructure for theresources. In this way it is possible to develop the hardware of resources independently as standalone blocks and create theNOC by connecting the blocks as elements in the network.Moreover, the scalable and configurable network is a flexibleplatform that can be adapted to the needs of differentworkloads, while maintaining the generality of applicationdevelopment methods and practices. Fig.1 shows a mesh-based NOC, which consists of a grid of 16 cores. Each core isconnected to a switch by a network interface. Corescommunicate with each other by sending packets via a pathconsisting of a series of switches and inter-switch links. TheNOC contains the following fundamental components [9-13].
a)
 
 Network adapters implement the interface by whichcores (IP blocks) connect to the NOC. Their function is todecouple computation (the cores) from communication (thenetwork).b)
 
 Routing nodes route the data according to chosen protocols. They implement the routing strategy.
125http://sites.google.com/site/ijcsis/ISSN 1947-5500
 
(IJCSIS) International Journal of Computer Science and Information Security,Vol. 9, No. 9, September 2011
c)
 
 Links connect the nodes, providing the rawbandwidth. They may consist of one or more logical or  physical channels.
Figure 1. The typical structure of a 4*4 NOC
 B.
 
Topology in Network-on-Chip
The job of the network is to deliver messages from theirsource to their designated destination. This is done byproviding the hardware support for basic communicationprimitives. A well-built network, as noted by Dally and Towles[14], should appear as a logical wire to its clients. An on-chipnetwork is defined mainly by its topology and the protocolimplemented by it. Topology concerns the layout andconnectivity of the nodes and links on the chip. Protocoldictates how these nodes and links are used [12, 13]. In orderTopology determines how the nodes in the network areconnected with each other. In a multiple-hop topology, packetsmay travel one or more intermediate nodes before arriving atthe target node. Regular multiple-hop topologies such as meshand torus are widely used in NOCs. We can use differenttopologies for the optical data transmission network and theelectronic control network respectively [15, 16]. Fig.2 showssome kinds of topology which used in NOC.
Figure 2. (a) 4-ary 2-cube mesh, (b) 4-ary 2-cube torus and (c) binary tree
C.
 
 Routing Algorithms
Routing on NOC is similar to routing on any network. Therouting techniques for NOC have some unique designconsiderations besides low latency and high throughput. Due totight constraints on memory and computing resources, therouting techniques for NOC should be reasonably simple [5, 6,and 9]. The routing algorithm determines the routing paths thepackets may follow through the network graph. It usuallyrestricts the set of possible paths to a smaller set of valid paths.In terms of path diversity and adaptively, routing algorithm canbe classified into three categories, namely, deterministicrouting, oblivious routing and adaptive routing. Deterministicrouting chooses always the same path given the source nodeand the destination node. It ignores the network path diversityand is not sensitive to the network state. This may cause loadimbalances in the network but it is simple and inexpensive toimplement. Besides, it is often a simple way to provide theordering of packets. Oblivious routing, which includesdeterministic algorithms as a subset, considers all possiblemultiple paths from the source node to the destination node, forexample, a random algorithm that uniformly distributes trafficacross all of the paths. But oblivious algorithms do not take thenetwork state into account when making the routing decisions.The third category is adaptive routing, which distributes trafficdynamically in response to the network state. The network statemay include the status of a node or link, the length of queues,and historical network load information [17, 18]. In the NOC,to route packets through the network, the switch needs toimplement a routing technique [9]. A routing technique witchused in routing algorithms has two constituencies: outputselection and input selection which describes in section D andE.
 D.
 
 Input Selection Technique
Multiple input channels may request simultaneously theaccess of the same output channel, e.g., in fig.3 packets p0 of input_0 and p1 of input_1 can request output_0 at the sametime. The input selection chooses one of the multiple inputchannels to get the access. Two input selections have been usedin NOC, first-come-first-served (FCFS) input selection andround-robin input selection. In FCFS, the priority of accessingthe output channel is granted to the input channel whichrequested the earliest. Round-robin assigns priority to eachinput channel in equal portions on a rotating basis. FCFS andround-robin are fair to all channels but do not consider theactual traffic condition [9].
Figure 3. Block diagram of switch in NOC
Dong Wu in [9] a new input selection technique presentedwhich based on Contention Aware Input Selection (CAIS). Themain idea behind CAIS is that when two or more input packetsboth desire the same output channel, the decision as to whichpacket should obtain the output is made based on upstreamcontention information. The aim of CAIS is to use contentioninformation to alleviate congestion [9, 19].In order, the basic idea of CAIS is to give the inputchannels different priorities of accessing the output channels.The priorities are decided dynamically at run-time, based on
126http://sites.google.com/site/ijcsis/ISSN 1947-5500
 
(IJCSIS) International Journal of Computer Science and Information Security,Vol. 9, No. 9, September 2011
the actual traffic condition of the upstream switches. Moreprecisely, each output channel within a switch observes thecontention level (the number of requests from the inputchannels) and sends this contention level to the input channelof the downstream switch, where the contention level is thenused in the input selection. When multiple input channelsrequest the same output channel, the access is granted to theinput channel which has the highest contention level acquiredfrom the upstream switch. This input selection removespossible network congestion by keeping the traffic flowingeven in the paths with heavy traffic load, which in turnimproves routing performance. Fig. 4 shows the algorithm of CAIS [9]. In CAIS an input channel which has lower CLcontinuously competing with channels which have higher CL,obviously will be defeated any time. The packets in thischannel won't be able to get their required output channel andface with starvation and this will cause the problem of decreasing network efficiency. Thus, there is a starvationpossibility in this new input selection technique, because itperforms input selection only based on the highest contentionlevel (CL) and the channels with low CL have a little chancefor winning. So this input selection technique improved in [20],which in addition to CL, another parameter with the name of AGE for every input channel is taken into consideration andmeasure of priority will be a compound of CL+AGE. In thistechnique, the problem of starvation has been resolved.
Figure 4. Pseudo VHDL code of the CAIS algorithm
 E.
 
Output Selection Technique
A packet coming from an input channel may have a choiceof multiple output channels, e.g., in fig.2 a packet p0 of input_0can be forwarded via output_0, output_1 and so on. The outputselection chooses one of the multiple output channels to deliverthe packet. Several switch architectures have been developedfor NOC [5, 9, and 10], employing XY output selection andwormhole routing. The routing technique proposed in [21]acquire information from the neighboring switches to avoidnetwork congestion and uses the buffer levels of thedownstream switches to perform the output selection. A routingscheme which is based on Odd-Even routing algorithm[10] andcombines deterministic and adaptive routing is proposed in[22], where the switch works in deterministic mode when thenetwork is not congested, and switches to adaptive mode whenthe network becomes congested. In the IV, V and VI wedescribes some kinds of output selection techniques of deterministic routing, oblivious routing and adaptive routingwhich presented for NOC.III.
 
I
MPORTANT
P
ROBLEMS IN
R
OUTING
A
LGORITHMS
 Many properties of the NOC are a direct consequence of the routing algorithm used. Among these properties we cancite the following [23]:
a)
 
Connectivity:
Ability to route packets from anysource node to any destination node.
 b)
 
 Adaptively:
Ability to route packets throughalternative paths in the presence of contention or faultycomponents.
 c)
 
 Deadlock and live lock freedom:
Ability to guaranteethat packets will not block or wander across the network forever.
 d)
 
Fault tolerance:
Ability to route packets in thepresence of faulty components. Although it seems that faulttolerance implies adaptively, this is not necessarily true. Faulttolerance can be achieved without adaptively by routing apacket in two or more phases, storing it in some intermediatenodes.
 
A good routing algorithm should be avoidance fromdeadlock, live lock, and starvation. Deadlock may be definedas a cyclic dependency among nodes requiring access to a setof resources, so that no forward progress can be made, nomatter what sequence of events happens. Live lock refers topackets circulating the network without ever making anyprogress towards their destination. Starvation happens when apacket in a buffer requests an output channel, being blockedbecause the output channel is always allocated to anotherpacket [7, 20, and 23].IV.
 
D
ETERMINISTIC
R
OUTING
A
LGORITHMS
 Many properties of the NOC are a direct consequence of the routing algorithm used. The XY algorithm is deterministic.Flits are first routed in the X direction, until reaching the Ycoordinate, and afterwards in the Y direction. If some network hop is in use by another packet, the flit remains blocked in theswitch until the path is released [5, 7].V.
 
O
BLIVIOUS
R
OUTING
A
LGORITHMS
 
 A.
 
 Dimension Order Routing
This routing algorithm routes packets by crossingdimensions in increasing order, nullifying the offset in onedimension before routing in the next one. A routing example isshown in Fig.5 Note that dimension-order routing can beexecuted at the source node, storing information about turns
127http://sites.google.com/site/ijcsis/ISSN 1947-5500

You're Reading a Free Preview

Download
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->