##### Document information

Karnaugh Maps

Docsity.com

Karnaugh Maps

• K-maps provide a simple approach to reducing Boolean expressions from a input-output table.

• The output from the table is used to fill-in the K-map. – 1’s are used to create a Sum of Product (SOP)

solution. (min terms) – 0’s are used to create a Product of Sum (POS)

solution. (max terms)

Docsity.com

Min Terms • Canonical representation of a Boolean

expression is in the form of ^ v ~ (AND, OR, NOT). – Example: A^B v ~A^~B v A^~B (AB + AB + AB)

• Candidates for canonical representation are taken from the truth table (input-output).

• Candidates are identified where the output is “1”. (Max Term canonical representation candidates are identified by “0”)

Docsity.com

Min Terms

Min terms are taken directly from the truth tables. Where ever there is a “1” for an output, F(), we note the min term value and place a “1” in the K-map corresponding to the min term value of the table.

Min term short hand is often used to replace a full input-output table. The short hand indicate the variables and the min terms that are “1”. Example: f(A,B,C) = Σ (1, 5, 7)

Docsity.com

Examples

f(A,B,C) = Σ (0, 1, 5, 7)

Input Output
min term A B C F(A,B,C)
0 0 0 0 ** 1
**1 0 0 1 ** 1
**2 0 1 0 **
**3 0 1 1 **
**4 1 0 0 **
**5 1 0 1 ** 1
**6 1 1 0 **
**7 1 1 1 ** 1
**

Input Output
min term A B F(A,B)
0 0 0 **
**1 0 1 ** 1
**2 1 0 ** 1
**3 1 1 **
**

f(A,B) = Σ (1, 2)

Docsity.com

K-Map Tables

• K-map tables are organized based on the number of variables. – Example: showing min terms in italic bold.

Docsity.com

K-Map Examples

~B B

A\B 0 1
~A 0 ** 1
**A 1

**f(A,B) = Σ (0, 3)**

*1*Reducing a Boolean expression using K-map 1. Identify min terms (from table or function form) 2. Fill-in appropriate K-map. 3. Group min terms in largest grouping using 4-neighbor rule.

1. a min term is a number if it is either to the right, left, top, or bottom. 2. K-map edges are connected as neighbors.

4. Write out the groupings as the reduced expression (circuit).

f(A,B) = ~A^~B v A^B

Docsity.com

K-Map Examples

~B B

A\B 0 1
~A 0 ** 1
**A 1

*1*f(A,B) = Σ (0, 2) f(A,B) = ~B

~B B

A\B 0 1 ~A 0

A 1 ** 1 1
** f(A,B) = Σ (2, 3) f(A,B) = A

~B B

A\B 0 1
~A 0 ** 1
**A 1

*1 1*f(A,B) = Σ (0, 4) f(A,B) = B v A

Docsity.com

K-Map Examples

Input Output
min term A B C F(A,B,C)
0 0 0 0 ** 1
**1 0 0 1 ** 1
**2 0 1 0 **
**3 0 1 1 **
**4 1 0 0 **
**5 1 0 1 ** 1
**6 1 1 0 **
**7 1 1 1 ** 1
**

~B ~B / C B / C B

A\BC 00 01 11 10
~A 0 ** 1 1
**A 1

*1 1*f(A,B,C) = ~A^~B v A^C

~B ~B / C B / C B

A\BC 00 01 11 10
~A 0 ** 1 1
**A 1

**f(A,B,C) = Σ (0, 2, 4)**

*1*f(A,B,C) = ~A^~C v ~B^~C

Docsity.com

K-Map Examples

f(A,B,C,D) = Σ (5, 7, 13, 15)

~C ~C / D C / D C

AB\CD 00 01 11 10 ~A 00

~A / B 01 ** 1 1
**A / B 11

**A 10**

*1 1*f(A,B,C) = B^D

f(A,B,C,D) = Σ (0,1,2,3,8,9,10,11)

~C ~C / D C / D C

AB\CD 00 01 11 10
~A 00 ** 1 1 1 1
**~A / B 01

A / B 11

A 10 *1 1 1 1
*

f(A,B,C) = ~B

Docsity.com

K-Map Examples

f(A,B,C,D) = Σ (0,1,2,8,9,10,15)

~C ~C / D C / D C

AB\CD 00 01 11 10
~A 00 ** 1 1 1
**~A / B 01

A / B 11 ** 1
**A 10

*1 1 1*f(A,B,C) = ~B^~C v ~B^~D v A^B^C^D

Docsity.com

HMWK Due 2/4

1. Build the input-output table from the following min term list of 4-variables: Σ (5, 7, 10, 11, 14, 15)

2. Using a K-map reduce the expression from 1 such that you minimize the number of connectives (AND, OR, NOT). Remember the answer should be in the sum of product form.

Docsity.com