CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE...

32
CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim [email protected] 1 1

Transcript of CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE...

Page 1: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

CSEE 3827: Fundamentals of Computer Systems

Lecture 2

January 26, 2009

Martha [email protected]

1

1

Page 2: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Agenda

• TA office hours

• Boolean algebra

• Logic gates

• Circuit fabrication

2

2

Page 3: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

TA Office Hours

Roopa Kakarlapudi Tuesdays 5-6:30PM

Harsh Parekh Mondays 11-12:20PM; Tuesdays 3:30-5PM

Nishant Shah Wednesdays 10-11:30AM

TA Room, first floor of Mudd (see: http://ta.cs.columbia.edu/tamap.shtml)

3

Page 4: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Boolean Logic

• Binary digits (or bits) have two values: {1,0}

• All logical functions can be implemented in terms of three logical operations:

x x

0 11 0

x y x y

0 0 00 1 01 0 01 1 1

. x y x + y

0 0 00 1 11 0 11 1 1

NOT AND OR

4

4

Page 5: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Boolean Logic 2

• Precedence rules just like decimal system

• Implied precedence: NOT > AND > OR

• Use parentheses as necessary

5

AB + C = (AB) + C

(A + B)C = ((A) + B)C

5

Page 6: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Boolean Logic: Example

D X A L=DX + A

0 0 0

0 0 1

0 1 0

0 1 1

1 0 0

1 0 1

1 1 0

1 1 1

6

6

Page 7: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Boolean Logic: Example

D X A X DX L=DX + A

0 0 0 1 0 00 0 1 1 0 1

0 1 0 0 0 0

0 1 1 0 0 1

1 0 0 1 1 1

1 0 1 1 1 1

1 1 0 0 0 0

1 1 1 0 0 1

(M&K Table 2-2) 7

7

Page 8: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Boolean Logic: Example 2

X Y XY + XY

0 0

0 1

1 0

1 1

8

8

Page 9: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Boolean Logic: Example 2

X Y X Y XY XY XY + XY

0 0 1 1 0 1 10 1 1 0 0 0 01 0 0 1 0 0 01 1 0 0 1 0 1

9

9

Page 10: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Boolean Algebra: Identities and Theorems

OR AND NOT

X+0 = X X1 = X (identity)

X+1 = 1 X0 = 0 (null)

X+X = X XX = X (idempotent)

X+X = 1 XX = 0 (complementarity)

X = X (involution)

X+Y = Y+X XY = YX (commutativity)

X+(Y+Z) = (X+Y)+Z X(YZ) = (XY)Z (associativity)

X(Y+Z) = XY + XZ X+YZ = (X+Y)(X+Z) (distributive)

X+Y = X Y XY = X + Y (DeMorgan’s theorem)

10

10

Page 11: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Boolean Algebra: Example

F = XYZ + XYZ + XZ

Simplify this equation using algebraic manipulation.

11

11

Page 12: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Boolean Algebra: Example

F = XYZ + XYZ + XZ

XY(Z + Z) + XZ (by reverse distribution)

XY1 + XZ (by complementarity)

XY + XZ (by identity)

Simplify this equation using algebraic manipulation.

12

12

Page 13: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Boolean Algebra: Example 2

F = AB + AB

F =

Find the complement of F.

13

13

Page 14: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Boolean Algebra: Example 2

F = AB + AB

F = AB + AB

(AB) (AB) (by DeMorgan’s)

(A + B) (A + B) (by DeMorgan’s)

(A + B) (A + B) (by involution)

Find the complement of F.

14

14

Page 15: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Boolean Algebra: Why?

These circuits consume area, power, and time

15

15

Page 16: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Logic gate area

16

16

Page 17: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Information signaled through voltage level

1.3 v0.0 v

0.0 v

(AND)

17

17

Page 18: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Idealized timing diagram of AND gate

(AND)

A

B

Q 18

18

Page 19: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Actual signal timing has delays

• transition time: time required for output to change (RC delay: ohms x farads = time

• propagation time: time from input change to output change

19

19

Page 20: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Returning to boolean algebra...

F = XYZ + XYZ + XZ

XY(Z + Z) + XZ (by reverse distribution)

XY1 + XZ (by complementarity)

XY + XZ (by identity)

20

20

Page 21: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Returning to boolean algebra...

21

21

Page 22: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Universal gates: NAND, NOR

x y z = xy

0 0 10 1 11 0 11 1 0

XY

x y z = x+y

0 0 10 1 01 0 01 1 0

X+Y

22

22

Page 23: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Universal how?

23

23

Page 24: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Boolean algebra practice 1

1 = AB + BC + AB + BC

B (A + A) + B (C+C) (by distribution)

B + B (by complementarity)

1 (by complementarity)

Prove that this boolean equation is true using algebraic manipulation.

24

24

Page 25: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Boolean algebra practice 2

X + Y = XY + XY + XY

XY + XY + XY + XY (by idempotence)

X (Y + Y) + Y (X + X) (by distribution)

X 1 + Y 1 (by null)

X + Y (by identity)

Prove that this boolean equation is true using algebraic manipulation.

25

25

Page 26: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Boolean algebra practice 3

F = (VW + X)Y + Z

F = (VW + X)Y + Z

((VW + X)Y)Z (by DeMorgan’s)

((VW + X) + Y)Z (by DeMorgan’s & involution)

(VW X + Y)Z (by DeMorgan’s)

((V + W)X + Y)Z (by DeMorgan’s)

((V + W)X + Y)Z (by null)

Find the complement of F.

26

26

Page 27: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Integrated circuit fabrication

raw silicon

crystallization of molten silicon

silicon ingots

wafer27

27

Page 28: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Integrated circuit fabrication 2

waferprocessed wafer

28

28

Page 29: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Integrated circuit fabrication 3

processed waferdicing

packaging

29

29

Page 30: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Integrated circuit fabrication 4

packaged dietest

$$$

30

30

Page 31: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

A more detailed tutorial on integrated circuit fabrication:

31

http://www.necel.com/fab/en/flow.html

31

Page 32: CSEE 3827: Fundamentals of Computer Systemsmartha/courses/3827/sp09/slides/lecture2.pdf · CSEE 3827: Fundamentals of Computer Systems Lecture 2 January 26, 2009 Martha Kim mak2191@columbia.edu

Next class: more boolean algebra, duals

32

32