Delay Insensitive Circuit

A delay insensitive circuit is a type of asynchronous circuit which performs a digital logic operation often within a computing processor chip. Instead of using clock signals or other global control signals, the sequencing of computation in delay insensitive circuit is determined by the data flow.

Typically handshake signals are used to indicate the readiness of such a circuit to accept new data (the previous computation is complete) and the delivery of such data by the requesting function. Similarly there may be output handshake signals indicating the readiness of the result and the safe delivery of the result to the next stage in a computational chain or pipeline.

In a delay insensitive circuit, there is therefore no need to provide a clock signal to determine a starting time for a computation. Instead, the arrival of data to the input of a sub-circuit triggers the computation to start. Consequently, the next computation can be initiated immediately when the result of the first computation is completed.

The main advantage of such circuits is their ability to optimise processing of activities that can take arbitrary periods of time depending on the data or requested function. An example of a process with a variable time for completion would be mathematical division or recovery of data where such data might be in a cache.

The Delay-Insensitive (DI) class is the most robust of all asynchronous circuit delay models. It makes no assumptions on the delay of wires or gates. In this model all transitions on gates or wires must be acknowledged before transitioning again. This condition stops unseen transitions from occurring. In DI circuits any transition on an input to a gate must be seen on the output of the gate before a subsequent transition on that input is allowed to happen. This forces some input states or sequences to become illegal. For example OR gates must never go into the state where both inputs are one, as the entry and exit from this state will not be seen on the output of the gate. Although this model is very robust, no practical circuits are possible due to the heavy restrictions. Instead the Quasi-Delay-Insensitive model is the smallest compromise model yet capable of generating useful computing circuits. For this reason circuits are often incorrectly referred to as Delay-Insensitive when they are Quasi-Delay-Insensitive.

Delay-insensitive circuits usually use dual-rail encodings for data. There are a variety of other delay-insensitive codes, such as constant-weight codes and the Berger code.

Famous quotes containing the words delay, insensitive and/or circuit:

    Hatred and vengeance, my eternal portion,
    Scarce can endure delay of execution:—
    Wait, with impatient readiness, to seize my
    Soul in a moment.
    William Cowper (1731–1800)

    I think sometimes that it is almost a pity to enjoy Italy as much as I do, because the acuteness of my sensations makes them rather exhausting; but when I see the stupid Italians I have met here, completely insensitive to their surroundings, and ignorant of the treasures of art and history among which they have grown up, I begin to think it is better to be an American, and bring to it all a mind and eye unblunted by custom.
    Edith Wharton (1862–1937)

    The Father and His angelic hierarchy
    That made the magnitude and glory there
    Stood in the circuit of a needle’s eye.
    William Butler Yeats (1865–1939)