Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
2014
COMPUTER ARCHITECTURE
CSE Fall 2014
Faculty of Computer Science and Engineering
Department of Computer Engineering
BK
TP.HCM
Vo Tan Phuong
http://www.cse.hcmut.edu.vn/~vtphuong
dce
2014
Chapter 1
Introduction
Fall 2014, CS
dce
2014
Presentation Outline
Welcome to CA CSE Fall 2014
Computer Architectures and Trends
High-Level, Assembly-, and Machine-Languages
Components of a Computer System
Chip Manufacturing Process
Programmer's View of a Computer System
Fall 2014, CS
dce
2014
Fall 2014, CS
dce
2014
Fall 2014, CS
dce
2014
Estimated Schedule
Introduction (1 week)
Performance (1 week)
Integer arithmetic, Floating Point Numbers (1 week)
MIPS Instruction Set Architecture (3 weeks)
MIPS Assembly Programming (1 weeks)
Basic Digital Function Block, ALU (1 week)
Single Cycle MIPS Processor (2 weeks)
Pipelined MIPS Processor (1 weeks)
Memory System (1 week)
Cache Memory System (2 week)
Fall 2014, CS
dce
2014
Required Background
Ability to program confidently in Java or C
Ability to design a combinational and sequential circuit
Fall 2014, CS
dce
2014
Cache Simulator
Midterm Exam
30%
Final Exam
30%
40%
Fall 2014, CS
dce
2014
Software Tools
MIPS Simulators
MARS: MIPS Assembly and Runtime Simulator
Runs MIPS-32 assembly language programs
Website: http://courses.missouristate.edu/KenVollmar/MARS/
SPIM
Also Runs MIPS-32 assembly language programs
Website: http://www.cs.wisc.edu/~larus/spim.html
Fall 2014, CS
dce
2014
Presentation Outline
Welcome to CA CSE Fall 2014
Computer Architectures and Trends
High-Level, Assembly-, and Machine-Languages
Components of a Computer System
Chip Manufacturing Process
Programmer's View of a Computer System
Fall 2014, CS
10
dce
2014
Computer Organization
HOW the ISA is implemented (physical view)
Fall 2014, CS
11
dce
2014
Fall 2014, CS
12
dce
2014
Fall 2014, CS
13
dce
2014
Fall 2014, CS
14
dce
2014
Fall 2014, CS
15
dce
2014
Fall 2014, CS
16
dce
2014
Fall 2014, CS
17
dce
2014
Fall 2014, CS
18
dce
2014
Fall 2014, CS
19
dce
2014
Classes of Computers
Desktop / Notebook Computers
General purpose, variety of software
Server Computers
Network based
High capacity, performance, reliability
Range from small servers to building sized
Embedded Computers
Hidden as components of systems
Stringent power/performance/cost constraints
Fall 2014, CS
20
dce
2014
Computer Sales
Fall 2014, CS
21
dce
2014
Microprocessor Sales
ARM processor
sales exceeded Intel
IA-32 processors,
which came second
ARM processors
are used mostly in
cellular phones
Most processors
today are embedded
in cell phones, digital
TVs, video games,
and a variety of
consumer devices
Fall 2014, CS
22
dce
2014
Presentation Outline
Welcome to CA CSE Fall 2014
Computer Architectures and Trends
High-Level, Assembly-, and Machine-Languages
Components of a Computer System
Chip Manufacturing Process
Programmer's View of a Computer System
Fall 2014, CS
23
dce
2014
Fall 2014, CS
24
dce
2014
A Hierarchy of Languages
Application Programs
High-Level Languages
Machine independent
High-Level Language
Machine specific
Low-Level Language
Assembly Language
Machine Language
Hardware
Computer Architecture Chapter 1
Fall 2014, CS
25
dce
2014
Assembly language
Slightly higher-level language
Readability of instructions is better than machine language
One-to-one correspondence with machine language instructions
Fall 2014, CS
26
dce
2014
Fall 2014, CS
27
dce
2014
Translating Languages
Program (C Language):
A statement in a high-level
language is translated
typically into several
machine-level instructions
$2,$5, 2
$2,$4,$2
$15,0($2)
$16,4($2)
$16,0($2)
$15,4($2)
$31
00051080
00821020
8C620000
8CF20004
ACF20000
AC620004
03E00008
Fall 2014, CS
28
dce
2014
Fall 2014, CS
29
dce
2014
Fall 2014, CS
30
dce
2014
Assembler
Converts assembly language programs into object files
Object files contain the machine instructions
Linker
Combines object files created by the assembler with link libraries
Produces a single executable program
Debugger
Allows you to trace the execution of a program
Allows you to view machine instructions, memory, and registers
Fall 2014, CS
31
dce
2014
Source
File
Source
File
Assembler
Object
File
Assembler
Object
File
Linker
Assembler
Object
File
Link
Libraries
Executable
File
Fall 2014, CS
32
dce
2014
Fall 2014, CS
33
dce
2014
Presentation Outline
Welcome to CA CSE Fall 2014
Computer Architectures and Trends
High-Level, Assembly-, and Machine-Languages
Components of a Computer System
Chip Manufacturing Process
Programmer's View of a Computer System
Fall 2014, CS
34
dce
2014
Fall 2014, CS
35
dce
2014
Fall 2014, CS
36
dce
2014
Computer
Datapath
Memory
Control
I/O Devices
Main Memory
Disk Storage
Input devices
Output devices
Input
Control
Processor
B
U
S
Datapath
Output
Disk
Network
Fall 2014, CS
37
dce
2014
Input Devices
Key Cap
Spring
Mechanical switch
Conductor-coated membrane
Contacts
Membrane switch
Fall 2014, CS
38
dce
2014
Output Devices
Cleaning of
excess toner
Charging
Fusing of toner
Heater
Rotating
drum
Light from
optical
system
Rollers
Sheet of paper
Toner
Laser printing
Computer Architecture Chapter 1
Fall 2014, CS
39
dce
2014
Memory Devices
Volatile Memory Devices
RAM = Random Access Memory
DRAM = Dynamic RAM
1-Transistor cell + capacitor
Dense but slow, must be refreshed
Typical choice for main memory
Fall 2014, CS
40
dce
2014
Track 2
Track 1
Track 0
Arm
Direction of
rotation
Platter
Spindle
Fall 2014, CS
41
dce
2014
Sector
Actuator
Recording area
Track 2
Track 1
Track 0
Arm
Direction of
rotation
Platter
Spindle
Fall 2014, CS
42
dce
2014
Fall 2014, CS
43
Next Program
Counter
Instruction
2014
Program Counter
dce
Instruction
Cache
Registers
A
L
U
Data
Cache
Control
Fall 2014, CS
44
dce
2014
Datapath Components
Program Counter (PC)
Contains address of instruction to be fetched
Next Program Counter: computes address of next instruction
Register File
General-purpose registers used for intermediate computations
Buses
Used to wire and interconnect the various components
Fall 2014, CS
45
2014
dce
Instruction Fetch
Instruction Decode
Execute
Fetch instruction
Compute address of next instruction
Generate control signals for instruction
Read operands from registers
Memory Access
Writeback Result
Fall 2014, CS
46
dce
2014
Clocking
Operation of digital hardware is governed by a clock
Clock period
Clock (cycles)
Data transfer
and computation
Update state
Fall 2014, CS
47
dce
2014
Presentation Outline
Welcome to CA CSE Fall 2014
Computer Architectures and Trends
High-Level, Assembly-, and Machine-Languages
Components of a Computer System
Chip Manufacturing Process
Programmer's View of a Computer System
Fall 2014, CS
48
dce
2014
Silicon ingot
Slicer
20 to 40 processing steps
8-12 in diameter
12-24 in long
Tested dies
Patterned wafer
Individual dies
Die
Tester
Packaged dies
Bond die to
package
Dicer
Ship to
Customers
Fall 2014, CS
49
dce
2014
Fall 2014, CS
50
dce
2014
26 dies, 15 good
Fall 2014, CS
51
dce
2014
Presentation Outline
Welcome to CA CSE Fall 2014
Computer Architectures and Trends
High-Level, Assembly-, and Machine-Languages
Components of a Computer System
Chip Manufacturing Process
Programmer's View of a Computer System
Fall 2014, CS
52
dce
2014
Software
Application Programs
High-Level Language
Level 5
Assembly Language
Level 4
Operating System
Interface
SW & HW
Level 3
Instruction Set
Architecture
Level 2
Microarchitecture
Level 1
Hardware
Physical Design
Increased level
of abstraction
Level 0
Fall 2014, CS
53
dce
2014
Programmer's View 2
Application Programs (Level 5)
Written in high-level programming languages
Fall 2014, CS
54
dce
2014
Programmer's View 3
Instruction Set Architecture (Level 2)
Interface between software and hardware
Specifies how a processor functions
Microarchitecture (Level 1)
Controls the execution of machine instructions (Level 2)
Implemented by digital logic
Fall 2014, CS
55