Review of “Embedded Software” by E.A. Lee Katherine Barrow Vladimir Jakobac.

Slides:



Advertisements
Similar presentations
Embedded System, A Brief Introduction
Advertisements

Modelos de Computação Básicos Prof. Dr. César Augusto Missio Marcon Parcialmente extraído de trabalhos de Axel Jantch, Edward Lee e Alberto Sangiovanni-Vincentelli.
Programming Languages for End-User Personalization of Cyber-Physical Systems Presented by, Swathi Krishna Kilari.
ES Seminar1 Communicating Transaction Processes P.S. Thiagarajan National University of Singapore Joint Work with: Abhik Roychoudhury; ……
Architecture Representation
Timed Automata.
Sensor Network Platforms and Tools
© 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 9 Slide 1 Appendix 3 Object-Oriented Analysis and Design.
PTIDES: Programming Temporally Integrated Distributed Embedded Systems Yang Zhao, EECS, UC Berkeley Edward A. Lee, EECS, UC Berkeley Jie Liu, Microsoft.
Process-Based Software Components for Networked Embedded Systems Edward A. Lee, PI UC Berkeley Core Technical Team (Mobies, SEC, and GSRC): Christopher.
SRC ETAB Summer Study Colorado Springs, June 25-26, 2001 Model-Based Approaches to Embedded Software Design Edward A. Lee UC Berkeley & GSRC.
NSF Foundations of Hybrid and Embedded Software Systems UC Berkeley: Chess Vanderbilt University: ISIS University of Memphis: MSI A New System Science.
Type System, March 12, Data Types and Behavioral Types Yuhong Xiong Edward A. Lee Department of Electrical Engineering and Computer Sciences University.
CS533 Concepts of Operating Systems Class 20 Summary.
7th Biennial Ptolemy Miniconference Berkeley, CA February 13, 2007 Leveraging Synchronous Language Principles for Hybrid System Models Haiyang Zheng and.
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.
Chess Review October 4, 2006 Alexandria, VA Edited and presented by Advanced Tool Architectures Edward A. Lee UC Berkeley.
Behavioral Design Outline –Design Specification –Behavioral Design –Behavioral Specification –Hardware Description Languages –Behavioral Simulation –Behavioral.
Heterogeneous Modeling and Design in Ptolemy II Johan Eker UC Berkeley with material courtesy of Edward Lee and the Ptolemy group ECE Seminar Series, Carnegie.
Modeling Heterogeneous Systems Edward Lee UC Berkeley Design for Safety Workshop NASA Ames Research Center Mountain View, CA 11 October, Design.
Define Embedded Systems Small (?) Application Specific Computer Systems.
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.
NSF Foundations of Hybrid and Embedded Software Systems UC Berkeley: Chess Vanderbilt University: ISIS University of Memphis: MSI A New System Science.
Heterochronous Dataflow in Ptolemy II Brian K. Vogel EE249 Project Presentation, Dec. 4, 1999.
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.
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.
February 12, 2009 Center for Hybrid and Embedded Software Systems Model Transformation Using ERG Controller Thomas H. Feng.
Concurrent Models of Computation in System Level Design Edward Lee UC Berkeley Forum on Design Languages Workshop on System Specification & Design Languages.
State of the Art Lecture IEEE Instrumentation and Measurement Technology Conference Budapest, Hungary, May 21-23, 2001 Computing for Embedded Systems Edward.
1 System Modeling. Models of Computation. System Specification Languages Alexandru Andrei.
Mahapatra-A&M-Sprong'021 Co-design Finite State Machines Many slides of this lecture are borrowed from Margarida Jacome.
Panel: What Comes After C++ in System-Level Specification Edward Lee UC Berkeley Forum on Design Languages Workshop on System Specification & Design Languages.
MOBIES Project Progress Report Engine Throttle Controller Design Using Multiple Models of Computation Edward Lee Haiyang Zheng with thanks to Ptolemy Group.
Mahapatra-Texas A&M-Fall'001 Codesign Framework Parts of this lecture are borrowed from lectures of Johan Lilius of TUCS and ASV/LL of UC Berkeley available.
System-Level Types for Component-Based Design Paper by: Edward A. Lee and Yuhong Xiong Presentation by: Dan Patterson.
Department of Electrical Engineering and Computer Sciences University of California at Berkeley The Ptolemy II Framework for Visual Languages Xiaojun Liu.
Object-oriented design CS 345 September 20,2002. Unavoidable Complexity Many software systems are very complex: –Many developers –Ongoing lifespan –Large.
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
- 1 -  P. Marwedel, Univ. Dortmund, Informatik 12, 2003 Universität Dortmund Actual design flows and tools.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
1  Staunstrup and Wolf Ed. “Hardware Software codesign: principles and practice”, Kluwer Publication, 1997  Gajski, Vahid, Narayan and Gong, “Specification,
What’s Ahead for Embedded Software? - Edward A. Lee (2000) Wednesday November 10, 2010 Hokeun Kim.
02/06/05 “Investigating a Finite–State Machine Notation for Discrete–Event Systems” Nikolay Stoimenov.
- 1 - Embedded Systems—State charts Specifications.
CSET 4650 Field Programmable Logic Devices
Composing Models of Computation in Kepler/Ptolemy II
CS451 Lecture 13: Architectural Design Chapter 10
Embedded Software Original Paper by: Edward A. Lee Presentation and Review by: Chris A. Mattmann
- 1 - Embedded Systems - SDL Some general properties of languages 1. Synchronous vs. asynchronous languages Description of several processes in many languages.
Ch. 2. Specification and Modeling 2.1 Requirements Describe requirements and approaches for specifying and modeling embedded systems. Specification for.
Hardware-software Interface Xiaofeng Fan
Mahapatra-A&M-Fall'001 Co-design Finite State Machines Many slides of this lecture are borrowed from Margarida Jacome.
C. André, J. Boucaron, A. Coadou, J. DeAntoni,
Design Languages in 2010 Chess: Center for Hybrid and Embedded Software Systems Edward A. Lee Professor UC Berkeley Panel Position Statement Forum on Design.
CS4730 Real-Time Systems and Modeling Fall 2010 José M. Garrido Department of Computer Science & Information Systems Kennesaw State University.
Ptolemy & Models of Computation -by Hao Chen, Zhuang Fan, Jin Xiao School of Computer Science University of Waterloo Claudius Ptolemaeus, the second century.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
What’s Ahead for Embedded Software? (Wed) Gilsoo Kim
Secure Composition of Untrusted Code: Wrappers and Causality Types Kyle Taylor.
Model Checking Lecture 1. Model checking, narrowly interpreted: Decision procedures for checking if a given Kripke structure is a model for a given formula.
CS 5991 Presentation Ptolemy: A Framework For Simulating and Prototyping Heterogeneous Systems.
Ptolemy II - Heterogeneous Concurrent Modeling and Design in Java
Ptolemy II - Heterogeneous Concurrent Modeling and Design in Java
Retargetable Model-Based Code Generation in Ptolemy II
Ptolemy II - Heterogeneous Concurrent Modeling and Design in Java
Presentation transcript:

Review of “Embedded Software” by E.A. Lee Katherine Barrow Vladimir Jakobac

Roadmap Overview Programming Abstraction Limits of current Software Engineering methodologies Actor-Oriented Design Models of Computation Weaknesses of the paper Summary Future Research Challenges

Overview Embedded software differs from traditional software in that it interfaces with and is subject to the constraints of the physical world. Current software engineering methods do not satisfy the unique requirements of embedded software. Actor-oriented design is an abstraction paradigm that addresses the issues of concurrency, communication and time.

Programming Abstraction Properties of embedded software are: timeliness concurrency liveness interfaces heterogeneity reactivity –synchronous languages: Esterel, Lustre, Signal, Argos

Limitations of current design methods Object-oriented design is a procedural abstraction with passive objects Real-time operating systems use microkernels for task scheduling Scheduling techniques are not compositional Real-time CORBA –event handling –real-time scheduling

Actor-oriented Design Abstract syntax defines how a design can be decomposed into interconnected components Concrete syntax is a visual or textual representation of the abstract syntax Models of computation (semantics) –concurrency –varying latencies –abstractions over hardware

Examples of Models of Computation Time Triggered (TT) & Discrete-time (DT) Cp-Cn: indefinitely run processes – signals with data values every clock tick (Scenic) used for digital signal processing Synchronous/Reactive (SR) Cp-Cn: relations btw. I/O signals – signals (at time ticks) used for safety-critical control systems excellent for concurrent models with irregular events vs. limited platforms, limited SW support Discrete Events (DE) Cp-Cn: - signals that carry events placed in time used for specifying HW (HDL), for simulating telecommunications systems (VHDL, Verilog) expensive to implement in SW Continuous Time (CT) Cp-Cn: relations btw. signals – continuous-time signals modeling the physical systems – differential equations

Process Networks (PN), Dataflow (DF) Cp-Cn: processes/threads (computations) – asynchronous messages (flow of data) excellent for signal processing vs. awkward for specifying complicated control logic Rendezvous (CSP) Cp-Cn: processes/threads – synchronous message passing used for C/S database models, multitasking of HW resources good at resource sharing vs. deadlocks Publish and Subscribe Cp-Cn: producer/consumer of events – event streams Finite State Machines (FSM) strictly sequential (not concurrent) Cp-Cn: state/mode – transitions excellent for describing control logic (safety-critical systems) vs. number of states can get very large solution: use FSMs hierarchically combined with concurrent models  “*charts” Examples… (cont.)

Component interface Heterogeneous models Type systems, strong typing –limit component’s interface, affect framework compatibility; poor reuse of components –ensure software correctness; improved run time efficiency, high safety degree Extended types –dynamic properties of components –using automata and polymorphism Reflection on the program dynamics –communication protocols –process state

Weaknesses Components must be designed to the particular framework –limited reusability Communication protocols btw. concurrent processes – type checked or not? Poor organization –objectives of the paper were not clearly stated

Summary Standard abstractions in software development to be abandoned Concurrency and time – first-class status Goal: modules that dynamically reconfigure the system

Further research challenges Frameworks with properties that better match the application domain –reintroduce time –safety and liveness Hardware-software partnership – balance btw. their sequential and parallel execution styles –configurable hardware –networking –hardware and software design techniques that minimize power consumption Extending types –novel syntactic language support Human-computer interaction