Title: CS 140 Lecture 3 Combinational Logic
1CS 140 Lecture 3Combinational Logic
- Professor CK Cheng
- CSE Dept.
- UC San Diego
2Part I.
- Specification
- Implementation
- K-maps
3Definitions
Literals xi or xi Product Term x2x1x0
Sum Term x2 x1 x0 Minterm of n
variables A product of n variables in which
every variable appears exactly once.
4Implementation
Specification ? Schematic Diagram
Net
list, Switching expression Obj min cost
? Search in solution space (max
performance) Cost wires, gates ?
Literals, product terms, sum
terms We want to minimize of terms, of
literals
5Implementation (Optimization)
Karnaugh map 2D truth table
ID A B f(A,B) minterm
0 0 0 0
1 0 1 1 AB
2 1 0 1 AB
3 1 1 1 AB
6Function can be represented by sum of
minterms f(A,B) ABABAB This is not
optimal however! We want to minimize the number
of literals and terms. We factor out common terms
ABABAB ABABABAB (AA)BA(BB)BA
f(A,B) AB
7On the K-map however
A 0 A 1
AB
0 2
0 1 1 1
B 0 B 1
1 3
AB
AB
f(A,B) A B
8Another Example
ID A B f(A,B) minterm
0 0 0 0
1 0 1 1 AB
2 1 0 0
3 1 1 1 AB
f(A,B)ABAB(AA)BB
9On the K-map
A 0 A 1
0 2
0 0 1 1
B 0 B 1
1 3
AB
AB
f(A,B)B
10Using Maxterms
ID A B f(A,B) Maxterm
0 0 0 0 AB
1 0 1 1
2 1 0 0 AB
3 1 1 1
f(A,B)(AB)(AB)(AA)B0BB
11Two variable K-maps
Id a b f (a, b) 0 0 0
f (0, 0) 1 0 1 f (0, 1)
2 1 0 f (1, 0) 3 1 1
f (1, 1)
2 variables means we have 22 entries and thus we
have 2 to the 22 possible functions for 2 bits,
which is 16.
a b
f(a,b)
12Two-Input Logic Gates
13More Two-Input Logic Gates
14Three variables K-maps
Id a b c f (a,b,c) 0 0
0 0 1 1 0 0 1
0 2 0 1 0 1 3 0
1 1 0 4 1 0 0
1 5 1 0 1 0 6 1
1 0 1 7 1 1 1
0
15Corresponding K-map
b 1
Gray code
(0,0) (0,1) (1,1) (1,0)
0 2 6
4
c 0
1 1 1 1
1 3 7
5
c 1
0 0 0 0
a 1
f(a,b,c) c
16Karnaugh Maps (K-Maps)
- Boolean expressions can be minimized by combining
terms - K-maps minimize equations graphically
- PA PA P
17K-map
- Circle 1s in adjacent squares
- In the Boolean expression, include only the
literals whose true
y(A,B)AB
18Another 3-Input example
Id a b c f (a,b,c) 0 0
0 0 0 1 0 0 1
0 2 0 1 0 1 3 0
1 1 0 4 1 0 0
1 5 1 0 1 1 6 1
1 0 - 7 1 1 1
1
19Corresponding K-map
b 1
(0,0) (0,1) (1,1) (1,0)
0 2 6
4
c 0
0 1 - 1
1 3 7
5
c 1
0 0 1 1
a 1
f(a,b,c) a bc
20Yet another example
Id a b c f (a,b,c,d) 0 0
0 0 1 1 0 0 1
1 2 0 1 0 - 3 0
1 1 0 4 1 0 0
1 5 1 0 1 1 6 1
1 0 0 7 1 1 1
0
21Corresponding K-map
b 1
(0,0) (0,1) (1,1) (1,0)
0 2 6
4
c 0
1 - 0 1
1 3 7
5
c 1
1 0 0 1
a 1
f(a,b,c) b
224-input K-map
234-input K-map
244-input K-map
25K-maps with Dont Cares
26K-maps with Dont Cares
27K-maps with Dont Cares