Asynchronous systems

Asynchronous systems

In a synchronous system, operations are coordinated under the centralized control of a fixed-rate clock signal or several clocks. An asynchronous digital system, in contrast, has no global clock: instead, it operates under distributed control, with concurrent hardware components communicating and synchronizing on channels.


Asynchronous systems — much like object-oriented software — are typically constructed out of modular 'hardware objects', each with well-defined communication interfaces.These modules may operate at variable speeds, whether due to data-dependent processing,
dynamic voltage scaling, or process variation. The modules can then be combinedtogether to form a correct working system, without reference to a global
clock signal. Typically, low power is obtained since components are activatedonly on demand. Furthermore, several asynchronous styles have been shown to accommodate clocked interfaces, and thereby support mixed-timing design.Hence, asynchronous systems match well the need for correct-by-construction
methodologies in assembling large-scale heterogeneous and scalable systems.

Design styles

There is a large spectrum of asynchronous design styles, with tradeoffsbetween robustness and performance (and other parameters such as power). The choice of design style depends on the application target:reliability/ease-of-design vs. speed. The most robust designs use 'delay-insensitive circuits', whose operation is correct regardless of gate and wire delays; however, only limited useful systems can be designed with this style. Slightly less robust, but much more useful, are 'quasi-delay-insensitive circuits' (also known as 'speed-independent'), which operate correctly regardless of gate delays; however, wires at each fanout point must be tuned for roughly equal delays. Less robust but faster circuits, requiring simple localized one-sided timing constraints, include controllers using 'fundamental mode operation'(i.e. with setup/hold requirements on when new inputs can be received), and 'bundled datapaths' using matched delays (see below). At the extreme, high-performance 'timed circuits' have been proposed, which use tight two-side timing constraints,where the clock can still be avoided but careful physicaldelay tuning is required, such as for some high-speed
pipeline applications.

Asynchronous communication

Asynchronous communication is typically performed on channels.Communication is used both to synchronize operations of the concurrentsystem as well as to pass data. A simple channel typically consists of two wires: a request and an acknowledge. In a '4-phase handshaking
protocol' (or return-to-zero), the request is asserted by the sender component, and the receiver responds by asserting the acknowledge; then both signals are de-asserted in turn. In a '2-phase handshaking
protocol' (or transition-signalling), the requester simply toggles the value on the request wire (once), and the receiver responds by toggling the value on the acknowledge wire. Channels can also be extended to communicate data.

Asynchronous datapaths

Asynchronous datapaths are typically encoded using several schemes. Robust schemes use two wires or 'rails' for each bit, called 'dual-rail encoding'. In this case, first rail is asserted to transmit a 0 value, or the second rail is asserted to transmit a 1 value. The asserted rail is then reset to zero before the next data value is transmitted, thereby indicating 'no data' or a 'spacer' state. A less robust, but widely-used and practical scheme, is called 'single-rail bundled data'. Here, a single-rail (i.e. synchronous-style) function block can be used, with an accompanying worst-case matched delay. After valid data inputs arrive, a request signal is asserted as the input to the matched delay. When the matched delay produces a 'done' output, the block guaranteed to have completed computation. While this scheme has timing constraints, they are simple, localized (unlike in synchronous systems),and one-sided, hence are usually easy to validate.


The literature in this field exists in a variety of conferenceand journal proceedings. The leading symposium is the IEEE Async Symposium (International Symposium on Asynchronous Circuits and Systems), founded in 1994. A variety of asynchronous papers have also been published since themid-1980s in such conferences as IEEE/ACM Design Automation Conference, IEEE [ International Conference on Computer Design] , IEEE/ACM
International Conference on Computer-Aided Design, [ International Solid-State Circuits Conference] ,and Advanced Research in VLSI, as well as in leading journals such as IEEE Transactions on VLSI Systems, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, and Transactions on Distributed Computing.


* Claire Tristram, "It's Time for Clockless Chips", cover story, MIT's Technology Review Magazine, vol. 104:8, pp. 36-41, October 2001.

* C.H. van Berkel, M.B. Josephs, and S.M. Nowick, doi-inline|10.1109/5.740016|Applications of Asynchronous Circuits, Proceedings of the IEEE, Vol. 87, No. 2, pp. 223-233, February 1999. ("This entire issue is devoted to asynchronous circuits, with many other relevant articles".)

* L. Lavagno and S.M. Nowick, "Asynchronous Control Circuits", chapter 10 in cite book | title=Logic Synthesis and Verification | author = eds. Soha Hassoun and Tsutomu Sasao
publisher = Kluwer Academic Publishers | year= 2002 | isbn=0-7923-7606-4
, pp. 255-284,("Includes pointers to recent asynchronous chips, as well as coverage of CAD techniques for asynchronous control circuits".)

----Adapted from [ Steve Nowick] 's column in the ACM [ SIGDA] [ e-newsletter] by [ Igor Markov]
Original text is available at

See also

*Asynchronous circuit
*Integrated circuit design
*Electronic design automation
*Design flow (EDA)

External links

* [ ARM ARM996HS clockless processor ]
* [ Navarre AsyncArt. N-Protocol: Asynchronous Design Methodology for FPGAs]

Wikimedia Foundation. 2010.

Игры ⚽ Нужен реферат?

Look at other dictionaries:

  • Simulation of Multi-Agent Asynchronous Systems — Système multi agents Un système multi agent (SMA) est un système composé d un ensemble d agents, situés dans un certain environnement et interagissant selon certaines relations. Un agent est une entité caractérisée par le fait qu elle est, au… …   Wikipédia en Français

  • Asynchronous I/O — Asynchronous I/O, or non blocking I/O, is a form of input/output processing that permits other processing to continue before the transmission has finished. Input and output (I/O) operations on a computer can be extremely slow compared to the… …   Wikipedia

  • Asynchronous serial communication — describes an asynchronous, serial transmission protocol in which a start signal is sent prior to each byte, character or code word and a stop signal is sent after each code word. The start signal serves to prepare the receiving mechanism for the… …   Wikipedia

  • Asynchronous JavaScript And XML — Pour les articles homonymes, voir Ajax. AJAX est un acronyme signifiant Asynchronous JavaScript and XML (« XML et Javascript asynchrones ») et désignant une solution informatique libre pour le développement d applications Web. À l image …   Wikipédia en Français

  • Asynchronous JavaScript and XML — Pour les articles homonymes, voir Ajax. AJAX est un acronyme signifiant Asynchronous JavaScript and XML (« XML et Javascript asynchrones ») et désignant une solution informatique libre pour le développement d applications Web. À l image …   Wikipédia en Français

  • Asynchronous javascript and xml — Pour les articles homonymes, voir Ajax. AJAX est un acronyme signifiant Asynchronous JavaScript and XML (« XML et Javascript asynchrones ») et désignant une solution informatique libre pour le développement d applications Web. À l image …   Wikipédia en Français

  • Asynchronous System Trap — (AST) refers to a mechanism used in several computer operating systems designed by the former Digital Equipment Corporation (DEC) of Maynard, Massachusetts.Various events within these systems can be optionally signalled back to the user processes …   Wikipedia

  • Asynchronous Balanced Mode — (ABM) is a communication mode of HDLC and derivative protocols, supporting peer oriented point to point communications between two nodes, where either node can initiate transmission.For systems that work in the ABM (Asynchronous Balanced Mode),… …   Wikipedia

  • Asynchronous cellular automaton — Cellular automata, as with other multi agent system models, usually treat time as discrete and state updates as occurring synchronously. The state of every cell in the model is updated together, before any of the new states influence other cells …   Wikipedia

  • Asynchronous Transfer Mode — In electronic digital data transmission systems, the network protocol Asynchronous Transfer Mode (ATM) encodes data traffic into small fixed sized cells. The standards for ATM were first developed in the mid 1980s. The goal was to design a single …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”