copyright © 2004 by miguel a. marin revised 2008-011 mcgill university department of electrical and...

38
Copyright © 20 04 by Miguel A. Marin Revised 20 1 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS DESIGN

Upload: alicia-parrish

Post on 04-Jan-2016

218 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

1

McGILL UNIVERSITYDEPARTMENT OF ELECTRICAL AND

COMPUTER ENGINEERING

COURSE ECSE - 323DIGITAL SYSTEMS DESIGN

Page 2: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

2

BOOLEAN LOGIC THEORY BOOLEAN FUNCTIONS CANONICAL FORMS, DUALITY,

COMPLEMENTATION IMPLICANTS, PRIME-IMPLICANTS SIMPLIFICATION OF BOOLEAN FUNCTIONS

K-MAP METHOD TABULAR METHODS

PRIME IMPLICANTS DETERMINATION QUINE-McCLUSKEY METHOD SVOBODA METHOD

PRIME IMPLICANTS SELECTION COVERING TABLE PETRICK FUNCTION

SHANNON EXPANSION

Page 3: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

3

BOOLEAN FUNCTIONS A BOOLEAN FUNCTION F OF N

VARIABLES IS A MAPPING OF 2N POINTS ONTO 0,1

EXAMPLE: N = 3, F = A B + !CID A B C F

0 0 0 0 1 Maxterms1 0 0 1 0

2 0 1 0 1 minterms3 0 1 1 04 1 0 0 15 1 0 1 06 1 1 0 17 1 1 1 1

Page 4: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

4

CANONICAL FORMS SUM-OF-PRODUCTS OR -FORM

IS OBTAINED BY SUMMING (OR’ING) ALL MINTERMS

EXAMPLE: F(A,B,C) = A B + !C

ID A B C F0 0 0 0 1 1 0 0 1 02 0 1 0 1 minterms F = m ( 0,2,4,6,7) = !A !B !C + !A B !C + A !B !C + A B !

C + A B C 3 0 1 1 04 1 0 0 15 1 0 1 06 1 1 0 17 1 1 1 1

Page 5: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

5

CANONICAL FORMS

PRODUCT-OF-SUMS OR -FORMIS OBTAINED BY AND’ING ALL MAXTERMS

EXAMPLE: F(A,B,C) = A B + !C

ID A B C F0 0 0 0 1 1 0 0 1 02 0 1 0 1 MAXTERMS F = M (1,3,5) = ( A + B +!C) (A + !B + !C) (!A + B + !C) 3 0 1 1 04 1 0 0 15 1 0 1 06 1 1 0 17 1 1 1 1

Page 6: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

6

DUALITY THE DUAL F D OF A FUNTION F IS

OBTAINED BY CHANGING IN F BOOLEAN CONSTANTS 0, 1 BY 1, 0 RESPECTIVELY OPERATORS “•“BY“+“ AND VICE VERSA THE POLARITY OF THE VARIABLES ARE UNCHANGEDEXAMPLE 1: F = A B + !C. FD= (A + B) • !C.EXAMPLE 2: A + 0 = A; (A + 0)D = (A)D ; A • 1 = A; A = ATHE HANTINGTON AXIOMS OF BOOLEAN ALGEBRA ARE

INVARIANT UNDER DUALITY. PROBLEM: FIND ALL SELF-DUAL FUNTIONS OF N = 3

VARIABLES.HOW MANY SUCH FUNTIONS ARE THERE?

Page 7: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

7

COMPLEMENTATIONDe MORGANS THEOREM

THE COMPLEMENT !F OF A FUNTION F IS OBTAINED BY CHANGING IN F

TRUE VARIABLES BY COMPLEMENTED VARIABLES COMPLEMENTED VARIABLES BY TRUE VARIABLES BOOLEAN CONSTANTS 0, 1 BY 1, 0 RESPECTIVELY OPERATOR “•“ BY “+“ OPERATOR “+“ BY “•“EXAMPLE 1: F = A B + !C. !F = (!A + !B) • C.

PROBLEM: SHOW THAT FD(A,B,C,…,Z) = !F(!A,!B,!C,…,!Z).

Page 8: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

8

IMPLICANTS, PRIME-IMPLICANTS

LITERAL: a variable either in true or complemented form

TERM: the product (AND’ing) of literals Example: Let F = A B + !C, AB and !C are terms

MINTERM: a term containing all literals Example: F(A,B) = A B + !A !B; AB and !A!B are minterms

IMPLICANT of F: a term,T, such that (T=1) (F=1)

Example: Let F = A B + !C; T = AB is an implicant of F because for A=1, B=1, T = 1 and also F = 1.

Page 9: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

9

IMPLICANTS, PRIME-IMPLICANTS

PRIME-IMPLICANT of F: is an implicant containing a minimum number of literals

Example: Let F = A B C + A B !C. ABC is an implicant of F but it is not a prime-implicant. However, AB is an implicant and also a prime-implicant.

RULE: An implicant becomes a prime-implicant when no literals can be removed by the application of the theorems of Boolean algebra.

Example: Let F = ABC + AB!C = AB(C+!C) = AB. AB is a prime-implicant of F.

Page 10: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

10

IMPLICANTS, PRIME-IMPLICANTS

PROPERTIES: ANY MINTERM OF THE ∑∏ - CANONICAL FORM OF !F

CANNOTBE IN THE ∑∏ - CANONICAL FORM OF F.

Example: F(A,B,C) = ∑ m (0,2,4,6,7), !F = ∑ m (1,3,5) Thus, F and !F have no minterms in common. ANY TERM OF A ∑∏ - FORM (NOT NECESSARILY CANONICAL)

OF !F CANNOT BE IN A ∑∏ - FORM OF F Example: Let F = A B + !C and !F = !A C + !B C; !BC cannot

belong to a ∑∏ - FORM of F because it implies !F. Effectively, for B=0,C=1, !BC = 1, !F = !A.1 + 1.1 = 1. !BC !F. In other words a term cannot be a term of both, F and !F.

AN IMPLICANT OF F CANNOT BE AN IMPLICANT OF !F AND VICE VERSA.

Page 11: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

11

SIMPLIFICATION OF BOOLEAN FUNCTIONS: K-MAPS A K-map is formed by assigning

points of a logic space to squares of a map, in such a way that any two adjacent squares, including the edges of the map, represent points differing onlyin one bit.

Example: K-map of n = 2 variables

ID Logic space A B

0 0 0 1 0 12 1 03 1 1

A B

0

1

0

0 2

1 1 3

K-map for n = 2

Page 12: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

12

SIMPLIFICATION OF BOOLEAN FUNCTIONS: K-MAPS

Example of K-map for n = 3 variables

ID Logic Space A B C 0 0 0 0 1 0 0 1 2 0 1 0 3 0 1 1 4 1 0 0 5 1 0 1 6 1 1 0 7 1 1 1

ABC 00 01 11 10

0

0 2 6 4

1

1 3 7 5

Page 13: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

13

SIMPLIFICATION OF BOOLEAN FUNCTIONS: K-MAPS

Example of K-map for n = 4 variables

ABCD

00 01 11 10

000 4 12 8

011 5 13 9

113 7 15 11

102 6 14 10

Page 14: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

14

SIMPLIFICATION OF BOOLEAN FUNCTIONS: K-MAPS REPRESENTATION OF BOOLEAN FUNCTIONS

EXAMPLE: N = 3, F(A,B,C) = A B + !CID A B C F0 0 0 0 1 1 0 0 1 02 0 1 0 13 0 1 1 04 1 0 0 15 1 0 1 06 1 1 0 17 1 1 1 1

ABC 00 01 11 10

0 1 1 1 1

1 0 0 1 0

Page 15: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

15

SIMPLIFICATION OF BOOLEAN FUNCTIONS: K-MAP METHOD SUM-OF-PRODUCTS

MINIMIZATION: OBJECTIVE: FIND MINIMUM

NUMBER OF PRODUCTS, EACH PRODUCT CONTAINING MINIMUM NUMBER OF LITERALS.

RULE: GROUP MAXIMUM NUMBER OF 2K (K N) ADJACENT 1’S, AND SELECT MINIMUM NUMBER OF THESE GROUPS TO FORM THE GIVEN FUNCTION

EXAMPLE:

F(A,B,C) = ∑m(0,2,4,6,7) = AB + !C AB and !C are prime-implicants. THE ABOVE RULE USE THE

THEOREM:A B+A !B = A(B+!B) = A

EXHOSTIVELY

ABC

00 01 11 10

0 1 1 1 1

1 0 0 1 0!C AB

Page 16: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

16

SIMPLIFICATION OF BOOLEAN FUNCTIONS: K-MAP METHOD PRODUCT-OF-

SUMS MINIMIZATION:

OBJECTIVE: FIND MINIMUM NUMBER OF SUMS, EACH SUM CONTAINING MINIMUM NUMBER OF LITERALS.

RULE: GROUP MAXIMUM NUMBER OF 2K (K N) ADJACENT 0’S, AND SELECT MINIMUM NUMBER OF THESE GROUPS TO FORM THE GIVEN FUNCTION

EXAMPLE: F(A,B,C) = ∑m(0,2,4,6,7) = =(A + !C)( B + !C).

ABC

00 01 11 10

0 1 1 1 1

1 0 0 1 0(A + !C) (B +!C)

Page 17: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

17

SIMPLIFICATION OF BOOLEAN FUNCTIONS: K-MAP METHOD MORE EXAMPLES

FIND MINIMAL SUM-OF-PRODUCTS OF

F(A,B,C,D) = m (0,1,2,5,7,8,9,10,11,13,14). FMIN(A,B,C,D) = A !B + !C D + !A B D + !B !D +

A C !D ABCD 00 01 11 10

001 0 0 1

011 1 1 1

110 1 0 1

101 0 1 1

A !B

!B !DFOUR CORNERS

!C D

A C !D

!A B D

Page 18: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

18

SIMPLIFICATION OF BOOLEAN FUNCTIONS: K-MAP METHOD MORE EXAMPLES

FIND MINIMAL SUM-OF-PRODUCTS OF F(A,B,C,D) = m (1,5,7,8,9,10,11,13,14) + d (6,15)

where d (6,15) are the unspecified or DON’T care points, which may be assigned either 0 or 1 to help forming larger groups of

adjacent 1’s

FMIN (A,B,C,D) = !C D + A !B + B C

ABCD 00 01 11 10

00 0 0 0 1

01 1 1 1 1

11 0 1x

1

10 0x 1

1

A !B

!C D

B C

Page 19: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

19

SIMPLIFICATION OF BOOLEAN FUNCTIONS:TABULAR METHODS

TABULAR METHODS: PRIME IMPLICANTS DETERMINATION

QUINE-McCLUSKEY METHOD SVOBODA METHOD

PRIME IMPLICANTS SELECTION COVERING TABLE PETRICK FUNCTION

TABULAR METHODS ARE ITENDED TO BE USED IN THEIR COMPUTERISED VERSION.

THEY ARE TEDIOUS WHEN USED MANUALLY.

Page 20: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

20

SIMPLIFICATION OF BOOLEAN FUNCTIONS:TABULAR METHODS

PRIME IMPLICANTS DETERMINATION:THE QUINE-McCLUSKEY METHOD

CONSISTS OF APPLYING THE THEOREM X A + X !A = X, SYSTEMATICALLY AND EXHOSTIVELY, TO ELIMINATE AS MANY LITERALS AS POSSIBLE FROM EACH MINTERM.

A PRODUCT TERM IS REPRESENTED IN BINARY FORM. A MISSING LITERAL IS REPLACED BY THE SYMBOL “-” .

EXAMPLE: FOR N = 4, (A B !C D) = (1 1 0 1), (A B!D) = (1 1 – 0)

Page 21: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

21

SIMPLIFICATION OF BOOLEAN FUNCTIONS:TABULAR METHODS

PRIME IMPLICANTS DETERMINATION:QUINE-McCLUSKEY METHOD

EXAMPLE: FIND THE PRIME-IMPLICANTS OF F(A B C) = m(0,2,4,6,7)

1.- ORGANIZE THE MINTERMS IN GROUPS CONTAINING EQUAL NUMBER OF 1’S,

ID A B C F0 0 0 0 1

2 0 1 0 14 1 0 0 16 1 1 0 17 1 1 1 1

Page 22: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

22

SIMPLIFICATION OF BOOLEAN FUNCTIONS:TABULAR METHODS

2.- COMPARE, IN PAIRS, EACH MINTERM IN ONE GROUP WITH EVERY MINTERM IN THE ADJACENT GROUP. IF THEIR BINARY REPERENTATION DIFFER ONLY IN ONE BIT, THEY CAN BE GROUPED. THE VARIABLE IN QUESTION GETS REPLACED BY A THE SYMBOL “- “. THE GROUPED MINTERMS ARE CHECK MARKED. WE OBTAIN, THUS, THE FIRST REDUCTION TABLE.

ID A B C F GROUPS A B C

0 0 0 0 1 (0,2) 0 - 0

2 0 1 0 1 (0,4) - 0 0

4 1 0 0 1 (2,6) - 1 0

6 1 1 0 1 (4,6) 1 - 0

7 1 1 1 1 (6,7) 1 1 -

Page 23: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

23

SIMPLIFICATION OF BOOLEAN FUNCTIONS:TABULAR METHODS3.- REPEATE THE GROUPING PROCEDURE WITH THE GROUPED

MEMBERS OF THE FIRST REDUCTION TABLE. CANDIDATES FOR GROUPING WILL BE THOSE PAIRS HAVING THE “-” SYMBOL IN THE SAME LOCATION AND DIFFERING IN ONLY ONE BIT. CHECK MARK THOSE MEMBERS GROUPED. THUS, WE OBTAIN THE SECOND REDUCTION TABLE.

ID A B C F GROUPS A B C GROUPS A B C0 0 0 0 1 (0,2) 0 - 0 (0,2,4,6) - - 0

2 0 1 0 1 (0,4) - 0 0 4 1 0 0 1 (2,6) - 1 0 6 1 1 0 1 (4,6) 1 - 0 7 1 1 1 1 (6,7) 1 1 -

Page 24: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

24

SIMPLIFICATION OF BOOLEAN FUNCTIONS:TABULAR METHODS

4.-THE PROCESS IS ITERATED UNTIL NO FURTHER GROUPINGS CAN BE FORMED WITH THE MEMBERS OF THE REDUCTION TABLES OBTAINED.

5.-THE MEMBERS WITH NO CHECK MARKS IN ALL TABLES, INCLUDING THE MINTERM TABLE, ARE THE PRIME-IMPLICANTS OF THE FUNCTION.

ID A B C F GROUPS A B C GROUPS A B C0 0 0 0 1 (0,2) 0 - 0 (0,2,4,6) - - 0

2 0 1 0 1 (0,4) - 0 0 4 1 0 0 1 (2,6) - 1 0 6 1 1 0 1 (4,6) 1 - 0 7 1 1 1 1 (6,7) 1 1 -

6.- THE PRIME-IMPLICANTS ARE: (1 1 -) = A B , (- - 0) = !C

Page 25: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

25

SIMPLIFICATION OF BOOLEAN FUNCTIONS:TABULAR METHODS PRIME-IMPLICANT DETERMINATION: Quine-McCluskey MethodExample: Find the prime-implicants of F(A,B,C,D) = m(0,1,2,5,7,8,9,10,11,13,14)

Id. A B C D 0 0 0 0 0 1 0 0 0 1 2 0 0 1 0 8 1 0 0 0 5 0 1 0 1

9 1 0 0 1 Prime-implicants 10 1 0 1 0 !A B D 7 0 1 1 1 A C !D 11 1 0 1 1 !B !C 13 1 1 0 1 !B !D 14 1 1 1 0 !C D

A !B

Groups A B C D (0,1,8,9) - 0 0 - (0,2,8,10) - 0 - 0 (1,5,9,13) - - 0 1

(8,10,9,11) 1 0 - -

Page 26: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

26

SIMPLIFICATION OF BOOLEAN FUNCTIONS:TABULAR METHODS

PRIME-IMPLICANT DETERMINATION: SVOBODA METHOD

A PRODUCT TERM IS REPRESENTED IN TERNARY FORM. A MISSING LITERAL IS REPRESENTED BY “0”. A TRUE VARIABLE BY “1 “. A COMPLEMENTED VARIABLE BY “2”

EXAMPLE: FOR N = 4, (A B !C D) = (1 1 2 1), (A B!D) = (1 1 0 2) EACH TERM HAS AN IDENTIFIER WHICH IS THE DECIMAL EQUIVALENT

OF ITS TERNARY REPRESENTATION EXAMPLE: T 43 = (A B !C D) = (1 1 2 1), T38 = (A B!D) = (1 1 0 2)

THE METHOD CONSISTS OF CANCELLING, IN THE SPACE OF 3N TERMS, ALL THE IMPLICANTS OF THE MINTERMS OF !F. THE NON-CANCELLED TERM WITH SMALLEST IDENTIFIER IS AN IMPLICANT OF F AND IS A PRIME-IMPLICANT, BECAUSE IT CONTAINS MINIMUM NUMBER OF LITERALS (SMALLEST IDENTIFIER)

THE NEXT NON-CANCELLED TERM IS A PRIME-IMPLICANT IF IT IS NOT PART OF (CONTAINED IN, OR IS AN IMPLICANT OF) ANOTHER, PREVIOUSLY FOUND PRIME-IMPLICANT.

Page 27: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

27

SIMPLIFICATION OF BOOLEAN FUNCTIONS:TABULAR METHODS

PRIME-IMPLICANT DETERMINATION:SVOBODA METHODEXAMPLE: FIND THE PRIME-IMPLICANTS OF

F(A,B,C)=m(0,2,4,6,7)1.- FORM !F = m(1,3,5)2.- CONSIDER EACH MEMBER OF THE SPACE

OF 3N TERMS. STARTING WITH IDENTIFIER 0 AND PROGRESSING IN ASCENDING ORDER, FIND THE FIRST TERM WHICH IS NOT IMPLIED BY ANY MINTERM OF !F. IN OUR EXAMPLE THIS TERM IS, T2 = (0 0 2) = !C,WHICH IS THE FIRST PRIME IMPLICANT OF THE FUNCTION.

3.- TERMS T3 TO T11 ARE ALL CANCELLED, BECAUSE THEY EITHER ARE IMPLICANTS OF A MINTERM OF !F OR IMPLY T2 , THE ALREADY FOUND PRIME IMPLICANT.

4.- THE NEXT AND LAST NON-CANCELLED TERM IS T12 = (1 1 0) = A B

BCA

00 01 02 10 11 12 20 21 22

0 x x PI x x x x x x

0 1 2 3 4 5 6 7 8

1 x x x PI (1) x

(1x

x (0)x

(1)x

9 10

11

12

13

14

11

15

16

17

2 x x x x (0)x

(1x

x (0)x

(1)x

18

19

20

21

22

23

2 24

25

26

Page 28: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

28

SIMPLIFICATION OF BOOLEAN FUNCTIONS:TABULAR METHODS

PRIME-IMPLICANT SELECTION COVERING TABLE TO COMPLETE THE MINIMIZATION PROCESS, THE

SELECTION OF THE MINIMAL NUMBER OF PRIME-IMPLICANTS COVERING THE FUNTION IS ACCOMPLISHED USING A TWO ENTRY TABLE, CALLED THE COVERING TABLE.

THE PROCEDURE CONSISTS OF: ENTERING A CHECK MARK IN THOSE ENTRIES OF THE

TABLE WHERE A PRIME-IMPLICANT (ROW) CONTAINS OR COVERS THE CORRESPONDING MINTERM (COLUMN)

Page 29: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

29

SIMPLIFICATION OF BOOLEAN FUNCTIONS:TABULAR METHODS SELECTING THOSE PRIME-IMPLICANTS CORRESPONDING TO

COLUMNS WITH ONLY ONE CHECK MARK. THESE PRIME-IMPLICANTS ARE CALLED ESSENTIAL AND BELONG TO EVERY MINIMAL FORM

THE TABLE IS REDUCED BY CANCELLING ALL THE MINTERMS (COLUMNS) COVERED BY THE ESSENTIAL PRIME-IMPLICANTS.

CONSIDERING NOW THE REDUCED TABLE, A TRIAL-AND-ERROR PROCESS GIVES THE MINIMUM NUMBER OF PRIME-IMPLICANTS COVERING ALL THE COLUMNS OF THE TABLE. THERE MAY BE MORE THAN ONE POSSIBILITY TO DO THIS. THE NUMBER OF LITERALS OF THE CHOSEN PRIME-IMPLICANTS MUST BE TAKEN INTO CONSIDERATION.

Page 30: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

30

SIMPLIFICATION OF BOOLEAN FUNCTIONS:TABULAR METHODS

PRIME-IMPLICANT SELECTION COVERING TABLE EXAMPLE: FIND THE

MINIMAL SUM-OF-PRODUCTS EXPRESION FOR F(A,B,C) = m(0,2,4,6,7)

THE SET OF PRIME-IMPLICANTSFOUND BY EITHER THE QUINEMcCLUSKEY OR SVOBODAMETHOD IS, {AB, !C}.BOTH PRIME-IMPLICANTS AREESSENTIAL FMINIMAL = A B + !C

Min PI

0!A!B!

C

2!AB!

C

4A!B!

C

6AB!C

7ABC

P1=AB

P2=!C

P1 COVERS 6 AND 7 AND IS ESSENTIAL FOR 7

P2 COVERS 0,2,4 AND ALSO 6; IT IS ESSENTIAL FOR 0,2,4

Page 31: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

31

SIMPLIFICATION OF BOOLEAN FUNCTIONS:TABULAR METHODS

PRIME-IMPLICANT SELECTION PETRICK FUNTION

THE SAME RESULT MAY BE OBTAINED BY WRITING AND SIMPLIFYING A FUNCTION P, CALLED THE PETRICK FUNCTION, IN SUCH A WAY THAT P = 1 WHEN THE STATEMENT {ALL MINTERMS HAVE BEEN COVERED} IS TRUE.

THE P FUNCTION CORRESPONDING TO THE PREVIOUS EXAMPLE ISP = P2.P2.P2 (P1 + P2) P1 = P1.P2 (P1 + P2) = P1.P2

WHICH IS EQUIVALENT TO THE STATEMENT, {P1 AND P2 ARE ESSENTIAL TO COVER ALL MINTERMS OF THE FUNCTION}

THUS, FMINIMAL = P1 + P2 = A B + !C IN GENERAL, THE SIMPLIFIED SUM-OF-PRODUCTS FORM OF THE

PETRICK FUNCTION HAS MORE THAN ONE TERM. THE TERMS HAVING MINIMUM NUMBER OF PI’S (PRIME-IMPLICANTS) CORRESPOND TO MINIMAL SUM-OF-PRODUCTS EXPRESSIONS OF THE GIVEN FUNCTION F .

Page 32: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

32

SIMPLIFICATION OF BOOLEAN FUNCTIONS:TABULAR METHODS

ANOTHER EXAMPLE FIND ALL MINIMAL SUM-OF-PRODUCTS EXPRESSIONS OF THE FUNCTION

F(A,B,C,D) = (0, 2, 4, 7, 9, 10, 14, 15)1.- PRIME-IMPLICANTS DETERMINATION: Quine-McCluskey Method

List of Minterms First and only reduction 0 0000 (0,2) 00-02 0010 (0,4) 0-00 4 0100 (2,10) -0109 1001 (10,14) 1-1010 1010 (7,15) -1117 0111 (14,15) 111-14 1110 The prime-implicants are shown in

bold 15 1111 characters

Page 33: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

33

SIMPLIFICATION OF BOOLEAN FUNCTIONS:TABULAR METHODS

2.- PRIME-IMPLICANTS SELECTION: COVERING TABLE METHODMinterms -- 0 2 4 7 9 10 14 15Prime implicantsP1: (9) 1001 xP2 (0,2) 00-0 x xP3: (0,4) 0-00 x xP4: (2,10) -010 x x P5: (10,14) 1-10 x xP6: (7,15) -111 x xP7: (14,15) 111- x x

P1, P3 AND P6 ARE ESSENTIAL PRIME-IMPLICANTS

Page 34: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

34

SIMPLIFICATION OF BOOLEAN FUNCTIONS:TABULAR METHODS COVERING TABLE METHOD

FMINIMAL = P1 + P3 + P6 + … THE REDUCED TABLE IS

Minterms -- 2 10 14_ Prime implicantsP2: (0,2) 00-0 xP4: (2,10) -010 x x P5: (10,14) 1-10 x xP7: (14,15) 111- x__

To cover the minterms 2, 10, 14, we have three choices, namely, P4 and P5,

or P2 and P5 or P4 and P7, each one requiring only two terms of equal

number of literals; any other choice will require three terms.

Page 35: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

35

SIMPLIFICATION OF BOOLEAN FUNCTIONS:TABULAR METHODS COVERING TABLE METHOD

THUS, THERE ARE THREE MINIMAL SUM-OF-PRODUCTS EXPRESSIONS:

FMINIMAL = P1 + P3 + P6 + P4 + P5.

FMINIMAL = P1 + P3 + P6 + P2 + P5.

FMINIMAL = P1 + P3 + P6 + P4 + P7.

ESSENTIAL SECONDARY

PRIME-IMPLICANTS PRIME-IMPLICANTS

Page 36: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

36

SIMPLIFICATION OF BOOLEAN FUNCTIONS:TABULAR METHODS

PETRICK FUNCTION METHOD

Minterms -- 0 2 4 7 9 10 14 15__Prime implicantsP1:(9) 1001 xP2:(0,2) 00-0 x xP3:(0,4) 0-00 x xP4:(2,10) -010 x x P5:(10,14) 1-10 x xP6:(7,15) -111 x xP7:(14,15) 111- x x_ _

P = (P2 + P3) (P2 + P4)(P3)(P6)(P1)(P4 + P5)(P5 + P7)(P6 + P7).P = P3 P6 P1 (P2 P5 + P4 P5 + P4 P7 ) =P = P3 P6 P1 P2 P5 + P3 P6 P1 P4 P5 + P3 P6 P1 P4 P7.

THESE THREE TERMS CORRESPOND TO THE THREE MINIMAL FORMS OF F

FMINIMAL = P1 + P3 + P6 + P4 + P5.FMINIMAL = P1 + P3 + P6 + P2 + P5.FMINIMAL = P1 + P3 + P6 + P4 + P7.

Page 37: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

37

SHANNON EXPANSION SHANNON POVED THAT ANY BOOLEAN FUNCTION CAN

BE EXPANDED, WITH RESPECT TO A PARTRICULAR VARIABLE, IN THIS WAY:

F(A,B,C,…,Z) = !A F(0,B,C,…,Z) + A F(1,B,C,…,Z)WHERE F(0,B,C,…,Z) = FA=0(A,B,C,…,Z), AND

F(1,B,C,…,Z) = FA=1(A,B,C,…,Z) ARE CALLED RESIDUE FUNCTIONS

EXPANDING NOW THE RESIDUE FUNCTIONS WITH RESPECT TO B WE OBTAIN:

F = !A!B F(0,0,C,…,Z) + !A B F(0,1,C,…,Z) + A !B F(1,0,C,…,Z) + A B F(1,1,C,…,Z).Repeating the process for all variables, we obtain the standard canonical sum-of-products of F.

Page 38: Copyright © 2004 by Miguel A. Marin Revised 2008-011 McGILL UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE ECSE - 323 DIGITAL SYSTEMS

Copyright © 2004 by Miguel A. Marin Revised 2008-01

38

SHANNON EXPANSION

EXAMPLES: Give the Shannon expansion of F(A,B,C) = A B + !C

with respect to A and C,

F = !A !B [!C] + !A B [!C] + A !B [!C] + A B [ 1]. Give the Shannon expansion of F(A,B,C,D) = AB + AC

+ AD+ BC + BD + CD with respect to B and D.

F = !B!D[AC]+!BD[AC + A + C]+B!D[A + AC + C]+ BD[1].

F = !B!D [AC] + !BD [A + C] + B !D [A + C] + BD [1].

THE SHANNON EXPANSION HAS APPLICANTIONS IN

MULTIPLEXER IMPLEMENTATION OF BOOLEAN FUNCTIONS