42
Computer System Architecture Lect - 1 Introduction

Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

Computer System Architecture

Lect - 1 Introduction

Page 2: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

Course Information • Course Material

– Lectures slides, assignments (computer/written), solutions to problems, projects, and announcements will be uploaded on course web page.

http://biomisa.org/usman/computer-system-architecture

Page 3: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

3

Course Information • Computer Organization and Design The Hardware/Software Interface, David

Patternson & John Hennessy, 5th Edition, 2013 (Main Text Book)

• Computer Architecture A Quantitative Approach, John Hennessy & David

Patternson, 5th Edition, 2012

• Computer Organization and Architecture, William Stallings, 9th Edition, 2012

Page 4: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

Course Contents

• Introduction to computer organization and architecture

• Computer Abstractions and Technology

• Architecture and Microarchitecture

• Instructions: Language of the computer

• MIPS architecture

• Arithmetic for computers

• CPU Performance

• The processor: Datapath and Control

• Pipelining & Microcoded Microarchitecture

• Cache and control hazards

• Main Memory Organization

• External Memory and I/Os

Page 5: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

Where are We Going??

µProc

60%/yr.

(2X/1.5yr)

DRAM

9%/yr.

(2X/10

yrs) 1

10

100

1000

198

0

198

1

198

3

198

4

198

5

198

6

198

7

198

8

198

9

199

0

199

1

199

2

199

3

199

4

199

5

199

6

199

7

199

8

199

9

200

0

DRAM

CPU

198

2

Processor-Memory

Performance Gap:

(grows 50% / year)

Perf

orm

an

ce

Time

“Moore’s Law”

Single/multicycle

Datapaths

IFetch Dcd Exec Mem WB

IFetch Dcd Exec Mem WB

IFetch Dcd Exec Mem WB

IFetch Dcd Exec Mem WB

Pipelining

Memory Systems

I/O

Arithmetic

Page 6: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

Course Objectives

• How are programs written in a high-level language, such as C or Java, translated into the language of hardware and how does the hardware execute the resulting program?

• What is the interface between the software and the hardware, and how does software instruct the hardware to perform needed functions?

• What determines the performance of a program, and how can a programmer improve the performance?

• What techniques can be used by hardware designers to improve the performance?

Page 7: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

Grading Policy

Sessional Exams: 20% Quizzes (4-6): 10% Design and numerical assignments: 08% Lab 15%

Presentation/Project: 07%

Final Exam: 40%

Page 8: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

8

Introduction • Rapidly changing field:

– vacuum tube -> transistor -> IC -> VLSI

– memory capacity and processor speed is doubling every 1.5 years:

• Things you’ll be learning:

– how computers work, a basic foundation

– how to analyze their performance (or how not to!)

– issues affecting design of modern processors (caches, pipelines)

• Why learn this stuff?

– You want to design state-of-art system

– you want to call yourself a “computer scientist or engineer”

– you want to build software people use (need performance)

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

Page 9: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

What is Computer Architecture?

Application

2

Page 10: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

What is Computer Architecture?

Physics

Application

3

Page 11: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

What is Computer Architecture?

Physics

Application

Gap too large to bridge in one step

4

Page 12: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

What is Computer Architecture?

In its broadest definition, computer architecture is the design of the abstraction/implementation layers that allow us to execute information processing applications efficiently using manufacturing technologies

Physics

Application

Gap too large to bridge in one step

5

Page 13: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

What is Computer Architecture?

In its broadest definition, computer architecture is the design of the abstraction/implementation layers that allow us to execute information processing applications efficiently using manufacturing technologies

Physics

Application

Gap too large to bridge in one step

6

Page 14: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

Abstractions in Modern Computing Systems

Physics

Devices

Circuits

Gates

Register-Transfer Level

Microarchitecture

Instruction Set Architecture

Operating System/Virtual Machines

Programming Language

Algorithm

Application

7

Page 15: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

Computer Architecture is Constantly Changing

Physics

Devices

Circuits

Gates

Register-Transfer Level

Microarchitecture

Instruction Set Architecture

Operating System/Virtual Machines

Programming Language

Algorithm

Application Application Requirements: • Suggest how to improve architecture • Provide revenue to fund development

Technology Constraints: • Restrict what can be done efficiently • New technologies make new arch

possible

9

Page 16: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

Computer Architecture is Constantly Changing

Physics

Devices

Circuits

Gates

Register-Transfer Level

Microarchitecture

Instruction Set Architecture

Operating System/Virtual Machines

Programming Language

Algorithm

Application Application Requirements: • Suggest how to improve architecture • Provide revenue to fund development

Technology Constraints: • Restrict what can be done efficiently • New technologies make new arch

possible

Architecture provides feedback to guide application and technology research directions

10

Page 17: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

Computers Then…

IAS Machine. Design directed by John von Neumann. First booted in Princeton NJ in 1952 Smithsonian Institution Archives (Smithsonian Image 95-06151)

11

Page 18: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

Computers Now

12

Robots

Supercomputers Automobiles

Laptops

Set-top boxes

Smart phones

Servers Media Players

Sensor Nets

Routers

Cameras Games

Page 19: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

[from Kurzweil]

Major Technology Generations Bipolar

nMOS

CMOS

pMOS

Relays

Vacuum Tubes

Electromechanical

13

Page 20: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

9

What is a computer? • Components:

– input (mouse, keyboard)

– output (display, printer)

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

– network

CPU

Computer

Control

Datapath

Memory Devices

Input

Output

Page 21: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

10

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

Modern instruction set architectures:

– 80x86/Pentium/K6, PowerPC, DEC Alpha, MIPS, SPARC, HP

Page 22: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

11

Instruction Set Architecture

• ISA: An abstract interface between the hardware and the lowest level software of a machine that encompasses all the information necessary to write a machine language program that will run correctly, including instructions, registers, memory access, I/O, and so on. “... the attributes of a [computing] system as seen by the programmer, i.e.,

the conceptual structure and functional behavior, as distinct from the organization of the data flows and controls, the logic design, and the physical implementation.” – Amdahl, Blaauw, and Brooks, 1964

– Enables implementations of varying cost and performance to run identical software

Page 23: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

12

Interaction Between Components

I/O system Instr. Set Proc.

Compiler

Operating System

Application

Digital Design

Circuit Design

Instruction Set Architecture

Firmware

Memory

system

Datapath & Control

Page 24: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

13

Abstractions

• Our primary focus:

– understanding performance

– the processor (datapath and control)

– implemented using millions of transistors

– impossible to understand by looking at each transistor

– we need an abstraction

Page 25: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

14

The HW/SW Interface

Compiler

lw $15, 0($2)

add $16, $15, $14

add $17, $15, $13

lw $18, 0($12)

lw $19, 0($17)

add $20, $18, $19

sw $20, 0($16)

a[i] = b[i] + c;

Hardware

Systems software

(OS, compiler)

Application software

Assembler

000000101100000

110100000100010

Page 26: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

15

Abstractions: A View of Hardware/Software Hierarchy

• Hardware and software are layered

• Some functions can be moved back and forth

• System software is a collection of programs

– OS, compilers are some examples

– It makes job of individuals user easy

• Application software programs

– Used by many users

Page 27: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

16

What is Computer Architecture?

• A programmer’s view of machine

• What does it include?

• What is Computer Organization, Structure, and Function?

Page 28: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

Architecture & Organization (1)

• Architecture is those attributes visible to the programmer – Instruction set, number of bits used for data

representation, I/O mechanisms, addressing techniques.

– e.g. Is there a multiply instruction?

• Organization is how features are implemented – Control signals, interfaces, memory technology.

– e.g. Is there a hardware multiply unit or is it done by repeated addition?

Page 29: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

Architecture & Organization (2)

• Same architecture but different organization

• All Intel x86 family share the same basic architecture

• The IBM System/370 family share the same basic architecture (introduced in 1970 & survived till late)

• This gives – code compatibility, at least backwards

– Easy upgrade, without having to abandon software already developed

Page 30: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

Structure & Function

• Computer is a complex system with millions of elementary electronic

components

• How can one describe them? Key is to recognize the hierarchical nature of the

system

• Hierarchical system: a set of interrelated subsystems

• At each level of hierarchy designer is concerned with two things: – Structure: the way in which components relate to each other

– Function: the operation of individual components as part of the structure

• We will use a top down approach for better understanding

Page 31: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

Function • Basic functions a computer can perform are:

– Data processing • Sorting

• Arithmetic

– Data storage • Must be able to store data

• Even if data is processed on fly

• Short term storage, Long term storage

– Data movement • Moving data to directly connected device, known as I/O

• Moving data to remote device, known as Data Communication

– Control • Programmers control these functions by providing instructions

• Control unit manages the resources in response to those instructions

Page 32: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

Functional View

Page 33: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

Operations (a) Data movement

Page 34: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

Operations (b) Storage

Page 35: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

Operation (c) Processing from/to storage

Page 36: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

Operation (d) Processing from storage to I/O

Page 37: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

26

Computer Components

• Input/output devices

• Secondary storage: non-volatile, slower, cheaper

• Primary storage: volatile, faster, costlier

• CPU/processor (datapath and control)

Page 38: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

Structure - Top Level (Four main structural Components)

Computer

Main

Memory

Input

Output

Systems

Interconnection

Peripherals

Communication

lines

Central

Processing

Unit

Computer There may be one

or more of each of

these components

Page 39: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

Structure - The CPU

Computer Arithmetic

and

Login Unit

Control

Unit

Internal CPU

Interconnection

Registers

CPU

I/O

Memory

System

Bus

CPU

Page 40: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

Structure - The Control Unit

CPU

Control

Memory

Control Unit

Registers and

Decoders

Sequencing

Logic

Control

Unit

ALU

Registers

Internal

Bus

Control Unit

Page 41: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

Readings from Book

• Chapter – 1 (William Stallings)

• Chapter – 1 (Computer Organization and Design)

Page 42: Lect - 1 Introductionbiomisa.org/uploads/2015/09/Lect-1.pdf · Introduction • Rapidly changing field: – vacuum tube -> transistor -> IC -> VLSI – memory capacity and processor

31

Acknowledgements

• Computer Organization and Design The Hardware/Software Interface, David Patternson & John

Hennessy, 5th Edition, 2013

• Computer Architecture A Quantitative Approach, John Hennessy & David Patternson, 5th

Edition, 2012

• Computer Organization and Architecture, William Stallings, 9th Edition, 2012

• Prof. Dr. David Wentzlaff Lecture Notes, Department of Electrical Engineering Princeton

University

Mat

eria

l in

th

ese

slid

es h

as b

een

tak

en f

rom

, th

e fo

llow

ing

reso

urc

es