lec1-6
DESCRIPTION
organization lectures computerTRANSCRIPT
-
ece4680 Lect1 Intro.1 February 6, 2002
ECE 4680 Computer Architecture and Organization
Lecture 1: A Short Journey to the World of Computer Architecture
Basic Ideas and Definition
Major Components of Software/Hardware
Computer Revolution
ece4680 Lect1 Intro.2 February 6, 2002
What is "Computer Architecture"
Co-ordination of levels of abstraction
I/O systemInstr. Set Proc.
CompilerOperating
System
Application
Digital DesignCircuit Design
Merits of Abstraction/Layers/Hierarchy
Instruction SetArchitecture
Under a set of rapidly changing Forces : technology, applications, Programming Languages, operating systems, history
ece4680 Lect1 Intro.3 February 6, 2002
Technology Trend: Clock rate
30% per year ---> todays PC is yesterdays Supercomputer
0.1
1
10
100
1,000
19701975
19801985
19901995
20002005
Clo
ck ra
te (M
Hz)
i4004i8008
i8080
i8086 i80286i80386
Pentium100
R10000
ece4680 Lect1 Intro.4 February 6, 2002
Technology Trends: Transistor Count Growth
- 40% per year, order of magnitude more contribution in 2 decades- More and more functions can be performed by a CPU- Similar story for storage:
capacity increased by 1000x over ten years, speed only 2x
Tran
sist
ors
1,000
10,000
100,000
1,000,000
10,000,000
100,000,000
19701975
19801985
19901995
20002005
i4004i8008
i8080
i8086
i80286i80386
R2000
Pentium R10000
R3000
ece4680 Lect1 Intro.5 February 6, 2002
Technology => 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
ece4680 Lect1 Intro.6 February 6, 2002
Performance Trends
Year
Perf
orm
ance
0.1
1
10
100
1000
1965 1970 1975 1980 1985 1990 1995 2000
Microprocessors
Minicomputers
Mainframes
Supercomputers
-
ece4680 Lect1 Intro.7 February 6, 2002
Processor Performance (SPEC)
0
50
100
150
200
250
300
350
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
Ye ar
Per
form
ance
RISC
Inte l x86
35%/yr
RISCintroduction
Did RISC win the technology battle and lose the market war?
performance now improves ~ 50% per year (2x every 1.5 years)
ece4680 Lect1 Intro.8 February 6, 2002
CPU and LAN Performance
Year
RelativePerformance
1000
100
10
11980 1985 1990 1995 2000
100 Mb FDDI10 Mb
1 Gb ATM
MIPSM/120
DECAlpha
CPU(spec)
LAN
ece4680 Lect1 Intro.9 February 6, 2002
Moores Law
6
Moores Law (1965)
The number of transistors on a microchip doubles about every 18-24 months,
The speed of a microprocessor doubles about every 18-24 months,
The price of a microchip drops about 48% every 18-24 months, assuming the performance metric (processor speed or memory
capacity) of the chip stays the same. Official Definition of Moores Law:
http://www.intel.com/intel/museum/25anniv/hof/moore.htm
ece4680 Lect1 Intro.10 February 6, 2002
61
HPCA
2001
Appendix1: Notations and Conventions for Numbers
QuintillionEexaQuadrillionPpetaTrillionTteraBillionGgigaMillionMmegaThousandK (or k)kiloOne quintillionthaattaOne quadrillionthffemtoOne trillionthppicoOne billionthnnanoOne millionthmicroOne thousandthmmill
Numeric ValueMeaningAbbreviationPrefixNotations and Conventions for Numbers
310610
1810
91012101510
206 210 or
103 210 or
309 210 or4012 210 or5015 210 or6018 210 or
Even the measure unit is changing !!!
ece4680 Lect1 Intro.11 February 6, 2002
How they predict the futurePopular Science , 1949 "Computers in the future may
weight no more than 1.5 tons"
Thomas Watson, Chairman of IBM , 1943 "I think there is a world market for maybe five computers"
Ken Olsen, founder and president of Digital Equipment Corp, 1957 "There is no reason anyone would want a computer in their home"
Charles H. Duell, Commissioner, U.S. Office of patents "Everything that can be invented has been invented"
Bill Gates, 1981 "640K ought to be enough for anybody"
ece4680 Lect1 Intro.12 February 6, 2002
Computer Arch. = Instruction Set Arch. + Organization
Computer Design
Instruction Set Design Machine Language Compiler View "Computer Architecture" "Instruction Set Processor"
"Building Architect"
Computer Hardware Design
Machine Implementation
Logic Designer's View
"Processor Architecture"
"Computer Organization"
"Construction Engineer"
-
ece4680 Lect1 Intro.13 February 6, 2002
Instruction Set Architecture
. . . the attributes of a [computing] system as seen by the programmer, i.e. the conceptual structure and functional behavior, as distinct from the organization of the data flows and controls the logic design, and the physical implementation.
Amdahl, Blaw, and Brooks, 1964
SOFTWARESOFTWARE-- Organization of Programmable
Storage
-- Data Types & Data Structures:Encodings & Representations
-- Instruction Formats
-- Instruction (or Operation Code) Set
-- Modes of Addressing and Accessing Data Items and Instructions
-- Exceptional Conditions
ece4680 Lect1 Intro.14 February 6, 2002
MIPS R3000 Instruction Set Architecture
Instruction Categories Load/Store Computational Jump and Branch Floating Point
- coprocessor Memory Management Special
R0 - R31
PCHILO
OP
OP
OP
rs rt rd sa funct
rs rt immediate
target
Instruction Format
ece4680 Lect1 Intro.15 February 6, 2002
Organization
Logic Designer's View
ISA Level
FUs & Interconnect
-- Capabilities & Performance Characteristics of Principal Functional Units(e.g., Registers, ALU, Shifters, Logic Units, etc.
-- Ways in which these components are interconnected-- nature of information flows between components-- logic and means by which
such information flow is controlled.
Choreography of FUs to realize the ISA
Register Transfer Level Description
ece4680 Lect1 Intro.16 February 6, 2002
Example Organization
TI SuperSPARCtm TMS390Z50 in Sun SPARCstation20
Floating-point Unit
Integer Unit
InstCache
RefMMU
DataCache
StoreBuffer
Bus Interface
SuperSPARC
L2$
CC
MBus Module
MBus
L64852 MBus controlM-S Adapter
SBus
DRAM Controller
SBusDMA
SCSIEthernet
STDIOserialkbdmouseaudioRTCBoot PROMFloppy
SBusCards
ece4680 Lect1 Intro.17 February 6, 2002
Measurement and Evaluation
Design
Analysis
Architecture is an iterative process-- searching the space of possible designs-- at all levels of computer systems
Creativity
Good IdeasGood IdeasMediocre Ideas
Bad Ideas
Cost /PerformanceAnalysis
ece4680 Lect1 Intro.18 February 6, 2002
Levels of Representation
High Level Language Program
Assembly Language Program
Machine Language Program
Control Signal Spec
Compiler
Assembler
Machine Interpretation
temp = v[k];v[k] = v[k+1];v[k+1] = temp;
lw $15, 0($2)
lw $16, 4($2)
sw $16, 0($2)
sw $15, 4($2)
-
ece4680 Lect1 Intro.19 February 6, 2002
ECE468: Course Overview
Computer Design
Instruction Set Deign Machine Language Compiler View "Computer Architecture" "Instruction Set Processor"
"Building Architect"
Computer Hardware Design Machine Implementation\ Logic Designer's View "Processor Architecture" "Computer Organization"
Construction Engineer
Few people design computers! Very few design instruction sets!Many people design computer components.Very many people are concerned with computer function, in detail.
ece4680 Lect1 Intro.20 February 6, 2002
ECE468:So what's in it for me?
In-depth understanding of the inner-workings of modern computers, their evolution, and trade-offs present at the hardware/software boundary.
Insight into fast/slow operations that are easy/hard to implementation hardware
Experience with the design process in the context of a large complex (hardware) design.
Functional Spec --> Control & Datapath
Learn how to completely design a correct single processor computer. No magic required to design a computer
Foundation for students aspiring to work in computer architecture.
Others: solidifies an intuition about why hardware is as it is.
ece4680 Lect1 Intro.21 February 6, 2002
The SPARCstation 20
SPARCstation 20
MemoryController Memory Bus
Memory SIMMs
Slot 1MBus
Slot 0MBus
MSBI
Slot 1SBus
Slot 0SBus
Slot 3SBus
Slot 2SBus
MBus
SEC MACIO
Disk
Tape
SCSIBus
SBus
Keyboard
& Mouse
Floppy
Disk
External Bus
ece4680 Lect1 Intro.22 February 6, 2002
Levels of Organization
SPARCstation 20
SPARCProcessor
Computer
Control
Datapath
Memory Devices
Input
Output
ece4680 Lect1 Intro.23 February 6, 2002
The Underlying Network
SPARCstation 20
MemoryController
Memory Bus
MSBI
Processor Bus:MBus
SEC MACIO
Standard I/O Bus:
Suns High Speed I/O Bus:SBus
Low Speed I/O Bus:External Bus
SCSI Bus
ece4680 Lect1 Intro.24 February 6, 2002
Processor and Caches
SPARCstation 20
Slot 1MBus
Slot 0MBus
MBus
MBus Module
External Cache
DatapathRegisters
InternalCache Control
SuperSPARC Processor
-
ece4680 Lect1 Intro.25 February 6, 2002
Memory
SPARCstation 20
MemoryController
Memory Bus
SIM
M S
lot 0
SIM
M S
lot 1
SIM
M S
lot 2
SIM
M S
lot 3
SIM
M S
lot 4
SIM
M S
lot 5
SIM
M S
lot 6
SIM
M S
lot 7
DRAM SIMM
DRAM
DRAM
DRAM
DRAMDRAMDRAMDRAM
DRAMDRAMDRAM
ece4680 Lect1 Intro.26 February 6, 2002
Input and Output (I/O) Devices
SPARCstation 20
Slot 1SBus
Slot 0SBus
Slot 3SBus
Slot 2SBus
SEC MACIO
Disk
Tape
SCSIBus
SBus
Keyboard
& Mouse
Floppy
Disk
External Bus
SCSI Bus: Standard I/O Devices
SBus: High Speed I/O Devices
External Bus: Low Speed I/O Device
ece4680 Lect1 Intro.27 February 6, 2002
Standard I/O Devices
SPARCstation 20
Disk
Tape
SCSIBus
SCSI = Small Computer Systems Interface
A standard interface (IBM, Apple, HP, Sun ... etc.)
Computers and I/O devices communicate with each other
The hard disk is one I/O device resides on the SCSI Bus
ece4680 Lect1 Intro.28 February 6, 2002
High Speed I/O Devices
SPARCstation 20
Slot 1SBus
Slot 0SBus
Slot 3SBus
Slot 2SBus
SBus
SBus is SUNs own high speed I/O bus
SS20 has four SBus slots where we can plug in I/O devices
Example: graphics accelerator, video adaptor, ... etc.
High speed and low speed are relative terms
ece4680 Lect1 Intro.29 February 6, 2002
Slow Speed I/O Devices
SPARCstation 20
Keyboard
& Mouse
Floppy
Disk
External Bus
The are only four SBus slots in SS20--seats are expensive
The speed of some I/O devices is limited by human reaction time--very very slow by computer standard
Examples: Keyboard and mouse
No reason to use up one of the expensive SBus slot
ece4680 Lect1 Intro.30 February 6, 2002
Summary
ISA--Principle of abstraction Hiding details from the level above Both software designers and hardware designers comply with
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
Input and output (I/O) devices has the messiest organization Wide range of speed: graphics vs. keyboard Wide range of requirements: speed, standard, cost ... etc. Least amount of research (so far)