CS 140 Lecture 4 Combinational Logic: K-Map Professor CK Cheng CSE Dept. UC San Diego 1
Part I. Combinational Logic –Implementation K-map 2
4-Variable K-Maps: An example f(a,b,c,d) Id a b c d f (a,b,c,d)
Corresponding K-map f (a, b, c, d) = c b c a d
Another example w/ 4 bits: Id a b c d f (a,b,c,d)
Corresponding 4-variable K-map f (a, b, c, d) = b’c’ + b’d’ + acd’ b c a d
Boolean Expression K-Map Variable x i and its compliment x i ’ Two half planes Rx i, and Rx i ’ Product term P ( x i * e.g. b’c’) Intersect of Rx i * for all i in P e.g. Rb’ intersect Rc’ Each minterm One element cell Two minterms are adjacent iff they differ by one and only one variable, eg: abc’d, abc’d’ The two cells are neighbors Each minterm has n adjacent minterms Each cell has n neighbors 7
ProcedureInput: Two sets of F R D 1)Draw K-map. 2)Expand all terms in F to their largest sizes (prime implicants). 3)Choose the essential prime implicants. 4)Try all combinations to find the minimal sum of products. (This is the most difficult step) 8
4-input K-map 9
10
K-maps with Don’t Cares 11
K-maps with Don’t Cares 12
Example Given F = m (0, 1, 2, 8, 14) D = m (9, 10) 1. Draw K-map b c a d
2. Prime Implicants: Largest rectangles that intersect On Set but not Off Set that correspond to product terms. m (0, 1, 8, 9), m (0, 2, 8, 10), m (10, 14) 3. Essential Primes: Prime implicants covering elements in F that are not covered by any other primes. m (0, 1, 8, 9), m (0, 2, 8, 10), m (10, 14) 4. Min exp: m (0, 1, 8, 9) + m (0, 2, 8, 10) + m (10, 14) f(a,b,c,d) = b’c’ + b’d’+ acd’ 14
Another example Given F = m (0, 3, 4, 14, 15) D = m (1, 11, 13) 1. Draw K-map b c a d
2. Prime Implicants: Largest rectangles that intersect On Set but not Off Set that correspond to product terms. E.g. m (0, 4), m (0, 1), m (1, 3), m (3, 11), m (14, 15), m (11, 15), m (13, 15) 3. Essential Primes: Prime implicants covering elements in F that are not covered by any other primes. E.g. m (0, 4), m (14, 15) 4. Min exp: m (0, 4), m (14, 15), ( m (3, 11) or m (1,3) ) f(a,b,c,d) = a’c’d’+ abc+ b’cd (or a’b’d) 16