Chess Review May 10, 2004 Berkeley, CA Advanced Tool Architectures Edited and Presented by Edward A. Lee, Co-PI UC Berkeley.

Slides:



Advertisements
Similar presentations
Event Driven Real-Time Programming CHESS Review University of California, Berkeley, USA May 10, 2004 Arkadeb Ghosal Joint work with Marco A. Sanvido, Christoph.
Advertisements

Overview of PTIDES Project
Process-Based Software Components for Networked Embedded Systems Edward A. Lee, PI UC Berkeley Core Technical Team (Mobies, SEC, and GSRC): Christopher.
Automated Analysis and Code Generation for Domain-Specific Models George Edwards Center for Systems and Software Engineering University of Southern California.
Chess Review May 8, 2003 Berkeley, CA Classes and Inheritance in Actor- Oriented Models Stephen Neuendorffer Edward Lee UC Berkeley.
Advanced Tool Architectures Supporting Interface-Based Design
Integrated Design and Analysis Tools for Software-Based Control Systems Shankar Sastry (PI) Tom Henzinger Edward Lee University of California, Berkeley.
Chess Review May 11, 2005 Berkeley, CA Advances In MIC Tools for Networked Embedded Systems Applications Edited and Presented by Janos Sztipanovits ISIS,
February 21, 2008 Center for Hybrid and Embedded Software Systems Organization Board of Directors Edward A. Lee, UC Berkeley.
Mobies Phase 1 UC Berkeley 1 Agenda 8:00-8:30 Continental breakfast 8:30-9:00 Overview of Mobies Phase 1 effort (Edward A. Lee) 9:00-9:40 Introduction.
Type System, March 12, Data Types and Behavioral Types Yuhong Xiong Edward A. Lee Department of Electrical Engineering and Computer Sciences University.
Department of Electrical Engineering and Computer Sciences University of California at Berkeley Behavioral Types for Actor-Oriented Design Edward A. Lee.
Behavioral Types as Interface Definitions for Concurrent Components Center for Hybrid and Embedded Software Systems Edward A. Lee Professor UC Berkeley.
February 11, 2010 Center for Hybrid and Embedded Software Systems Ptolemy II - Heterogeneous Concurrent Modeling and Design.
Foundations of Hybrid and Embedded Software and Systems University of California, Berkeley, CHESS Vanderbilt University, ISIS Memphis State, Mathematics.
Chess Review October 4, 2006 Alexandria, VA Edited and presented by Advanced Tool Architectures Edward A. Lee UC Berkeley.
Chess Review November 18, 2004 Berkeley, CA Advanced Tool Architectures Edited and Presented by Edward A. Lee, Co-PI UC Berkeley.
Chess Review November 21, 2005 Berkeley, CA Edited and presented by Advanced Tool Architectures Edward A. Lee UC Berkeley.
Chess Review May 11, 2005 Berkeley, CA Composable Code Generation for Distributed Giotto Tom Henzinger Christoph Kirsch Slobodan Matic.
February 23, 2012 Center for Hybrid and Embedded Software Systems Organization Board of Directors Edward A. Lee, EECS Thomas.
UC Berkeley: Chess Vanderbilt University: ISIS University of Memphis: MSI CHESS Review May 10, 2004 Berkeley, CA Model-Based Design Edited by Janos Sztipanovits,
Review of “Embedded Software” by E.A. Lee Katherine Barrow Vladimir Jakobac.
Actor-Oriented Design: A focus on domain-specific languages for embedded systems Edward A. Lee Professor, UC Berkeley Director, Center for Hybrid and Embedded.
Mixing Models of Computation Jie Liu Palo Alto Research Center (PARC) 3333 Coyote Hill Rd., Palo Alto, CA joint work with Prof. Edward.
Design of Fault Tolerant Data Flow in Ptolemy II Mark McKelvin EE290 N, Fall 2004 Final Project.
Hierarchical Reconfiguration of Dataflow Graphs Stephen Neuendorffer UC Berkeley Poster Preview May 10, 2004.
NSF Foundations of Hybrid and Embedded Software Systems UC Berkeley: Chess Vanderbilt University: ISIS University of Memphis: MSI A New System Science.
Ptolemy Miniconference May 9, 2003 Berkeley, CA Ptolemy Project Plans for the Future Edward A. Lee Professor Ptolemy Project Director.
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.
Foundations of Hybrid and Embedded Software Systems UC Berkeley: Chess Vanderbilt University: ISIS University of Memphis: MSI NSF Model-Based Design DSML.
Chess Review October 4, 2006 Alexandria, VA Edited and presented by Impact: Fault Tolerance and High Confidence Embedded Systems Design Gabor Karsai Vanderbilt.
Department of Electrical Engineering and Computer Sciences University of California at Berkeley Concurrent Component Patterns, Models of Computation, and.
Center for Hybrid and Embedded Software Systems Jonathan Sprinkle Executive Director, CHESS Center for Hybrid and Embedded Software Systems UC Berkeley.
Chess Review October 4, 2006 Alexandria, VA Embedded Systems Education: Vanderbilt Edited and Presented by Janos Sztipanovits ISIS, Vanderbilt University.
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
Trend towards Embedded Multiprocessors Popular Examples –Network processors (Intel, Motorola, etc.) –Graphics (NVIDIA) –Gaming (IBM, Sony, and Toshiba)
5 th Biennial Ptolemy Miniconference Berkeley, CA, May 9, 2003 The Component Interaction Domain: Modeling Event-Driven and Demand- Driven Applications.
Embedded Software Challenges for the Next 10 Years Chess: Center for Hybrid and Embedded Software Systems Infineon Embedded Software Days Munich, Sept.
5 th Biennial Ptolemy Miniconference Berkeley, CA, May 9, 2003 MESCAL Application Modeling and Mapping: Warpath Andrew Mihal and the MESCAL team UC Berkeley.
Lee & Henzinger ESWG #1 UC Berkeley Mobies Technology Project Process-Based Software Components for Networked Embedded Systems PI: Edward Lee CoPI: Tom.
MOBIES Project Progress Report Engine Throttle Controller Design Using Multiple Models of Computation Edward Lee Haiyang Zheng with thanks to Ptolemy Group.
Model-Driven Development From Object-Oriented Design to Actor-Oriented Design Chess: Center for Hybrid and Embedded Software Systems Edward A. Lee Professor.
System-Level Types for Component-Based Design Paper by: Edward A. Lee and Yuhong Xiong Presentation by: Dan Patterson.
Chess Review May 11, 2005 Berkeley, CA Platform Modeling and Analysis Presented by Tivadar Szemethy ISIS, Vanderbilt University.
Department of Electrical Engineering and Computer Sciences University of California at Berkeley The Ptolemy II Framework for Visual Languages Xiaojun Liu.
Chess Review October 4, 2006 Alexandria, VA Edited and presented by Model-Based Design Janos Sztipanovits Vanderbilt University.
Chess Review November 21, 2005 Berkeley, CA Edited and presented by Coupled Interface Modules for Heterogeneous Composition Ethan Jackson ISIS, Vanderbilt.
02/06/05 “Investigating a Finite–State Machine Notation for Discrete–Event Systems” Nikolay Stoimenov.
Composing Models of Computation in Kepler/Ptolemy II
Programming Models & Runtime Systems Breakout Report MICS PI Meeting, June 27, 2002.
Model-Driven Analysis Frameworks for Embedded Systems George Edwards USC Center for Systems and Software Engineering
C. André, J. Boucaron, A. Coadou, J. DeAntoni,
Toward a Semantic Anchoring Infrastructure for Domain-Specific Modeling Languages Kai Chen Janos Sztipanovits Sandeep Neema Matthew Emerson Sherif Abdelwahed.
Design Languages in 2010 Chess: Center for Hybrid and Embedded Software Systems Edward A. Lee Professor UC Berkeley Panel Position Statement Forum on Design.
Actor Networks Edward A. Lee Robert S. Pepper Distinguished Professor Chair of EECS UC Berkeley Invited Talk Workshop Foundations and Applications of Component-based.
CS 5991 Presentation Ptolemy: A Framework For Simulating and Prototyping Heterogeneous Systems.
T imed Languages for Embedded Software Ethan Jackson Advisor: Dr. Janos Szitpanovits Institute for Software Integrated Systems Vanderbilt University.
Giotto Embedded Control Systems Development with Thomas A. Henzinger Ben Horowitz Christoph M. Kirsch University of California, Berkeley
February 14, 2013 Center for Hybrid and Embedded Software Systems Organization Faculty Edward A. Lee, EECS Alberto Sangiovanni-Vincentelli,
Ptolemy II - Heterogeneous Concurrent Modeling and Design in Java
An overview of the CHESS Center
Ptolemy II - Heterogeneous Concurrent Modeling and Design in Java
Gabor Madl Ph.D. Candidate, UC Irvine Advisor: Nikil Dutt
Model-Driven Analysis Frameworks for Embedded Systems
Shanna-Shaye Forbes Ben Lickly Man-Kit Leung
Retargetable Model-Based Code Generation in Ptolemy II
Ptolemy II - Heterogeneous Concurrent Modeling and Design in Java
An overview of the CHESS Center
Ptolemy II - Heterogeneous Concurrent Modeling and Design in Java
Presentation transcript:

Chess Review May 10, 2004 Berkeley, CA Advanced Tool Architectures Edited and Presented by Edward A. Lee, Co-PI UC Berkeley

Chess Review, May 10, Tool Projects Concurrent model-based design –Giotto (Henzinger) –E machine & S machine (Henzinger) –NP-Click (Keutzer) –Streambit (Bodik) –Metropolis (Sangiovanni-Vincentelli) –Ptolemy II (Lee) Meta modeling –GME (Sztipanovits, Vanderbilt) –GREAT=Language,Engine,C/G,Debugger (Karsai, Vanderbilt) –MOF-based Metamodeling (Sztipanovits, Vanderbilt) Verification –Blast (Henzinger) –CCured (Necula) –Chic (Henzinger) –SMoLES (Karsai, Vanderbilt) investigator in charge

Chess Review, May 10, Emphasis of Each Tool GiottoA particular concurrent, timed model of computation (MoC) E/S machinesO/S neutral run-time virtual machine NP-ClickProgramming model for network processors StreambitDomain-specific language for bit stream processing MetropolisDesign refinement and mapping. Ptolemy IIMoCs and visualization of design. UML-OCL/GMEModeling the modeling languages using UML class diagrams and OCL GReAT/GME, GRE,C/G Modeling Model transformations using the GReAT Language, Transformation engine, Code Generator, Debugger MOF/GMEMetamodeling using the Meta-Object Facility BlastModel checking C programs. CCuredMaking C programs more reliable. SMOLESSimple Modeling Language for Embedded Systems with Timing Analysis (using Timed Automata) ChicChecking interface compatibility in component compositions. Concurrent model -based design Meta modeling Verification

Chess Review, May 10, A Common Approach in Many of These: Actor-Oriented Design Actor orientation: actor name data (state) ports Input data parameters Output data What flows through an object is streams of data class name data methods call return What flows through an object is sequential control Object orientation: A key theme is to identify the fundamentals of actor-oriented design and to show how to leverage a solid actor-oriented foundation to create domain- specific modeling languages (DSMLs)

Chess Review, May 10, Actor-Oriented Platforms Actor oriented models compose concurrent components according to a model of computation. Time and concurrency become key parts of the programming model.

Chess Review, May 10, Actor Interfaces: Ports and Parameters input ports output port p1p1 p2p2 p3p3 parameters: a 1 = value a 2 = value input/output port Example:

Chess Review, May 10, Our Actor-Oriented Domain-Specific Modeling Languages: DSMLs Giotto –time-triggered –hard-real-time periodic tasks –deterministic mode switching NP-Click –push/pull semantics –combines application modeling language with target architecture abstraction –targeted towards network processors HyVisual –continuous-time semantics with mode changes –intended for hybrid systems modeling GME-generated languages (Vanderbilt) –meta modeling –synthesis of domain-specific visual languages

Chess Review, May 10, Giotto and xGiotto: Time-Driven Languages t+10ms ttt+5ms Higher frequency Task Lower frequency task: Giotto compiler targets the E Machine/S Machine Giotto model of computation also implemented in Ptolemy II Giotto – Periodic hard-real-time tasks with precise mode changes. xGiotto – Extended to support event triggering Deterministic task interaction.

Chess Review, May 10, Giotto with a Visual Syntax hierarchical modes tasks defined using another MoC The Giotto Director in Ptolemy II gives the diagram Giotto semantics.

Chess Review, May 10, Distributed E and S Machines A major challenge with embedded real-time systems is preserving predictability in distributed implementations. The E & S machine platforms provide such predictability.

Chess Review, May 10, NP-Click: A Programming Model for Network Processors Concurrent composition of elements for packet processing Elements communicate via ports that pass packets –push: initiated by source element –pull: initiated by sink element Salient features of target architecture –threads –data layout –arbitration of shared resources Thread 0 Thread 1 Thread 2 FromDevice(0) ToDevice(0) FromDevice(1) ToDevice(1) Lookup IPRoute

Chess Review, May 10, Click Router Application The Click director in Ptolemy II gives the diagram push/pull semantics.

Chess Review, May 10, StreamBit: Sketching bitstream programs What is StreamBit? –language for developing bit-stream programs (e.g., crypto) –but mainly, a case study in programming by sketching What is programming by sketching? –separate Specification and Implementation –Specification (correctness): an SDF-based DSL –Implementation (performance): implementation strategy is only sketched; the compiler will derive the missing details What does this mean for the programmer? –First, program without concern for performance –Next, experiment with implementations w/out introducing bugs Sketching used to implement DES: –a brief sketch achieved 600% performance increase over naïve implementation (within ¾ of a hand-tuned library)

Chess Review, May 10, Frameworks Metropolis –Unified model of computation (MoC) –Formal semantics given w.r.t. this MoC –Emphasis on joint modeling of hardware architecture and application –Modeling of design constraints and assertions Ptolemy II –Framework for experimentation with MoCs –Many MoCs have been implemented discrete-event, continuous-time, dataflow, push/pull, process networks, CSP, FSMs, … –Emphasis on heterogeneous mixing of domain- specific MoCs.

Chess Review, May 10, Joint modeling of function, constraints, and implementation platform. Metropolis Framework Function Specification Design Constraints and Assertions Architecture (Platform) Specification Metropolis Infrastructure Design methodology Meta model of computation Base tools - Design imports - Meta-model compiler - Simulation Synthesis/Refinement Compile-time scheduling of concurrency Communication-driven hardware synthesis Protocol interface generation Analysis/Verification Static timing analysis of reactive systems Invariant analysis of sequential programs Refinement verification Formal verification of embedded software

Chess Review, May 10, Ptolemy II Framework Director from a library defines component interaction semantics Large, domain-polymorphic component library. Basic Ptolemy II infrastructure: Hierarchical componentsVisual editor Type system

Chess Review, May 10, Hierarchical Heterogeneity Hierarchy allows distinct models of computation at distinct levels of the hierarchy. An “abstract semantics” defines the interaction across levels of hierarchy where the semantics differ. continuous environment modal model discrete controller example Ptolemy II model: hybrid control system

Chess Review, May 10, Actor-Oriented Classes Objective is to bring modern modularity mechanisms to actor-oriented design: –classes –subclasses –inheritance –interfaces –subtypes –aspects Early, highly experimental prototype in Ptolemy II includes: –classes, inheritance, inner classes –interactive editing of class relationships

Chess Review, May 10, Example Using Actor-Oriented Classes instance subclass inherited actors override actors local class definition execution

Chess Review, May 10, Meta Modeling Specifying and Integrating Tool Chains Modeling Controller Synthesis System Analysis Code Generation Validation Verification Target Analysis Platform Ptolemy II Metropolis GME Ptolemy II Metropolis Ptolemy II Metropolis Giotto HyVisual DESERT CCuredChic Blast E/S machines O/S Processor Platform Models Design Feedback Plant Model Integrated Model Design Feedback Valid Model Code/Model Test Vectors Valid Code/ Model Download Valid Model DOMAIN-SPECIFIC DESIGN FLOWS AND TOOL CHAIN DSML Meta-Modeling Transformation Meta-Modeling Validation & Verification Meta-Generators Meta-Models Transformation Meta-Models Valid Meta-Models Model Transformation Tools UML-OCL|MOF/GME UMT/GME GRE GR-DEBUG C/G Automotive Others META-MODELING DESIGN FLOW AND TOOL CHAIN Domain-Specific Tool Chains Design Feedback

Chess Review, May 10, GReAT: Model Transformation Tool Chain GME GRE DEBUG C/G Tools: UMT Language, GRE (engine), C/G, GR-DEBUG

Chess Review, May 10, Verification Blast –Scalable verification through lazy refinement of the state space. CCured –Static analysis of C programs for type safety. –Where static analysis fails, run-time checks are added automatically. Chic –Expresses assumptions made by module about environment, and guarantees made by module if assumptions are satisfied. –Checks compatibility of interfaces of composed components. Both based on CIL (C Intemediate Language), a representation of C code along with a set of tools that permit easy analysis and source-to- source transformation.

Chess Review, May 10, Many In-Depth Talks have a Tools Element 10:10-11:10 a.m. Event-driven Real-Time Programming (Arkadeb Ghosal and Tom Henzinger) A Comparison of Network Processor Programming Environments (William Plishker and Kurt Keutzer) Classes and Inheritance in Actor-Oriented Models (Stephen Neuendorffer and Edward A. Lee) 2:00-3:00 p.m. Metropolis, an Environment for System-level Design (Abhijit Davare and Alberto Sangiovanni-Vincentelli) StreamBit: Sketching Implementations for Bitstream Programs (Armando Solar-Lezama and Ras Bodik) Verifying Data Structure Invariants in Device Drivers (Scott McPeak and George Necula)

Chess Review, May 10, Many Posters have a Tools Element Wireless Sensor Network Design Methodology galsC: A Language for Event-Driven Embedded Systems Metamodeling Infrastructure for Model-Integrated Computing Distributed Diagnosis Algorithm Multiple Aspect Modeling Front-End for SIGNAL Online supervisory control Platform-based Design for Mixed Analog-Digital Designs Distributing Giotto Hierarchical Reconfiguration of Dataflow Models Fault Tolerant Design of Distributed Automotive Systems Modeling of Sensor Nets in Ptolemy II