Karnaugh Maps
Why Do You Need To Know About Karnaugh Maps?
What Is a Karnaugh Map?
Using Karnaugh Maps
Some Observations
Problems

Why Do You Need To Know About Karnaugh Maps?

Karnaugh Maps are used for many small design problems.  It's true that many larger designs are done using computer implementations of different algorithms.  However designs with a small number of variables occur frequently in interface problems and that makes learning Karnaugh Maps worthwhile.  In addition, if you study Karnaugh Maps you will gain a great deal of insight into digital logic circuits.

In this section we'll examine some Karnaugh Maps for three and four variables.  As we use them be particularly tuned in to how they are really being used to simplify Boolean functions.

The goals for this lesson include the following.

Given a Boolean function described by a truth table or logic function,
Draw the Karnaugh Mapfor the function.
Use the information from a Karnaugh Map to determine the smallest sum-of-products function.

What Does a Karnaugh Map Look Like?

A Karnaugh Map is a grid-like representation of a truth table.  It is really just another way of presenting a truth table, but the mode of presentation gives more insight.  A Karnaugh map has zero and one entries at different positions.  Each position in a grid corresponds to a truth table entry.  Here's an example taken from the voting circuit presented in the lesson on Minterms.  The truth table is shown first.  The Karnaugh Map for this truth table is shown after the truth table.

 A B C V 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 1

How Can a Karnaugh Map Help?

At first, it might seem that the Karnaugh Map is just another way of presenting the information in a truth table.  In one way that's true.  However, any time you have the opportunity to use another way of looking at a problem advantages can accrue to you.  In the case of the Karnaugh Map the advantage is that the Karnaugh Map is designed to present the information in a way that allows easy grouping of terms that can be combined.

Let's start by looking at the Karnaugh Map we've already encountered.  Look at two entries side by side.  We'll start by focussing on the ones shown below in gray.

Let's examine the map again.

• The term on the left in the gray area of the map corresponds to:
• The term on the right in the gray area of the map corresponds to:
• These two terms can be combined to give
The beauty of the Karnaugh Map is that it has been cleverly designed so that any two adjacent cells in the map differ by a change in one variable.  It's always a change of one variable any time you cross a horizontal or vertical cell boundaries.  (It's not fair to go through the corners!)

Notice that the order of terms isn't random.  Look across the top boundary of the Karnaugh Map.  Terms go 00, 01, 11, 10.  If you think binary well, you might have ordered terms in order 00, 01, 10, 11.  That's the sequence of binary numbers for 0,1,2,3.  However, in a Karnaugh Map terms are not arranged in numerical sequence!  That's done deliberately to ensure that crossing each horizontal or vertical cell boundary will reflect a change of only one variable.  In the numerical sequence, the middle two terms, 01, and 10 differ by two variables!  Anyhow, when only one variable changes that means that you can eliminate that variable, as in the example above for the terms in the gray area.

Let's check the claim made on above.  Click on the buttons to shade groups of terms and to find out what the reduced term is.

The Karnaugh Map is a visual technique that allows you to generate groupings of terms that can be combined with a simple visual inspection.  The technique you use is simply to examine the Karnaugh Map for any groups of  ones that occur.  Grouping ones into the largest groups possible and ensuring that all ones in the table have been included are the first step in using a Karnaugh Map.

In the next section we will examine how you can generate groups using Karnaugh Maps.  First, however, we will look at some of the kinds of groups that occur in Truth Tables, and how they appear in Karnaugh Maps.

Click on these buttons to show some groupings.  There's one surprise, but it really is correct.  In each case, be sure that you understand the term that the group represents.

There is a small surprise in one grouping above.  The lower left and the lower right 1s actually form a group.  They differ only in having B and its' inverse.  Consequently they can be combined.  You will have to imagine that the right end and the left end are connected.

So far we have focussed on K-maps for three variables.  Karnaugh Maps are useful for more than three variables, and we'll look at how to extend ideas to four variables here.  Shown below is a K-map for four variables.

Note the following about the four variable Karnaugh Map.

• There are 16 cells in the map.  Anytime you have N variables, you will have 2N possible combinations, and 2N places in a truth table or Karnaugh Map.
• Imagine moving around in the Karnaugh Map.  Every time you cross a horizontal or vertical boundary one - and only one - variable changes value.
• The two pairs of variables - WX and YZ - both change in the same pattern.
Otherwise, if you can understand a Karnaugh Map for a three-variable function, you should be able to understand one for a four-variable function.  Remember these basic rules that apply to Karnaugh maps of any size.
• In a Karnaugh Map of any size, crossing a vertical or horizontal cell boundary is a change of only one variable - no matter how many variables there are.
• Each single cell that contains a 1 represents a minterm in the function, and each minterm can be thought of as a "product" term with N variables.
• To combine variables, use groups of 2, 4, 8, etc.  A group of 2 in an N-variable Karnaugh map will give you a "product" term with N-1 variables.  A group of 4 will have N-2 variables, etc.
• You will never have a group of 3, a group of 5, etc.  Don't even think about it.  See the points above.
Let's look at some examples of groups in a 4-variable Karnaugh Map.
Example 1 - A Group of 2

Here is a group of 2 in a 4-variable map.

Note that Y and Z are 00 and 01 at the top of the two columns in which you find the two 1s.  The variable, Z, changes from a 0 to a 1 as you move from the left cell to the right cell.  Consequently, these two 1s are not dependent upon the value of Z, and Z will not appear in the product term that results when we combine the 1s in this group of 2.  Conversely, W, X and Y will be in the product term.  Notice that in the row in which the 1s appear, W = 0 and X = 1.  Also, in the two columns in which the 1s appear we have Y = 0.  That means that the term represented by these two cells is:

Problem

P1.   Here is a Karnaugh map with two entries.  Determine the product term represented by this map.

Larger groups in Karnaugh Maps of any size can lead to greater simplification.  Let's consider the group shown shaded below.  There are four terms covered by the shaded area.

• In the upper left:-
• In the upper right;
• In the lower left;
• In the lower right;
These terms can be combined (assuming they are all ones in the Karnaugh Map!).  The result is
• By combining the first two terms above (the two terms at the top of the Karnaugh Map):-
• By combining the last two terms above (the two terms at the bottom of the Karnaugh Map):-
• Then, these two germs can be combined to give:
Notice how making the grouping larger reduces the number of variables in the resulting terms.  That simplification helps when you start to connect gates to implement the function represented by a Karnaugh map.

By now you should have inferred the rules for getting the sum-of-products form from the Karnaugh map.

• The number of ones in a group is a power of 2.  That's 2, 4, 8 etc.
• If a variable takes on both values (0 and 1) for different entries (1s) in the Karnaugh Map, that variable will not be in the sum-of-products form.  Note that the variable should be one in half of the K-Map ones and it should be zero (inverted) in the other half.
• If a variable is always 1 or always zero (it appears either inverted all the time in all entries that are one, or it is always not inverted) then that variable appears in that form in the sum-of-products form.
Now, let's see if you can apply those rules.

Problem

P2.   Here is a Karnaugh Map with four entries.  What is the sum-of-products form for the four ones shown?

P3.   Here is a Karnaugh Map with four entries.  What is the sum-of-products form for the four ones shown?

P4.   Here is a Karnaugh Map with four entries.  What is the sum-of-products form for the four ones shown?

P5.   Here is a Karnaugh Map with eight entries.  What is the sum-of-products form for the four ones shown?

Some Further Observations

There are a few further observations that should be made.  Note the following.

• There may well be more than one solution of equal complexity.
• Here is an example Karnaugh Map.  There are two groups that are obvious - one in orange, and one in light blue.
• In this example, the two terms shown are:
• There is still one entry to account for.  There is a 1 that can be joined to either of two other entries to form a group.  There is no best way to go on this.  Either way will take the same number of gates, inputs, etc.
And another observation
• If there are more than four variables, it is still possible to use Karnaugh Maps, and you will find larger Karnaugh Maps discussed in many textbooks.  However, as the number of variables increases it becomes more difficult to see patterns, and computer methods start to become more attractive.

Problems