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

Size: px
Start display at page:

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

Transcription

1 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, Hardware-Software-Co-Design University Erlangen-Nuremberg, Germany

2 Outline Introduction to SysteMoC Quasi-Static-Scheduling (QSS) Scheduling with non-determinate transitions Applying QSS to SysteMoC Handling non-determinate transitions Conclusions 2

3 SystemC-based designs Fact: Restricted MoCs allow efficient analysis and represent a good tradeoff between expressiveness and analyzability: Can be exploited by code generators to produce efficient code. Can be used by verification tools to check system properties. However, there are many (infinite) ways to represent MoCs in SystemC (undecidable). We need a well defined subset of SystemC SysteMoC www12.cs.fau.de/research/systemoc 3

4 Why SystemC? OK Good Best System Best Behavior OK OK Good OK Module Architecture Block SW HW Logic Structure 4

5 SystemC-based designs dup appr KPN i 2 (1) & o 1 (1) &!check i 1 (1) & o 1 (1) S start S loop i 2 (1) & o 2 (1) & check src loop What MoC? snk src loop snk dup appr SDF i 1 (1) & o 1 (1) & o 2 (1) SDF i 1 (1) & i 2 (1) & o 1 (1) S start S start 5

6 SysteMoC SysteMoC Future SR and CSP - Domains SysteMoC SysteMoC Elementary channels separating functionality and communication C++ syntax for specifying actor communication behavior as FSMs Facilities to extract these FSMs as well as the network connecting the actors Scheduler for dataflow MoC domain Etc. Elementary Channels Signal, timer, mutex, semaphore, FIFO, etc. C++ SystemC Core Language Modules Ports Processes Events Interfaces Channels Event-driven Simulation Kernel C++ Language Standard Data-Types 4-valued logic types (01zx) 4-valued logic vectors Bits and bit-vectors Arbitrary-precision integers Fixed-point numbers C++ user-defined types 6

7 SysteMoC Idea Network graph Provides communication infrastructure for its actors (directed graph, compare with DIF) Channel kind Gives semantics to the arrows in the network graph. Actor functionality Encodes the functions dup which transform the token values Firing FSM src Encodes communication behavior of an actor and triggers the actor functionality loop appr snk 7

8 Actors i 1 check supply forward store o 1 class class m_sqrloop: m_sqrloop: i public public smoc_actor smoc_actor { 2 { public: public: smoc_port_in<double> i1, i1, i2; i2; smoc_port_out<double> o1, o1, o2; o2; m_sqrloop(sc_module_name name) name) private: private: double double tosquare; tosquare; // // action action functions functions for for FSM FSM defined defined in in constructor constructor void void store() store() {{ tosquare tosquare = i2[0]; i2[0]; o1[0] o1[0] = i2[0]; i2[0]; }} void void supply() supply() {{ o1[0] o1[0] = tosquare; tosquare; }} void void forward() forward() {{ o2[0] o2[0] = i1[0]; i1[0]; }} // // guard guard functions functions for for FSM FSM defined defined in in constructor constructor bool boolcheck() const const {{ return return fabs(tosquare fabs(tosquare i1[0]*i1[0]) i1[0]*i1[0]) < ACCURACY_BOUND; }} smoc_firing_state smoc_firing_statestart; start; smoc_firing_state smoc_firing_stateloop; loop; }; }; 8 S start S loop o 2

9 Actors Input/Output pattern i 1 check supply store forward i 2 (1) & o 1 (1) / store i 1 (1) & o 1 (1) &!check / supply o 1 S start S loop i 2 o 2 i 1 (1) & o 2 (1) & check / forward m_sqrloop(sc_module_name name) name) :: smoc_actor( smoc_actor( name, name, start start )){ { start start = i2(1) i2(1) >> >> o1(1) o1(1) >> >> CALL(m_sqrloop::store) >> >> loop; loop; loop loop = (i1(1) (i1(1)&& && GUARD(m_sqrloop::check)) >> >> (o2(1)) (o2(1)) >> >> CALL(m_sqrloop::forward) >> >> start start (i1(1) (i1(1)&& &&!GUARD(m_sqrloop::check)) >> >> (o1(1)) (o1(1)) >> >> CALL(m_sqrloop::supply) >> >> loop; loop; }} Functionality condition 9

10 FunState, Thiele et al. [TSZ+99] transformative A q 1 3 B f 3 2 f 1 q 3 C 2 f f 2 2 f 4 f 5 q 2 f q 4 q 1 3/f 3 /f 4 q 4 =0 /f 2 q 2 2 /f 1 q 3 2/f 6 /f 5 q 4 >0/f 7 reactive 10

11 Dynamic scheduling Check each actor for enabled transitions Execute actions of enabled transitions Consume and produce tokens i 1 (1) & o 1 (1) / store i 2 (1) & o 1 (1) &!check / supply S start S loop i 2 (1) & o 2 (1) & check / forward 1) Evaluate expression 2) Execute action 3) Token consumption/ production 11

12 The Problem Dynamic scheduling at runtime costs time and resource overhead. Furthermore no predictions about the runtime behavior of the system are available. Solution: Partitioning the state space into compile time and run time determined state spaces and deriving from the compile time determined state space all possible scheduling decisions determinable. Quasi-Static-Scheduling 12

13 Outline Introduction to SysteMoC Quasi-Static-Scheduling (QSS) Scheduling with non-determinate transitions Applying QSS to SysteMoC Handling non-determinate transitions Conclusions 13

14 Symbolic Scheduling, Strehl et al. [STZ+99] A q 1 3 B f 3 2 f 1 q 3 C 2 f f 2 2 f 4 f 5 q 2 f q 4 q 1 3/f 3 /f 4 q 4 =0 /f 2 q 2 2 /f 1 q 3 2/f 6 /f 5 q 4 >0/f 7 14

15 Regular Finite State Machines Regular Finite State Machine (RFSM) represents all possible state and state transitions of the design Number of token on channels States of control FSM q 2 q 1 c=0 c=1 q 2 2/[0,-2] T q 1 1 c=1 /[-1,2] T /[1,0] T /[-1,1] T c=0 I 0 = [1,1] T 15

16 Analysis q 1 c=0 c=1 q 2 (c,q 1,q 2 ) (0,0,1) (0,0,0) /f 1 (0,1,1) /f 1 (0,1,0) /f 4 p/f 2 /f 4 (1,1,1) (0,0,3) _ p/f 3 p/f 2 _ p/f 3 (1,1,0) (0,0,2) Determination of a quasi-static schedule Deadlock detection 16

17 Conflicts are properties of transitions Symbolic scheduling as presented by Strehl et al. requires a clear distinction between compile time and runtime decisions, i.e., states are labeled as alternatives modeling scheduling possibilities or as conflicts representing 1 out of N runtime decisions. q 2 2/[0,-2] T q 1 1 c=1 /[-1,2] T /[1,0] T c=0 /[-1,1] T I 0 = [1,1] T However, the world is not always that simple. 17

18 Outline Introduction to SysteMoC Quasi-Static-Scheduling (QSS) Scheduling with non-determinate transitions Applying QSS to SysteMoC Handling non-determinate transitions Conclusions 18

19 Conflicts are properties of transitions Example: packet rewrite engine Actions f a and f b transform packets classified by guards g A and g B Thus, t 1 is in conflict with t 2, and vice versa Some packets require both transformations (g A & g B ) And t 1 and t 2 are an alternative for t 3 t 1 : i 1 (1) & o 1 (1) & g A / f a t 2 : i 1 (1) & o 1 (1) & g B / f b t 3 : i 1 (1) & o 1 (1) & g A & g B / f a,b i 1 t 3 s 0 t 1 t 2 o 1 Solution: Order graph (later) {t 3 } {t 1 } {t 2 } o 2 i 1 i 2 o 1 19

20 Multirates can be involved in conflicts Input and output patterns of conflicting transitions may differ. The conflicting transitions t 1 and t 2 may not always be enabled at the same instant of time c 2 x 0,2 t 4 t 3 t 2 x 1,1 t 4 t 1 t 3 t 2 x 2,0 a 1 s 0 t 1 i 1 c 1 o 1 s 0 t 3 a c 1 t 2 o 1 c 2 i 1 t 4 t 1 : i 1 (2) & o 1 (2) & g A / f a t 2 : i 1 (1) & o 1 (1) & g A / f b t 3 : i 1 (1) & o 1 (1) & g B / f c t 4 : i 1 (1) & o 1 (1) & g B / f d a 2 20

21 Scheduling with non-determinate transitions Our scheduling methodology improves on symbolic scheduling by the following points: Representation of full dynamic schedule: We use the unmodified existent model for scheduling and so avoid explicit construction of a schedule specification automaton. Detection of runtime decision: Transitions determine runtime decisions. A runtime decision is needed, if a non-determinate transition is used. This is more natural to the model designer than (manual) classification of state machine states into alternative and conflict states. Nature of conflicts: We can model and in particular cases schedule transitions with runtime conflicts and different rates. This case was not considered by Symbolic-Scheduling. Paths to plan: we plan only strictly needed paths, if similar transitions occur in conflicts. This is achieved by using so called order graphs. 21

22 Order graph Partial order on equivalence classes of transitions Transitions are equivalent if their functionality condition is equivalent and merged into equivalence classes. A partial order on these equivalence classes is defined by the implication operation on their functionality conditions. Order graph determines which transitions must be included in the quasi-static schedule. t 1 : i 1 (1) & o 1 (1) & g A / f a,1 t 2 : i 1 (1) & o 1 (1) & g B / f b t 3 : i 1 (1) & o 1 (1) & g A & g B / f a,b t 4 : i 1 (1) & o 1 (1) & g A / f a,2 Order graph: {t 3 } {t 1,t 4 } {t 2 } 22

23 Outline Introduction to SysteMoC Quasi-Static-Scheduling (QSS) Scheduling with non-determinate transitions Applying QSS to SysteMoC Handling non-determinate transitions Conclusions 23

24 Applying QSS to SysteMoC The compile time determined state spaces is defined by the fill sizes of all channels and the firing states of all actors. For each firing state in all actors the associated order graph is computed. The order graph encodes for each transition t leaving this state its set of conflicting transition equivalence classes conflict(t). If a transition t is used in a path at least one transition per equivalence class of conflict(t) must be included in the QSS to satisfy runtime conditions. 24

25 Handling non-determinate transitions findpath schedulegraph(a, G, Tdisabled, Tcover) (x0 -t0-> x1 -t1->... -tn- -> xn) = 1 findpath(a, G, Tdisabled, Tcover) expand G by (x0 -t0-> x1 -t1->... -tn- 1-> xn) for i = 0 to n-1 C = conflict(ti) foreach c in C G = schedulegraph( xi, G, implies(ti) Tdisabled, c) return G Order graph: {t3 } {t1,t4} {t2 } 25 25

26 Outline Introduction to SysteMoC Quasi-Static-Scheduling (QSS) Scheduling with non-determinate transitions Applying QSS to SysteMoC Handling non-determinate transitions Conclusions 26

27 Conclusions SysteMoC as basis to identify the underlying MoC in a SystemC design Quasi-static scheduling by enhancing the approach by Strehl et al. Current and future work Integrating the S/R domain into SysteMoC Identify and implement formal transformations, e.g., clustering, for synthesis on SysteMoC designs Extend symbolic approach used by quasi-static scheduling to support formal functional verification of SysteMoC designs 27

SystemCoDesigner: System Programming Tutorial

SystemCoDesigner: System Programming Tutorial SystemCoDesigner: System Programming Tutorial Martin Streubühr Falk Christian Zebelein Hardware/Software Co-Design Department of Computer Science University of Erlangen-Nuremberg Germany Version 1.2 Christian

More information

Throughput-optimizing Compilation of Dataflow Applications for Multi-Cores using Quasi-Static Scheduling

Throughput-optimizing Compilation of Dataflow Applications for Multi-Cores using Quasi-Static Scheduling Throughput-optimizing Compilation of Dataflow Applications for Multi-Cores using Quasi-Static Scheduling Tobias Schwarzer 1, Joachim Falk 1, Michael Glaß 1, Jürgen Teich 1, Christian Zebelein 2, Christian

More information

Automatic Generation of System-Level Virtual Prototypes from Streaming Application Models

Automatic Generation of System-Level Virtual Prototypes from Streaming Application Models Automatic Generation of System-Level Virtual Prototypes from Streaming Application Models Philipp Kutzer, Jens Gladigau, Christian Haubelt, and Jürgen Teich Hardware/Software Co-Design, Department of Computer

More information

SystemCoDesigner: Performance Modeling Tutorial

SystemCoDesigner: Performance Modeling Tutorial SystemCoDesigner: Performance Modeling Tutorial Martin Streubühr Sebastian Graf Hardware/Software Co-Design Department of Computer Science University of Erlangen-Nuremberg Germany Version 1.4 Christian

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

MoCC - Models of Computation and Communication SystemC as an Heterogeneous System Specification Language

MoCC - Models of Computation and Communication SystemC as an Heterogeneous System Specification Language SystemC as an Heterogeneous System Specification Language Eugenio Villar Fernando Herrera University of Cantabria Challenges Massive concurrency Complexity PCB MPSoC with NoC Nanoelectronics Challenges

More information

A System-Level Synthesis Approach from Formal Application Models to Generic Bus-Based MPSoCs

A System-Level Synthesis Approach from Formal Application Models to Generic Bus-Based MPSoCs A System-Level Synthesis Approach from Formal Application s to Generic Bus-Based MPSoCs Jens Gladigau 1, Andreas Gerstlauer 2, Christian Haubelt 1, Martin Streubühr 1, and Jürgen Teich 1 1 Department of

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

Classification of General Data Flow Actors into Known Models of Computation

Classification of General Data Flow Actors into Known Models of Computation Classification of General Data Flow Actors into Known Models of Computation Christian Zebelein, Joachim Falk, Christian Haubelt, and Jürgen Teich Hardware/Software Co-Design University Erlangen-Nuremberg,

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

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

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

SYSTEMCODESIGNER An Automatic ESL Synthesis Approach by Design Space Exploration and Behavioral Synthesis for Streaming Applications

SYSTEMCODESIGNER An Automatic ESL Synthesis Approach by Design Space Exploration and Behavioral Synthesis for Streaming Applications 1 SYSTEMCODESIGNER An Automatic ESL Synthesis Approach by Design Space Exploration and Behavioral Synthesis for Streaming Applications JOACHIM KEINERT, MARTIN STREUBŪHR, THOMAS SCHLICHTER, JOACHIM FALK,

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

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

SoC Design for the New Millennium Daniel D. Gajski

SoC Design for the New Millennium Daniel D. Gajski SoC Design for the New Millennium Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine www.cecs.uci.edu/~gajski Outline System gap Design flow Model algebra System environment

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

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

Actor-oriented Modeling and Simulation of Cut-through Communication in Network Controllers

Actor-oriented Modeling and Simulation of Cut-through Communication in Network Controllers In Proceedings of Methoden und Beschreibungssprachen zur Modellierung und Verifikation von Schaltungen und Systemen (MBMV), Kaiserslautern, Germany, March 05-07, 2012 Actor-oriented Modeling and Simulation

More information

Cover Page. The handle holds various files of this Leiden University dissertation

Cover Page. The handle   holds various files of this Leiden University dissertation Cover Page The handle http://hdl.handle.net/1887/32963 holds various files of this Leiden University dissertation Author: Zhai, Jiali Teddy Title: Adaptive streaming applications : analysis and implementation

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

Multicore DSP Software Synthesis using Partial Expansion of Dataflow Graphs

Multicore DSP Software Synthesis using Partial Expansion of Dataflow Graphs Multicore DSP Software Synthesis using Partial Expansion of Dataflow Graphs George F. Zaki, William Plishker, Shuvra S. Bhattacharyya University of Maryland, College Park, MD, USA & Frank Fruth Texas Instruments

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

Bridging Algorithm and ESL Design: Matlab/Simulink Model Transformation and Validation

Bridging Algorithm and ESL Design: Matlab/Simulink Model Transformation and Validation Bridging Algorithm and ESL Design: Matlab/Simulink Model Transformation and Validation Liyuan Zhang, Michael Glaß, Nils Ballmann, and Jürgen Teich Hardware/Software Co-Design, University of Erlangen-Nuremberg

More information

4 th European SystemC Users Group Meeting

4 th European SystemC Users Group Meeting 4 th European SystemC Users Group Meeting http://www-ti.informatik.uni-tuebingen.de/systemc Copenhagen October 5 th, 2001, 1100-1600 SystemC 2.0 Tutorial Thorsten Grötker R & D Manager Synopsys, Inc. Motivation

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

Outline. SLD challenges Platform Based Design (PBD) Leveraging state of the art CAD Metropolis. Case study: Wireless Sensor Network

Outline. SLD challenges Platform Based Design (PBD) Leveraging state of the art CAD Metropolis. Case study: Wireless Sensor Network By Alberto Puggelli Outline SLD challenges Platform Based Design (PBD) Case study: Wireless Sensor Network Leveraging state of the art CAD Metropolis Case study: JPEG Encoder SLD Challenge Establish a

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

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

Parameterized Modeling and Scheduling for Dataflow Graphs 1

Parameterized Modeling and Scheduling for Dataflow Graphs 1 Technical Report #UMIACS-TR-99-73, Institute for Advanced Computer Studies, University of Maryland at College Park, December 2, 999 Parameterized Modeling and Scheduling for Dataflow Graphs Bishnupriya

More information

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

Advanced Tool Architectures. Edited and Presented by Edward A. Lee, Co-PI UC Berkeley. Tool Projects. 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, 2004 Berkeley, CA Tool Projects Concurrent model-based design Giotto (Henzinger) E machine & S

More information

Hardware-Software Codesign. 1. Introduction

Hardware-Software Codesign. 1. Introduction Hardware-Software Codesign 1. Introduction Lothar Thiele 1-1 Contents What is an Embedded System? Levels of Abstraction in Electronic System Design Typical Design Flow of Hardware-Software Systems 1-2

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

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

Modeling Software with SystemC 3.0

Modeling Software with SystemC 3.0 Modeling Software with SystemC 3.0 Thorsten Grötker Synopsys, Inc. 6 th European SystemC Users Group Meeting Stresa, Italy, October 22, 2002 Agenda Roadmap Why Software Modeling? Today: What works and

More information

Process and data flow modeling

Process and data flow modeling Process and data flow modeling Vince Molnár Informatikai Rendszertervezés BMEVIMIAC01 Budapest University of Technology and Economics Fault Tolerant Systems Research Group Budapest University of Technology

More information

ANSI C CODE SYNTHESIS FOR MLDESIGNER FINITE STATE MACHINES

ANSI C CODE SYNTHESIS FOR MLDESIGNER FINITE STATE MACHINES 49. Internationales Wissenschaftliches Kolloquium Technische Universität Ilmenau 27.-30. September 2004 Holger Rath / Horst Salzwedel ANSI C CODE SYNTHESIS FOR MLDESIGNER FINITE STATE MACHINES Abstract

More information

Model-based Analysis of Event-driven Distributed Real-time Embedded Systems

Model-based Analysis of Event-driven Distributed Real-time Embedded Systems Model-based Analysis of Event-driven Distributed Real-time Embedded Systems Gabor Madl Committee Chancellor s Professor Nikil Dutt (Chair) Professor Tony Givargis Professor Ian Harris University of California,

More information

Classification of Dataflow Actors with Satisfiability and Abstract Interpretation

Classification of Dataflow Actors with Satisfiability and Abstract Interpretation Classification of Dataflow Actors with Satisfiability and Abstract Interpretation Matthieu Wipliez, Mickaël Raulet To cite this version: Matthieu Wipliez, Mickaël Raulet. Classification of Dataflow Actors

More information

Hierarchical Reconfiguration of Dataflow Models

Hierarchical Reconfiguration of Dataflow Models In Conference on Formal Methods and Models for Codesign (MEMOCODE) June 22-25, 2004 Hierarchical Reconfiguration of Dataflow Models Stephen Neuendorffer and Edward Lee EECS Department University of California

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

A Design Framework for Mapping Vectorized Synchronous Dataflow Graphs onto CPU-GPU Platforms

A Design Framework for Mapping Vectorized Synchronous Dataflow Graphs onto CPU-GPU Platforms A Design Framework for Mapping Vectorized Synchronous Dataflow Graphs onto CPU-GPU Platforms Shuoxin Lin, Yanzhou Liu, William Plishker, Shuvra Bhattacharyya Maryland DSPCAD Research Group Department of

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

FPGA implementations of Histograms of Oriented Gradients in FPGA

FPGA implementations of Histograms of Oriented Gradients in FPGA FPGA implementations of Histograms of Oriented Gradients in FPGA C. Bourrasset 1, L. Maggiani 2,3, C. Salvadori 2,3, J. Sérot 1, P. Pagano 2,3 and F. Berry 1 1 Institut Pascal- D.R.E.A.M - Aubière, France

More information

HW/SW Co-design. Design of Embedded Systems Jaap Hofstede Version 3, September 1999

HW/SW Co-design. Design of Embedded Systems Jaap Hofstede Version 3, September 1999 HW/SW Co-design Design of Embedded Systems Jaap Hofstede Version 3, September 1999 Embedded system Embedded Systems is a computer system (combination of hardware and software) is part of a larger system

More information

Hardware/Software Co-synthesis of DSP Systems

Hardware/Software Co-synthesis of DSP Systems Hardware/Software Co-synthesis of DSP Systems Department of Electrical and Computer Engineering, and Institute for Advanced Computer Studies University of Maryland, College Park This chapter focuses on

More information

Combined System Synthesis and Communication Architecture Exploration for MPSoCs

Combined System Synthesis and Communication Architecture Exploration for MPSoCs This is the author s version of the work. The definitive work was published in Proceedings of Design, Automation and Test in Europe (DATE 2009), pp. 472-477, 2009. The work is supported in part by the

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

Hierarchical Reconfiguration of Dataflow Models

Hierarchical Reconfiguration of Dataflow Models Please cite as: UC Berkeley ERL MEMO M04/2 Hierarchical Reconfiguration of Dataflow Models Stephen Neuendorffer and Edward Lee EECS Department University of California at Berkeley Berkeley, CA 94720, U.S.A.

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

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

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

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

Transaction Level Modeling with SystemC. Thorsten Grötker Engineering Manager Synopsys, Inc.

Transaction Level Modeling with SystemC. Thorsten Grötker Engineering Manager Synopsys, Inc. Transaction Level Modeling with SystemC Thorsten Grötker Engineering Manager Synopsys, Inc. Outline Abstraction Levels SystemC Communication Mechanism Transaction Level Modeling of the AMBA AHB/APB Protocol

More information

System Level Modeling and Performance Simulation for Dynamic Reconfigurable Computing Systems in SystemC

System Level Modeling and Performance Simulation for Dynamic Reconfigurable Computing Systems in SystemC In Methoden und Beschreibungssprachen zur Modellierung und Verifikation von Schaltungen und Systemen. by Christian Haubelt, Jürgen Teich (Eds.). GI/ITG/GMM-Workshop, Shaker Verlag, Aachen, March 5-7, 2007

More information

Lecture 4: Synchronous Data Flow Graphs - HJ94 goal: Skiing down a mountain

Lecture 4: Synchronous Data Flow Graphs - HJ94 goal: Skiing down a mountain Lecture 4: Synchronous ata Flow Graphs - I. Verbauwhede, 05-06 K.U.Leuven HJ94 goal: Skiing down a mountain SPW, Matlab, C pipelining, unrolling Specification Algorithm Transformations loop merging, compaction

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

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

System level modelling with open source tools

System level modelling with open source tools System level modelling with open source tools Mikkel Koefoed Jakobsen (mkoe@imm.dtu.dk) Jan Madsen (jan@imm.dtu.dk) Seyed Hosein Attarzadeh Niaki (shan2@kth.se) Ingo Sander (ingo@kth.se) Jan Hansen (jan@real-ear.com)

More information

Executing SyncCharts with Ptolemy

Executing SyncCharts with Ptolemy Executing SyncCharts with Christian Motika Real-Time Systems and Embedded Systems Group Department of Computer Science Christian-Albrechts-Universität zu Kiel, Germany KIEL ER SYNCHRON Workshop 2010 Frejús,

More information

Design Space Exploration

Design Space Exploration Design Space Exploration SS 2012 Jun.-Prof. Dr. Christian Plessl Custom Computing University of Paderborn Version 1.1.0 2012-06-15 Overview motivation for design space exploration design space exploration

More information

The Ptolemy II Framework for Visual Languages

The Ptolemy II Framework for Visual Languages The Ptolemy II Framework for Visual Languages Xiaojun Liu Yuhong Xiong Edward A. Lee Department of Electrical Engineering and Computer Sciences University of California at Berkeley Ptolemy II - Heterogeneous

More information

ECE 587 Hardware/Software Co-Design Lecture 12 Verification II, System Modeling

ECE 587 Hardware/Software Co-Design Lecture 12 Verification II, System Modeling ECE 587 Hardware/Software Co-Design Spring 2018 1/20 ECE 587 Hardware/Software Co-Design Lecture 12 Verification II, System Modeling Professor Jia Wang Department of Electrical and Computer Engineering

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

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

Lecture 2. Decidability and Verification

Lecture 2. Decidability and Verification Lecture 2. Decidability and Verification model temporal property Model Checker yes error-trace Advantages Automated formal verification, Effective debugging tool Moderate industrial success In-house groups:

More information

HW/SW Cyber-System Co-Design and Modeling

HW/SW Cyber-System Co-Design and Modeling HW/SW Cyber-System Co-Design and Modeling Julio OLIVEIRA Karol DESNOS Karol Desnos (IETR) & Julio Oliveira (TNO) 1 Introduction Who are we? Julio de OLIVEIRA Position: TNO - Researcher & innovation scientist

More information

An Integrated ASIP Design Flow for Digital Signal Processing Applications

An Integrated ASIP Design Flow for Digital Signal Processing Applications An Integrated ASIP Design Flow for Digital Signal Processing Applications (Invited Paper) Vladimír Guzma, Shuvra S. Bhattacharyya, Pertti Kellomäki, and Jarmo Takala Department of Computer Systems Tampere

More information

Fusing Dataflow with Finite State Machines

Fusing Dataflow with Finite State Machines May 3, 1996 U N T H E I V E R S I T Y A O F LE T TH E R E B E 1 8 6 8 LIG H T C A L I A I F O R N Fusing Dataflow with Finite State Machines Department of Electrical Engineering and Computer Science Bilung

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

Path Analysis. Ulrich Scholz TU Darmstadt. November 5th, 2001

Path Analysis. Ulrich Scholz TU Darmstadt. November 5th, 2001 Path Analysis Ulrich Scholz TU Darmstadt November 5th, 2001 Path Analysis Ulrich Scholz TU Darmstadt November 5th, 2001 work in progress Introduction: Preprocessing 1 Transformation of a problem into an

More information

Contents Part I Basic Concepts The Nature of Hardware and Software Data Flow Modeling and Transformation

Contents Part I Basic Concepts The Nature of Hardware and Software Data Flow Modeling and Transformation Contents Part I Basic Concepts 1 The Nature of Hardware and Software... 3 1.1 Introducing Hardware/Software Codesign... 3 1.1.1 Hardware... 3 1.1.2 Software... 5 1.1.3 Hardware and Software... 7 1.1.4

More information

Bluespec-4: Rule Scheduling and Synthesis. Synthesis: From State & Rules into Synchronous FSMs

Bluespec-4: Rule Scheduling and Synthesis. Synthesis: From State & Rules into Synchronous FSMs Bluespec-4: Rule Scheduling and Synthesis Arvind Computer Science & Artificial Intelligence Lab Massachusetts Institute of Technology Based on material prepared by Bluespec Inc, January 2005 March 2, 2005

More information

Hybrid System Modeling: Operational Semantics Issues

Hybrid System Modeling: Operational Semantics Issues Hybrid System Modeling: Operational Semantics Issues Edward A. Lee Professor UC Berkeley OMG Technical Meeting Feb. 4, 2004 Anaheim, CA, USA Special thanks to Jie Liu, Xiaojun Liu, Steve Neuendorffer,

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

Implementation of Lexical Analysis

Implementation of Lexical Analysis Implementation of Lexical Analysis Outline Specifying lexical structure using regular expressions Finite automata Deterministic Finite Automata (DFAs) Non-deterministic Finite Automata (NFAs) Implementation

More information

MODELING OF BLOCK-BASED DSP SYSTEMS

MODELING OF BLOCK-BASED DSP SYSTEMS MODELING OF BLOCK-BASED DSP SYSTEMS Dong-Ik Ko and Shuvra S. Bhattacharyya Department of Electrical and Computer Engineering, and Institute for Advanced Computer Studies University of Maryland, College

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

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

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

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

Hardware-Software Codesign. 1. Introduction

Hardware-Software Codesign. 1. Introduction Hardware-Software Codesign 1. Introduction Lothar Thiele 1-1 Contents What is an Embedded System? Levels of Abstraction in Electronic System Design Typical Design Flow of Hardware-Software Systems 1-2

More information

Cyber Physical System Verification with SAL

Cyber Physical System Verification with SAL Cyber Physical System Verification with July 22, 2013 Cyber Physical System Verification with Outline 1 2 3 4 5 Cyber Physical System Verification with Table of Contents 1 2 3 4 5 Cyber Physical System

More information

The UPPAAL Model Checker. Julián Proenza Systems, Robotics and Vision Group. UIB. SPAIN

The UPPAAL Model Checker. Julián Proenza Systems, Robotics and Vision Group. UIB. SPAIN The UPPAAL Model Checker Julián Proenza Systems, Robotics and Vision Group. UIB. SPAIN The aim of this presentation Introduce the basic concepts of model checking from a practical perspective Describe

More information

System-Level Modeling Environment: MLDesigner

System-Level Modeling Environment: MLDesigner System-Level Modeling Environment: MLDesigner Ankur Agarwal 1, Cyril-Daniel Iskander 2, Ravi Shankar 1, Georgiana Hamza-Lup 1 ankur@cse.fau.edu, cyril_iskander@hotmail.com, ravi@cse.fau.edu, ghamzal@fau.edu

More information

Topics. Verilog. Verilog vs. VHDL (2) Verilog vs. VHDL (1)

Topics. Verilog. Verilog vs. VHDL (2) Verilog vs. VHDL (1) Topics Verilog Hardware modeling and simulation Event-driven simulation Basics of register-transfer design: data paths and controllers; ASM charts. High-level synthesis Initially a proprietary language,

More information

Reactive Process Networks

Reactive Process Networks Reactive Process Networks Marc Geilen and Twan Basten Eindhoven University of Technology Department of Electrical Engineering P.O.Box 513, 5600 MB, Eindhoven, The Netherlands M.C.W.Geilen@tue.nl, A.A.Basten@tue.nl

More information

Introduction to Software Testing Chapter 2, Sec#: 2.5 Graph Coverage for Specifications

Introduction to Software Testing Chapter 2, Sec#: 2.5 Graph Coverage for Specifications Introduction to Software Testing Chapter 2, Sec#: 2.5 Graph Coverage for Specifications Paul Ammann & Jeff Offutt http://www.cs.gmu.edu/~offutt/softwa retest/ Design Specifications A design specification

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

Partitioning Methods. Outline

Partitioning Methods. Outline Partitioning Methods 1 Outline Introduction to Hardware-Software Codesign Models, Architectures, Languages Partitioning Methods Design Quality Estimation Specification Refinement Co-synthesis Techniques

More information

Counting Interface Automata and their Application in Static Analysis of Actor Models

Counting Interface Automata and their Application in Static Analysis of Actor Models Counting Interface Automata and their Application in Static Analysis of Actor Models Ernesto Wandeler Jörn W. Janneck Edward A. Lee Lothar Thiele Abstract We present an interface theory based approach

More information

Motivation: Model-driven. driven Engineering. Semantics of Model Transformation. Reiko Heckel University of Leicester, UK

Motivation: Model-driven. driven Engineering. Semantics of Model Transformation. Reiko Heckel University of Leicester, UK Semantics of Model Transformation Reiko Heckel University of Leicester, UK, University of Birmingham, 1 March 2007 Motivation: Model-driven driven Engineering Focus and primary artifacts are models instead

More information

Real Time & Embedded Systems. Final Exam - Review

Real Time & Embedded Systems. Final Exam - Review Real Time & Embedded Systems Final Exam - Review Final Exam Review Topics Finite State Machines RTOS Context switching Process states Mutex - purpose and application Blocking versus non-blocking Synchronous

More information

Rapid Prototyping for Digital Signal Processing Systems using Parameterized Synchronous Dataflow Graphs

Rapid Prototyping for Digital Signal Processing Systems using Parameterized Synchronous Dataflow Graphs In Proceedings of the International Symposium on Rapid System Prototyping, Fairfax, Virginia, June 200. Rapid Prototyping for Digital Signal Processing Systems using Parameterized Synchronous Dataflow

More information

Hardware Design and Simulation for Verification

Hardware Design and Simulation for Verification Hardware Design and Simulation for Verification by N. Bombieri, F. Fummi, and G. Pravadelli Universit`a di Verona, Italy (in M. Bernardo and A. Cimatti Eds., Formal Methods for Hardware Verification, Lecture

More information

Modal Models in Ptolemy

Modal Models in Ptolemy Modal Models in Ptolemy Edward A. Lee Stavros Tripakis UC Berkeley Workshop on Equation-Based Object-Oriented Modeling Languages and Tools 3rd International Workshop on Equation-Based Object-Oriented Modeling

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 Dynamic Dataflow Stéphane Zuckerman Computer Architecture & Parallel Systems Laboratory Electrical & Computer Engineering

More information

Heterogeneous Design in Functional DIF

Heterogeneous Design in Functional DIF Heterogeneous Design in Functional DIF William Plishker, Nimish Sane, Mary Kiemb, and Shuvra S. Bhattacharyya Department of Electrical and Computer Engineering, and Institute for Advanced Computer Studies,

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