Lec16_Interconnection_Networks
Download
Report
Transcript Lec16_Interconnection_Networks
Lecture 16: Interconnection
Networks
Embedded Computing Systems
Mikko Lipasti, adapted from M. Schulte
Based on slides and textbook from Wayne Wolf
High Performance Embedded Computing
© 2007 Elsevier
Topics
Interconnection Terms and Metrics
Interconnection Models
Routing and Flow Control
Network-on-Chips
© 2006 Elsevier
Interconnection networks
Client: sender or receiver on a network.
Port: connection to a network on a client
Link: connection between two clients (full/half duplex)
Topology: organization of network links.
Network metrics:
Throughput.
Latency.
Energy consumption.
Area (silicon or metal).
Quality-of-service (QoS) is important for multimedia
applications.
© 2006 Elsevier
Interconnection network models
Source <- line -> termination.
Throughput T, latency D.
Link transmission energy Eb.
Physical length L.
Total link area A.
Traffic models often use Poisson distribution
P(X = x) = m xe-m /(x)!
E(x) = m, Var(x) = m.
x =0, 1, 2, …
Streaming data is produced periodically with
rate s and burstiness r
© 2006 Elsevier
Network topologies
Major choices for network topologies include.
Bus: common connection between a set of
senders and receivers
Crossbar: fully connected network from every
input port to every output port.
Buffered crossbar: add queues to a crossbar to
enable multiple sources to share crossbar input
Mesh: network in which every node is connected
to all of its neighbors.
Application-specific: topology is matched to the
characteristics of the application.
© 2006 Elsevier
Bus network
Throughput:
Advantages:
T1 = P/(1+C). – single word
Tb = P*(n/(n + C)) – n word block
Well-understood.
Easy to program.
Many standards.
Disadvantages:
Contention.
Significant capacitive load.
Do not scale well.
© 2006 Elsevier
Crossbar network
Fully connected network
Advantages:
No contention.
Simple design
Low latency
Broadcast.
Disadvantages:
Expensive
Not feasible for large
numbers of ports.
© 2006 Elsevier
Buffered crossbar network
Add queues shared by
multiple sources
Advantages:
Disadvantages:
Smaller than crossbar.
Can achieve high utilization.
Requires scheduling.
Clos networks
Connect multiple crossbars
together in stages
© 2006 Elsevier
Xbar
Mesh network
Every node connected to all of its neighbors
Advantages:
Well-understood.
Regular architecture.
Disadvantages:
Poor utilization
Variable latency.
© 2006 Elsevier
Application-specific. network
Topology is specific for
application(s)
Advantages:
Higher utilization.
Lower power.
Disadvantages:
Must be designed.
Must carefully allocate
data.
© 2006 Elsevier
Network topology questions
What type of network topology would you chose
if you were building a 1,000 node system?
Why would you use a buffered crossbar network
instead of a regular crossbar network?
What advantages and disadvantages does a 2D
mesh have compared to a 3D mesh?
What types of systems would you expect to use
application-specific networks?
© 2006 Elsevier
Routing and flow control
Routing determines paths followed by packets.
Connection-oriented or connectionless.
Wormhole routing divides packets into flits and header flit
determines route for remaining flits
Virtual cut-through ensures entire path is available before
starting transmission.
Store-and-forward routing stores packets inside network.
Flow control allocates links and buffers as packets
move through the network.
Virtual channel flow control treats flits in different virtual
channels differently.
© 2006 Elsevier
Networks-on-chips
Impact characteristics of MPSoC:
NoCs may not have to interoperate with other
networks.
Energy.
Performance.
Cost.
NoCs have to connect to existing IP, which may
influence interoperability.
QoS is an important design goal.
© 2006 Elsevier
Nostrum
Mesh network---switch
connects to four nearest
neighbors and local “resource”
Each switch has queue at
each input.
Selection logic determines
order in which packets are sent
to output links.
[Kum02] © 2002 IEEE Computer Society
© 2006 Elsevier
Scalable, Programmable, Integrated Network
(SPIN)
Scalable network based on fat-tree.
Bandwidth of links is larger toward root of tree.
All routing nodes use the same routing function.
Message goes up the tree until a common ancestor reached
© 2006 Elsevier
Routing nodes in SPIN
Packet consists of
32-bit words
One word header
Variable word packet
One word checksum
trailer
Network utilizes input
queues and partial
crossbars
Outputs share buffers
Help with contention
© 2006 Elsevier
Ye et al. energy model
Assume: energy per packet
is independent of data or
packet address.
Histogram captures
distribution of path lengths.
Energy consumption of a
class of packet:
M = maximum number of
hops.
h = number of hops.
N(h) = value of hth
histogram bucket.
L = number of flits per
packet.
Eflit = energy per flit.
© 2006 Elsevier
Ye et al. energy model
Longer packets corresponds to longer block sizes
Larger packets
Decrease cache misses but increase the miss penalty
Decrease number of packets but increase hops per
packet
Decrease cache and memory energy, but increase
network energy
© 2006 Elsevier
Goossens et al. NoC methodology
Geared towards
Application-specific SoCs
QoS-intensive apps
Network dimensioning –
determine size of network
and buffers
NoC topology – determine
connection between
elements
NoC configuration – set
register values that control
flow through the network
© 2006 Elsevier
QNoC
Designed to support QoS.
Two-dimensional mesh, wormhole routing.
Four different types of service.
Fixed x-y routing algorithm.
Each service level has its own buffers.
Next-buffer-state table records number of slots for
each output in each class.
Transmissions based on next stage, service
levels, and round-robin ordering.
Can be customized for specific application.
© 2006 Elsevier
QNoC Design Methodology
© 2006 Elsevier
Xpipes and NetChip
Xpipes is a library of soft IP macros for network
switches and links.
NetChip generates custom NoC designs using
xpipes components.
© 2006 Elsevier
Xu et al. H.264 network design
Designed NoC for
H.264 decoder.
Process -> PE mapping
was given.
Compared RAW mesh
to application-specific
networks.
[Xu06] © 2006 ACM Press
© 2006 Elsevier
Application-specific network for H.264
© 2006 Elsevier
[Xu06] © 2006 ACM Press
RAW/application-specific network
comparison
© 2006 Elsevier
[Xu06] © 2006 ACM Press