Adventures on the Sea of Interconnection Networks

Download Report

Transcript Adventures on the Sea of Interconnection Networks

Part I
Background and Motivation
June 2005
Computer Architecture, Background and Motivation
Slide 1
I Background and Motivation
Provide motivation, paint the big picture, introduce tools:
• Review components used in building digital circuits
• Present an overview of computer technology
• Understand the meaning of computer performance
(or why a 2 GHz processor isn’t 2 as fast as a 1 GHz model)
Topics in This Part
Chapter 1 Combinational Digital Circuits
Chapter 2 Digital Circuits with Memory
Chapter 3 Computer System Technology
Chapter 4 Computer Performance
June 2005
Computer Architecture, Background and Motivation
Slide 2
3 Computer System Technology
Interplay between architecture, hardware, and software
• Architectural innovations influence technology
• Technological advances drive changes in architecture
Topics in This Chapter
3.1 From Components to Applications
3.2 Computer Systems and Their Parts
3.3 Generations of Progress
3.4 Processor and Memory Technologies
3.5 Peripherals, I/O, and Communications
3.6 Software Systems and Applications
June 2005
Computer Architecture, Background and Motivation
Slide 3
3.1 From Components to Applications
Highlevel
view
Figure 3.1
June 2005
Computer organization
Circuit designer
Logic designer
Computer archit ecture
Electronic components
Hardware
Computer designer
System designer
Application designer
Application domains
Software
Lowlevel
view
Subfields or views in computer system engineering.
Computer Architecture, Background and Motivation
Slide 4
What Is (Computer) Architecture?
Client’s requirements:
function, cost, . . .
Client’s taste:
mood, style, . . .
Goals
Interface
Architect
Means
Construction tec hnology:
material, codes, . . .
Engineering
Arts
The world of arts:
aesthetics, trends, . . .
Interface
Figure 3.2 Like a building architect, whose place at the
engineering/arts and goals/means interfaces is seen in this diagram, a
computer architect reconciles many conflicting or competing demands.
June 2005
Computer Architecture, Background and Motivation
Slide 5
3.2 Computer Systems and Their Parts
Computer
Analog
Digital
Fixed-function
Stored-program
Electronic
General-purpose
Number cruncher
Nonelectronic
Special-purpose
Data manipulator
Figure 3.3
The space of computer systems, with what we normally
mean by the word “computer” highlighted.
June 2005
Computer Architecture, Background and Motivation
Slide 6
Price/Performance Pyramid
Super
$Millions
Mainframe
$100s Ks
Server
Differences in scale,
not in substance
Workstation
$10s Ks
$1000s
Personal
Embedded
$100s
$10s
Figure 3.4 Classifying computers by computational
power and price range.
June 2005
Computer Architecture, Background and Motivation
Slide 7
Automotive Embedded Computers
Impact sensors
Brakes
Airbags
Engine
Cent ral
controller
Navigation &
entert ainment
Figure 3.5 Embedded computers are ubiquitous, yet invisible. They
are found in our automobiles, appliances, and many other places.
June 2005
Computer Architecture, Background and Motivation
Slide 8
Personal Computers and Workstations
Figure 3.6 Notebooks, a common class of portable computers,
are much smaller than desktops but offer substantially the same
capabilities. What are the main reasons for the size difference?
June 2005
Computer Architecture, Background and Motivation
Slide 9
Computer System Components
• Traditionally, we often group functional computer
components into five classic categories:
–
–
–
–
–
Input Systems (e.g. keyboard, mouse)
Output Systems (e.g. Monitor display, printer)
Memory (contains stored programs and memory)
Control (component that controls memory, I/O, datapath)
Datapath (component that performs arithmetic operations)
Controller
Input
Systems
Memory
Datapath
(regs., ALU)
Processor (CPU)
Output
Systems
I/O systems
Inside the CPU (a more detailed look)
• Block diagram of a simple, generic CPU:
Interrupt
signals
Instruction Decoder &
CPU Controller
Control
signals
CPU
Control
FSM
tristate
buf
ArithmeticLogic Unit
PC
A
mux
B
…
Bus to
memory
system &
I/O ports
mux
Write
ports
Registers
ALU
mux
Read
ports
mux
Data
path
3.3 Generations of Progress
Table 3.2 The 5 generations of digital computers, and their ancestors.
Generation
(begun)
Processor
Memory
I/O devices
technology innovations introduced
0 (1600s)
(Electro-)
mechanical
Wheel, card
Lever, dial,
punched card
Factory
equipment
1 (1950s)
Vacuum tube
Magnetic
drum
Paper tape,
magnetic tape
Hall-size
cabinet
2 (1960s)
Transistor
Magnetic
core
Drum, printer,
text terminal
Room-size
mainframe
3 (1970s)
SSI/MSI
RAM/ROM
chip
Disk, keyboard, Desk-size
video monitor mini
4 (1980s)
LSI/VLSI
SRAM/DRAM Network, CD,
mouse,sound
5 (1990s)
ULSI/GSI/
WSI, SOC
SDRAM,
flash
June 2005
Sensor/actuator,
point/click
Computer Architecture, Background and Motivation
Dominant
look & fell
Desktop/
laptop micro
Invisible,
embedded
Slide 12
ENIAC (1946)
•
•
•
•
Electronic Numerical Integrator And Computer
Eckert and Mauchly
University of Pennsylvania
Proposed to develop a computer for the
calculation of Trajectory tables for weapons
during WWII (Army Ballistics Research
Laboratory)
• Started 1943
• Finished 1946
—Too late for war effort
—Used to help determine
feasibility of H-bomb
• Used until 1955
ENIAC – some details
• Decimal (not binary!)
• Its memory contained 20 accumulators of 10
digits.
• 10 vacuum tubes represented each digit.
• Programmed manually by switches
• 18,000 vacuum tubes
• 30 tons
• 1500 square feet
• 140 kW power consumption
• 5,000 additions per second
Princeton IAS Computer (1952)
Smithsonian Image 95-06151
Commercial Computers
• 1947 – Eckert-Mauchly developed their own
Computer Corporation
• UNIVAC I (Universal Automatic Computer)
• Designed to perform mainly scientific
calculations (e.g. US Bureau of Census 1950
calculations)
• Became part of Sperry-Rand Corporation
• Late 1950s - UNIVAC II
—Faster
—More memory
Early IBM computers
• Punched-card processing equipment
• 1953 - the 701
—IBM’s first stored program
computer
—Scientific calculations
• 1955 - the 702
—Business applications
• Lead to 700/7000 series
Transistors
• The second generation of technology:
Transistors replaced vacuum tubes
• Smaller
• Cheaper
• Less heat dissipation
• Solid State device
• Made from Silicon (from sand)
• Invented 1947 at Bell Labs
• William Shockley et al.
• Discrete components
IBM 360 (1964)
IBM 360 series
• Introduced in 1964
• Replaced (& not compatible with) 7000 series
• First planned “family” of computers
—Similar or identical instruction sets
—Similar or identical O/S
—Increasing speed
—Increasing number of I/O ports (i.e. more terminals)
—Increased memory size
—Increased cost
• Multiplexed switch structure
DEC PDP-8 (1964)
•
•
•
•
•
Also introduced in 1964
First minicomputer
Did not need room w. A/C
Small, could sit on a lab bench
Relatively cheap: $16,000
—Compared to $100k+ for IBM 360
• Embedded applications & Original Equipment
Manufacturers (OEM) allowed users to buy PDP8 machines and integrate them into a total
system for resale.
IC Production and Yield
Blank wafer
with defects
30-60 cm
Silicon
crystal
ingot
Slicer
15-30
cm
x x
x x x
x
x
x x
x x
Patterned wafer
Processing:
20-30 steps
(100s of simple or scores
of complex processors)
0.2 cm
Dicer
Die
~1 cm
Figure 3.8
June 2005
Die
tester
Good
die
Microchip
or other part
Mounting
Part
tester
Usable
part
to ship
~1 cm
The manufacturing process for an IC part.
Computer Architecture, Background and Motivation
Slide 22
Effect of Die Size on Yield
120 dies, 109 good
26 dies, 15 good
Figure 3.9 Visualizing the dramatic decrease in yield
with larger dies.
Die yield =def (number of good dies) / (total number of dies)
Die yield = Wafer yield  [1 + (Defect density  Die area) / a]–a
Die cost = (cost of wafer) / (total number of dies  die yield)
= (cost of wafer)  (die area / wafer area) / (die yield)
June 2005
Computer Architecture, Background and Motivation
Slide 23
3.4 Processor and Memory Technologies
Backplane
Die
PC board
Interlayer connections
deposited on the
outside of the stack
Bus
CPU
Connector
Memory
(a) 2D or 2.5D packaging now common
Figure 3.11
June 2005
Stacked layers
glued together
(b) 3D packaging of the future
Packaging of processor, memory, and other components.
Computer Architecture, Background and Motivation
Slide 24
Tb
Processor
1.6 / yr
2 / 18 mos
10 / 5 yrs
Memory
GIPS
80486
R10000
Pentium II
Pentium
256Mb
68040
64Mb
Gb
1Gb
16Mb
80386
68000
MIPS
80286
4Mb
1Mb
256kb
Mb
4 / 3 yrs
64kb
kIPS
1980
1990
2000
kb
2010
Calendar year
Figure 3.10 Trends in processor performance and DRAM
memory chip capacity (Moore’s law).
June 2005
Computer Architecture, Background and Motivation
Slide 25
Memory chip capacity
Processor performance
Moore’s
Law
TIPS
ITRSSize
'03 Feature
Lengths
Device
Scaling
Trends
1000 (1 µm)
350
250
180
130
Feature length (nm)
DRAM hp
MPU M1 hp
poly hp
printed GL
physical GL
Node
EOT
Based on ITRS ’97-03 roadmaps
100 Virus
90
65
45
32
22
10 Protein molecule
1 DNA/CNT radius
Silicon atom
0.1 Hydrogen atom
1990
1995
2000
2005
2010
2015
2020
2025
2030
2035
2040
2045
Year of Production
26
Trend of Min. Transistor Switching Energy
ITRS '97-'03 Gate Energy Trends
Based on ITRS ’97-03 roadmaps
1.E-14
250
180
1.E-15
130
90
Node numbers
(nm DRAM hp)
65
1.E-16
CVV/2 energy, J
LP min gate energy, aJ
HP min gate energy, aJ
100 k(300 K)
ln(2) k(300 K)
1 eV
k(300 K)
45
32
1.E-17
22
Practical limit for CMOS?
1.E-18
fJ
aJ
Room-temperature 100 kT reliability limit
One electron volt
1.E-19
1.E-20
Room-temperature kT thermal energy
zJ
Room-temperature von Neumann - Landauer limit
1.E-21
1.E-22
1995
2000
2005
2010
2015
2020
Year
2025
2030
2035
2040
2045
27
Pitfalls of Computer Technology Forecasting
“DOS addresses only 1 MB of RAM because we cannot
imagine any applications needing more.” Microsoft, 1980
“640K ought to be enough for anybody.” Bill Gates, 1981
“Computers in the future may weigh no more than 1.5
tons.” Popular Mechanics
“I think there is a world market for maybe five
computers.” Thomas Watson, IBM Chairman, 1943
“There is no reason anyone would want a computer in
their home.” Ken Olsen, DEC founder, 1977
“The 32-bit machine would be an overkill for a personal
computer.” Sol Libes, ByteLines
June 2005
Computer Architecture, Background and Motivation
Slide 28
3.5 Input/Output and Communications
Typically
2-9 cm
Floppy
disk
.
.
..
(a) Cutaway view of a hard disk drive
Figure 3.12
June 2005
CD-ROM
.
..
.
Magnetic
tape
cartridge
(b) Some removable storage media
Magnetic and optical disk memory units.
Computer Architecture, Background and Motivation
Slide 29
10 12
Bandwidth (b/s)
Communication
Technologies
Processor
bus
Geographically distributed
I/O
network
System-area
network
(SAN)
Local-area
network
(LAN)
10 9
Metro-area
network
(MAN)
10 6
Same geographic location
10 3
10 9
(ns)
10 6
(s)
10 3
(ms)
1
Wide-area
network
(WAN)
(min)
10 3
Latency (s)
Figure 3.13 Latency and bandwidth characteristics of different
classes of communication links.
June 2005
Computer Architecture, Background and Motivation
Slide 30
(h)
3.6 Software Systems and Applications
Software
Application:
System
word processor,
spreadsheet,
circuit simulator,
.. .
Operating system
Translator:
Manager:
Enabler:
Coordinator:
MIPS assembler,
C compiler,
.. .
virtual memory,
security,
file system,
.. .
disk driver,
display driver,
printing,
.. .
scheduling,
load balancing,
diagnostics,
.. .
Figure 3.15
June 2005
Categorization of software, with examples in each class.
Computer Architecture, Background and Motivation
Slide 31
High- vs Low-Level Programming
temp=v[i]
v[i]=v[i+1]
v[i+1]=temp
One task =
many statements
Figure 3.14
June 2005
Assembly
language
instructions,
mnemonic
Compiler
Swap v[i]
and v[i+1]
High-level
language
statements
Interpreter
Very
high-level
language
objectives
or tasks
More conc rete, machine-specific, error-prone;
harder to write, read, debug, or maintain
add
add
add
lw
lw
sw
sw
jr
One statement =
several instructions
$2,$5,$5
$2,$2,$2
$2,$4,$2
$15,0($2)
$16,4($2)
$16,0($2)
$15,4($2)
$31
Assembler
More abstract, machine-independent;
easier to write, read, debug, or maintain
Machine
language
instructions,
binary (hex)
00a51020
00421020
00821020
8c620000
8cf20004
acf20000
ac620004
03e00008
Mostly one-to-one
Models and abstractions in programming.
Computer Architecture, Background and Motivation
Slide 32