1 egre 426 handout 1 8/25/09. 2 preliminary egre 365 is a prerequisite for this class. class web...

44
1 EGRE 426 Handout 1 8/25/09

Upload: leslie-nicholson

Post on 18-Jan-2016

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

1

EGRE 426

Handout 1

8/25/09

Page 2: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

2

Preliminary• EGRE 365 is a prerequisite for this class.• Class web page http://www.people.vcu.edu/~jhtucker/f09-egre426/index.html

• Syllabus Grades:– Quizzes (2) 40%– Homework 10%– Laboratory 10%– Design Project15% – Final Exam 25%

• Text book Computer Organization and Design 3rd edition, Designers Guide to VHDL.

Page 3: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

3

Computer Organization and Design

• This book and the slightly more advanced Computer Architecture a Quantitative Approach are the dominant computer architecture text books.

• Too big.– Chapter 1 – Read

– Chapter 2-7 – will be covered in detail skipping some material.

– Chapters 8-9 – Will depend on time.

– Supplement with additional material.

Page 4: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

4

Introduction

• We will learn not just how computers work, but gain an understanding into how and why computers evolved into the current generation.

• Computer have undergone rapid changes.– Increasing performance– Decreasing cost

Page 5: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

5

History

• Computers did not really begin until World War II.

• The widespread use of microprocessors began about 35 years ago.

• Personal computers were not taken seriously until the introduction of the IBM PC in 1981.

Page 6: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

6

Computers have resulted in the information revolution.

• Agricultural revolution.– Several Thousand years.

• Industrial revolution.– Several Hundred years.

• Information revolution.– A couple of decades.

Page 7: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

7

My History• I started at NASA in 1963 and worked in the

computer division.– At that time computers were very expensive and very

large.

– Programs were written on punched cards (one line per card) and fed into the computer.

– The state-of-the-art super computer that I worked with was capable of executing one million instructions per second, it cost several million dollars, and occupied the major portion of a large building.

Page 8: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

8

My History continued

• In the 60’s I did early work in interactive computing techniques.– Forerunner of what we do today, but not

practical when it required a dedicated super computer connected to a display console.

• In 1974 I completed my PhD and started working with microprocessors.

Page 9: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

9

Moore’s Law• One of the founders of Intel, Dr. Gordon Moore, observed

in 1965 that the number of transistors in an IC was doubling every year. He predicted that this would continue for a couple of decades and then slow to doubling every 18 months.

• This prediction has proved remarkably accurate. So much so that it has come to be expected, and Moore’s prediction has become known as Moore’s law.– It is worth noting that since Moore made his prediction the

consensus at any time has been that it would last for only about ten more years.

– Economics not technology may be what actually stops Moore’s law.

Page 10: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

10

Page 11: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

11

Page 12: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

12

Page 13: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

13

Page 14: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

14

Page 15: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

15

Single instruction stream – single data stream

Page 16: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

16

Multiple instruction stream – multiple data stream.

Page 17: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

17

Single instruction stream – single data stream

Page 18: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

18

Page 19: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

19

Definitions

Efficiency is the measurement of how close we come to achieving ideal speed up.

1

1

p

S

T

pT

E p

pp

Page 20: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

20

Page 21: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

21

Assumptions

• All operations take one unit of time.• All instructions and data are available when

needed.• i.e. We don’t have to wait for memory or

communication.• This is naïve and completely unrealistic, but

can be used to teach some fundamental truths.

Page 22: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

22

Conventional uniprocessor (SISD)

T A1*B1 A2*B2 A3*B3 A4*B4 … An*Bn

1

2

3

4

5

6

Page 23: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

23

Multiprocessor MIMD (unlimited processors)SIMD – same results.

T A1*B1 A2*B2 A3*B3 A4*B4 … An*Bn

1

2

3

4

5

6

Page 24: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

24

Multifunction computer (2 * units)

T A1*B1 A2*B2 A3*B3 A4*B4 … An*Bn

1

2

3

4

5

6

Page 25: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

25

SISD – single processor

T A1 A2 A3 A4 A5 An

1

2

3

4

5

6

n

n

ii AAAAP ...21

1

Page 26: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

26

MIMD or SIMD – with unlimited processors

T A1 A2 A3 A4 A5 An

1

2

3

4

5

6

n

n

ii AAAAP ...21

1

Page 27: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

27

Algorithm can effect speedup.SISD

T A (B C D + E) A B C D +A E1

2

3

4

5

6

AEABCDEBCDA )(

Page 28: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

28

Algorithm can effect speedup.MIMD

T A (B C D + E) A B C D +A E1

2

3

4

5

6

AEABCDEBCDA )(

Page 29: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

29

SISD Method A

T A0 + A1*X + A2*X*X + A3*X*X*X + A4*X*X*X*X

1

2

3

4

5

6

7

8

9

10

11

...432100

XXXXAXXXAXXAXAAXAPn

i

ii

Page 30: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

30

SISD Method B

T A0 + A1*X + A2*X*X + A3*X*X*X + A4*X*X*X*X

1

2

3

4

5

6

7

8

9

10

11

...432100

XXXXAXXXAXXAXAAXAPn

i

ii

Page 31: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

31

SISD Method C

T A0 + X ( A1 +X ( A2 + X ( A3 + X ( A4 + …))))

1

2

3

4

5

6

7

8

9

...))))((((

...

43210

432100

AXAXAXAXA

XXXXAXXXAXXAXAAXAPn

i

ii

Page 32: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

32

MIMD unlimited processors

T A0 + X ( A1 +X ( A2 + X ( A3 + X ( A4 + …))))

1

2

3

4

5

6

7

8

9

...))))((((

...

43210

432100

AXAXAXAXA

XXXXAXXXAXXAXAAXAPn

i

ii

Page 33: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

33

MIMD unlimited processors

T A0 + A1*X + A2*X*X + A3*X*X*X + A4*X*X*X*X

1

2

3

4

5

6

7

8

9

...432100

XXXXAXXXAXXAXAAXAPn

i

ii

Page 34: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

34

SIMD unlimited processors

T A0 + A1*X + A2*X*X + A3*X*X*X + A4*X*X*X*X

1

2

3

4

5

6

7

8

9

...432100

XXXXAXXXAXXAXAAXAPn

i

ii

Page 35: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

35

1)(log222

22)(loglog)(log)( nnnKnnT

K K K( ) , ( ) , ( )0 0 1 1 2 1

K i K i i( ) ( ) 2 2 3

Where,

And,for i > 2

A X A A X A X A X A Xii

nn

i

n

0 1 22

33

11

0

1

Using an MIMD machine with unlimited processors, the time to compute

is given by

For example when N = 9,

2

4 3 12

log 9 1 4 12 2

log 9 4, (4) (4 2) 2 (2) 2 2 2 4

(9) log 9 log 4 9 2 4 2 9 2

4 3 7

K K K

T

For N = 3000

T(3000)=23

Page 36: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

36

Compute1

( ) *N

i ii

F N A B

using a SISD computer with a add-multiply arithmetic unit.

T(4) = 4

Page 37: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

37

Pipeline examples

Page 38: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

38

Page 39: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

39

Page 40: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

40

Page 41: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

41

Page 42: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

42

Page 43: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

43

Using a four segment pipeline with the restriction that the pipeline must empty before a new type (add, multiply, etc.) of operation can begin.

T4(4) = 16 segment times.

Page 44: 1 EGRE 426 Handout 1 8/25/09. 2 Preliminary EGRE 365 is a prerequisite for this class. Class web page jhtucker/f09- egre426/index.html

44

Using a four segment pipeline which does not require that the pipeline empty before a new type of operation can begin.

T4(4)=15 segment times.