curs ms 1 introduce re 2014
TRANSCRIPT
•1
Sisteme cu Microprocesoare, 2013-2014, sem. II
1
SISTEME CU SISTEME CU MICROPROCESOAREMICROPROCESOARE
SISTEME CU SISTEME CU MICROPROCESOAREMICROPROCESOARE
Profesor Liliana DobricaUniversitatea POLITEHNICA Bucuresti
Facultatea Automatica si Calculatoare
Sisteme cu Microprocesoare, 2013-2014, sem. II
2
ContactContact
♣ Profesor: Liliana DOBRICA
♣ Email: [email protected]
♣ Birou: ED415
♣ Laborator: ED312
•2
Sisteme cu Microprocesoare, 2013-2014, sem. II
3
Obiectivele cursului
Obiective generale:
� Obținerea de experiență în abordarea subiectelor tehnice complexe și capacitatea de a digera informații tehnice detaliate într-un interval de timp rezonabil de scurt;
� Dezvoltarea abilității de a combina creativitatea cu abordarea metodică a proiectării hardware și software pentru a minimiza numărul de erori;
� Dezvoltarea atenției către detalii la implementarea proiectării;
� Obținerea de experiență în aplicarea metodelor de rezolvare a problemelor pentru a găsi soluții ce satisfac un set de constrângeri, debugging hardware/software.
Sisteme cu Microprocesoare, 2013-2014, sem. II
4
Obiectivele cursului
Obiective specifice:
�Înțelegerea legăturii dintre conceptele logicii digitale de nivel jos și conceptele arhitecturii de nivel înalt.
�Înțelegerea execuției unei instrucțiuni etapa cu etapa.
�Înțelegerea conceptelor precum: magistrala, memorie, interfațarea subsistemelor la magistrala, întreruperi.
•3
Sisteme cu Microprocesoare, 2013-2014, sem. II
5
Evaluarea cunoştinţelor
• Structura cursului: 14 săpt. x 3 ore/săpt. = 42 ore curs14 săpt. x 2 ore/săpt. = 28 ore aplicații
• Metoda de evaluare a cunoștințelor: evaluarea continuă
• Evaluarea activității la curs: 1 examen scris (sesiunea de vară) + prezenta la curs
• Evaluarea activității aplicative: 3 lucrări (3 teme de casa + prezenta laborator) + 1 proiect de semestru
Sisteme cu Microprocesoare, 2013-2014, sem. II
6
Evaluarea cunoştinţelor
Examen:• Sesiunea de vară:
pondere 50 % din nota finală,condiție de promovare: minimum 5
Aplicații:Laborator3 teme de casă, notate de la 0 la 10Prezență (fiecare laborator 1 punct – primele 10 laboratoare)Notă laborator minim 5
Pondere în notă finală 20 %
Proiect, notat de la 0 la 10, nota minimă5Pondere în nota finală 30 %
•4
Sisteme cu Microprocesoare, 2013-2014, sem. II
7
Cuprins curs
1. Introducere. Evoluția microprocesoarelor.2. Elemente de baza privind sistemele cu microprocesoare: arhitectura interna
a microprocesoarelor; arhitectura sistemelor cu microprocesoare; memoria si microprocesorul; elemente ale arhitecturii I/O; modelul de programare.
3. Moduri de operare ale microprocesoarelor: modul real si modul protejat –descriere, translatare a adreselor, setul de instructiuni.
4. Gestiunea memoriei: segmentare si paginare; memorie fizica si memorie virtuala; procesul de translatie a adreselor.
5. Multitasking si protectia memoriei: modelul de protectie; accesul la cod si date prin modelul de protectie; task; segmentul de stare a taskului; comutarea taskurilor;
6. Intreruperi. Controlerul de intreruperi 8259A7. Sistemul de memorie8. Sistemul de intrari/iesiri9. Pentium si tendinte de dezvoltare in domeniu
Sisteme cu Microprocesoare, 2013-2014, sem. II
8
Bibliografie curs
�Barry B. Brey - Intel microprocessors: 8086/8088, 80186/80188, 80286, 80386, 80486, Pentium, Pentium Pro Processors, Pentium II, Pentium 4, and Core2 with 64-bit Extensions: Architecture, Programming, and Interfacing; Eighth Edition, Pearson Education International
•5
Sisteme cu Microprocesoare, 2013-2014, sem. II
9
Bibliografie curs
�Walter Triebel, The 80386DX Microprocessor - Hardware, Software and Interfacing ;
�David Patterson, John Hennessy, Computer Organization and Design – The Hardware/Software Interface, Ed. Morgan Kaufmann;
�www.intel.com
�Alte materiale vor fi recomandate pe parcurs.
Sisteme cu Microprocesoare, 2013-2014, sem. II
10
INTRODUCERE
Legea lui MooreLegea lui MooreGordon Moore (INTEL) – 1965:
“numărul de tranzistoare de pe un chip se va dubla la fiecare doi ani”
� Legea lui Moore a “alimentat” o revoluție tehnologică, pe măsură ce Intel a crescut exponențial numărul de tranzistoare integrate în procesoarele sale pentru a spori performanțele și a eficientiza consumul de energie.
•6
Sisteme cu Microprocesoare, 2013-2014, sem. II
11
INTRODUCERE
Legea lui MooreLegea lui MooreGordon Moore (INTEL) – 1965:
“numărul de tranzistoare de pe un chip se va dubla la fiecare doi ani”
Sisteme cu Microprocesoare, 2013-2014, sem. II
12
INTRODUCERE
Evolutia microprocesoarelor Intel• Microprocesoare pe 4 biti• Microprocesoare pe 8 biti• Microprocesoare pe 16 biti• Microprocesoare pe 32 de biti• Generatia Pentium• Microprocesoare Multiple Core
•7
Sisteme cu Microprocesoare, 2013-2014, sem. II
13
Evolutia microprocesoarelor Intel
• 4004 – Microprocesor pe 4 biti.
• Primul microprocesor a fost introdus in 1971.
• Latimea magistralei: 4 biti; Memorie adresabila: 4096 x 4 biti.
• Setul de instructiuni: 45 instructiuni - operatii aritmetice.
• Aplicatii: jocuri video si sisteme de control.
• Probleme: viteza, latimea cuvantului, dimensiunea memoriei.
• 8008 – Microprocesor pe 8 biti.
• Primul microprocesor pe 8 biti, (1972).
• Latimea magistralei: 8 biti; Memoria adresabila: 16K x 8 biti.
• Setul de instructiuni: 48 instructiuni.
• Aplicatiile: manipulari de date.
• Limitari: viteza redusa, dimensiunea mica a memoriei, set de instructiuni limitat.
Sisteme cu Microprocesoare, 2013-2014, sem. II
14
Evolutia microprocesoarelor Intel
• 8080 - al doilea microprocesor pe 8 biti (1974)
• Latimea magistralei: 8 biti; Memoria adresabila: 64K x 8 biti. • Setul de instructiuni a crescut in numar si performanta. Instructiunile
erau executate de 10 ori mai rapid decat 8008 (e.g. 2 microsecs pentru o adunare).
• Aplicatiile: similare microprocesoarelor precedente.
• 8085
• Apare in 1977 si contine un generator de ceas un controler intern al sistemului.
• Latimea magistralei: 8 biti; • Setul de instructiuni a crescut in performanta (e.g. adunarea in 1.3
microsecs.).• Aplicatiile: similare microprocesoarelor precedente.
•8
Sisteme cu Microprocesoare, 2013-2014, sem. II
15
Evolutia microprocesoarelor Intel
• 8086 – Primul microprocesor pe 16 biti (1978).
• Latimea magistralei: 16 biti;• Memoria adresabila: 1MByte;• Setul de instructiuni : se extinde cu instructiuni de inmultire si impartire; • Numarul si complexitatea instructiunilor reprezinta elementele care incadreaza acest
microprocesor in categoria CISC - complex instruction set computers. • Intel extinde familia 8086 cu introducerea 80186 si 80188, si adauga coprocesorul
8087 (procesorul matematic pentru operatii in virgula mobila). • 8088 a fost utilizat de IBM Corporation in PC-uri (calculatoare personale). Primele
aplicatii ale PC-urilor erau masini de procesare a cuvintelor sau mini-calculatoare.
• Limitari pentru bazele mari de date.
Sisteme cu Microprocesoare, 2013-2014, sem. II
16
Evolutia microprocesoarelor Intel
• 80286
• Apare in 1982. • Memoria adresabila: 16 Mbyte.• Intel 80287 – coprocesorul matematic. • Operare in modul protejat
•9
Sisteme cu Microprocesoare, 2013-2014, sem. II
17
Evolutia microprocesoarelor Intel
• 80386 (SX/DX)- Primul microprocesor pe 32-biti.
• Procesorul opera la frecvente de 16-33 MHz pe magistrala sistemului si putea fi acompaniat de 80387 FPU.
• 80486 (SX/DX2/DX4)
• Unitatea Centrala de Prelucrare (UCP) pe 32 biti. • 8KB de L1 cache si FPU integrat in chip.
Co-Processor
8K L1
cache memory
33MHz
CPU
80486DX
Sisteme cu Microprocesoare, 2013-2014, sem. II
18
Generatia Pentium
• Modificari mai importante:
• Procesul de decodificare si executie a instructiunilor;• Suport pentru memorie mai mare de 4 GB;• Cresterea in performanta si marime pentru memoria
cache L1 si L2;• Adaugarea unui nou nivel de memorie cache;• Cresterea vitezei de operare interna sau externa.
•10
Sisteme cu Microprocesoare, 2013-2014, sem. II
19
Generatia Pentium
• Pentium: (1993)
• Initial numit P5 sau 586• Microprocesor pe 32-biti, latimea magistralei de date de 64-biti • 32-biti magistrala de adrese - memorie adresabila: 4GB.• Frecvente de ceas de 60, 66, 90 MHz.• Tehnologie superscalara.• Aplicatii: realitate virtuala; video comparabile cu televiziunea comerciala
Co-Processor
16K L1
cache memory
66MHz
Int CPU1
Pentium
Int CPU2
Sisteme cu Microprocesoare, 2013-2014, sem. II
20
IntroductionDiagrama Block a Pentium
Principalele caracteristici
- Arhitectura superscalara
-U,V pipelines – five stages
-FPU –eight stages
-2 x 32-bytes prefetch buffer – permite suprapunerea executiilor instructiunilor in pipelines
-predictia dinamica a ramnificatiilor (Branch target buffer) – creste viteza de executie a programelor prin anticiparea ramurilor si garanteaza disponibilitatea acelor instructiuni in cache.
- Cache pentru instructiuni (write-through SRAM), cache pentru date cache (write-back SRAM) de 8 Kbyte capacitate fiecare.
- 64 bit magistrala de date; 32 bit magistrala de adrese
- Capacitate de procesare duala
- APIC (controlerul de intreruperi) in chip.
1997 Pentium MMX- Include o unitate MMX (extensie multi-media): 8 noi
registre 64-biti + 57 instructiuni MMX cu 4 noi tipuri de date.
Limitarea utilizarii – lipsa unui limbaj de nivel inalt ca suport pentru aceste instructiuni.
Bus Interface Unit
32 bit Address Bus
I-Cache (8KB)
Brach Target Buffer
Control Unit
Prefetch Buffer
Fetch and Decode Unit
Control Bus 64 bit Data Bus
D-Cache (8KB) TLB TLB
Microcode
ROM
Clock
Multiplier
Dual Pipeline
Execution Unit
U-Pipeline V-Pipeline
ALU ALU
Registers
Floating Point
Unit
Advanced
Programmable
Interrupt
Controller
•11
Sisteme cu Microprocesoare, 2013-2014, sem. II
21
Generatia Pentium
• Pentium Pro (1995)
• Microprocesor optimizat pentru instructiuni pe 32-biti; 64-biti magistrala de date; configurabil la 36-biti magistrala de adrese.
• Memorie principala configurabila: 4GB sau 64GB.• Aplicatii: servere de date
Co-Processor
16K
L1
cache
memory 66MHz
Int CPU1
Pentium Pro
Int CPU2
Int CPU3
256K
L2
cache
Sisteme cu Microprocesoare, 2013-2014, sem. II
22
Generatia Pentium Pentium PRO
Diagrama bloc functionala a Pentium PRO
•12
Sisteme cu Microprocesoare, 2013-2014, sem. II
23
Generatia Pentium
Pentium PRO –Executia out-of-order a instructiunilor – Executie dinamica ce
incorporeaza urmatoarele concepte:
• predictia ramurilor de program, • analiza fluxului de date dinamic, • executie speculativa
Sisteme cu Microprocesoare, 2013-2014, sem. II
24
Generatia Pentium Pentium PRO
• Predictia ramurilor de program.. Permite procesorului sa decodifice instructiunile anticipat inaintea ramurilor de program astfel incat pipeline-ul de instructiuni sa se mentina plin. Unitatea de extragere/decodificare a instructiunilor foloseste un algoritm optimizat de predictie. Astfel directia fluxului de instructiuni este anticipata prin nivelurile multiple ale ramurilor sau apelurile de proceduri si reveniri.
•13
Sisteme cu Microprocesoare, 2013-2014, sem. II
25
Generatia Pentium Pentium PRO
• Analiza fluxului de date dinamic implica o analiza in timp real afluxului de date din procesor pentru a determina dependente dintredate si registre si pentru a detecta oportunitati pentru executia out-oforder.
• Unitatea de executie poate monitoriza simultan mai multeinstructiuni si poate executa acele instructiuni intr-o ordine astfelincat sa utilizeze in mod optim multiplele unitati de executie aleprocesorului. Se pastreaza in acelasi timp integritatea datelorasupra carora se opereaza.
• Aceasta executie mentine ocupate unitatile de executie chiar siatunci cand apar evenimente de tipul “lipsa din cache” saudependente de date intre instructiuni.
Sisteme cu Microprocesoare, 2013-2014, sem. II
26
Generatia Pentium Pentium PRO
Executie Speculativa. • Se refera la abilitatea procesorului de a executa instructiunile anticipat,
inaintea contorului program. Totusi rezultatele sunt oferite/predate in ordinea originala a fluxului de instructiuni.
•14
Sisteme cu Microprocesoare, 2013-2014, sem. II
27
Generatia Pentium
• Pentium II (1997)
• O noua directie pentru Intel - small circuit board;
• Microprocesor pe 32-biti (Pentium PRO cu extensie MMX); magistrala de date de 64-biti si magistrala de adrese de 36-biti.
• Memoria adresabila 64GB.
Co-Processor
32K
L1
cache
memory 66MHz Int CPU2
Pentium II
Int CPU3
Int CPU1
512K
L2
cache
133MHz
Module (small PCB)
Sisteme cu Microprocesoare, 2013-2014, sem. II
28
Generatia Pentium
• Pentium III: (1999)
• Microprocesor pe 32-biti; magistrala de date de 64-biti si magistrala de adrese de 36-biti.
• Memorie principala de 64GB.• Memorie cache nivel L1, separat pentru date si instructiuni 32KB (16KB
fiecare).
Co-Processor
16K
L1
cache
memory 133MHz
Int CPU1
Pentium III
Int CPU2
Int CPU3
256K
L2
cache
•15
Sisteme cu Microprocesoare, 2013-2014, sem. II
29
Pentium III
Sisteme cu Microprocesoare, 2013-2014, sem. II
30
Generatia Pentium
• Pentium IV si Core2: (2002)
• 2MB L3 cache (editie speciala) – pentru seturi mari de date ce pot fi memorate in aceasta memorie a procesorului.
• 512KB L2 cache;• L1 data cache (8 KB); L1 instruction cache insotit de Execution Trace Cache• 400 MHz system bus (quad pumping a 100MHz bus) (3.2 GB/sec).• Specializat pentru aplicatii: de streaming video, jocuri and DVD apps (144 noi instructiuni
SIMD).• Support for 200/266MHz DDR (Double Data Rate) SDRAM (Synchronous DRAM).
•16
Sisteme cu Microprocesoare, 2013-2014, sem. II
31
Introduction
Sisteme cu Microprocesoare, 2013-2014, sem. II
32
Microprocesoare 64-biti si multiple Core
• Noi versiuni de microprocesoare:
• Abilitatea de a adresa mai multa memorie - Microprocesoare cu 40 pini de adrese ce pot adresa 1 T (terabyte)
• Efectuarea operatiilor arimetice cu intregi pe 64-biti;• Itanium – microprocesor cu o noua arhitectura interna EPIC (Explicitly
Parallel Instruction Computing) pe 64 biti cu un nivel ridicat de paralelism.
•17
Sisteme cu Microprocesoare, 2013-2014, sem. II
33
Viitorul microprocesoarelor!
• Tehnologie Hyper-threading – prelucrare paralela fara a necesita scrierea vreunui program special;
• Noi arhitecturi de microprocesoare - EPIC (Explicitly Parallel Instruction Computing ) – Itanium –magistrala de date de 128-biti; 128 registre generale.
• Memorii rapide si de capacitati mari (memorii SRAM) • Memorii flash cu viteza de scriere comparabila ce cea
a hard-diskului.