Sunteți pe pagina 1din 13

08.

Sumatorul serie
Considerând 2 numere binare A şi B, fără semn, fiecare pe n biţi:

sumarea lor se face cifră cu cifră (bit cu bit), similar cu adunarea în sistemul zecimal, începând cu biţii din
dreapta (LSB), menţinând cifra „unităţilor" din sumă ca rezultat şl propagând transportul (depăşirea) spre
rangul următor.
Propagarea transportului de la un rang la altul nu se poate face fără suma rea rangurilor anterioare. Sumarea
unui rang se face utilizând un sumator elementar. Tabelul de adevăr al acestuia şi schema logică sunt
prezentate în figura următoare.

Circuitul adună biţii de pe un rang şi transportul de rangul anterior şi furnizează suma şi transportul către
rangul următor. Pentru suma rea a două numere de mai mulţi biţi se poate folosi un singur sumator, care să
realizeze pe rând suma rea biţilor de pe fiecare rang. Succesiunea de adunări se va face secvenţial pe baza
unui semnal de tact, cîte o adunare la fiecare impuls de tact. în total adunarea va dura n perioade de tact
(nTCLK).

Sumator serie
9. Sumatorul paralel
Adunarea se poate face şi simultan, adică în paralel. Pentru aceasta este nevoie de n sumatoare care să
sumeze cele n perechi de biţi, iar transportul se va propaga de la un rang la altul. Schema de principiu a
acestui sumatoreste prezentată în figura de mai jos.
Circuitul conţine 3 regiştri de n biţi, în care se memorează numerele de adunat şi rezultatul, n sumatoare şi
un CBB pentru reţinerea depăşirii. Fiecare sumator primeşte, pe lângă cei 2 biţi de rangul corespunzător, şi
transportul de la rangul anterior t;. Pe lângă rezultatul S; fiecare sumator generează şi transportul t i+1 către
rangul următor. Primul sumator, cel de la rangul 0, poate fi un semisumator dacă nu există transport din
rangul precedent.

La prima vedere circuitul realizează sumarea într-o singură perioadă de tact, în timp ce sumatorul serie o
realizează în n perioade. în cazul cel mai defavorabil, în care toate transporturile sunt 1, propagarea
transportului de la primul etaj până la ultimul durează n timpi de propagare prin sumatoare (prin circa 3 porţi
pe sumator). în concluzie semnalul de tact trebuie să aibă o frecvenţă mai mică, pentru a da posibilitatea
tuturor etajelor să îşi stabilizeze ieşirile.

Limbaje).Calculatoarele moderne pot fi privite ca fiind structurate pe mai multe nivele (cel puţin 2, cel mult 6).

nivelul 0 este cel corespunzător structurii hardware primare (la nivel de tranzistor). Un grup de tranzistoare
alcătuieşte o poartă logică, structura diferind funcşie de tipul porţii. Deşi există circuite logice bazate pe
diferite tehnologii (tranzistoare TTL, ECL, CMOS), cea care este utilizată în construcţia calculatoarelor este
tehnologia CMOS. Aceasta s-a impus datorită consumului redus de arie pe chip cât şi al consumului de
putere.

Mai multe porţi formează circuite digitale complexe (Circuite Logice Combinaţionale: decodificate a re,
multiplexoare şi Circuite Logice Secvenţiale: Circuite Basculante Bistabile, regiştri, numărătoare) ce
alcătuiesc nivelul 1.
Configuraţii mai complexe bazate pe aceste circuite alcătuiesc nivelul 2: calea de date şl control. Acest nivel
este organizat în 3 blocuri principale: procesor, memorie şi periferice. Calea de date şi cea de control se
întind peste cele 3 blocuri, prima asigurând fluxul de date şi procesarea sa, iar a doua realizând controlul
secvenţial al acestuia.

Interfaţa între partea hardware şi cea software o constituie arhitectura setului de instrucţiuni.Setulde
instrucţiuni reprezintă o lista a tuturor instrucţiunilor pe care le poate executa un procesor. Este în
concordanţă cu tipurile de dater instrucţiunile, regiştrll, modurile de adresare, arhitectura memoriei, rutinele
de tratare a întreruperilor şi excepţiilor, şi intrările şi ieşirile standard. Arhitectura setului de instrucţiuni
conţine o specificaţie a codurilor operaţiilor, comenzile native implementate de o anume unitate de
procesare. Fiecare microprocesor are o foaie de catalog în care este detaliat şi prezentat setul de instrucţiuni
al acestuia.
Fiecare nivel reprezintă o abstractizare ce conţine diferite obiecte şi operaţii. Tipurile de date, operaţiile şi
facilităţile fiecărui nivel reprezintă arhitectura nivelului respectiv. Ea tratează acele aspecte care sunt vizibile
utilizatorului nivelului respectiv, ca de exemplu dimensiunea memoriei disponibile, adresa unul periferic.
12.Cele 5 principii care stau la baza modelului von Neumann a unui calculator numeric sunt
următoarele:
1) Informaţia in calculatorul digital este codificată binar, adică este reprezentată prin cifre binare
numite biţi (0 sau 1). O grupare de n biţi constituie un cuvânt. în funcţie de lungimea Iul n se pot defini
următoarele entităţi: n=8 biţi => octetul sau byte, n=16 biţi => semicuvântul sau 2 octeţi, n=32 biţi => cuvânt
sau 4 octeţi, n=64 biţi => dublucuvânt sau 8 octeţi. Un cuvânt poate reprezenta o dată (cuvânt dată) sau o
comandă (cuvânt de comandă sau Instrucţiune).
2) Diferenţierea dintre cuvântul dată şi cuvântul instrucţiune nu se face prin metoda de codificare ci
prin modul de utilizare (contextul de utilizare). Indiferent ce sunt, cuvintele din calculator (date sau
instrucţiuni) ele sunt doar grupuri de O şi 1 şi nu se pot distinge între ele. Ordinea de folosire a cuvintelor în
program face diferenţierea.
3) Cuvintele de tip dată şi instrucţiune se găsesc în locaţii de memorie care se identifică printr-un
număr de locaţie numit adresă. Flecare locaţie de memorie, poate memora o dată sau o comandă. Orice
operaţie de citire din memorie extrage un singur cuvânt din memorie, întrucât citirea din memorie nu e
distructivă se spune că se obţine o copie a cuvântului aflat în memorie la adresa srespectivă, conţinutul
locaţiei rămânând acelaşi.
4) Algoritmul în execuţie se reprezintă sub forma unei succesiuni de cuvinte de comandă (instrucţiuni).
Fiecare cuvânt de comandă sau instrucţiune decide natura operaţiei executate sau funcţia de executat
precum şi operanzii implicaţi în operaţie. Orice instrucţiune cuprinde 2 câmpuri numite codul operaţiei
(OPCODE) şi adresa având forma generală: C[n-1,0] A[m- 1,0], unde C este cuvântul de cod, iar A este
cuvântul de adresă. O instrucţiune poate avea şi mai multe câmpuri de adresă. Datorită faptului că o
instrucţiune are n biţi, ea poate codifica 2n funcţii distincte.Se pot accesa 2m adrese, deci tot atâţia operanzi.
Această valoare fixează şi spaţiul de adresare al calculatorului: 0...2m-i.
5) Efectuarea calculelor, corespunzătoare algoritmului problemei de rezolvat, este univoc determinată
de execuţia secvenţială a instrucţiunilor care constituie programul. Prima instrucţiune executată din program
corespunde adresei de start a programului. Adresa următoarei instrucţiuni este determinată în mod automat
de către CPU în timpul execuţiei instrucţiunii curente

14. Structura generală a unei UCP


Ca structură generală, un procesor cuprinde o cale de date (datapath - care conţine o unitate aritmetică şi
logică UAL şi un set de regiştrii folosiţi ca memorie temporară) şi o unitate de control. Conform modalităţii de
clasificare a circuitelor digitale în ordine, fiecare dintre cele două componente amintite se constituie ca un
automat. Structura procesorului, presupune o buclă de reacţie între cele două automate componente (ordin
2), deci procesorul este un automat de ordinul 3.
Calea de date conţine o Unitate Aritmetică şi Logică (UAL) ce efectuează operaţii cu datele de intrare
(operanzi) şi un set de regiştri pentru memorarea locală, temporară, a prelucrarea datelor. Mai poatec onţine
circuite necesare transferului de informaţie între regiştri şi cu exteriorul (circuite de decodificare, codificare,
multiplexare, comparare, circuite tampon, etc.). Regiştri) locali sunt de mare viteză şi se folosesc pentru
efectuarea operaţii aritmetice sau logice (reţinerea temporară a operanzilor pe durata efectuării operaţiilor
aritmetice sau logice şi respectiv a rezultatului).
Principalele operaţii realizate de Unitatea Aritmetică şi Logică (ALU) sunt:
- operaţii aritmetice şi logice cu operanzi pe n biţi. Numărul de biţi ai operanzilor este egal de obicei cu
numărul de biţi ai magistralei interne de date a procesorului, dar există şi excepţii de la aceasta regulă.
-furnizează indicaţii privind transportul, împrumutul, egalitatea cu zero, sau alte caracteristici privind
rezultatul operaţiilor efectuate, prin intermediul valorilor unor biţi numiţi indicatori de condiţii (fanioane -
flags).
"Intrare date" sunt liniile de introducere a datelor în calea de date din exteriorul UCP. Aceşti operanzi se
citesc ca şi cuvinte binare (n biţi) şi se stochează în regiştri interni. Rezultatul operaţiilor efectuate sau
conţinutul unor regiştri se poate furniza în exterior prin liniile notate "date ieşire".
Semnalele notate "comenzi interne", reprezintă comenzi către calea de date generate de unitatea de control.
Pentru a înţelege modul de funcţionare a unui procesor vom analiza o structură simplă de UCP, pe care să o
numim elementară. Schema de principiu este prezentată în figura următoare:
Calea de date conţine untatea aritmetică şi logică, registrul acumulator registrul B şi căile de transfer de
date. în plus pot exista şi registre de memorare temporară, registre folosite de procesor pentru operaţii
intermediare, dar inaccesibile prin program. UAL este un circuit corn bi naţional care efectuează operaţii
aritmetice sau logice cu operanzii de la intrare. Operaţia este controlată prin semnale interne de către
unitatea de control. Dacă operaţia de efectuat de către UAL este codificată pe 4 biţi, se pot selecta până la 16
operaţii elementare (adunare, complementare, ŞI logic, SAU, scădere, etc)
16Memoria ROM (Read Only Memory) este un circuit combinational care stochează permanent date
binare, iar această informaţie poate fi numai citită.

Liniile matricei sunt selectate cu ajutorul decodificatorului cu 7 intrări (DCD), iar coloanele cu ajutorul celor 8
multiplexoare (MUX) cu câte 3 intrări de selecţie.
Intrarea de selecţie CS (Chip Select), activă pe O logic, validează circuitul de memorie. Intrarea OE (Output
Enable), activă pe O logic, permite datelor să fie scoase la ieşirea circuitului. Cele două ieşiri au acelaşi rol
având acelaşi efect asupra circuitului. La CS se leagă semnalul de selecţie provenit din adresele superioare,
iar la OE se leagă semnalul RD. Semnalul de selecţie are şi rol de dezactivare a alimentării blocurilor
componente (linia punctată).

Unul din parametrii cei mai importanţi ai memoriei ROM este timpul de acces: intervalul de timp scurs din
momentul aplicării adresei pe intrările circuitului şi până ce datele memorate la adresa respectivă sunt
disponibile la ieşiri, în condiţiile în care semnalele CS şi OE sunt activate.
17.Tipuri de memorii ROM:
1.Memoriile ROM programate de către producător, după cerinţele utilizatorului, prin realizarea unor măşti de
programare specifice fiecărui set de circuite realizat.
Ele reprezintă soluţia finală, implementată în produse de cel puţin câteva sute de bucăţi (pentru a fi
economică).
Orice modificare ulterioara dorita presupune comanda unui nou set de memorii, realizate adecvat.
2.Memoriile PROM (Programmable Read Oniy Memories) sunt circuite de memorie a căror conţinut poate fi
programat o singură dată, de către utilizator.
După înscrierea informaţiei, aceasta nu mai poate fi ştearsă. Programarea acestora este realizată prin
distrugerea selectivă, conform informaţiei ce se memorează, a unor micro-fuzibile, prin aplicarea unor
tensiuni mai mari, de programare, pe biţii doriţi.
3.Memoriile EPROM (Electrically Programmable Read Only Memories) au posibilitatea de înscriere repetată a
conţinutului, ştergerea acestora făcându-se prin expunere la radiaţie ultravioletă şi este neselectivă.
în acest caz memoriile reţin Informaţia sub formă de sarcină într-o celulă MOSFET, putând fi ştearsă, prin
expunerea ariei (acesta este prevăzut cu o "fereastra" de cuarţ), la o sursă de radiaţi ultraviolete. După
ştergere, memoria poate fi rep rog ramată. Acest tip de memorii este utilizat cu precădere în etapa de
dezvoltare şi testare a sistemului sau a unei aplicaţii.

4.Memoriile EEPROM sau E2PROM (Electrically Erasable Read Only Memories) elimină dezavantajele
circuitelor EPROM: ştergerea întregului conţinut, timp de ştergere ridicat, necesitatea scoaterii circuitului din
circuit pentru ştergere. Din această categorie fac parte şl memoriile flash.
Ştergerea informaţiei din celule de memorare se realizează în cazul EEPROM prin aplicarea unor tensiuni de
comandă a ştergerii, selectiv, pentru o celulă sau un grup de celule.

18.Structura bloc a unei memorii RAM este asemănătoare cu cea a unei memorii ROM.
Apare în plus semnalul WE (WRIte Enable) care, odată ce este activat pe 0 logic, memorează datele de pe
intrările de date la adresa indicată de intrările de adresă.

Se poate vedea în figură că celula de memorie de un bit conţine un latch de tip D, iar memorarea datelor se
face pe palierul de 1 logic al tactului, adică atunci când sunt activate semnalele WR şi SEL (acesta fiind una
din ieşirile decodificatorului liniilor de adresă). Activarea semnalului WR este o consecinţă a activării
semnalelor de intrare WE şi "C3”.
19.Viteza de lucru a procesorului este superioară vitezei de lucru a memoriei RAM. După iniţierea unui
ciclu de acces la memorie, procesorul ar trebui să aştepte răspunsul acesteia.
Există memorii rapide, dar costul lor este ridicat. Din acest motiv se apelează la un compromis, memoria
fiind structurată pe nivele: o memorie de dimensiuni mai reduse dar rapidă (direct accesibilă procesorului) şi
o memorie de capacitate mai mare dar mal lentă.
s

Memorie Memorie
UCP RAM
A cache
. principală

Memoria RAM are capacitate mai mare, dar este mai lentă, în timp ce memoria cache este de dimensiune
mult mai mică, dar este foarte rapidă. Ea conţine copii ale unor informaţii (bucăţi) din memoria RAM.
Atunci când procesorul încearcă să citească un cuvânt din memorie se testează mai întâi dacă se află în
memoria cache. Dacă se găseşte în cache acesta este trimis procesorului, în caz contrar încărcându-se un
bloc din memoria RAM principală în memoria cache, iar apoi i cuvântul căutat este furnzat procesorului din
cache din blocul prospăt adus.

Timpul de acces al unul astfel de sistem de memorie depinde atât de vietezele celor 2 tipuri de memorie, dar
şi de probabilitatea ca un cuvânt să se găsească în memoria cache (rata de succes).Timpul mediu de acces
al sistemului de memorie este:

T -este timpul mediu de acces al sistemului RAM + cache


R este rata de succes
T este timpul de acces al memoriei cache
TRAM este timpul de acces al memoriei RAM

Se urmăreşte ca T~Tacces cache. Deoarece T«TRAM este nevoie ca rata de succes să fie cât mai apropiată de 1. S-a
demonstrat experimental că o dimensiune relativ redusă a memoriei cache. de 64 KB sau 128 KB, este
suficientă pentru a obţine o rată de succes de peste 0,75, indiferent de dimensiunea memoriei RAM
principale.
20. Memoria cache :corespondenta RAM cache..Viteza de lucru a procesorului este superioara
vitezei de lucru a memoriei RAM.Dupa initierea unui ciclu de acces la memorie , procesorul tre sa
astepte raspunsul acesteia. Exista memorii rapide, dar cu cost ridicat, de aceea se apeleaza la un
compromise, memoria fiind structurata pe nivele: o memorie de dimensiuni mai reduse , dar
rapida(direct accesibila procesorului)-Cache si o memorie de capacitate mai mare, dar lenta-RAM.
Memoria Cache contine copii de info din RAM.Daca procesorul incearca sa citeasca un cuvant, mai intai
se cauta in memoria cache, daca se afla, il trimite procesorului. In caz contrar, se incarca un bloc din
mem RAM in Cache , dupa care cuvantul cautat este furnizat procesorului din blocul recent
adaugat.///Principiul localitatii(intr un interval scurt de timp se acceseaza o zona restransa de memorie)
este cel pe care se bazeaza mem Cache . Adresarea unei locatii determina transferal unui bloc de octeti
din RAM in Cache, pt ca urmatoarea utilizare sa fie mai rapida.//Rularea unui program nu acceseaza
locatiile de memorie in mod aleatoriu. Daca a fost accesata o locatie, in momentele urmatoare e posibil
sa se acceseze una invecinata.Costul pe bit C=(Ccache*Dcache+Cram*Dram)/Dcache+Dram unde, C-
costul mediu pe bit, Ccache-cmb mem cache, Cram-cmb mem ram, Dcache-dimensiune mem cahe ,
Dram-dim mem RAM. Scopul:valoarea costului c sa fie apropiat de cea a mem ram.Ccache>>Cram,
Dcache<<Dram. Timpul de acces depinde de vitezele celor 2 tipuri de memorie , dar si de probabilitatea
ca un cuvant sa se afle in mem Cache.Timp mediu de acces al sist de memorie:T=Rsucces*Tacces cache
+(1-Rsucces)*Tram unde Rsucces-rata de success, Tacces cache –timp acces cache, Tram-timp acces
ram. Trebuie ca T sa fie aprox egal cu T acces cache. Deoarece T <<Tram, tre ca rata de success sa fie cat
mai apropiata de 1.

21.Map-area directa –cea mai simpla metoda. Un bloc se opoate gasi intr o singura linie din mem
Cache.//-cei 3 biti mai putin semnificativi identifica un cuvant. Ceilalti 13 semnificativi identifica un bloc
al mem principale.//-campul de 7 biti(linie) identifica nr blocului modulo 128. Blocurile 0,128..8064 se
gasesc pe linia 0, blocurile 127,255…8191 se vor gasi pe linia 127.//-campul de 6 biti(marcaj) identifica in
mod unic blocul din linie. Blocurile 0, 128, 256…8064 au marcaje 0,1,2…63.//Dezavantaj:locatia fix apt
fiecare bloc. Daca un program are acces in mod repetat la 2 blocuri diferite care sunt mapate in aceeasi
linie, at blocurile vor fi interschimbate continuu intre ele in cache, rezultand rata de success redusa.

22.Map-area asociativa –elimina dezavantajul maparii directe. Aici se foloseste un marcaj de 13 biti si
un nr de 3 biti pt cuvant. Un bloc din RAM se poate incarca in orice linie din Cache.//Pentru compararea
marcajului cu zona corespunzatoare din adresa de mem RAM este necesara o logica de comparare. Cu
cat marcajul e mai mare, cu atat e logica mai complicata.//Exista o flexibilitate in privinta inlocuirii
blocurilor din Cache cu cele din RAM.

23. Maparea asociativa pe seturi –compromis intre maparea directa si cea asociativa. Memoria
Cache este impartita in I seturi de cate J linii fiecare. K este nr setului. L=I*J;K=A|I). Cel mai utilizat este
folosirea a doua linii pe set.// Daca se incarca un bloc nou in mem Cache este necesar un algoritm care
sa selecteze blocul ce va fi inlocuit. Se folosesc 4 algoritmi: 1)LEAST RECENTLY USED:se inlocuieste blocul
de la a carui utilizare a trecut cel mai mult 2)FIRST IN/FIRST OUT: se inlocuieste blocul utilizat prima data
in Cache 3) LEAST FREQUENTLY USED: blocul utilizat cel mai putin in ultimul timp 4)RANDOM: se
inlocuiesc blocuri aleatoriu.// Inainte ca un bloc sa fie inlocuit , trebuie testat daca a fost modificat; daca
nu, se continua operatia prin suprascriere. Daca da, se cauta sa se inlocuiasca mai inatai in
RAM. //1)”Write-through”- toate operatiile se efectueaza si in RAM si in Cache//2)”Write-back”-
operatiile se efectueaza mai intai in Ccache si se seteaza un fanion. Blocul este inscris si in Ram doar
daca fanionul este setat.

24. Sist de intrare iesire. Structura sistemului si functiile circ de interfata Arhitectura unui
calculator cuprinde , pe langa unitatea centrala si sitemul de memorie, sist de intrare iesire.Acesta are
rolul de a asigura comunicarea calculatorului cu exteriorul. Fara acesta, calculatorul nu poate primi date
si accesa rezultate. Prin intermediul sau se introduce programe si date( tastatura, mouse , USB,
Ethernet..)si se furnizeaza date, rezultate, info..//Sist intrare iesire e conectat la microprocessor prin
intermediul magistralelor:adrese, date, comanda si control si poate
contine mai multe periferice.DESEN(processor, magistrala adrese,
magistrala date, magistrala comanda, memorie, circuit de interfata,
periferic:tastatura, disc, monitor). //Conectarea oricarui periferic la
magistrale se face prin circuit de interfata, care asigura
compatibilitatea(conversia semnalelor, formatul diferit)//Fiecare
circuit tre sa contina locatii de memorie, Acestea sunt materializate
prin registri adresabili de catre processor. Un disprozitiv in out este
este asimilat prin numele de port, ce contine un nr de
registri.//Menirea registrelor este de a permite configurarea si citirea starii dispozitivului in out sau
schimbarea de date cu procesorul.//Interconectarea fizica dintre 2 dispozitive se numeste interfata
hardware.//Pentru a se conecta unitatea central cu cea periferica e nevoie de driver- set de programe
care “invata”procesorul sa comunice cu perifericele.//Perifericele sunt de trei tipuri 1)transfer date
calculator –operator uman(tastatura, mouse, monitor) 2)transfer date intre calculatoare(interfata serial,
paralela) 3)pt memorare(unitate CD/DVD).//Circuitele de interfata realizeaza o serie de
functii:comunicatie cu procesorul(date, comenzi), comunicatia cu perifericul, sincronizare, asigurarea
unui tampon de date si detectia erorilor.

25.Ierarhizarea magistralelor Majoritatatea calculatoarelor folosesc mai multe nivele de magistrale,


ierarhizate functie de viteza de operare. O structura devenita clasica este cea cu 4 nivele, in care primul
nivel este reprezentat de magistrala locala care conecteaza procesorul cu memoria cache si eventual
dispozitivele input output locale de mare viteza. Un al doilea nivel ceva mai lent realizeaza legatura cu
memoria principal si cu disp in out de viteza, iar al treilea nivel si mai lent realizeaza interfata cu disp
periferice mai lente si nivelul cel mai lent care realizeaza legatura cu perifericele cele mai lente.//
Transferul info pe magistrale poate fi sincron sau asincron , magistralele sincrone prezinta un semnal de
tact comun pt toate disp conectare la ele.transferul asincron presupune semnale de control
suplimentare intre cele 2 disp.Transferurile in out sunrt de regula asincrone, de aceea necesita stari
suplimentare de asteptare care sa mareasca durata unui ciclu masina.Starile pot fi introduce de catre
processor sau de catre dispozitiv(spatiu comun cu memoria).
26.Structura unui circuit de interfata

Circuitul de interfata este conectat la system prin intermediul magistralelor(semnalelor existente pe


liniile magistalelor). Datele sunt transferate pe liniile magistralelor de date. Acestea sunt preluate in
registrii circuitului si memorate pt utilizarea ulterioara.Astfel de registri ce primesc datele de la
processor sunt REGISTRUL DE CONFIGURARE/COMANDA si REGISTRUL DE DATE.Tot la liniile de date este
conectat si reg de stare. Reg de configurare primeste comenzi de la processor si/sau cuvinte de
configurare.Reg de date stocheaza temporar un cuvant ce trebuie transmis perifericului sau un octet ce
este primit de la periferic.Deoarece adresarea se face folosind semnale de scrieresau citire, cei doi reg
sunt adesea situati la aceeasi adresa fizica, operatia de scriere det accesul la reg de date de iesire, iar op
de citire accesul la reg de date de intrare.

27. Transferul datelor prin program


28.Transferul datelor prin intreruperi Sist de intreruperi al unui processor permite intreruperea
activitatii curente a procesorului pt efectuarea unor operatii asincrone generate de evenimente interne
sau externe. Daca este validate acceptarea intreruperilor, programul este interrupt si se apeleaza o
rutina de intrerupere(de tratare). Dupa incheierea rutinei, programul de reia de unde s a
interrupt.Datele trebuie salvate inaite de salt(de regula in stiva)si refacute dupa revenire, ca programul
sa continue de unde a ramas.Avantajul acestei metode e ca nu se pierde timp cu interogarea
perifericului. Buclarea se face de cate ori e nevoie.//Exista doua tipuri de
intreruperi:1)nevectorizate:adresa rutinei de intrerupere este fixa 2)vectorizate- adresa este furnizata
chiar de catre sursa de intrerupere sub forma unui vector de intrerupere. In unele cazuri vectorul indica
adresa de inceput a rutinei de intrerupere, iar in altele o adresa de memorare unde este memorata
adresa rutinei de intrerupere.//Arbitrarea este vazuta ca o solutie in mom in care exista simultan mai
multe intreruperi.Arbitrarea prin SWnecesita un HW minimal, de ex un reg in care fiecarui periferic cu
intreruperi ii corespunde un bit care va fi setat at cand acesta genereaza o cerere de
intrerupere.Arbitrarea poate fi controlata de catre un controller de intreruperi. El preia toate sarcinile
procesorului privind arbitrarea.Accepta intreruperi de la mai mukte surse si , in functie de prioritate,
trimiteo cerere de intrerupere catre processor. O alta metoda de arbitrare este cea cu lant de prioritati,
care se bazeaza pe existent unor circuite de invalidare in cadrul fiecarui circuit de interfata. Cu cat
dispozitivul este situate mai departe de processor in lant, cu atat prioritatea sa este mai mica. Ea este
stabilita prin HW si este fixa.

In mom in care un disp doreste sa genereze o intrerupere:-intrarea sa IEI poate fi in 0 logic,


semnalizandu I faptul ca un alt dispozitiv cu prioritatea mai mare este servit; dispozitivul va astepta pana
cand IEI va trece in 1 logic.//-intrarea sa IEI este in 1 logic si at poate genera o cerere de intrerupere si va
trece iesirea sa IEO in 0 logic, anuntand disp mai putin prioritare ca este servit.
29.Transfer date prin acces direct la memorie(DMA) –Se realizeaza fara intervantia procesorului, direct
intre periferic si memorie, intregul process fiind coordonat de catre un circ specializat,controller DMA.

Reg de adresa curenta contine adresa la care se face transferal DMA. Ea este incrementata sau
decrementata automat dupa fiecare transfer.//Reg contor de cuvinte current retine nr de transferuri ce
mai trebuie efectuat. El este decrementat dupa fiecare transfer al unui cuvant;cand continutul sau
ajunge la 0 este generate o conditie TC(TERMINAL COUNT).Reg adresa de baza si contor de cuvinte de
baza-memoreaza valorile initiale ale registrilor curenti.sunt inscrisi simultan cu registrii curenti si nu pot
fi cititi de processor.//Un controller DMA permite transferal datelor prin unul din cele 4 moduri:1)
Modul de transfer singular-canalul DMA e programat sa realizeze un singur transfer.contorul de cuvinte
este incrementat, iar contorul de adrese va fi incrementat/decrementat la fiecare data transferata.Cand
contorul de cuvinte este ajunge la 0 se genereaza o conditie TC si canalul este autoinitializat, daca a fost
programat astfel. 2)Modul de transfer in bloc-transferul este initiat de catre periferic odata cu activarea
semnalului CerDMA. Datele sunt transferate una cate una pana controlerul de cuvinte ajunge la 0.
3)Transfer DMA la cerere:-Transferul datelor se face pana cand CerDMA devine inactive 4)Modul
cascadat- mai multe circuite DMA sunt inlantuite pt extinderea nr de canale. Sunt posibile 4 tipuri de
transfer diferite:Transfer de scriere, transfer de citire,, transfer de verificare, transfer memorie memorie
30.Sistemul de intrare-ieşire este conectat la microprocesor prin intermediul magistralelor: adrese,
date şi comandă şi control şi poate conţine unul sau mai multe dispozitive periferice
Menirea unor regiştri este de a permite configurarea şi citirea stării dispozitivului I/O, iar a altora este de a
schimba date prin intermediul lor cu procesorul. Regiştrii pot fi adresaţi fie într-un spaţiu special dedicat,
numit spaţiul dispozitivelor I/O (map-are în zona de adrese I/O) sau pot fi adresaţi în spaţiul dedicat memoriei
(map-are în zona de memorie). în acest al doilea caz delimitarea zonelor se face prin semnale de citire şi
scriere diferite. în cazul calculatoarelor aceste dispozitive sunt localizate întotdeauna în zona dispozitivelor
I/O.

Existenţa circuitelor de interfaţa a fost impusă de mai multe cerinţe:


1.varietatea mare de dispozitive, tehnologii şi moduri de funcţionare
2viteza relativ redusă de transfer a datelor (cea mai mică din întregul sistem) dar şl variabilă în limite largi
3.formatul diferit al datelor
Funcţie de utilitate, echipamentele periferice sunt de 3 tipuri:
1.pentru transferul datelor între calculator şi operatorul uman (tastatură, mouse, monitor, imprimantă, etc)
2.pentru transferul datelor între calculatoare (interfaţă serială, interfaţă paralelă, interfaţă USB, interfaţă
Ethernet) şi
3.pentru memorarea datelor (unitate CD/DVD, unitate HDD, unitate FDD).

Funcţie de perifericul căruia îi este destinat, circuitul de interfaţă realizează o serie de funcţii: comunicaţia cu
procesorul (date, comenzi, setări şi stare), comunicaţia cu perifericul (date, comenzi, setări şi stare),
sincronizare, asigurarea unui tampon de date şi detecţia erorilor.
31.în practică există două familii de seturi de instrucţiuni larg utilizate: CISC - şi RISC - . , prima variantă
are avantajul unui cod mai compact şi deci a unui acces mai redus la memorie, în timp ce a doua aduce
avantajul unui procesor mai simplu (implicit de consum mai mic)

Setului de instrucţiuni CISC include instrucţiuni complexe, care în alte sisteme înseamnă mai multe
instrucţiuni şi care durează mai multe cicluri de tact. Astfel de instrucţiuni sunt: salvarea mai multor regiştri
în stivă simultan, mutarea unor blocuri mari de memorie, operaţii matematice complexe (aritmetică în virgulă
flotantă) sau instrucţiuni care presupun operaşi cu un operand din memorie. în consecinţă, lungimea acestor
instrucţiuni este diferită (de la 8 la 64 de biţi, chiar 120 de biţi la x86).
Tehnologia RISC se bazează pe faptul că instrucţiuni mai simple pot asigura simplitate şi viteză de execuţie
mai mare. In acest scop, setul de instrucţiuni este redus şi optimizat. O altă caracteristică a sistemelor RISC
este arhitectura de tip load/store (memoria este accesată numai prin instrucţiuni specifice). Termenul
„redus" nu înseamnă neapărat mai puţine instrucţiuni (multe arhitecturi RISC au mai multe instrucţiuni decât
arhitecturile CISC), ci înseamnă că numărul de cicli necesari pentru a executa o instrucţiune este mai redus
(tipic 1 ciclu pe instrucţiune.

32.Instrucţiunea este o comandă binară care modifică starea procesorului. Ea este o succesiune de cuvinte
binare care desemnează o operaţie elementară şi operanzii săi. Programul reprezintă o succesiune de astfel
de instrucţiuni ce sunt stocate în memorie. Datorită faptului că informaţia este reprezentată sub formă binară,
nu se pot distinge datele de instrucţiuni în memorie decît dacă aceasta este parcursă de la prima locaţie
către ultima. Datorită faptului că orice instrucţiune are două câmpuri principale (câmpul codului instrucţiunii
- opcode şi câmpul de date - date sau adrese), prin decodificarea primului câmp de către UCP, aceasta poate
urmări succesiunea programului.
Există mai multe tipuri de instrucţiuni care se găsesc la toate procesoarele:
-instrucţiuni de transfer - sunt instrucţiuni care manipulează datele între regiştri sau între aceştia şi memorie
sau dispozitivele I/O.
-instrucţiuni aritmetice - asigura prelucrarea unor date aflate în regiştrii sau în memorie.
-instrucţiuni logice - efectuează operaţii logice asupra unor date (şi, SAU, XOR, negare, etc)
-instrucţiuni de deplasare şi rotire a datelor - realizează deplasarea sau rotirea biţilor unor operanzi pentru
izolarea unor biţi în scopul testării sau modificării sale.
-instrucţiuni de ramificare - acest gen de instrucţiuni determină modificarea condiţionată sau necondiţionată
a succesiunii liniare de execuţie a unui program.
-instrucţiuni pentru controlul procesorului - controlează anumite funcţii ale acestuia prin intermediul unor
regiştri de control (registrul de stare, registrul de întreruperi), introduc stări de aşteptare pentru
sincronizarea cu evenimente exterioare sau opresc procesorul.

S-ar putea să vă placă și