Models of Computation for Embedded System Design Alvise Bonivento.

Slides:



Advertisements
Similar presentations
Embedded System, A Brief Introduction
Advertisements

Modelos de Computação Básicos Prof. Dr. César Augusto Missio Marcon Parcialmente extraído de trabalhos de Axel Jantch, Edward Lee e Alberto Sangiovanni-Vincentelli.
ES Seminar1 Communicating Transaction Processes P.S. Thiagarajan National University of Singapore Joint Work with: Abhik Roychoudhury; ……
The cardiac pacemaker – SystemJ versus Safety Critical Java Heejong Park, Avinash Malik, Muhammad Nadeem, and Zoran Salcic. University of Auckland, NZ.
Network Protocols Dr. Eng Amr T. Abdel-Hamid NETW 703 Winter 2006 Finite State Machines (FSMs)
DATAFLOW PROCESS NETWORKS Edward A. Lee Thomas M. Parks.
1Outline u Part 3: Models of Computation s FSMs s Discrete Event Systems s CFSMs s Data Flow Models s Petri Nets s The Tagged Signal Model.
Synthesis of Embedded Software Using Free-Choice Petri Nets.
PTIDES: Programming Temporally Integrated Distributed Embedded Systems Yang Zhao, EECS, UC Berkeley Edward A. Lee, EECS, UC Berkeley Jie Liu, Microsoft.
Type System, March 12, Data Types and Behavioral Types Yuhong Xiong Edward A. Lee Department of Electrical Engineering and Computer Sciences University.
1 Discrete Event u Explicit notion of time (global order…) u DE simulator maintains a global event queue (Verilog and VHDL) u Drawbacks s global event.
A denotational framework for comparing models of computation Daniele Gasperini.
Timing-Based Communication Refinement for CFSMs Presenters:Heloise Hse, Irene Po Mentors:Jonathan Martin, Marco Sgroi Professor:Alberto Sangiovanni-Vincentelli.
Overview Finite State Machines - Sequential circuits with inputs and outputs State Diagrams - An abstraction tool to visualize and analyze sequential circuits.
Behavioral Design Outline –Design Specification –Behavioral Design –Behavioral Specification –Hardware Description Languages –Behavioral Simulation –Behavioral.
Review of “Embedded Software” by E.A. Lee Katherine Barrow Vladimir Jakobac.
FunState – An Internal Design Representation for Codesign A model that enables representations of different types of system components. Mixture of functional.
AR vs. CFSM Abdallah Tabbara. CFSM Overview 4 CFSM has: –a finite state machine part –a data computation part –a locally synchronous behavior transitions.
1 Quasi-Static Scheduling of Embedded Software Using Free-Choice Petri Nets Marco Sgroi, Alberto Sangiovanni-Vincentelli Luciano Lavagno University of.
Design of Fault Tolerant Data Flow in Ptolemy II Mark McKelvin EE290 N, Fall 2004 Final Project.
Software Engineering, COMP201 Slide 1 Protocol Engineering Protocol Specification using CFSM model Lecture 30.
VHDL Intro What does VHDL stand for? VHSIC Hardware Description Language VHSIC = Very High Speed Integrated Circuit Developed in 1982 by Govt. to standardize.
Applying Ulysses to Bluetooth Alvise Bonivento Mentor: Marco Sgroi.
1Outline u Part 3: Models of Computation s FSMs s Discrete Event Systems s CFSMs s Data Flow Models s Petri Nets s The Tagged Signal Model.
Overview Finite State Machines - Sequential circuits with inputs and outputs State Diagrams - An abstraction tool to visualize and analyze sequential circuits.
Heterochronous Dataflow in Ptolemy II Brian K. Vogel EE249 Project Presentation, Dec. 4, 1999.
Department of Electrical Engineering and Computer Sciences University of California at Berkeley System-Level Types for Component-Based Design Edward A.
Joshua GarrettUniversity of California, Berkeley SpecCharts: A VHDL Front-End for Embedded Systems.
Petri Net Modeling for dynamic MM composite Object.
1 System Modeling. Models of Computation. System Specification Languages Alexandru Andrei.
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.
November 18, 2004 Embedded System Design Flow Arkadeb Ghosal Alessandro Pinto Daniele Gasperini Alberto Sangiovanni-Vincentelli
Mahapatra-A&M-Sprong'021 Co-design Finite State Machines Many slides of this lecture are borrowed from Margarida Jacome.
VLSI DSP 2008Y.T. Hwang3-1 Chapter 3 Algorithm Representation & Iteration Bound.
Mahapatra-Texas A&M-Fall'001 Codesign Framework Parts of this lecture are borrowed from lectures of Johan Lilius of TUCS and ASV/LL of UC Berkeley available.
Models of Computation Reading Assignment: L. Lavagno, A.S. Vincentelli and E. Sentovich, “Models of computation for Embedded System Design”
Department of Electrical Engineering and Computer Sciences University of California at Berkeley The Ptolemy II Framework for Visual Languages Xiaojun Liu.
- 1 -  P. Marwedel, Univ. Dortmund, Informatik 12, 2003 Universität Dortmund Actual design flows and tools.
1 Correct and efficient implementations of synchronous models on asynchronous execution platforms Stavros Tripakis UC Berkeley and Verimag EC^2 Workshop,
(1) Modeling Digital Systems © Sudhakar Yalamanchili, Georgia Institute of Technology, 2006.
Maria-Cristina Marinescu Martin Rinard Laboratory for Computer Science Massachusetts Institute of Technology A Synthesis Algorithm for Modular Design of.
02/06/05 “Investigating a Finite–State Machine Notation for Discrete–Event Systems” Nikolay Stoimenov.
CSET 4650 Field Programmable Logic Devices
Voicu Groza, 2008 SITE, HARDWARE/SOFTWARE CODESIGN OF EMBEDDED SYSTEMS Hardware/Software Codesign of Embedded Systems Voicu Groza SITE Hall, Room.
Models of Computation: FSM Model Reading: L. Lavagno, A.S. Vincentelli and E. Sentovich, “Models of computation for Embedded System Design”
Benjamin Gamble. What is Time?  Can mean many different things to a computer Dynamic Equation Variable System State 2.
1 H ardware D escription L anguages Modeling Digital Systems.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
CprE / ComS 583 Reconfigurable Computing Prof. Joseph Zambreno Department of Electrical and Computer Engineering Iowa State University Lecture #21 – HW/SW.
Ch. 2. Specification and Modeling 2.1 Requirements Describe requirements and approaches for specifying and modeling embedded systems. Specification for.
Mahapatra-A&M-Fall'001 Co-design Finite State Machines Many slides of this lecture are borrowed from Margarida Jacome.
C. André, J. Boucaron, A. Coadou, J. DeAntoni,
Fall 2004EE 3563 Digital Systems Design EE 3563 VHSIC Hardware Description Language  Required Reading: –These Slides –VHDL Tutorial  Very High Speed.
Hardware Design and The Petri Net Abhijit K. Deb SAM, LECS, IMIT, KTH Kista, Stockholm.
ECE-C662 Lecture 2 Prawat Nagvajara
1 Copyright  2001 Pao-Ann Hsiung SW HW Module Outline l Introduction l Unified HW/SW Representations l HW/SW Partitioning Techniques l Integrated HW/SW.
CSCI1600: Embedded and Real Time Software Lecture 11: Modeling IV: Concurrency Steven Reiss, Fall 2015.
Royal Institute of Technology System Specification Fundamentals Axel Jantsch, Royal Institute of Technology Stockholm, Sweden.
Introduction to ASIC flow and Verilog HDL
Secure Composition of Untrusted Code: Wrappers and Causality Types Kyle Taylor.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Review n System dynamics : A sequence of state transition n model : A set of rules for state transition System S X Y Discrete event system FSM (Automata)
High Performance Embedded Computing © 2007 Elsevier Lecture 4: Models of Computation Embedded Computing Systems Mikko Lipasti, adapted from M. Schulte.
CPE555A: Real-Time Embedded Systems
2. Specification and Modeling
Discrete Event Explicit notion of time (global order…)
Gabor Madl Ph.D. Candidate, UC Irvine Advisor: Nikil Dutt
Hardware/Software Codesign Representation Models
ECE-C662 Introduction to Behavioral Synthesis Knapp Text Ch
Presentation transcript:

Models of Computation for Embedded System Design Alvise Bonivento

Outline Goals MOCs Discrete Events Dataflow Process Networks Petri Nets Synchronous/Reactive Communicating Synchronous FSM Labeled Transition Systems SDL Process Networks Hybrid Systems CFSM Conclusions

Goals First step in embedded system design: specification process Formal representation helps MOCs: efficiency, formal verification, design refinement, optimization and implementation TSM: framework to compare MOCs

MOCs A mathematical description that has a syntax and rules for computation of the behavior described by the syntax (semantics). Used to specify the semantics of computation and concurrency. Characteristics: compact description, fidelity to design style, synthesize and optimize behavior to an implementation. Language & MOCs: MOC affects expressiveness, trade off.

Discrete Event (DE) Totally ordered events Digital Hardware simulators: Verilog, VHDL. Efficient for large systems, but challenged by simultaneous events ABCABC ABCABC t t t t t t+Δ VHDL: delta step solution

Dataflow Process Networks Directed graph: actors, streams and tokens Process sequence of firings Firings organized into a list and scheduled One cycle through the schedule back to original state DSP problems ACD B A B C D

Petri Nets Process control, asynchronous communication and scheduling: avoids state explosion token place transition The state of a PN is the marking Transition fire when all the predecessors are marked When firing occurs, the predecessors decrement their marking and the successors increase it. p0 p1 p2 p3p4 p5 p6 t0 t1t2 t3 t4 t5 t6

Petri Nets: example p0 p1 p2 p3p4 p5 p6 t0 t1t2 t3 t4 t5 t6

Synchronous/Reactive All signals have events with identical tags (synchronous) All signals have events at every clock tick Cycle based models (clocked-synchronous circuit) Esterel

Synchronous & Multirate WCDMA cell simulators User 1 User 2 User N DSP Base Station

Communicating Synchronous FSM FSM consists of: – Set of input symbols – Set of output symbols – Finite set of states with an initial state – Input symbols & states output symbols – Input symbols & states next states Synchronous Sequential behavior vs. state explosion – Hierarchy, concurrency, non-determinism

Other models Labeled Transition Systems (LTS) – CSP, CCS – Communication is based on rendevouz – Single LTS is an interleaved asynchronous model SDL Process Networks – Specification, simulation and design of TLC protocols Hybrid Systems – FA where each state is associated with a set of differential equations – When inequalities are satisfied transition may fire – Non-linear dynamic systems

Synchrony vs. Asynchrony Basic operation: at each clock tick, each module reads inputs, computes and produces outputs simultaneously. Triggering & Ordering: all modules are triggered to compute at every clock tick., makes verification easier System solution: unique solution at each clock tick, makes verification easier. expensive Implementation cost: may be expensive, clock rate not optimized. Basic operation: events with a non-zero amount of time between them, each process may take an arbitrary time. Triggering & Ordering: triggered to run only when inputs change. difficult to analyze System solution: difficult to analyze. cheapermore flexible Implementation cost: cheaper and more flexible.

CFSMCFSM Globally asynchronous, locally synchronous (GALS). POLIS. CFSM has: – A finite state machine part: inputs, outputs, states, transition and output relation. – A data computation part: reference in the transition relation to external, combinational functions. – Locally synchronous behavior: each CFSM executes a transition by producing a single output reaction in zero time. – Globally asynchronous behavior: each CFSM reads inputs, executes a transition and produces outputs in an unbounded but finite amount of time. Asynchronous interaction from a system perspective.

CFSM Timing behavior: – a global scheduler controls the interaction of the CFSMs. – During an execution a CFSM reads its inputs, performs a computation, possibly changes states and writes its outputs. – Each input signal is read at most once,each input event is cleared at every execution. – Input events are read atomically. Functional behavior: – Determined by the specified transition relation (TR)

CFSM: example A B C i o i1 i2 err Inputs arrive at a regular rate of Ni time units. Each CFSM process at a regular rate of Nr if no errors or 2Nr in case of errors. No missed event constraint.

Conclusions No single agreed upon standard MOC. CFSM with initially unbounded FIFO buffers: – GALS – Unbounded buffers allows static and quasi static scheduling whenever possible. – Keep buffers lossy in the formal model and give the designer tools to verify a priori if any loss occurs. – Enforce no loss for some buffers in the implementation. – Capture most of the features of the different MOCs. Multiple languages with semantics in terms of CFSMs: – Multiple scheduling, allocation, partitioning, HW & SW synthesis algorithm can be applied. Formal verification throughout the design process.