Title: From Switches to Transistors and Gates
1From Switches to Transistors and Gates
- Prof. Sirer
- CS 303
- Koç University
2Origins
- The most amazing and likely to be most long-lived
invention of the 1800s was
3Origins
- The most amazing and likely to be most long-lived
invention of the 1800s was - The steam engine?
- The lightning rod?
- The carbonated beverage?
4Origins
- The most amazing and likely to be most long-lived
invention of the 1800s was - THE ELECTRIC SWITCH
5A switch
- A switch is a simple device that can act as a
conductor or isolator - Can be used for amazing things
6Switches
-
7Switches
-
-
- One can build basic devices, but operation
requires mechanical force
8Transistors
- What happens when switches are replaced with
solid-state devices - The most amazing invention of the 1900s
- Can be used for purposes other than switching
(e.g. radios) - Two types, PNP and NPN
-
P
P
N
collector
emitter
collector
collector
base
NPN
N
N
-
P
PNP
base
emitter
emitter
9P and N Transistors
- NPN Transistor
- Connect E to C whenbase 1
- PNP Transistor
- Connect E to C whenbase 0
E
E
B
B
C
C
- Can be used to build primitives from which
electronic machines can be constructed
10Then and Now
- The first transistor, on a workbench at ATT Bell
Laboratories in 1947
- An Intel Pentium has approximately 125 million
transistors
11Inverter
- Function NOT
- Called an inverter
- Symbol
- Useful for taking the inverse of an input
in
out
gnd
in
out
In Out
0 1
1 0
Truth table
12NAND Gate
a
a
b
out
out
b
gnd
A B out
0 0 1
1 0 1
0 1 1
1 1 0
13NOR Gate
out
b
a
gnd
A B out
0 0 1
1 0 0
0 1 0
1 1 0
14Building Functions
- NOT
- AND
- OR
- NAND and NOR are universal, can implement any
function using just NAND or just NOR gates - useful for manufacturing
- Can specify functions by describing gates, truth
tables or logic equations
a
b
a
b
15Logic Equations
- AND
- out ab
- OR
- out a b
- NOT
- out a
16Identities
- Identities are useful for manipulating logic
equations - For purposes of optimization ease of
implementation - a a 1
- a 0 a
- a 1 1
- aa 0
- a0 0
- a1 a
- a(bc) ab ac
- (a b) a b
- (a b) a b
- a a b a b
17Logic Manipulation
- Can manipulate logic equations algebraically
- Can also use a truth table to prove equivalence
- Example (ab)(ac) a bc
a b c ab ac LHS bc RHS
0 0 0 0 0 0 0 0
0 0 1 0 1 0 0 0
0 1 0 1 0 0 0 0
0 1 1 1 1 1 1 1
1 0 0 1 1 1 0 1
1 0 1 1 1 1 0 1
1 1 0 1 1 1 0 1
1 1 1 1 1 1 1 1
(ab)(ac) aa ab ac bc a a(bc)
bc a(1 (bc)) bc a bc
18Logic Minimization
- A common problem is how to implement a desired
function most efficiently - One can derive the equation from the truth table
- How does one find the most efficient equation?
- Manipulate algebraically until satisfied
- Use Karnaugh maps
for all outputs that are 1, take the
correspondingminterm, OR the minterms toobtain
the result in sum of products form
a b c minterm
0 0 0 abc
0 0 1 abc
0 1 0 abc
0 1 1 abc
1 0 0 abc
1 0 1 abc
1 1 0 abc
1 1 1 abc
19Karnaugh maps
- Encoding of the truth table where adjacent cells
differ in only one bit
ab
00 01 11 10
a b out
0 0 0
0 1 0
1 0 0
1 1 1
0 0 1 0
Corresponding Karnaugh map
truth tablefor AND
20Bigger Karnaugh Maps
a
a
b
4-inputfunc
3-inputfunc
y
b
y
c
d
c
ab
c
00 01 11 10
ab
0
cd
00 01 11 10
00
1
01
11
10
21Minimization with Karnaugh maps (1)
a b c out
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 1
1 1 0 0
1 1 1 0
- Sum of minterms yields
- abc abc abc abc
22Minimization with Karnaugh maps (2)
a b c out
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 1
1 1 0 0
1 1 1 0
- Sum of minterms yields
- abc abc abc abc
- Karnaugh maps identify which inputs are
(ir)relevant to the output
ab
c
00 01 11 10
0
0 0 0 1
1 1 0 1
1
23Minimization with Karnaugh maps (2)
a b c out
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 1
1 1 0 0
1 1 1 0
- Sum of minterms yields
- abc abc abc abc
- Karnaugh map minimization
- Cover all 1s
- Group adjacent blocks of 2n 1s that yield a
rectangular shape - Encode the common features of the rectangle
- out ab ac
ab
c
00 01 11 10
0
0 0 0 1
1 1 0 1
1
24Karnaugh Minimization Tricks (1)
ab
c
00 01 11 10
- Minterms can overlap
- out bc ac ab
- Minterms can span 2, 4, 8 or more cells
- out c ab
0
0 1 1 1
0 0 1 0
1
ab
c
00 01 11 10
0
1 1 1 1
0 0 1 0
1
25Karnaugh Minimization Tricks (2)
ab
00 01 11 10
cd
00
- The map wraps around
- out bd
- out bd
0 0 0 0
1 0 0 1
1 0 0 1
0 0 0 0
01
11
10
ab
cd
00 01 11 10
00
1 0 0 1
0 0 0 0
0 0 0 0
1 0 0 1
01
11
10
26Karnaugh Minimization Tricks (3)
ab
00 01 11 10
cd
00
- Dont care values can be interpreted
individually in whatever way is convenient - assume all xs 1
- out d
- assume middle xs 0
- assume 4th column x 1
- out bd
0 0 0 0
1 x x x
1 x x 1
0 0 0 0
01
11
10
ab
cd
00 01 11 10
00
1 0 0 x
0 x x 0
0 x x 0
1 0 0 1
01
11
10
27Multiplexors
- A multiplexor selects between multiple inputs
- out a, if d 0
- out b, if d 1
- Build truth table
- Build Karnaugh map
- Derive logic diagram
a
0
b
d
28Multiplexor Implementation
a b d out
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 1
1 1 1 1
29Multiplexor Implementation
ab
d
00 01 11 10
0
0 0 1 1
0 1 1 0
a b d out
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 1
1 1 1 1
1
30Multiplexor Implementation
- Derive minimal logic equation
- out ad bd
ab
d
00 01 11 10
a b d out
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 1
1 1 1 1
0
0 0 1 1
0 1 1 0
1
31Multiplexor Implementation
- Draw the circuit
- out ad bd
ab
d
00 01 11 10
0
0 0 1 1
0 1 1 0
a b d out
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 1
1 1 1 1
1
a
out
d
b
32Summary
- We can now implement any logic circuit
- Can do it efficiently, using Karnaugh maps to
find the minimal terms required - Can use either NAND or NOR gates to implement the
logic circuit - Can use P- and N-transistors to implement NAND or
NOR gates