Overview. Leader Election Protocol. Dynamic Voltage Scaling. Optimal Reconfiguration of FPGA. Memory Interface. UCb

Size: px
Start display at page:

Download "Overview. Leader Election Protocol. Dynamic Voltage Scaling. Optimal Reconfiguration of FPGA. Memory Interface. UCb"

Transcription

1 APPLICATIONS UC b

2 Overview Leader Election Protocol Dynamic Voltage Scaling Optimal Reconfiguration of FPGA Memory Interface

3 Leader Election Protocol UC b

4 Leader Election Protocol by Leslie Lamport

5 Leader Election (leader,hops) (2,0) (1,0) 2 1 (0,0) 0 3 (3,0)

6 Timeout (2,0) (1,0) 2 1 (0,0) 0 3 (3,0)

7 Flooding (2,0) (1,2,1,0) (1,0) 2 1 (0,0) 0 (1,0,1,0) (1,3,1,0) 3 (3,0) (src,dst,leader,hops)

8 Flooding (2,0) (1,2,1,0) (1,0) 2 1 (0,0) 0 (1,0,1,0) 3 (3,0) (1,3,1,0)

9 Flooding (2,0) (1,2,1,0) (1,0) 2 1 (0,0) 0 (1,0,1,0) 3 (1,1)

10 Forwarding (2,0) (1,2,1,0) (1,0) 2 1 (0,0) 0 (1,0,1,0) (3,2,1,1) 3 (1,1)

11 Forwarding (2,0) (1,2,1,0) (1,0) 2 1 (0,0) 0 (1,0,1,0) (3,2,1,1) 3 (1,1)

12 Forwarding (1,1) (1,0) 2 (2,0,1,1) (0,0) 0 (2,3,1,1) (1,0,1,0) 1 (3,2,1,1) 3 (1,1)

13 Leader Election (1,1) (1,0) 2 1 (0,0) 0 3 (1,1)

14 Leader Election (1,1) (1,0) 2 1 (0,0) 0 3 (1,1)

15 Leader Election (0,1) (0,1) 2 1 (0,0) 0 3 (0,2)

16 Variable timeout timeout timer hops time Timeout Timeout Update received Update received Update received

17 Leader Election Claim to be verified Correct leader is known at a node i after t(i) = Δ TO + Δ TDELAY + d i Δ MDELAY A model checking problem for all i. IMP ² >t(i) l(i)=l(i)

18 Modelling (RT) protocols Users Protocol stacks Medium All, All, Thanks Thanks for for the the spec. spec. It It seems seems to to run run fine. fine. As As expected, expected, it's it's 2 2 or or 3 3 orders orders of of magnitude magnitude faster faster than than TLC. TLC. I'm I'm wondering wondering if if your your algorithms algorithms could could be be used used for for checking checking specs specs written written in in a a higher higher level level language language like like TLA+. TLA+.

19 Modelling (RT) protocols Users Protocol stacks

20 Modelling (RT) protocols Users Protocol stacks Messages

21 Modelling the election protocol Per process dist i : N leader i : Node timeout i : N Message src: Node dst: Node leader: Node hopss: N

22 Global Declaration

23 Message

24 Node[id]

25 Local Declarations (Node[id])

26 Optimisations Reducing the number of active variables If variable is never used until next reset, then the value does not matter. Symmetry of message processes The message processes are symmetric: It does not matter which is used to transfer a message.

27 Dynamic Voltage Scaling UC b

28 Performance vs Ressource-Efficiency? Consumer constantly demand better functionality, flexibility, availability,.. increase in resources needed: Time Energy Memory Bandwidth.. Application of CUPPAAL to modeling, analysis and synthesis of resourceefficient schedules for realtime systems.

29 Power Management Dynamic Voltage Scaling

30 Energy in Processor Power consumption mainly by dynamic power energy A non-experts understanding of CMOS P E dynamic dynamic = C L pr. cycle V = 2 dd C L f clk V 2 dd Supply voltage reduction => decreased frequency delay V dd f clk ~ V ( α -1) dd ; α > 1 V dd We may miss deadlines

31 Task Scheduling utilization of CPU P(i), [E(i), L(i)],.. : period or earliest/latest arrival or.. for T i C(i): execution time for T i D(i): deadline for T i T 1 T 2 ready done Scheduler T n stop run T 2 is running { T 4, T 1, T 3 } ready ordered according to some given priority: (e.g. Fixed Priority, Earliest Deadline,..)

32 Modeling Task T 1 1 T 2 2 T n n ready done stop run Scheduler

33 Modeling Scheduler T 1 1 T 2 2 T n n ready done stop run Scheduler

34 Modeling Queue T 1 1 T 2 2 T n n ready done stop run Scheduler

35 Schedulability = Safety Property May be extended with preemption (Task0.Error or Task1.Error or ) A (Task0.Error or Task1.Error or )

36 Energy Optimal Scheduling Using Priced Timed Automata T 1 1 T 2 2 ready done Scheduler T n n stop run F:=?? ; V:=?? Choose Scaling/Cost (Freq/Voltage) C

37 Energy Optimal Scheduling = Optimal Infinite Path Accumulated cost σ c 1 c 2 c 3 c n t 1 t 2 t 3 t n (Task0.Error or Task1.Error or ) Accumulated time Value of path σ: val(σ) = lim n c n /t n Optimal Schedule σ * : val(σ * )= inf σ val(σ)

38 Energy Optimal Scheduling = Optimal Infinite Path Accumulated cost σ c 1 c 2 c 3 c n t 1 t 2 t 3 t n (Task0.Error or Task1.Error or ) Accumulated time Value of path σ: val(σ) = lim n c n /t n THEOREM: σ * is is computable Bouyer, Brinksma, Larsen 03 Optimal Schedule σ * : val(σ * )= inf σ val(σ)

39 Approximate Optimal Schedule T<N T<N X X T<N X Optimal infinite schedule modulo cost-horizon T>=N T>=N C=M C=M C=M C=M E[] (not (Task0.Error or Task1.Error or Task2.Error) and (cost>=m imply time >= N)) = E[] φ(m,n) σ ² [] φ(m,n) imply val(σ) M/N

40 Preliminary Results P 1 =D 1 =32 C 1 =6 P 2 =D 2 =48 C 2 =18 P 3 =D 3 =64 C 3 =12 EDF w preemption no DVS: avr.: 48

41 Preliminary Results Cost horizon: 2,000 P 1 =D 1 =32 C 1 =6 P 2 =D 2 =48 C 2 =18 P 3 =D 3 =64 C 3 =12 EDF w preemption w DVS: avr.: 43.37

42 Optimal Reconfiguration of FPGA Utilizing new features of UPPAAL 4.0 User-defined functions Types & Select Due to Jacob I. Rasmussen

43 Field Programmable Gate Array Informationsteknologi

44 The Problem Informationsteknologi

45 The Problem Informationsteknologi

46 Example Informationsteknologi

47 Example Informationsteknologi

48 Example Informationsteknologi

49 Example 1 Informationsteknologi

50 Example 1 Informationsteknologi

51 UPPAAL Model Informationsteknologi

52 UPPAAL Model Informationsteknologi

53 UPPAAL Model Informationsteknologi

54 UPPAAL Model Informationsteknologi

55 Memory Interface UC b

56 Memory Management Radar Video Processing Subsystem Advanced Noise Reduction Techniques Costal Surveillance e 0,5 e 0,4 e 0,3 e 0,2 e 2,4 e 1,2 e 1,3 e 1,4 e 2,2 e 1,5 e 2,3 e 2,5 e e 3,5 3,4 e e3,3 3, GHz GHz Combiner (VP3) echo Frequency Diversity Airport Surveillance Sweep Integration combiner

57 Input A 8 (100MHz) Input B 8 (100 MHz) Buffer 1 1 Kbytes Buffer 2 1 Kbytes A' 8 (100MHz) Buffer bytes Adder 1 S' 16 (100 MHz) Buffer 4 S = A + S' - A' 2 Kbytes 16 (100 MHz) 8 (100MHz) Buffer (200 MHz) B B' 8 (100MHz) 512 bytes Buffer bytes SDRAM Adder 2 T' Buffer 7 T = B + T' - B' 16 (100 MHz) 2 Kbytes T 16 (100 MHz) S Buffer 8 2 Kbytes Buffer 9 2 Kbytes Output S Output T Arbiter

58 Input A 8 (100MHz) Input B 8 (100 MHz) Buffer 1 1 Kbytes A' 8 (100MHz) Buffer 2 1 Kbytes Buffer 3 A single buffer 512 bytes Adder 1 S' 16 (100 MHz) Buffer 4 S = A + S' - A' 2 Kbytes 16 (100 MHz) 8 (100MHz) Buffer (200 MHz) B B' 8 (100MHz) 512 bytes Buffer bytes SDRAM Adder 2 T' Buffer 7 T = B + T' - B' 16 (100 MHz) 2 Kbytes T 16 (100 MHz) S Buffer 8 2 Kbytes Buffer 9 2 Kbytes Output S Output T Arbiter

59 Input A 8 (100MHz) Input B 8 (100 MHz) broadcast chan tick; const CYCLE 10; Buffer 1 1 Kbytes // 100MHz = 10ns cycle Buffer 2 1 Kbytes A' 8 (100MHz) Buffer bytes Adder 1 S' 16 (100 MHz) Buffer 4 S = A + S' - A' 2 Kbytes 16 (100 MHz) 8 (100MHz) Buffer (200 MHz) Clock B B' 8 (100MHz) 512 bytes Buffer bytes SDRAM Adder 2 T' Buffer 7 T = B + T' - B' 16 (100 MHz) 2 Kbytes T 16 (100 MHz) S Buffer 8 2 Kbytes Buffer 9 2 Kbytes Output S Output T Arbiter

60 Input A 8 (100MHz) Input B 8 (100 MHz) Buffer 1 Buffer 2 1 Kbytes const REGSIZE 64; // 64 byte = 512 bits 1 Kbytes int[-4,1028] buffer; int[0,64] register A' 8 (100MHz) Buffer bytes Adder 1 S' 16 (100 MHz) Buffer 4 S = A + S' - A' 2 Kbytes 16 (100 MHz) 8 (100MHz) Buffer (200 MHz) Input Buffer B B' 8 (100MHz) 512 bytes Buffer bytes SDRAM Adder 2 T' T = B + T' - B' 16 (100 MHz) T 16 (100 MHz) S Buffer 7 2 Kbytes Buffer 8 2 Kbytes Buffer 9 2 Kbytes Input Register Output S Output T Arbiter

61 Input A 8 (100MHz) Input B 8 (100 MHz) Buffer 1 1 Kbytes A' Buffer 2 1 Kbytes const REFRESH_PERIOD 15525; 8 (100MHz) Buffer 3 const REFRESH_TIME 100; 512 bytes Adder 1 S' 16 (100 MHz) Buffer 4 S = A + S' - A' 2 Kbytes 16 (100 MHz) 8 (100MHz) Buffer (200 MHz) B B' 8 (100MHz) 512 bytes Buffer bytes SDRAM Adder 2 T' Buffer 7 T = B + T' - B' 16 (100 MHz) 2 Kbytes T 16 (100 MHz) Buffer 8 2 Kbytes Memory (-ies) S Buffer 9 2 Kbytes Output S Output T Arbiter

62 Input A 8 (100MHz) Input B 8 (100 MHz) Buffer 1 1 Kbytes Buffer 2 1 Kbytes A' 8 (100MHz) Buffer bytes Adder 1 S' 16 (100 MHz) Buffer 4 S = A + S' - A' 2 Kbytes 16 (100 MHz) 8 (100MHz) Buffer (200 MHz) B B' 8 (100MHz) 512 bytes Buffer bytes SDRAM Adder 2 T' Buffer 7 T = B + T' - B' 16 (100 MHz) 2 Kbytes T 16 (100 MHz) Buffer 8 2 Kbytes Arbiter (round robin) S Buffer 9 2 Kbytes Output S Output T Arbiter

Statistical Model Checking in UPPAAL

Statistical Model Checking in UPPAAL Statistical Model Checking in UPPAAL Alexandre David, Kim G. Larsen, Marius Mikucionis Axel Legay, Wang Zheng, Peter Bulychev, Jonas van Vliet, Danny Poulsen, Dehui Du, Guangyuan Li CAV 11, PDMC 11,FORMATS

More information

Statistical Model Checking in UPPAAL

Statistical Model Checking in UPPAAL Statistical Model Checking in UPPAAL Alexandre David, Kim G. Larsen, Axel Legay, Marius Mikucionis Wang Zheng, Peter Bulychev, Jonas van Vliet, Danny Poulsen, Dehui Du, Guangyuan Li CAV 11, PDMC 11,FORMATS

More information

Mesh Networks

Mesh Networks Institute of Computer Science Department of Distributed Systems Prof. Dr.-Ing. P. Tran-Gia Decentralized Bandwidth Management in IEEE 802.16 Mesh Networks www3.informatik.uni-wuerzburg.de Motivation IEEE

More information

An Introduction to UPPAAL. Purandar Bhaduri Dept. of CSE IIT Guwahati

An Introduction to UPPAAL. Purandar Bhaduri Dept. of CSE IIT Guwahati An Introduction to UPPAAL Purandar Bhaduri Dept. of CSE IIT Guwahati Email: pbhaduri@iitg.ernet.in OUTLINE Introduction Timed Automata UPPAAL Example: Train Gate Example: Task Scheduling Introduction UPPAAL:

More information

Modeling a MAC Scheduler: Experiences with a DOCSIS Cable

Modeling a MAC Scheduler: Experiences with a DOCSIS Cable Modeling a MAC Scheduler: Experiences with a DOCSIS Cable Network Simulation Model Jim Martin Department of Computer Science Clemson University jim.martin@cs.clemson.edu Phone: 864 656 4529 Fax: 864 656

More information

Formal Verification and Performance Analysis of Embedded Systems

Formal Verification and Performance Analysis of Embedded Systems Formal Verification and Performance Analysis of Embedded Systems Kim G. Larsen CISS, Aalborg U., DK Michael R. Hansen IMM, Technical U. of Denmark, DK DaNES Challenges Application Environment Stepw. Refinem.

More information

CS4514 Real Time Scheduling

CS4514 Real Time Scheduling CS4514 Real Time Scheduling Jose M. Garrido Fall 2015 Department of Computer Science 1 Periodic Tasks Typical real-time application has many tasks that need to be executed periodically Reading sensor data

More information

Resource Reservation & Resource Servers

Resource Reservation & Resource Servers Resource Reservation & Resource Servers Resource Reservation Application Hard real-time, Soft real-time, Others? Platform Hardware Resources: CPU cycles, memory blocks 1 Applications Hard-deadline tasks

More information

CS 856 Latency in Communication Systems

CS 856 Latency in Communication Systems CS 856 Latency in Communication Systems Winter 2010 Latency Challenges CS 856, Winter 2010, Latency Challenges 1 Overview Sources of Latency low-level mechanisms services Application Requirements Latency

More information

Comp 310 Computer Systems and Organization

Comp 310 Computer Systems and Organization Comp 310 Computer Systems and Organization Lecture #9 Process Management (CPU Scheduling) 1 Prof. Joseph Vybihal Announcements Oct 16 Midterm exam (in class) In class review Oct 14 (½ class review) Ass#2

More information

Communication Problems. Flow Control

Communication Problems. Flow Control Communication Problems Flow, loss, congestion, policing Messages get lost due to several factors, including collisions, lack of buffer space, lack of computing power, etc To allow the flow of data at a

More information

Computer Science Window-Constrained Process Scheduling for Linux Systems

Computer Science Window-Constrained Process Scheduling for Linux Systems Window-Constrained Process Scheduling for Linux Systems Richard West Ivan Ganev Karsten Schwan Talk Outline Goals of this research DWCS background DWCS implementation details Design of the experiments

More information

Computer Systems Assignment 4: Scheduling and I/O

Computer Systems Assignment 4: Scheduling and I/O Autumn Term 018 Distributed Computing Computer Systems Assignment : Scheduling and I/O Assigned on: October 19, 018 1 Scheduling The following table describes tasks to be scheduled. The table contains

More information

Quality of Service (QoS)

Quality of Service (QoS) Quality of Service (QoS) The Internet was originally designed for best-effort service without guarantee of predictable performance. Best-effort service is often sufficient for a traffic that is not sensitive

More information

Formal Modeling and Analysis of Stream Processing Systems

Formal Modeling and Analysis of Stream Processing Systems Formal Modeling and Analysis of Stream Processing Systems Linh T.X. Phan March 2009 Computer and Information Science University of Pennsylvania 1 High performance Highly optimized requirements systems

More information

An Integration of Imprecise Computation Model and Real-Time Voltage and Frequency Scaling

An Integration of Imprecise Computation Model and Real-Time Voltage and Frequency Scaling An Integration of Imprecise Computation Model and Real-Time Voltage and Frequency Scaling Keigo Mizotani, Yusuke Hatori, Yusuke Kumura, Masayoshi Takasu, Hiroyuki Chishiro, and Nobuyuki Yamasaki Graduate

More information

Learning Outcomes. Scheduling. Is scheduling important? What is Scheduling? Application Behaviour. Is scheduling important?

Learning Outcomes. Scheduling. Is scheduling important? What is Scheduling? Application Behaviour. Is scheduling important? Learning Outcomes Scheduling Understand the role of the scheduler, and how its behaviour influences the performance of the system. Know the difference between I/O-bound and CPU-bound tasks, and how they

More information

Optimal Algorithm. Replace page that will not be used for longest period of time Used for measuring how well your algorithm performs

Optimal Algorithm. Replace page that will not be used for longest period of time Used for measuring how well your algorithm performs Optimal Algorithm Replace page that will not be used for longest period of time Used for measuring how well your algorithm performs page 1 Least Recently Used (LRU) Algorithm Reference string: 1, 2, 3,

More information

Atmel s s AT94K Series Field Programmable System Level Integrated Circuit (FPSLIC)

Atmel s s AT94K Series Field Programmable System Level Integrated Circuit (FPSLIC) Atmel s s AT94K Series Field Programmable System Level Integrated Circuit (FPSLIC) Embedded Systems Based Built-In Self-Test and Diagnosis of the FPGA Core Slide 1 Embedded Systems Lecture 1/19/08 System-On-Chip

More information

Resource-bound process algebras for Schedulability and Performance Analysis of Real-Time and Embedded Systems

Resource-bound process algebras for Schedulability and Performance Analysis of Real-Time and Embedded Systems Resource-bound process algebras for Schedulability and Performance Analysis of Real-Time and Embedded Systems Insup Lee 1, Oleg Sokolsky 1, Anna Philippou 2 1 RTG (Real-Time Systems Group) Department of

More information

Dos-A Scalable Optical Switch for Datacenters

Dos-A Scalable Optical Switch for Datacenters Dos-A Scalable Optical Switch for Datacenters Speaker: Lin Wang Research Advisor: Biswanath Mukherjee Ye, X. et al., DOS: A scalable optical switch for datacenters, Proceedings of the 6th ACM/IEEE Symposium

More information

Operating Systems and Networks Assignment 9

Operating Systems and Networks Assignment 9 Spring Term 01 Operating Systems and Networks Assignment 9 Assigned on: rd May 01 Due by: 10th May 01 1 General Operating Systems Questions a) What is the purpose of having a kernel? Answer: A kernel is

More information

Design Space Exploration for Memory Subsystems of VLIW Architectures

Design Space Exploration for Memory Subsystems of VLIW Architectures E University of Paderborn Dr.-Ing. Mario Porrmann Design Space Exploration for Memory Subsystems of VLIW Architectures Thorsten Jungeblut 1, Gregor Sievers, Mario Porrmann 1, Ulrich Rückert 2 1 System

More information

High Availability Client Login Profiles

High Availability Client Login Profiles High Availability Login Profiles, page 1 500 (1vCPU 700MHz 2GB) Active/Active Profile, page 3 500 (1vCPU 700MHz 2GB) Active/Standby Profile, page 4 0 (1vCPU 1500MHz 2GB) Active/Active Profile, page 4 0

More information

Page Replacement. 3/9/07 CSE 30341: Operating Systems Principles

Page Replacement. 3/9/07 CSE 30341: Operating Systems Principles Page Replacement page 1 Page Replacement Algorithms Want lowest page-fault rate Evaluate algorithm by running it on a particular string of memory references (reference string) and computing the number

More information

Fundamentals of Queueing Models

Fundamentals of Queueing Models Fundamentals of Queueing Models Michela Meo Maurizio M. Munafò Michela.Meo@polito.it Maurizio.Munafo@polito.it TLC Network Group - Politecnico di Torino 1 Modeling a TLC network Modelization and simulation

More information

The Xilinx XC6200 chip, the software tools and the board development tools

The Xilinx XC6200 chip, the software tools and the board development tools The Xilinx XC6200 chip, the software tools and the board development tools What is an FPGA? Field Programmable Gate Array Fully programmable alternative to a customized chip Used to implement functions

More information

Priced Timed Automata and Timed Games. Kim G. Larsen Aalborg University, DENMARK

Priced Timed Automata and Timed Games. Kim G. Larsen Aalborg University, DENMARK Priced Timed Automata and Timed Games Kim G. Larsen Aalborg University, DENMARK Scheduling Priced Timed Automata and Synthesis Timed Games Kim G. Larsen Aalborg University, DENMARK Overview Timed Automata

More information

OPERATING SYSTEMS CS3502 Spring Processor Scheduling. Chapter 5

OPERATING SYSTEMS CS3502 Spring Processor Scheduling. Chapter 5 OPERATING SYSTEMS CS3502 Spring 2018 Processor Scheduling Chapter 5 Goals of Processor Scheduling Scheduling is the sharing of the CPU among the processes in the ready queue The critical activities are:

More information

Uniprocessor Scheduling. Basic Concepts Scheduling Criteria Scheduling Algorithms. Three level scheduling

Uniprocessor Scheduling. Basic Concepts Scheduling Criteria Scheduling Algorithms. Three level scheduling Uniprocessor Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Three level scheduling 2 1 Types of Scheduling 3 Long- and Medium-Term Schedulers Long-term scheduler Determines which programs

More information

Jim Keller. Digital Equipment Corp. Hudson MA

Jim Keller. Digital Equipment Corp. Hudson MA Jim Keller Digital Equipment Corp. Hudson MA ! Performance - SPECint95 100 50 21264 30 21164 10 1995 1996 1997 1998 1999 2000 2001 CMOS 5 0.5um CMOS 6 0.35um CMOS 7 0.25um "## Continued Performance Leadership

More information

Software-Defined Networking (Continued)

Software-Defined Networking (Continued) Software-Defined Networking (Continued) CS640, 2015-04-23 Announcements Assign #5 released due Thursday, May 7 at 11pm Outline Recap SDN Stack Layer 2 Learning Switch Control Application Design Considerations

More information

Adaptive Voltage Scaling (AVS) Alex Vainberg October 13, 2010

Adaptive Voltage Scaling (AVS) Alex Vainberg   October 13, 2010 Adaptive Voltage Scaling (AVS) Alex Vainberg Email: alex.vainberg@nsc.com October 13, 2010 Agenda AVS Introduction, Technology and Architecture Design Implementation Hardware Performance Monitors Overview

More information

Processes. Overview. Processes. Process Creation. Process Creation fork() Processes. CPU scheduling. Pål Halvorsen 21/9-2005

Processes. Overview. Processes. Process Creation. Process Creation fork() Processes. CPU scheduling. Pål Halvorsen 21/9-2005 INF060: Introduction to Operating Systems and Data Communication Operating Systems: Processes & CPU Pål Halvorsen /9-005 Overview Processes primitives for creation and termination states context switches

More information

Development an update. Aeroflex Gaisler

Development an update. Aeroflex Gaisler European SpaceWire Router Development an update Sandi Habinc Aeroflex Gaisler Demand for SpaceWire Router Both European and international customers have shown interest in SpaceWire router with greater

More information

Data always flows in one direction around ring Like Ethernet, all nodes see all frames, and protocol is necessary to decide when to send

Data always flows in one direction around ring Like Ethernet, all nodes see all frames, and protocol is necessary to decide when to send Token Ring Developed by IBM, adopted by IEEE as 802.5 standard Token rings latter extended to FDDI (Fiber Distributed Data Interface) and 802.17 (Resilient Packet Ring) standards Nodes connected in a ring

More information

Reference Model and Scheduling Policies for Real-Time Systems

Reference Model and Scheduling Policies for Real-Time Systems ESG Seminar p.1/42 Reference Model and Scheduling Policies for Real-Time Systems Mayank Agarwal and Ankit Mathur Dept. of Computer Science and Engineering, Indian Institute of Technology Delhi ESG Seminar

More information

System-on-Chip Architecture for Mobile Applications. Sabyasachi Dey

System-on-Chip Architecture for Mobile Applications. Sabyasachi Dey System-on-Chip Architecture for Mobile Applications Sabyasachi Dey Email: sabyasachi.dey@gmail.com Agenda What is Mobile Application Platform Challenges Key Architecture Focus Areas Conclusion Mobile Revolution

More information

TDDD07 Real-time Systems Lecture 10: Wrapping up & Real-time operating systems

TDDD07 Real-time Systems Lecture 10: Wrapping up & Real-time operating systems TDDD07 Real-time Systems Lecture 10: Wrapping up & Real-time operating systems Simin Nadjm-Tehrani Real-time Systems Laboratory Department of Computer and Information Science Linköping Univerity 28 pages

More information

Aperiodic Task Scheduling

Aperiodic Task Scheduling Aperiodic Task Scheduling Radek Pelánek Preemptive Scheduling: The Problem 1 processor arbitrary arrival times of tasks preemption performance measure: maximum lateness no resources, no precedence constraints

More information

Efficiency and memory footprint of Xilkernel for the Microblaze soft processor

Efficiency and memory footprint of Xilkernel for the Microblaze soft processor Efficiency and memory footprint of Xilkernel for the Microblaze soft processor Dariusz Caban, Institute of Informatics, Gliwice, Poland - June 18, 2014 The use of a real-time multitasking kernel simplifies

More information

Process management. Scheduling

Process management. Scheduling Process management Scheduling Points of scheduler invocation (recap) User Kernel Return from system call Process Schedule Return from interrupt handler Timer interrupts to ensure OS control Return from

More information

Interrupts and Time. Real-Time Systems, Lecture 5. Martina Maggio 28 January Lund University, Department of Automatic Control

Interrupts and Time. Real-Time Systems, Lecture 5. Martina Maggio 28 January Lund University, Department of Automatic Control Interrupts and Time Real-Time Systems, Lecture 5 Martina Maggio 28 January 2016 Lund University, Department of Automatic Control Content [Real-Time Control System: Chapter 5] 1. Interrupts 2. Clock Interrupts

More information

Insights on the performance and configuration of AVB and TSN in automotive applications

Insights on the performance and configuration of AVB and TSN in automotive applications Insights on the performance and configuration of AVB and TSN in automotive applications Nicolas NAVET, University of Luxembourg Josetxo VILLANUEVA, Groupe Renault Jörn MIGGE, RealTime-at-Work (RTaW) Marc

More information

Subject Name: OPERATING SYSTEMS. Subject Code: 10EC65. Prepared By: Kala H S and Remya R. Department: ECE. Date:

Subject Name: OPERATING SYSTEMS. Subject Code: 10EC65. Prepared By: Kala H S and Remya R. Department: ECE. Date: Subject Name: OPERATING SYSTEMS Subject Code: 10EC65 Prepared By: Kala H S and Remya R Department: ECE Date: Unit 7 SCHEDULING TOPICS TO BE COVERED Preliminaries Non-preemptive scheduling policies Preemptive

More information

Case Study. Windows XP. Windows Operating System Internals - by David A. Solomon and Mark E. Russinovich with Andreas Polze

Case Study. Windows XP. Windows Operating System Internals - by David A. Solomon and Mark E. Russinovich with Andreas Polze Case Study Windows XP Windows Operating System Internals - by David A. Solomon and Mark E. Russinovich with Andreas Polze Background Architecture Windows Operating System Internals - by David A. Solomon

More information

OpenSMART: Single-cycle Multi-hop NoC Generator in BSV and Chisel

OpenSMART: Single-cycle Multi-hop NoC Generator in BSV and Chisel OpenSMART: Single-cycle Multi-hop NoC Generator in BSV and Chisel Hyoukjun Kwon and Tushar Krishna Georgia Institute of Technology Synergy Lab (http://synergy.ece.gatech.edu) hyoukjun@gatech.edu April

More information

CS 326: Operating Systems. CPU Scheduling. Lecture 6

CS 326: Operating Systems. CPU Scheduling. Lecture 6 CS 326: Operating Systems CPU Scheduling Lecture 6 Today s Schedule Agenda? Context Switches and Interrupts Basic Scheduling Algorithms Scheduling with I/O Symmetric multiprocessing 2/7/18 CS 326: Operating

More information

INESC TEC. Centre for Telecomunications and Multimedia. 21 March Manuel Ricardo. CTM Coordinator

INESC TEC. Centre for Telecomunications and Multimedia. 21 March Manuel Ricardo. CTM Coordinator 1 INESC TEC Centre for Telecomunications and Multimedia 21 March 2017 Manuel Ricardo CTM Coordinator CTM Scientific Areas Information Processing and Pattern Recognition (IPPR) - computer vision - intelligent

More information

Multimedia-Systems. Operating Systems. Prof. Dr.-Ing. Ralf Steinmetz Prof. Dr. rer. nat. Max Mühlhäuser Prof. Dr.-Ing. Wolfgang Effelsberg

Multimedia-Systems. Operating Systems. Prof. Dr.-Ing. Ralf Steinmetz Prof. Dr. rer. nat. Max Mühlhäuser Prof. Dr.-Ing. Wolfgang Effelsberg Multimedia-Systems Operating Systems Prof. Dr.-Ing. Ralf Steinmetz Prof. Dr. rer. nat. Max Mühlhäuser Prof. Dr.-Ing. Wolfgang Effelsberg WE: University of Mannheim, Dept. of Computer Science Praktische

More information

AVR Microcontrollers Architecture

AVR Microcontrollers Architecture ก ก There are two fundamental architectures to access memory 1. Von Neumann Architecture 2. Harvard Architecture 2 1 Harvard Architecture The term originated from the Harvard Mark 1 relay-based computer,

More information

Views of Memory. Real machines have limited amounts of memory. Programmer doesn t want to be bothered. 640KB? A few GB? (This laptop = 2GB)

Views of Memory. Real machines have limited amounts of memory. Programmer doesn t want to be bothered. 640KB? A few GB? (This laptop = 2GB) CS6290 Memory Views of Memory Real machines have limited amounts of memory 640KB? A few GB? (This laptop = 2GB) Programmer doesn t want to be bothered Do you think, oh, this computer only has 128MB so

More information

TDMH-MAC: Real-time and multi-hop in the same wireless MAC

TDMH-MAC: Real-time and multi-hop in the same wireless MAC TDMH-MAC: Real-time and multi-hop in the same wireless MAC Federico Terraneo, Paolo Polidori, Alberto Leva, William Fornaciari Politecnico di Milano, Italy RTSS 8 Nashville, December 8 Quick context This

More information

Dynamic Voltage and Frequency Scaling Circuits with Two Supply Voltages

Dynamic Voltage and Frequency Scaling Circuits with Two Supply Voltages Dynamic Voltage and Frequency Scaling Circuits with Two Supply Voltages ECE Department, University of California, Davis Wayne H. Cheng and Bevan M. Baas Outline Background and Motivation Implementation

More information

Problem Set 10 Solutions

Problem Set 10 Solutions CSE 260 Digital Computers: Organization and Logical Design Problem Set 10 Solutions Jon Turner thru 6.20 1. The diagram below shows a memory array containing 32 words of 2 bits each. Label each memory

More information

UPPAAL. Verification Engine, Options & Patterns. Alexandre David

UPPAAL. Verification Engine, Options & Patterns. Alexandre David UPPAAL Verification Engine, Options & Patterns Alexandre David 1.2.05 Outline UPPAAL Modelling Language Specification Language UPPAAL Verification Engine Symbolic exploration algorithm Zones & DBMs Verification

More information

II. Principles of Computer Communications Network and Transport Layer

II. Principles of Computer Communications Network and Transport Layer II. Principles of Computer Communications Network and Transport Layer A. Internet Protocol (IP) IPv4 Header An IP datagram consists of a header part and a text part. The header has a 20-byte fixed part

More information

Clock and Fuses. Prof. Prabhat Ranjan Dhirubhai Ambani Institute of Information and Communication Technology, Gandhinagar

Clock and Fuses. Prof. Prabhat Ranjan Dhirubhai Ambani Institute of Information and Communication Technology, Gandhinagar Clock and Fuses Prof. Prabhat Ranjan Dhirubhai Ambani Institute of Information and Communication Technology, Gandhinagar Reference WHY YOU NEED A CLOCK SOURCE - COLIN O FLYNN avrfreaks.net http://en.wikibooks.org/wiki/atmel_avr

More information

Execution architecture concepts

Execution architecture concepts by Gerrit Muller Buskerud University College e-mail: gaudisite@gmail.com www.gaudisite.nl Abstract The execution architecture determines largely the realtime and performance behavior of a system. Hard

More information

Chapter 6: CPU Scheduling. Operating System Concepts 9 th Edition

Chapter 6: CPU Scheduling. Operating System Concepts 9 th Edition Chapter 6: CPU Scheduling Silberschatz, Galvin and Gagne 2013 Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Thread Scheduling Multiple-Processor Scheduling Real-Time

More information

CS244a: An Introduction to Computer Networks

CS244a: An Introduction to Computer Networks Grade: MC: 7: 8: 9: 10: 11: 12: 13: 14: Total: CS244a: An Introduction to Computer Networks Final Exam: Wednesday You are allowed 2 hours to complete this exam. (i) This exam is closed book and closed

More information

Previous Exam Questions System-on-a-Chip (SoC) Design

Previous Exam Questions System-on-a-Chip (SoC) Design This image cannot currently be displayed. EE382V Problem: System Analysis (20 Points) This is a simple single microprocessor core platform with a video coprocessor, which is configured to process 32 bytes

More information

Real-Time Systems Hermann Härtig Real-Time Operating Systems Brief Overview

Real-Time Systems Hermann Härtig Real-Time Operating Systems Brief Overview Real-Time Systems Hermann Härtig Real-Time Operating Systems Brief Overview 02/02/12 Outline Introduction Basic variants of RTOSes Real-Time paradigms Common requirements for all RTOSes High level resources

More information

Event-Driven Scheduling. (closely following Jane Liu s Book)

Event-Driven Scheduling. (closely following Jane Liu s Book) Event-Driven Scheduling (closely following Jane Liu s Book) Real-Time Systems, 2006 Event-Driven Systems, 1 Principles Assign priorities to Jobs At events, jobs are scheduled according to their priorities

More information

measurement goals why traffic measurement of Internet is so hard? measurement needs combined skills diverse traffic massive volume of traffic

measurement goals why traffic measurement of Internet is so hard? measurement needs combined skills diverse traffic massive volume of traffic measurement goals Traffic Measurement and Analysis () SOI ASIA Lecture 22//26 Kenjiro Cho Sony Computer Science Labs, Inc. kjc@csl.sony.co.jp for operations trouble shooting diagnosis and tuning of performance,

More information

A Dynamic NOC Arbitration Technique using Combination of VCT and XY Routing

A Dynamic NOC Arbitration Technique using Combination of VCT and XY Routing 727 A Dynamic NOC Arbitration Technique using Combination of VCT and XY Routing 1 Bharati B. Sayankar, 2 Pankaj Agrawal 1 Electronics Department, Rashtrasant Tukdoji Maharaj Nagpur University, G.H. Raisoni

More information

TOE10G-IP Multisession Demo Instruction Rev Nov-16

TOE10G-IP Multisession Demo Instruction Rev Nov-16 TOE10G-IP Multisession Demo Instruction Rev1.0 18-Nov-16 This document describes the instruction to show 10Gb Ethernet data transfer between FPGA board and PC. PC can run up to eight test applications

More information

Intro to UPPAAL. Gerd Behrmann Kim Larsen. BRICS & Aalborg University. Intro to UPPAAL p.1/23

Intro to UPPAAL. Gerd Behrmann Kim Larsen. BRICS & Aalborg University. Intro to UPPAAL p.1/23 Intro to UPPAAL p.1/23 Intro to UPPAAL Gerd Behrmann Kim Larsen BRICS & Aalborg University Intro to UPPAAL p.2/23 Plan of the Lecture 1. UPPAAL Architecture 2. UPPAAL Features 3. Train Gate Example 4.

More information

Multiprocessor and Real- Time Scheduling. Chapter 10

Multiprocessor and Real- Time Scheduling. Chapter 10 Multiprocessor and Real- Time Scheduling Chapter 10 Classifications of Multiprocessor Loosely coupled multiprocessor each processor has its own memory and I/O channels Functionally specialized processors

More information

SDR Forum Technical Conference 2007

SDR Forum Technical Conference 2007 THE APPLICATION OF A NOVEL ADAPTIVE DYNAMIC VOLTAGE SCALING SCHEME TO SOFTWARE DEFINED RADIO Craig Dolwin (Toshiba Research Europe Ltd, Bristol, UK, craig.dolwin@toshiba-trel.com) ABSTRACT This paper presents

More information

INF1060: Introduction to Operating Systems and Data Communication. Pål Halvorsen. Wednesday, September 29, 2010

INF1060: Introduction to Operating Systems and Data Communication. Pål Halvorsen. Wednesday, September 29, 2010 INF1060: Introduction to Operating Systems and Data Communication Pål Halvorsen Wednesday, September 29, 2010 Overview Processes primitives for creation and termination states context switches processes

More information

UNIT -3 PROCESS AND OPERATING SYSTEMS 2marks 1. Define Process? Process is a computational unit that processes on a CPU under the control of a scheduling kernel of an OS. It has a process structure, called

More information

CHAPTER 11 INTERRUPTS PROGRAMMING

CHAPTER 11 INTERRUPTS PROGRAMMING CHAPTER 11 INTERRUPTS PROGRAMMING Interrupts vs. Polling An interrupt is an external or internal event that interrupts the microcontroller To inform it that a device needs its service A single microcontroller

More information

Implementation Synthesis of Embedded Software under Operating Systems Supporting the Hybrid Scheduling Model

Implementation Synthesis of Embedded Software under Operating Systems Supporting the Hybrid Scheduling Model Implementation Synthesis of Embedded Software under Operating Systems Supporting the Hybrid Scheduling Model Zhigang Gao 1, Zhaohui Wu 1, and Hong Li 1 1 College of Computer Science, Zhejiang University

More information

Large-Scale Network Simulation Scalability and an FPGA-based Network Simulator

Large-Scale Network Simulation Scalability and an FPGA-based Network Simulator Large-Scale Network Simulation Scalability and an FPGA-based Network Simulator Stanley Bak Abstract Network algorithms are deployed on large networks, and proper algorithm evaluation is necessary to avoid

More information

Distributed Systems. coordination Johan Montelius ID2201. Distributed Systems ID2201

Distributed Systems. coordination Johan Montelius ID2201. Distributed Systems ID2201 Distributed Systems ID2201 coordination Johan Montelius 1 Coordination Coordinating several threads in one node is a problem, coordination in a network is of course worse: failure of nodes and networks

More information

Scheduling. Scheduling. Scheduling. Scheduling Criteria. Priorities. Scheduling

Scheduling. Scheduling. Scheduling. Scheduling Criteria. Priorities. Scheduling scheduling: share CPU among processes scheduling should: be fair all processes must be similarly affected no indefinite postponement aging as a possible solution adjust priorities based on waiting time

More information

Embedded Software TI2726 B. 7. Embedded software design. Koen Langendoen. Embedded Software Group

Embedded Software TI2726 B. 7. Embedded software design. Koen Langendoen. Embedded Software Group Embedded Software 7. Embedded software design TI2726 B Koen Langendoen Embedded Software Group Overview Timing services RTOS and ISRs Design of embedded systems General principles Timing Functionality

More information

Assertion Checker Synthesis for FPGA Emulation

Assertion Checker Synthesis for FPGA Emulation Assertion Checker Synthesis for FPGA Emulation Chengjie Zang, Qixin Wei and Shinji Kimura Graduate School of Information, Production and Systems, Waseda University, 2-7 Hibikino, Kitakyushu, 808-0135,

More information

A 167-processor Computational Array for Highly-Efficient DSP and Embedded Application Processing

A 167-processor Computational Array for Highly-Efficient DSP and Embedded Application Processing A 167-processor Computational Array for Highly-Efficient DSP and Embedded Application Processing Dean Truong, Wayne Cheng, Tinoosh Mohsenin, Zhiyi Yu, Toney Jacobson, Gouri Landge, Michael Meeuwsen, Christine

More information

Preview. Process Scheduler. Process Scheduling Algorithms for Batch System. Process Scheduling Algorithms for Interactive System

Preview. Process Scheduler. Process Scheduling Algorithms for Batch System. Process Scheduling Algorithms for Interactive System Preview Process Scheduler Short Term Scheduler Long Term Scheduler Process Scheduling Algorithms for Batch System First Come First Serve Shortest Job First Shortest Remaining Job First Process Scheduling

More information

Microkernel Construction

Microkernel Construction Real-Time Scheduling Preemptive Priority-Based Scheduling User assigns each thread a set of scheduling attributes (time quantum, priority) When the current thread s time quantum is exhausted, the kernel

More information

Combining Optimistic and Pessimistic DVS Scheduling: An Adaptive Scheme and Analysis

Combining Optimistic and Pessimistic DVS Scheduling: An Adaptive Scheme and Analysis Combining Optimistic and Pessimistic DVS Scheduling: An Adaptive Scheme and Analysis Simon Perathoner, Kai Lampka, Nikolay Stoimenov, Lothar Thiele Computer Engineering and Networks Laboratory (TIK) Swiss

More information

Optimization of Phase- Locked Loop Circuits via Geometric Programming

Optimization of Phase- Locked Loop Circuits via Geometric Programming Optimization of Phase- Locked Loop Circuits via Geometric Programming D. Colleran, C. Portmann, A. Hassibi, C. Crusius, S. S. Mohan, S. Boyd, T. H. Lee, and M. Hershenson Outline Motivation Geometric programming

More information

CS370 Operating Systems

CS370 Operating Systems CS370 Operating Systems Colorado State University Yashwant K Malaiya Fall 2017 Lecture 10 Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 Chapter 6: CPU Scheduling Basic Concepts

More information

NuttX Realtime Programming

NuttX Realtime Programming NuttX RTOS NuttX Realtime Programming Gregory Nutt Overview Interrupts Cooperative Scheduling Tasks Work Queues Realtime Schedulers Real Time == == Deterministic Response Latency Stimulus Response Deadline

More information

EE251: Thursday November 30

EE251: Thursday November 30 EE251: Thursday November 30 Course Evaluation Forms-fill out Memory Subsystem continued Timing requirements Adding memory beyond 4 Gbyte Time Allowing: Begin Review for Final Exam Homework due next Tuesday,

More information

QUESTION BANK. EE 6502 / Microprocessor and Microcontroller. Unit I Processor. PART-A (2-Marks)

QUESTION BANK. EE 6502 / Microprocessor and Microcontroller. Unit I Processor. PART-A (2-Marks) QUESTION BANK EE 6502 / Microprocessor and Microcontroller Unit I- 8085 Processor PART-A (2-Marks) YEAR/SEM : III/V 1. What is meant by Level triggered interrupt? Which are the interrupts in 8085 level

More information

Efficient Synthesis of Production Schedules by Optimization of Timed Automata

Efficient Synthesis of Production Schedules by Optimization of Timed Automata Efficient Synthesis of Production Schedules by Optimization of Timed Automata Inga Krause Institute of Automatic Control Engineering Technische Universität München inga.krause@mytum.de Joint Advanced Student

More information

The Active Block I/O Scheduling System (ABISS)

The Active Block I/O Scheduling System (ABISS) The Active Block I/O Scheduling System (ABISS) Benno van den Brink Philips Research, Eindhoven, The Netherlands Werner Almesberger Buenos Aires, Argentina 1 ABISS Extension to Storage subsystem Allow applications

More information

Overview Computer Networking What is QoS? Queuing discipline and scheduling. Traffic Enforcement. Integrated services

Overview Computer Networking What is QoS? Queuing discipline and scheduling. Traffic Enforcement. Integrated services Overview 15-441 15-441 Computer Networking 15-641 Lecture 19 Queue Management and Quality of Service Peter Steenkiste Fall 2016 www.cs.cmu.edu/~prs/15-441-f16 What is QoS? Queuing discipline and scheduling

More information

8. Power Management and Sleep Modes

8. Power Management and Sleep Modes 8. Power Management and Sleep Modes 8.1 Features Power management for adjusting power consumption and functions Five sleep modes Idle Power down Power save Standby Extended standby Power reduction register

More information

CS455/CpE 442 Intro. To Computer Architecure. Review for Term Exam

CS455/CpE 442 Intro. To Computer Architecure. Review for Term Exam CS455/CpE 442 Intro. To Computer Architecure Review for Term Exam The Role of Performance Text 3 rd Edition, Chapter 4 Main focus topics Compare the performance of different architectures or architectural

More information

Embedded Systems Dr. Santanu Chaudhury Department of Electrical Engineering Indian Institution of Technology, IIT Delhi

Embedded Systems Dr. Santanu Chaudhury Department of Electrical Engineering Indian Institution of Technology, IIT Delhi Embedded Systems Dr. Santanu Chaudhury Department of Electrical Engineering Indian Institution of Technology, IIT Delhi Lecture - 20 Fundamentals of Embedded Operating Systems In today s class, we shall

More information

Mobile Routing : Computer Networking. Overview. How to Handle Mobile Nodes? Mobile IP Ad-hoc network routing Assigned reading

Mobile Routing : Computer Networking. Overview. How to Handle Mobile Nodes? Mobile IP Ad-hoc network routing Assigned reading Mobile Routing 15-744: Computer Networking L-10 Ad Hoc Networks Mobile IP Ad-hoc network routing Assigned reading Performance Comparison of Multi-Hop Wireless Ad Hoc Routing Protocols A High Throughput

More information

Editor. Analyser XML. Scheduler. generator. Code Generator Code. Scheduler. Analyser. Simulator. Controller Synthesizer.

Editor. Analyser XML. Scheduler. generator. Code Generator Code. Scheduler. Analyser. Simulator. Controller Synthesizer. TIMES - A Tool for Modelling and Implementation of Embedded Systems Tobias Amnell, Elena Fersman, Leonid Mokrushin, Paul Pettersson, and Wang Yi? Uppsala University, Sweden Abstract. Times is a new modelling,

More information

From Timed Automata to Stochastic Hybrid Games

From Timed Automata to Stochastic Hybrid Games From Timed Automata to Stochastic Hybrid Games Model Checking, Performance Analysis, Optimization, Synthesis, and Machine Learning Kim G. Larsen Aalborg University, DENMARK Topics Timed Automata Decidability

More information

EE4390 Microprocessors

EE4390 Microprocessors EE4390 Microprocessors Lessons 23, 24 - Exceptions - Resets and Interrupts Revised: Aug 1, 2003 1 - Exceptions - Resets and Interrupts Polling vs. Interrupts Exceptions: Resets and Interrupts 68HC12 Exceptions

More information

Spiral 2-8. Cell Layout

Spiral 2-8. Cell Layout 2-8.1 Spiral 2-8 Cell Layout 2-8.2 Learning Outcomes I understand how a digital circuit is composed of layers of materials forming transistors and wires I understand how each layer is expressed as geometric

More information

Ethernet transport protocols for FPGA

Ethernet transport protocols for FPGA Ethernet transport protocols for FPGA Wojciech M. Zabołotny Institute of Electronic Systems, Warsaw University of Technology Previous version available at: https://indico.gsi.de/conferencedisplay.py?confid=3080

More information