An introduction to Network-On-chips Sayed Amirhossein Mirhosseini - - PowerPoint PPT Presentation
An introduction to Network-On-chips Sayed Amirhossein Mirhosseini - - PowerPoint PPT Presentation
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
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
- f 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
- perations 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:
1.
Any packet is not allowed to take an EN turn at 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
- perated as FIFO queues. Therefore, once a