Specifications Part 2

Size: px
Start display at page:

Download "Specifications Part 2"

Transcription

1 pm4 12 Specifications Part 2 Embedded System Design Kluwer Academic Publisher by Peter Marwedel TU Dortmund 2008/11/15 ine Marwedel, 2003 Graphics: Alexandra Nolte, Ges Models of computation Communication/ Computations Shared memory Message passing Synchronous Asynchronous Communicating StateCharts SDL Finite State Machines Data flow model Computational graphs Not useful Simulink Kahn process networks SDF Sequence diagram Petri nets Von Neumann model C, C++, Java C, C++, Java with libraries CSP, ADA Discrete event (DE) model VHDL, Verilog Only experimental systems, e.g. distributed DE in Ptolemy 12,

2 Data Flow Models 12, Summary Data flow model of computation Motivation Kahn process networks SDF Visual programming languages Simulink 12,

3 Data flow as a natural model of applications Registering for courses Examples Video on demand system , Data flow modeling Definition: The process of identifying, modeling and documenting how data moves around an information system. Data flow modeling examines processes (activities that transform data from one form to another), data stores (the holding areas for data), external entities (what sends data into a system or receives data from a system, and data flows (routes by which data can flow). See also S. Edwards: ~sedwards/classes/2001/w /presentations/dataflow.ppt 12,

4 Reference model for data flow: Kahn process networks For asynchronous message passing: communication between tasks is buffered Special case: Kahn process networks: executable task graphs; Communication via infinitely large FIFOs 12, Properties of Kahn process networks (1) Each node corresponds to one program/task; Communication is only via channels; Channels include FIFOs as large as needed; Channels transmit information within an unpredictable but finite amount of time; Mapping from 1 input seq. to 1 output sequence; In general, execution times are unknown; Send operations are non-blocking Reads are blocking. One producer and one consumer; i.e. there is only one sender per channel; 12,

5 Properties of Kahn process networks (2) There is only one sender per channel. A process cannot check whether data is available before attempting a read. A process cannot wait for data for more than one port at a time. Therefore, the order of reads depends only on data, not on the arrival time. Therefore, Kahn process networks are deterministic; for a given input, the result will always the same, regardless of the speed of the nodes. SDL-like conflicts at FIFOs do not exist. 12, Properties of Kahn process networks (3) Model of parallel computations used in practice (@NXP) Example: Process f(in int u, in int v, out int w){ int i; bool b = true; for (;;) { i= b? wait(u) : wait(v); //wait return next token in FIFO, blocks if empty printf ( %i\n,i); send (i,w); //writes a token into a FIFO w/o blocking b =!b; } R. Gupta (UCSD), W. Wolf (Princeton), 2003 It is a challenge to schedule KPNs without accumulating tokens Animation 12, 2008 levi animation

6 Asynchronous message passing: Synchronous data flow (SDF) Asynchronous message passing= tasks do not have to wait until output is accepted. Synchronous data flow = all tokens are consumed at the same time. SDF model allows static scheduling of token production and consumption. In the general case, buffers may be needed at edges. 12, Synchronous Dataflow (SDF) Fixed Production/Consumption Rates Balance equations (one for each channel): f N f M A = Schedulable statically Decidable: buffer memory requirements deadlock B number of tokens consumed number of firings per iteration number of tokens produced fire A { produce N } N channel M fire B { consume M } Source: ptolemy.eecs.berkeley.edu/presentations/03/streamingeal.ppt 12,

7 Parallel Scheduling of SDF Models SDF is suitable for automated mapping onto parallel processors and synthesis of parallel circuits. A B D C Many scheduling optimization problems can be formulated. Some can be solved, too! Sequential 12, 2008 Parallel Source: ptolemy.eecs.berkeley.edu/presentations/03/streamingeal.ppt Similar MoC: Simulink - example - Semantics? Simulink uses an idealized timing model for block execution and communication. Both happen infinitely fast at exact points in simulated time. Thereafter, simulated time is advanced by exact time steps. All values on edges are constant t in between time steps. [Nicolae Marian, Yue Ma] From ess/helpdesk/help/toolbox/ fuzzy/fuzzyt25.shtml 12,

8 Starting point for model-based design Code automatically generated 12, MathWorks, cmsimages/rt_forloop_code_wl_7430.gif Summary Data flow model of computation Motivation Kahn process networks SDF Visual programming languages Simulink 12,

9 Models of computation Communication/ Computations Shared memory Message passing Synchronous Asynchronous Communicating StateCharts SDL Finite State Machines Data flow model Computational graphs Not useful Simulink Kahn process networks SDF Sequence diagram Petri nets Von Neumann model C, C++, Java C, C++, Java with libraries CSP, ADA Discrete event (DE) model VHDL, Verilog Only experimental systems, e.g. distributed DE in Ptolemy 12, Computational Graphs 12,

10 From data flow to computational graphs Pure data flow frequently too restrictive: lack of modeling control, resources etc. Modern computers contain subsystems build on the data flow paradigm (scoreboard, Tomasulo s algorithm) However, Lunatics (S. Edwards) tried to build general purpose data flow computers, but failed Data flow graphs are a special case of the somewhat more general computational graphs. Petri nets + MSCs + 12, Computational graphs in UML: Sequence Diagram Graphical means for representing sequences; time used vertically, geographical distribution horizontally. 12, deliverable

11 (Message) Sequence Charts (MSC) No distinction between accidental overlap and synchronization 12, Time/distance diagrams as a special case ck.ch 12,

12 1997. (Message) Sequence Charts PROs: Appropriate for visualizing schedules, Proven method for representing schedules in transportation. Standard defined: ITU-TS Recommendation Z.120: Message Sequence Chart (MSC), ITU-TS, Geneva, Semantics also defined: ITU-TS Recommendation Z.120: Message Sequence Chart (MSC) Annex B: Algebraic Semantics of Message Sequence Charts, ITU-TS, Geneva. CONS: describes just one case, no timing i tolerances: "What does an MSC specification mean: does it describe all behaviors of a system, or does it describe a set of sample behaviors of a system? * * H. Ben-Abdallah and S. Leue, Timing constraints in message sequence chart specifications, in Proc. 10th International Conference on Formal Description Techniques FORTE/PSTV 97, Chapman and Hall, 12, Computational UML: Activity diagram Extended Petri nets. Include decisions (like in flow charts). Graphical notation similar to SDL. Cris Kobryn: UML 2001: A Standardization Odyssey, CACM, October, , 2008 swimlane

13 UML diagrams 12, Timing diagrams Can be used to show the change of the state of an object over time. Scott Ambler, Agile Modeling, // ing.com, ,

14 UML for real-time? Initially not designed for real-time. Initially lacking features: Partitioning i of software into tasks and processes specifying timing specification of hardware components Projects on defining real-time UML based on previous work ROOM [Selic] is an object-oriented o e ted methodology ogy for real- time systems developed originally at Bell-Northern Research. UML profile for schedulability, performance and time 12, , 2008 SoC=system on a chip

15 Example: Activity diagram with annotations [ See also W. Müller et al.: UML for SoC, 12, ,

16 Task graphs Many applications can be specified in the form of a set of communicating processes. Example: system with two sensors: temperature sensor humidity sensor mux Alternating read loop read_temp; read_humi until false; of the two sensors no the right approach. FIFO 12, The case for multi-process modeling MODULE main; PROCESS get_humidity; TYPE some_channel = VAR sample : some_sample; (temperature, humidity); BEGIN some_sample : RECORD LOOP value : integer; sample.value := new_humidity line : some_channel sample.line := humidity; END; to_fifo(sample); PROCESS get_temperature; VAR sample : some_sample; END BEGIN END get _ humidity; LOOP sample.value := new_temperature; BEGIN IF sample.value > 30 THEN... get_temperature; get_humidity sample.line := temperature; END; Blocking calls new_temperature, new_humidity How to model Structure to_fifo(sample); clearer than alternating checks for dependencies between END new values in a single process tasks/processes? ,

17 Dependences between processes/tasks Get_temperature main FIFO Get_ humidity 12, Task graphs Sequence constraint Nodes are assumed to be a program described in some programming language, e.g. C or Java. Def.: A dependence graph is a directed graph G=(V,E) in which E V V is a partial order. If (v1, v2) E, then v1 is called an immediate predecessor of v2 and v2 is called an immediate successor of v1. Suppose E* is the transitive closure of E. If (v1, v2) E*, then v1 is called a predecessor of v2 and v2 is called a successor of v1. 12,

18 Task graphs 1. Timing information - Task graphs may contain additional information, for example: Timing information Arrival time deadline ] 12, Task graphs 2. I/O-information 12,

19 Task graphs 3. Shared resources 12, Task graphs 4. Hierarchical task graphs - 12,

20 Multi-thread graphs (IMEC) Def.: A multi-thread graph M is defined as an 11-tuple (O, E, V, D, ϑ, ι, Λ, E lat, E resp, i, av ) with: O: set of operation nodes, E: set of control edges, V, D : refer to the access of variables, ι: is the set of input/output nodes, Λ: associates execution latency intervals with all threads, E lat, E resp, i, av are timing constraints. 12, MTG graphs: graphical notation 12,

21 Generalization of data flow: Computational graphs Example: Petri nets Introduced in 1962 by Carl Adam Petri in his PhD thesis. Focus on modeling causal dependencies; no global l synchronization assumed (message passing only). Key elements: Conditions Either met or no met. Events May take place if certain conditions are met. Flow relation Relates conditions and events. Conditions, events and the flow relation form a bipartite graph (graph with two kinds of nodes). 12, Example: Synchronization at single track rail segment Precondition s 12,

22 Playing the token game 12, 2008 use normal view mode! Conflict for resource track 12,

23 More complex example (1) Thalys trains between Cologne, Amsterdam, Brussels and Paris. [ 12, More complex example (2) Slightly simplified: Synchronizatio n at Brussels and Paris, using stations Gare du Nord and Gare de Lyon at Paris s 12, 2008 use normal view mode!

24 Summary More computational graphs: (Message) sequence charts Time/distance charts Activity charts Other UML graphs UML profiles Real-time UML Task graphs Petri nets 12,

fakultät für informatik informatik 12 technische universität dortmund Data flow models Peter Marwedel TU Dortmund, Informatik /10/08

fakultät für informatik informatik 12 technische universität dortmund Data flow models Peter Marwedel TU Dortmund, Informatik /10/08 12 Data flow models Peter Marwedel TU Dortmund, Informatik 12 2009/10/08 Graphics: Alexandra Nolte, Gesine Marwedel, 2003 Models of computation considered in this course Communication/ local computations

More information

Embedded Systems 7. Models of computation for embedded systems

Embedded Systems 7. Models of computation for embedded systems Embedded Systems 7 - - Models of computation for embedded systems Communication/ local computations Communicating finite state machines Data flow model Computational graphs Von Neumann model Discrete event

More information

FSMs & message passing: SDL

FSMs & message passing: SDL 12 FSMs & message passing: SDL Peter Marwedel TU Dortmund, Informatik 12 Springer, 2010 2012 年 10 月 30 日 These slides use Microsoft clip arts. Microsoft copyright restrictions apply. Models of computation

More information

SDL. Jian-Jia Chen (slides are based on Peter Marwedel) TU Dortmund, Informatik 年 10 月 18 日. technische universität dortmund

SDL. Jian-Jia Chen (slides are based on Peter Marwedel) TU Dortmund, Informatik 年 10 月 18 日. technische universität dortmund 12 SDL Jian-Jia Chen (slides are based on Peter Marwedel) TU Dortmund, Informatik 12 2017 年 10 月 18 日 Springer, 2010 These slides use Microsoft clip arts. Microsoft copyright restrictions apply. Models

More information

Specifications and Modeling

Specifications and Modeling 12 Specifications and Modeling Peter Marwedel TU Dortmund, Informatik 12 Springer, 2010 2012 年 10 月 17 日 These slides use Microsoft clip arts. Microsoft copyright restrictions apply. Hypothetical design

More information

Models of computation

Models of computation 12 Models of computation Peter Marwedel TU Dortmund Informatik 12 Springer, 2010 2012 年 10 月 23 日 These slides use Microsoft clip arts. Microsoft copyright restrictions apply. Models of computation What

More information

Embedded Systems 8. Identifying, modeling and documenting how data moves around an information system. Dataflow modeling examines

Embedded Systems 8. Identifying, modeling and documenting how data moves around an information system. Dataflow modeling examines Embedded Systems 8 - - Dataflow modeling Identifying, modeling and documenting how data moves around an information system. Dataflow modeling examines processes (activities that transform data from one

More information

fakultät für informatik informatik 12 technische universität dortmund Modeling levels Peter Marwedel TU Dortmund, Informatik /11/07

fakultät für informatik informatik 12 technische universität dortmund Modeling levels Peter Marwedel TU Dortmund, Informatik /11/07 12 Peter Marwedel TU Dortmund, Informatik 12 2009/11/07 Graphics: Alexandra Nolte, Gesine Marwedel, 2003 Modeling levels Levels of hardware modeling Possible set of levels (others exist) System level Algorithmic

More information

Early design phases. Peter Marwedel TU Dortmund, Informatik /10/11. technische universität dortmund. fakultät für informatik informatik 12

Early design phases. Peter Marwedel TU Dortmund, Informatik /10/11. technische universität dortmund. fakultät für informatik informatik 12 12 Early design phases Peter Marwedel TU Dortmund, Informatik 12 2010/10/11 These slides use Microsoft clip arts. Microsoft copyright restrictions apply. Graphics: Alexandra Nolte, Gesine Marwedel, 2003

More information

Specifications and Modeling

Specifications and Modeling 12 Specifications and Modeling Peter Marwedel TU Dortmund, Informatik 12 2009/10/20 Graphics: Alexandra Nolte, Gesine Marwedel, 2003 Structure of this course 2: Specification Design repository Design Application

More information

EC-821 Advanced Embedded Systems (3+0)

EC-821 Advanced Embedded Systems (3+0) EC-821 Advanced Embedded Systems (3+0) Lecture 2 Specifications and Modelling I Requirements Dr Hashim Ali Spring - 2019 Department of Computer Science and Engineering HITEC University Taxila!1 Hypothetical

More information

Embedded Systems 7 BF - ES - 1 -

Embedded Systems 7 BF - ES - 1 - Embedded Systems 7-1 - Production system A modelbased realtime faultdiagnosis system for technical processes Ch. Steger, R. Weiss - 2 - Sprout Counter Flow Pipeline-Processor Based on a stream of data

More information

Specifications Part 1

Specifications Part 1 pm3 12 Specifications Part 1 Embedded System Design Kluwer Academic Publisher by Peter Marwedel TU Dortmund 2008/11/15 ine Marwedel, 2003 Graphics: Alexandra Nolte, Ges Introduction 12, 2008-2 - 1 Specification

More information

Comparison of models. Peter Marwedel Informatik 12, TU Dortmund, Germany 2010/11/07. technische universität dortmund

Comparison of models. Peter Marwedel Informatik 12, TU Dortmund, Germany 2010/11/07. technische universität dortmund 12 Comparison of models Peter Marwedel Informatik 12, TU Dortmund, Germany Graphics: Alexandra Nolte, Gesine Marwedel, 2003 These slides use Microsoft clip arts. Microsoft copyright restrictions apply.

More information

Imperative model of computation

Imperative model of computation 12 Imperative model of computation Jian-Jia Chen (Slides are based on Peter Marwedel) Informatik 12 TU Dortmund Germany Springer, 2010 2016 年 11 月 09 日 These slides use Microsoft clip arts. Microsoft copyright

More information

Embedded Systems CS - ES

Embedded Systems CS - ES Embedded Systems - 1 - Synchronous dataflow REVIEW Multiple tokens consumed and produced per firing Synchronous dataflow model takes advantage of this Each edge labeled with number of tokens consumed/produced

More information

fakultät für informatik informatik 12 technische universität dortmund Specifications Peter Marwedel TU Dortmund, Informatik /11/15

fakultät für informatik informatik 12 technische universität dortmund Specifications Peter Marwedel TU Dortmund, Informatik /11/15 12 Specifications Peter Marwedel TU Dortmund, Informatik 12 2008/11/15 Graphics: Alexandra Nolte, Gesine Marwedel, 2003 Structure of this course Application Knowledge 3: Embedded System HW 2: Specifications

More information

Imperative model of computation

Imperative model of computation 12 Imperative model of computation Peter Marwedel TU Dortmund, Informatik 12 Graphics: Alexandra Nolte, Gesine Marwedel, 2003 2010/10/28 These slides use Microsoft clip arts. Microsoft copyright restrictions

More information

Imperative model of computation

Imperative model of computation 12 Imperative model of computation Peter Marwedel Informatik 12 TU Dortmund Germany Springer, 2010 2012 年 11 月 07 日 These slides use Microsoft clip arts. Microsoft copyright restrictions apply. Models

More information

Discrete Event Models

Discrete Event Models 12 Discrete Event Models Jian-Jia Chen (slides are based on Peter Marwedel) TU Dortmund, Informatik 12 Germany Springer, 2010 2016 年 11 月 08 日 These slides use Microsoft clip arts. Microsoft copyright

More information

Discrete Event Models

Discrete Event Models 12 Discrete Event Models Jian-Jia Chen (slides are based on Peter Marwedel) TU Dortmund, Informatik 12 Germany Springer, 2010 2014 年 10 月 28 日 These slides use Microsoft clip arts. Microsoft copyright

More information

Hardware Software Codesign

Hardware Software Codesign Hardware Software Codesign 2. Specification and Models of Computation Lothar Thiele 2-1 System Design Specification System Synthesis Estimation SW-Compilation Intellectual Prop. Code Instruction Set HW-Synthesis

More information

Specifications Part 3

Specifications Part 3 pm4 12 Specifications Part 3 Embedded System Design Kluwer Academic Publisher by Peter Marwedel TU Dortmund 2008/11/15 ine Marwedel, 2003 Graphics: Alexandra Nolte, Ges Models of computation considered

More information

Petri Nets ee249 Fall 2000

Petri Nets ee249 Fall 2000 Petri Nets ee249 Fall 2000 Marco Sgroi Most slides borrowed from Luciano Lavagno s lecture ee249 (1998) 1 Models Of Computation for reactive systems Main MOCs: Communicating Finite State Machines Dataflow

More information

Overview of Dataflow Languages. Waheed Ahmad

Overview of Dataflow Languages. Waheed Ahmad Overview of Dataflow Languages Waheed Ahmad w.ahmad@utwente.nl The purpose of models is not to fit the data but to sharpen the questions. Samuel Karlins 11 th R.A Fisher Memorial Lecture Royal Society

More information

EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization

EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization Dataflow Lecture: SDF, Kahn Process Networks Stavros Tripakis University of California, Berkeley Stavros Tripakis: EECS

More information

EE382V: System-on-a-Chip (SoC) Design

EE382V: System-on-a-Chip (SoC) Design EE382V: System-on-a-Chip (SoC) Design Lecture 8 HW/SW Co-Design Sources: Prof. Margarida Jacome, UT Austin Andreas Gerstlauer Electrical and Computer Engineering University of Texas at Austin gerstl@ece.utexas.edu

More information

Outline. Petri nets. Introduction Examples Properties Analysis techniques. 1 EE249Fall04

Outline. Petri nets. Introduction Examples Properties Analysis techniques. 1 EE249Fall04 Outline Petri nets Introduction Examples Properties Analysis techniques 1 Petri Nets (PNs) Model introduced by C.A. Petri in 1962 Ph.D. Thesis: Communication with Automata Applications: distributed computing,

More information

Dataflow Languages. Languages for Embedded Systems. Prof. Stephen A. Edwards. March Columbia University

Dataflow Languages. Languages for Embedded Systems. Prof. Stephen A. Edwards. March Columbia University Dataflow Languages Languages for Embedded Systems Prof. Stephen A. Edwards Columbia University March 2009 Philosophy of Dataflow Languages Drastically different way of looking at computation Von Neumann

More information

Fundamental Algorithms for System Modeling, Analysis, and Optimization

Fundamental Algorithms for System Modeling, Analysis, and Optimization Fundamental Algorithms for System Modeling, Analysis, and Optimization Stavros Tripakis, Edward A. Lee UC Berkeley EECS 144/244 Fall 2014 Copyright 2014, E. A. Lee, J. Roydhowdhury, S. A. Seshia, S. Tripakis

More information

Embedded & Real-time Operating Systems Communication Libraries

Embedded & Real-time Operating Systems Communication Libraries Embedded & Real-time Operating Systems Communication Libraries Jian-Jia Chen (Slides are based on Peter Marwedel) TU Dortmund, Informatik 12 Germany Springer, 2010 2017 年 11 月 28 日 These slides use Microsoft

More information

Hardware-Software Codesign. 6. System Simulation

Hardware-Software Codesign. 6. System Simulation Hardware-Software Codesign 6. System Simulation Lothar Thiele 6-1 System Design specification system simulation (this lecture) (worst-case) perf. analysis (lectures 10-11) system synthesis estimation SW-compilation

More information

Building Synchronous DataFlow graphs with UML & MARTE/CCSL

Building Synchronous DataFlow graphs with UML & MARTE/CCSL Building Synchronous DataFlow graphs with UML & MARTE/CCSL F. Mallet, J. DeAntoni, C. André, R. de Simone Aoste - INRIA/I3S Université de Nice Sophia Antipolis UML & Formal methods Ambiguity and structural

More information

Hardware Description Languages & System Description Languages Properties

Hardware Description Languages & System Description Languages Properties Hardware Description Languages & System Description Languages Properties There is a need for executable specification language that is capable of capturing the functionality of the system in a machine-readable

More information

Hierarchical FSMs with Multiple CMs

Hierarchical FSMs with Multiple CMs Hierarchical FSMs with Multiple CMs Manaloor Govindarajan Balasubramanian Manikantan Bharathwaj Muthuswamy (aka Bharath) Reference: Hierarchical FSMs with Multiple Concurrency Models. Alain Girault, Bilung

More information

Hardware Description Languages & System Description Languages Properties

Hardware Description Languages & System Description Languages Properties Hardware Description Languages & System Description Languages Properties There is a need for executable specification language that is capable of capturing the functionality of the system in a machine-readable

More information

Applying Models of Computation to OpenCL Pipes for FPGA Computing. Nachiket Kapre + Hiren Patel

Applying Models of Computation to OpenCL Pipes for FPGA Computing. Nachiket Kapre + Hiren Patel Applying Models of Computation to OpenCL Pipes for FPGA Computing Nachiket Kapre + Hiren Patel nachiket@uwaterloo.ca Outline Models of Computation and Parallelism OpenCL code samples Synchronous Dataflow

More information

Compositionality in Synchronous Data Flow: Modular Code Generation from Hierarchical SDF Graphs

Compositionality in Synchronous Data Flow: Modular Code Generation from Hierarchical SDF Graphs Compositionality in Synchronous Data Flow: Modular Code Generation from Hierarchical SDF Graphs Stavros Tripakis Dai Bui Marc Geilen Bert Rodiers Edward A. Lee Electrical Engineering and Computer Sciences

More information

Hardware/Software Co-design

Hardware/Software Co-design Hardware/Software Co-design Zebo Peng, Department of Computer and Information Science (IDA) Linköping University Course page: http://www.ida.liu.se/~petel/codesign/ 1 of 52 Lecture 1/2: Outline : an Introduction

More information

By: Chaitanya Settaluri Devendra Kalia

By: Chaitanya Settaluri Devendra Kalia By: Chaitanya Settaluri Devendra Kalia What is an embedded system? An embedded system Uses a controller to perform some function Is not perceived as a computer Software is used for features and flexibility

More information

Petri Nets: Properties, Applications, and Variations. Matthew O'Brien University of Pittsburgh

Petri Nets: Properties, Applications, and Variations. Matthew O'Brien University of Pittsburgh Petri Nets: Properties, Applications, and Variations Matthew O'Brien University of Pittsburgh Introduction A Petri Net is a graphical and mathematical modeling tool used to describe and study information

More information

Petri Nets. Petri Nets. Petri Net Example. Systems are specified as a directed bipartite graph. The two kinds of nodes in the graph:

Petri Nets. Petri Nets. Petri Net Example. Systems are specified as a directed bipartite graph. The two kinds of nodes in the graph: System Design&Methodologies Fö - 1 System Design&Methodologies Fö - 2 Petri Nets 1. Basic Petri Net Model 2. Properties and Analysis of Petri Nets 3. Extended Petri Net Models Petri Nets Systems are specified

More information

Actor-Oriented Design: Concurrent Models as Programs

Actor-Oriented Design: Concurrent Models as Programs Actor-Oriented Design: Concurrent Models as Programs Edward A. Lee Professor, UC Berkeley Director, Center for Hybrid and Embedded Software Systems (CHESS) Parc Forum Palo Alto, CA May 13, 2004 Abstract

More information

Programming Languages for Real-Time Systems. LS 12, TU Dortmund

Programming Languages for Real-Time Systems. LS 12, TU Dortmund Programming Languages for Real-Time Systems Prof. Dr. Jian-Jia Chen LS 12, TU Dortmund 20 June 2016 Prof. Dr. Jian-Jia Chen (LS 12, TU Dortmund) 1 / 41 References Slides are based on Prof. Wang Yi, Prof.

More information

TKT-1527 Digital System Design Issues Tero Arpinen. Introduction to SoC modeling and Models of Computation

TKT-1527 Digital System Design Issues Tero Arpinen. Introduction to SoC modeling and Models of Computation TKT-1527 Digital System Design Issues Tero Arpinen Introduction to SoC modeling and Models of Computation 1 Reference material A. Jantsch and I. Sander, Models of computation and languages for embedded

More information

ESE532: System-on-a-Chip Architecture. Today. Process. Message FIFO. Thread. Dataflow Process Model Motivation Issues Abstraction Recommended Approach

ESE532: System-on-a-Chip Architecture. Today. Process. Message FIFO. Thread. Dataflow Process Model Motivation Issues Abstraction Recommended Approach ESE53: System-on-a-Chip Architecture Day 5: January 30, 07 Dataflow Process Model Today Dataflow Process Model Motivation Issues Abstraction Recommended Approach Message Parallelism can be natural Discipline

More information

HW/SW Codesign. Exercise 2: Kahn Process Networks and Synchronous Data Flows

HW/SW Codesign. Exercise 2: Kahn Process Networks and Synchronous Data Flows HW/SW Codesign Exercise 2: Kahn Process Networks and Synchronous Data Flows 4. October 2017 Stefan Draskovic stefan.draskovic@tik.ee.ethz.ch slides by: Mirela Botezatu 1 Kahn Process Network (KPN) Specification

More information

System Design and Methodology/ Embedded Systems Design (Modeling and Design of Embedded Systems)

System Design and Methodology/ Embedded Systems Design (Modeling and Design of Embedded Systems) Design&Methodologies Fö 1&2-1 Design&Methodologies Fö 1&2-2 Course Information Design and Methodology/ Embedded s Design (Modeling and Design of Embedded s) TDTS07/TDDI08 Web page: http://www.ida.liu.se/~tdts07

More information

Model-based Embedded Systems Design - Introduction, Motivation

Model-based Embedded Systems Design - Introduction, Motivation Model-based Embedded Systems Design - Introduction, Motivation and Overview - Peter Marwedel Informatik 12 TU Dortmund Germany Graphics: Alexandra Nolte, Gesine Marwedel, 2003 2010/06/25 These slides use

More information

Extensions of Daedalus Todor Stefanov

Extensions of Daedalus Todor Stefanov Extensions of Daedalus Todor Stefanov Leiden Embedded Research Center, Leiden Institute of Advanced Computer Science Leiden University, The Netherlands Overview of Extensions in Daedalus DSE limited to

More information

Modelling, Analysis and Scheduling with Dataflow Models

Modelling, Analysis and Scheduling with Dataflow Models technische universiteit eindhoven Modelling, Analysis and Scheduling with Dataflow Models Marc Geilen, Bart Theelen, Twan Basten, Sander Stuijk, AmirHossein Ghamarian, Jeroen Voeten Eindhoven University

More information

Embedded system design with multiple languages

Embedded system design with multiple languages Embedded system design with multiple languages Rolf Ernst Institut für Datenverarbeitungsanlagen Technical University of Braunschweig Hans-Sommer-Str. 66 D-38106 Braunschweig Germany Tel.: ++49 531 391

More information

CPEG 852 Advanced Topics in Computing Systems The Dataflow Model of Computation

CPEG 852 Advanced Topics in Computing Systems The Dataflow Model of Computation CPEG 852 Advanced Topics in Computing Systems The Dataflow Model of Computation Stéphane Zuckerman Computer Architecture & Parallel Systems Laboratory Electrical & Computer Engineering Dept. University

More information

Codesign Framework. Parts of this lecture are borrowed from lectures of Johan Lilius of TUCS and ASV/LL of UC Berkeley available in their web.

Codesign Framework. Parts of this lecture are borrowed from lectures of Johan Lilius of TUCS and ASV/LL of UC Berkeley available in their web. Codesign Framework Parts of this lecture are borrowed from lectures of Johan Lilius of TUCS and ASV/LL of UC Berkeley available in their web. Embedded Processor Types General Purpose Expensive, requires

More information

CA441 BPM - Modelling Workflow with Petri Nets. Modelling Workflow with Petri Nets. Workflow Management Issues. Workflow. Process.

CA441 BPM - Modelling Workflow with Petri Nets. Modelling Workflow with Petri Nets. Workflow Management Issues. Workflow. Process. Modelling Workflow with Petri Nets 1 Workflow Management Issues Georgakopoulos,Hornick, Sheth Process Workflow specification Workflow Implementation =workflow application Business Process Modelling/ Workflow

More information

Embedded Systems Requirements Verification Using HiLeS Designer

Embedded Systems Requirements Verification Using HiLeS Designer Embedded Systems Requirements Verification Using HiLeS Designer C-E. Gómez 1,3, J-C. Pascal 1,2, P. Esteban 1,2, Y. Déléris 4, J-R. Devatine 5 1: CNRS; LAAS; 7 avenue du colonel Roche, F-31077 Toulouse,

More information

Introduction to Electronic Design Automation. Model of Computation. Model of Computation. Model of Computation

Introduction to Electronic Design Automation. Model of Computation. Model of Computation. Model of Computation Introduction to Electronic Design Automation Model of Computation Jie-Hong Roland Jiang 江介宏 Department of Electrical Engineering National Taiwan University Spring 03 Model of Computation In system design,

More information

SysteMoC. Verification and Refinement of Actor-Based Models of Computation

SysteMoC. Verification and Refinement of Actor-Based Models of Computation SysteMoC Verification and Refinement of Actor-Based Models of Computation Joachim Falk, Jens Gladigau, Christian Haubelt, Joachim Keinert, Martin Streubühr, and Jürgen Teich {falk, haubelt}@cs.fau.de Hardware-Software-Co-Design

More information

DIGITAL VS. ANALOG SIGNAL PROCESSING Digital signal processing (DSP) characterized by: OUTLINE APPLICATIONS OF DIGITAL SIGNAL PROCESSING

DIGITAL VS. ANALOG SIGNAL PROCESSING Digital signal processing (DSP) characterized by: OUTLINE APPLICATIONS OF DIGITAL SIGNAL PROCESSING 1 DSP applications DSP platforms The synthesis problem Models of computation OUTLINE 2 DIGITAL VS. ANALOG SIGNAL PROCESSING Digital signal processing (DSP) characterized by: Time-discrete representation

More information

The Future of the Ptolemy Project

The Future of the Ptolemy Project The Future of the Ptolemy Project Edward A. Lee UC Berkeley With thanks to the entire Ptolemy Team. Ptolemy Miniconference Berkeley, CA, March 22-23, 2001 The Problem Composition Decomposition Corba? TAO?

More information

Discrete Event Models

Discrete Event Models 12 Discrete Event Models Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics: Alexandra Nolte, Gesine Marwedel, 2003 2011 年 11 月 06 日 These slides use Microsoft clip arts. Microsoft copyright restrictions

More information

Simulation of LET Models in Simulink and Ptolemy

Simulation of LET Models in Simulink and Ptolemy Simulation of LET Models in Simulink and Ptolemy P. Derler, A. Naderlinger, W. Pree, S. Resmerita, J. Templ Monterey Workshop 2008, Budapest, Sept. 24-26, 2008 C. Doppler Laboratory Embedded Software Systems

More information

EE249 Discussion Petri Nets: Properties, Analysis and Applications - T. Murata. Chang-Ching Wu 10/9/2007

EE249 Discussion Petri Nets: Properties, Analysis and Applications - T. Murata. Chang-Ching Wu 10/9/2007 EE249 Discussion Petri Nets: Properties, Analysis and Applications - T. Murata Chang-Ching Wu 10/9/2007 What are Petri Nets A graphical & modeling tool. Describe systems that are concurrent, asynchronous,

More information

HYBRID PETRI NET MODEL BASED DECISION SUPPORT SYSTEM. Janetta Culita, Simona Caramihai, Calin Munteanu

HYBRID PETRI NET MODEL BASED DECISION SUPPORT SYSTEM. Janetta Culita, Simona Caramihai, Calin Munteanu HYBRID PETRI NET MODEL BASED DECISION SUPPORT SYSTEM Janetta Culita, Simona Caramihai, Calin Munteanu Politehnica University of Bucharest Dept. of Automatic Control and Computer Science E-mail: jculita@yahoo.com,

More information

Process Modelling using Petri Nets

Process Modelling using Petri Nets Process Modelling using Petri Nets Katalina Grigorova Abstract: This paper discusses the reasons, which impose Petri nets as a conceptual standard for modelling and analysis of workflow. Petri nets notation

More information

From synchronous models to distributed, asynchronous architectures

From synchronous models to distributed, asynchronous architectures From synchronous models to distributed, asynchronous architectures Stavros Tripakis Joint work with Claudio Pinello, Cadence Alberto Sangiovanni-Vincentelli, UC Berkeley Albert Benveniste, IRISA (France)

More information

Chapter 4. Capturing the Requirements. 4th Edition. Shari L. Pfleeger Joanne M. Atlee

Chapter 4. Capturing the Requirements. 4th Edition. Shari L. Pfleeger Joanne M. Atlee Chapter 4 Capturing the Requirements Shari L. Pfleeger Joanne M. Atlee 4th Edition It is important to have standard notations for modeling, documenting, and communicating decisions Modeling helps us to

More information

CS294-48: Hardware Design Patterns Berkeley Hardware Pattern Language Version 0.5. Krste Asanovic UC Berkeley Fall 2009

CS294-48: Hardware Design Patterns Berkeley Hardware Pattern Language Version 0.5. Krste Asanovic UC Berkeley Fall 2009 CS294-48: Hardware Design Patterns Berkeley Hardware Pattern Language Version 0.5 Krste Asanovic UC Berkeley Fall 2009 Overall Problem Statement MP3 bit string Audio Application(s) (Berkeley) Hardware

More information

EE382N.23: Embedded System Design and Modeling

EE382N.23: Embedded System Design and Modeling EE38N.3: Embedded System Design and Modeling Lecture 5 Process-Based MoCs Andreas Gerstlauer Electrical and Computer Engineering University of Texas at Austin gerstl@ece.utexas.edu Lecture 5: Outline Process-based

More information

A Schedulability-Preserving Transformation Scheme from Boolean- Controlled Dataflow Networks to Petri Nets

A Schedulability-Preserving Transformation Scheme from Boolean- Controlled Dataflow Networks to Petri Nets Schedulability-Preserving ransformation Scheme from oolean- ontrolled Dataflow Networks to Petri Nets ong Liu Edward. Lee University of alifornia at erkeley erkeley,, 94720, US {congliu,eal}@eecs. berkeley.edu

More information

Concurrent Component Patterns, Models of Computation, and Types

Concurrent Component Patterns, Models of Computation, and Types Concurrent Component Patterns, Models of Computation, and Types Edward A. Lee Yuhong Xiong Department of Electrical Engineering and Computer Sciences University of California at Berkeley Presented at Fourth

More information

Inter-process communication (IPC)

Inter-process communication (IPC) Inter-process communication (IPC) We have studied IPC via shared data in main memory. Processes in separate address spaces also need to communicate. Consider system architecture both shared memory and

More information

Petri Net-based Thread Composition for Improved System Level Simulation

Petri Net-based Thread Composition for Improved System Level Simulation Petri Net-based Thread Composition for Improved System Level Simulation Nick Savoiu UC Irvine savoiu@ics.uci.edu Sandeep K. Shukla Virginia Tech shukla@vt.edu Rajesh K. Gupta UC San Diego gupta@cs.ucsd.edu

More information

Programming Embedded Systems

Programming Embedded Systems Programming Embedded Systems Lecture 10 An introduction to Lustre Wednesday Feb 15, 2012 Philipp Rümmer Uppsala University Philipp.Ruemmer@it.uu.se 1/34 Course topic: programming lang. Which language to

More information

Software Synthesis from Dataflow Models for G and LabVIEW

Software Synthesis from Dataflow Models for G and LabVIEW Software Synthesis from Dataflow Models for G and LabVIEW Hugo A. Andrade Scott Kovner Department of Electrical and Computer Engineering University of Texas at Austin Austin, TX 78712 andrade@mail.utexas.edu

More information

UC Berkeley Mobies Technology Project

UC Berkeley Mobies Technology Project UC Berkeley Mobies Technology Project Process-Based Software Components for Networked Embedded Systems PI: Edward Lee CoPI: Tom Henzinger Heterogeneous Modeling Discrete-Event RAM mp I/O DSP DXL ASIC Hydraulic

More information

EE382V: Embedded System Design and Modeling

EE382V: Embedded System Design and Modeling EE382V: Embedded System Design and Models of Computation Andreas Gerstlauer Electrical and Computer Engineering University of Texas at Austin gerstl@ece.utexas.edu : Outline Models of Computation (MoCs)

More information

Adaptive Stream Mining: A Novel Dynamic Computing Paradigm for Knowledge Extraction

Adaptive Stream Mining: A Novel Dynamic Computing Paradigm for Knowledge Extraction Adaptive Stream Mining: A Novel Dynamic Computing Paradigm for Knowledge Extraction AFOSR DDDAS Program PI Meeting Presentation PIs: Shuvra S. Bhattacharyya, University of Maryland Mihaela van der Schaar,

More information

Hardware/ Software Partitioning

Hardware/ Software Partitioning Hardware/ Software Partitioning Peter Marwedel TU Dortmund, Informatik 12 Germany Marwedel, 2003 Graphics: Alexandra Nolte, Gesine 2011 年 12 月 09 日 These slides use Microsoft clip arts. Microsoft copyright

More information

Concurrent Models of Computation

Concurrent Models of Computation Chapter 5 Concurrent Models of Computation Contents 5.1 Structure of Models....................... 117 5.2 Synchronous-Reactive Models................. 118 Sidebar: Actor Networks as a System of Equations.......

More information

Actors and their composition. Jörn W. Janneck

Actors and their composition. Jörn W. Janneck Actors and their composition Jörn W. Janneck Memorandum No. UCB/ERL M02/37 Electronics Research Laboratory University of California at Berkeley 18 December 2002 Actors and their composition Jörn W. Janneck

More information

Computational Process Networks a model and framework for high-throughput signal processing

Computational Process Networks a model and framework for high-throughput signal processing Computational Process Networks a model and framework for high-throughput signal processing Gregory E. Allen Ph.D. Defense 25 April 2011 Committee Members: James C. Browne Craig M. Chase Brian L. Evans

More information

Parallel Programming Concepts. Theory of Concurrency - Multicomputer. Peter Tröger

Parallel Programming Concepts. Theory of Concurrency - Multicomputer. Peter Tröger Parallel Programming Concepts Theory of Concurrency - Multicomputer Peter Tröger Von Neumann Model Process Processor Pipelining Super-scalar VLIW Branch prediction... Process Processor Processor Processor

More information

Concurrent Models of Computation

Concurrent Models of Computation Concurrent Models of Computation Edward A. Lee Robert S. Pepper Distinguished Professor, UC Berkeley EECS 219D: Concurrent Models of Computation Fall 2011 Copyright 2011, Edward A. Lee, All rights reserved

More information

A Framework for the Design of Mixed-Signal Systems with Polymorphic Signals

A Framework for the Design of Mixed-Signal Systems with Polymorphic Signals A Framework for the Design of Mixed-Signal Systems with Polymorphic Signals Rüdiger Schroll *1) Wilhelm Heupke *1) Klaus Waldschmidt *1) Christoph Grimm *2) *1) Technische Informatik *2) Institut für Mikroelektronische

More information

Towards Formalizing Domain-specific Modeling Languages. Kai Chen Janos Sztipanovits Sandeep Neema

Towards Formalizing Domain-specific Modeling Languages. Kai Chen Janos Sztipanovits Sandeep Neema Towards Formalizing Domain-specific Modeling Languages Kai Chen Janos Sztipanovits Sandeep Neema Outline! DSML overview! Framework for DSML design Syntax definition Semantic domain specification Semantic

More information

Software Synthesis Trade-offs in Dataflow Representations of DSP Applications

Software Synthesis Trade-offs in Dataflow Representations of DSP Applications in Dataflow Representations of DSP Applications Shuvra S. Bhattacharyya Department of Electrical and Computer Engineering, and Institute for Advanced Computer Studies University of Maryland, College Park

More information

Lecture 2: Models of Computation

Lecture 2: Models of Computation COEN 691B: Embedded System Design Lecture 2: Models of Computation Samar Abdi (slides courtesy of A. Gerstlauer, D. Gajski and R. Doemer) Assistant Professor Electrical and Computer Engineering Concordia

More information

CSE237a Final Exam Winter Prof. Tajana Simunic Rosing. Problem Maximum points Points earned Total 100

CSE237a Final Exam Winter Prof. Tajana Simunic Rosing. Problem Maximum points Points earned Total 100 CSE237a Final Exam Winter 2018 Name: PID: Problem Maximum points Points earned 1 15 2 10 3 15 4 20 5 20 6 20 Total 100 Instructions 1. Write your name on every page. 2. Please make sure your writing is

More information

Modeling Embedded Systems. Tajana Simunic Rosing Department of Computer Science and Engineering University of California, San Diego.

Modeling Embedded Systems. Tajana Simunic Rosing Department of Computer Science and Engineering University of California, San Diego. Modeling Embedded Systems Tajana Simunic Rosing Department of Computer Science and Engineering University of California, San Diego. 1 ES Design Hardware components Hardware 2 Tajana Simunic Rosing Verification

More information

HW/SW Design Space Exploration on the Production Cell Setup

HW/SW Design Space Exploration on the Production Cell Setup HW/SW Design Space Exploration on the Production Cell Setup Communicating Process Architectures 2009, Formal Methods Week Eindhoven University of Technology, The Netherlands, 04-11-2009 Marcel A. Groothuis,

More information

MANUFACTURING SYSTEM MODELING USING PETRI NETS

MANUFACTURING SYSTEM MODELING USING PETRI NETS International Conference on Economic Engineering and Manufacturing Systems Braşov, 26 27 November 2009 MANUFACTURING SYSTEM MODELING USING PETRI NETS Daniela COMAN, Adela IONESCU, Mihaela FLORESCU University

More information

LabVIEW Based Embedded Design [First Report]

LabVIEW Based Embedded Design [First Report] LabVIEW Based Embedded Design [First Report] Sadia Malik Ram Rajagopal Department of Electrical and Computer Engineering University of Texas at Austin Austin, TX 78712 malik@ece.utexas.edu ram.rajagopal@ni.com

More information

Universal Plug and Play Machine Models Modeling with Distributed Abstract State Machines

Universal Plug and Play Machine Models Modeling with Distributed Abstract State Machines Universal Plug and Play Machine Models Modeling with Distributed Abstract State Machines Uwe Glässer glaesser@upb.de Heinz Nixdorf Institute, Paderborn, Germany Margus Veanes margus@microsoft.com Microsoft

More information

Model Based Software Engineering, Graph Grammars and Graph Transformations

Model Based Software Engineering, Graph Grammars and Graph Transformations Model Based Software Engineering, Graph Grammars and Graph Transformations Area Paper Aditya Agrawal March 2004 Committee: Gabor Karsai, Chair Janos Sztipanovits Doug Schmidt Jeremy Spinrad Mark Ellingham

More information

2. Introduction to Software for Embedded Systems

2. Introduction to Software for Embedded Systems 2. Introduction to Software for Embedded Systems Lothar Thiele ETH Zurich, Switzerland 2-1 Contents of Lectures (Lothar Thiele) 1. Introduction to Embedded System Design 2. Software for Embedded Systems

More information

Łabiak G., Miczulski P. (IIE, UZ, Zielona Góra, Poland)

Łabiak G., Miczulski P. (IIE, UZ, Zielona Góra, Poland) UML STATECHARTS AND PETRI NETS MODEL COMPARIS FOR SYSTEM LEVEL MODELLING Łabiak G., Miczulski P. (IIE, UZ, Zielona Góra, Poland) The system level modelling can be carried out with using some miscellaneous

More information

Interaction Testing. Chapter 15

Interaction Testing. Chapter 15 Interaction Testing Chapter 15 Interaction faults and failures Subtle Difficult to detect with testing Usually seen after systems have been delivered In low probability threads Occur after a long time

More information

A Deterministic Concurrent Language for Embedded Systems

A Deterministic Concurrent Language for Embedded Systems A Deterministic Concurrent Language for Embedded Systems Stephen A. Edwards Columbia University Joint work with Olivier Tardieu SHIM:A Deterministic Concurrent Language for Embedded Systems p. 1/30 Definition

More information

CODING TCPN MODELS INTO THE SIMIO SIMULATION ENVIRONMENT

CODING TCPN MODELS INTO THE SIMIO SIMULATION ENVIRONMENT CODING TCPN MODELS INTO THE SIMIO SIMULATION ENVIRONMENT Miguel Mujica (a), Miquel Angel Piera (b) (a,b) Autonomous University of Barcelona, Faculty of Telecommunications and Systems Engineering, 08193,

More information