CSE 675.02: Introduction To Computer Architecture: Instructor: Roger Crawfis
CSE 675.02: Introduction To Computer Architecture: Instructor: Roger Crawfis
CSE 675.02: Introduction To Computer Architecture: Instructor: Roger Crawfis
02:
Introduction to Computer
Architecture
g. babic Presentation A 3
Tasks of Computer Architects
• Computer architects must design a computer to meet functional
requirements as well as price, power, and performance goals.
Often, they also have to determine what the functional require-
ments are, which can be a major task.
• Once a set of functional requirements has been established,
the architect must try to optimize the design. Here are three
major application areas and their main requirements:
– Desktop computers: focus on optimizing cost-performance
as measured by a single user, with little regard for program
size or power consumption,
– Server computers – focus on availability, scalability, and
throughput cost-performance,
– Embedded computers – driven by price and often power
issues, plus code size is important.
g. babic Presentation A 4
Rapid Rate of Improvements
• Today, less than one thousand dollars purchases a personal
computer that has more performance, more main memory,
and more disk storage than a computer bought in 1980 for
one million dollars.
g. babic Presentation A 5
Technology Trends
• Integrated circuit logic technology – a growth in transistor
count on chip of about 55% per year.
• Semiconductor RAM – density increases by 40% to 60% per
year, while cycle time has improved very slowly, decreasing
by about one-third in 10 years. Cost has decreased at rate
about the rate at which density increases.
• Magnetic disc technology – disk density has been recently
improving more then 100% per year, while prior to 1990
about 30% per year.
• Network technology – Latency and bandwidth are important,
though recently bandwidth has been primary focus. Internet
infrastructure in the U.S. has been doubling in bandwidth
every year.
g. babic Presentation A 6
Developments in Computer Design
• During the first 25 years of electronic computers both forces, technology
and innovations in computer design made major contributions.
g. babic Presentation A 7
How CPUs get faster
g. babic Presentation A 8
Scientific American Nov 04
Growth in Microprocessor Performance
g. babic Presentation A 9
Approaches to Instruction Set Architecture
g. babic Presentation A 10
RISC Architecture
RISC – Reduced Instruction Set Computer
After 1985, most computers announced have been of RISC
architecture. RISC designers focused on two critical
performance techniques in computer design:
– the exploitation of instruction-level parallelism, first
through pipelining and later through multiple instruction
issue,
– the use of cache, first in simple forms and later using
sophisticated organizations and optimizations.
g. babic Presentation A 16
Instructions:
• Language of the Machine
• We’ll be working with the MIPS instruction set architecture
– similar to other architectures developed since the 1980's
– Almost 100 million MIPS processors manufactured in 2002
– used by NEC, Nintendo, Cisco, Silicon Graphics, Sony, …
1400
Other
1300
SPARC
1200 Hitachi SH
1100 PowerPC
Motorola 68K
1000
MIPS
900 IA-32
800 ARM
700
600
500
400
300
200
100
0
1998 1999 2000 2001 2002
g. babic Presentation A
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 perspectives
g. babic Presentation A
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
g. babic Presentation A 19
What is a computer?
• 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 transistor
– We need...
g. babic Presentation A
Abstraction
• Delving into the depths
reveals more information
• An abstraction omits
unneeded detail, helps us
cope with complexity
g. babic Presentation A
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!
g. babic Presentation A 22
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
g. babic Presentation A
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
–Since then:
Moore’s Law:
g. babic Presentation A
• The following slides are courtesy of Peter
Shirley, Univ. of Utah.
g. babic Presentation A 25
Review: Moore’s Curve
g. babic Presentation A 26
Wait for Moore’s Law for
performance?
• Dec. 2002 Survey of IEEE fellows: how
much longer will Moore’s curve last?
– 31%: less than 5 years (4x improvement)
– 52%: 5-10 years (4x-10x improvement)
– 17%: more than 10 years
g. babic Presentation A 33
Huge Change
Multicore CPUs to desktop
• IBM 2001, 2004: 2 cores
• AMD 2005: 2 cores
• Sun 2004: 2 cores, 2006 8 cores
• Intel 2005: 2 cores
g. babic Presentation A 34
Next generation $5000 PC
• Machrone’s Law
– The computer you want will always cost $5000
• Many GB of RAM
• Programmable GPU
• Multicore 64 bit CPU
• High resolution screen (4x-8x 1984 screen)
– Apple 2560x1600, IBM big-bertha 3840x2400
• Not enough for our needs
g. babic Presentation A 35
Graphics Hardware Trends