DD Lecture 35 - 37
DD Lecture 35 - 37
Sequential Circuits
Synchronous Asynchronous
n input
variables
x1
x2
z1
z2 m output
variables
Asynchronous Sequential Logic
xn zm
Delay
• Next state variables – Excitation variables
Delay
• Transition state – System is Unstable yi ≠ Yi • I/p changes one at a time and only when the ckt is in stable state.
• Transition from one stable state to another occurs only in response to change in • Time between two i/p changes is longer than time to reach stable state.
input variables.
Fundamental mode
1
12/7/2022
y1
x
Y1
y2
Y2
States = y1y2x
Transition Table 4 stable states and
4 unstable state
State Table
x x x
y1y2 0 1 y1y2 0 1 y1y2 0 1 Next State
Present State
00 0 0 00 0 1 00 00 01
x=0 x=1
1 0 1 1
01 01 01 11 01
0 0 0 0 0 1
1 1 1 0 11 10
11 11 11 0 1 1 1 0 1
0 1
0 0 00 10
10 10 10 1 0 0 0 1 0
2
12/7/2022
a , 0 a , 0 0 0 1 1
b , 1 b , 0 1
b
Output Map
z = x1 x2 y
Transition Table z x1 x2
Y = (x1 . x2’) + (x1 . y) 00 01 11 10
y
0 0 0 0 0
1 0 0 1 0
Logic Diagram
x1
x2 Y
00 00 11 00 00 11
• For example state variable change can be 00 to 11, where-in unequal delays may lead
to situation like, 01 11 01 01
00 01 11 or
00 10 11 11 11 01
11
11 11
• If the order of change of variable is not important, and irrespective of this order we 10 10
can reach to final steady state, then it is non-critical race condition.
• If depending on order of change of variable, ckt can end up in two or more different 00 → 11 00 → 11 → 01
stable state, then it is critical race condition and should be avoided. 00 → 01 → 11 00 → 01
00 → 10 → 11 00 → 10 → 11 → 01
3
12/7/2022
01 01 01 11 01 11 01 11 01 11
11 11 11 10 11
11 11 11 11 10
10 10 10 10
10 10 10 10 01
10
00 → 11 00 → 11
00 → 01 → 11 → 10 00 → 01 → 11 01 → 11 → 10
00 → 01 00 → 01 → 11
00 → 10 00 → 10
y = x1’x2+x2y’ y
x1 x1
Y Y
x2 x2
Transition Table Transition Table
Logic Diagram x1 x2 Logic Diagram x1 x2
00 01 11 10 00 01 11 10
y y
0 0 1 1 0 0 0 1 1 0
0 1 0 0 0 1 0 0
1 1
S R Q Q’
R
Q 1 0 1 0
0 0 1 0 Aftter SR = 10
0 1 0 1
S Q’ 0 0 0 1 Aftter SR = 01
1 1 0 0
Cross-coupled Circuit
Truth Table
4
12/7/2022
Transition Table S 1 0 0 1
Y=Q SR Q
R 00 01 11 10 1 1 0 1 Aftter SR = 10
y
0 0 0 0 1
S 0 1 1 0
Q’
R
1 1 0 0 1 1 1 1 0 Aftter SR = 01
y
0 0 1 1
Y = SR’ + R’y
Circuit showing feedback Cross-coupled Circuit
Y = S + R’y when SR = 0
Truth Table
S2 = x1 x2
R2 = x2’ y1
Transition Table
S
Y=Q x1 x2
00 01 11 10
Step 1 – Check whether condition
y SR =0 is satisfied.
0 1 1 0 0
R
Step 2 –Build transition table.
1 1 1 1 0 i.e. Specify Y in terms of y and x.
y
01 01 01 11 11 01 01 01 11 11
11 00 11 11 10 11 00 11 11 10
10 00 10 11 10 10 00 10 11 10
5
12/7/2022
• For proper operation of ckt, in NOR latch SR =0, in NAND latch S’R’=0. 0 0 0 X
0 1 1 0
• Evaluate Y = S+R’y for NOR latch, and Y = S’+Ry for NAND latch.
1 0 0 1
• Construct map for Y, with y as rows and x as columns.
1 1 X 0
x1 x2
00 01 11 10
y x1 x2 x1 x2
0 00 01 11 10 00 01 11 10
0 0 0 1 y y
0 0 0 1 X X X 0
1 0 0 1 1
0 0 X X 1 1 0 0
Transition Table
Y = (x1 . x2’) + (x1 . y) Map Map
S = x1 x2’ R = x1’
0 1 1 0
1 0 0 1 1
1 0 0 1 S
x2
Transition Table
1 1 X 0
Circuit with NOR Latch Circuit with NAND Latch
x1 x2 x1 x2
00 01 11 10 x2 S
00 01 11 10 Y
y y
0 0 0 1 X X X 0
0 0 X X 1 1 0 0
x1 R
Map Map
S = x1 x2’ R = x1’
6
12/7/2022
S R Q Q’
1 0 0 1
Debounce Circuit 1 1 0 1
0 1 1 0
1 1 1 0
0 0 1 1
S
Q
A Q
R Q’
B
Q’
A B A
State model
Design Example - D =1,
G=1
D =0, D =1, 11
a, 0 b, 1 G=1
Design a gated latch circuit with two inputs G (gate) and D (data) and one output Q. 01 G=1 D =0,
G=1
Binary information present at the D input is transferred to the Q output when G is
equal to 1. D =0, D =1,
G=0 D =0, D =1, 10
The Q output will follow the D input as long as G = 1. G=1 G=1
G=0
00 D =1,
When G goes to 0, the information that was present at the D input at the time the c, 0 e, 1
G=1
transition occurred is retained at the Q output.
D =0,
The gated latch is a memory element that accepts the value of D when G = 1 and G=1
D =1,
retains this value after G goes to 0. D =1, D =0, G=0
D =0,
G=0 G=0 G=0 00
Once G = 0, a change in D does not change the value of the output Q.
10
d, 0 f, 1
a 0 1 0 D = Q because G = 1
b 1 1 1 D = Q because G = 1
c 0 0 0 After state a or d
d 1 0 0 After state c
e 1 0 1 After state b or f
f 0 0 1 After state e