Loading...

Lecture 5: Logic Simplication & Karnaugh Map

• Boolean simplification with Boolean Algebra • Boolean simplification using Karnaugh Maps • “Don’t cares”

Professor Peter Cheung Department of EEE, Imperial College London (Floyd 4.5-4.11) (Tocci 4.1-4.5)

E1.2 Digital Electronics I

5.1

Cot 2007

E1.2 Digital Electronics I

Forms of Boolean Expressions

Cot 2007

Canonical Form

• Sum-of-products form (SOP) – first the product (AND) terms are formed then these are summed (OR) – eg: ABC + DEF + GHI

• Product-of-sum form (POS) – first the sum (OR) terms are formed then the products are taken (AND) – eg: (A+B+C) (D+E+F) (G+H+I)

• Canonical form is not efficient but sometimes useful in analysis and design • In an expression in canonical form, every variable appears in every term f(A, B,C, D) = ABCD + ABCD + ABCD – note that the dot (meaning AND) is often omitted

• It is possible to convert between these two forms using Boolean algebra (DeMorgan’s)

E1.2 Digital Electronics I

Cot 2007

E1.2 Digital Electronics I

Cot 2007

– An SOP expression can be forced into canonical form by ANDing the incomplete terms with terms of the form (X + X ) where X is the name of the missing variable – eg:

f ( A, B, C) = AB + BC

• Previous example: • Construct the truth table for this function – use a 0 when the variable is complemented, 1 otherwise

f ( A, B , C ) = ABC + ABC + ABC R o w N u m ber 0 1 2 3 4 5 6 7

= AB(C + C) + ( A + A) BC = ABC + ABC + ABC + ABC = ABC + ABC + ABC

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 0 1 1

– f can be written as the sum of row numbers having TRUE minterms

– The product term in a canonical SOP expression is called a 'minterm' E1.2 Digital Electronics I

A Notation using Canonical Form

f = ∑ ( 3,6,7 ) Cot 2007

Simplifying Logic Circuits

E1.2 Digital Electronics I

Cot 2007

Method 1: Minimization by Boolean Algebra

• First obtain one expression for the circuit, then try to simplify. • Example:

• Make use of relationships and theorems to simplify Boolean Expressions – perform algebraic manipulation resulting in a complexity reduction – this method relies on your algebraic skill – 3 things to try • Two methods for simplifying – Algebraic method (use Boolean algebra theorems) – Karnaugh mapping method (systematic, step-by-step approach)

E1.2 Digital Electronics I

5.7

Cot 2007

E1.2 Digital Electronics I

Cot 2007

• a) Grouping – Given

• b) Multiplication by redundant variables

A + AB + BC

– write it as – then apply

– Multiplying by terms of the form A + A does not alter the logic – Such multiplications by a variable missing from a term may enable minimization – eg: AB + AC + BC = AB ( C + C ) + AC + BC

A(1 + B ) + BC

1+ B = 1

= ABC + ABC + AC + BC = BC (1 + A ) + AC (1 + B )

– Minimized form

A + BC E1.2 Digital Electronics I

= BC + AC

Cot 2007

E1.2 Digital Electronics I

Cot 2007

Example of Logic Design Design a logic circuit having 3 inputs, A, B, C will have its output HIGH only when a majority of the inputs are HIGH.

• c) Application of DeMorgan's Theorem – Expressions containing several inversions stacked one upon the other may often by simplified by applying DeMorgan's Theorem. – DeMorgan's Theorem "unwraps" the multiple inversion – eg:

Step 1 Set up the truth table

ABC + ACD + BC = ( A + B + C ) + ( A + C + D ) + BC = ( A + B + C + D ) + BC

E1.2 Digital Electronics I

Step 2 Write the AND term for

A

B

C

x

0

0

0

0

0

0

1

0

0

1

0

0

0

1

1

1

→ ABC

= ( A + B + C + D)

each case where the output

1

0

0

0

1

0

1

1

= ABCD

is a 1.

1

1

0

1

→ A BC → ABC

1

1

1

1

→ ABC

Cot 2007

E1.2 Digital Electronics I

5.12

Cot 2007

Step 5 Implement the circuit Step 3 Write the SOP form the output Step 4 Simplify the output expression

x = ABC + A BC + AB C + ABC x = ABC + ABC + A BC + ABC + AB C + ABC = BC ( A + A) + AC ( B + B ) + AB (C + C ) = BC + AC + AB

E1.2 Digital Electronics I

5.13

Cot 2007

E1.2 Digital Electronics I

5.14

Cot 2007

Minimization by Karnaugh Maps – 4 Variable example • What is a Karnaugh map?

AB\CD

– 3 Variable Example: A\BC

00

01

11

01

1 – A grid of squares – Each square represents one minterm

A . B . C , bottom-right represents

01

11

?

??

10

00

10

0

• eg: top-left represents

00

11 10

A. B. C

– The minterms are ordered according to Gray code

– The square marked ? represents

A . B.C . D

– The square marked ?? represents

A . B.C. D

• only one variable changes between adjacent squares

– Squares on edges are considered adjacent to squares on opposite edges – Karnaugh maps become clumsier to use with more than 4 variables

E1.2 Digital Electronics I

Cot 2007

– Note that they differ in only the C variable.

E1.2 Digital Electronics I

Cot 2007

Filling out a Karnaugh Map

Minimization Technique

• Write the Boolean expression in SOP form • For each product term, write a 1 in all the squares which are included in the term, 0 elsewhere

• Minimization is done by spotting patterns of 1's and 0's • Simple theorems are then used to simplify the Boolean description of the patterns • Pairs of adjacent 1's

– canonical form: one square – one term missing: two adjacent squares – two terms missing: 4 adjacent squares

• Eg:

– remember that adjacent squares differ by only one variable – hence the combination of 2 adjacent squares has the form

P(A + A)

X = A BC + A B C + AB C + ABC A\BC

00

01

11

– this can be simplified (from before) to just P

10

0

0

0

1

0

1

0

1

1

1

E1.2 Digital Electronics I

Cot 2007

E1.2 Digital Electronics I

Cot 2007

X = A BC + AB C + ABC + ABC • Take out previous example (Slide 12) • “Cover” all the 1’s with maximum grouping: A\BC

00

01

11

10

0

0

0

1

0

1

0

1

1

1

the adjacent squares A B C and A B C differ only in A – hence they can be combined into just BC – normally indicated by grouping the adjacent squares to be combined

A\BC

00

01

11

10

0

0

0

1

0

1

0

1

1

1

• The simplified Boolean equation is one that sums all the terms corresponding to each of the group:

X = AC + BC + AB

• Adjacent Pairs – The same idea extends to pairs of pairs

E1.2 Digital Electronics I

Cot 2007

E1.2 Digital Electronics I

Cot 2007

More examples

More Examples of grouping

AB\CD

00

01

11

10

AB\CD

00

01

11

10

00

0

1

0

0

00

0

0

0

0

01

0

1

0

0

01

1

0

0

1

1

0

1

1

0

0

0

0

11

1

1

1

1

11

10

0

1

0

0

10

BD + ABC

AB + C D

E1.2 Digital Electronics I

E1.2 Digital Electronics I

5.23

Cot 2007

E1.2 Digital Electronics I

5.22

Cot 2007

Cot 2007

E1.2 Digital Electronics I

5.24

Cot 2007

Complete Simplification Process 1. Construct the K map and place 1s and 0s in the squares according to the truth table. 2. Group the isolated 1s which are not adjacent to any other 1s. (single loops) 3. Group any pair which contains a 1 adjacent to only one other 1. (double loops) 4. Group any octet even if it contains one or more 1s that have already been grouped. 5. Group any quad that contains one or more 1s that have not already been grouped, making sure to use the minimum number of groups. 6. Group any pairs necessary to include any 1s that have not yet been grouped, making sure to use the minimum number of groups. 7. Form the OR sum of all the terms generated by each group. E1.2 Digital Electronics I

5.25

Cot 2007

E1.2 Digital Electronics I

Don’t Care Conditions

5.26

Cot 2007

More “Don’t Care” examples

• In certain cases some of the minterms may never occur or it may not matter what happens if they do – In such cases we fill in the Karnaugh map with and X

“Don’t care” conditions should be changed to either 0 or 1 to produce K-map looping that yields the simplest expression.

• meaning don't care

– When minimizing an X is like a "joker" • X can be 0 or 1 - whatever helps best with the minimization

– Eg:

A\BC

00

01

11

10

0

0

0

1

X

1

0

0

1

1

– simplifies to B if X is assumed 1

X = B E1.2 Digital Electronics I

Cot 2007

E1.2 Digital Electronics I

5.28

Cot 2007

The Karnaugh Map with 5 variables

OPEN

E1.2 Digital Electronics I

= M F1 + M F 3 + M F 2

5.29

Cot 2007

•Compared to the algebraic method, the K-map process is a more orderly process requiring fewer steps and always producing a minimum expression. •The minimum expression in generally is NOT unique. •For the circuits with large numbers of inputs (larger than four), other more complex techniques are used.

5.31

5.30

Cot 2007

Summary

K Map Method Summary

E1.2 Digital Electronics I

E1.2 Digital Electronics I

Cot 2007

• SOP and POS –useful forms of Boolean equations • Design of a comb. Logic circuit (1) construct its truth table, (2) convert it to a SOP, (3) simplify using Boolean algebra or K mapping, (4) implement • K map: a graphical method for representing a circuit’s truth table and generating a simplified expression • “Don’t cares” entries in K map can take on values of 1 or 0. Therefore can be exploited to help simplification

E1.2 Digital Electronics I

5.32

Cot 2007

Loading...