next up previous
Next: Chaos in asynchronous Up: Limits to the Previous: Introduction

Sources of uncertainty

One of us (MJU) [1] has shown experimentally that it is possible to put any logic flip-flop into a metastable state by careful choice of input switching pulse amplitude and duration. The process is akin to balancing a pencil on its point; any error in the initial setting with respect to the unstable fixed point is then subject to exponential growth. Surprisingly, the noise inherent in the flip-flop circuitry does not affect the statistics of the settling out from the metastable state which is thus induced. This is for the following two reasons; first, the noise is of zero mean when averaged over time, and second, the effect of such added noise is to perturb the initial conditions and therefore the entry point to the metastable state. Usually the process determining the initial condition is similarly noiselike, and so the circuit noise simply adds to this uncertainty, leaving the probability of entering metastability unaffected. In fact, the circuit noise over time causes as many additional entries to metastability as it prevents. That said, the addition of noise to the initial setting error can have two independent effects. First, it can tip the balance so that the flip-flop settles into the opposite state. Second, in any isolated instance, it will increase or decrease the settling time. Thus a random distribution of initial states which grows exponentially with time results in the circuit settling randomly into one or other of its two stable states. Flip-flops are composed of a number of inverting gates accompanied by pairs of inverting buffers. The buffers come in pairs because it is necessary to preserve the inverting character of the gates. Each gate or buffer has an associated time constant. Simple flip-flops have two associated poles, and in a standard technology both these poles have the same time constants. However, flip-flops made up from standard double-buffered gates will have six poles. This has important consequences for the dynamics of gate settling in the metastable region, as we shall see.

In general, flip-flops consist of non-inverting amplifiers with positive feedback. Thus the switching time depends on the transfer function pole with the largest positive real part in a linearised approximation. Experimentally, [1], the flip-flops made up from double-buffered gates display between 4 and 7 cycles of oscillation before settling randomly. The hypothesis is that this is due to the s-shaped transfer function resulting in the positive gain being non-linear and settling so that there are a pair of poles on the imaginary axis which determine the gain as far as the real positive pole associated with the notional linear transfer function (a chord on the s-shaped characteristic) is concerned. The remaining three poles are of no consequence, as far as settling from metastability is concerned.

The consequence of all this is that the flip-flop output stays undefined, or oscillatory, in terms of its logic state, for many time constants. One estimates this number of time constants by postulating that the unstable solution has to grow from the initial random level (which can be arbitrarily small even in the presence of significant noise), to the logic level, exponentially. In a gate engineered to operate at a repetition speed of fHz the noise power associated with the gate input is NkTf where N is the noise factor, k Boltzmann's constant, and T the absolute temperature. Assuming a best design of noise factor of 2, room temperature operation at 300K, and a design impedance level for the terminated interconnecting transmission lines of 50, this gives us a voltage noise level on the gate input of about 650 picovolts/Hz. Thus at a conservative switching speed f of 100MHz, one has an uncertainty of about 6.5 microvolts on the gate input. The typical logic level reached will be about 3.3 volts say, and so the ratio of logic level to noise level will be about .

In the case that the initial setting error is comparable with the inherent gate noise, it will take times the time constant associated with the unstable pole for the gate to settle. Clearly, if the initial setting error is significantly less than this noise level then the final state of the gate is randomly chosen by the arbiter. If however the setting error is greater than the noise level, the added noise will not usually result in an error of judgement. We should assume noise whose amplitude is distributed according to a Gaussian distribution; then given the setting error it is possible to calculate the statistics of erroneous arbitrations.

Now typically, we can hypothesize that when strongly driven ( i.e. not deliberately placed into a metastable state) the flip flop transition time will be of the order of a single time constant associated with the buffers. Again we can hypothesize that at maximum operating speed, the flip flop is set and reset over a time interval no longer than about five times this time constant. This is because we assume equal ramp up and ramp down times, and a total transition time comparable with the total static time in the fastest gate cycle. Thus entry into metastability will interfere with the following three transitions of the flip flop. Comparing this time with the 13 time constants it takes a gate that is initially set within the noise to settle, it is clear that delays in switching due to metastability are at least as important as errors due to added noise in describing the reliability of operation.

Now consider arbitration circuits. Functionally, these cannot be engineered to behave any faster or better than their component flip-flops. The purpose of an arbitration circuit is to impose branching on the machine trajectory depending on which of two inputs changes first in time. Again, considering a maximum slew rate for the input, if the inputs change simultaneously within the noise criterion referred to earlier, then the output of the arbiter will be quite unpredictable and indeterminate, not related to the input request values, and possibly metastable, resulting in the arbiter being withdrawn from effective service for about three logic periods on average.

We hypothesize that the arbiter accepts inputs which slew up over 1/5 of a logic period, remain stable for 3/5 of a logic period, the slew down over the remaining 1/5 of a logic period. Thus to remain within the noise limitations referred to above, both input transitions must be timed to within of a logic period. There will thus be about probability per arbitration request of error, or indeterminate output, or metastability, in an asynchronous parallel machine where we assume all inputs to the arbiter change at a uniformly distributed random time within a hypothetical clock period.

We now have to estimate the number of such arbitration requests per second. This will depend directly on the degree of parallelism in the machine, the machine logic speed, and the architecture. It is clearly possible to design a machine having minimal requests on arbiters; we suggest that this will necessarily involve a trade off in potential speed.

It has been suggested that it is possible to take steps to avoid arbitration errors and metastability problems. [3]. However, to the authors' knowledge, all such systems rely on concepts such as the stretchable clock, which presupposes the arrival times are under the control of the system, combined with metastability detectors, which presupposes that a metastable event has occurred which it is desired to avoid in future. We contend that all such methods sacrifice the speed and advantages of parallel computation, by essentially imposing a serial nature on some or all of the machine operation. At the error rate postulated here, such an overhead will be significant.

To conclude this section, if the asynchronous parallel machine has P parallel paths involving arbitrations which are requested at a probability p per logic period, and the basic machine speed which is set by the maximum repetition rate of the logic elements, is fHz, then we propose that there will be at least arbitration uncertainties or errors per second. Nothing can be said about the quantities P and p without considering the specific architecture and problem, but we may estimate f to be of the order or greater than Hz.



next up previous
Next: Chaos in asynchronous Up: Limits to the Previous: Introduction



David Jefferies
Mon May 27 11:12:28 BST 1996