Compositional Verification of Timed Systems. A Concept. Bengt Jonsson Leonid Mokrushin Xiaochun Shi Wang Yi Uppsala University Sweden Distributed Embedded.

Slides:



Advertisements
Similar presentations
Use trace algebra to formalize the YAPI model EE290N Spring2002 Alessandro Pinto Mentors: Roberto Passerone Jerry Burch.
Advertisements

ECE 720T5 Fall 2011 Cyber-Physical Systems Rodolfo Pellizzoni.
CPE555A: Real-Time Embedded Systems
1 Swiss Federal Institute of Technology Computer Engineering and Networks Laboratory Embedded Systems Exercise 2: Scheduling Real-Time Aperiodic Tasks.
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 19 Scheduling IV.
Automatic Verification of Component-Based Real-Time CORBA Applications Gabor Madl Sherif Abdelwahed
Planning under Uncertainty
Lab Meeting Performance Analysis of Distributed Embedded Systems Lothar Thiele and Ernesto Wandeler Presented by Alex Cameron 17 th August, 2012.
1 Swiss Federal Institute of Technology Computer Engineering and Networks Laboratory Performance Analysis of Embedded Systems Lothar Thiele ETH Zurich.
Compositional Analysis of Timed Systems by Abstraction Leonid Mokrushin TAPVES
Simulation Where real stuff starts. ToC 1.What, transience, stationarity 2.How, discrete event, recurrence 3.Accuracy of output 4.Monte Carlo 5.Random.
Nick McKeown CS244 Lecture 6 Packet Switches. What you said The very premise of the paper was a bit of an eye- opener for me, for previously I had never.
Scheduling for Embedded Real-Time Systems Amit Mahajan and Haibo.
Institut für Datentechnik und Kommunikationetze Analysis of Shared Coprocessor Accesses in MPSoCs Overview Bologna, Simon Schliecker Matthias.
February 12, 2009 Center for Hybrid and Embedded Software Systems Encapsulated Model Transformation Rule A transformation.
Design of Fault Tolerant Data Flow in Ptolemy II Mark McKelvin EE290 N, Fall 2004 Final Project.
1 of 12 May 3, 2000 Performance Estimation for Embedded Systems with Data and Control Dependencies Paul Pop, Petru Eles, Zebo Peng Department of Computer.
A Denotational Semantics For Dataflow with Firing Edward A. Lee Jike Chong Wei Zheng Paper Discussion for.
What we will cover…  CPU Scheduling  Basic Concepts  Scheduling Criteria  Scheduling Algorithms  Evaluations 1-1 Lecture 4.
February 12, 2009 Center for Hybrid and Embedded Software Systems Model Transformation Using ERG Controller Thomas H. Feng.
Embedded Systems Exercise 3: Scheduling Real-Time Periodic and Mixed Task Sets 18. May 2005 Alexander Maxiaguine.
Verifying Distributed Real-time Properties of Embedded Systems via Graph Transformations and Model Checking Gabor Madl
1 of 16 June 21, 2000 Schedulability Analysis for Systems with Data and Control Dependencies Paul Pop, Petru Eles, Zebo Peng Department of Computer and.
Misconceptions About Real-time Computing : A Serious Problem for Next-generation Systems J. A. Stankovic, Misconceptions about Real-Time Computing: A Serious.
A RRIVAL C URVES FOR R EAL -T IME C ALCULUS : THE C AUSALITY P ROBLEM AND ITS S OLUTIONS - Matthieu Moy and Karine Altisen Vasvi Kakkad School of Information.
Swiss Federal Institute of Technology Computer Engineering and Networks Laboratory Influence of different system abstractions on the performance analysis.
Cmpt-225 Simulation. Application: Simulation Simulation  A technique for modeling the behavior of both natural and human-made systems  Goal Generate.
1 Real-Time Queueing Network Theory Presented by Akramul Azim Department of Electrical and Computer Engineering University of Waterloo, Canada John P.
Analysis of Simulation Results Andy Wang CIS Computer Systems Performance Analysis.
02/06/05 “Investigating a Finite–State Machine Notation for Discrete–Event Systems” Nikolay Stoimenov.
- 1 - EE898-HW/SW co-design Hardware/Software Codesign “Finding right combination of HW/SW resulting in the most efficient product meeting the specification”
Real Time Process Control (Introduction)
1 Performance Evaluation of Computer Networks: Part II Objectives r Simulation Modeling r Classification of Simulation Modeling r Discrete-Event Simulation.
Chapter 6 Scheduling. Basic concepts Goal is maximum utilization –what does this mean? –cpu pegged at 100% ?? Most programs are I/O bound Thus some other.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms.
Conformance Test Experiments for Distributed Real-Time Systems Rachel Cardell-Oliver Complex Systems Group Department of Computer Science & Software Engineering.
Interconnect simulation. Different levels for Evaluating an architecture Numerical models – Mathematic formulations to obtain performance characteristics.
1 11/29/2015 Chapter 6: CPU Scheduling l Basic Concepts l Scheduling Criteria l Scheduling Algorithms l Multiple-Processor Scheduling l Real-Time Scheduling.
Parallel and Distributed Simulation Time Parallel Simulation.
6.1 CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation.
Actor Oriented Programming with CAL -designing embedded system components Johan Eker Department of Automatic Control, Lund University Chris Chang, Jörn.
Abstract Priority-based FRP (P-FRP) is a functional programming formalism for reactive systems that guarantees real-time response. Preempted tasks in P-FRP.
Onlinedeeneislam.blogspot.com1 Design and Analysis of Algorithms Slide # 1 Download From
High Performance Embedded Computing © 2007 Elsevier Lecture 4: Models of Computation Embedded Computing Systems Mikko Lipasti, adapted from M. Schulte.
T imed Languages for Embedded Software Ethan Jackson Advisor: Dr. Janos Szitpanovits Institute for Software Integrated Systems Vanderbilt University.
Simulation. Types of simulation Discrete-event simulation – Used for modeling of a system as it evolves over time by a representation in which the state.
CPU Scheduling G.Anuradha Reference : Galvin. CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time.
Continuous Monitoring of Distributed Data Streams over a Time-based Sliding Window MADALGO – Center for Massive Data Algorithmics, a Center of the Danish.
scheduling for local-area networks”
CPU Scheduling CSSE 332 Operating Systems
CPE555A: Real-Time Embedded Systems
Chapter 5a: CPU Scheduling
Chapter 6: CPU Scheduling
CPU Scheduling G.Anuradha
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
CSCI1600: Embedded and Real Time Software
3: CPU Scheduling Basic Concepts Scheduling Criteria
Intro to Deterministic Analysis
Chapter5: CPU Scheduling
Chapter 6: CPU Scheduling
CPU SCHEDULING.
Process Scheduling B.Ramamurthy 2/23/2019.
Real-Time Calculus (RTC) Reading Group I
Chapter 6: CPU Scheduling
CSE 550 Computer Network Design
Module 5: CPU Scheduling
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Leonie Ahrendts, Sophie Quinton, Thomas Boroske, Rolf Ernst
Presentation transcript:

Compositional Verification of Timed Systems. A Concept. Bengt Jonsson Leonid Mokrushin Xiaochun Shi Wang Yi Uppsala University Sweden Distributed Embedded Systems Workshop , Lorentz Center

Informationsteknologi Institutionen för informationsteknologi | The Problem: Robot Controller ABCD CommandsHigh-level instructions Precise moves Requests Welding program 2.5·10 6 LoC

Informationsteknologi Institutionen för informationsteknologi | Properties of Interest Buffer Overflow/Underflow  component D never stops when welding Sufficient Buffer Sizes Schedulability  components execute tasks on a single CPU Task Response Times (and its reserve) ABCD CommandsHigh-level instructions Precise moves Requests

Informationsteknologi Institutionen för informationsteknologi | Verification Using TA Models System abstraction  TA model Tasks, Scheduler  TA model Properties  TCTL formulae U PPAAL /T IMES : trying to search for bugs in ”all the combinations of local states”: S 1 || S 2 ||... || S m || q 1 || q 2 ||... || q n Very difficult, often impossible

Informationsteknologi Institutionen för informationsteknologi | Stream Transformers System/Component = Stream Transformer Kahn Process Networks [Kahn74] One-way Infinite FIFO Queues Deterministic Model  Queue data is independent of the process firing order A2 A3 A1 Q1 Q eee..e.ee....aa..a...a...bb..b...cc..ccc...dd..d..dd

Informationsteknologi Institutionen för informationsteknologi | Abstract Stream Transformers Network Calculus  Arrival Curves [Recent work, 90s-2005] A2 A3 A1 Q1 Q2 Set of streams

Informationsteknologi Institutionen för informationsteknologi | Abstract Stream t window sizeslide Slide a timed window of a fixed size Count max/min number of events in the window Choose another window etc. t window size events [0,4] [1,5][1,5]

Informationsteknologi Institutionen för informationsteknologi | Arrival Curve # of events window size C L(C)=Set of streams (set of event streams satisfying all bounds for all window sizes) lower bound upper bound

Informationsteknologi Institutionen för informationsteknologi | Modular Analysis (no feedback) A1 System/Component = Arrival Curve Transformer A2A2 Assumption On The Environment The “Maximal Component Capability” Q1 This can be done modularly if there is no feedback We may need a buffer to connect them Comparing the curves we will answer:  if A1 and A2 can “work together”? (all the events generated by A1 will be received and processed by A2)  what is the sufficient size of the buffer?  what is the output curve of A2?

Informationsteknologi Institutionen för informationsteknologi | Transforming Curves Using TA TA Model of a System Component Event Generator Event Observer L(EG) = L(AC) Arrival Curve Departure Curve Verification(s) in UPPAAL inputoutput F

Informationsteknologi Institutionen för informationsteknologi | What About Feedback? We may first assume some input curves e.g. the “worst case” or the “maximum capability” Compute the output curves by approximations Iterate… ABCD

Informationsteknologi Institutionen för informationsteknologi | Resources & Scheduling FPS, priority order: Priority(A)<Priority(B)<Priority(C)<Priority(D) Service Curves  Same as arrival curves but express available resource within windows Service Curve Generators/Observers ABCD 100% <100%

Informationsteknologi Institutionen för informationsteknologi | Putting It All Together Given input data and resource curves 1. Propagate resource to the left Assuming “worst case” for data 2. Propagate “real” data to the right Using pre-computed resources 3. Using new data refine step Using new resource refine step Iterate until it stabilizes (e.g. output/resource) ABCD 100% Input RESOURCE DATA

Informationsteknologi Institutionen för informationsteknologi | Cons & Pros One component at a time (no big product, GALP) Composability analysis (buffers) Possibility to parallelize verification Heterogeneous systems (a potential to combine different formalisms) Preemptive FPS Feedback Bound on max window size EDF Shared resources Precedence constraints