360,111 research outputs found
Generalized Asynchronous Systems
The paper is devoted to a mathematical model of concurrency the special case
of which is asynchronous system. Distributed asynchronous automata are
introduced here. It is proved that the Petri nets and transition systems with
independence can be considered like the distributed asynchronous automata. Time
distributed asynchronous automata are defined in standard way by the map which
assigns time intervals to events. It is proved that the time distributed
asynchronous automata are generalized the time Petri nets and asynchronous
systems.Comment: 8 page
Asynchronous techniques for system-on-chip design
SoC design will require asynchronous techniques as the large parameter variations across the chip will make it impossible to control delays in clock networks and other global signals efficiently. Initially, SoCs will be globally asynchronous and locally synchronous (GALS). But the complexity of the numerous asynchronous/synchronous interfaces required in a GALS will eventually lead to entirely asynchronous solutions. This paper introduces the main design principles, methods, and building blocks for asynchronous VLSI systems, with an emphasis on communication and synchronization. Asynchronous circuits with the only delay assumption of isochronic forks are called quasi-delay-insensitive (QDI). QDI is used in the paper as the basis for asynchronous logic. The paper discusses asynchronous handshake protocols for communication and the notion of validity/neutrality tests, and completion tree. Basic building blocks for sequencing, storage, function evaluation, and buses are described, and two alternative methods for the implementation of an arbitrary computation are explained. Issues of arbitration, and synchronization play an important role in complex distributed systems and especially in GALS. The two main asynchronous/synchronous interfaces needed in GALS-one based on synchronizer, the other on stoppable clock-are described and analyzed
Algorithmic Verification of Asynchronous Programs
Asynchronous programming is a ubiquitous systems programming idiom to manage
concurrent interactions with the environment. In this style, instead of waiting
for time-consuming operations to complete, the programmer makes a non-blocking
call to the operation and posts a callback task to a task buffer that is
executed later when the time-consuming operation completes. A co-operative
scheduler mediates the interaction by picking and executing callback tasks from
the task buffer to completion (and these callbacks can post further callbacks
to be executed later). Writing correct asynchronous programs is hard because
the use of callbacks, while efficient, obscures program control flow.
We provide a formal model underlying asynchronous programs and study
verification problems for this model. We show that the safety verification
problem for finite-data asynchronous programs is expspace-complete. We show
that liveness verification for finite-data asynchronous programs is decidable
and polynomial-time equivalent to Petri Net reachability. Decidability is not
obvious, since even if the data is finite-state, asynchronous programs
constitute infinite-state transition systems: both the program stack and the
task buffer of pending asynchronous calls can be potentially unbounded.
Our main technical construction is a polynomial-time semantics-preserving
reduction from asynchronous programs to Petri Nets and conversely. The
reduction allows the use of algorithmic techniques on Petri Nets to the
verification of asynchronous programs.
We also study several extensions to the basic models of asynchronous programs
that are inspired by additional capabilities provided by implementations of
asynchronous libraries, and classify the decidability and undecidability of
verification questions on these extensions.Comment: 46 pages, 9 figure
Markov two-components processes
We propose Markov two-components processes (M2CP) as a probabilistic model of
asynchronous systems based on the trace semantics for concurrency. Considering
an asynchronous system distributed over two sites, we introduce concepts and
tools to manipulate random trajectories in an asynchronous framework: stopping
times, an Asynchronous Strong Markov property, recurrent and transient states
and irreducible components of asynchronous probabilistic processes. The
asynchrony assumption implies that there is no global totally ordered clock
ruling the system. Instead, time appears as partially ordered and random. We
construct and characterize M2CP through a finite family of transition matrices.
M2CP have a local independence property that guarantees that local components
are independent in the probabilistic sense, conditionally to their
synchronization constraints. A synchronization product of two Markov chains is
introduced, as a natural example of M2CP.Comment: 34 page
- …
