An introduction to Network-On-chips Sayed Amirhossein Mirhosseini
Fully Crossbar Interconnection  Commercial Example  Niagara multiprocessor SoC from SUN
BUS  Buses are the simplest and most widely used SoC interconnection networks  Definition: A collection of signals (wires) to which one or more IP components (which need to communicate data with each other) are connected  Only one IP component can transfer data on the shared bus at any given time
Shared Bus  Commercial Example  DaVinci family of digital video processing SoCs from Texas Instruments
Hierarchical Shared Bus  Improves system throughput  Multiple ongoing transfers on different buses  Commercial example:  Customizable multiprocessor ARM PrimeXsys SoCs
Towards NOC  Buses are not scalable
Network Topologies Torus Hypercube Binary Tree
Topology Selection Factors  Diameter :  Maximum shortest path distance between two nodes in the network. Networks with small diameters are preferable.  Number of Links :  A topology with large number of links can support high bandwidth.  Average Distance :  Average among the distances between all pairs of nodes of a graph. A topology having lesser average distance is preferable.
Topology Selection Factors (cont.)  Node Degree :  Numbers of channels connecting the node to its neighbors. The lower this number, the easier to build the network.  Bisection Width :  Minimum number of wires removed in order to bisect a network. A larger bisection width enables faster information exchange, and preferable.
NOC Elements  NoCs use packets to route data from the source to the destination PE via a network fabric that consists of :  switches (routers)  interconnection links (wires)
Router Architecture
Switching Strategies  Determine how data flows through routers in the network  Flit :  an elementary packet on which link flow control operations are performed  Phit :  physical unit of data that is transferred on a link in a single cycle
Circuit Switching  Physical path between the source and the destination is reserved prior to the transmission of data  Message’s header flit traverses the network from the source to the destination, reserving links along the way  When the probe reaches the destination, a complete path has been set up and an acknowledgment is transmitted back to the source.  Circuit switching is generally advantageous when messages are infrequent and long
Packet switching  packets are transmitted from source and make their way independently to receiver  zero start up time, followed by a variable delay due to contention in routers along packet path
virtual cut-through switching  The router can start forwarding the header and following data bytes as soon as routing decisions have been made and the output buffer is free.
Wormhole Switching  flit from a packet is forwarded to receiving router if space exists for that flit  parts of the packet can be distributed among two or more routers  more susceptible to deadlocks due to usage dependencies between links
Deadlock  One or more packets in a network become blocked, and remain blocked for an indefinite amount of time waiting for an event that cannot occur.  Example :
Deadlock (cont.)  Deadlock Avoidance : Techniques that request resources in such a way that no deadlock can arise.  Deadlock Recovery : These techniques require a mechanism to detect and resolve potential deadlock situations.
A Deadlock Free Router
Livelock  Livelocks are similar to deadlocks, except that states of the resources involved constantly change with regard to one another, without making any progress  occurs especially when dynamic (adaptive) routing is used  e.g. can occur in a deflective routing if a packet is bounced around over and over again between routers and never reaches its destination
Routing Algorithm  Routing algorithms establish the path followed by each message or packet .  Many properties of the interconnection network are a direct consequence of the routing algorithm used :  Connectivity :  Ability to route packets from any source node to any destination node.  Adaptivity :  Ability to route packets through alternative paths in the presence of contention or faulty components.  Deadlock and livelock freedom :  Ability to guarantee that packets will not block or wander across the network forever.
Routing Algorithms Taxonomy
Deterministic Routing  fixed paths are used to transfer data between a particular source and destination  Does not take into account current state of the network  Advantages :  easy to implement  in-order packet delivery if single path is used  Manageable to be deadlock and livelock free
Adaptive Routing  routing decisions are made according to the current state of the network  Considering factors such as availability and load on links  Path between source and destination may change over time  More resources needed to monitor state of the network and dynamically change routing paths  Able to better distribute traffic in a network
Example : Odd-Even Routing (cont.)  The odd-even turn model is governed by the following two rules: Any packet is not allowed to take an EN turn at 1. any nodes located in an even column, and it is not allowed to take an NW turn at any nodes located in an odd column. 2. Any packet is not allowed to take an ES turn at any nodes located in an even column, and it is not allowed to take an SW turn at any nodes located in an odd column.
Example : Odd-Even Routing (cont.)  Theorem : Any routing algorithms that follow the rules of the odd-even turn model are deadlock free as long as 180-degree turns are prohibited.  Proof :  By Contradiction : NOT Possible !
Example : Odd-Even Routing (cont.)
Virtual channel  Buffers at physical channels are commonly operated as FIFO queues. Therefore, once a message occupies a buffer for a channel, no other message can access the physical channel.  Each virtual channel is realized by an independently managed pair of message buffers.
A Virtual Channeled Router
Many ways to gain bonus marks   Example : Pipelined Router
References  Principles and Practices of Interconnection Networks by William James Dally and Brian Pattrick Towles [2004]  Interconnection Networks: An Engineering Approach by Jose Duato, Sudhakar Yalamanchili and Lionel M. Ni [1997]  Computer Architecture, Fifth Edition: A Quantitative Approach by John L.Hennessy and David A. Patterson [2011]  Chiu, Ge-Ming. "The odd-even turn model for adaptive routing." Parallel and Distributed Systems, IEEE Transactions on 11.7 (2000): 729-738.
Recommend
More recommend