On-time Network On-Chip: Analysis and Architecture CS252 Project Presentation Dai Bui.

Slides:



Advertisements
Similar presentations
Switching Techniques In large networks there might be multiple paths linking sender and receiver. Information may be switched as it travels through various.
Advertisements

1 IK1500 Communication Systems IK1330 Lecture 3: Networking Anders Västberg
Presentation of Designing Efficient Irregular Networks for Heterogeneous Systems-on-Chip by Christian Neeb and Norbert Wehn and Workload Driven Synthesis.
Spring 2000CS 4611 Quality of Service Outline Realtime Applications Integrated Services Differentiated Services.
1 CONGESTION CONTROL. 2 Congestion Control When one part of the subnet (e.g. one or more routers in an area) becomes overloaded, congestion results. Because.
24-1 Chapter 24. Congestion Control and Quality of Service (part 1) 23.1 Data Traffic 23.2 Congestion 23.3 Congestion Control 23.4 Two Examples.
REAL-TIME COMMUNICATION ANALYSIS FOR NOCS WITH WORMHOLE SWITCHING Presented by Sina Gholamian, 1 09/11/2011.
CS640: Introduction to Computer Networks Aditya Akella Lecture 20 – QoS.
Traffic Shaping Why traffic shaping? Isochronous shaping
ECE 720T5 Fall 2011 Cyber-Physical Systems Rodolfo Pellizzoni.
CS 408 Computer Networks Congestion Control (from Chapter 05)
High Speed Networks and Internets : Multimedia Transportation and Quality of Service Meejeong Lee.
What is Flow Control ? Flow Control determines how a network resources, such as channel bandwidth, buffer capacity and control state are allocated to packet.
Copyright: RSVP The ReSerVation Protocol by Sujay koduri.
Module R R RRR R RRRRR RR R R R R Efficient Link Capacity and QoS Design for Wormhole Network-on-Chip Zvika Guz, Isask ’ har Walter, Evgeny Bolotin, Israel.
1 Lecture 12: Interconnection Networks Topics: dimension/arity, routing, deadlock, flow control.
Integrated Service in the Internet Architecture RFC 1633.
Network based System on Chip Final Presentation Part B Performed by: Medvedev Alexey Supervisor: Walter Isaschar (Zigmond) Winter-Spring 2006.
© nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.
CSCI 8150 Advanced Computer Architecture
A General approach to MPLS Path Protection using Segments Ashish Gupta Ashish Gupta.
1 Lecture 24: Interconnection Networks Topics: topologies, routing, deadlocks, flow control Final exam reminders:  Plan well – attempt every question.
A Real-Time Video Multicast Architecture for Assured Forwarding Services Ashraf Matrawy, Ioannis Lambadaris IEEE TRANSACTIONS ON MULTIMEDIA, AUGUST 2005.
Issues in System-Level Direct Networks Jason D. Bakos.
1 Lecture 24: Interconnection Networks Topics: topologies, routing, deadlocks, flow control.
A General approach to MPLS Path Protection using Segments Ashish Gupta Ashish Gupta.
Jennifer Rexford Princeton University MW 11:00am-12:20pm Wide-Area Traffic Management COS 597E: Software Defined Networking.
CS144, Stanford University Error in Q3-7. CS144, Stanford University Using longest prefix matching, the IP address will match which entry? a /8.
Dragonfly Topology and Routing
Performance and Power Efficient On-Chip Communication Using Adaptive Virtual Point-to-Point Connections M. Modarressi, H. Sarbazi-Azad, and A. Tavakkol.
Switching, routing, and flow control in interconnection networks.
Switching Techniques Student: Blidaru Catalina Elena.
High-Performance Networks for Dataflow Architectures Pravin Bhat Andrew Putnam.
Network Physics Created by Ruslan Yavdoshak for Nikitova Games, 2008.
QOS مظفر بگ محمدی دانشگاه ایلام. 2 Why a New Service Model? Best effort clearly insufficient –Some applications need more assurances from the network.
CS 447 Networks and Data Communication
A Distributed Scheduling Algorithm for Real-time (D-SAR) Industrial Wireless Sensor and Actuator Networks By Kiana Karimpour.
Networks-on-Chips (NoCs) Basics
QoS Support in High-Speed, Wormhole Routing Networks Mario Gerla, B. Kannan, Bruce Kwan, Prasasth Palanti,Simon Walton.
Deadlock CEG 4131 Computer Architecture III Miodrag Bolic.
1 Optical Burst Switching (OBS). 2 Optical Internet IP runs over an all-optical WDM layer –OXCs interconnected by fiber links –IP routers attached to.
Switching breaks up large collision domains into smaller ones Collision domain is a network segment with two or more devices sharing the same Introduction.
CS 447 Network & Data Communication QoS (Quality of Service) & DiffServ Introduction Department of Computer Science Southern Illinois University Edwardsville.
CS 8501 Networks-on-Chip (NoCs) Lukasz Szafaryn 15 FEB 10.
TCP Trunking: Design, Implementation and Performance H.T. Kung and S. Y. Wang.
1 Lecture 15: Interconnection Routing Topics: deadlock, flow control.
Run-time Adaptive on-chip Communication Scheme 林孟諭 Dept. of Electrical Engineering National Cheng Kung University Tainan, Taiwan, R.O.C.
Unit III Bandwidth Utilization: Multiplexing and Spectrum Spreading In practical life the bandwidth available of links is limited. The proper utilization.
Interconnect Networks Basics. Generic parallel/distributed system architecture On-chip interconnects (manycore processor) Off-chip interconnects (clusters.
Random Early Detection (RED) Router notifies source before congestion happens - just drop the packet (TCP will timeout and adjust its window) - could make.
TCP continued. Discussion – TCP Throughput TCP will most likely generate the saw tooth type of traffic. – A rough estimate is that the congestion window.
ECE 720T5 Fall 2012 Cyber-Physical Systems Rodolfo Pellizzoni.
Mohamed ABDELFATTAH Andrew BITAR Vaughn BETZ. 2 Module 1 Module 2 Module 3 Module 4 FPGAs are big! Design big systems High on-chip communication.
Univ. of TehranIntroduction to Computer Network1 An Introduction Computer Networks An Introduction to Computer Networks University of Tehran Dept. of EE.
Courtesy Piggybacking: Supporting Differentiated Services in Multihop Mobile Ad Hoc Networks Wei LiuXiang Chen Yuguang Fang WING Dept. of ECE University.
Providing QoS in IP Networks
Integrated Services & RSVP Types of pplications Basic approach in IntServ Key components Service models.
Chi-Cheng Lin, Winona State University CS412 Introduction to Computer Networking & Telecommunication Data Link Layer Part II – Sliding Window Protocols.
Data Communication Networks Lec 13 and 14. Network Core- Packet Switching.
1 Lecture 22: Interconnection Networks Topics: Routing, deadlock, flow control, virtual channels.
Topics discussed in this section:
Routing and Switching Fabrics
Switching Techniques In large networks there might be multiple paths linking sender and receiver. Information may be switched as it travels through various.
On-Time Network On-chip
Taxonomy of network applications
On-time Network On-chip
Switching Techniques.
CS4470 Computer Networking Protocols
Congestion Control (from Chapter 05)
Routing and Switching Fabrics
Presentation transcript:

On-time Network On-Chip: Analysis and Architecture CS252 Project Presentation Dai Bui

Introduction  The project aims at providing predictable timing delay for network on chip communication paradigm  Purpose is not only to improve network speed  Packet worst-case delay should be estimated analytically instead of empirically

Motivations Cyber Physical Systems (Example from Hermann Kopetz at TU Vienna) Need for separate flows instead of networks

QNoC  From Technion  Asynchronous communication  Support multiple service levels:  Seems to be suitable for soft real-time applications like video streaming  But what happens when multiple real-time flows have to share the same link?  Non deterministic behaviors for flows  So we need to keep track of the number of guaranteed flows and its demand on on each link

SoCBUS  From University of Linkoping  Guarantee real-time properties by setting up a path when sending:  Initiate a path by sending a setting up packet  The path will be locked until all data have been sent  After that the path is unlocked  Drawbacks:  What happens if we have two real-time flows on the same link?  Other traffic is blocked. This seems to be a good solution when sending a large bulk of data but not good for a periodic, non-continuous flows  Bad link utilization due to link locking

Æthereal  From NXP  Try to employ the conflict free routing-> no packet is dropped  Avoid conflict between two packets on the same link by delaying one packet  Drawback:  Global scheduling of packets  inflexible, difficult to scale  Partial design-time scheduling -> not suitable for multi-core

Idea  Exploit  Admission control  Real-time packet scheduling  Run-time configuration  Spatial diversity

Design Goals  Multiple real-time flows can be multiplexed on one link  Utilize the spatial data paths between sources and nodes to avoid the conflicts between real-time flows  Does not block links completely as SoCBUS, best-effort flows still can travel links used by real-time flows  Avoid unpredicted behaviors networks as in QNoC, when there are multiple real-time flows suddenly travelling on the same link and their total bandwidth exceeds the bandwidth of the link. The admission control in our architecture can prevent that. Senders should always know if their required specifications for their communications can be met or not  Provide a reconfigurable state for real-time flows on a network, we do not need to pre-calculate that at design time as in Æthereal, which is really not suitable for the multi-core architecture  Verifiable for critical systems

Path Setup Protocol  Sender initiates a new real-time flow by sending its REQUEST to the master node with its specifications about the new flow: end-to-end delay, max packet length, minimum interval between packets, …  The master node computes the delay constraints and specifications of the new flow against its knowledge about previously reserved flows  If it can not find a path, it send back to the requested node a REJECT  If there is any possible path, it sends SETUP command to routers on the path to reconfigure the routers (possibly modify configurations for other flows as well)  It waits for all routers to receive this command and ACKs from these routers  It sends back to the requested node an ACCEPT

Miscellaneous  When a real-time flow is not needed, its path can be torn. Path tear-up protocol is almost the same as path setup protocol but with reversed commands.  Each real-time flow is uniquely identified by a flow ID, this is embedded in each real-time packet so that routers on the path can identified the packets  Master node interacts with other routers about flows using this ID

Heterogeneous Communication  Best-effort packets are preemptible by real-time packets. Real-time packets are not preemptible  No acknowledgement for real-time flits since the scheduling mechanism will make sure that the buffer size for real-time flows is bounded (based on specifications)  Double the speed of a packet since no ACK mechanism is needed

Router Structure  Looks the same as virtual channels routers  When a packet is identified by the flow ID, the router will put it in a designated FIFO queue.  The previously reserved information of a flow will tell the router which port packets of a flow will be forwarded to.

Delay Model and Fixed Priority Scheduler  Delay bound of a packet of flow f on out going edge e of a node is defined as the total of the queueing time at that node plus the propagation time for the head flit of a packet to reach next node  Fixed Priority Scheduler:  Step 1: Mature packets are scheduled first. Packets of flows with highest priority are selected to forwarded first.  Step 2(optional): Immature packets can be forwarded if there is no mature packets.  Queueing delay by fixed-priority scheduler  Where O e (g) is the order function (to compare priority) of flows on edge e. There is no notion of global priority  Details of the proof is in the report

End-to-end Delay  The end-to-end delay has to be larger than the total delay at each edge on the path  Assume that because it takes one cycle to transmit a flit in a NoC.

Utilization Constraint  Utilization of each link when shared by multiple flows must not greater than 1  Where t f is the minimum interval between two successive packets of flow f

Buffer bound for each flow  Each flow has a buffer bound at each node:  With some constrains, the sufficient buffer size will be smaller than 2 packet-size. In some cases, buffer size is just 1 packet size

Routing  Always deadlock-free  Test example  Three flows  Flow 1: PE7-> PE23  Flow 2: PE6-> PE3  Flow 3: PE5-> PE19  Exhaustive depth first search  Routing example  Routing algorithm is based on XY routing  Flow 3 comes last (the request packet reach the master node last  When the routing algorithm for it reach the link from PE7->PE8, the link can not afford 3 flows due to utilization of it will be greater than 1  Link from PE7->Pe12 is then selected

Example 1 Results  Implemented in SystemC based loosely on Noxim  Graph for Flow 2: PE6-> PE3  Max Packet Length 3  Min Interval 8

Example 1Results  Flow 1: PE7- >PE23  Max Packet Length: 4  Min interval: 9  Flow 3: PE5- >PE19  Max Packet Length: 5  Min Interval 7

Buffer size

Example 2 - Three flows on one link  Packet Scheduling without the step 2

Comparison  Experiments  The same total input buffer size of 10 flits for all protocols  Packet size = 5 flits  For real-time NoC, we restrict two real-time flows per link and exploit spatial diversity of paths in NoC

Future Work  Find a better optimization for delays and path in network  Integrate with real-time processors like PRET to form a real-time multi-core processor  Understand how it can support the Byzantine Generals problem for fault-tolerance  Suitable for PTIDES  No packet reordering  Bounded communication delay