Date post: | 18-Feb-2016 |
Category: |
Documents |
Upload: | tigabu-yaya |
View: | 228 times |
Download: | 3 times |
COMPUTER ARCHITECTURE
Introduction & Historical Generations
Computer architecture refers to those attributes of the system that
are visible to a programmer -- those attributes that have a direct
impact on the execution of a program
– Instruction sets
– Data representations
– Techniques for Addressing Memory
– I/O Mechanisms
Computer organization – refers to the operational units and their
interconnections that realize the architectural specifications/high
level aspects of a computer’s design
- Memory system
-Bus structure
-Internal CPU design
• Capabilities & performance characteristics of principal
functional units (e.g., Registers, ALU, Shifters, Logic Units, ...)
• Ways in which these components are interconnected
• Information flows between components
• Logic and means by which such information flow is controlled
0th Generation
1642-1945 Mechanical
1st Generation
1946-59 vacuum tubes, relays, mercury delay lines
2nd generation
1959-64 discrete transistors and magnetic cores
3rd generation
1964-75 small and medium scale integrated circuits
4th generation
1975- VLSI and Personal Computers
Integration scale: components per chipSmall: 10-100 Medium: 100-1,000
Large: 1000-10,000 Very large: greater than 10,000
Concept first proposed by Babbage in the 1800’s after
developing a mechanical “difference” engine for
computing functions. His so-called analytical machine was
also mechanical but had the main parts of a modern
computer; an arithmetic unit and controller (processor),
memory (punched cards) - never completed because of the
mechanical complexity (gears etc)
Charles Babbage - Analytical
Engine - Calculate general
formulas under the control of a
looping program stored on
punch cards (1834)
Charles Babbage - Difference
Engine - Evaluated
polynomials to print tables of
logarithms and other functions
through a Newton's method of
differences (1822)
COLOSSUS - Top-secret
vacuum tube computer
designed to break the
Lorenz SZ40 intercepted
cyphers. (1943)
Generation 1 (1945-1955) Vacuum Tube
ENIAC - Electronic Numerical Integrator and Calculator
J. Presper Eckert and John Mauchly
Moore School of the Unv. Of Pennsylvania
ENIAC (cond..)
U- Shaped computer – 80
feet long, 8.5 feet high.
Each of the 20 10-digit
decimal register was 2 feet
long. ENIAC used 18,000
vacuum tubes
Performing 1900
additions/sec
Programmed via switches
and jumper cables (1946)
General purpose machine – small storage, tedious programming
Designed by John von
Neumann. It had a storage of
1000 40-bit words that held
data or instructions. From
the programmer's viewpoint,
there was the store (memory),
an accumulator (register), a
program counter, input
device and output device(1952)
IAS Princeton Institute for
Advanced Studies
Stored Program Computer
A sequence of selected
instructions created to
do a calculation is
stored in the memory of
the computer and
becomes the stored
program.
Processor - fetches
instructions from
memory in sequence
and performs actions
defined.
UNIVAC I (UNIVersal Automatic
Computer I)
First commercial computer
designed by J. Eckert Presper
and John Mauchley. Cost = $1
million (1951)
IBM 701 - IBM's first scientific computer (1953)
Generation 2 (1955-1965) Transistor
First minicomputer. 4K 18-bit
words and ran at 0.2 MIPS. Ran
the first video game, spacewar. The
first word processing program was
developed. Cost : $20,000 (1960)
DEC PDP-1 - Programmed Data
Processor-1
The first major change in the electronic computer came with the
replacement of the vacuum tube by the transistor. It is smaller,
cheaper and dissipates less heat than a vacuum tube
Transistorized version
Scientific computer having 32K of
36-bit words of magnetic core
storage. This computer was 2
times faster than the PDP-1, but
cost 20 times as much. (1959)
IBM 7090
Generation 3 (1965-1989) Integrated Circuits
IBM System/360 - 16 32-bit registers using 2's complement
integers, IBM specific floating point hardware, and the EBCDIC
character set. The memory space was limited to 16 MB (24-bit
addresses) (1965)
DEC PDP-11 - Extremely popular computer due to low cost and
good performance. Its 16-bit address space caused it to decline
in popularity as large memories became cheaply available with
the introduction of VSLI technology. (1970)
Early second generation computers – 10000 transistors and more
III Generation - era of microelectronics : the invention of the
integrated circuit
Generation 4 (1980-) VLSI and Personal Computers
IBM PC - Based on the Intel 8088
processor (1981)
Apple - The first commercially available
personal computer. Based on 6502
processor and had 4K of memory. (1976)
Early-mid 1970’s
Eight-bit microprocessors, that is, processors that can operate upon
and perform arithmetic on 8-bit numbers directly, typified by the
Intel 8080, Motorola MC6800 and Zilog Z-80.
Late 1970’s - Sixteen-bit microprocessors towards end of 1970s,
e.g., Intel 8086 and Motorola MC68000, both introduced in 1978.
Early 1980’s - Thirty-two bit processors appeared in 1980s (e.g.,
Intel 386, Motorola MC68020, and MC68030). Intel 486 and
Motorola MC68040 continued trend of adding facilities within chip
Microprocessor Development – Density of elements on processor
chips has continued to rise
A complete processor fabricated with integrated circuit technology
1970’s - First microprocessors appeared using MOS integrated
circuit technology (4004). Intel family starts.
4004 8086 Pentium
Pro
Pentium
II
Pentium
III
Pentium
IV
Year 1971 1978 1995 1997 1999 2000
Clock Speed
108 KHz 5, 8, 10 MHz
150MHz-200 MHz
200MHz-300 MHz
450MHz-660 MHz
1.3-1.8 GHz
Bus Width 4 bits 16 bits 64 bits 64 bits 64 bits 64 bits
No of Transistors
2300 29000 5.5 million 5.5 million 5.5 million 5.5 million
Addressable Memory
640 bytes
1 MB 64 GB 64 GB 64 GB 64 GB
Virtual Memory
- - 64 terabytes
64 terabytes
64 terabytes
64 terabytes
Queue-prefetch
Process Video, audio..
FP Inst-3D
Graphics
FP Inst -Multimedi
a
1980’s - Dominated by increasing integrated circuit performance
Moore's "Law" - In 1965, Gordon Moore, co-founder of Intel, noted
that the number of transistors that can be placed in one square inch of
integrated circuitry had doubled every year.
Summary of Generations
Key Points
The evolution of computer has been characterized by • Increasing Processor Speed
• Decreasing Computer Size
• Increasing Memory Size
• Increasing I/O capacity and speed
Processor Speed• Due to the shrinking size of microprocessor components
• True gain: Increasing parallelism and pipelining
Pipelined design - a basic technique present in earlier large
computers as a way of processing instructions in a series..
With increased numbers of transistors on chip, can:
Superscalar processors - more than one instruction can be
executed in each cycle. Superscalar designs present in earlier large
computers, as a way of increasing computational speed/power.
Superscalar Introduced with Intel Pentium and Pentium Pro (early
1990’s). Complicated design as needs to handle complex
dependencies between instructions.
New approach to increase the performance
Multi-core processors - fabricating multiple processors on one
chip, example Intel Core-2 Duo dual-core processors
Design Approaches : Parallel execution within the processor
Key Points
Critical Issues
• Balancing the performance of the various elements is essential
• Ex : Processor Speed has increased very rapidly than memory access time
• Available Techniques for mismatch – Reduce the no of memory
accesses through caches (on and off-chip caches), wider data paths,
optimized schedule of instructions, branch prediction etc
Measuring Performance
Representative descriptive tools are available for each design level
– We still have the problem of assessing one or more differing
architectures in a dynamic sense
-- how well (fast) will the machine work?
– Are there any common ways of gauging a system's value in terms of
its cost and its performance
– Observation: An increase in a machine's performance is viewed in
one of two ways:
» Reduced response time to an individual job
» Increase in overall throughput
Which of the following increases throughput, reduces response time,
or both?
» Faster clock cycle time
» Multiple processors for separate tasks
» Parallel processing of scientific problems
Task of a Computer Designer
Determine what attributes are important for a new machine, then
design a machine to maximize performance while staying within cost
constraints?
The task has many aspects :
• Instruction set design
• Functional organization
• Logic design
• IC design
• Packing, power and cooling
• Optimization requires – from Compilers to OS to logic design and
packing
Defining Performance
Airplane Capacity Range Speed Passenger Throughput
A 375 4500 600 228,750
B 400 4200 600 286,700
C 120 4000 1000 178,200
D 150 8000 500 79.424
Which of the planes has the best performance?
What do we mean? Need to define performance
By considering different measures of performance
Highest Speed – “C”
Longest range – “D”
Largest Capacity – “”B”
The Role of Performance
Hardware performance is a key to the effectiveness of the entire system
Performance has to be measured and compared to evaluate various design and technological approaches
To optimize the performance, major affecting factors have to
be known
For different types of applications, different performance metrics may be appropriate and different aspects of a computer system may be most significant
Instructions use and implementation, memory hierarchy and I/O handling are among the factors that affect the performance