microprocessor-based systems prof. dr. eng. sebestyen gheorghe computers department...
TRANSCRIPT
Microprocessor-based Systems
Prof. Dr. eng. Sebestyen Gheorghe Computers [email protected]
2
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
3
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
4
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
5
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
6
First computer generation
Eckart&Mauchley
John von Neumann
UNIVACShanonn
7
First computer generation
ENIAC
ADVAC
IBM 701
8
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
TX-0 PDP-1First transistor
9
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)
10
3rd generation
First integrated circuit Apollo
HP Computer HP (1972)
Seymour – LOGO
1967
11
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)
12
4th generation
Intel 4004
IBM-PC
Apple
13
4th generation
Portable computer (Osborn)Computer with TV set as display
IBM PS2 Motorola 68040
14
4th generation
Bill Gates Steve Jobs si Steve Wozniak
15
Microprocessor’s evolution1971 I4004 4 biti first μP
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
16
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.
17
8086
4004
Pentium 4
‘486
‘386‘286
Pentium
8080
Moor’s law
18
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
19
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
20
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
21
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
22
A microprocessor-based computer system
Simplified scheme:
μP
Memory Memory
I/O interface I/O interface
I/O dev. I/O dev.
Address
Data
Commands
23
Structure of a Personal Computer (PC)
μP
Chipset
N
Chipset
S
SVGAAGP
PCI
Mem Mem
Net
Keyboard Mouse
24
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
25
Multi-layered computer structure
Application
High level language
Assembly language
Operating system
Conventional machine
Microprogramming
Digital circuites/hardware Translation
Interpretation
Interpretation (micro-program sequences)
Interpretation (System calls)
Decoding
Translation (compile)
Translation (compile)
Translation and interpretation (aggregate, compile)
ISA
26