Professional Documents
Culture Documents
Reduction of Digital Logic
Reduction of Digital Logic
Reduction of Digital Logic
B-2
Chapter Contents
B.1 Reduction of Combinational Logic and Sequential Logic B.2 Reduction of Two-Level Expressions B.3 State Reduction
B-3
B-4
Reduced
ABC
ABC F AB C ABC
B-5
B-6
B-7
ABC
B-8
Minterm Index 0 1 2 3 4 5 6 7
A 0 0 0 0 1 1 1 1
B 0 0 1 1 0 0 1 1
C 0 1 0 1 0 1 0 1
F 0 0 0 1 0 1 1 1
AB C 0
00 0-side
00
01
1
11 1
10
1-side
B-9
F = BC + AC + AB
Principles of Computer Architecture by M. Murdocca and V. Heuring
1999 M. Murdocca and V. Heuring
B-10
F = BC + AC + AB The K-map approach yields the same minimal two-level form as the algebraic approach.
Principles of Computer Architecture by M. Murdocca and V. Heuring
1999 M. Murdocca and V. Heuring
B-11
K-Map Groupings
Minimal grouping is on the left, non-minimal (but logically equivalent) grouping is on the right. To obtain minimal grouping, create smallest groups first.
AB 00 CD 00 01
2
01
1
11
10
AB CD 00
4
00
01
2
11
10
1 1 1 1 1 1 1
3
1
1 5
01 11
3
1 1 1
1 1 1
4
11 10
10
F = A BC + ACD + ABC + AC D
Principles of Computer Architecture by M. Murdocca and V. Heuring
F = BD + A BC + ACD + ABC + AC D
1999 M. Murdocca and V. Heuring
B-12
F=BCD + B D + AB
Principles of Computer Architecture by M. Murdocca and V. Heuring
1999 M. Murdocca and V. Heuring
B-13
F= BC D + BD
Principles of Computer Architecture by M. Murdocca and V. Heuring
F= A B D + B D
1999 M. Murdocca and V. Heuring
B-14
Five-Variable K-Map
Visualize two 4-variable K-maps stacked one on top of the other; groupings are made in three dimensional cubes.
AB CDE 000 001 011 010 1 AB CDE 100 101 111 110
00 1
01
11
10
00 1
01
11
10
1 1 1
1 1
1 1
1 1
F = A C D E + A B DE + B E
Principles of Computer Architecture by M. Murdocca and V. Heuring
1999 M. Murdocca and V. Heuring
B-15
Six-Variable K-Map
Visualize four 4-variable K-maps stacked one on top of the other; groupings are made in three dimensional cubes.
DEF 000 001 011 010 1 1 1 1 ABC 000 001 011 010 1 DEF 100 101 111 110 ABC 000 001 011 010 1
G = B C EF + A B DE
Principles of Computer Architecture by M. Murdocca and V. Heuring
1999 M. Murdocca and V. Heuring
B-16
B-17
Map-Entered Variables
An example of a K-map with a map-entered variable D.
AB C 0 1
00 D
01
11
10
F = BC + ABCD
B-18
AB C 0 1
00 D
01 d 1
11 E 1
10 E
B-19
B-20
B-21
Table of Choice
The prime implicants form a set that completely covers the function, although not necessarily minimally. A table of choice is used to obtain a minimal cover set.
Prime Implicants 0 00 _ * 0 11 _ * 1 01 _ 0 __ 1 _ _1 1 * _ 1_ 1
Principles of Computer Architecture by M. Murdocca and V. Heuring
Minterms 0001
1999 M. Murdocca and V. Heuring
0011
0101
0110
0111
1010
1101
B-22
Eligible Set X Y Z 0 0 0_ 0 _ _1 _ _ 11
Set 2 0__1
B-23
Minterm m0 m1 m2 m3 m4 m5 m6 m7
B-24
m0 m3 m 7 m 1 m 3 m4 m 6 m 7
* 0 00 * 0 _1 * 1 _0 * _ 1_ 1 1_
F0,1,2 * _ 1 1
B-25
We will look at characterizing the delay for a logic gate, and a method of reducing circuit depth using function decomposition.
B-26
+5V
A NOT gate input changes from 1 to 0
10%
(Fall Time) 50% (2.5V) 90% Propagation Delay (Latency) Transition Time
0V
+5V
The NOT gate output changes from 0 to 1 10%
90%
0V Time
Principles of Computer Architecture by M. Murdocca and V. Heuring
1999 M. Murdocca and V. Heuring
B-27
MUX Decomposition
1 0 0 1 0 1 1 0 0 1 0 0 0 0 0 1
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
1 0 0 1
00 01 10 11
BC+BC
F 0 1 1 0
B C 0 00 01 10 11
00 01 10 11
B C+ B C
A D
A B C D B C
B-28
OR-Gate Decomposition
Fanin affects circuit depth.
A BCD AB CD AB C D
(A + B) + (C + D) Balanced tree
B-29
State Reduction
Description of state machine M0 to be reduced.
B-30
Distinguishing Tree
A next state tree for M0.
(ABCDE) 0 (CDA)(CC) (ABE)(CD) 0 1 Next states Distinguished states 1 (EEC)(BA) (ABE)(CD) 0 1
(DC)(A)(DD) (EE)(C)(EE) (CC)(C)(CC) (EE)(B)(AB) (AB)(E)(CD) (AB)(E)(CD)* 0 1 (CC)(C)(CC) (AB)(E)(AA) (AB)(E)(CD) 0 1 (CD)(A)(CC) (EE)(C)(EE)
Principles of Computer Architecture by M. Murdocca and V. Heuring
1999 M. Murdocca and V. Heuring
B-31
Input Current state AB: A' CD: B' E: C' 0 B'/0 B'/1 A'/0
B-32
Machine M2
B-33
S0 = S0S1 + S0S1
B-34
X S0S1 00 01 11 10
S0 = S 1
X 0 1 S0S1 00 01 11 10 0 1 1 1 1
S1 = X
X 1 S0S1 00 01 11 10 1 0 1 1 1 1
1 1
1 1
Z = S1 X + S0 X
B-35
D
1/0 0/0
B
0/0 1/0
E
1/1 0/0
A
0/0 1/0
F
0/1
1/1
C
Input: 011011100 1/0 Output: 0 0 1 1 1 1 0 1 0 Time: 0 1 2 3 4 5 6 7 8
Principles of Computer Architecture by M. Murdocca and V. Heuring
G
1/0
1999 M. Murdocca and V. Heuring
B-36
B-37
B-38
X 0
S2S1S0Z
1
S2S1S0Z
B-39
Excitation Tables
In addition to the D flip-flop, the S-R, J-K, and T flip-flops are used as delay elements in finite state machines. A Master-Slave J-K flip-flop is shown below.
J CLK K
J Q K Q
Circuit
Symbol
B-40
K-map reduction of next state and output functions for sequence detector.
S0X 00 01 11 10
00 1
01
11 d
10 1 1 1
S2S1 S0X 00 01 11 10
00
01
11 d
10
1 1 1 1
d d d
1 1
d d d
S 0 = S 2 S1 X + S 0 X + S2S0 + S1X
S1 = S2S1X + S2S0X
S2S1 00 S0X 00 01 11 10
01 1 1 1 1
11 d d d d
10
S2S1 00 S0X 00 01
01
11 d d
10
1 1
11 10
d d 1
S2 = S2S0 + S1
Principles of Computer Architecture by M. Murdocca and V. Heuring
B-41
Clocked T Flip-Flop
Logic diagram and symbol for a T flip-flop.
1 T
Q T
K Q Circuit
Q Symbol
B-42
X
CLK
D Q S0 Q
D Q S1 Q
D Q S2 Q
B-43
Excitation Tables
Each table shows the settings that must be applied at the inputs at time t in order to change the outputs at time t+1.
Qt Qt+1 S-R flip-flop 0 0 1 1 0 1 0 1 S 0 1 0 0 R 0 0 1 0 D flip-flop Qt Qt+1 0 0 1 1 0 1 0 1 D 0 1 0 1
J K 0 1 d d d d 1 0 T flip-flop
Qt Qt+1 0 0 1 1 0 1 0 1
T 0 1 1 0
B-44
Serial Adder
Time (t) 4 3 2 1 0 01100 01110 X Z Serial Y Adder Cout Cin 4 3 2 1 0 Time (t) 11010
A
00/1
B
11/1
10/0
State transition diagram, state table, and state assignment for a serial adder.
Input Present state A B Next state 00 A/0 A/1 01 A/1 B/0 Output
10 A/1 B/0
11 B/0 B/1
B-45
X Y St 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1
D 0 0 0 1 0 1 1 1
S 0 0 0 0 0 0 1 0
R 0 1 0 0 0 0 0 0
T 0 1 0 0 0 0 1 0
J 0 d 0 d 0 d 1 d
K d 1 d 0 d 0 d 0
Z 0 1 1 0 1 0 0 1
B-46
X Y Y Z X
B-47
X Y Y Z X
B-48
D
1/0 00_ 01_
B
0/0 Input History ___ 0__ 0/0 0/0 1/0 Input: 0 1 1 1 0 0 1 0 1 Output: 0 0 1 0 0 0 0 0 1 Time: 0 1 2 3 4 5 6 7 8 1__ 1/1 1/1
F
0/0 1/0 10_ 11_
C
0/1 1/1
B-49
B-50
Input P.S.
S2S1S0
X 0
S2S1S0Z
Input 1 P.S.
S2S1S0
X 0
T2T1T0Z
1
T2T1T0Z
S2S1S0Z
B-51
0 0 1 0 0 0 0 0
x x 1 D Q T 2 Q 1 0 0 0 0
x x 0 x 1 0 1 0 0
0 0 0 D Q T 0 Q 0 x 1 0 0
D Q T 1 Q
CLK