Arhitectura calculatoarelor
Download
Report
Transcript Arhitectura calculatoarelor
Microprocessor-based Systems
Prof. Dr. eng. Sebestyen Gheorghe
Computers Department
[email protected]
Content
Introduction: short history &some concepts
The main structure of a computer: CPU, ALU,
instruction execution strategies
Microprocessors
Specialized microprocessors (microcontrollers and
DSPs)
Communication Buses
Memory design
Memory hierarchies (cache, virtual memory)
Input/Output interfaces
Interrupt system
Direct memory access
Advanced computer architectures:
– RISC
– parallel and distributed systems
2
References
Dancea I, - Calculatoare electronice – 1975
Nedevschi S. - Microprocesoare – 1994
Pusztai s.a, - Calculatoare numerice – Indrumator de lucrari de
laborator
Sztoianov E.s.a. - De la poarta TTL la microprocesor - 1987
Tanenbaum A.S. - Structured Computer Architecture –1990
Gorgan D, Sebestyen G.- Arhitectura calculatoarelor – 1997
Gorgan D. Sebestyen G. - Structura calculatoarelor – 2000
Gorgan D. Sebestyen G. – Proiectarea calculatoarelor - 2005
www.intel.com
www.ti.com
www.microchip.com
www. ??? AOA - The Art of Assembly Programming
Course and Labs on-line:
– http://users.utcluj.ro/~sebestyen/cursuri_lab.htm
3
Short history
Generations 0 – mechanical computers – (??-1940)
– ?? - abacus
– 17th – 18 century – arithmetical computing devices
• Pascal – device for adding and subtraction
• Leibnitz – device for basic arithmetical operations (+,-,*,/)
– 19th century - Ch. Babbage (Cambridge) – differential and
than analytical machine (Ada Byron-prima programmer)
• main parts: memory, computing unit, card reader and puncher
• a computer like a mill – processing data is like processing
materials
– beginning of the 20th century
• Konrad Zuse – electro-mechanical computers
– basic elements: relays
• John Athanasoff
– proposed the binary counting system for computers
• H. Aiken – Mark I, II
– computers made of relays
Ada Byron
4
First generation – 1945-55
– technology: electronic tubes
– 1943-46 – P. Eckert & J. Mauchley – ENIAC –
• the first functional computer !!!!
• 18000 tubs, 1500 relays, 30 tones
– J. von Neumann – IAS
• the first scientist who wrote a book on computers
• defined the classical computer model with 5 components:
– memory, control unit, arithmetical and logical unit, input device(s),
output device(s)
– the idea of memorized program
– Shanonn – information theory
• defined the metrics for information: the bit
• information = the opposite of entropy
– Alan Turring – coding and decoding systems
• Colossus – the Turring machine
– other versions: EDVAC, ILLIAC, MANIAC, Wirlwind, UNIVAC
– IBM 701,704,709 – first commercial computers
– CIFA, MECIPT – Romanian versions
5
First computer generation
Eckart&Mauchley
John von Neumann
Shanonn
UNIVAC
6
First computer generation
ENIAC
ADVAC
IBM 701
7
Second generation – 1955-65
–
–
–
–
–
–
–
–
technology: transistor
Shockley&Brattain – first transistor (Bell labs)
first computer with transistors: TX-0
IBM 7090 – transistorized version, IBM 1401
Wirlwind – MIT
PDP-1, PDP-8, made by DEC company
CDC 6600 – first parallel computer
CETA, DACICC (Ghe. Farkas, L. Negrescu) –
Romanian computers
8
First transistor
TX-0
PDP-1
3rd generation – 1965-75
– technology: integrated circuits
– computer families:
• mainframes: IBM 360, IBM 370
• mini-computers: PDP 11
– Romanian computers:
• Felix c-256, c-512, c-32
• Independent, Coral – clones of PDP-11
– improvements:
•
•
•
•
•
•
speed
reliability
small dimensions
high capacity memories (16k-512k)
new peripheral devices (floppy disk, hard disk)
display as operating consol (PDP11)
9
3rd generation
First integrated circuit
Apollo
Seymour – LOGO
HP Computer
1967
HP (1972)
10
4th generation 1975-90??
– technology: VLSI
• advantages: speed, high integration ratio, high reliability,
small costs and dimensions
– first microprocessor - Intel 4004 !!!!
– high capacity memory circuits: ROM, RAM, DRAM
(1-16ko)
– first microprocessor-based microcomputers
– first computers for personal use:
• home-computers: ZX81, Spectrum
• PCs: IBM-PC, XT, AT, Apple, Machintosh
– Romanian computers:
• M18 series, PRAE, aMIC, Felix PC, Telerom-PC
(Sebestyen, Electrosigma)
11
th
4
generation
Intel 4004
Apple
12
IBM-PC
th
4
generation
Computer with TV set as display
IBM PS2
Portable computer (Osborn)
Motorola 68040
13
4th generation
Bill Gates
Steve Jobs si Steve Wozniak
14
Microprocessor’s evolution
first μP
1971
I4004
4 biti
1972
I8008
8 biti
16ko
First μP on 8 bits
1974
8080
8 biti
64ko
First successful μP
1978
8086, 8088
16 biti
1Mo
First μP on 16 bits, bases for the first PC
1982
80286
16 biti
16Mo
PC-AT
1985
80386
32 biti
4Go
First μP on 32 bits
1989
80486
32 biti
4 Go
Incorporated FPU
1993
Pentium
32 biti
4Go
pipeline
1995
P. Pro
32 biti
64 Go
P6 super-pipeline architecture
1997
P. II
32 biti
64 Go
MMX technology
1999
P. III
32 biti
70 To
SSE2 technology
2002
P. IV
32 biti
70 To
NetBurst architecture
2004
P. IV
64 biti
70 To
Hyper-threading technology
2006
Core 2
64 biti
70 To
Multicore architecture (2 cores/chip)
2007
Dual Core
64 biti
70 To
2 processors/chip
2008-9
I5, I7
64 biti
70 To,
8Mo L3
cache
Nehalem architecture, multicore and
hyper-threading 4cores/8 multithread
cache 8Mo (L3)
2011
Sandy Bridge
15
Microprocessor’s evolution
Other microprocessor families:
– Motorola: 6800 (8 biti), 68000 (16 biti),
68020, 68030 (32 biti), 68040
– Zilog: Z80, Z8000
– Texas Instruments: - digital signal
processors: TMS320c10/20/30/50/80
– Microchip: microcontrollers: PIC12/16/18
– MIPS, ARM, etc.
16
Moor’s law
Pentium 4
‘486
‘286
8086
Pentium
‘386
8080
4004
17
Tendencies and perspectives
increase of integration ration
– smaller switching elements (transistors): 45->35nm
– increase of switching elements’ number
• processors - over 1 billion de transistors
• memory – over 64-512 billion
power reduction
– intelligent power distribution
– dynamic power control: energy where and when it is needed
– frequency limitation
multi-core and multi-thread architectures
– from 2 cores/chip to 128 cores and more
– symmetric and asymmetric architectures (see Intel and Power PC)
network-on-chip
– network communication inside the chip instead of parallel buses
18
Tendencies and perspectives
memory hierarchies
– more cache memory levels (inside the processor)
– virtual memory
– access request anticipation
external memories of silicon
– no more hard and floppy disks of DVDs, flash instead
multi-processor architectures
– parallel architectures
– distributed architectures
computer networks
– Interne – an indispensable computer resource
– wireless networks
mobile and portable computers:
– laptops, graphic tablets
– PDA, GPS
– intelligent phones
19
Computer's performance parameters
Clock frequency,
–
–
–
–
Higher clock frequency = higher performance
Doubled every 24 month, until 2005
Limited by the power consumption and disipation
Today – 2-3GHz
Number of Cycles Per Second – CPI
– Number if clock cycles for executing an instruction
– Older computers: 5-120 cycles
– New processors: 1, 0.5, 0.25 CPI
Number of instructions per second
– MIPS, FLOPS – million of instructions per second
20
Computer's performance parameters
Execution time of a program,
– See Benchmarks
execution time of a transaction set
– Read-modify-save operations executed on databases in a
concurrent way
Memory capacity and speed
– Gbytes, Tbytes
– Access time: 70ns, 15ns, 0.1ns
I/O capabilities
– HDD throughput
Communication performances
– bandwidth and speed
21
A microprocessor-based computer system
Simplified scheme:
Memory
Memory
μP
Address
Data
Commands
I/O interface
I/O interface
I/O dev.
I/O dev.
22
Structure of a Personal Computer (PC)
μP
SVGA
Mem
Mem
AGP
Chipset
N
Net
PCI
Chipset
S
Keyboard
Mouse
23
The multi-layer structure of a computer
more abstraction levels/layers
more access layers to the computer’s
resources
virtual machines:
– a programming language
– a set of functionalities
– ex: Java Virtual Machine, BASIC machine, etc.
why multi-layer:
– easier and more efficient programming
– different kind of users
– complexity reduction through abstraction and
functional decomposition
24
Multi-layered computer structure
Application
Translation and interpretation
High level language
(aggregate, compile)
Translation (compile)
Assembly language
Translation (compile)
Operating system
ISA
Interpretation (System calls)
Conventional machine
Microprogramming
Digital circuites/hardware
Interpretation (micro-program
sequences)
Decoding
Translation
Interpretation
25
26