engs 116 lecture 11 engs 116 / cosc 107 computer architecture introduction vincent h. berk september...

26
ENGS 116 Lecture 1 1 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl article Reading for Monday: 1.5 – 1.11

Post on 21-Dec-2015

217 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 1

ENGS 116 / COSC 107

Computer Architecture

Introduction

Vincent H. Berk

September 21, 2005

Reading for Friday: Chapter 1.1 – 1.4, Amdahl article

Reading for Monday: 1.5 – 1.11

Page 2: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 2

Prerequisite Knowledge• Assembly language programming

• Fundamentals of logic design Combinational and sequential components (e.g., gates, multiplexers,

decoders, ROMs, flip-flops, registers, RAMs)

• Processor Design Instruction cycle, pipelining, branch prediction, exceptions

• Memory Hierarchy Caches (direct-mapped, fully-associative, 2-way set associative), spatial

locality, temporal locality, virtual memory, translation lookaside buffer (TLB)

• Input and Output Polling, interrupts

• Multiprocessors

Page 3: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 3

What is Computer Architecture?

Two viewpoints:

• Hardware designer’s viewpoint: CPUs, caches, buses,

pipelines, physical memory, etc.

• Programmer’s viewpoint: instruction set – opcodes, addressing modes, registers, virtual memory, etc.

Study of architecture covers both instruction-set architectures and machine implementation organizations.

Page 4: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 4

Computer Architecture Is ...

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

Page 5: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 5

Computer Architecture’s Changing Definition

• 1950s to 1960s:

Computer Architecture Course = Computer Arithmetic.

• 1970s to 1980s:

Computer Architecture Course = Instruction Set Design, especially ISA appropriate for compilers.

• 1990s and beyond:

Computer Architecture Course = Design of CPU, memory system, I/O system, multiprocessors.

Page 6: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 6

5 Generations of Electronic Computers (Hwang)

First(1945-54)

Vacuum tubes and relay mem-ories, CPU driven by PC andaccumulator, fixed-pointarithmetic.

Machine/assembly lan-guages, single user, nosubroutine linkage, pro-grammed I/O using CPU.

ENIAC,Princeton IAS,IBM 701.

Second(1955-64)

Discrete transistors and corememories, floating-pointarithmetic, I/O processors,multiplexed memory access.

HLL used with compilers,subroutine libraries, batchprocessing monitor.

IBM 7030,CDC 1604,Univac LARC.

Third(1965-74)

Integrated circuits (SSI/MSI),microprogramming, pipe-lining, cache and lookaheadprocessors.

Mutiprogramming andtime-sharing OS, multiuserapplications.

IBM 360/370,CDC 6600,TI-ASC, PDP-8.

Fourth(1975-90)

LSI/VLSI and semi-conductormemory, multi-processors,vector super-computers,multicomputers.

Multiprocessor OS,languages, compilers, andenvironments for parallelprocessing.

VAX/9000,Cray X/MP,IBM 3090, BBNTC2000.

Fifth(1991 -present)

ULSI/VHSIC processors,memory, and switches, high-density packaging, scalablearchitectures.

Massively parallel process-ing, grand challenge appli-cation, heterogeneous pro-cessing.

IBM/MPP,Cray/MPP,TMC/CM-5,Intel Paragon.

Page 7: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 7

Page 8: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 8

Basic Computer Organization

Control

Datapath

Memory

Input

Output

Processor

Page 9: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 9

Computer Architecture Topics

Instruction Set Architecture

Pipelining, Hazard Resolution,Superscalar, Reordering, Prediction, Speculation

Addressing,Protection,Exception Handling

L1 Cache

L2 Cache

DRAM

Disks, WORM, Tape

Coherence,Bandwidth,Latency

Emerging TechnologiesInterleavingBus protocols

RAID

VLSI

Input/Output and Storage

MemoryHierarchy

Pipelining and Instruction- Level Parallelism

Page 10: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 10

Computer Architecture Topics

M

Interconnection NetworkS

PMPMPMP° ° °

Topologies,Routing,Bandwidth,Latency,Reliability

Network Interfaces

Shared Memory,Message Passing,Data Parallelism

Processor-Memory-Switch

MultiprocessorsNetworks and Interconnections

Page 11: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 11

Understanding the design techniques, machine structures, technology factors, and evaluation methods that will determine the form of computers in the 21st Century

Technology ProgrammingLanguages

OperatingSystems History

ApplicationsInterface Design

(ISA)

Measurement & Evaluation

Parallelism

Computer Architecture:• Instruction Set Design• Organization• Hardware

Course Focus

Page 12: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 12

Computer Tasks

• Desktop Computing, Lightweight Servers Price-performance (low cost) Communication, Graphics

• Server Computing, Mainframe Systems Specific performance, computing power

Availability, Reliability

• Embedded Computers and DSPs Power and Memory requirements

Lowest cost for required performance

Real-time or soft-real-time performance

Page 13: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 13

Task of Computer Designer

• Determine which attributes are important for a new machine.

• Design a machine to meet functional requirements, price,

power and performance goals.

Page 14: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 14

Technology Trends

• Integrated circuit logic technology transistor density (feature size) transistor count cycle speed

• Semiconductor DRAM density latency and bandwidth

• Magnetic disk technology density access time

• Network technology bandwidth latency

Page 15: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 15

Scaling in ICs

• Feature size: minimum size of a single distinguishable/producible item on a chip die 1971 – 10 microns 2001 – 0.18 microns 2003 – 0.06 microns 2006 – 5 nanometers (0.005 microns)

• Complex relationships: Transistor density increases quadratically with decrease in feature size Reduction in feature size requires voltage reduction to maintain correct operation

and reasonable reliability

• Scaling IC wiring: Signal delay increases with product of resistance and capacitance Shorter wires can be smaller

Page 16: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 16

Power Consumption of ICs

• Energy requirements per transistor are proportional to load capacitance, frequency of switching and the square of the voltage.

• Switching frequency and density of transistors increases faster than decrease in capacitance and voltage, leading to increased power consumption == generated heat

• Pentium 4 consumes 100 Watts of power while the 8086-i386 did not even feature a heat-sink

Page 17: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 17

Cost and Price

• Cost of manufacturing decreases over time: learning curve

• Learning curve is measured as an increase in yield

• Volume doubling leads to 10% reduction in cost

• Commodity products tend to decrease cost: Volume Competition Efficiency

Page 18: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 18

Difference between Cost and Price

Page 19: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 19

Wafers and Dies

• Chips are produced on round silicon disks• Dies are the actual chip, cut out from the wafer• Testing occurs before cutting and after packaging

Page 20: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 20

Yield and Cost

• However: Wafers do not just contain chip-dies, usually a large area, including

several chip-dies, is dedicated for test equipment hook-up Actual yield in mass-production chip-fabs varies between 98% for

DRAMS to 1% for new Processors

Page 21: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 21

Yield and Cost

• Switch from 200mm to 300mm wafers: Although 300mm wafers have lower yield than 200mm wafers, the overhead

processing costs per wafer are high enough to make 300mm wafers more cost effective.

• Redundancy in dies: Single transistors do fail during production, causing memory cells, pipeline stages,

control logic sections to fail Redundancy is built into the each die by introducing backup-units After testing, backup units are enabled and failed units can be disabled by LASER This decreases the chances of small flaws failing an entire die No company yet has released their redundant circuitry numbers

Page 22: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 22

Measurement and Evaluation

Design

Analysis

Architecture is an iterative process: Searching the space of possible designs at all levels of computer systems

Creativity

Good IdeasGood IdeasMediocre IdeasBad Ideas

Cost /PerformanceAnalysis

Page 23: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 23

Performance

Hwang: “The ideal performance of a computer system demands a perfect match between machine capability and program behavior.”

Machine capability – enhanced with better hardware technology, innovative architectural features, efficient resource management.

Program behavior – affected by algorithm design, data structures, language efficiency, programmer skill, compiler technology.

To improve software performance, need to understand how various hardware factors affect overall system performance!

Page 24: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 24

Measuring Performance

• Key measure is time.

• Response time (execution time): Time between start and

completion of a task.

• Throughput: total amount of work completed in a given time.

SecondsProgram Instructions

Program Clock CyclesInstruction

SecondsClock Cycle

Page 25: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 25

Comparing Design Alternatives

“X is n times faster than Y” means

Page 26: ENGS 116 Lecture 11 ENGS 116 / COSC 107 Computer Architecture Introduction Vincent H. Berk September 21, 2005 Reading for Friday: Chapter 1.1 – 1.4, Amdahl

ENGS 116 Lecture 1 26

Benchmarking

• Real programs; e.g., compilers, photo editing

• Modified or scripted real programs; e.g., compression algorithms

• Kernels – small, key pieces from real programs; e.g., Livermore Loops, Linpack.

• Toy benchmarks – typically 10 to 100 lines of code, useful primarily for intro programming assignments; e.g., quicksort, prime numbers, encryption

• Synthetic benchmarks – try to match average frequency of operations and operands for a set of programs; e.g., Whetstone, Dhrystone.

• Benchmark suites – collections of programs; e.g, SPEC CPU2000