eem 486 eem 486: computer architecture lecture 1 course introduction and the five components of a...

22
EEM 486 EEM 486: Computer Architecture Lecture 1 Course Introduction and the Five Components of a Computer

Post on 19-Dec-2015

223 views

Category:

Documents


0 download

TRANSCRIPT

EEM 486

EEM 486: Computer Architecture

Lecture 1

Course Introductionand the

Five Components of a Computer

Lec 1.2

Course Information

Instructor: Atakan Doğan ([email protected])

Office Hours: Anytime

Materials: http://home.anadolu.edu.tr/~atdogan

Text: Patterson and Hennessy, Computer Organization and

Design: The Hardware/Software Interface,

3rd Edition.

Lec 1.3

Grading

Grading• Midterm I: 25% (XX% Course + YY%

Project)• Midterm II: 25% (XX% Course + YY%

Project)• Homeworks 10%• Final: 40% (XX% Course + YY% Project)

HW policy: return in 1 week; no late HW; no cheating

Grading Guidelines

AA: 90-100

Others: 40-90

FF: 0-40

Lec 1.4

What You Need to Know

Logic design (EEM 232)

• Logical equations, schematic diagrams, components

Basic machine structure (EEM 333)

• Processor, memory, I/O

Read and write in an assembly language (EEM 336)

Lec 1.5

Introduction

This course is all about how computers work

But what do we mean by a computer?• Different types: desktop, servers, embedded devices

• Different uses: automobiles, graphics, finance, genomics…

• Different manufacturers: Intel, Apple, IBM, Microsoft, Sun…

• Different underlying technologies and different costs!

Analogy: Consider a course on “automotive vehicles”• Many similarities from vehicle to vehicle (e.g., wheels)

• Huge differences from vehicle to vehicle (e.g., gas vs. electric)

Best way to learn:• Focus on a specific instance and learn how it works

• While learning general principles and historical perspective

Lec 1.6

Why learn this stuff?

You want to call yourself a “computer scientist”

You want to build software that people use (need performance)

You need to make a purchasing decision or offer “expert” advice

Both Hardware and Software affect performance:• Algorithm determines number of source-level

statements

• Language/Compiler/Architecture determine machine instruction (Chapter 2 and 3)

• Processor/Memory determine how fast instructions are executed (Chapter 5, 6, and 7)

Assessing and Understanding Performance in Chapter 4

Lec 1.7

Historical Perspective

ENIAC built in World War II was the first general purpose computer• Used for computing artillery firing tables

• 80 feet long by 8.5 feet high and several feet wide

• Each of the twenty 10 digit registers was 2 feet long

• Used 18,000 vacuum tubes

• Performed 1900 additions per second

Lec 1.8

Technology

Rapidly changing field:• vacuum tube -> transistor -> IC -> VLSI

Moore’s Law

transistor capacity doubles every 18-24 months

Lec 1.9

VLSI commercial IC technology extrapolations

Lec 1.10

Microprocessor Logic Density

In ~1985 the single-chip processor (32-bit) and the single-board computer emerged

• workstations, personal computers, multiprocessors have been riding this wave since

In the 2002+ timeframe, these may well look like mainframes compared single-chip computer (maybe 2 chips)

i80286

i80486

Pentium

i80386

i8086

i4004

R10000

R4400

R3010

SU MIPS

1000

10000

100000

1000000

10000000

100000000

1970 1975 1980 1985 1990 1995 2000 2005

Tra

nsis

tors

i80x86

M68K

MIPS

Alpha

Lec 1.11

Processor Performance (SPEC)

0

50

100

150

200

250

300

350

1982 1984 1986 1988 1990 1992 1994

Year

Perform

ance

RISC

Intel x86

35%/yr

RISCintroduction

Performance now improves 50% per year (2x every 1.5 years)

Lec 1.12

Technology Trends Processor

• Logic capacity: about 30% per year

• Clock rate: about 20% per year

Memory

• DRAM capacity: about 60% per year (4x every 3 years)

• Memory speed: about 10% per year

• Cost per bit: improves about 25% per year

Disk

• Capacity: about 60% per year

• Total data use: 100% per 9 months!

Network Bandwidth

• Bandwidth increasing more than 100% per year!

Lec 1.13

What is “Computer Architecture”?

Computer Architecture =

Instruction Set Architecture +

Machine Organization

Lec 1.14

A View of Computer Architecture

Coordination of many levels of abstraction

Under a rapidly changing set of forces; technology, applications, OS, programming languages, etc.

Design, Measurement, and Evaluation

Instruction Set Architecture

I/O systemInstr. Set Proc.

Compiler

OperatingSystem

Application

Digital DesignCircuit Design

Firmware

Datapath & Control

Layout

Lec 1.15

Processor Organization

Capabilities & performance characteristics of principal functional units, e.g., Registers, ALU, Shifters, Logic Units, ...

Ways in which these components are interconnected

Information flows between components

Logic and means by which such information flow is controlled

Choreography of FUs to realize the ISA

Register Transfer Level (RTL) Description

Lec 1.16

The Instruction Set: a Critical Interface

instruction set

software

hardware

Lec 1.17

Instruction Set Architecture

A very important abstraction

• interface between hardware and low-level software

• standardizes instructions, machine language bit patterns, etc.

• advantage: different implementations of the same architecture

• disadvantage: sometimes prevents using new innovations

True or False: Binary compatibility is extraordinarily important?

Modern instruction set architectures:• IA-32, PowerPC, MIPS, SPARC, ARM, and others

Lec 1.18

Machine Organization: The Big PictureSince 1946 all computers have had 5 components

Control

Datapath

Memory

Processor

Input

Output

Lec 1.19

Machine Organization

Components:• input (mouse, keyboard)

• output (display, printer)

• memory (disk drives, DRAM, SRAM, CD)

• network

Our primary focus: the processor (datapath and control)• implemented using millions of transistors

• impossible to understand by looking at each transisto

Lec 1.20

How do computers work?

Need to understand abstractions such as:• Applications software

• Systems software

• Assembly Language

• Machine Language

• Architectural Issues: i.e., Caches, Virtual Memory, Pipelining

• Sequential logic, finite state machines

• Combinational logic, arithmetic circuits

• Boolean logic, 1s and 0s

• Transistors used to build logic gates (CMOS)

• Semiconductors/Silicon used to build transistors

• Properties of atoms, electrons, and quantum dynamics

So much to learn!

Lec 1.21

Where are We Going??

EEM 486 AU’05

µProc60%/yr.(2X/1.5yr)

DRAM9%/yr.(2X/10 yrs)

1

10

100

1000

19

80 1

98

1 19

83 1

98

4 19

85 1

98

6 19

87 1

98

8 19

89 1

99

0 19

91 1

99

2 19

93 1

99

4 19

95 1

99

6 19

97 1

99

8 19

99 2

00

0

DRAM

CPU

19

82

Processor-MemoryPerformance Gap:(grows 50% / year)

Per

form

ance

Time

“Moore’s Law”

34-b it A LU

LO register(16x2 bits)

Load

HI

Cle

arH

I

Load

LO

M ultiplicandRegister

S h iftA ll

LoadM p

Extra

2 bits

3 232

LO [1 :0 ]

Result[H I] Result[LO]

32 32

Prev

LO[1]

Booth

Encoder E N C [0 ]

E N C [2 ]

"LO

[0]"

Con trolLog ic

InputM ultiplier

32

S ub /A dd

2

34

34

32

InputM ultiplicand

32=>34sig nEx

34

34x2 M U X

32=>34sig nEx

<<13 4

E N C [1 ]

M ulti x2 /x1

2

2HI register(16x2 bits)

2

01

3 4 ArithmeticSingle/multicycleDatapaths

IFetchDcd Exec Mem WB

IFetchDcd Exec Mem WB

IFetchDcd Exec Mem WB

IFetchDcd Exec Mem WB

Pipelining

Memory Systems

I/O

Lec 1.22

Summary

All computers consist of five components

• Processor: (1) datapath and (2) control

• (3) Memory

• (4) Input devices and (5) Output devices

Not all “memory” are created equally

• Cache: fast (expensive) memory are placed closer to the processor

• Main memory: less expensive memory--we can have more

Need to design against constraints of performance, power,

area and cost