CS35101 L01 Introduction Steinfadt, KSU, SP081
CS 35101 Computer Architecture
Spring 2008
Lecture 01: Introduction
Created by Shannon SteinfadtIndicates slide was adapted from :Kevin Schaffer*, Mary Jane Irwinº, and
from Computer Organization and Design (3rd Ed.),Patterson & Hennessy, © 2005, UCB
CS35101 L01 Introduction Steinfadt, KSU, SP082
Syllabus and Web Page Home page for the course:
http://www.cs.kent.edu/~ssteinfa/classes/arch.sp08/index.html
The Syllabus is located there athttp://www.cs.kent.edu/~ssteinfa/classes/arch.sp08/syllabus.html
CS35101 L01 Introduction Steinfadt, KSU, SP083
What You Should Know Create, compile, and run C (C++, Java) programs
Create, organize, and edit files and run programs onUnix/Linux
CS35101 L01 Introduction Steinfadt, KSU, SP084
Classes of Computing Applications Different applications - different requirements
Combine performance with stringent limitations on cost orpower
Desktop Computers Emphasize good performance for a single user
Servers Modern form of mainframes, minicomputers and
supercomputers Large workloads Greater emphasis on reliability Widest range in cost and performance http://top500.org/
CS35101 L01 Introduction Steinfadt, KSU, SP085
Classes of Computing Applications (con’t) Embedded Computers
Largest class of computers Widest range of applications and performance Usually have unique application requirements
- Combine a minimum performance with stringent limitations oncost or power
Despite low cost, least tolerance for failure In consumer-oriented applications
- Do 1 function as perfectly as possible
Which class (among 16- and 32-bit processors) is thefastest growing?
CS35101 L01 Introduction Steinfadt, KSU, SP086
Where is the Market?°
290
93
3
488
114
3
892
135
4
862
129
4
1122
131
50
200
400
600
800
1000
1200
1998 1999 2000 2001 2002
Embedded
Desktop
Servers
Mill
ions
of C
ompu
ters
CS35101 L01 Introduction Steinfadt, KSU, SP087
System Software*
Computers can only perform simple tasks on theirown; in order to accomplish any real work severallayers are software are required
Application software is the highest layer, this is thesoftware that the user interacts with
System software sits between application software andthe hardware and provides support to the applicationsoftware
Fig. 1.3: simplifiedhierarchicalabstraction
CS35101 L01 Introduction Steinfadt, KSU, SP088
Below Your Program*
An operating system is the interface tohardware resource and provides a number ofservices Input and output Memory management, file system Support for multiple programs running at once
A compiler translates high-level language codeinto machine instructions
CS35101 L01 Introduction Steinfadt, KSU, SP089
Bits and Bytes *
Computer hardware operates using just twosignals: on and off (or true and false)
We represent these signals using binarynumbers
A single binary digit, or bit, can only be either a 0or a 1, so multiple bits are needed to encodemore complex information
A sequence of 8 bits is called a byte (or octet)
32 bits are typically referred to as a word
CS35101 L01 Introduction Steinfadt, KSU, SP0810
Instructions *
Binary numbers are also used to encode theinstructions which the computer understands
1000110010100000 is an instruction that tellsone computer to add two numbers
The instructions of a computer, encoded inbinary, make up the machine language of thatcomputer
The earliest programmers had no choice but towrite software directly in machine language
CS35101 L01 Introduction Steinfadt, KSU, SP0811
Assembly Language *
It didn't take long for those early programmers tofind a way to avoid writing programs in machinelanguage
Assembly language replaces the binarynumbers of machine language with symbols thatare easier to understand Example: add A, B
The computer only understands machinelanguage; a program called an assembler isneeded to translate assembly code to machinelanguage
CS35101 L01 Introduction Steinfadt, KSU, SP0812
High-Level Languages *
Assembly language statements still map directlyto machine instructions
High-level programming languages let you writecode in a more natural way using algebraicnotation, structured programming, etc.
This means that a statement in a high-levellanguage may map to several machineinstructions
A compiler translates the code into machineinstructions
CS35101 L01 Introduction Steinfadt, KSU, SP0813
High-Level Languages *
Advantages Easier to understand Fewer statements to accomplish a task Machine independence
Disadvantage Some machine features can only be
accessed through assembly/machinelanguage
CS35101 L01 Introduction Steinfadt, KSU, SP0814
C Program Translation
Figure 1.4: C programcompiled into assemblylanguage and thenassembled into binarymachine language
CS35101 L01 Introduction Steinfadt, KSU, SP0815
Computer Organization *
ProcessorControl unitDatapath
Memory systemMain memoryCache
Input/output (I/O) devices
CS35101 L01 Introduction Steinfadt, KSU, SP0817
I/O Devices *
Keyboards
Mice
Video displays
Sound cards
Network interface cards
Modems
CS35101 L01 Introduction Steinfadt, KSU, SP0818
Processor *
The processor is where most of the work insidea computer is done
Also known as a central processor unit (CPU)
It is an integrated circuit (IC) or chip attached tothe computer's motherboard
Inside the processor, the control coordinates theprocessor's activities while the datapath followsthe commands of the control unit
CS35101 L01 Introduction Steinfadt, KSU, SP0819
Memory *
A computer's main memory is made up ofdynamic random access memory (DRAM)
DRAM chips are grouped together intomodules called DIMMs (dual inlinememory modules)
DIMMs attach to the motherboard
CS35101 L01 Introduction Steinfadt, KSU, SP0820
Cache *
Cache is a special type of fast memorythat is used to hold data that the processoris currently using
Cache is made from static random accessmemory (SRAM)
Cache is typically connected directly to themotherboard or integrated into theprocessor
CS35101 L01 Introduction Steinfadt, KSU, SP0822
Instruction Set Architecture (ISA) ISA: An abstract interface between the hardware and
the lowest level software of a machine Encompasses all the information necessary to write a machine
language program that will run correctly, including instructions,registers, memory access, I/O, and so on.
Enables implementations of varying cost and performance to runidentical software
- Implementation: hardware that “obeys” the architecture abstraction
ABI (application binary interface): The basic instructionset and the operating system interface combined Provided for application programmers Defines a standard for binary portability across computers.
CS35101 L01 Introduction Steinfadt, KSU, SP0823
By the architecture of a system, I mean the complete anddetailed specification of the user interface. … AsBlaauw has said, “Where architecture tells whathappens, implementation tells how it is made tohappen.”
The Mythical Man-Month, Brooks, pg 45
°
CS35101 L01 Introduction Steinfadt, KSU, SP0824
ISA Type Sales
0
200
400
600
800
1000
1200
1400
1998 1999 2000 2001 2002
Other
SPARC
Hitachi SH
PowerPC
Motorola 68K
MIPS
IA-32
ARM
PowerPoint “comic” bar chart with approximate values (seeFigure 1.2 in text for correct values)
Mill
ions
of P
roce
ssor
CS35101 L01 Introduction Steinfadt, KSU, SP0825
Storage
Volatile storage like DRAM and SRAM onlyretain data while receiving power
Nonvolatile storage like magnetic disks maintaindata even without power (Figure 1.11) Optical disks (CDs, DVDs) are a form of removable,
nonvolatile storage FLASH-based (USB/Jump drives) are another form of
removable, nonvolatile storage
Typically a computer has primary (or main)memory which is volatile and secondary memorywhich is nonvolatile
CS35101 L01 Introduction Steinfadt, KSU, SP0826
Communicating with Other Computers:Computer Networks Major advantages to being networked:
Communication at high speeds Resource sharing (such as I/O devices) Nonlocal access allows remote use of machine
CS35101 L01 Introduction Steinfadt, KSU, SP0827
Integrated Circuits*
ICs are built from electrically controlled switches calledtransistors Transistors are an on/off switch controlled by electricity
The feature size of an IC tells us how small thetransistors are and so a smaller feature size means moretransistors in the same area
Improvement in processor performance is due in largepart to shrinking transistor sizes
VLSI, very large scale integrated circuits - millions oftransistors or better
CS35101 L01 Introduction Steinfadt, KSU, SP0828
Moore’s Law°
In 1965, Gordon Moore predicted that the number oftransistors that can be integrated on a die would doubleevery 18 to 24 months (i.e., grow exponentially withtime).
Amazingly visionary – million transistor/chip barrier wascrossed in the 1980’s. 2300 transistors, 1 MHz clock (Intel 4004) - 1971 16 Million transistors (Ultra Sparc III) 42 Million transistors, 2 GHz clock (Intel Xeon) – 2001 55 Million transistors, 3 GHz, 130nm technology, 250mm2 die
(Intel Pentium 4) - 2004 140 Million transistor (HP PA-8500) 1.72 billion transistors, 1.6GHz, 90nm tech. 596 mm² die
(Dual-Core Intel Itanium 2)§
§http://en.wikipedia.org/wiki/Montecito_%28processor%29
CS35101 L01 Introduction Steinfadt, KSU, SP0829
Processor Performance Increase°
1
10
100
1000
10000
1987 1989 1991 1993 1995 1997 1999 2001 2003
Year
Perf
orm
an
ce (
SP
EC
In
t)
SUN-4/260 MIPS M/120MIPS M2000
IBM RS6000
HP 9000/750
DEC AXP/500 IBM POWER 100
DEC Alpha 4/266DEC Alpha 5/500
DEC Alpha 21264/600
DEC Alpha 5/300
DEC Alpha 21264A/667Intel Xeon/2000
Intel Pentium 4/3000
CS35101 L01 Introduction Steinfadt, KSU, SP0830
DRAM Capacity Growth°
10
100
1000
10000
100000
1000000
1976 1978 1980 1982 1984 1986 1988 1990 1992 1994 1996 1998 2000 2002
Year of introduction
Kb
it c
ap
acit
y
16K
64K256K
1M
4M
16M64M
128M256M
512M
CS35101 L01 Introduction Steinfadt, KSU, SP0831
Chip Fabrication *
An silicon ingot is sliced into wafers
Patterns are etched onto the wafers by repeatedlytreating them with chemicals and exposing them toultraviolet light
Wafers are cut into dies
Dies are bonded to packages
CS35101 L01 Introduction Steinfadt, KSU, SP0832
Chip Fabrication
Figure 1.14: The chip manufacturing process
CS35101 L01 Introduction Steinfadt, KSU, SP0833
Chip Fabrication
http://www.intel.com/pressroom/archive/releases/20060125comp.htm
Intel®300 mm waferwith 45 nm shuttletest chips
Die photo ofan Intel® 45nm shuttletest chipincluding153 MbitSRAM andlogic testcircuits
CS35101 L01 Introduction Steinfadt, KSU, SP0834
Power *
Power consumption is becoming an increasinglyimportant issue in chip design
Embedded devices typically run on batteries and sopower must be conserved
Even in desktop computers, power is a concern since themore power a chip uses the more heat it generates
CS35101 L01 Introduction Steinfadt, KSU, SP0835
Impacts of Advancing Technology °
Processor logic capacity: increases about 30% per year performance: 2x every 1.5 years
Memory DRAM capacity: 4x every 3 years, now 2x every 2 years memory speed: 1.5x every 10 years cost per bit: decreases about 25% per year
Disk capacity: increases about 60% per year
ClockCycle = 1/ClockRate
500 MHz ClockRate = 2 nsec ClockCycle1 GHz ClockRate = 1 nsec ClockCycle4 GHz ClockRate = 250 psec ClockCycle
CS35101 L01 Introduction Steinfadt, KSU, SP0836
Example Machine Organization °
Workstation design target 25% of cost on processor 25% of cost on memory (minimum memory size) Rest on I/O devices, power supplies, box
CPU
Computer
Control
Datapath
Memory Devices
Input
Output
CS35101 L01 Introduction Steinfadt, KSU, SP0837
Inside the Pentium 4 Processor Chip °