Results 1  10
of
23
A Framework for Comparing Models of Computation
 IEEE Transactions on ComputerAided Design of Integrated Circuits and Systems
, 1998
"... Abstract—We give a denotational framework (a “meta model”) within which certain properties of models of computation can be compared. It describes concurrent processes in general terms as sets of possible behaviors. A process is determinate if, given the constraints imposed by the inputs, there are e ..."
Abstract

Cited by 323 (67 self)
 Add to MetaCart
(Show Context)
Abstract—We give a denotational framework (a “meta model”) within which certain properties of models of computation can be compared. It describes concurrent processes in general terms as sets of possible behaviors. A process is determinate if, given the constraints imposed by the inputs, there are exactly one or exactly zero behaviors. Compositions of processes are processes with behaviors in the intersection of the behaviors of the component processes. The interaction between processes is through signals, which are collections of events. Each event is a valuetag pair, where the tags can come from a partially ordered or totally ordered set. Timed models are where the set of tags is totally ordered. Synchronous events share the same tag, and synchronous signals contain events with the same set of tags. Synchronous processes have only synchronous signals as behaviors. Strict causality (in timed tag systems) and continuity (in untimed tag systems) ensure determinacy under certain technical conditions. The framework is used to compare certain essential features of various models of computation, including Kahn process networks, dataflow, sequential processes, concurrent sequential processes with rendezvous, Petri nets, and discreteevent systems. I.
A Denotational Semantics for Dataflow with Firing
 Memorandum UCB/ERL M97/ 3, Electronics Research
, 1997
"... Dataflow models of computation have intrigued computer scientists since the 1970s. They were first introduced by Jack Dennis as a basis for parallel programming languages and architectures, and by Gilles Kahn as a model of concurrency. Interest in these models of computation has been recently rekind ..."
Abstract

Cited by 33 (9 self)
 Add to MetaCart
(Show Context)
Dataflow models of computation have intrigued computer scientists since the 1970s. They were first introduced by Jack Dennis as a basis for parallel programming languages and architectures, and by Gilles Kahn as a model of concurrency. Interest in these models of computation has been recently rekindled by the resurrection of parallel computing, due to the emergence of multicore architectures. However, Dennis and Kahn approached dataflow very differently. Dennis ’ approach was based on an operational notion of atomic firings driven by certain firing rules. Kahn’s approach was based on a denotational notion of processes as continuous functions on infinite streams. This paper bridges the gap between these two points of view, showing that sequences of firings define a continuous Kahn process as the least fixed point of an appropriately constructed functional. The Dennis firing rules are sets of finite prefixes satisfying certain conditions that ensure determinacy. These conditions result in firing rules that are strictly more general than the blocking reads of the KahnMacQueen implementation of Kahn process networks, and solve some compositionality problems in the dataflow model. 1
Cache Aware Optimization of Stream Programs
 In LCTES
, 2005
"... Abstract Effective use of the memory hierarchy is critical for achievinghigh performance on embedded systems. We focus on the class of ..."
Abstract

Cited by 29 (9 self)
 Add to MetaCart
(Show Context)
Abstract Effective use of the memory hierarchy is critical for achievinghigh performance on embedded systems. We focus on the class of
Turing Machines, Transition Systems, and Interaction
 Information and Computation
, 2004
"... We present Persistent Turing Machines (PTMs), a new way of interpreting Turingmachine computation, one that is both interactive and persistent. A PTM repeatedly receives an input token from the environment, computes for a while, and then outputs the result. Moreover, it can \remember" its p ..."
Abstract

Cited by 29 (4 self)
 Add to MetaCart
We present Persistent Turing Machines (PTMs), a new way of interpreting Turingmachine computation, one that is both interactive and persistent. A PTM repeatedly receives an input token from the environment, computes for a while, and then outputs the result. Moreover, it can \remember" its previous state (worktape contents) upon commencing a new computation. We show that the class of PTMs is isomorphic to a very general class of eective transition systems, thereby allowing one to view PTMs as transition systems \in disguise." The persistent stream language (PSL) of a PTM is a coinductively dened set of interaction streams : innite sequences of pairs of the form (w i ; w o ), recording, for each interaction with the environment, the input token received by the PTM and the corresponding output token. We dene an innite hierarchy of successively ner equivalences for PTMs over nite interactionstream prexes and show that the limit of this hierarchy does not coincide with PSLequivalence. The presence of this \gap" can be attributed to the fact that the transition systems corresponding to PTM computations naturally exhibit unbounded nondeterminism. We also consider amnesic PTMs, where each new computation begins with a blank work tape, and a corresponding notion of equivalence based on amnesic stream languages (ASLs). We show that the class of ASLs is strictly contained in the class of PSLs. Amnesic stream languages are representative of the classical view of Turingmachine computation. One may consequently conclude that, in a streambased setting, the extension of the Turingmachine model with persistence is a nontrivial one, and provides a formal foundation for reasoning about programming concepts such as objects with static elds. We additional...
Realtime Signal Processing  Dataflow, Visual, and Functional Programming
, 1995
"... This thesis presents and justifies a framework for programming realtime signal processing systems. The framework extends the existing "blockdiagram" programming model; it has three components: a very highlevel textual language, a visual language, and the dataflow process network model o ..."
Abstract

Cited by 20 (1 self)
 Add to MetaCart
(Show Context)
This thesis presents and justifies a framework for programming realtime signal processing systems. The framework extends the existing "blockdiagram" programming model; it has three components: a very highlevel textual language, a visual language, and the dataflow process network model of computation. The dataflow process network model, although widelyused, lacks a formal description, and I provide a semantics for it. The formal work leads into a new form of actor. Having established the semantics of dataflow processes, the functional language Haskell is layered above this model, providing powerful featuresnotably polymorphism, higherorder functions, and algebraic program transformationabsent in blockdiagram systems. A visual equivalent notation for Haskell, Visual Haskell, ensures that this power does not exclude the "intuitive" appeal of visual interfaces; with some intelligent layout and suggestive icons, a Visual Haskell program can be made to look very like a block dia...
Compositional and Uniform Modelling of Hybrid Systems
"... This paper discusses fundamentals of hybrid system modelling. Emphazis is put on compositionality and the use of multiform time. Compositionality refers to the ability of freely composing hybrid systems. Since hybrid systems are considered, different time indices occur, and modularity calls for cons ..."
Abstract

Cited by 18 (2 self)
 Add to MetaCart
(Show Context)
This paper discusses fundamentals of hybrid system modelling. Emphazis is put on compositionality and the use of multiform time. Compositionality refers to the ability of freely composing hybrid systems. Since hybrid systems are considered, different time indices occur, and modularity calls for considering "time" as local to each module, this is what is called multiform time. The proposed framework is behavioral, hence a way is provided to automatically synthesize proper scheduling constraints for the joint simulation of discrete time, event based, and continuous time components. Finally, the relations of this model with the more traditional state based point of view are discussed. I. Introduction Hybrid Systems have been a topic of growing interest and activity in the recent years. It is our opinion that relevant reallife applications of hybrid systems paradigm mainly consist of very large, complex, distributed, systems. For such systems, modularity in modelling, simulation, contr...
Constrained and phased scheduling of synchronous data flow graphs for StreamIT language
 MASTER’S THESIS, MIT
, 2002
"... ..."
Sequencing Data Flow Tasks in SIGNAL
 IN PROC. OF THE ACM SIGPLAN WORKSHOP ON LANGUAGE, COMPILER AND TOOL SUPPORT FOR REALTIME SYSTEMS
, 1993
"... The Signal language is a realtime, synchronized dataflow language. Its model of time is based on instants, and its actions are considered instantaneous. Various application domains such as signal processing and robotics require the possibility of specifying behaviors composed of successions of di ..."
Abstract

Cited by 12 (11 self)
 Add to MetaCart
The Signal language is a realtime, synchronized dataflow language. Its model of time is based on instants, and its actions are considered instantaneous. Various application domains such as signal processing and robotics require the possibility of specifying behaviors composed of successions of different modes of interaction with their environment. To this purpose, we introduce the notion of time interval, defined by a start and an end event, and denoting the series of its occurrences. Associating a time interval to a dataflow process specifies a task i.e., a noninstantaneous activity and its execution interval. Different ways of sequencing such tasks are described. We propose these basic elements at the programming language level, in the perspective of extensions to Signal. Application domains feature the discrete sequencing of continuous, dataflow tasks, as is the case, for example, of robotic tasks.
Synchronous Automata for Reactive, RealTime or Embedded Systems
 Arbeitspapiere der GMD 967, Forschungszentrum Informationstechnik GmbH
, 1996
"... This paper presents Synchronous Automata, a new representation for compiling, verifying and implementing reactive systems. The synchronous programming paradigm is a novel approach for designing reactive, realtime and embedded systems. This new paradigm embraces languages of dramatically different s ..."
Abstract

Cited by 7 (2 self)
 Add to MetaCart
This paper presents Synchronous Automata, a new representation for compiling, verifying and implementing reactive systems. The synchronous programming paradigm is a novel approach for designing reactive, realtime and embedded systems. This new paradigm embraces languages of dramatically different styles, imperative languages like Esterel or Argos as well as declarative ones like Lustre or Signal. In response to industrial needs for mixing styles when designing complex applications, we develop a design environment, the Synchronie workbench, which supports multistyle programming within the synchronous paradigm. This multistyle programming facility is semantically based on Synchronous Automata. This paper presents the basics of Synchronous Automata and provides them with a set of operators to ease and improve both verification and implementation tools supported by the Synchronie workbench. Contents 1 Introduction 1 2 Reactive, RealTime and Embedded Systems 2 2.1 Reactivity as Intera...