1 Formal Synthesis and Control of Soft Embedded Real-Time Systems Pao-Ann Hsiung National Chung Cheng University Dept. of Computer Science and Information.

Slides:



Advertisements
Similar presentations
Techniques to analyze workflows (design-time)
Advertisements

Concurrent Operational Semantics of Safe Time Petri Nets Claude Jard European University of Brittany, ENS Cachan Bretagne, IRISA Campus de Ker-Lann,
1 SE-561 Formal Methods in Software Petri Nets - I.
Knowledge Based Synthesis of Control for Distributed Systems Doron Peled.
An Introduction to Petri Nets
Principles of Engineering System Design Dr T Asokan
Introduction to Petri Nets Hugo Andrés López
Petri Nets Section 2 Roohollah Abdipur.
Based on: Petri Nets and Industrial Applications: A Tutorial
Formal Methods for Real- Time Embedded Software Engineering 正規方法應用於即時嵌入式 軟體工程 熊博安 國立中正大學資訊工程學系 民國九十一年五月二十二日.
Timed Automata.
26 September 2003U. Buy -- SEES 2003 Sidestepping verification complexity with supervisory control Ugo Buy Department of Computer Science Houshang Darabi.
Merged Processes of Petri nets Victor Khomenko Joint work with Alex Kondratyev, Maciej Koutny and Walter Vogler.
IE 469 Manufacturing Systems
Automatic Verification of Component-Based Real-Time CORBA Applications Gabor Madl Sherif Abdelwahed
Synthesis of Embedded Software Using Free-Choice Petri Nets.
Discrete Abstractions of Hybrid Systems Rajeev Alur, Thomas A. Henzinger, Gerardo Lafferriere and George J. Pappas.
VERTAF: An Application Framework for Design and Verification of Embedded Real-Time Software Pao-Ann Hsiung, Shang-Wei Lin, Chih-Hao Tseng, Trong-Yen Lee,
A Schedulability-Preserving Transformation of BDF to Petri Nets Cong Liu EECS 290n Class Project December 10, 2004.
FunState – An Internal Design Representation for Codesign A model that enables representations of different types of system components. Mixture of functional.
EECE Hybrid and Embedded Systems: Computation T. John Koo, Ph.D. Institute for Software Integrated Systems Department of Electrical Engineering and.
1 Quasi-Static Scheduling of Embedded Software Using Free-Choice Petri Nets Marco Sgroi, Alberto Sangiovanni-Vincentelli Luciano Lavagno University of.
Design of Fault Tolerant Data Flow in Ptolemy II Mark McKelvin EE290 N, Fall 2004 Final Project.
Models of Computation for Embedded System Design Alvise Bonivento.
1 Petri Nets Marco Sgroi EE249 - Fall 2001 Most slides borrowed from Luciano Lavagno’s lecture ee249 (1998)
Verifying Distributed Real-time Properties of Embedded Systems via Graph Transformations and Model Checking Gabor Madl
11/19/2007 CIS Dept., UMass Dartmouth 1 DRBD: Dynamic Reliability Block Diagram for System Reliability Modeling Prof. Haiping Xu Concurrent Software Systems.
By Group: Ghassan Abdo Rayyashi Anas to’meh Supervised by Dr. Lo’ai Tawalbeh.
Merged processes – a new condensed representation of Petri net behaviour V.Khomenko 1, A.Kondratyev 2, M.Koutny 1 and W.Vogler 3 1 University of Newcastle.
Petri Nets An Overview IE 680 Presentation April 30, 2007 Renata Kopach- Konrad.
PETRINETS Nipun Devlekar Zauja Lahtau. PETRINETS DEFINITION : DEFINITION :  PETRINET (place/ transition net): a formal, graphical, executable technique.
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
CAD Techniques for IP-Based and System-On-Chip Designs Allen C.-H. Wu Department of Computer Science Tsing Hua University Hsinchu, Taiwan, R.O.C {
1. Introduction 1.1 Background 1.2 Real-time applications 1.3 Misconceptions 1.4 Issues in real-time computing 1.5 Structure of a real-time system.
Benjamin Gamble. What is Time?  Can mean many different things to a computer Dynamic Equation Variable System State 2.
Modeling with ordinary Petri Nets Events: Actions that take place in the system The occurrence of these events is controlled by the state of the system.
Department of Mechanical Engineering The University of Strathclyde, Glasgow Hybrid Systems: Modelling, Analysis and Control Yan Pang Department of Mechanical.
Real-Time Embedded Software Synthesis 即時嵌入式軟體合成 熊博安國立中正大學資訊工程學系民國九十年十一月廿九日.
Time-Memory Scheduling and Code Generation of Real-Time Embedded Software Chuen-Hau Gau and Pao-Ann Hsiung National Chung Cheng University Chiayi, Taiwan,
CY2003 Computer Systems Lecture 7 Petri net. © LJMU, 2004CY2003- Week 72 Overview Petri net –concepts –Petri net representation –Firing a transition –Marks.
Embedding Constraint Satisfaction using Parallel Soft-Core Processors on FPGAs Prasad Subramanian, Brandon Eames, Department of Electrical Engineering,
Stochastic Activity Networks ( SAN ) Sharif University of Technology,Computer Engineer Department, Winter 2013 Verification of Reactive Systems Mohammad.
Dynamic software reconfiguration using control supervisors Ugo Buy 13 June 2005.
C. André, J. Boucaron, A. Coadou, J. DeAntoni,
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Formal Synthesis and Code Generation of Embedded Real-Time Software Pao-Ann Hsiung National Chung Cheng University Chiayi-621, Taiwan, ROC. 9th ACM/IEEE.
Control and Deadlock Recovery of Timed Petri Nets Using Observers Alessandro Giua DIEE – Department of Electrical and Electronic Engineering University.
Automatic Synthesis and Code-Generation of Real- Time Embedded Software 即時嵌入式軟體之自動合成 及程式碼之產生 熊博安 國立中正大學資訊工程學系 民國九十一年四月二十六日.
Hardware Design and The Petri Net Abhijit K. Deb SAM, LECS, IMIT, KTH Kista, Stockholm.
Petri Nets Lecturer: Roohollah Abdipour. Agenda Introduction Petri Net Modelling with Petri Net Analysis of Petri net 2.
Modeling Mobile-Agent-based Collaborative Processing in Sensor Networks Using Generalized Stochastic Petri Nets Hongtao Du, Hairong Qi, Gregory Peterson.
1 VERTAF: An Object-Oriented Application Framework for Embedded Real-Time Systems Pao-Ann Hsiung*, Trong-Yen Lee, Win-Bin See, Jih-Ming Fu, and Sao-Jie.
Computing For Embedded System IEEE Instrumentation and Measurement Technology Conference Budapest, Hungary, May 21-23, Author : Edward A. Lee UC.
1 Copyright  2001 Pao-Ann Hsiung SW HW Module Outline l Introduction l Unified HW/SW Representations l HW/SW Partitioning Techniques l Integrated HW/SW.
CSCI1600: Embedded and Real Time Software Lecture 11: Modeling IV: Concurrency Steven Reiss, Fall 2015.
School of Computer Science & Software Engineering
Abstract Priority-based FRP (P-FRP) is a functional programming formalism for reactive systems that guarantees real-time response. Preempted tasks in P-FRP.
Controller Synthesis For Timed Automata Authors : Eugene Asarin, Oded Maler, Amir Pnueli and Joseph Sifakis Yean-Ru Chen Embedded System Laboratory of.
Requirements Techniques, cont.
Advantages of FSM Their simplicity make it easy for inexperienced developers to implement with little to no extra knowledge (low entry level)
Dr. Eng Amr T. Abdel-Hamid
Clockless Computing COMP
Stochastic Activity Networks
CAP 4800/CAP 5805: Computer Simulation Concepts
CAP 4800/CAP 5805: Computer Simulation Concepts
بسمه‌تعالي فصل چهاردهم شبکه‌هاي پتري.
CSCI1600: Embedded and Real Time Software
Introduction to Petri Nets (PNs)
CAP 4800/CAP 5805: Computer Simulation Concepts
Thank you!!! Thanks to ACM Taipei Chapter Thanks to IICM
Presentation transcript:

1 Formal Synthesis and Control of Soft Embedded Real-Time Systems Pao-Ann Hsiung National Chung Cheng University Dept. of Computer Science and Information Engineering Chiayi – 621, Taiwan, R.O.C. 21st IFIP International Conference on Formal Techniques for Networked and Distributed Systems (FORTE ’ 01), August 28 – 31, 2001.

2 Outline Introduction Previous Work Formal Synthesis and Control Application Example Conclusion

3 Introduction (1) Soft Embedded Real-Time Systems (SERTS) May Miss a Few Deadlines Flexible Deadline Intervals Small Memory Footprint High Reliability and Stability

4 Introduction (2) SERTS Design Issues: Bounded Memory Execution Soft Real-Time Constraints Proposed Solutions: Quasi-Static Data Scheduling (QSDS) Firing-Interval Bound Synthesis (FIBS)

5 Previous Work (1) Formal Software Synthesis Safe Petri-Nets (PN)  QSS [Lin: DATE ’ 98, DAC ’ 98] Free-Choice PN  Net Decomposition + QSS [Sgroi: DAC ’ 99] Codesign FSM  POLIS [Balarin: ICCD ’ 99] Timed Free-Choice PN  QSS + RTS [Hsiung: CODES ’ 01]

6 Previous Work (2) Formal Software Verification Linear Hybrid Automata  Coverification [Hsiung: CODES ’ 99, IEE ’ 00] Timed Automata  Schedule-Verify-Map [Hsiung: COMPSAC ’ 00, JSA ’ 00] Formal OO Model  Model Checking [Hsiung: RTAS ’ 01, APSEC ’ 01]

7 Previous Work (3) Formal Controller Synthesis Discrete Event Model [Ramadge, Wonham: SIAM-JCO ’ 87, IEEE-Proc ’ 89] Dense-Timed Model [Asarin: Hybrid ’ 95, Maler: STACS ’ 95, Wong-Toi: CDC ’ 97] Multimedia Scheduler [Altisen: RTSS ’ 99]

8 Formal Synthesis & Control (1) System Model: Time Free-Choice Petri Net (TFCPN) A TFCPN is a 5-tuple (P,T,F,M 0,  ) such that: P is a set of places, T is a set of transitions, P  T  , P  T = , F : (P  T )  (T  P )  N, a set of weighted arcs such that every arc from a place is either a unique outgoing arc or a unique incoming arc to a transition (FREE-CHOICE), M 0 :P  N, the initial marking,  (t ) = ( ,  ), t  T,  : EFT,  : LFT.

9 Formal Synthesis & Control (2) Not A TFCPN A TFCPN

10 Formal Synthesis & Control (3) Soft Real-Time Behavior Model Timed Reachability Specification (TRS) A TRS for a TFCPN A = (P,T,F,M 0,  ):  ::=  ~c p |   ~c p |  1   2 ~  { , , , ,  }, p  N |P |,  1,  2 : TRS formulae Reachability Properties: safeness, deadlines, boundedness, deadlock, starvation

11 Formal Synthesis & Control (4) Target Problem Soft Embedded Real-Time System Synthesis Given a system modeled by a set of TFCPN S = {A i | i = 1,2, …,n} and a TRS , S is to be synthesized by scheduling and by modifying firing interval bounds such that S is made to satisfy .

12 Formal Synthesis & Control (5) SERTS_Synthesize(S, ,  ) { // Quasi-Static Data Scheduling (QSDS) for each A i in S { B i = CF_Generate(A i ); // B i : set of CF components for each CF component A ij in B i { QSS ij = Quasi_Static_Schedule(A ij,  ); if QSS ij = NULL { return QSS_Error;} else QSS i = QSS i  {QSS ij }; } } // Firing Interval Bound Synthesis (FIBS) if Controller_Synthesize(S, QSS 1, …, QSS n,  ) = NULL return FIBS_Error; else return Synthesized; }

13 Formal Synthesis & Control (6) TFCPN net decomposition Conflict-Free Components Finite Complete Cycle Deadlock-Free Quasi-Static Data Scheduled CF-Components Quasi-Static Data Scheduling (QSDS) check memory reqt. Valid Schedule

14 Formal Synthesis & Control (7) Firing Interval Bound Synthesis 2 issues in SERTS Control: Synchronization Wait: (after task completion) Real-Time Specification: (before deadlines) Solutions: Postpone Release Time:    +  w,  w > 0 Advance Finish Time:      n,  n >0

15 Formal Synthesis & Control (8) Controller_Synthesize(S, QSS 1, …, QSS n,  ) { for i = 1, …, n { for each schedule v ij  QSS i { for each t k in v ij, t k  in_trans(p), token  (p)>0, p  P i {  = (  i=0,…,k  i,  i=0,…,k  i ); //  t 0,t 1,…,t k  : prefix of v ij New_IBS i = IBS_Synthesize(v ij, t k, ,  i ); if M i =  ~c and New_IBS i > Min_IBS i {Min_IBS i = New_IBS i ;} if M i =   ~c Old_IBS i = Old_IBS i  New_IBS i ; } } if M i =  ~c and Min_IBS i  NULL IBS_assign(Min_IBS i ); else if M i =   ~c and Old_IBS i  NULL IBS_assign(Old_IBS i ); else return NULL; } return  ; }

16 Formal Synthesis & Control (9) Controller Synthesis Synthesizes transition firing interval bounds (FIB) such that S satisfies . Outputs minimally restricted FIB, which gives maximal sub-behavior of S satisfying .

17 Application Example (1) S = (F 1, F 2 )  :   7    30  

18 Application Example (2) Conflict-Free Components of F 1

19 Application Example (3) Quasi-Static Data Scheduling for F 1 v 11 = (t 11 t 12 t 11 t 12 t 14 ), 11   (v 11 )  22 v 12 = (t 11 t 13 t 15 t 15 ), 13   (v 12 )  26 Valid schedules for F 1  1 = {(t 11 t 12 t 11 t 12 t 14 ), (t 11 t 13 t 15 t 15 )}  2 = {(t 11 t 13 t 15 t 15 ), (t 11 t 12 (t 11 t 13 t 15 t 15 ) k t 11 t 12 t 14 ), k  N}

20 Application Example (4) Conflict-Free Components of F 2

21 Application Example (5) Quasi-Static Data Scheduling for F 2 v 21 = (t 21 t 22 (t 24 ) 2 (t 26 ) 4 t 28 t 29 t 26 ), 31   (v 21 )  68 v 22 = (t 21 t 23 t 25 (t 27 ) 2 t 28 t 29 t 26 ), 15   (v 22 )  36 Valid schedule for F 2  3 = {v 21, v 22 }

22 Application Example (6) Controller Synthesis Firing Interval Bound Synthesis for F 1 To satisfy   7, need only consider prefix of schedule v 12 = in  1 (result of prefix: 2 tokens in p 3 ):   (t 11 ) +  (t 13 )    (t 11 ) +  (t 13 )  8 Temporal Constraint (  7)  modify  (t 13 ) into (3, 4) from the original (3, 5)

23 Application Example (7) Firing Interval Bound Synthesis for F 2 To satisfy   30  , need consider both schedules v 21 and v 22 in  3 (result of prefix: 1 token in p 7 ). Prefix of v 21 : 25   (t 21 t 22 (t 24 ) 2 (t 26 ) 4 t 28 )  56 Temporal Constraint (  30)  modify  (t 28 ) into (5, 5) from the original (0, 5) Prefix of v 22 : 11   (t 21 t 23 t 25 (t 27 ) 2 t 28 )  28 Satisfaction of constraint (  30) not possible.

24 Conclusion Formal automatic synthesis method for memory and soft real-time constraints Memory: Timed quasi-static data scheduling Soft Real-Time Constraints: Firing- interval bound synthesis Future Work: Generalize TFCPN model