Page 466 - DSP Integrated Circuits
P. 466

10.6 Asynchronous Systems                                            451

            In an asynchronous system the subsystems are not required to wait on each
        other, and the transfer of information between combinational blocks is not per-
        formed in synchrony with a global clock signal, but rather at times is determined
        by the latencies of the blocks themselves. In the asynchronous scheme, processing
        time approaches an average for all tasks rather than being set by a clock period in
        the worst-case completion time of all tasks.
            A self-timed circuit is a circuit that performs computational steps whose initi-
        ation is caused by signal evens at its inputs and whose completion is indicated by
        signal events at its outputs. Self-timed systems, (a subclass of asynchronous sys-
        tems) are legal interconnections of self-timed circuits.
            A circuit is delay-insensitive when its correct operation is independent of any
        assumptions on delays of operators and wires except that delays are finite [22].
        Such circuits do not use a clock signal or knowledge about delays. It has been
        proved in [16] that the class of delay-insensitive circuits is very limited. Different
        asynchronous techniques distinguish themselves in the choice of the compromises
        to delay-insensitivity.
            A speed-independent system, with zero-delay wires, implements a logic behav-
        ior independent of delay in the logic modules, but there are no delays in wires.
        Self-timed techniques assume that a circuit can be decomposed into equipotential
        regions inside which wire delays are negligible [24].
            Communication between two asynchronous systems is subject to a communi-
        cation protocol, as illustrated in Figure 10.24. Four-phase signaling is one such
        protocol that will be discussed later.
            Self-timed circuits are a means of synchronizing different blocks at a local
        level, thereby alleviating problems associated with distributing global clock sig-
        nals over the entire face of the chip. Most designers agree that asynchronous
        transfer of information is required at the higher levels in a complex system, but
        may disagree on how small the appropriate block size should be. However, it
        seems unreasonable to use blocks consisting of a single gate, due to the overhead
        associated with asynchronous transfers. As the speed of the technology has
        increased, block size has shrunk. Self-timed circuits, in addition to performing
        some logic function, provide a completion signal to indicate when the computation
        is finished.





















                  Figure 10.24 Communication between two asynchronous systems
   461   462   463   464   465   466   467   468   469   470   471