pantilimon alin xi-b.ppt
TRANSCRIPT
-
Sisteme cu microprocesoareMicroprocesoare
-
MicroprocesoareDefinitia 1:Circuit VLSI care incorporeaza o unitate centrala de executie (UCP)Definitia 2:Circuit integrat care incorporeaza:una sau mai multe unitati centrale de prelucrare Multiprocesoare simetriceMultiprocesoare asimetriceMemorie cacheAlte componente: controlor de intreruperi, controlor de magistrala, unitate de management a memoriei
-
Microprocesoare - Aparitia primului microprocesor:Firma Intel, I4004 procesor pe 4 bitiPrimul procesor de succes:Intel I8080 procesor pe 8 bitiPrimul procesor pe 16 bitiIntel I8086 Primul procesor pe 32 bitiIntel I80386Procesor cu arhitectura superscalaraPentium ProProcesor pe 64 biti, arhitectura multi-corePentium IV, dual core, Core Duo
-
Componentele unui microprocesorComponente traditionale:Unitatea de comanda (UC)Unitatea aritmetico-logica (UAL)Registre generale si speciale (RG, RS)Componente suplimentare:Memorie cache (Cache)Coprocesor matematic (CoP)Unitatea de management a memoriei (UMM)Controlor de intreruperi
-
Semnalele unui microprocesor magistrala sistemului
EU
BIU
AH
AL
AX
BH
BL
BX
CH
CL
CX
CS
DH
DL
DX
DS
SI
ES
DI
SS
BP
IP
SP
IR
C-da
mag.
Reg. temp
ext.
Unitatea
UAL
de c-da
1,2,3,4, ..
Coada de instruciuni
Reg.de stare
Figura 6-3 Structura interna a procesoarelor I8086 i I8088
-
Semnalele tipice ale unui microprocesor
Unitatea de adresare
Unitatea de interfaare
Amplif. date
Magistrala
Amplif adrese
extern
Control mag.
Unitatea de execuie
Unitatea de instruciuni
Coada
Decod.
de instr
instr.
Figura 6-5 Schema bloc a procesorului I80286
-
Semnalele unui microprocesorSemnalele de adresa: A0-AnFolosite pentru indicarea unei locatii de memorie sau port (registru) dintr-o interfataSemnale generate de procesor catre celelalte componente ale sistemuluiNumarul de linii de adresa determina spatiul maxim de adresare al procesoruluiEx: 20 linii=> 1MB 32 linii =>4GBSemnale de date: D0-DmSemnale bidirectionale folosite pentru transferul de instructiuni si date intre procesor si celelalte componente ale sistemuluiNumarul de linii de date este in acord cu structura procesoruluiNumarul de linii de date determina latimea maxima a datelor transferate pe magistralaEx: 16, 32, 64 linii
-
Semnalele unui procesorSemnale de comanda si controlSemnale de comanda:MRDC\, MWTC\, IORC\, IOW\, INTA\Semnale de control: ALE, DENSemnale de intrerupere: INTR, NMISemnale de ceas: CLK, PCLKSemnale de alimentare: GND +5V, 3,3V
-
Executia instructiunilorPasi:Citirea instructiuniiCitirea operanzilorExecutia operatieiSalvarea rezultatuluiPrivit din afara procesorului:Ciclu de citire instructiune din memorie -obligatoriuCiclu de citire operand/ operanzi - optionalCiclu de salvare a rezultatului optionalCiclu de transfer o operatie de transfer pe magistrala care implica:Procesorul si memoria sauProcesorul si o interfata de I/E Un ciclu se desfasoara pe durata unui numar de perioada de ceas (tacti)Un ciclu presupune o secventa de semnale pe magistrala (adrese, date comenzi)
-
Procesoarele familiei Intel x86I8086 i I8088
Unitatea de
Unitatea de
segmentare
paginare
Unitatea de
Unitatea de
execuie
interfaare
Unitatea de
Unitatea de
decodificare
prenc. instr.
Figura 6-7 Schema de principiu a procesorului I80386
-
I8086, I8088I8086 procesor pe 16 biti, 16 semnale de date, 20 semnale de adresa (spatiu de adresare 1MB)CI cu 40 de piniCircuite ajutatoare:8087 coprocesor matematic (v.flotanta)8288 controlor de magistrala88289 arbitror de magistrala Structura:EU Execution Unit unitatea de execuie, dedicat pentru execuia propriu-zisa a instruciunilorUC, UAL, registre generale, registru de stareBIU Basic Interface Unit - unitatea de interfaare a magistralei externe, care se ocup de transferul de informaii (date i instruciuni) ntre procesor i magistrala externRegistre speciale (segment, IP)Coada de instructiuni, interfata cu magistrala externa8088 identic cu 8086 dar cu 8 semnale de date pe magistrala externa
-
I80286Procesor pe 16 biti16 semnale de date, 24 semnale de adresa (spatiu de adresare 16MB)Moduri de lucru: real si protejat
Unitatea de
Unitatea de
segmentare
paginare
Procesor
v. fix
Unitate
Unitate
cache
interf.
Procesor
mag.
v. mobil
Decodificare
Prencrcare
instruciuni
instruciuni
Figura 6-8 Schema de principiu a procesorului I486
-
I80386Procesor pe 32 biti, 32 semnale de date, 32 semnale de adrese (spatiu de adresare 4GB)Registre generale extines la 32 biti2 registre segment suplimentareMod protejat perfectat
Unitatea de extragere i decodificare instruciuni
Unitatea de dispecerizare i execuie
Unitatea de retragere
Rezervor de instruciuni
Figura 6-9 Schema de principiu a arhitecturii P6
-
I80486Integreaza: procesor+coprocesor+MMUFaciliteaza utilizarea memoriei cachePerfectarea modului protejat
Magistrala sistem
L2 Cache
Unitatea de interfatare a magistralei (BIU)
L1 ICache
L1 DCache
Unitatea de extragere i decodificare instruciuni
Unitatea de dispecerizare i execuie
Unitatea de retragere
Rezervor de instruciuni
Figura6-10 Fluxul de informaii (instruciuni i date) n cadrul arhitecturii P6
-
PentiumDoua linii de procesare pipeline: U si VMagistrala externa de date pe 64 biti (desi este procesor pe 32 biti)Versiuni: Pentium arhitectura cu 2 linii pipelinePentium ProPentium II - arhitectura superscalara P6Pentium IIIPentium IV arhitectura NetBurst
-
Procesoarele PentiumPentium ProArhitectura superscalara P6Executie dinamica a instructiunilor:Analiza fluxurilor de datePredictia salturilor Executia speculativa a instructiunilor Pentium IITehnologia MMX:Componenta pt. date multimediaExecutie paralela tip SIMD57 instructiuni noi MMXPentium IIITehnologia SSE2Executie paralela SIMD pt. flotantPentru grafica 2D/3D
-
Arhitectura superscalara P63 unitati autonome Executie speculativa
De la BIU (Basic Interface Unit)
L1 Icache
Next_IP
Bloc de
Decodificator
memorare
de
adr de salt
instruciuni
(x3)
Secveniator
de microinstr.
Ctre rezervorul de
Alocator de
microinstruciuni
registre alias
Figura6-11 Unitatea de extragere i decodificare a instruciunilor
-
Arhitectura P6 - detalii
Staia de
rezervare
UE-MMX
UEF
Port 0
UEI
Rezervor de
UE-MMX
instruciuni
UES
Port 1
UEI
Port 2
UGA
citire
Port 3,4
UGA
scriere
Figura6-12 Unitatea de dispecerizare i execuie
-
Unitatea de citire si decodificare instructiuniCiteste si decodifica in avans instructiuniUnitate in-order3 instructiuni decodificate / ceasPredictia salturilorComponente:DecodificatorCircuit de generare adrese (next_IP)Bloc memorare adrese de saltSecventiator de microinstructiuniAlocator de registre Alias
DCache
Staia de
UIM
rezervare
FRR
Rezervorul de instruciuni
Figura6-13 Unitatea de retragere
-
Unitatea de dispecerizare si executieResponsabila pentru executia instructiunilorUnitate out-of-order7 unitati de executie + statie de rezervareUEI unitate de executie pt. intregiUEF unitate de executie pt. flotantMMX unitate de executie pentru date multimediaUGA unitate de generare adreseUGS unitate de generare salturi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
BCLK
Arbitrare
Cerere
Eroare
Spionare
Rspuns
Transfer
Figura 6-14 Tranzacii n regim concurent pe magistrala P6
-
Unitatea de retragereReface ordinea normala a instructiunilor (rezultatelor)Unitate in-orderComponente:UIM unitatea de interfaare a memorieiFRR fiierul de registre de retragere
-
Magistrala P6Elementele definitorii ale noului standard de magistral sunt:magistrala lucreaz n mod sincron , cu memorarea semnalelor pe frontul urctor al semnalului de ceastransferul de date se realizeaz pe baz de tranzacii, care se pot desfura n paralelexist suport pentru conectarea mai multor procesoare pe aceeai magistralsunt favorizate transferurile pe blocuri de dateexist implementate mecanisme de detecie i corecie a erorilorexista suport pentru verificarea i meninerea consistenei memoriilor cachese utilizeaz o tehnologie de transmitere a semnalelor care garanteaz nealterarea semnalelor chiar i la frecvene mari
-
Transferul pe magistrala P6Tranzactii paralele (pipeline)Faze:ArbitrareCerere de transferSpionareEroareRaspunsTransferTehnologie: GTL
-
Diagrama de tip pentru magistrala P6
-
Pentium IV Arhitectura NetBurst- adoptarea unei arhitecturi pipeline cu 20 de faze de procesare a instruciunilor, dublu fa de varianta P6- creterea de 4 ori a frecvenei magistralei sistem, care astfel ajunge la 400MHz; prin utilizarea tehnologiei "quad pump" se asigur o rat de transfer de 3,2Goctei/s - dublarea vitezei de execuie a UAL, ceea ce permite efectuarea a dou operaii aritmetice i logice simple pe fiecare perioad de ceas; de fapt unitatea aritmetico-logic lucreaz cu un semnal de ceas care are frecvena dubl fa de frecvena procesorului- utilizarea unei memorii cache de foarte mare vitez (eng. Advanced Transfer Cache), care la o frecven de 2GHz asigur o rat de transfer de 64Goctei/s- extinderea tehnologiei MMX (eng. SSE - Streaming SIMD Extension) prin adugarea a 144 instruciuni SIMD noi i extinderea limii datelor prelucrate la 128 bii (16 octei prelucrai n paralel)- mbuntirea cu 30% a ratei de predicie a salturilor n special datorit extinderii ferestrei de analiz; procesorul Pentium 4 menine n linia de execuie pn la 126 de instruciuni i utilizeaz 4Koctei pentru memorarea adreselor de salt (BTB - Branch Target Buffer)
-
Pentium IV
-
Pentium IVNoi tendinte:Tehnologia hyperthreadingTehnologia multi-coreArhitecura pe 64 biti