Download as pdf or txt
Download as pdf or txt
You are on page 1of 29

Quine-McCluskey (Tabular)

Minimization Method

1
Quine-McCluskey (Tabular) Minimization
• Two step process utilizing tabular listings to:
• Identify prime implicants (implicant tables)
• Identify minimal PI set (cover tables)
• All work is done in tabular form
• Number of variables is not a limitation
• Basis for many computer implementations
• Don’t cares are easily handled
• Proper organization and term identification are key factors for correct
results

2
Quine-McCluskey Minimization (cont.)
• Terms are initially listed one per line in groups
• Each group contains terms with the same number of
true and complemented variables
• Terms are listed in numerical order within group
• Terms and implicants are identified using one of
three common notations
• full variable form
• cellular form
• 1,0,- form

3
Notation Forms
• Full variable form - variables and complements in
algebraic form
• hard to identify when adjacency applies
• very easy to make mistakes
• Cellular form - terms are identified by their decimal
index value
• Easy to tell when adjacency applies; indexes must differ by
power of two (one bit)
• Implicants identified by term nos. separated by comma;
differing bit pos. in () following terms

4
Notation Forms (cont.)
• 1,0,- form - terms are identified by their binary index value
• Easier to translate to/from full variable form
• Easy to identify when adjacency applies, one bit is different
• - shows variable(s) dropped when adjacency is used
• Different forms may be mixed during the minimization

5
ExampleF(A,
ofB,Different Notations
C, D) =  m(4,5,6,8,10,13)

Full variable Cellular 1,0,-

1 ABCD 4 0100
ABCD 8 1000
2 ABCD 5 0101
ABCD 6 0110
ABCD 10 1010
3 ABCD 13 1101

6
Implication Table (1,0,-)
• Quine-McCluskey Method
Implication Table
• Tabular method to systematically find all
prime implicants Column I
• ƒ(A,B,C,D) = Σ m(4,5,6,8,9, 10,13) + Σ d(0,7,15)
• Part 1: Find all prime implicants 0000
• Step 1: Fill Column 1 with active-set and DC- 0100
set minterm indices. Group by number of 1000
true variables (# of 1’s).
0101
0110
1001
1010

0111
1101
NOTE: DCs are included in this step! 1111

Page 7
Implication Table (cellular)
• Quine-McCluskey Method
Implication Table
• Tabular method to systematically find all
prime implicants Column I
• ƒ(A,B,C,D) = Σ m(4,5,6,8,9, 10,13) + Σ d(0,7,15)
• Part 1: Find all prime implicants 0
• Step 1: Fill Column 1 with active-set and DC- 4
set minterm indices. Group by number of 8
true variables (# of 1’s).
5
6
9
10

7
13
NOTE: DCs are included in this step! 15

Page 8
Minimization - First Pass (1,0,-)
 Quine-McCluskey Method
 Tabular method to systematically find all Implication Table
prime implicants
 ƒ(A,B,C,D) = Σ m(4,5,6,8,9,10,13) + Σ Column I Column II
d(0,7,15) 0000  0-00
 Part 1: Find all prime implicants -000
 Step 2: Apply Adjacency - Compare 0100 
1000  010-
elements of group with N 1's against 01-0
those with N+1 1's. One bit difference 0101  100-
implies adjacent. Eliminate variable and 0110  10-0
place in next column. 1001 
1010  01-1
E.g., 0000 vs. 0100 yields 0-00 -101
0000 vs. 1000 yields -000 0111  011-
When used in a combination, mark with a 1101  1-01
check. If cannot be combined, mark with 1111  -111
a star. These are the prime implicants. 11-1
Repeat until nothing left.

9
Minimization - First Pass (cellular)
 Quine-McCluskey Method
 Tabular method to systematically find all Implication Table
prime implicants
 ƒ(A,B,C,D) = Σ m(4,5,6,8,9,10,13) + Σ Column I Column II
d(0,7,15) 0 0,4(4)
 Part 1: Find all prime implicants 0,8(8)
 Step 2: Apply Adjacency - Compare 4
8 4,5(1)
elements of group with N 1's against 4,6(2)
those with N+1 1's. 2n difference implies 5 8,9(1)
adjacent. Next col is numbers with diff in 6 8,10(2)
parentheses. 9
10  5,7(2)
E.g., 0 vs. 4 yields 0,4(4) 5,13(8)
5 vs. 7 yields 5,7(2) 7 6,7(1)
When used in a combination, mark with a 13  9,13(4)
check. If cannot be combined, mark with 15  7,15(8)
a star. These are the prime implicants. 13,15(2)
Repeat until nothing left.

10
Minimization - Second Pass (1,0,-)
 Quine-McCluskey Method
 Step 2 cont.: Apply Adjacency - Compare Implication Table
elements of group with N 1's against
those with N+1 1's. One bit difference Column I Column II Column III
implies adjacent. Eliminate variable and
0000  0-00 * 01-- *
place in next column. -000 *
E.g., 0000 vs. 0100 yields 0-00 0100  -1-1 *
0000 vs. 1000 yields -000 1000  010- 
01-0 
When used in a combination, mark with a 0101  100- *
check. If cannot be combined, mark with 0110  10-0 *
a star. These are the prime implicants. 1001 
1010  01-1 
-101 
Repeat until nothing left. 0111  011- 
1101  1-01 *

1111  -111 
11-1 

11
Minimization - Second Pass (cellular)
 Quine-McCluskey Method
 Step 2 cont.: Apply Adjacency - Compare Implication Table
elements of group with N 1's against
those with N+1 1's. 2n difference implies Column I Column II Column III
adjacent. Next col is numbers with
0 0,4(4) * 4,5,6,7(3) *
differences in parentheses. 0,8(8) *
E.g., 4,5(1) and 6,7(1) yields 4 5,7,13,15
4,5,6,7(3) 8 4,5(1)  (10) *
4,6(2) 
When used in a combination, mark with a 5 8,9(1) *
check. If cannot be combined, mark with 6 8,10(2) *
a star. These are the prime implicants. 9
Repeat until nothing left. 10  5,7(2) 
5,13(8) 
7 6,7(1) 
13  9,13(4) *

15  7,15(8) 
13,15(2) 

12
Prime Implicants
Prime Implicants:
A
AB
00 01 11 10
0 - 00  A C D - 000  B C D
CD
00 X 1 0 1

01 0 1 1 1 100 -  A B C 10 - 0  A B D
D

C
11 0 X X 0 1- 01  A C D -1 -1  B D
10
01- -  A B
0 1 0 1

13
Prime Implicants (cont.)
Prime Implicants:
A
AB
00 01 11 10
0 - 00  A C D - 000  B C D
CD
00 X 1 0 1

01 0 1 1 1 100 -  A B C 10 - 0  A B D
D

C
11 0 X X 0 1- 01  A C D -1 -1  B D
10
01- -  A B
0 1 0 1

Stage 2: find smallest set of prime implicants that cover the


active-set

recall that essential prime implicants must be in final


expression

14
Coverage Table
Coverage Chart

4 5 6 8 9 10 13
0,4(0-00) X

0,8(-000) X

8,9(100-) X X Note: Don’t include DCs in


8,10(10-0) X X
coverage table; they don’t
have covered by the final
9,13(1-01) X X
logic expression!
4,5,6,7(01--) X X X

5,7,13,15(-1-1) X X

rows = prime implicants


columns = ON-set elements
place an "X" if ON-set element is
covered by the prime implicant

15
Coverage Table (cont.)
Coverage Chart

4 5 6 8 9 10 13 4 5 6 8 9 10 13
0,4(0-00) X 0,4(0-00) X

0,8(-000) X 0,8(-000) X

8,9(100-) X X 8,9(100-) X X

8,10(10-0) X X 8,10(10-0) X X

9,13(1-01) X X 9,13(1-01) X X

4,5,6,7(01--) X X X 4,5,6,7(01--) X X X

5,7,13,15(-1-1) X X 5,7,13,15(-1-1) X X

rows = prime implicants If column has a single X, than the


columns = ON-set elements implicant associated with the row
place an "X" if ON-set element is is essential. It must appear in
covered by the prime implicant minimum cover

16
Coverage Table (cont.)
4 5 6 8 9 10 13
0,4(0-00) X

0,8(-000) X

8,9(100-) X X

8,10(10-0) X X

9,13(1-01) X X

4,5,6,7(01--) X X X
X
5,7,13,15(-1-1) X

Eliminate all columns covered by


essential primes

17
Coverage Table (cont.)
4 5 6 8 9 10 13 4 5 6 8 9 10 13
0,4(0-00) X 0,4(0-00) X

0,8(\000) X 0,8(\000) X

8,9(100-) X X 8,9(100-) X X

8,10(10-0) X X 8,10(10-0) X X

9,13(1-01) X X 9,13(1-01) X X

4,5,6,7(01--) X X X 4,5,6,7(01--) X X X
X X
5,7,13,15(-1-1) X 5,7,13,15(-1-1) X

Eliminate all columns covered by Find minimum set of rows that


essential primes cover the remaining columns

F  ABD  ACD  AB

18
Implementations of Two-level Logic
• Sum-of-products
• AND gates to form product terms
(minterms)
• OR gate to form sum

• Product-of-sums
• OR gates to form sum terms
(maxterms)
• AND gates to form product

19
NAND & NOR IMPLEMENTATION

20
Two-level Logic using NAND Gates
• Replace minterm AND gates with NAND gates
• Place compensating inversion at inputs of OR gate

21
Two-level Logic using NAND Gates
(cont’d)
• OR gate with inverted inputs is a NAND gate
• de Morgan's: A' + B' = (A • B)'
• Two-level NAND-NAND network
• Inverted inputs are not counted
• In a typical circuit, inversion is done once and signal
distributed

22
Two-level Logic using NOR Gates
• Replace maxterm OR gates with NOR gates
• Place compensating inversion at inputs of AND gate

23
Two-level Logic using NOR Gates (cont’d)
• AND gate with inverted inputs is a NOR gate
• de Morgan's: A' • B' = (A + B)'
• Two-level NOR-NOR network
• Inverted inputs are not counted
• In a typical circuit, inversion is done once and signal distributed

24
Two-level Logic using NAND and NOR
Gates
• NAND-NAND and NOR-NOR networks
• de Morgan's law: (A + B)' = A' • B'
(A • B)' = A' + B'
• written differently: A + B = (A' • B')’
(A • B) = (A' + B')'
• In other words ––
• OR is the same as NAND with complemented inputs
• AND is the same as NOR with complemented inputs
• NAND is the same as OR with complemented inputs
• NOR is the same as AND with complemented inputs
OR OR AND AND

NAND NAND NOR NOR


25
Conversion Between Forms
• Convert from networks of ANDs and ORs to networks of
NANDs and NORs
• Introduce appropriate inversions ("bubbles")
• Each introduced "bubble" must be matched by a
corresponding "bubble"
• Conservation of inversions
• Do not alter logic function
• Example: AND/OR to NAND/NAND

A A
NAND
B B
Z NAND Z
C C
NAND
D D 26
Conversion Between Forms (cont’d)
• Example: verify equivalence of two forms
A A
NAND
B B
Z NAND Z
C C
NAND
D D

Z = [ (A • B)' • (C • D)' ]'


= [ (A' + B') • (C' + D') ]'
= [ (A' + B')' + (C' + D')' ]
= (A • B) + (C • D) 

27
Conversion Between Forms (cont’d)
• Example: map AND/OR network to NOR/NOR network
A

B
Z
C
D

A \A
NOR NOR
\B
B
Z NOR Z
C
\C
D NOR NOR
\D
Step 1 Step 2
conserve conserve
"bubbles" "bubbles" 28
Conversion Between Forms (cont’d)
• Example: verify equivalence of two forms
\A
A NOR
\B
B
Z
C NOR Z

D \C
NOR
\D

Z = { [ (A' + B')' + (C' + D')' ]' }'


={ (A' + B') • (C' + D') }'
= (A' + B')' + (C' + D')'
= (A • B) + (C • D) 

29

You might also like