Lectures for 2nd Edition

Download Report

Transcript Lectures for 2nd Edition

Computer Architecture







Instructor: Wen-Hung Liao
E-mail: [email protected]
Office: 大仁樓三樓 200312
Office hours: TBA
Course web page:
http://www.cs.nccu.edu.tw/~whliao/cod2005/
Textbook: Patterson and Hennessy, Computer
Organization and Design, 3rd Edition.
Companion website
Chapter 1
Computer
Abstractions and
Technology
Introduction

Rapidly changing field:

vacuum tube -> transistor -> IC -> VLSI

doubling every 1.5 years:

memory capacity

processor speed (Due to advances in technology and
organization)
Moore’s Law (Example)
Year of introduction
Transistors
4004
1971
2,250
8008
1972
2,500
8080
1974
5,000
8086
1978
29,000
286
1982
120,000
386™ processor
1985
275,000
486™ DX processor
1989
1,180,000
Pentium® processor
1993
3,100,000
Pentium II processor
1997
7,500,000
Pentium III processor
1999
24,000,000
Pentium 4 processor
2000
42,000,000
Things you’ll be learning

How computers work, a basic foundation

How to analyze their performance

Issues affecting modern processors (caches,
pipelines, parallel computing)
Why learn this stuff?

you want to call yourself a “computer
scientist”

you want to build software people use (need
performance)

you need to make a purchasing decision or
offer “expert” advice
Prerequisite



Some background in assembly language
Boolean algebra
Logic design
What is a computer?


Components:
 input (mouse, keyboard...)
 output (display, printer...)
 storage(disk drives, CD…)
 memory (DRAM, SRAM...)
 data path
 control
 network
Our primary focus: the processor (data path and control)
 implemented using millions of transistors
 Impossible to understand by looking at each transistor
Below your program
gram High-level
(in C)
language
pro


High-level programming language
- Fortran
- C/C++
- Java
swap(int v[], int k)
{int temp;
temp = v[k];
v[k] = v[k+1];
v[k+1] = temp;
}
C compiler
Assembly
language
program
(for MIPS)
Assembly language: machine
dependent
swap:
muli $2, $5,4
add $2, $4,$2
lw $15, 0($2)
lw $16, 4($2)
sw $16, 0($2)
sw $15, 4($2)
jr $31
Assembler

Machine language: consists of binary
digits,or ‘bits’ of information
00000000101000010000000000011000
00000000100011100001100000100001
Binary machine
10001100011000100000000000000000
language 10001100111100100000000000000100
program
101011001111001000000000000000
(for MIPS)
00
10101100011000100000000000000100
00000011111000000000000000001000
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, IA-64
RISC vs. CISC architecture
Where we are headed








A specific instruction set architecture (Chapter 2)
Arithmetic and how to build an ALU (Chapter 3)
Assessing and understanding performance (Chapter 4)
Constructing a processor to execute our instructions
(Chapter 5)
Pipelining to improve performance (Chapter 6)
Memory: caches and virtual memory (Chapter 7)
Storage, Networks, and Other Peripherals (Chapter 8)
Multiprocessors (Chapter 9)
Homework


Read Chapter 1 of textbook.
Download appropriate SPIM simulator for
your computer.
The Chip Manufacturing
Process
Integrated IC Cost
Cost per wafer
Cost per die 
Dies per wafer yield
Wafer area
Dies per wafer 
Die area
Yield 
(empirical)
1
(1  (Defectsper area  Die area/2))2
Question: What is the approximate relationship
between cost and die area?