27
June 27, 2022 204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz, UC Berkeley)

September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

Embed Size (px)

Citation preview

Page 1: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture

Course Introduction and Overview

Pradondet Nilagupta

Spring 2001

(original notes from Randy Katz, UC Berkeley)

Page 2: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 2

Course Info

Lecturer: Pradondet Nilagupta Email: [email protected]: http://www.cpe.ku.ac.th/~pom/courses/205521/204521.html

Phone: 9428555 ext 1401office: rm.1102 Building 1 Engineering FacultyOffice hours: Mon. 4-6 PM. or make an appointment Lecture hr: Mon. 6-9 PM.

Page 3: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 3

References Textbook

Main Textbook (required)– Computer Architecture a Quantitative Approach 2nd Edition,

John L. Hennessy, David A. Patterson, Morgan Kaufmann 1996.

 Supplement Text– Advance Computer Architectures A design Space Approach,

Dezso Sima, Terence Fountain, Peter Kacsuk, Addison-Wesley, 1997

– Computer System Design and Architecture, Vincent P. Heuring, Harry F. Jordan, Addison-Wesley 1997.

– Computer Organization, V. Carl Hamacher, Zvonko G. Vranesic, Safwat G. Zaky,, McGraw-Hill, 1996.

– Computer Architecture, Robert J. Baron, Lee Higbie, Addison Wesley 1992.

Page 4: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 4

Grading

25% Homeworks

30% MidtermExam

30% Final Exam

15% Paper Presentation

Page 5: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 5

Topic Coverage

Fundamentals of Computer Architecture (Chapter 1)

Instruction Set Architecture (Chapter 2)

Pipelining and Instructional Level Parallelism (Chapter 3, 4)

Memory Hierarchy (Chapter 5)

Input/Output and Storage (Chapter 6)

Computer Arithmetic (Appendix A)

Vector Processors

Interconnection Network

Multiprocessor

Page 6: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 6

Related Courses

Digital& Org.

Digital& Org.

Comp.Arch.

Comp.Arch. ParallelParallel

How to build itImplementation details

Why, Analysis,Evaluation

Parallel Architectures,Languages, Systems

Strong

Prerequisite

Basic knowledge of theorganization of a computeris assumed!

Page 7: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 7

Course Focus

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

Technology ProgrammingLanguages

OperatingSystems History

ApplicationsInterface Design(Inst. Set Arch.)

Measurement & Evaluation

Parallelism

Computer Architecture:• Instruction Set Design• Organization• Hardware

Page 8: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 8

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, Blaaw, and Brooks, 1964

SOFTWARESOFTWARE

Page 9: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 9

Computer Architecture’s Changing Definition

1950s to 1960s: Computer Architecture Course: Computer Arithmetic

1970s to mid 1980s: Computer Architecture Course: Instruction Set Design, especially ISA appropriate for compilers

1990s: Computer Architecture Course:Design of CPU, memory system, I/O system, Multiprocessors, Networks

2010s: Computer Architecture Course: Self adapting systems? Self organizing structures?DNA Systems/Quantum Computing?

Page 10: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 10

Computer Architecture Topics (1/2)

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 11: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 11

Computer Architecture Topics (2/2)

M

Interconnection NetworkS

PMPMPMP …

Topologies,Routing,Bandwidth,Latency,Reliability

Processor-Memory-Switch

MultiprocessorsNetworks and Interconnections

Page 12: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 12

Throughout this text we will focus on optimizing machine cost per performance

Page 13: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 13

The Task of Computer Designer

determine what attribute are important for a new machine

design a machine to maximize cost performance

What are these Task?

instruction set design

function organization

logic design

implementation– IC design, packaging

, power, cooling….

Page 14: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 14

Instruction Set Architecture (ISA)

refer to actual programmer visible instruction setserve as the boundary between software and hardware must be designed to survive changes in hardware technology, software technology, and application characteristic.i.e. 80xx, 68xxx,80x86

Page 15: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 15

Organization and Hardware (1/2)

organization includes high-level aspect of computer design such as– memory system– bus structure– internal CPU

• arithmetic, logic, branch, data transfer are implemented

• i.e.. SPARC2, SPARC 20 has same instruction set but different organization

Page 16: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 16

Organization and Hardware (2/2)

Hardware used to refer to specific of a machine– detailed logic design– packaging technology of machine

machine identical ISA and nearly identical organization but they differs in detailed hardware

implementation

i.e. 2 version of Silicon Graphics Indy differ in clock rate and in detailed cache structure

Page 17: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 17

Choosing between 2 designs

What should the computer architect aware of in choosing between two designs?– design complexity

• complex design take longer to complete, this means a design will need to have higher performance to be competitive

– design time both hardware and software

Page 18: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 18

Computer Engineering Methodology

TechnologyTrends

Page 19: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 19

Computer Engineering Methodology

Evaluate ExistingEvaluate ExistingSystems for Systems for BottlenecksBottlenecks

TechnologyTrends

Benchmarks

Page 20: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 20

Computer Engineering Methodology

Evaluate ExistingEvaluate ExistingSystems for Systems for BottlenecksBottlenecks

Simulate NewSimulate NewDesigns andDesigns and

OrganizationsOrganizations

TechnologyTrends

Benchmarks

Workloads

Page 21: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 21

Computer Engineering Methodology

Evaluate ExistingEvaluate ExistingSystems for Systems for BottlenecksBottlenecks

Simulate NewSimulate NewDesigns andDesigns and

OrganizationsOrganizations

Implement NextImplement NextGeneration SystemGeneration System

TechnologyTrends

Benchmarks

Workloads

ImplementationComplexity

Page 22: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 22

Early Computing

1946: ENIAC, us Army, 18,000 Vacuum Tubes

1949: UNIVAC I, $250K, 48 systems sold

1954: IBM 701, Core Memory

1957: Moving Head Disk

1958: Transistor, FORTRAN, ALGOL, CDC & DEC

Founded

1964: IBM 360, CDC 6600, DEC PDP-8

1969: UNIX

1970: FLOPPY DISK

1981: IBM PC, 1st Successful Portable (Osborne1)

1986: Connection Machine, MAX Headroom Debut

Page 23: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 23

Generation

Evolutionary

Parallelism

Year Logic Storage Prog. Lang. O/S54 Tubes core (8 ms)58 Transistor (10ตs) FORTRAN60 ALGOL, COBOL Batch64 Hybrid (1ตs) thin film (200ns) Lisp, APL, Basic66 IC (100ns) PL/1, Simula,C67 Multiprog.71 LSI (10ns) 1k DRAM O.O. V.M.

73 (8-bit ตP)75 (16-bit ตP) 4k DRAM78 VLSI (10ns) 16k DRAM Networks80 64k DRAM84 (32-bit ตP) 256k DRAM ADA87 ULSI 1M DRAM89 GAs 4M DRAM C++92 (64-bit ตP) 16M DRAM Fortran90

Underlying Technologies

Page 24: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 24

Context for Designing New Architectures

Application Area– Special Purpose (e.g., DSP) / General Purpose– Scientific (FP intensive) / Commercial

Level of Software Compatibility– Object Code/Binary Compatible (cost HW vs.

SW)– Assembly Language (dream to be different

from binary)– Programming Language; Why not?

Page 25: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 25

Context for Designing New Architectures

Operating System Requirements for General Purpose Applications– Size of Address Space– Memory Management/Protection– Context Switch– Interrupts and Traps

Standards: Innovation vs. Competition– IEEE 754 Floating Point – I/O Bus – Networks – Operating Systems / Programming Languages

Page 26: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 26

Predictions for the Late 1990s (1/2)

Technology– Very large dynamic RAM: 64 MBits and beyond– Large fast Static RAM: 1 MB, 10ns

Complete systems on a chip– 10+ Million Transistors

Parallelism – Superscalar, Superpipeline, Vector,

Multiprocessors– Processor Arrays

Page 27: September 15, 2015204521 Digital System Architecture Course Introduction and Overview Pradondet Nilagupta Spring 2001 (original notes from Randy Katz,

April 19, 2023204521 Digital System Architecture 27

Predictions for the Late 1990s (2/2)

Low Power– 50% of PCs portable by 1995– Performance per watt

Parallel I/O– Many applications I/O limited, not computation– Computation scaling, but memory, I/O bandwid

th not keeping pace

Multimedia– New interface technologies– Video, speech, handwriting, virtual reality, …