Review of Combinational Logic: 1 Boolean Algebra
Review of Combinational Logic: 1 Boolean Algebra
Dr DC Hendry
February 2006
1 Boolean Algebra
a a
0 1
1 0
a b a.b
0 0 0
0 1 0
1 0 0
1 1 1
The following laws apply, where Boolean AND is denoted by ., and Boolean
OR by +. These laws may be shown by enumeration of all possible values of
a b a+b
0 0 0
0 1 1
1 0 1
1 1 1
the operands.
1. a + 0 = a
2. a.1 = a
3. a + b = b + a
4. a.b = b.a
5. a + (b.c) = (a + b).(a + c)
6. a.(b + c) = a.b + a.c
7. a + a = 1
8. a.a = 0
From these basic laws we may then derive the following. These may be shown
either by enumeration of all possible values, or algebraicly using the laws above
(the algebraic path can be quite difficult):
1. a + 1 = 1
2. a + a = a
3. a.a = a
4. a.b + a.b = a
5. a + b = a.b
6. a.b = a + b
Many more relations can be derived, but you should be able to apply all of the
above.
1. f = a.b + c.d
2. g = a.b + a.c + c.b
3. h = a.b.c + a.b.c + b.c
1. f = (x + y).(w + z)
2. g = (x + y + z).(y + z)
3. h = (x + y).(x + z).(y + z)
A truth table lists the all possible values of the inputs with the resultant values
of the outputs. Thus if a certain circuit has inputs A, B and C, and a single
output f , then the truth table for that circuit might be (well discuss the m
column later):
A B C f m
0 0 0 0 m0
0 0 1 0 m1
0 1 0 0 m2
0 1 1 1 m3
1 0 0 1 m4
1 0 1 1 m5
1 1 0 1 m6
1 1 1 1 m7
Each line of this truth table also represents a minterm. In general a minterm
of n variables is a product of n literals, where a literal is a variable (such as
A), or its complement (A). Thus the first line of the truth table represents the
minterm A B C. This minterm, A B C, is usually denoted by m0 . Each line in
the truth label represents a separate minterm as labelled by the last column
headed m. Note the subscript is just the binary number represented by the first
three columns.
This is often used as a shorthand for a truth table, rather than list the entire
truth table as above, simple list the minterms for which the output is a logic 1.
Thus the truth table above is often represented as
f = m3 + m4 + m5 + m6 + m7
or
X
f= m(3, 4, 5, 6, 7)
4 Karnaugh Maps
a.b + a.b = a
Any adjacent cells in a K-Map represent this equation for some pair of inputs.
Taking the example of the truth table from the previous section, a K-Map for
that function would be:
f AB
00 01 11 10
0 0 0 1 1
C
1 0 1 1 1
The individual lines of the truth table are copied to the K-Map according to:
f AB
00 01 11 10
0 m0 m2 m6 m4
C
1 m1 m3 m7 m5
If we take the cells for m5 and m7 then the cell for m4 corresponds to the
minterm ABC, and m7 to ABC. And so the two minterms give the simplified
term BC. Such simplifications are easily found on the K-Map as rectangles
of logic 1s (or logic 0s). Such rectangles represent prime implicants of the
function. For the above K-Map:
f AB
00 01 11 10
0 0 0 1 1
C
1 0
1 1 1
For a function with four inputs the truth table, minterms, and their location on
f AB
A B C D m
0 0 0 0 m0 00 01 11 10
0 0 0 1 m1
00 m0 m4 m12 m8
0 0 1 0 m2
0 0 1 1 m3 01 m1 m5 m13 m9
0 1 0 0 m4 CD
0 1 0 1 m5 11 m3 m7 m15 m11
0 1 1 0 m6
10 m2 m6 m14 m10
0 1 1 1 m7
1 0 0 0 m8
1 0 0 1 m9
1 0 1 0 m10
1 0 1 1 m11
1 1 0 0 m12
1 1 0 1 m13
1 1 1 0 m14
1 1 1 1 m15