You are on page 1of 43

CS 333

Computer Architecture

Chapter 2 (Part 1) : Computer


Evolution

Dr. Olfa Mosbahi

Computer Architecture
Architecture and Organization

❖ Distinction between architecture and


organization:
❖ Computer architecture:
Attributes visible to the programmer
Instruction set, number of bits used for data representation,
I/O mechanisms, memory addressing techniques
❖ Computer organization:
How features are implemented
Realize the architectural specifications
Hardware details transparent to programmer
Control signals, interfaces between computer and
peripherals, memory technology

Computer Architecture 2
Architecture and Organization

❖ Computer manufacturers offer a family of


models:
Same architecture
Different organizations
❖ Examples:
All Intel x86 family share the same basic architecture
The IBM System/370 family share the same basic
architecture
❖ What are the benefits?
Code compatibility (at least backwards)
Customization (different constraints on performance
and price)

Computer Architecture 3
Architecture and Organization

❖ Example: 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
May prevent new innovations
❖ Modern instruction set architectures:
IA-32, IA-64, PowerPC, MIPS, SPARC…

Computer Architecture 4
Structure and Function

❖ Describe computers: hierarchical


approach
❖ At each level:
Set of components and their relationships
Behavior is based on abstract description of lower
level
Designer only concerned with:
❧ Structure
❧ Function
at that level

Computer Architecture 5
Structure and Function

❖ Structure
the way in which components relate to each other
❖ Function
the operation of individual components as part of the
structure
❖ Will examine computer systems in a top
down approach

Computer Architecture 6
Function

❖ Computer functions:
Data processing
❧ Only a few fundamental types of processing
Data storage
❧ Short term
❧ Long term
Data movement
❧ Between itself and outside world
❧ I/O to peripherals
❧ Data communication
Control
❧ Manages the functions above

Computer Architecture 7
Functional View

Computer Architecture 8
Operations

(a) Data movement

Computer Architecture 9
Operations

(b) Storage

Computer Architecture 10
Operations

(c) Processing from/to storage

Computer Architecture 11
Operations

(d) Processing from storage to I/O

Computer Architecture 12
Structure – Top Level

Peripherals Computer

Central Main
Processing Memory
Unit

Computer
Systems
Interconnection

Input
Output
Communication
lines

Computer Architecture 13
Structure – The CPU

CPU

Computer Arithmetic
Registers and
I/O Logic Unit
System CPU
Bus
Internal CPU
Memory Interconnection

Control
Unit

Computer Architecture 14
Structure – The Control Unit

(microprogrammed implementation)
Control Unit

CPU
Sequencing
ALU Logic
Control
Internal
Unit
Bus
Control Unit
Registers Registers and
Decoders

Control
Memory

Computer Architecture 15
History of Computers

❖ Mechanical Era (1600s-1940s)

Wilhelm Schickhard (1623)


❧ Astronomer and mathematician
❧ Automatically add, subtract, multiply, and divide

Blaise Pascal (1642)


❧ Mathematician
❧ Mass produced first working machine (50 copies)
❧ Could only add and subtract
❧ Maintenance and labor problems

Gottfried Liebniz (1673)


❧ Mathematician and inventor
❧ Improved on Pascal’s machine
❧ Add, subtract, multiply, and divide

Computer Architecture 16
History of Computers

Charles Babbage (1822)


❧ Mathematician
❧ “Father of modern computer”
❧ Wanted more accuracy in calculations
❧ Difference engine
– Government / science agreement
– Automatic computation of math tables
❧ Analytic engine
– Perform any math operation
– Punch cards
– Modern structure: I/O, storage, ALU
– Add in 1 second, multiply in 1 minute
– Both engines plagued by mechanical problems

Computer Architecture 17
History of Computers

George Boole (1847)


❧ Mathematical analysis of logic
❧ Investigation of laws of thought
Herman Hollerith (1889)
❧ Modern day punched card machine
❧ Formed Tabulating Machine Company (became IBM)
❧ 1880 census took 5 years to tabulate
❧ Tabulation estimates
– 1890: 7.5 years
– 1900: 10+ years
❧ Hollerith’s tabulating machine reduced the 7.5 year estimate to
2 months

Computer Architecture 18
History of Computers

Konrad Zuse (1938)


❧ Built first working mechanical computer (running programs):
Z1
❧ Binary machine
❧ German government decided not to pursue development –
W.W.II already started

Howard Aiken (1943)


❧ Designed the Harvard Mark I
❧ Implementation of Babbage’s machine
❧ Built by IBM

Computer Architecture 19
History of Computers

❖ Mechanical era summary


Mechanical computers were designed to reduce the
time required for calculations and increase accuracy
of the results
Two drawbacks
❧ Speed of operation limited by the inertia of moving parts
(gears and pulleys)
❧ Cumbersome, unreliable, and expensive

Computer Architecture 20
History of Computers

❖ The Electronic Era


❖ Generation 1 (1945 - 1958) : vacuum tubes
ENIAC
❧ Electronic Numerical Integrator And Computer
❧ Developed for calculating artillery firing tables
❧ Designed by Mauchly and Echert of the University of Pennsylvania
❧ Generally regarded as the first electronic computer
❧ Handles signed 10-digit numbers
❧ Decimal number system used
❧ Programmed by manually setting switches
❧ Punched cards are used for I/O

Computer Architecture 21
History of Computers

ENIAC – cont.
❧ Really big!
– 18,000 vacuum tubes
– 70,000 resistors
– 10,000 capacitors
– 6,000 switches
– 30 tons
– 15,000 square feet
– 140 kW power consumption
– 5,000 additions per second

Computer Architecture 22
History of Computers

IAS (Institute for Advanced Studies)


❧ von Neumann and Goldstine
❧ Took idea of ENIAC and developed the concept of storing a
program in the memory
❧ This architecture came to be known as the “von Neumann
architecture” and has been the basis for virtually every
machine designed since then
❧ Features
– Data and instructions (programs) are stored in a single
read-write memory
– Memory contents are addressable by location, regardless
of the content itself
– Sequential execution
❧ Lots of initial and long-term fighting over patents, rights,
credits, firsts, etc.

Computer Architecture 23
History of Computers

❖ Generation 2 (1958 - 1964) : Transistors


Technological changes
Transistors
System software and high level languages
Floating point arithmetic
❖ Generation 3 (1964 - 1974) : Integrated
Circuits
Introduction of integrated circuits
Semiconductor memory
Microprogramming
Multiprogramming

Computer Architecture 24
History of Computers

❖ Generation 4 (1974 - present) : VLSI


Large scale integration / VLSI
Single board computers
❖ Generation 5 (? - ?)
VLSI / ULSI
Computer communications networks
Artificial intelligence
Massively parallel machines

Computer Architecture 25
History of Computers

Computer Architecture 26
Von Neumann Machine

❖ Concept of stored program


Main memory storing programs and data
❖ ALU operating on binary data
❖ Control unit interpreting instructions
from memory and executing
❖ Input and output equipment operated by
control unit
❖ IAS (Institute for Advanced Studies) at
Princeton
❖ Completed in 1952

Computer Architecture 27
Structure of von Neumann Machine

Computer Architecture 28
ISA

❖ 1000 x 40 bit words


Binary representation of data and
instructions
2 x 20 bit instructions

Computer Architecture 29
IAS

❖ Set of registers (storage in CPU)


Memory Buffer Register
Memory Address Register
Instruction Register
Instruction Buffer Register
Program Counter
Accumulator
Multiplier Quotient

Computer Architecture 30
IAS Structure

Computer Architecture 31
IAS Instructions

❖ Total of 21 instructions, grouped in:


Data transfer
Unconditional branch
Conditional branch
Arithmetic
Address modify

Computer Architecture 32
First Commercial Computers

❖ 1947 - Eckert-Mauchly Computer


Corporation
❖ UNIVAC I (Universal Automatic Computer)
❖ US Bureau of Census 1950 calculations
❖ Became part of Sperry-Rand Corporation
❖ Late 1950s - UNIVAC II
Faster
More memory
Upward/backward compatible

Computer Architecture 33
IBM

❖ 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

Computer Architecture 34
Transistors

❖ Replaced vacuum tubes


❖ Smaller
❖ Cheaper
❖ Less heat dissipation
❖ Solid State device
❖ Made from silicon
❖ Invented 1947 at Bell Labs
❖ William Shockley et al.

Computer Architecture 35
Transistor-Based Computers

❖ Second generation machines


❖ NCR & RCA produced small transistor
machines
❖ IBM 7000 series
❖ DEC - 1957
Produced PDP-1

Computer Architecture 36
IBM 7094

❖ Innovation: data
channels
Independent I/O
modules with their own
processor and
instruction set

Computer Architecture 37
Integrated Circuits

❖ So far – discrete components


❖ Micro electronics
Computer – made up of gates, memory cells
and interconnections

Computer Architecture 38
Integrated Circuits

❖ Idea
Manufacture entire
circuits (components
and their
interconnections)
directly on a
semiconductor

Computer Architecture 39
Computer Generations

❖ Vacuum tube: 1946-1957


❖ Transistor: 1958-1964
❖ Small scale integration: from 1965
Up to 100 devices on a chip
❖ Medium scale integration: to 1971
100 - 3,000 devices on a chip
❖ Large scale integration: 1971-1977
3,000 - 100,000 devices on a chip
❖ Very large scale integration: 1978 -1991
100,000 - 100,000,000 devices on a chip
❖ Ultra large scale integration: 1991 - ?
Over 100,000,000 devices on a chip

Computer Architecture 40
Moore’s Law

❖ Increased density of components on


chip
❖ Gordon Moore – co-founder of Intel
In April of 1965, Electronics magazine published an article
by Intel co-founder Gordon Moore.
“Number of transistors on a chip will double
every year”
❖ Since 1970’s development has slowed
a little
Number of transistors doubles every 18 months

Computer Architecture 41
Moore’s Law

Computer Architecture 42
Announcements

❖ Readings
Chapter 2

Computer Architecture 43

You might also like