1.8 KiB
A Karnaugh map is an alternative to a truth table for representing a function in boolean algebra, and serve as a way to derive minimum cost circuits for a truth table.
Given the above truth table, the columns are labelled with x_1
, and the rows are labelled with x_2
.
To find a minimal boolean expression with a Karnaugh map, we need to find the smallest number of product terms (x_1
, x_2
) that should produce a 1 for all instances where the cell in a table is 1
.
Two Variable Maps
- Given the map described in the above image, the output is
1
for the row wherex_2
is equal to 1. - Similarly, the output is
1
for the column wherex_1
is equal to zero. - By ORing the condition where
x_1
is zero (\overline{x_1}
), and the condition wherex_2
is one (x_1
), we can find a minimal expression for the truth table.
Three Variable Maps
A three variable Karnaugh map is constructed by placing 2 two-variable maps side by side. The values of x_1
and x_2
distinguish columns in the map, and the value of x_3
distinguishes rows in the map.
To convert a 3 variable Karnaugh map to a minimal boolean expression, start by looking for places in the map that contain 1s next to each other (by row, or by column).
From there, describe the pair of 1s using boolean algebra.
In the above example, the top pair of 1s is in the column where x_3
is equal to zero (\overline{x_3}
), and x_1
is equal to 1
(x_1
). This describes a single term in the resulting equation (x_1\overline{x_3}
).
Similar logic can be employed using more than just a pair of ones.