A denotational framework for comparing models of computation Daniele Gasperini.

Slides:



Advertisements
Similar presentations
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.
Advertisements

The need for AMS assertions Verify the analog/digital interfaces at block and SoC levels –Check properties involving voltages and currents –Check complex.
Supervisory Control of Hybrid Systems Written by X. D. Koutsoukos et al. Presented by Wu, Jian 04/16/2002.
Discrete Mathematics Lecture 5 Alexander Bukharovich New York University.
Requirements on the Execution of Kahn Process Networks Marc Geilen and Twan Basten 11 April 2003 /e.
Overview This project applies the tagged-signal model to explain the semantics of piecewise continuous signals. Then it illustrates an operational way.
DATAFLOW PROCESS NETWORKS Edward A. Lee Thomas M. Parks.
Discrete Event Models: Getting the Semantics Right Edward A. Lee Robert S. Pepper Distinguished Professor Chair of EECS UC Berkeley With thanks to Xioajun.
PTIDES: Programming Temporally Integrated Distributed Embedded Systems Yang Zhao, EECS, UC Berkeley Edward A. Lee, EECS, UC Berkeley Jie Liu, Microsoft.
7th Biennial Ptolemy Miniconference Berkeley, CA February 13, 2007 Causality Interfaces for Actor Networks Ye Zhou and Edward A. Lee University of California,
Type System, March 12, Data Types and Behavioral Types Yuhong Xiong Edward A. Lee Department of Electrical Engineering and Computer Sciences University.
7th Biennial Ptolemy Miniconference Berkeley, CA February 13, 2007 Leveraging Synchronous Language Principles for Hybrid System Models Haiyang Zheng and.
6th Biennial Ptolemy Miniconference Berkeley, CA May 12, 2005 Some Developments in the Tagged Signal Model Xiaojun Liu With J. Adam Cataldo, Edward A.
Using Interfaces to Analyze Compositionality Haiyang Zheng and Rachel Zhou EE290N Class Project Presentation Dec. 10, 2004.
Conformance Simulation Relation ( ) Let and be two automata over the same alphabet simulates () if there exists a simulation relation such that Note that.
Causality Interface  Declares the dependency that output events have on input events.  D is an ordered set associated with the min ( ) and plus ( ) operators.
Chess Review October 4, 2006 Alexandria, VA Edited and presented by Advanced Tool Architectures Edward A. Lee UC Berkeley.
Esterel Overview Roberto Passerone ee249 discussion section.
FunState – An Internal Design Representation for Codesign A model that enables representations of different types of system components. Mixture of functional.
Why Behavioral Wait statement Signal Timing Examples of Behavioral Descriptions –ROM.
Dataflow Process Networks Lee & Parks Synchronous Dataflow Lee & Messerschmitt Abhijit Davare Nathan Kitchen.
Design of Fault Tolerant Data Flow in Ptolemy II Mark McKelvin EE290 N, Fall 2004 Final Project.
Models of Computation for Embedded System Design Alvise Bonivento.
Kahn’s Principle and the Semantics of Discrete Event Systems Xiaojun Liu EE290N Class Project December 10, 2004.
Discrete Event Models: Getting the Semantics Right Edward A. Lee Robert S. Pepper Distinguished Professor Chair of EECS UC Berkeley With special thanks.
Chess Review November 21, 2005 Berkeley, CA Edited and presented by Causality Interfaces and Compositional Causality Analysis Rachel Zhou UC Berkeley.
A Denotational Semantics For Dataflow with Firing Edward A. Lee Jike Chong Wei Zheng Paper Discussion for.
Semantic Foundation of the Tagged Signal Model Xiaojun Liu Sun Microsystems, Inc. Chess Seminar February 21, 2006.
1 Ivan Lanese Computer Science Department University of Bologna Italy Concurrent and located synchronizations in π-calculus.
Department of Electrical Engineering and Computer Sciences University of California at Berkeley System-Level Types for Component-Based Design Edward A.
Department of Electrical Engineering and Computer Sciences University of California at Berkeley Concurrent Component Patterns, Models of Computation, and.
Chess Review May 11, 2005 Berkeley, CA Discrete-Event Systems: Generalizing Metric Spaces and Fixed-Point Semantics Adam Cataldo Edward Lee Xiaojun Liu.
7th Biennial Ptolemy Miniconference Berkeley, CA February 13, 2007 PTIDES: A Programming Model for Time- Synchronized Distributed Real-time Systems Yang.
1 System Modeling. Models of Computation. System Specification Languages Alexandru Andrei.
EXPRESS'011 Turing Machines, Transition Systems, and Interaction Dina Goldin, U.Connecticut Scott Smolka, SUNY at Stony Brook Peter Wegner, Brown University.
VLSI DSP 2008Y.T. Hwang3-1 Chapter 3 Algorithm Representation & Iteration Bound.
Programming Language Semantics Denotational Semantics Chapter 5 Part III Based on a lecture by Martin Abadi.
System-Level Types for Component-Based Design Paper by: Edward A. Lee and Yuhong Xiong Presentation by: Dan Patterson.
Models of Computation Reading Assignment: L. Lavagno, A.S. Vincentelli and E. Sentovich, “Models of computation for Embedded System Design”
Chapter 17 Theoretical Issues in Distributed Systems
Voicu Groza, 2008 SITE, HARDWARE/SOFTWARE CODESIGN OF EMBEDDED SYSTEMS Hardware/Software Codesign of Embedded Systems Voicu Groza SITE Hall, Room.
Introduction to Formal Methods Based on Jeannette M. Wing. A Specifier's Introduction to Formal Methods. IEEE Computer, 23(9):8-24, September,
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Mahapatra-A&M-Fall'001 Co-design Finite State Machines Many slides of this lecture are borrowed from Margarida Jacome.
SOFTWARE DESIGN. INTRODUCTION There are 3 distinct types of activities in design 1.External design 2.Architectural design 3.Detailed design Architectural.
Modern VLSI Design 4e: Chapter 8 Copyright  2008 Wayne Wolf Topics Modeling with hardware description languages (HDLs).
Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Topics n Modeling with hardware description languages (HDLs).
School of Computer Science, The University of Adelaide© The University of Adelaide, Control Data Flow Graphs An experiment using Design/CPN Sue Tyerman.
CSCI1600: Embedded and Real Time Software Lecture 11: Modeling IV: Concurrency Steven Reiss, Fall 2015.
CAP 4800/CAP 5805: Computer Simulation Concepts
Royal Institute of Technology System Specification Fundamentals Axel Jantsch, Royal Institute of Technology Stockholm, Sweden.
High Performance Embedded Computing © 2007 Elsevier Chapter 1, part 3: Embedded Computing High Performance Embedded Computing Wayne Wolf.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
March 4, 2008http://csg.csail.mit.edu/arvindDF3-1 Dynamic Dataflow Arvind Computer Science & Artificial Intelligence Lab Massachusetts Institute of Technology.
Onlinedeeneislam.blogspot.com1 Design and Analysis of Algorithms Slide # 1 Download From
Topics 1 Specific topics to be covered are: Discrete-time signals Z-transforms Sampling and reconstruction Aliasing and anti-aliasing filters Sampled-data.
High Performance Embedded Computing © 2007 Elsevier Lecture 4: Models of Computation Embedded Computing Systems Mikko Lipasti, adapted from M. Schulte.
Introduction to distributed systems description relation to practice variables and communication primitives instructions states, actions and programs synchrony.
TOPIC : Introduction to Sequential Circuits UNIT 1: Modeling and Simulation Module 4 : Modeling Sequential Circuits.
Chapter 5 Relations and Operations
Introduction to Formal Methods
Topics Modeling with hardware description languages (HDLs).
2. Specification and Modeling
Topics Modeling with hardware description languages (HDLs).
CS341 Digital Logic and Computer Organization F2003
Concurrent Models of Computation
Embedded Systems: A Focus on Time
Concurrent Models of Computation for Embedded Software
Well-behaved Dataflow Graphs
Complexity Theory: Foundations
Presentation transcript:

A denotational framework for comparing models of computation Daniele Gasperini

Abstract Aim: compare different model of computation and their certain essential features How: use a denotational framework

Main characteristics Denotational rather than operational Mathematical approach Main actors: – Processes – Signals – Events Tagged signal model

SIGNALS 1 Event e = tag : value – Set of values V – Set of tags T Tags: model time, precedence relationships, synchronization points Values: represent operands and result of computation Signal s = set of events = subset of T x V e є T x V

SIGNALS 2: Characteristics & notations Functional signals – e 1 = (t, v 1 ) є s and e 2 = (t, v 2 ) є s then v 1 = v 2 S = the set of all signals S N = collection/tuple of N signals λ = empty signal (no events) Λ = collection/tuple of N empty signals – λ є S and Λ є S N = bottom : absence of value

PROCESSES P = process : subset of S N for some N s = behavior of a process – s є S N and s є P → P = set of behaviors Composing processes Inputs and outputs Determinacy

Given M processes in S N a process Q composed of these processes is given by: Where P is the collection of processes Composing processes 1 P = set of behaviors s Composing = P 1 x P 2 x … P n

Composing processes 2: projections Process P = set of behaviors s

Inputs and outputs P I (size m)O (size n)

Determinacy A process is determinate if for any input A є B it has exactly one behavior or exactly no behaviors. Otherwise is nondeterminate. functional + functional = functional → preserve Functional + source processes with exacly one behavior = functional → preserve Depends on the tag system and the process

Tags systems The central role of a tag system is to establish ordering among events. specification implementation s 1 s 2 s 3 … i.e. time Ordering relation among events properties: reflectivetransitiveantisymmetric Ordering of tags Ordering of events

Timed models of computation The set of tags T is a totally ordered set Tag = timestamp

Flavors of timed models Metric time Continuous time Discrete event Discrete event simulators Synchronous and discrete-time systems Sequential systems

Metric time T totally ordered T Abelian group – closed to addition – zero – for every t є T there is another element -t є T such that t + (-t) = 0 – T has a metric Directly modeling physical systems

Continuous time T totally ordered T is a continuum T(s) = T for each signal s in any tuple s that satisfies the system

Discrete event T totally ordered The set of tags must be a discrete subset of T The set of tags must be order isomorphic The timestamps that appear in any behavior can be enumerated in chronological order. Many simulators (most digital circuit simulators)

Discrete events simulators Same characteristics of discrete event Events explicitly include timestamp The simulator operates by keeping a list of events sorted by timestamp Delta time (affects semantic and ensure strict causality)

Synchronous and discrete-time systems Two events are synchronous if they have the same tag Two signals are synchronous if all events in one signal are synchronous with an event in the other signal and vice versa A process is synchronous if every signal in any behavior of the process is synchronous with every other signal in the behavior

Sequential systems Single signal s The set of tags in the signal are totally ordered

Untimed models of computation Tags are partially ordered Partial order is present in many models of computations because denotes – Causality – Synchronization

Rendezvous of sequential processes Sequential processes reach a particular point at which they must verify that another process has reached a corresponding point before proceeding Communicating sequential processes and the calculus of communicating systems T(e 1 ) = T(e 2 ) = T(e 3 ) s1s1 s3s3 s2s2

Kahn process networks Processes communicate via channels, which are one-way unbounded FIFO queues with a single reader and a single writer. FIFOT(s) is totally ordered for each signal s Imposes an ordering on the events Be Σ(s) denote the sequence of values in s Two signals s and s’ sequence equivalent Σ(s) = Σ(s’) A process is sequence functional if given a set of equivalent tuples of input signals all possible outputs are sequence equivalent Sequence determinacy

Dataflow Special case of Kahn process networks A dataflow process is a Kahn process that is also sequential Self loop signal is called firing signal s’ s’’ s P e’ consumed by e i + 1 e i ≤ e’ ≤ e i + 1 e’’ produced by e i e i ≤ e’’ ≤ e i + 1

Petri Nets Similar to dataflow Events within signals need not be ordered s2s2 s1s1 f: s 2 → s 1 such that f(e) < e for all e є s 2 A firing (an event in s 2 ) has a corresponding token (an event in s 1 ) with a smaller tag

Heterogeneous systems V divided into subsets → carry the notion of data types T divided → separately model parts of heterogeneous system (continuous time, discrete event and dataflow subsystems)

The Role of Tags in composition of processes Aim: connect tagged signal model to well- known results in semantics Two cases: – Discrete event systems – Kahn process networks

Discrete event systems Causality Synchronous events Feedback loops Cantor metric The n-tuples of signals → metric space Distance of signals Three form of causality: Casual: two possible outputs differ no earlier than the inputs that produced them Strictly casual: two possible outputs differ later than the inputs that produced them (or not at all) Delta casual: there is a delay of at least Δ before any output of a process can be produced in reaction to an input event If a process is functional and delta casual then the feedback loop has exactly one behavior Simulators (VHDL, Verilog)

Monotonicity and continuity in Kahn process networks MonotonicityContinuity Determinacy of feedback compositions Constructive procedure for finding one unique behavior Causality Prefix order a natural partial ordering for signals that contains a totally ordered set of events Σ(s) sequence of values in the signal s A continuous process is monotonic, not all monotonic functions are continuous The feedback loops have an alternative interpretation of the composition Q that brings the sequence to be determinate (fixed point theorem)