Boolean logic in CMOS

Boolean logic in CMOS
University of Texas at Austin
CS310 - Computer Organization
Spring 2009 Don Fussell
Representations of Boolean logic
Truth table
Boolean equation
Circuit element (gate)
University of Texas at Austin
CS310 - Computer Organization
Spring 2009 Don Fussell
2
Truth table
Brute force I/O specification
Grows exponentially with number of inputs
University of Texas at Austin
CS310 - Computer Organization
Spring 2009 Don Fussell
3
Boolean algebra
Identities
x+0=x
x+1=1
x+x=x
x + x’ = 1
x’’ = x
x*1=x
x*0=0
x*x=x
x * x’ = 0
University of Texas at Austin
CS310 - Computer Organization
Spring 2009 Don Fussell
4
Boolean algebra
Commutativity
x+y=y+x
x*y=y*x
Associativity
x + (y + z) = (x + y) + z
x * (y * z) = (x * y) * z
University of Texas at Austin
CS310 - Computer Organization
Spring 2009 Don Fussell
5
Boolean algebra
Distributive
x * (y + z) = x*y + x*z
x + (y * z) = (x+y) * (x+z)
= x + xy + xz + yz
= x(1+y) + xz + yz
= x + xz + yz
= x(1+z) + yz
= x + yz
De Morgan
(x + y)' = x' * y'
(x * y)' = x' + y'
University of Texas at Austin
CS310 - Computer Organization
Spring 2009 Don Fussell
6
CMOS gates - NOT
In Out
0
1
1
0
University of Texas at Austin
gnd
CS310 - Computer Organization
Spring 2009 Don Fussell
7
CMOS gates - NAND
A
0
0
1
1
B Out
0 1
1 1
0 1
1 0
Vdd
a
b
gnd
University of Texas at Austin
CS310 - Computer Organization
Spring 2009 Don Fussell
8
CMOS gates - NOR
A
0
0
1
1
B Out
0 1
1 0
0 0
1 0
University of Texas at Austin
Vdd
a
b
CS310 - Computer Organization
Spring 2009 Don Fussell
9
CMOS gates - AND
A
0
0
1
1
B Out
0 0
1 0
0 0
1 1
Vdd
Vdd
A
A
Out
B
B
Out
NO!
Logically correct, but
violates n to n and p to p rule,
passes weak values
University of Texas at Austin
CS310 - Computer Organization
Spring 2009 Don Fussell
10
CMOS gates - OR
Vdd
A
0
0
1
1
B Out
0 0
1 1
0 1
1 1
University of Texas at Austin
A
B
CS310 - Computer Organization
Out
Spring 2009 Don Fussell
11