Title: ECE230 Lecture 1
1ECE230Lecture 1
- Instructor F LOMBARDI
- Adapted from notes by Dave Patterson(http//www.c
s.berkeley.edu/patterson)
2Historical Perspective
- Decade of 70s (Microprocessors)
- Programmable Controllers
- Single Chip Microprocessors
- Personal Computers
- Decade of 80s (RISC Architecture)
- Instruction Pipelining
- Fast Cache Memories
- Compiler Optimizations
- Decade of 90s (Instruction Level Parallelism)
- Superscalar Processors
- Aggressive Code Scheduling
- Low Cost Supercomputing
- Out of Order Execution
-
KILLER MICROS
3Performance Growth In Perspective
- Doubling every 18 months since 1982
- Cars travel at 11,000 mph get 4000
miles/gal - Air Travel LA-NY in 90 seconds (Mach
200) - Wheat yield 20,000 bushels per acre
- Doubling every 24 months since 1970
- Cars travel at 200,000 mph get 50,000
miles/gal - Air Travel LA-NY in 6 seconds (Mach
3,000) - Wheat yield 300,000 bushels per acre
4Technology dramatic change
- 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
5Technology Dramatic Change
- Processor
- 2X in performance every 1.5 years 1000X
performance in last decade - Main Memory
- DRAM capacity 2x / 2 years 1000X size in last
decade - Cost/bit improves about 25 per year
- Disk
- capacity 2X in size every 1.5 years
- Cost/bit improves about 60 per year
- 120X size in last decade
6Trends Microprocessor Capacity
100,000,000
Alpha 21264 15 million Pentium Pro 5.5
million PowerPC 620 6.9 million Alpha 21164 9.3
million Sparc Ultra 5.2 million
10,000,000
Moores Law
Pentium
i80486
1,000,000
transistors
i80386
i80286
100,000
2X transistors/Chip Every 1.5 years Called
Moores Law
i8086
10,000
i8080
i4004
1000
1970
1975
1980
1985
1990
1995
2000
Year
7Trends Memory Capacity (1 Chip DRAM)
- DRAM Dynamic Random Access Memory
- where programs live while running volatile
(contrast with disk memory)
1,000,000,000
year size(Megabit) 1980 0.0625 1983 0.2
5 1986 1 1989 4 1992 16 1996 64 2000 256
Now 1.4X/yr, or doubling every 2 years
100,000,000
10,000,000
Bits
1,000,000
100,000
10,000
1,000
1970
1975
1980
1985
1990
1995
2000
Year
8Trends Processor Performance
1100
DEC Alpha 21264/600 Intel VC820 (Pentium III,
1.0 GHz)
1000
900
800
1.54x/year
700
600
500
400
DEC Alpha 5/500
300
DEC Alpha 5/300
DEC
200
HP
IBM
AXP/
Sun
MIPS
MIPS
9000/
RS/
DEC Alpha 4/266
500
100
-4/
M/
M
750
6000
IBM POWER 100
260
120
2000
0
87
88
89
90
91
92
93
94
95
96
97
9Why Study Computer Architecture
- Arent they fast enough already?
- Are they?
- Fast enough to do everything we will EVER want?
- AI, protein sequencing, graphics
- Is speed the only goal?
- Power heat dissipation battery life
- Cost
- Reliability
- Etc.
Answer 1 requirements are always
changing Answer 2 technology playing field is
always changing
10Classes of Computers
- High performance (supercomputers)
- Supercomputers Cray T-90
- Massively parallel computers Cray T3E
- Balanced cost/performance
- Workstations SPARCstations
- Servers SGI Origin, UltraSPARC
- High-end PCs Pentium quads
- Low cost/power
- Low-end PCs, laptops, PDAs mobile Pentiums
11What is Computer Architecture
- Computer Architecture
- Instruction Set Architecture
- Organization
- Hardware
12What is Computer Architecture?
Application (Netscape)
Operating System
Compiler
(Unix Windows 9x)
Software
Assembler
Instruction Set Architecture
Hardware
I/O system
Processor
Memory
Datapath Control
Digital Design
ECE 230
Circuit Design
transistors, IC layout
- Key Idea levels of abstraction
- hide unnecessary implementation details
- helps us cope with enormous complexity of real
systems
13What is Computer Architecture?
- Computer Architecture Instruction Set
Architecture (ISA) - the one true language of a machine
- boundary between hardware and software
- the hardwares specification defines what a
machine does Machine Organization - the guts of the machine how the hardware
works the implementation must obey the ISA
abstraction - We will explore both, and more!
14Forces on Computer Architecture
Technology
Programming
Languages
Applications
Computer Architecture
Operating
Systems
Compiler
15Forces Acting on Computer Architecture
- R-a-p-i-d Improvement in Implementation
Technology - IC integrated circuit invented 1959
- SSI ? MSI ? LSI ? VLSI dramatic growth in number
transistors/chip ? ability to create more (and
bigger) FUs per processor bigger memory ? more
sophisticated applications, larger databases - Tomorrows Science Fiction ubiquitous computing
computers embedded everywhere - New Languages Java, C ...
16Machine Organization 5 classic components of
any computer
Personal Computer
Keyboard, Mouse
Computer
Processor (CPU) (active)
Memory (passive) (where programs, data live
when running)
Devices
Disk (where programs, data live when not
running)
Input
Control (brain)
Datapath (brawn)
Output
Display, Printer
The components of every computer, past and
present, belong to one of these five categories
17Machine Organization Perspective
- Capabilities performance characteristics of
principal Functional Units (FUs) of the CPU - Ways in which these components are interconnected
to realize the ISA - Information flows between components
- How such information flow is controlled
- Levels of Machine Description
- Register Transfer Level (RTL)
- Gate Level (Digital Design)
18ECE230 Course Content
Computer Architecture and Engineering
Instruction Set Design Computer
Organization Interfaces Hardware
Components Compiler/System View Logic Designers
View Building Architect Construction
Engineer
19von Neumann Computer
- 1944 The First Electronic Computer ENIAC at IAS,
Princeton Univ. (18,000 vacuum tubes) - Stored-Program Concept Storing programs as
numbers by John von Neumann Eckert and
Mauchly worked in engineering the concept. - Idea A program is written as a sequence of
instructions, represented by binary numbers. The
instructions are stored in the memory just as
data. They are read one by one, decoded and then
executed by the CPU.
20Execution Cycle
Obtain instruction from program storage
Determine required actions and instruction size
Locate and obtain operand data
Compute result value or status
Deposit results in storage for later use
Determine successor instruction
21 The Instruction Set a Critical Interface
The actual programmer visible instruction set
22Instruction-Set Processor Design
- Architecture (ISA) programmer/compiler view
- functional appearance to its immediate
user/system programmer - Opcodes, addressing modes, architected registers,
IEEE floating point - Implementation (µarchitecture) processor
designer/view - logical structure or organization that performs
the architecture - Pipelining, functional units, caches, physical
registers - Realization (chip) chip/system designer view
- physical structure that embodies the
implementation - Gates, cells, transistors, wires
23Relationship Between the Three Aspects
- Processors having identical ISA may be very
different in organization. - e.g. NEC VR 5432 and NEC VR 4122
- Processors with identical ISA and nearly
identical organization are still not nearly
identical. - e.g. Pentium II and Celeron are nearly identical
but differ at clock rates and memory systems - Architecture covers all three aspects.
24Why Study Computer Architecture?
- CHANGE Its exciting! It has never been more
exciting! - It impacts every other aspect of electrical
engineering and computer science
BionicsSensors in latex fingers instantly
register hot and cold, and an electronic
interface in his artificial limb stimulates the
nerve endings in his upper arm, which then pass
the information to his brain. The 3,000 system
allows his hand to feel pressure and weight, so
for the first time since losing his arms in a
1986 accident, he can pick up a can of soda
without crushing it or having it slip through
his fingers. One Digital Day