Вы находитесь на странице: 1из 63

COMPUTER ARCHITECTURE

Luben Boyanov
Associate professor
contact: lb@acad.bg , room 2073

An object of study and


history of computing
Lecture 1

Lecturer
Associate professor Luben Boyanov, last
job at the Institute of Information and
Communication Technologies BAS
Graduated at Sofia Technical University
and at the University of Manchester (MSc
and PhD)
Interests: (professional) computer
architectures, parallel computers,
computer networks, etc., and many other
(outside computing/non-professional)

Computer Architecture subject


The course will focus on:
What does the computer,
How the computer hardware works,
How are numbers and instructions presented
in computers,
How major blocks are linked and how they
function,
Why we consider the relation
price/performance
Principles of work of various PC components

Computer Architecture subject


The lectures are to give the students basic
knowledge and way of thinking +
understanding of how the modern
computers work
The course is not a programming course,
hardware design, or PC repair!

Academic behavior
Few words on behavior (not only
academic):
Each one of you is responsible for his/her own
conduct.

Each one of you must do his/her own


work valid for all assignments and
exams.
No cheating tolerated they are the road to
administrative punishment or poor mark

Academic behaviour
More on academic behavior
No talks/chatting during lecture - this distracts
the lecturer (me in this case) and is impolite to
others, who are interested and want to listen
No food in class
No web surfing during class
Questions welcomed (raise hand, dont
interrupt others, be polite)

Exam
60 min

Grading:
Labs,
6-9 questions,
Optional questions
Activity during lectures and labs

- Supplementary readings (papers, appendices,


background, analysis of a particular issue )

Computer architecture
Computer architecture is:
Instruction set architecture + machine
organization
Instruction set architecture
- programmers view of a machine

Text books
Computer Architecture: A Quantitative Approach by
Hennessey and Patterson (4th Edition)
Computer Organization and Design: The
Hardware/Software Interface by Patterson and
Hennessey (3rd, 4th Edition)

Stokes J., Inside the Machine: An Illustrated Introduction to


Microprocessors and Computer Architecture, No Starch Press, 2006.

Tannenbaum A., Structured Computer Organization, Fifth edition, Prentice Hall,


2005, ISBN-10: 0131485210.
Stallings W., Computer Organization and Architecture: Designing for Performance,
seventh edition, Prentice Hall, 2005, ISBN-10: 0131856448
Kai Hwang, Zhiwei Xu, Scalable Parallel Computing, McGraw-Hill, 1998.
Michael Flynn, Computer Architecture (Pipelined and Parallel Processor Design),
Jones and Bartlett Publishers, 1995

The WEB; Wikipedia

Mechanical Era
4000 1200 BC Clay Tablets for trade records
(Sumer); Abacus used in Babylon, later in the
Arab world, Europe, China and Japan
Late 16th c. John Napier (Scotland - renowned
as the discoverer of the logarithm) Napiers
Bones (an abacus x /)
Early 17th c Robert Bissaker (England) Slide
rule logarithmic scales

Mechanical era
Early 17th c Wilhelm Schickhard (Germany)
calculating machine preceded Pascals
Pascaline but was destroyed by fire and
unknown for 3 centuries until 1957
Mid 17th c Blaise Pascal (France) Adder
mechanical calculator that could add and
subtract directly; main contribution ratchet
drive for carry transfers
Late 17th c - Gottfried Leibniz (Germany)
Leibniz developed the infinitesimal calculus and
the binary number system, Calculator - Stepped
Reckoner (+,-,x,/)

Pascaline (webpages.cs.luc.edu )

Stepped Reckoner (britannica.com)

Punched cards:
Early 17th c.- end of 17th c. Basile Bouchon and
Jean-Baptiste Falcon
Joseph Marie Jacquard
Late 17th c - G.F.Prony (France) Autometer (+
- x /)
1820 - Charles Xavier Thomas de Colmar
(France) arithmometer - the first massproduced calculator

Arithmometer (www2.lv.psu.edu)

1823 Charles Babbage (England)


Differential Engine automatic,
mechanical calculator
The machine was to solve 6th degree
polynomials to 20 digit accuracy. Project was
abandoned in 1842
London Science Museum constructed a
working Difference Engine

Differential engine (www.virtualtravelog.net)

1834 Charles Babbage (England) Analytical


Engine with the essential features of a general
purpose automatic computer - succession of
designs that he tinkered with until his death in
1871. Main difference with diff.eng can be
programmed by punch cards
Store (memory)
Mill (arithmetic unit)
Program (operation cards program steps, variable
cards memory selection cards)

Analytical Engine (www.chronarion.org)

1837 Geore Scheuty (England) built a


working Babbages Differential Engine that
solved 3rd degree polynomials to 15 digits
1854 George Boole (England) binary logic
operators
1874 Lord Kelvin - Analog machine
1875 Frank Baldwin (USA) Printing
Calculator
1874 W. F. Odhner (Sweden) Desk
Calculator

1890 Herman Hollerith (USA punched cards,


tabulating machine. Hollerith founded Tabulating
Machine Co (1896), then ComputationTabulating Recording Co. (1911) and in 1924
International Business Machines Corp. (IBM)
1892 William Burroughs (USA) printing
calculator in mass production
1904 John Fleming (England) diode vacuum
tube
1936 Alan Turing (England) paper on
computable numbers

1934 45 Konrad Zuse (Germany)


- proposes to build a electromechanical
calculating machine
- files a patent application for the automatic
execution of calculations, including a binary
"combination memory
- mechanical computer
- uses telephone relays instead of mechanical
logical circuits
- first fully functional program-controlled electromechanical calculator (1941)

John Vincent Atanasoff


John Vincent Atanasoff (October 4, 1903 June 15,
1995)
the inventor of the digital computer
special-purpose machine has come to be called the
AtanasoffBerry Computer.
1937 ABC - not programmable, designed only to solve
systems of linear equations. successfully tested in 1942
Until 1973 the ENIAC was considered to be the first
computer in the modern sense, a U.S. District Court
invalidated the ENIAC patent and concluded that the
ABC was the first "computer"
The ABC had been examined by John Mauchly in June
1941, and it influenced his later work on ENIAC

ABC (computermuseum.li)

John Vincent Atanasoff

Pioneered:
- binary arithmetic
- electronic switching elements
- first to use dynamically refreshed
capacitors for storage, as in current RAM
- parallel, supporting up to 30
simultaneous operations
separation of memory and computing
functions

John Vincent Atanasoff


ABC had 270 vacuum tubes
rotating drum memory the memory of ABC
The memory of the AtanasoffBerry Computer was a
pair of drums
each drum memory unit contained 1600 capacitors that
rotated on a common shaft once per second
Each one could hold about 30 fifty-bit numbers (data was
represented as 50-bit binary fixed point numbers )
primary clock rate for the lowest level operations 60 Hz
The control logic functions were electromechanical,
implemented with relays

John Vincent Atanasoff


In 1997, a team of researchers led by
John Gustafson from Ames Laboratory
(located on the Iowa State campus)
finished building a working replica of the
AtanasoffBerry Computer at a cost of
$350,000

ENIAC
1943-1946 J. Mauchly and J Eckert - ENIAC
(Electronic Numerical Integrator and Calculator)
general purpose electronic computer
- program by setting switches and plug/unplug
cables.
Uses 18 000 tubes
Weights 30 tons
Performance 5 000 ops/sec
Card reader
Printer
Card punch

Electronic computers
1944 Howard H. Aiken - Mark 1 or ASCC
- electromechanical computer built at IBM and
shipped to Harvard in February 1944
1945 John von Neumann concept of a
stored program
1947 first transistor J Bardeen, W Brattain
and W Shockey Bell labs (Nobel prize in 1956)
1949 Maurice Wilkis (England) EDSAC
(Electronic Delay Storage Automatic Calculator)
1950 EDVAC (Electronic Discrete Variable
Automatic Computer) Princeton University

Electronic computers
1951 Eckert and Mauchly (USA) UNIVAC I
(Universal Automatic Computer), vacuum tubes
1951 Maurice Wilkes (England)
microprogramming
1951-52 - Grace Hooper (one of the first
programmers of Mark 1) A-0 - first compiler
concept of machine independent programming
language (led to the development of COBOL)
1953 IBM 650 first mass produced computer

IBM 650 (www-03.ibm.com)

Modern concepts
1958-1962 Tom Kilburn (England)
ATLAS Manchester University
fastest instructions - 1.59 microseconds
use of virtual storage and paging
ATLAS pioneered many hardware and
software concepts still in common use today
including the Atlas Supervisor, "considered by
many to be the first recognisable modern
operating system

ATLAS (computer50.org)

Electronics gets smaller

1954 Texas Instruments silicon transistors


1957 first FORTRAN compiler
1964 IBM System/360 third generation computers
1964 - DEC PDP-8 The First Minicomputer, built by
Digital Equipment Cost (DEC); cost $16,000
1968 Cray CDC7600 supercomputer (40 MFLOPS)
1970 - RAM chip introduced by Intel. It had a capacity of
1 K-bit, 1024 bits.
1971 - First microprocessor, the 4004, Intel, developed
by Marcian E. Hoff. A 4 bit processor; 2300 transistors.
60,000 interactions per second (0.06 MIPs), running at a
clock rate of 108KHz.

New, mass products

1972 Hewlett-Packard first hand-held calculator


1975 IBM laser printer
1976 Steve Jobs and Steve Wozniak Apple I
1976 - Cray 1, the first commercially developed
Supercomputer, 200,000 integrated circuits 150 million
floating point operations (MFLOPS)
1977 Bill Gates and Paul Allen found Microsoft
1981 IBM Personal Computer costs 2880 $
64Kb RAM,
mono display
two 160Kb single sided floppy drives

Getting personal
1983 - IBM XT released, 8086

10Mb hard disk,


128K of RAM,
one floppy drive,
mono monitor and a printer,

1984 - Apple Macintosh; 8 MHz version of Motorola


68000 processor
1985 Sony and Phillips CD-ROM
1990 Berners-Lee working at the European Partial
Physics Laboratory (CERN) in Geneva, Switzerland
writes the WWW prototype (URL, HTML, HTTP)

Last decades

1990 Microsoft Windows 3.0


1991 Linus Torvald introduces Linux OS
1991 WWW is launched to public
1991 - Pretty Good Privacy more commonly
known as PGP a public key used for encryption
is released as Freeware by Philip Zimmerman
1993 Intel Pentium Processor released
1993 University of Illinois Mosaic - graphical
web browser

Last decades
1993 - PowerPC processor developed by IBM,
Motorola and Apple
1994 Netscape and Yahoo founded
1994 Netscape browser released
1995 first Wiki created
1995 Internet Explorer 1.0
1995 LiveScript is renamed to JavaScript,
Java is introduced
1995 Amazon.com is officially opened

Last decades
1995 USB standard released
1996 Sergey Brin and Larry Page -Google
developed
1998 MySQL introduced
2001 Wikipedia founded
2001 USB 2.0 introduced
2001 iPod by Apple
2001 - Microsoft Windows XP
2004 Firefox 1.0 introduced
2006 Blue-ray announced and introduced

2006 Intel Core


2006 Toshiba HD DVD player
2010 Apple iPad and iPhone
2010 - Google Android 2.x; 2012 ver. 4.2
2010-2011 - Toshiba 3D autosteroscopic (no
glass) TVs, Phillips 2011
2011 - The K computer Fujitsu first reached
10 petaflops
2013-2014 - Tianhe-2 or TH-2 (literally "Skylake2") is a 33.86 petaflop supercomputer located
in Guangzhou, China

A task(s)
List 10 technological achievements,
inventions or discoveries in the field of
computers (software, hardware) for 20132014 or present one of them in 1-2 pages
What is Siri (fruit product) and Google
now?
What is Internet of things?

The advance of electronics


Moore's Law - Gordon Moore (co-founder of
Intel) predicted in 1965 that the transistor density
of semiconductor chips would double roughly
every 18 months. Its not a law, its a prediction
about what device physicists and process
engineers can achieve
Processor speed doubles at same rate the
number of transistors that can be fabricated on a
single integrated circuit at a reasonable cost
doubles every year

The advance of electronics


How?
- Material techniques such as extreme
ultraviolet lithography (<100 nm)
Impact:
- Increase in manufacturing yield, more dies per
wafer
- Smaller transistors consume less power =>
Higher speed for same power per unit area
- More complex devices can be created in same
die area

Using more transistors


Using those transistors ...
Wider datapaths and circuit elements (from 4 to
8 to 16 to 32 to 64 bits)
Caches
Additional functionality on the die (MMU, floating
point, L2 cache controller)
Deeper pipelining (multiple instructions in
progress at a time)
Superscalar architectures (instruction-level
parallelism -- multiple instruction streams)

Complexity

Coping with complexity ...


Design rules: abstracting away parts of the process
Automated tools for placing, routing, etc.
Hierarchy, parameterization, and regularity of design
(e.g., replicated bit-slices; 2D structures that can tile and
be connected by abutment); tools to support this
Timing analysis and verification
Logic synthesis (huge advances in the past decade) We
don't expect most systems of 5-10 million components to
be flawless! (E.g., construction projects)

The first
1971
Intel 4004, 4 bit
processor; 2300
transistors
1975
Intel 8080, 1975 4500
transistors

Then came
Intel 8086, 1978
29000 transistors

Intel Pentium, 1993


3.1 million transistors

Pentium II
Introduced May 7, 1997
Pentium Pro with MMX and improved 16-bit
performance
242-pin Slot 1 (SEC) processor package
Slot 1
Number of transistors 7.5 million
32 KB L1 cache
512 KB bandwidth external L2 cache

Pentium III
Katmai 0.25 m process technology 1999
Number of transistors 9.5 million
512 KB bandwidth L2 External cache
System Bus clock rate 100 MHz, 133 MHz (B-models)

Coppermine 0.18 m process technology 1999


Number of transistors 28.1 million
256 KB Advanced Transfer L2 Cache (Integrated)
System Bus clock rate 100 MHz (E-models), 133 MHz (EB models)

Tualatin 0.13 m process technology 2001

Number of transistors 28.1 million


32 KB L1 cache
256 KB or 512 KB Advanced Transfer L2 cache (Integrated)
370-pin FC-PGA2 (Flip-chip pin grid array) package
133 MHz system bus clock rate

Pentium M
Banias 0.13 m process technology 2003

64 KB L1 cache
1 MB L2 cache (integrated)
Number of transistors 77 million
Micro-FCPGA, Micro-FCBGA processor package
400 MHz Netburst-style system bus

Dothan 0.09 m (90 nm) process technology 2004

2 MB L2 cache
140 million transistors
400 MHz Netburst-style system bus
21W TDP

Pentium 4E 2004
built on 0.09 m (90 nm) process technology
1 MB L2 cache
533 MHz system bus (2.4A and 2.8A only)
Number of Transistors 125 million on 1 MB Models
Number of Transistors 169 million on 2 MB Models
800 MHz system bus (all other models)
Hyper-Threading support
7500 to 11000 MIPS
The 6xx series has 2 MB L2 cache and Intel 64

Introduced 2006
Intel Core 2
Conroe 65 nm process technology Desktop CPU 2006
Two cores on one die
Number of Transistors 291 Million
64 KB of L1 cache per core (32+32 KB 8-way)

Kentsfield 65 nm process technology - 2006

Two dual-core cpu dies in one package.


Desktop CPU Quad Core (SMP support restricted to 4 CPUs)
same features as Conroe but with 4 CPU Cores
Number of Transistors 586 Million

Yorkfield 45 nm process technology


Quad core CPU
Number of Transistors 820 Million

64-bit processors: Intel 64


Nehalem microarchitecture
Core i7
Bloomfield 45 nm process technology 2008

4 physical cores
256 KB L2 cache
8 MB L3 cache
Hyper-Threading is again included. This had
previously been removed at the introduction of Core
line
781 million transistors
TDP 130W
Socket 1366 LGA
3-channels DDR3

Core i3, Core i5


Core i3 - Clarkdale 32 nm process technology
2 physical cores/4 threads
64 Kb L1 cache;512 Kb L2 cache; 4 MB L3 cache; January, 2010

Core i5 - Lynnfield 45 nm process technology


4 physical cores
32+32 Kb (per core) L1 cache; 256 Kb (per core) L2 cache; 8 MB
common L3 cache
September, 2009

Core i5 - Clarkdale 32 nm process technology


2 physical cores/4 threads
64 Kb L1 cache; 512 Kb L2 cache; 4 MB L3 cache;
January, 2010

i3, i5, i7 - ???


Core i7 does not have seven cores nor does
Core i3 have three cores (they have only 2 cores,
most i5 have 4 cores). The numbers are simply
indicative of their relative processing powers
Their relative levels of processing power are also
signified by their Intel Processor Star Ratings,
which are based on a collection of criteria
involving their number of cores, clock speed (in
GHz), size of cache, as well as some new Intel
technologies

64-bit processors: Intel 64 Sandy


Bridge / Ivy Bridge microarchitecture
Sandy Bridge implementations
targeted a 32
nanometer manufacturing process
Intel's subsequent product,
codenamed Ivy Bridge, uses a 22
nanometer process
Introduced after 2011, 2012

Xeon, Haswell
Xeon (server and workstation) brands
Clock frequency around or more 3GHz,
L3 cache 12-24 MB
Haswell is the codename for
a processor microarchitecture - successor
to the Ivy Bridge architecture
Uses the 22 nm process
On the market since 2014

Intel Atom
32-bit processors: Intel 32 Intel Atom
Intel Atom - brand name for a line of ultra-lowvoltage CPUs by Intel, power consumption
down 40%
- 45 nm CMOS, now 32 nm
- used mainly in netbooks, nettops, and Mobile
Internet devices (MIDs).
In December 2012, Intel launched the 64bit Centerton family of Atom CPUs, designed
specifically for use in servers

New technologies
2011 22 nm - TRI-GATE 37% better
performance with low voltage and > 50%
reduced active power during sustained
peformance
http://www.intel.com/technology/silicon/inte
grated_cmos.htm; for the first time, the
transistor is vertical tri-gate technology
(on 3 surfaces) the components can be
placed closer (vertical transistors)
Work is going on 14 nm technology, 10 nm
is in the production plans (according to
Justin Ratner from Intel)

Continuum of Computing experience


Desktops, laptops, mobile computers, e-books,
PDA, smart phones, Smart TVs, embedded GPS, cars
Planning less energy and better energy
efficiency
Research in: Information processing and
programming, energy and sustainability, security
and virtualization, electronics and photonics,
user experience and interaction

Вам также может понравиться