cs4100: 計算機結構 course outline 國立清華大學資訊工程學系...

31
CS4100: CS4100: 計計計計計 計計計計計 Course Outline Course Outline 計計計計計計計計計計計計 計計計計計計計 計計 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Post on 22-Dec-2015

237 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

CS4100: CS4100: 計算機結構計算機結構

Course OutlineCourse Outline

國立清華大學資訊工程學系九十三學年度第一學期

Adapted from Prof. D. Patterson’s class notesCopyright 1998, 2000 UCB

Page 2: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

為什麼電腦不用十進位為什麼電腦不用十進位而用二進位?而用二進位?

Page 3: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-3 Computer ArchitectureC.T.King

二進制只有兩種狀態

對、錯

正、反陰、陽

勝、負真、偽

開、關

藍、綠

Page 4: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-4 Computer ArchitectureC.T.King

有沒有電子開關 ?

“gate” as the switch

Page 5: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-5 Computer ArchitectureC.T.King

A Working Transistor (1/5) Transistors consist of three terminals; the

source, the gate, and the drain:

Page 6: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-6 Computer ArchitectureC.T.King

A Working Transistor (2/5) In the n-type transistor, both the source and

the drain are negatively-charged and sit on a positively-charged well of p-silicon.

Page 7: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-7 Computer ArchitectureC.T.King

A Working Transistor (3/5) When positive voltage is applied to the gate,

electrons in the p-silicon are attracted to the area under the gate forming an electron channel between the source and the drain.

Page 8: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-8 Computer ArchitectureC.T.King

A Working Transistor (4/5) When positive voltage is applied to the drain,

the electrons are pulled from the source to the drain. In this state the transistor is on.

Page 9: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-9 Computer ArchitectureC.T.King

A Working Transistor (5/5) If the voltage at the gate is removed,

electrons are not attracted to the area between the source and drain. The pathway is broken and the transistor is turned off.

Page 10: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-10 Computer ArchitectureC.T.King

相關電壓電流特性及電路分析等知識

我們是在___課中介紹的

答:「電子電路學」

Page 11: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-11 Computer ArchitectureC.T.King

有了開關就可以做邏輯閘 CMOS NAND:

Page 12: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-12 Computer ArchitectureC.T.King

有了邏輯閘就可做邏輯電路 加法器:

A

AA

B

BB CI

CIS CO

Page 13: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-13 Computer ArchitectureC.T.King

也可以做記憶元件 可存一個 bit 的東西:

clock'

S'

Q'

QR' R

S

Page 14: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-14 Computer ArchitectureC.T.King

答:「數位邏輯設計」

這部份的學問叫____

Page 15: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-15 Computer ArchitectureC.T.King

最後,電腦的主要部份就都可以做了

ZN

暫存器

記憶體

PCIR

控制器 ALU

clock

控制信號

Page 16: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-16 Computer ArchitectureC.T.King

Processor (active)

Computer

Control(“brain”)

Datapath(“brawn”)

Memory(passive)

(where programs, data live whenrunning)

Devices

Input

Output

Keyboard, Mouse

Display, Printer

Disk (where programs, data live whennot running)

Basic Organization of Any Computer

Page 17: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-17 Computer ArchitectureC.T.King

Computer Organization Capabilities and performance characteristics

of principal functional units, e.g., registers, ALU, shifters, ...

Ways in which these components are interconnected (structure)

Information flows between components (data, datapath)

Logic and means by which such information flow is controlled

Register Transfer Level (RTL) description

Page 18: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-18 Computer ArchitectureC.T.King

What is Computer Architecture?

Computer Architecture = Instruction Set Architecture + Machine Organization

I/O systemProcessor

CompilerOperating

System(MS Windows)

Application (IE)

Digital DesignCircuit Design

Datapath & Control

Transistors

MemoryHardware

Software AssemblerInstruction Set Architecture

Machine Organizatio

n

Page 19: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-19 Computer ArchitectureC.T.King

instruction set

software

hardware

Does it have to be hardware?

Instruction Set as an Interface

Coordination of many levels of abstraction

Page 20: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-20 Computer ArchitectureC.T.King

High Level Language Program

Assembly Language Program

Machine Language Program

Control Signal Specification

Compiler

Assembler

Machine Interpretation

temp = v[k];

v[k] = v[k+1];

v[k+1] = temp;

lw $15, 0($2)lw $16, 4($2)sw $16, 0($2)sw $15, 4($2)

0000 1001 1100 0110 1010 1111 0101 10001010 1111 0101 1000 0000 1001 1100 0110 1100 0110 1010 1111 0101 1000 0000 1001 0101 1000 0000 1001 1100 0110 1010 1111

°°

ALUOP[0:3] <= InstReg[9:11] & MASK

ISA

Another Perspective

Page 21: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-21 Computer ArchitectureC.T.King

“... 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

Organization of ProgrammableStorage

Data Types and Data Structures:Encodings and Representations

Instruction Set

Instruction Formats

Modes of Addressing and Accessing Data Items and Instructions

Exceptional Conditions

SOFTWARESOFTWARE

Instruction Set Architecture (ISA)

Page 22: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-22 Computer ArchitectureC.T.King

MIPS R3000 ISA Instruction categories:

Load/Store Computational Jump and Branch Floating Point

coprocessor Memory Management Special

R0 - R31

PCHI

LO

OP

OP

OP

rs rt rd sa funct

rs rt immediate

jump target

3 Instruction Formats: all 32 bits wide

Registers

Page 23: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-23 Computer ArchitectureC.T.King

Digital Alpha (v1, v3) 1992-97HP PA-RISC (v1.1, v2.0) 1986-96Sun Sparc (v8, v9) 1987-95SGI MIPS (MIPS I, II, III, IV, V) 1986-96Intel (8086,80286,80386, 1978-

80486,Pentium, MMX,SIMD, IA-64, ...)

Example ISA

Page 24: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-24 Computer ArchitectureC.T.King

Why Do Computer Architecture?

RAPID CHANGES It is exciting! It has never been more exciting! It impacts every other aspect of electrical

engineering and computer science

Page 25: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-25 Computer ArchitectureC.T.King

Course Administration: CS4100-01

授課老師 : 金仲達辦公室 : 資電 443 電話 : 2804

email: [email protected] 助教 : (參考課程網頁)

CS4100-01: 林旻平 上課時間 :

CS4100-01: 星期二 10:10-12:00 星期四 10:10-11:00

上課地點 : 資電館 127 室 課程網頁 :

http://www.cs.nthu.edu.tw/~king/courses/cs4100.html

Page 26: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-26 Computer ArchitectureC.T.King

Course Administration: CS4100-02

授課老師 : 黃婷婷辦公室 : 資電 442 電話 : 1310

email: [email protected] 助教 : (參考課程網頁)

CS4100-02: to be announced 上課時間 :

CS4100-02: 星期二 10:10-12:00 星期四 10:10-11:00

上課地點 : 資電館 131 室 課程網頁 :

http://www.cs.nthu.edu.tw/~tingting/cs4100.html

Page 27: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-27 Computer ArchitectureC.T.King

Text BookComputer Organization and Design: The

Hardware/Software Interface, 2nd ed.,David Patterson and John Hennessy,

1998

史丹福大學校長

RISC, RAID

Page 28: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-28 Computer ArchitectureC.T.King

Topics CoveredComputer Organization and Design: The

Hardware/Software Interface, 2nd ed.,D. Patterson and J. Hennessy, 1998

Topic ChapterIntroduction 1The Role of Performance 2Instructions: Language of the Machine 3Arithmetic for Computers 4The Processor: Datapath and Control 5Enhancing Performance with Pipelining 6Exploiting Memory Hierarchy 7Interfacing Processors and Peripherals 8

Page 29: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-29 Computer ArchitectureC.T.King

Prerequisite Prerequisite courses:

Logic design, assembly language and system programming

Basic machine structure Processor, memory, I/O

Read and write basic C programs Read and write in an assembly language

MIPS preferred Understand the concept of virtual memory Logic design

Logic equations, schematic diagrams, finite state machine

Account on the CS workstations

Page 30: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-30 Computer ArchitectureC.T.King

Expected Course Workload Learn MIPS instruction set Learn processor emulators and benchmarking 6 homework assignments (1 per 2 weeks)

Each assignment is a mixture of design, calculation, programming, measurement, and discussion problems

Assignments will be posted on the course homepage

Independent of, but complement, examinations One mid-term and one final examination Grade breakdown

Homework Assignments 35% Midterm Exam: 30% (11/9/2004) Final Exam: 35% (1/6/2005)

Page 31: CS4100: 計算機結構 Course Outline 國立清華大學資訊工程學系 九十三學年度第一學期 Adapted from Prof. D. Patterson’s class notes Copyright 1998, 2000 UCB

Outline-31 Computer ArchitectureC.T.King

Course Problems Cannot turn in homework on time

No late homework is accepted Forgot to turn in homework/ Dog ate

computer ???

What is cheating? Study together in groups is encouraged Work must be your own