eem 486 eem 486: computer architecture lecture 1 course introduction and the five components of a...
Post on 19-Dec-2015
223 views
TRANSCRIPT
EEM 486
EEM 486: Computer Architecture
Lecture 1
Course Introductionand the
Five Components of a Computer
Lec 1.2
Course Information
Instructor: Atakan Doğan ([email protected])
Office Hours: Anytime
Materials: http://home.anadolu.edu.tr/~atdogan
Text: Patterson and Hennessy, Computer Organization and
Design: The Hardware/Software Interface,
3rd Edition.
Lec 1.3
Grading
Grading• Midterm I: 25% (XX% Course + YY%
Project)• Midterm II: 25% (XX% Course + YY%
Project)• Homeworks 10%• Final: 40% (XX% Course + YY% Project)
HW policy: return in 1 week; no late HW; no cheating
Grading Guidelines
AA: 90-100
Others: 40-90
FF: 0-40
Lec 1.4
What You Need to Know
Logic design (EEM 232)
• Logical equations, schematic diagrams, components
Basic machine structure (EEM 333)
• Processor, memory, I/O
Read and write in an assembly language (EEM 336)
Lec 1.5
Introduction
This course is all about how computers work
But what do we mean by a computer?• Different types: desktop, servers, embedded devices
• Different uses: automobiles, graphics, finance, genomics…
• Different manufacturers: Intel, Apple, IBM, Microsoft, Sun…
• Different underlying technologies and different costs!
Analogy: Consider a course on “automotive vehicles”• Many similarities from vehicle to vehicle (e.g., wheels)
• Huge differences from vehicle to vehicle (e.g., gas vs. electric)
Best way to learn:• Focus on a specific instance and learn how it works
• While learning general principles and historical perspective
Lec 1.6
Why learn this stuff?
You want to call yourself a “computer scientist”
You want to build software that people use (need performance)
You need to make a purchasing decision or offer “expert” advice
Both Hardware and Software affect performance:• Algorithm determines number of source-level
statements
• Language/Compiler/Architecture determine machine instruction (Chapter 2 and 3)
• Processor/Memory determine how fast instructions are executed (Chapter 5, 6, and 7)
Assessing and Understanding Performance in Chapter 4
Lec 1.7
Historical Perspective
ENIAC built in World War II was the first general purpose computer• Used for computing artillery firing tables
• 80 feet long by 8.5 feet high and several feet wide
• Each of the twenty 10 digit registers was 2 feet long
• Used 18,000 vacuum tubes
• Performed 1900 additions per second
Lec 1.8
Technology
Rapidly changing field:• vacuum tube -> transistor -> IC -> VLSI
Moore’s Law
transistor capacity doubles every 18-24 months
Lec 1.10
Microprocessor Logic Density
In ~1985 the single-chip processor (32-bit) and the single-board computer emerged
• workstations, personal computers, multiprocessors have been riding this wave since
In the 2002+ timeframe, these may well look like mainframes compared single-chip computer (maybe 2 chips)
i80286
i80486
Pentium
i80386
i8086
i4004
R10000
R4400
R3010
SU MIPS
1000
10000
100000
1000000
10000000
100000000
1970 1975 1980 1985 1990 1995 2000 2005
Tra
nsis
tors
i80x86
M68K
MIPS
Alpha
Lec 1.11
Processor Performance (SPEC)
0
50
100
150
200
250
300
350
1982 1984 1986 1988 1990 1992 1994
Year
Perform
ance
RISC
Intel x86
35%/yr
RISCintroduction
Performance now improves 50% per year (2x every 1.5 years)
Lec 1.12
Technology Trends Processor
• Logic capacity: about 30% per year
• Clock rate: about 20% per year
Memory
• DRAM capacity: about 60% per year (4x every 3 years)
• Memory speed: about 10% per year
• Cost per bit: improves about 25% per year
Disk
• Capacity: about 60% per year
• Total data use: 100% per 9 months!
Network Bandwidth
• Bandwidth increasing more than 100% per year!
Lec 1.13
What is “Computer Architecture”?
Computer Architecture =
Instruction Set Architecture +
Machine Organization
Lec 1.14
A View of Computer Architecture
Coordination of many levels of abstraction
Under a rapidly changing set of forces; technology, applications, OS, programming languages, etc.
Design, Measurement, and Evaluation
Instruction Set Architecture
I/O systemInstr. Set Proc.
Compiler
OperatingSystem
Application
Digital DesignCircuit Design
Firmware
Datapath & Control
Layout
Lec 1.15
Processor Organization
Capabilities & performance characteristics of principal functional units, e.g., Registers, ALU, Shifters, Logic Units, ...
Ways in which these components are interconnected
Information flows between components
Logic and means by which such information flow is controlled
Choreography of FUs to realize the ISA
Register Transfer Level (RTL) Description
Lec 1.17
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
True or False: Binary compatibility is extraordinarily important?
Modern instruction set architectures:• IA-32, PowerPC, MIPS, SPARC, ARM, and others
Lec 1.18
Machine Organization: The Big PictureSince 1946 all computers have had 5 components
Control
Datapath
Memory
Processor
Input
Output
Lec 1.19
Machine Organization
Components:• input (mouse, keyboard)
• output (display, printer)
• memory (disk drives, DRAM, SRAM, CD)
• network
Our primary focus: the processor (datapath and control)• implemented using millions of transistors
• impossible to understand by looking at each transisto
Lec 1.20
How do computers work?
Need to understand abstractions such as:• Applications software
• Systems software
• Assembly Language
• Machine Language
• Architectural Issues: i.e., Caches, Virtual Memory, Pipelining
• Sequential logic, finite state machines
• Combinational logic, arithmetic circuits
• Boolean logic, 1s and 0s
• Transistors used to build logic gates (CMOS)
• Semiconductors/Silicon used to build transistors
• Properties of atoms, electrons, and quantum dynamics
So much to learn!
Lec 1.21
Where are We Going??
EEM 486 AU’05
µProc60%/yr.(2X/1.5yr)
DRAM9%/yr.(2X/10 yrs)
1
10
100
1000
19
80 1
98
1 19
83 1
98
4 19
85 1
98
6 19
87 1
98
8 19
89 1
99
0 19
91 1
99
2 19
93 1
99
4 19
95 1
99
6 19
97 1
99
8 19
99 2
00
0
DRAM
CPU
19
82
Processor-MemoryPerformance Gap:(grows 50% / year)
Per
form
ance
Time
“Moore’s Law”
34-b it A LU
LO register(16x2 bits)
Load
HI
Cle
arH
I
Load
LO
M ultiplicandRegister
S h iftA ll
LoadM p
Extra
2 bits
3 232
LO [1 :0 ]
Result[H I] Result[LO]
32 32
Prev
LO[1]
Booth
Encoder E N C [0 ]
E N C [2 ]
"LO
[0]"
Con trolLog ic
InputM ultiplier
32
S ub /A dd
2
34
34
32
InputM ultiplicand
32=>34sig nEx
34
34x2 M U X
32=>34sig nEx
<<13 4
E N C [1 ]
M ulti x2 /x1
2
2HI register(16x2 bits)
2
01
3 4 ArithmeticSingle/multicycleDatapaths
IFetchDcd Exec Mem WB
IFetchDcd Exec Mem WB
IFetchDcd Exec Mem WB
IFetchDcd Exec Mem WB
Pipelining
Memory Systems
I/O
Lec 1.22
Summary
All computers consist of five components
• Processor: (1) datapath and (2) control
• (3) Memory
• (4) Input devices and (5) Output devices
Not all “memory” are created equally
• Cache: fast (expensive) memory are placed closer to the processor
• Main memory: less expensive memory--we can have more
Need to design against constraints of performance, power,
area and cost