Chess Review November 18, 2004 Berkeley, CA Semantics of Hybrid Systems Roberto Passerone Cadence Berkeley Laboratories with contributions from E. Lee,

Slides:



Advertisements
Similar presentations
The need for AMS assertions Verify the analog/digital interfaces at block and SoC levels –Check properties involving voltages and currents –Check complex.
Advertisements

Use trace algebra to formalize the YAPI model EE290N Spring2002 Alessandro Pinto Mentors: Roberto Passerone Jerry Burch.
Model Checker In-The-Loop Flavio Lerda, Edmund M. Clarke Computer Science Department Jim Kapinski, Bruce H. Krogh Electrical & Computer Engineering MURI.
Verification of Hybrid Systems An Assessment of Current Techniques Holly Bowen.
Semantic Translation of Simulink/Stateflow Models to Hybrid Automata using Graph Transformations A. Agarwal, Gy. Simon, G. Karsai ISIS, Vanderbilt University.
Background information Formal verification methods based on theorem proving techniques and model­checking –to prove the absence of errors (in the formal.
The Operational Semantics of Hybrid Systems Edward A. Lee Professor, Chair of EE, and Associate Chair of EECS, UC Berkeley With contributions from: Adam.
Formal Methods of Systems Specification Logical Specification of Hard- and Software Prof. Dr. Holger Schlingloff Institut für Informatik der.
Overview This project applies the tagged-signal model to explain the semantics of piecewise continuous signals. Then it illustrates an operational way.
DATAFLOW PROCESS NETWORKS Edward A. Lee Thomas M. Parks.
Chess Review November 21, 2005 Berkeley, CA Edited and presented by Interchange Format for Hybrid Systems Alessandro Pinto UC Berkeley.
PTIDES: Programming Temporally Integrated Distributed Embedded Systems Yang Zhao, EECS, UC Berkeley Edward A. Lee, EECS, UC Berkeley Jie Liu, Microsoft.
7th Biennial Ptolemy Miniconference Berkeley, CA February 13, 2007 Causality Interfaces for Actor Networks Ye Zhou and Edward A. Lee University of California,
Integrated Design and Analysis Tools for Software-Based Control Systems Shankar Sastry (PI) Tom Henzinger Edward Lee University of California, Berkeley.
Type System, March 12, Data Types and Behavioral Types Yuhong Xiong Edward A. Lee Department of Electrical Engineering and Computer Sciences University.
7th Biennial Ptolemy Miniconference Berkeley, CA February 13, 2007 Leveraging Synchronous Language Principles for Hybrid System Models Haiyang Zheng and.
Behavioral Types as Interface Definitions for Concurrent Components Center for Hybrid and Embedded Software Systems Edward A. Lee Professor UC Berkeley.
A denotational framework for comparing models of computation Daniele Gasperini.
Using Interfaces to Analyze Compositionality Haiyang Zheng and Rachel Zhou EE290N Class Project Presentation Dec. 10, 2004.
Chess Review October 4, 2006 Alexandria, VA Edited and presented by Advanced Tool Architectures Edward A. Lee UC Berkeley.
Chess Review November 21, 2005 Berkeley, CA Edited and presented by Advanced Tool Architectures Edward A. Lee UC Berkeley.
6th Biennial Ptolemy Miniconference Berkeley, CA May 12, 2005 Operational Semantics of Hybrid Systems Haiyang Zheng and Edward A. Lee With contributions.
FunState – An Internal Design Representation for Codesign A model that enables representations of different types of system components. Mixture of functional.
Chess Review May 11, 2005 Berkeley, CA Operational Semantics of Hybrid Systems Haiyang Zheng and Edward A. Lee With contributions from the Ptolemy group.
Hybrid System Modeling: Operational Semantics Issues Edward A. Lee Professor UC Berkeley Center for Hybrid and embedded software systems OMG Technical.
An Extensible Type System for Component-Based Design
Mixing Models of Computation Jie Liu Palo Alto Research Center (PARC) 3333 Coyote Hill Rd., Palo Alto, CA joint work with Prof. Edward.
Models of Computation for Embedded System Design Alvise Bonivento.
Chess Review November 21, 2005 Berkeley, CA Edited and presented by Causality Interfaces and Compositional Causality Analysis Rachel Zhou UC Berkeley.
A Denotational Semantics For Dataflow with Firing Edward A. Lee Jike Chong Wei Zheng Paper Discussion for.
Software Engineering CSE470: Requirements Analysis 1 Requirements Analysis Defining the WHAT.
NSF Foundations of Hybrid and Embedded Software Systems UC Berkeley: Chess Vanderbilt University: ISIS University of Memphis: MSI A New System Science.
SEC PI Meeting Annapolis, May 8-9, 2001 Component-Based Design of Embedded Control Systems Edward A. Lee & Jie Liu UC Berkeley with thanks to the entire.
1 Ivan Lanese Computer Science Department University of Bologna Italy Concurrent and located synchronizations in π-calculus.
Department of Electrical Engineering and Computer Sciences University of California at Berkeley System-Level Types for Component-Based Design Edward A.
Department of Electrical Engineering and Computer Sciences University of California at Berkeley Concurrent Component Patterns, Models of Computation, and.
MoBIES Working group meeting, September 2001, Dearborn Ptolemy II The automotive challenge problems version 4.1 Johan Eker Edward Lee with thanks.
Designing Predictable and Robust Systems Tom Henzinger UC Berkeley and EPFL.
November 18, 2004 Embedded System Design Flow Arkadeb Ghosal Alessandro Pinto Daniele Gasperini Alberto Sangiovanni-Vincentelli
Tool Integration of Ptolemy II EE290N Class Project Haiyang Zheng May
MOBIES Project Progress Report Engine Throttle Controller Design Using Multiple Models of Computation Edward Lee Haiyang Zheng with thanks to Ptolemy Group.
System-Level Types for Component-Based Design Paper by: Edward A. Lee and Yuhong Xiong Presentation by: Dan Patterson.
NSF Foundations of Hybrid and Embedded Software Systems UC Berkeley: Chess Vanderbilt University: ISIS University of Memphis: MSI Program Review May 10,
November 18, 2004 Conservative Approximations for Heterogeneous Design Roberto Passerone Alessandro Pinto Jerry R. Burch Alberto Sangiovanni Vincentelli.
Code Generation from CHARON Rajeev Alur, Yerang Hur, Franjo Ivancic, Jesung Kim, Insup Lee, and Oleg Sokolsky University of Pennsylvania.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
ECE 720T5 Winter 2014 Cyber-Physical Systems Rodolfo Pellizzoni.
Speaking Bluntly about SharpHDL: Some Old Stuff and Some Other Proposed Future Extensions Gordon J. Pace & Christine Vella Synchron’05 Malta, November.
Assessing the Suitability of UML for Modeling Software Architectures Nenad Medvidovic Computer Science Department University of Southern California Los.
Benjamin Gamble. What is Time?  Can mean many different things to a computer Dynamic Equation Variable System State 2.
Transformation of Timed Automata into Mixed Integer Linear Programs Sebastian Panek.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Approaching a Problem Where do we start? How do we proceed?
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Mahapatra-A&M-Fall'001 Co-design Finite State Machines Many slides of this lecture are borrowed from Margarida Jacome.
Dynamic software reconfiguration using control supervisors Ugo Buy 13 June 2005.
Fall 2004EE 3563 Digital Systems Design EE 3563 VHSIC Hardware Description Language  Required Reading: –These Slides –VHDL Tutorial  Very High Speed.
Design Languages in 2010 Chess: Center for Hybrid and Embedded Software Systems Edward A. Lee Professor UC Berkeley Panel Position Statement Forum on Design.
Electrical and Computer Engineering University of Cyprus LAB 1: VHDL.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Royal Institute of Technology System Specification Fundamentals Axel Jantsch, Royal Institute of Technology Stockholm, Sweden.
What’s Ahead for Embedded Software? (Wed) Gilsoo Kim
Formal Verification. Background Information Formal verification methods based on theorem proving techniques and model­checking –To prove the absence of.
Formal Methods in Software Engineering1 Today’s Agenda  Mailing list  Syllabus  Introduction.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Agenda  Quick Review  Finish Introduction  Java Threads.
Dillon: CSE470: ANALYSIS1 Requirements l Specify functionality »model objects and resources »model behavior l Specify data interfaces »type, quantity,
Logical architecture refinement
ECE-C662 Introduction to Behavioral Synthesis Knapp Text Ch
Algebraic Trace Theory
Presentation transcript:

Chess Review November 18, 2004 Berkeley, CA Semantics of Hybrid Systems Roberto Passerone Cadence Berkeley Laboratories with contributions from E. Lee, A. Pinto, A. Sangiovanni-Vincentelli, H. Zheng

Chess Review, November 18, Columbus: A Comparative Study Considered several existing models and tools –Charon, Checkmate, Hysdel, HSIF, HyVisual, Masaccio, Metropolis, Modelica, Scicos, Shift, Simulink Systematically compared the models for –Expressiveness –Concurrency model –Discrete/Continuous Communication –Hierarchy and Object Oriented design –Algebraic loops Compared models by running simple, but representative, examples –Zeno behavior –Level crossing detection

Chess Review, November 18, Summary LanguageNatureMain FeatuesFeaturing Also CHARONModelling LanguageFormal semantic for hierarchy, concurrency, refinementSimulator, Type Checker, Java interface CHECKMATEVerification ToolboxFormal semantic for simulation, exploration, verificationBased on MATLAB/SIMULINK/STATEFLOW HSIFInterchange FormatModelling of networks of hybrid automataSimulation through HyVisual HYVISUALVisual ModellerHierarchy support, block diagram editor and simulatorPtolemy-II BASED MASACCIOFormal ModelSupport for concurrent sequential and timed compositionalityEnables assume/guarantee reasoning METROPOLISDesign EnvironmentHeterogeneity, formal refinement, mappingVerification, Simulation MODELICAModelling LanguageObject Oriented, non-causal modellingCommercial and open simulator available SCICOSHybrid System ToolboxModelling and simulation of hybrid systemsC code generation, interface to Syndex SHIFTProgramming LanguageModelling of dynamic networks of hybrid componentsC code generation SIMULINKInteractive ToolSimulator, hierarchy, model discretizerMATLAB-based, library of predefined blocks.

Chess Review, November 18, LanguageContinuous/Discrete SignalsDerivativeAutomataState/Dynamics mapping CHECKMATE Separation between FSM and dynamical system. Communication through event generator. YESSTATEFLOW model Discrete output form FSM to dynamical system. HYVISUAL Signal attribute. Automatic detection of type or enforced by user. IntegrationGraphical Editor State refinement into continuous time models MODELICADefined by a language modifierYESDescribed by algorithm sections. Different equation sets depending on events. SCICOSDefined by port attributeIntegration Implemented by interconnection of conditional blocks. Implemented by connection of events selectors. HYSDELReal and Boolean signals Discrete difference Implemented by logic functions Discrete output form FSM to dynamical system. Summary

Chess Review, November 18, LanguageHierarchyObject OrientedNon-Causal Modelling CHECKMATE NNN HYVISUAL YYN MODELICA YYY SCICOS YNN HYSDEL NNN Summary

Chess Review, November 18, LanguageDiscrete/Continuous CommunicationAlgebraic LoopsDirac Pulses CHECKMATE Event Generator and First Order HoldNN HYVISUAL ToContinuous and ToDiscrete actorsYN MODELICA Indirect through when statementsYY SCICOS Interaction between discrete state and continuous state NN HYSDEL Event Generator and First Order Hold. There are no continuous signals NN Summary

Chess Review, November 18, Conclusions Comparative study shows a fragmented landscape –Underlying models mostly incompatible –Key issues approached differently Consolidated view needed to advance the research and rate of adoption –Evidence from industry using ad-hoc translators –Difficult for engineers and practitioners to choose the right model Our activities are complementary ways of providing a consolidated view

Chess Review, November 18, Overview Solid and clean semantics for hybrid systems Interchange Format for hybrid systems Approximations for incompatible models

Chess Review, November 18, Operational Semantics for Hybrid Systems A solid and complete executable semantics for simulation –Robust and with no ambiguities –Designed to cover embedded software issues Focuses on deterministic behavior –It is incorrect to choose one trajectory –Creating deterministic models must be easy –Non-deterministic models must be explored either exhaustively or using Monte Carlo methods Avoids continuous time models to represent discrete behaviors –Inaccurate for software –Truly heterogeneous models are more faithful abstractions

Chess Review, November 18, HyVisual: Hybrid Systems as Networks of Automata

Chess Review, November 18, Some Semantics Questions Expressiveness of model –non-deterministic, guard expression language, actions, … Coordination between subsystems (both discrete and continuous) –synchronous, time-driven, event-driven, dataflow, … –can outputs and updates be separated? What is the meaning of directed cycles? –fixed point, error, infinite loop, … What is the meaning of simultaneous events? –secondary orderings, such as data precedences, priorities, … Discontinuous signals must have zero transition times –Precise transition times –Accurate model of Zeno conditions Discrete signals should have values only at discrete times –Accurately heterogeneous model (vs. continuous approximation) Sampling of discontinuous signals must be well-defined –Avoid unnecessary nondeterminism Transient states must be active for zero time –Properly represent glitches

Chess Review, November 18, Transient States and Glitches

Chess Review, November 18, Overview Solid and clean semantics for hybrid systems Interchange Format for hybrid systems Approximations for incompatible models

Chess Review, November 18, Interchange Format for Hybrid Systems Define a common format that can be used to exchange data between different tools –Similar to other standards, such as LEF-DEF, Edif, and more recently OpenAccess –Avoid a proliferation of ad-hoc translators Flexible model that doesn’t tie you into one particular semantics –Unlike HSIF, avoid casting a preferred semantics in stone –Instead, a proper IF needs to include a meta model describing the semantics

Chess Review, November 18, Basic elements can be composed to build a domain specific Model of Computation –Semantics formally defined as Action Automata Flexible infrastructure that supports –Heterogeneous modeling –Flexible communication semantics –Non-determinism –Hierarchical, Object Oriented design –Explicit causality and scheduling –Declarative constraints (invariant, equations) –Refinement Metropolis Meta-Model

Chess Review, November 18, Anatomy of a model State Analog Process Transition Analog variable Equations

Chess Review, November 18, Application Scenarios

Chess Review, November 18, Towards a Manipulable Semantics Action automata determine the semantics of a model through its quantity managers –However, if not careful, extracting the automata and analyzing them could be very expensive –We are investigating ways of defining quantity manager in simpler and more manageable terms When intractable, translations and analysis could be obtained by ignoring certain aspects –This is sometimes desirable to decrease the complexity of a model for formal verification –This is essential when the information that is ignored is irrelevant Models of hybrid systems can be related through approximations

Chess Review, November 18, Overview Solid and clean semantics for hybrid systems Interchange Format for hybrid systems Approximations for incompatible models

Chess Review, November 18, Conservative Approximations Use conservative abstractions to relate different models –Why use abstraction A as opposed to abstraction B? Study preservation properties of abstractions –If a property holds before applying the abstraction, does it also hold after the abstraction? What are the properties of interest? –Compositionality or commutativity –Preservation of the refinement relation

Chess Review, November 18, Preservation of refinement Each model defines refinement differently –A block (actor) implements another when you can replace the former for the latter –Refinement denoted by the symbol  (partial or pre-order) Refinement verification in the abstract is potentially more efficient, but does it hold in the concrete? –In other words, does the abstraction preserve refinement? –Verification will necessarily be conservative, but is it sound?

Chess Review, November 18, Preservation of refinement Refinement preserving approximation –A function H between two models preserves refinement if and only if H(p 1 )  H(p 2 ) implies p 1  p 2 –In other words, H is “inverse” monotonic –Analogy (not) for real numbers r and s if  r    s  then not r  s Inverse monotonic functions are not useful –Say H(p 1 ) = H(p 2 ). Then p 1 = p 2 –In other words, H is injective (not giving up information) –Hence H is not an abstraction at all! One function does not fit all H concrete abstract

Chess Review, November 18, Preservation of refinement Conservative approximation –A pair of functions  = (  l,  u ) is a conservative approximation if and only if  u (p 1 )   l (p 2 ) implies p 1  p 2 –Analogy: if  r    s  then r  s –Abstract implies detailed Conservative approximations are useful –Implication going in the right direction –  l and  u are both abstractions (they need not be injective) Refinement verification is always sound uu ll concrete abstract

Chess Review, November 18, Verification problem A specification q requires that action “b” always be preceded by action “a” –Going from reals to integers, the order between events during the same integer interval is lost –Verification unsound when the specification is not represented exactly at the abstract level Conservative approximations detect when the solution would be unsound –But  l ( q ) is not empty! –It has all the behaviors for which a and b are separated by at least one time unit –Verification possible if the implementation is “slow enough” There is a relation between our sampling frequency and the ability to verify in the abstract –Subtle interaction between implementation and verification strategy –Conservative approximations separate those concerns

Chess Review, November 18, Inverse of conservative approximation The inverse of an abstraction does not necessarily exist –H( p ) does not determine p uniquely –Similarly,  u ( p ) and  l ( p ) do not determine p uniquely Inverse defined when upper and lower bound coincide –If  u (p) =  l (p), then p can be represented exactly at the abstract level –p is uniquely determined in this case H concrete abstract uu ll concrete abstract

Chess Review, November 18, Abstraction and Refinement  inv identifies actors that can be used indifferently in either domain –If Q’ is an abstraction of Q, then  inv is an injection from Q’ to Q –Actors are “domain polymorphic” Other actors are only approximated in the other semantic domain –  u and  l are different “views” –  inv   u is a closure operator –  inv   l is an interior operator uu ll Q Q’  inv

Chess Review, November 18, Conclusions Comparative study shows a fragmented landscape –Underlying models mostly incompatible –Key issues approached differently Consolidated view needed to advance the research –Evidence from industry using ad-hoc translators –Difficult for practitioners to choose the right model Our activities are complementary ways of providing a consolidated view –HyVisual: Solid and clean semantics for hybrid systems –Metropolis Interchange Format for hybrid systems –Conservative Approximations for incompatible models