Asynchronous Sequential Circuits
Asynchronous Sequential Circuits
x1
Combinational Z1
Circuit Design
y0 Y0
delay
Secondary Variables Excitaion Variables
(present State) (next state)
delay
yk Yk
delay
d a d
flow table 1
This table is called a primitive flow table
• Because it has only one stable state in each row.
• Can also have a flow table with more than one stable state in the same
row.
Asynchronous Sequential Circuits
For a system that has two states a and b; two inputs x1 and
x2 and one output Z.
Flow table 2
Asynchronous Sequential Circuits
From the flow-table, observe the behaviour of the circuit
x1x2
00 01 11 10
0 0 0 0 1
Y x1 x 2 x1 y
1 0 0 1 1
Asynchronous Sequential Circuits
• The output map is obtained directly from the output values
of the flow-table.
x1 x2
y 00 01 11 10
0 0 0 0 0
1 0 0 1 0
Z x1 x 2 y
Z
x1
x2 Y
Example
If the state variables must change from 00 11, the
difference in delays may cause the first variable to
change faster than the second
Static-1 hazard
• occurs when output momentarily goes to 0 when it should
remain a 1.
Static-0 hazard
• occurs when output momentarily goes to 1 when it should
remain a 0.
Race conditions
Y x1 y x 2 x1 y x 2 x1 x 2 yx 2
0 0 1 1 0
1 0 1 0 0
Stability Considerations
• Those values of Y that are equal to y are circled and represent
stable states x1x2
y 00 01 11 10
0 0 1 1 0
1 0 1 0 0
with input x1x2 fixed at 11
the values of Y and y are never the same.
Now if y=0,
• Output of the NAND gate = 1
• Output of the AND gate = 1 Y = 1 with the result that Y
y.
Stability Considerations
• If it is assumed that each gate has a propagation delay of 5
nseconds (including tracks on PCB),
Find that Y = 0 for 10 nseconds
y
Also Y = 1 for the next 10 nseconds.
x1 Y
x2
input x
output Z
1 2 3 4 1 2 3 4 1 2
Moore Model
• A Moore model state diagram for this circuit can be designed
– Moore models are often used for asynchronous sequential circuits
because a stable state is clearly identified in the Moore model by a
“return” path around the state.
– A transition from a stable state will only occurs when the input changes
from the return value
1 0 1
State
0
1/0 2/0 3/0 4/1
0
1/0
1 0
Output
0
1 0 1
1 0 0
• The next step is to draw the state table giving the information
in tabular form. i.e. the primitive flow table
Present State Next State Output Z
1 1 2 0
2 3 2 0
3 3 4 0
4 1 4 1
Flow Table
• Stable states are again indicated by circles
around the stable state numbers in the Next
State columns
– 1, 2, 3, 4 Present Ne Sta Output
State Z
– Circled state will be the same as the number xt te
in the present state column. 1 1 2 0
3 3 4 0
• Primitive flow table should then be
minimised where possible 4 1 4 1
– no minimisation in this example.
1 4 3
1 00 01 0
2 11 01 0
3 11 10 0
4 00 10 1
– First practical digital systems were constructed with delays which were
more adaptable to asynchronous type operations
• The RS-flip flip design approach assigns one flip-flop for each
secondary variable.
– The inputs to these flip-flops are determined by the required change of y
to Y.
Circuit Implementation with RS Flipflops
• Using the following table
Required Output Flip-flop Inputs
Change Qt To Qt+1 S R
0 0 0 X
0 1 1 0
1 0 0 1
1 1 X 0
00 0 0 00 X X
1 0
S2 01
R2 01 0 X
11 X X 11 0 0
10 0 X 10 1 0
S 2 y1 x R 2 y1 x
x x
y1y2 0 1 y1y2 0 1
00 0 1 00 X 0
0 0
S1 01 X X
R1 01
11 X 0 11 0 1
10 0 0 10 X X
S1 y 2 x R1 y 2 x
Circuit Implementation
The final circuit is
y1
Z
y2
y1 S2
x
Y2 y2
y1
x x x R2 Y2 y2
x
y2 S1 Y1 y1
x
y2
x R1 Y1 y1
Circuit Implementation
• A particular advantage of the RS flip-flop method is
that it is not necessary to correct for static hazards
– As all the prime implicants are present in both the set and
reset functions, which will be the case in all problems.
• This might cause a critical race hazard, though this is unlikely with
two-level circuits. The inverse y and output can be generates
using a separate gate is necessary.
Summary
• Asynchronous circuits very useful for many
applications