Professional Documents
Culture Documents
Standard form for a Boolean expression unique algebraic expression from a TT. Two Types:
Sum of Products Product of Sums
One product (and) term for each 1 in f: f = abc + abc + abc +abc +abc f = abc + abc + abc
Spring 2000 EECS150 Page 1
Canonical Forms
Product of Sums (conjunctive normal form, maxterm expansion). Example:
maxterms a+b+c a+b+c a+b+c a+b+c a+b+c a+b+c a+b+c a+b+c abc 000 001 010 011 100 101 110 111 f f 01 01 01 10 10 10 10 10
One sum (or) term for each 0 in f: f = (a+b+c)(a+b+c)(a+b+c) f = (a+b+c)(a+b+c)(a+b+c)(a+b+c)(a+b+c) Mapping from one form to the other: Derive TT then proceed.
Spring 2000 EECS150 Page 2
b values change within the on-set rows a values dont change b is eliminated, a remains
g = ab+ab = (a+a)b =b
b values stay the same a values changes b remains, a eliminated
Spring 2000
EECS150
Page 3
Boolean Cubes
Visual technique for identifying when the Uniting Theorem can be applied
1-cube 0 1 00 2-cube 01 xy y 10
000 001
3-cube 11
010 110 101 011 111
z
100
Spring 2000
EECS150
Page 4
cout 0 0 0 1 0 1 1 1
ab(c'+c)
011 010 110 111
a(b+b')c
101
b
000
001
c
100
cout = bc + ab + ac
abc + abc + abc + abc ac + ac + ab = a + ab = a Both b & c change, a is asserted & remains constant.
EECS150 Page 5
b
000
001
101
c
100
Spring 2000
ab c 00 01 11 10 0 1
Examples:
a b 0 1 0 0 1 1 0 1 f=a ab c 00 01 11 10 0 0 0 1 0 1 0 1 1 1 cout = ab + bc + ac
Spring 2000 EECS150
a b 0 1 0 1 1 1 0 0 g = b' ab c 00 01 11 10 0 0 0 1 1 1 0 0 1 1 f=a
Page 6
K-maps (cont.)
ab c 00 01 11 10 0 1 0 0 1 1 0 0 1 1 f = b'c' + ac
Circling Zeros
ab cd 00 01 11 10 00 1 0 1 1 01 0 1 1 1 11 0 0 1 1 10 1 0 1 1
Spring 2000
EECS150
Page 7
ab cd 00 01 11 10 00 0 1 0 1
y
01 0 1 0 1 11 11 0 0 cd
ab 00 01 11 10 00 1 0 0 1
z
01 1 0 0 1 11 11 1 0 -
x=
y=
z=
Spring 2000
EECS150
Page 8
bc 00 01 11
10
a=1
10
Spring 2000
EECS150
Page 9
cost: 7-input OR, 6 3-input AND 50 transistors + 25 wires (19 linteral plus 6 internal) delay: 3-input AND gate delay + 7-input OR gate delay
cost: 1 3-input OR, 2 2-input OR, 1 3-input AND delay: 3-input OR + 3-input AND + 2-input OR Which is faster? In general: Using multiple levels (more than 2) will reduce the cost. Sometimes also delay. Sometime a tradeoff between cost and delay.
Spring 2000 EECS150 Page 10
a b c d e f g
(a b) = a + b (a b) = (a + b)
= =
b)
c)
d)
Spring 2000
EECS150
Page 12
a)
a b c d
b)
c)
c)
pair
OR/AND to NAND/NAND
Spring 2000
EECS150
Page 13
Multi-level Networks
F = a(b + cd) + bc
c d b a c' f
Spring 2000
EECS150
Page 14
EXOR Function
Parity, addition mod 2
x y xor xnor 00 0 1 01 10 11
x y
x xor y = xy + xy
x' y x y'
1 1 0
0 0 1
Another approach:
y
Spring 2000
EECS150
Page 15