+ All Categories
Home > Documents > 1 - Introducere in Arhitectura Calculatoarelor

1 - Introducere in Arhitectura Calculatoarelor

Date post: 05-Apr-2018
Category:
Upload: sabina-macarie
View: 277 times
Download: 0 times
Share this document with a friend

of 16

Transcript
  • 7/31/2019 1 - Introducere in Arhitectura Calculatoarelor

    1/16

    Facultatea deInformatic - Iai

    ArhitecturaCalculatoarelor

    Curs pentru anul I InformaticFII - 2003

    [email protected] 2

    Autori ale c ror prezent ri publice au fost folosite pentru

    preg tirea acestei forme a cursului

    Sivarama Dandamundi Jerry Breecher Randy Katz Michel Allemand Daniel Amyot John Morris

    FII 3

    CUPRINS

    I. Introducere n Arhitecturai organizareacalculatorului

    II. Circuite combinaionale i funciibooleene

    III. Circuite secveniale i automate IV. Reprezentri interne

    FII 4

    Capitolul I

    INTRODUCERE

    FII 5

    &I.1. EVOLUIE

    FII 6

    Cnd au ap rutmainile de calcul?

    Dup fiecare redefinire a noiunii decalcul abac : adunri ro i din ate Leibniz (2)i Pascal (10): adunri,

    nmuliri Babbage : instruciuni din exterior, calcul ramificat von Neumann : program memorat; execuie n

    secven de instruciuni; ierarhii de memorii calculatoare paralele (de fapt, calcul paralel) calcul (atoare) probabilist (e), neuronal (e),

    evolutiv (e), cuantic (e) ncearc automatizarea calculului n nelesul

    respectiv

  • 7/31/2019 1 - Introducere in Arhitectura Calculatoarelor

    2/16

    FII 7

    Maini de calcul universale O main de calcul universal se poate

    comporta ca oricare main de calculparticular Exemple:

    Introducnd n calculator un program corect delucru cu

    matrici, calculatorul se va comporta ca o main decalcul cu matrici

    linii, unghiuri, forme main de proiectare grafic cuvinte, paragrafe, texte ma in de tehnoredactat

    FII 8

    Scurt istoriea ideilor

    inventarea scrierii poziionale a numerelor indieni, arabi

    inventarea logaritmilor John Napier of Edinburgh

    algebra boolean George Boole, 1854

    teorema de incompletitudine Kurt Gdel, 1935

    conceptul de calculator neumannian John von Neumann, 1946

    Toate sunt legate de calcul (ator ) n nelesul de ast zi

    FII 9

    Scurt istorie- invenii abstracte i concrete

    1850: George Boole inventeaz algebra boolean propoziii logice sunt transformate n simboli calcule cu propoziii logice, folosind reguli de tip matematic

    1938: Claude Shannon leag algebra boolean de circuite(comutatoare) n teza sa de dizerta ie

    1945: John von Neumann proiecteaz primul calculator cu programmemorat comutatoarele erau lmpi

    1946: ENIAC primul calculator electronic 18,000 de lmpi 5000 de adun ri, sute de nmuliri pe secund

    1947: Shockley, Brittaini Bardeen inventeaz tranzistorul permite integrarea mai multor circuite ntr-un modul deschide drumul electronicii moderne

    FII 10

    Scurt istoriea calculatoarelor

    1642- 1945 : Calculatoare mecanice Leibniz, Pascal, Babbage; Z1, Mark I

    1945- 1955 : Lmpi ENIAC, EDSAC, UNIVAC, IBM 70x

    1952: primul succes comercial 19 calculatoare IBMvdute

    1955- 1965 : Tranzistori PDP-1, IBM 7094, CDC 6600,

    1965- 1980 : Circuite integrate IBM 360, PDP-11, 4004, 8008, VAX

    VLSI, ULSI

    FII 11

    Scurt istoriea microprocesoarelor

    IBM-PC (8088) : 1980 Mac Plus (68000) : 1984 80486 : 1990 Pentium : 1994 Pentium II : 1997 Pentium III : 1999 Pentium IV : 2001

    FII 12

    &I.2.CALCULATOARE VON NEUMANN

  • 7/31/2019 1 - Introducere in Arhitectura Calculatoarelor

    3/16

    FII 13

    Calculatoare von Neumann program memorat

    memorie infinit (ideal), timp de acces egal realizat practic prin ierarhii de memorie la execuie, dup o instruciune i urmeaz

    instruciunea memorat imediat dup ea (regula) eventual instruciunea indicat de i (dac i este

    instruciune de control ) adresa instruciunii urmtoare se afl ntr - un

    registru PC n fiecare moment, o singur instruciune este

    ncrcat pentru execu ieFII 14

    Calculatoare von Neumann

    Anterior: conceptul de automatizare a opera iilor luate

    separat (Pascal, Leibniz) conceptul de program exterior (Babbage) conceptul de calcul ramificat / control

    Conceptul de program memorat John von Neumann e.a. (1946) Concept arhitectural fundamental -

    procesoarele moderne

    FII 15

    Calculatoare von Neumann Programul i datele- stocate n (aceea i)

    memorie ideal: infinit, omogen (locaii la fel de rapid accesabile) practic: o ierarhie de memorii fiecare fiind omogen

    Program counter (PC) indic locul din memorieal instruciunii de executat

    coninutul PC este actualizat la execu ia fiecreiinstruciuni

    o dat sau de dou ori Instruciunile programului sunt aduse pe rnd

    din locaii de memorie n procesor regula: locaii succesive incrementare PC excepia: instruciuni de salt ordine fizic i ordine logic

    FII 16

    Arhitecturaunui sistem de calcul

    LIMBAJ MA IN

    programe utilizator

    sistem deoperarecompilatoare

    procesor-memorie intr ri / ieiri

    proiectare digital

    circuite

    FII 17

    Componentele hardware ale unuicalculator

    Control

    Calea de date

    Memorie

    Procesor

    Intr ri (Input)

    Ie iri (Output)

    FII 18

    Organizarea unui calculator

    Memoriecentral

    Cache N2

    Cache N1

    Controler Controler Controler

    Magistrala de intr ri/ie iri

    Adaptor

    Magistrala sistem

    CPUProcesor

    Reea

  • 7/31/2019 1 - Introducere in Arhitectura Calculatoarelor

    4/16

    FII 19

    &I.3. LEGI EMPIRICE

    FII 20

    Legi empirice Legi ale oricrei tiine depind ntr - un fel sau

    altul de experiment sau de observa ii n lumeaconcret unele tiine sunt sau au capitole preponderent

    empirice (medicina) Repetabilitatea , inerent noiunii de

    experiment, duce la ideea de legi empirice :adevruri valabile de cele mai multe ori,conform observaiilor

    Formulate n Informatic nc de la nceputuri inginerie

    FII 21

    Legi empirice n informatic Exist legi empirice aplicabile hard-ului

    sau soft-ului: legea 90:10 (Donald Knuth): 90% din timpul

    de execu ie al unui program, este utilizatpentru 10% din instruciuni;

    legea lui Amdahl: eficiena maxim n mbuntirea unui sistem (concret sauabstract) se atinge dac se optimizeaz subsistemul cel mai folosit

    legile localizrii spaial, temporal.

    FII 22

    Legea lui Amdahl mbuntirea unui sistem trebuie f cut n

    partea cel mai frecvent folosit.

    Pentru creteri semnificative, trebuie caa i f a s fie ct mai mari. Exemplu : Dac procesorul lucreaz 50% din timp

    i devine de dou ori mai rapid, atunci A = 4/3. Observa ie. Sumatorul va fi cel mai intens

    mbuntit.

    af

    )f 1(

    1)f ,a(A

    aa

    a

    FII 23

    Legile localizrii(pentru instruciuni) Localizare spaial:

    dac la un moment dat se execut oinstruciune i, atunci e foarte probabil ca lamomente apropiate s se execute

    instruciuni din apropierea luii. spa iul de memorie, n care se afl instruciunile. Localizare temporal:

    dac la un moment dat se execut instruciunea de la adresa i, atunci lamomente apropiate se execut instruciunea de la aceea i adres

    foarte probabil.FII 24

    Ordine fizic i ordine logic Instruciunile de executat se afl n

    memorie ntr-o anumit ordine: ordineafizic.

    Ele se citesc din memorie i se execut regula: n ordinea n care sunt memorate excepia: srind peste un numr de instruciuni

    Rezult ordinea logic a instruciunilor n ordinea logic la o anumit rulare, fiecare

    instruciune poate s apar de 0, 1, 2, ori Legile localizrii indic un tip esen ial de

    relaie ntre ordinea fizic i ordinea logic

  • 7/31/2019 1 - Introducere in Arhitectura Calculatoarelor

    5/16

    FII 25

    Legile localizrii: n fiecare interval micde timp, programul utilizeaz o mic por iune din spaiul de adrese

    Valabil pentru instruciuni ca i pentru date Temporal: iteraii, reutilizri Spa ial: ordinea fizic; tablouri de date

    De mai bine de 20 de ani, soluiilehardware se bazeaz pe legile localitiipentru a c tiga vitez

    Un exemplu: ierarhia de memorii

    FII 26

    &I.4. IERARHIA DE MEMORII

    FII 27

    Ierarhia de memorii Soluioneaz dou probleme:1. Programele foarte mari nu ncap n

    memoria principalNivelul inferior al ierarhiei (memoriasecundar )

    2. Necesitatea cre terii vitezei de execuiea programelor

    Nivel superior al ierarhiei (memoria cache)

    FII 28

    Ierarhia de memorii Niveluri:

    1. regitrii-generali procesor ( 1/4 Ko)2. memoria cache ( 1 Mo)3. memoria RAM( 4 Go)4. memoria secundar disc ( 1 To)

    Preul pe bit scade pe msura dep rtrii de procesor. Timp de comunicare i capacitate de

    memorare foarte mici pe primele dou niveluri corespunznd ferestrelor din legile localizrii

    dar foarte mari pe ultimele permind memorarea programelor foarte mari

    29

    Nivelurile ierarhiei de memorii

    Regi trii CPU4-64 octe i1 ns

    Memorie CacheNivel 1:

  • 7/31/2019 1 - Introducere in Arhitectura Calculatoarelor

    6/16

    FII 31

    &I.5.

    ARHITECTURACALCULATORULUI:

    VIZIUNI POSIBILE

    FII 32

    Arhitectura calculatoarelor (Computer Architecture)

    Ce este arhitectura calculatoarelor?

    Arhitecturacalculatoarelor

    Arhitectura setuluide instruc iuni (ISA)

    +organizarea ma inii

    =

    Arhitectura setuluide instruc iuni

    =

    Viziuneaprogramatoruluiasupra ma inii

    FII 33

    &I.5.1.

    PROGRAMATORI UTILIZATOR

    FII 34

    Viziunea utilizatorului

    Sistemulhardware

    FII 35

    Viziunea programatorului Depinde de tipuli nivelul limbajului utilizat O ierarhie a limbajelor:

    Limbajul main Limbajul de asamblare creterea

    nivelului Limbaje de nivel nalt de abstracie Programe- aplicaii

    Independente de ma in: Limbaje de nivel nalt / programe- aplicaii

    Specifice mainii: Limbajele main i de asamblare

    FII 36

    Specificefiecreimaini

    Independentede main

    Limbaje denivel sczut

    Viziunea programatorului

  • 7/31/2019 1 - Introducere in Arhitectura Calculatoarelor

    7/16

    FII 37

    Viziunea programatorului Limbajul main

    Caracteristic fiecrui procesor

    Const din cuvinte peste alfabetul {0, 1}1111 1111 0000 0110 0000 1010 0000 0000

    Limbajul de asamblare Nivel ceva mai nalt Mai apropiat de modul de nelegere al omului Coresponden 1- la- 1cu majoritatea

    instruciunilor din limbajul maininc count

    FII 38

    Comparaie

    Limbaj de asamblare Limbaj main

    (Assembly Language) (Machine Language ) n hexazecimal

    inc result FF060A00 mov cl_size,45 C7060C002D00

    and mask,128 80260E0080add marks,10 83060F000A

    FII 39

    Viziunea programatorului

    Asambloarele (assemblers) traduc dinlimbaj de asamblare n limbaj main

    Dual: dez-asamblare

    Compilatoarele traduc din limbaje denivel nalt n limbaj main Direct sau Indirect, via limbaj de asamblare

    interpretoare

    FII 40

    Viziunea programatorului

    Assembler

    Compilator

    FII 41

    Viziunea programatorului Limbaj de nivel nalt n C:result =

    count1 + count2 + count3 + count4

    Limbaj de nivel jos n limbaj de asamblare Pentium: mov AX,count1

    add AX,count2add AX,count3add AX,count4

    mov result,AXFII 42

    Niveluri de limbaje

    Unele instruciuni simple de nivel nalt potfi exprimate printr-o singur instruciune nlimbaj de asamblare:

    Limbaj de asamblare Cinc result result++;

    mov size,45 size = 45;

    and mask1,128 mask1 &= 128;

    add marks,10 marks += 10;

  • 7/31/2019 1 - Introducere in Arhitectura Calculatoarelor

    8/16

    FII 43

    Niveluri de limbaje Cea mai frecvent situaie este cea n care o

    instruciune de nivel nalt este echivalent cu osecven de instruciuni n limbaj de asamblare:

    C Limbaj de asamblare

    size = value; mov AX,value mov size,AX

    sum += x + y + z; mov AX,sum

    add AX,xadd AX,yadd AX,z

    mov sum,AXFII 44

    Viziunea programatorului Arhitectura setului de instruciuni

    (Instruction set architecture - ISA) Specific funcionarea unui procesor Definete nivelul logic al procesorului

    O ISA poate fi implementat fizic ndiverse feluri, care sunt identice la nivel logic, dar pot diferi ca

    performan (vitez) pre

    FII 45

    Viziunea programatorului:avantajele limbajelor de nivel nalt

    Dezvoltarea de programe este mai rapid Instruciuni de nivel nalt(mai puine instruciuni de scris)

    ntreinerea programelor este mai u oar Aceleai motive ca mai sus

    Programele sunt portabile Conin puine detalii dependente de ma in

    Se pot folosi cu mici modificri sau chiar f r pe diversetipuri de maini

    Traducerea n limbajul-main int urmeaz s fief cut automat de un compilator specificcalculatorului

    Programele n limbaj de asamblare nu sunt portabileFII 46

    Viziunea programatorului:La ce ajut programarea n limbaj de asamblare?

    Dou mari avantaje: eficien

    Spaiu cod compact, localitate i din limbaj de nivel nalt se ajunge la programe n limbaj-

    main, dar compactitate mai mic Timp

    Legile localitii cu mai puine excepii, deci execuie mairapid (mai puine eecuri)

    accesibilitate la resursele hardware ale sistemului deoarece specificitile mainii sunt luate n considerare

    FII 47

    &I.5.2.

    ARHITECTI IMPLEMENTATOR

    FII 48

    Viziunea arhitectului Proiectarea la nivel nalt

    ca i arhitectul unei cldiri. Folosete blocuri de construcie de nivel nalt, pe

    care nu le detaliaz pn la ultimul nivel d.e., Unitatea Aritmetic i Logic (UAL)

    Vede trei mari componente: Procesorul Memoria Dispozitivele de intrare ieire (I/O devices)

    Legate prin interconexiuni (magistrala)

  • 7/31/2019 1 - Introducere in Arhitectura Calculatoarelor

    9/16

    FII 49

    Viziunea arhitectului

    Intr ri/Ieiri

    UCP Memorieinterconectare

    FII 50

    Input/Output

    CPU MemorieMagistrala de date

    Magistrala de adrese

    Magistrala de control

    Viziunea arhitectului

    FII 51

    Viziunea implementatorului De la proiectul arhitectului coboar la

    nivelul por ilor logice digitale / al circuitelor Exemplu: Procesorul const din:

    Unitatea de control Calea de date (Datapath)

    UAL Regitri

    Implementarea: proiectarea acestor componente (de nivel mai jos).

    FII 52

    Procesor

    Regitrii ALU

    Unitate decontrol

    Calea dedate

    Viziunea implementatorului

    FII 53

    Bus C Bus A

    Regitrii de interfa cu memoria

    PCIR

    MARMDR

    Magistralasistem

    Regitrii generali

    Bus B

    UALControl UAL A B

    C

    Viziunea implementatorului

    FII 54

    Viziunea implementatorului

    MUX

    I0I1I2I3

    S1 S0

    O

    F1 F0

    F

    Sumator Sum

    Cout

    ABCin

    B Cin A

    F0 Cout

  • 7/31/2019 1 - Introducere in Arhitectura Calculatoarelor

    10/16

    FII 55

    &I.6.

    SCURT TRECERE N REVIST A ORGANIZ RII

    CALCULATORULUI

    FII 56

    &I.6.1.PROCESORUL

    FII 57

    ncrcareainstruciunii

    Decodificareainstruciunii

    ncrcareaoperandului

    Executareainstruciunii

    Scrierearezultatului . . .

    II ID OI IE R

    Ciclul de execuie

    Faza de execu ie a instruciunii

    Procesorul Ciclu de execuie

    Fetch (cutare i ncrcare) Decodificare Execuie

    Arhitectura vonNeumann Modelul programului memorat

    Nici o deosebire la nivel fizic ntredatele de prelucrati instruciunile care leprelucreaz

    Deosebirile apar la execuie Instruciunilese execut secvenial

    FII 58

    Procesorul Pipelining : descompunerea n mai mul i pai a

    execuiei fiecrei instruciuni Execuie simultan, pe pa i, a mai multor instruciuni

    succesive decalate Crete numrul de instruciuni executate n unitatea de timp

    timp1 2 3 4 5 6 7 8 9 10

    I1 I2 I3 I4 I5 I6 ...S2:IDI1 I2 I3 I4 I5 I6 ...S1:II

    I1 I2 I3 I4 I5 I6 ...S3:OII1 I2 I3 I4 I5 I6 ...S4:IE

    I1 I2 I3 I4 I5 I6 ...S5:R

    Stadiu

    FII 59

    Procesorul

    Alt mod de a reprezenta execu ia n pipeline:

    timp1 2 3 4 5 6 7 8 9 10

    II ID OI IE RI1

    I2 II ID OI IE R

    I3 II ID OI IE R

    I4 II ID OI IE RI5 II ID OI IE R

    Instruciune

    FII 60

    Procesorul - Arhitecturi RISC/CISC Reduced Instruction Set Computer

    Are instruciunimain simple Instruciunile mai complicate se obin din cele simple ca

    secven e Operanzii n regitrii procesorului

    nu nmemorie Proiectarea se simplific

    d.e., instruciunile au lungimi fixe Complex Instruction Set Computer

    Folosete instruciuni complexe Operanzii pot fi n regitrii procesorului sau n memorie

    Lungimea instruciunilor nu este fix De obicei se folosete microprogramarea

    o instruc iune n limbaj main devine un program scriscu instruciunii mai simple

    abia acestea din urm sunt executate prin construc ie(cablate ) i nu ca un program

  • 7/31/2019 1 - Introducere in Arhitectura Calculatoarelor

    11/16

    FII 61

    Procesorul

    Implementarea CISC Implementarea RISC

    FII 62

    Procesorul Microprogramare: dac apar modificri la nivelul

    ISA, acestea se pot implementa schimbnd doar microprogramul (nu circuitele)

    FII 63

    &I.6.2.

    MEMORIA

    FII 64

    Memoria ir ordonat de octe i (nivel logic)

    Fiecare octet are un predecesor (cu excep iaprimului)i un succesor (cu excep ia ultimului)

    Nivel fizic: matrice de matrici; piste concentrice

    Adresa absolut a unui octet: numrulsu de ordine din ir memorie adresabil la nivel de octet

    fiecare octet are o adres unic numerotarea ncepe de la 0 adresa absolut indic poziia fa de primul

    octet din memorie

    FII 65

    Alte tipuri de adrese Adresa relativ a unui octet: indic poziia sa

    fa de un octet de referin , altul dect primuloctet din memorie

    Adresa absolut a octetului de referin se nume te adres de baz

    De regul, de la adresa de baz ncepe zona rezervat programului / datelor din care face parte octetul indicat prinadres relativ

    Adres simbolic : identificator alfanumeric(nume) ataat adresei relative a unui octet

    Exemplu: numele variabilelor Coresponden a adrese simbolice adrese relative este

    f cut de compilator, printr-o tabel

    FII 66

    Msuri ale performanei memoriei

    Timpul de acces : timpul dintre cerereiterminarea opera iei asupra cuvntuluisolicitat

    Ciclu : timpul minim dintre dou cererisuccesive

  • 7/31/2019 1 - Introducere in Arhitectura Calculatoarelor

    12/16

    FII 67

    Memoria principal este de tip DRAM Dynamic Random Access Memory Dinamic: necesit remprosptare periodic (refresh)

    La fiecare 8 milisecunde Adresele sunt constituite din 2 jumti

    memoria ca matrice bidimensional RAS (Row Access Strobe) CAS (Column Access Strobe)

    Pentru memoria cache se utilizeaz SRAM Static Random Access Memory Nu necesit refresh

    6 tranzistori / bit fa de 1 tranzistor /bit; Dimensiunea fizic crete de 10 ori

    Adresele nu sunt divizate n cele dou jumti

    Memorii DRAMi SRAM

    FII 68

    Spa iul adreselor de memorie Element esen ial al arhitecturii unui

    calculator Dimensiunea sa este strns legat decapacitatea magistralei de adrese

    La Pentium, capacitatea busului de adreseeste de 32 de bi i Spa iul de adrese 4GB (232)

    Itanium - cu bus de adrese tot de 32 bi i Spa iul de adrese peste 232 octei.

    FII 69

    Memoria adrese absolute

    FFFFFFFFFFFFFFFEFFFFFFFD

    000000000000000100000002

    012

    232-1

    Adresa(n hexa)

    Adresa (nzecimal)

    FII 70

    Memoria Unitatea de memorie comunicare cu exteriorul

    Adresare Date Semnale de control

    Read Write

    Unitate dememorie

    Date Adresa

    ReadWrite

    FII 71

    Ciclul citire memorie (Read) activitatea procesorului

    1. Aducerea adresei de citire pe busul de adrese2. Emiterea semnalului de control citire memorie3. Ateptare pn cnd memoria gse te data de

    citit E nevoie de starea de a

    teptare (wait state )

    dac memoria utilizat este nceat 4. Citirea datei de pe busul de date5. Inactivarea semnalului de control citire memorie

    Pentium: o citire necesit trei cicluri de ceas (tacte) Clock 1: paii 1i 2 Clock 2: pasul 3 Clock 3 : paii 4i 5.

    FII 72

    Ciclul scriere memorie (Write) activitatea procesorului

    1. Aducerea adresei de scriere pe busul de adrese2. Activarea semnalului de control scriere memorie3. Aducerea datei de scris pe busul de date4. Ateptare pn cnd memoria efectueaz scrierea

    starea de a teptare (wait state ) dac memoriaeste nceat

    5. Inactivarea semnalului de control scrierememorie.

    La Pentium, o scriere necesit trei cicluri de ceas Clock 1: paii 1i 2 Clock 2: pasul 3 Clock 3 : paii 4i 5

  • 7/31/2019 1 - Introducere in Arhitectura Calculatoarelor

    13/16

    FII 73

    Ordinea octeilor

    1 0 1 1 0 1 0 0 1 0 0 1 1 1 0 0 1 0 1 1 0 1 0 1 0 0 0 0 1 0 0 1

    Bitul cel maisemnificativ

    Bitul cel maipuin

    semnificativ

    a) date pe 32 de bi i

    0 0 0 0 1 0 0 11 0 1 1 0 1 011 0 0 1 1 1 0 01 0 1 1 0 1 0 0

    . . .

    . . .

    1000

    1001

    1002

    1003

    b) Ordinea little-endian

    Adresa

    1 0 1 1 0 1 0 01 0 0 1 1 10 01 0 1 1 0 1 0 10 0 0 0 1 00 1

    . . .

    . . .

    1000

    1001

    1002

    1003

    c) Ordinea big-endian

    Adresa

    FII 74

    Ordinea octeilor Adresa de nceput a unei date memorate

    pe un numr de octei egal cu un multiplude 4 nu depinde de little / big - endian Exemplul anterior: 100 Dar ordinea n care se citete (MSB etc. sau

    LSB etc.), depinde de aceast convenie Little-endian - folosit la Pentium Big-endian - implicit folosit la PowerPC Procesoarele moderne permit

    configurarea

    FII 75

    Probleme la proiectare TIMP: Memorii ncete

    Problema: diferen mare de vitez ntre procesor imemorie

    f cnd procesorul s atepte cea mai mare parte a timpuluiSoluie: Memoria cache (Cache memory)

    Se folosete o mic memorie rapid Memoria nceat pare a fi devenit rapid Are efect datorit legilor localitii

    SPA IU: Limitri de capacitate Cantitate limitat de memorie fizic (unitatea de

    memorie) Tehnici de refolosire a zonelor de memorie prin suprapunere

    n timpul rulrii programului gestionate de programator

    Memoria virtual Automatizeaz gestionarea suprapunerilor Aducei alte ctiguri FII 76

    Folosirea memoriilor cache

    Magistrala sistem

    Prelucrareainstruciunii

    Aritmetica ntreag

    Aritmetica nvirgul mobil

    Cache pt.instruciuni

    Cache pt.date

    Unitatea de interfa cumagistrala

    FII 77

    Memoria virtual Un program se poate memora n zone

    necontigue de unde se aduc n fiecare moment doar

    instruciunile / datele necesare n acelmoment (pagini) Devin posibile spaii logice de adrese

    (virtuale) orict de mari Permite multiprogramarea pe scar mai

    mare.

    FII 78

    Comunicare n mecanismul dememorie virtual

    UCP Cache Memorieprincipal

    Translare

    adrese Adres virual

    Adres fizic

    Eec

    DateSucces

    Regitri Cache Memorieprincipal

    Frame(fizic)

    Disc

    Pagin(logic)

  • 7/31/2019 1 - Introducere in Arhitectura Calculatoarelor

    14/16

    FII 79

    Proiecia memoriei virtualepe memoria fizic

    Cores-

    pondena

    Memoria virtual

    Memoria fizic

    FII 80

    &I.6.3.

    INTR RI - IEIRI

    FII 81

    Intr ri ieiri (Input/Output)

    Perifericele de intrare ieire (I/O devices) auinterfaa gestionat de (cte) un I/O controller

    Gestioneaz detalii legate de opera iile de nivel jos (periferic)

    FII 82

    Intr ri - ieiri Mai multe feluri de a vedea I/O

    I/O Proiectat pe memorie (memory-mapped I/O) Citirile / scrierile sunt vzute ca i cnd s-ar face din / n

    memorie Aceleai semnale de control ca pentru citire/scriere din/n

    memorie Aa fac cele mai multe procesoare

    I/O izolate Spaiul de adrese pentru locaiile I/O difer de cel al

    memoriei Semnale de control R/W diferite de ale memoriei Pentium folosete I/O izolate

    dar i I/O proiectate pe memorie

    FII 83

    Comunicare cu perifericele

    Dispozitiv I/O

    Controller I/O

    Date

    Stare

    Comanda

    Magistral de adrese

    Magistral de date

    Magistral de control M a g i s t r a l a s i s t e m

    FII 84

    Modaliti de transmitere date I/O Intr ri ieiri programate (programmed I/O)

    Programul folosete o bucl busy-wait Se aplic transferurilor pentru care se tie de la nceput

    momentul cnd vor aprea

    Acces direct la memorie (Direct Memory Access -DMA) Un controller special (DMA controller) efectueaz

    transferurile I/O gestionate prin ntreruperi (Interrupt-driven I/O)

    ntreruperile sunt folosite pentru a iniia i / sau terminatransferuri de date

    Tehnic extrem de eficient Utilizat pentru transferuri despre care nu se tie de la nceput cnd

    vor aprea

  • 7/31/2019 1 - Introducere in Arhitectura Calculatoarelor

    15/16

    FII 85

    Interconexiuni Componentele unui sistem de calcul sunt

    interconectate prin magistrale (bus-uri ) Bus: mai multe fire pentru comunicaii de date

    La diverse niveluri, se folosesc mai multe bus-uri Magistrale on-chip

    Interconecteaz UALi regitrii Magistralele A, B,i C din exemplul de la pag. 20

    Exist bus de date i bus de adrese pentru leg turi cu memoriacache din chip

    Magistrale interne PCI, AGP, PCMCIA

    Magistrale externe Seriale, paralele, USB, IEEE 1394 (FireWire)

    Conectori, porturiFII 86

    &I.7.

    O PERSPECTIV ISTORIC

    FII 87

    Pre- genera ii Difference engine a lui Charles Babbage

    Generaia tuburilor cu vid Anii 1940 - 1950

    Generaia tranzistorilor Aproximativ anii 1950 - 1960

    Generaia circuitelor integrate 1960 - 1970

    Generaia VLSI De la mijlocul anilor 70 ULSI etc. FII 88

    Evoluia tehnologic Densitatea tranzistorilor

    Pn prin 1990, se dubla la fiecare 1824 luni De atunci, dublare la fiecare 2 ani i jumtate

    Densitatea memoriei Pn n 1990, quadruplare la fiecare 3 ani De atunci, se ntmpl la fiecare 5 ani

    Capacitile diverselor tipuri de discuri La 3.5 La 2.5 La 1.8 (e.g., periferice portabile USB)

    FII 89

    Evoluia tehnologic: integrare

    FII 90

    Evoluia tehnologic (memorie)

  • 7/31/2019 1 - Introducere in Arhitectura Calculatoarelor

    16/16

    FII 91

    Evoluia tehnologic (discuri)

    FII 92

    Submultipli;scara binar a multiplilor

    -10 -12p (pico)

    -10 -9n (nano)-10 -6 (micro)-10 -3m (mili)

    1 (=2 0)1 (=10 0)Unitatea

    250(10 15)P (peta)240(10 12)T (tera)230(10 9)G (giga)220(10 6)M (mega)210(10 3)K (kilo)

    Binar Zecimal(sub)multiplu


Recommended