Sunteți pe pagina 1din 52

Arhitectura Calculatoarelor Rezumat subiecte

1. Concepte de sistem de calcul si calculator.


Deseori, noiunile de calculator i sistem de calcul sunt folosite cu acelai neles, ambele
fiind realizate ca sisteme digitale de ordin patru. Din punct de vedere constructive, ntre ele exist
o relaie c de la parte la ntreg. Sistemul de calcul este mai cuprinztor i poate fi realizat n
manier programat sau programabil, n timp ce calculatorul este un sistem de ordinal patru
programabil. Un sistem de calcul programat este n general utilizat pentru rezolvarea unei singure
probleme specifice sau a unei game restrnse de probleme similare; el efectueaz prelucrri
asupra unui flux de date de intrare i genereaz rezultate sub forma unui flux de date de ieire.
Sistemul de calcul reprezint un sistem electronic digital de ordinal patru, realizat n jurul
unei structuri de procesare cablat sau microprogramat, capabil s prelucreze informaii pentru
rezolvarea unei probleme specifice i care poate fi implementat ntr-o manier programat sau
programabil. Structura de procesare microprogramat sugereaz existena unui set finit de
funcii elementare predeterminate, numit set de instruciuni, pe baza cruia, ntr-un mod
secvenial, se indic operaiile ce urmeaz a fi efectuate asupra informaiilor.
Calculatorul reprezint un sistem de calcul programabil, destinat rezolvrii unei game
largi de probleme prin rularea programelor specific i care are asociat n acest sens un software de
baz, necesar operrii, ntreinerii i folosirii lui eficiente de ctre utilizatori. Definiia se refer la
accepiunea modern de calculator, la coninutul convenional al acestuia i la reprezentarea
binar a informaiilor. Astfel se exclud toate mainile de calcul precursoare erei electronice, cele
realizare n tehnologii neconvenionale i cele care nu utilizeaz logica boolean.
2. Componenta hardware a unui calculator.
Orice calculator are dou componente majore: componente hardware i componente
software.
Componentele hardware reprezint suportul fizic necesar funcionarii oricrui sistem de
calcul. Ea cuprinde un ansamblu de subsisteme digitale secveniale, care acioneaz direct asupra
fluxurilor de informaii precum i o serie de dispozitive i elemente suplimentare necesare
operrii. Subsistemele digitale secveniale asigura funciile principale ale unui calculator i
opereaz direct cu informaiile. Ele au funciuni specifice i pot lucra sincron, asincron sau
pseudo-sincron unele fa de altele utiliznd semnale de ceas proprii sau comune. Transferul de
informaii ntre subsisteme se realizeaz n mod secvenial, prin intermediul unor linii multiple de
legtur, numite magistrale. Din punct de vedere funcional, unitile componente ale
subsistemelor pot fi: uniti master sau uniti slave.
Unitile master reprezint blocuri decizionale, care comand unitile slave i
coordoneaz transferurile de informaii cu acestea. Unitile slave reprezint resursele sistemului
de calcul. Ele sunt blocuri subordonate, executnd succesiv comenzile primite de la unitile
master. Unitile slave pot fi: uniti de memorie sau uniti I/O (Input/Output). Unitile de
memorie realizate cu circuite integrate de memorie sunt cele mai rapide uniti slave. Ele sunt
conectate la magistrale rapide aflate n apropierea microprocesorului i lucreaz la frecvena
semnalului de ceas al magistralei. Unitile I/O sunt destinate transferului informaiilor cu
exteriorul. Ele sunt accesate prin intermediul unor interfee proprii ale sistemului de calcul
numite porturi I/O. Pentru realizarea transferurilor de informaii, unitile master genereaz
comenzi ctre unitile slave. Unitile slave finalizeaz transferul prin intermediul unei uniti de
[1]

Arhitectura Calculatoarelor Rezumat subiecte

control proprii numit controler, ce transform comenzile primite n semnale specifice unitilor
slave pe care le controleaz.
Un singur controler poate gestiona mai multe uniti slave. Pentru fiecare unitate slave,
controlerul respectiv are aceeai denumire, putnd fi implementat c o component distinct sau
integrat n unitatea slave respectiv. Un controler poate gestiona o gam divers de uniti slave
de acelai tip, astfel are mai mult moduri de lucru i poate fi programat s funcioneze n modul
dorit, fie la iniatializarea calculatorului, fie ulterior, de ctre sistemul de operare sau programele
utilizator. n timpul unui transfer, unitatea master indic tipul unitii slave cu care dorete s
lucreze.
Identificarea unitilor slave se face prin intermediul unui numr unic asignat numit
adres: adresa de memorie sau adresa de port I/O. Unitile slave pot fi dedicate unei singure
uniti master, caz n care transferurile de informaie se fac doar cu unitatea master respectiv sau
partajate ntre mai multe mastere. Procesul de partajare a resurselor unui sistem de calcul are loc
prin dialoguri suplimentare ntre unitile master. Pentru realizarea funciilor de baz ale unui
calculator componenta hardware are 3 subsisteme diferite interconectate prin intermediul
magistralelor:
- subsistemul unitilor centrale;
- subsistemul de memorie;
- subsistemul de intrare-iesire.
Dispozitivele i elementele suplimentare asigur: alimentarea cu energie a subsistemelor
componente, interconectarea subsistemelor, msurarea i disiparea temperaturii. Componenta
hardware este protejat prin brevete de invenie, acestea se obin greu deoarece trebuie s fie o
concepie unic, i expir dup 17 ani. n plus, componenta hardware este uor de copiat datorit
existenei pe pia a seturilor specifice de circuite integrate.
3. Componenta software a unui calculator.
Orice calculator are doua componente majore: componenta hardware si componenta
software.
Componenta software reprezinta ansamblul de programe, realizate pe baza setului de
instructiuni al unitatii centrale, ce pot fi rulate pe calculatorul resprectiv. Cuprinde programe
necesare, atat operarii si intretinerii componentei hardware, cat si rezolvarii problemelor
utilizator.
Programele componentei software pot fi grupate functional in trei categorii:
- sistem de operare
- programele utilitare si de test
- programe utilizator
Sistemul de operare asigura functionarea calculatorului, prin gestionarea judicioasa a
resurselor acestuia, si rezolva problemele de interfata ce apar in dialogurile cu operatorul uman
sau cu un alt calculator. SO este transferat in memoria primara de catre programul incarcator al
sistemului si apoi este lansat in executie, astfel detine controlul absolut asupra resurselor
calculatorului. In absenta SO calculatorul nu poate fi utilizat. Componenta BIOS este parte a SO.
Ea este dependenta de structura hardware si contine un ansamblu de drivere software, prin
intermediul carora controleaza porturile I/O. La initializarea calculatorului, accesul la resursele
acestuia este asigurat de o componenta BIOS, memorata intr-un circuit de memorie nevolatila
[2]

Arhitectura Calculatoarelor Rezumat subiecte

ROM. Aceasta componenta mai este numita ROM-BIOS, fiind utilizata de programul incarcator
al SO, precum si de sistemele de operare monotasking. Un sistem de operare multitasking, dupa
ce este incarcat in memoria primara, foloseste propria componenta BIOS.
Programele utilitare si de test sunt necesare testarii performantelor si intretinerii in bune
conditii de functionare a calculatorului. In aceasta categorie intra si o parte din programele
memorate in circuitul de memorie nevolatila ROM, ce sunt lansate in executie o singura data, la
alimentarea calculatorului sau dupa RESET, atunci cand memoria primara nu contine niciun
program valid.
Programele utilizator reprezinta aplicatiile ce se doresc a fi rulate pentru rezolvarea
problemelor utilizatorului, constituind scopul existentei unui calculator. Initial, utilizatorul era
fortat sa-si scrie programele de aplicatie de la inceput pana la sfarsit, folosind un anumit limbaj
de programare, de nivel scazut sau de nivel inalt. Pentru a putea realiza programe performate, el
era nevoit sa cunoasca foarte bine atat componenta hardware, cat si comenzile limbajului utilizat.
Ulterior, accentul s-a mutat spre fabricantii de software, care pun la dispozitie
componente soft foarte dezvoltate. Cu ajutorul lor, utilizatorul isi poate construi propria aplicatie
intr-o maniera facila, apeland la biblioteci de functii, de unde poate prelua module de program
predefinite, fara sa cunoasca in detaliu componenta hardware si fara a fi nevoit sa invete toate
comenzile specifice unui limbaj de programare.
4. Interdependentele hard-soft
Intre componentele hardware a unui calculator si componenta software exista o stransa
interdependenta, ce se manifesta permanent pe multiple planuri, afectand performantele de
ansamblu ale sistemului. De aceea, programele sunt in general optimizate pentru fiecare tip de
arhitectura in parte.
Performantele programelor utilizator depind esential de SO instalat pe calculatorul
respectiv.
Interdependenta hard-soft este exemplificata in continuare pentru trei situatii distincte:
1. Un program nu poate rula daca nu are suport hardware adecvat sau daca nu primeste
acces la resurse, din partea SO.
2. Acelasi program rula pe calculatoare compatibile, dar cu arhitecturi diferite, va
conduce la performante diferite.
3. Doua programe similare, rulate pe acelasi calculator, vor avea performante complet
diferite, in functie de gradul de optimizare a lor in raport cu componentele hardware a
arhitecturii considerate.
In plus, modificari majore ale componentei hardware determina transformari ale
componentei software, care la randul ei genereaza necesitati de modificare a primei
componente. Cunoasterea acestor conditionari constituie un suport important pentru
utilizarea eficienta a oricarui calculator si dezvoltarea de aplicatii cat de complexe.

[3]

Arhitectura Calculatoarelor Rezumat subiecte

5. Functii de baza ale unui calculator.


Componenta hardware efectueaza diverse operatii asupra informatiilor sub controlul
componentei software, realizand trei functii de baza ale unui calculator:
- functia de prelucrare: operatii de prelucrare efectuate asupra informatiilor
- functia de memorare a informatiilor
- functia de transfer a informatiilor cu exteriorul
Functia de prelucrare reprezinta principala functie a unui calculator. Ea se refera la
operatii specifice de prelucrare a informatiilor la comanda componentei software, cum ar fi:
operatii aritemtice, logice, de deplasare si de rotire. Aceasta functie presupune existenta unui
subsistem distinct de prelucrare, numit unitate contrala de prelucrare sau prescurtat unitate
centrala, ce contine una sau mai multe unitati aritmetico-logice (ALU).
Functia de memorare se refera la necesitatea memorarii informatiilor achizitionate sau a
rezultatului unei prelucrari, precum si regasirii acestor informatii, in vederea transmiterii sau
prelucrarii lor ulterioare. Ea necesita un subsistem specific, numit subsistem de memorie si
presupune doua operatii distincte, in functie de sensul de transfer cu memoria: scriere in memorie
(stocare) si citire din memorie (extragere).
Functia de transfer cu exteriorul asigura legaturile calculatorului cu exteriorul sau, in
dialogul cu operatorul sau cu un alt sistem de calcul, prin intermediul operatiilor de achizitie
(receptie) si transmitere (emisie) de informatii. Pentru implementarea acestei functii, calculatorul
dispune de un subsistem specific, numit subsistemul de intrare/iesire. Cele doua operatii sunt
realizate cu ajutorul dispozitivelor de intrare/iesire, ce pot fi grupate in functie de tipul de dialog:
dispozitive pentru dialogul cu operatorul uman si dispozitive de dialog cu alte calculatoare.
6. Informatii vehiculate intr-un sistem de calcul
Suporturile cele mai potrivite in reprezentarea si procesarea informatiilor sunt semnalele
de tip electric, optic sau magnetic. La aceste semnale, parametrii ce pot exprima cantitativ
informatia sunt: amplitudinea, frecventa, faza. In sistemele electronice digitale, tensiunea
reprezinta suportul informatiilor, iar tranzistorul este componenta de baza. Tranzistorul lucreaza
in comutatie, ca niste comutatoare. Tensiunile pot lua valori in doua intervale distincte,
corespunzatoare celor doua niveluri logice: 1L si 0L. Astfel, pentru reprezentarea informatiilor
intr-un sistem de calcul se foloseste sistemul de numeratie binar. Informatia este reprezentata prin
secvente binare, organizate de obicei in cuvinte. Un cuvant este o unitate de informatie de
lungime fixa n biti, valoarea lui n fiind determinata de fabricant, luandu-se in calcul raportul
performante/cost al hardware-ului. De-a lungul timpului dimensiunea cuvantului a avut valori
diferite, in functie de tipul sistemului de calcul si de producatorul acestuia, tinzand insa spre
anumite valori standard. La ora actuala datorita dezvoltarii tehnologice, valoarea maxima a lui n
este 8, un cuvant de 8 biti numindu-se octet. Daca dimensiunea cuvantului este mai mare, acesta
este de obicei un multiplu de 8 puteri ale lui 2, atunci cand cuvantul este folosit fara calculul
[4]

Arhitectura Calculatoarelor Rezumat subiecte

paritatii si un multiplu de 9 cand se utilizeaza calculul paritatii, pentru fiecare octet adaugandu-se
un bit de paritate.
Din punct de vedere functional, informatiile vehiculate intr-un calculator pot fi:
- informatii primare, ce reprezinta informatiile utile care se doresc a fi transmise
intre unitatile componente ale unui sistem de calul. Ele pot fi instructiuni sau date;
- informatii secundare, ce reprezinta informatii suplimentare, necesare obtinerii
informatiilor primare. Acestea pot fi adrese de memorie sau porturi I/O, comenzi, stari. Semnalele
de comanda si stare sunt numite generic semnale de control.
Instructiunile sunt secvente binare de comanda, care indica unitatii centrale, ce trebuie sa
execute aceasta. Ele sunt grupate intr-o structura logica in cadrul unui program, fiind preluate din
memorie de catre unitatea centrala, intr-o succesiune determinata. In memorie, secventele de
instructiuni sunt pastrate in zone distincte fiecarui program, numite zone de cod. Acestea sunt
doar citite, de catre unitatea centrala ce executa programul, si de aceea, ele sunt declarate de tip
read-only de catre SO multitasking, evitandu-se astfel de operatiuni ilegale de modificare a lor in
memorie.
Datele reprezinta obiectul instructiunilor, fiind secvente binare asupra carora unitatea
centrala poate efectua toate tipurile de operatii. Sunt organizate in structuri mai complexe si sunt
pastrate in memorie in zone separate ale programului respectiv, numite zone de date, care pot fi si
scrise si citite. Datele pot fi de doua tipuri: numerice sau nenumerice. Datele numerice reprezinta
operanzi cu semn sau fara semn, exprimati in valori binare sau zecimale codificate binar. Ele pot
fi reprezentate in doua formate diferite: virgula fixa sau virgula mobila. Datele nenumerice
reprezinta siruri de caractere, fiecare caracter fiind codificat sub forma unei secvente binare, cu
ajutorul codurilor de caractere.
7. Concepte de arhitectura si structura unui sistem de calcul
Conceptele de arhitectura si structura a unui sistem de calcul permit caracterizarea in
ansamblu a sistemului respectiv si descrierea amanuntita a subsistemelor componente. Ele sunt
utilizate pentru definirea performantelor unui calculator, precum si pentru compararea diferitelor
tipuri de calculatoare intre ele.
Arhitectura unui sistem de calcul precizeaza tipul susbsistemelor componente si modul
concret de interconectare a lor, in vederea obtinerii ansamblului de functii pe care subsistemele
trebuie sa si le ofere unul altuia.
Structura unui sistem de calcul precizeaza modul concret de realizare a fiecarui subsistem
component, conform cerintelor de performanta si pret. Cu cat numarul functiilor oferite de
subsistemele componente este mai mare, cu atat sistemul rezultate este mai flexibil, dar
arhitectura va fi mai complicata. Multe dintre elementele de arhitectura sunt comune tuturor
sistemelor de calcul, fiind elemente definitorii ale sistemelor digitate de ordin patru. Altele sunt
comune, doar sistemelor de calcul programabile. In ambele cazuri insa, ele se regasesc in
arhitectura unui calculator. Descrierea unei arhitecturi presupune definirea subsistemelor
[5]

Arhitectura Calculatoarelor Rezumat subiecte

componente si a modului in care acestea sunt interconectate. Prima arhitectura a unui calculator
electronic de uz general, numita arhitectura von Neumann, a fost descrisa in anul 1946 de John
von Neumann si colegii sai de la Institulul de studii avansate al Universitatii Princeton. Lucrarea
descria principiile logice de proiectare a unui calculator electronic de uz general, numit, ECI.
Spre deosebire de predecesoarele sale, ECI folosea o memorie comuuna pentru program si date,
si putea prelucra paralele operanzi binari pe 40 biti.
ECI cuprindea patru subsisteme:
- memoria comuna pentru program si date avea o capacitate de 4096 de cuvinte de
40 biti, fiind adresata cu 12 linii de adresa. Memoria era realizata cu 40 tuburi catodice de cate
4096 biti fiecare.
- unitatea aritmetica putea efectua cele patru operatii de baza asupra unor operanzi
binari de 40 biti, care reprezentau numere cu semn exprimate in virgula fixa in intervalul (-1,1),
valorile negative fiind codificate in codul complement fata de 2.
- unitatea de control realiza controlul operarii celorlalte trei unitati prin executarea
instructiunilor citite din memorie. Puteau executa 21 de instructiuni diferite, al caror format era
pe 20 biti, ceea ce permitea memorarea a doua instructiuni in acelasi cuvant de memorie.
- subsistemul de intrare-iesire continea unitati de meorie secundara de tip fir
magnetic, precum si dispozitive pentru comunicarea cu operatorul uman: teleimprimator pentru
introducerea datelor si tiparirea rezultatelor si display pentru vizualizarea informatiilor.
In subsistemul I/O, informatiile erau transmise serial. In timp, arhitectura de baza a
cunoscut diverse modificari si adaugiri. Functiile unitatii de control au fost distribuite catre
celalalte subsisteme, majoritatea fiind inglobate in unitatea centrala. De asemenea, dezvoltarea
tehnologica a permis cresterea complexitatii si performantelor fiecarui subsistem component si
implicit ale calculatorului in ansamblu.
8. Masina Turing: definitie, componente
Primul model abstract de calculator a fost introdus de matematicianul englez Alan Turing,
in anul 1936, model cunoscut sub numele de masina Turing. Acesta a pornit de la definirea unei
operatii de calcul cu ajutorul calculatorului, introducand notiunea de executie secventiala. Masina
Turing are doua componente principale: procesorul si memoria. Procesorul este un sistem
secvential cu numar finit de stari de unde rezulta ca acesta va avea un set finit de instructiuni.
Memoria masinii Turing este o banda de lungime infinita, impartita in locatii de memorie. Fiecare
locatie poate fi goala sau poate contine un simbol t i, dintr-un set finit de simboluri. Masina Turing
are si un cap de citire/scriere, cu ajutorul caruia procesorul poate citi simbolul din locatia de
memorie aflata in dreptul capului, poate rescrie locatia respectiva sau poate muta banda de
memorie o latie la stanga sau la dreapta fata de pozitia curenta a capului.

[6]

Arhitectura Calculatoarelor Rezumat subiecte

Masina Turing are un set finit de instructiuni de forma shtiojsk.


Semnificatia instructiunii este: daca procesorul se gaseste in starea sh si in dreptul capului
de citire/scriere se afla simbolul ti, atunci procesorul executa operatia oj si va trece in starea sk.
Operatia oj poate fi una din urmatoarele patru operatii:
* oj=tj procesorul va scrie in locatia de memorie curenta simbolul tj in locul simbolului ti;
* oj=R procesorul va muta capul de citire/scriere o pozitie la dreapta fata de pozitia
curenta ceea ce poate insemna mutarea benzii de memorie o pozitie la stanga;
* oj=L procesorul va muta capun de citire/scriere o pozitie la stanga fata de pozitia
curenta, ceea ce poate insemna mutarea benzii de memorie o pozitie la dreapta;
* oj=H (halt) masina Turing se opreste.
O masina Turing este definita pentru rezolvarea unei singure probleme specifice. Unul
dintre cele mai reamarcabile rezultatea obtinute de Turing a fost demonstrarea teoremei de
existenta a unei masini Turing universala capabila sa efectueze toate calculele ce pot fi facute
cu orice masina Turing. Masina Turing universala nu necesita un numar mare de simboluri si nici
un procesor cu numar mare de stari. S-a demonstrat ca daca notam cu t numarul de simboluri
diferite care pot fi scrise pe banda si cu s numarul de stari posibile ale procesorului, atunci
t*s<30. Masina Turing universala are un set mic de instructiuni, cu care poate executa toate
operatiile ce pot fi realizate cu calculatoarele reale, considerate masini Turing rezonabile, care
realizeaza operatia intr-un numar finit de pasi. Aceasta asertiune este numita teorema lui Church,
dar nu a fost demonstrata riguros, deoarece termenul rezonabil are un caracter subiectiv.
9. Limite ale MT si ale calculatoarelor reale.
Din multitudinea de probleme existente in natura, ce pot fi reprezentate simbolic pe axa
reala, nu toate sunt rezolvabile cu o masina Turing, iar cele mai multe sunt practic inabordabile
rezolvarii cu calculatoare reale. Chiar si pentru problemele rezolvabile cu calculatoare reale apar
o serie de limitari de natura practica, ce fac innacceptabile solutiile de rezolvare.
1. Exista probleme care nu se pot rezolva cu masina Turing, deci nu se pot rezolva nici cu
calculatoare reale. Vom arata ca exista functii rationale ce nu pot fi calculate cu o masina Turing.
Notam cu (M,X) o masina Turing M cu datele de intrare X, memorate pe banda. O functie se
numeste calculabila cu o masina Turing, daca f(x) poate fi evaluata intr-un numar finit de pasi de
catre M, oricare ar fi datele de intrare X specificate. Spunem ca (M,X) se opreste daca masina
[7]

Arhitectura Calculatoarelor Rezumat subiecte

Turing M se opreste dupa un numai finit de pasi. Fie functia rationala f H (M,X), numita functia de
oprire a masinii Turing, definita pentru toate masinile Turing M si datele de intrare X specificate,
de forma:
FH (M,X) =
1 daca (M,X) se opreste
0 daca (M,X) nu se opreste
Se poate arata ca functia rationala fH nu este calculabila, ceea ce inseamna ca nu se poate
determina o metoda algoritmica generala prin care sa se cunoasca apriori daca masina Turing se
opreste sau nu, oricare ar fi masina M si datele de intrare X. Exista foarte multe probleme inrudite
cu fH care nu au solutii.
2. Exista probleme care ar putea fi rezolvate cu masina Turing, dar care, in principiu nu pot fi
rezolvate cu calculatoarele reale.
Procesorul masinii Turing are un numar finit de stari si implicit are un set finit de
instructiuni. Insa, banda de memorie are un numar infinit de locatii de memorie si de aceea
masina Turing este o masina cu stari infinite. Calculatoarele reale au un numar finit de locatii de
memorie si sunt masini cu stari finite. Ele nu pot lucra cu numere oricat de mari, deci toate
problemele care opereaza cu numere foarte mari nu pot fi rezolvate doar cu masina Turing.
3. Exista probleme ce sunt rezolvabile cu calculatoarele reale intr-un numar finit de pasi, dar care
practic nu se pot rezolva deoarece necesita o cantitate prea mare de memorie, fie un timp de
calcul prea lung.
Presupunem o probleme P ce se poate rezolva cu un calculator prin executarea unui
algoritm A. Referitor la dificulatea algoritmului trebuie precizate doua aspecte cantitative:
- ce spatiu de memorie este necesar pentru rezolvarea algoritmului
- cat timp dureaza executia acestuia.
Cele doua cantitati sunt greu de masurat deoarece depind de dimensiunea datelor de
intrare n. Totusi pentu a putea caracteriza gradul de dificultate al unui algoritm, se definesc doua
marimi, al caror expresii depind de n:
- complexitatea de spatiu a algoritmului A
- complexitatea de timp a algoritmului A
Limitarile impuse de timp sunt mult mai restrictive decat cele ale spatiului de memorie.
10. Complexitatea de timp a unui algoritm
Limitarile impuse de timp sunt mult mai restrictive decat cele ale spatiuliu de memorie.
Un algoritm A are complexitatea de timp o (f(n)) daca numarul de pasi p necesari pentru
rezolvarea algoritmului este proportional cu f(n) p=c*f(n), unde c este o constanta, iar f este o
functie oarecare, iar n reprezinta dimensiunea datelor de intrare.
O problema se numeste tratabila cu un anumit calculator daca ea poate fi rezolvata exact
intr-un timp rezonabil, oricare ar fi dimensiunea datelor de intrare n specificata. In general se
admine ca o problema este tratabila, daca si numai daca exista un algoritm de rezolvare a ei, care
are complexitatea de timp o(p(n)), unde p este o functie polinimiala de n. Reciproc, o problema
nu este tratabila daca toti algoritmii de rezolvare au complexitatea de timp o(k n), timpul de
executie crescand exponential cu dimensiunea datelor de intrare.

[8]

Arhitectura Calculatoarelor Rezumat subiecte

Daca o problema nu este tratabila, atunci ea va putea fi rezolvata exact intr-un timp
rezonabil, doar daca dimensiunea datelor de intrare n este mai mica sau egala cu o valoare
maxima m. Astfel o problema netratabila poate deveni tratabila doar pentru n m.
Valoarea lui m depinde de viteza de lucru s a calculatorului care rezolva problema. Cu cat
s este mai mare, cu atat m va fi mai mare, dar dependenta nu este direct proportionala pentru toti
algoritmii.
11. Influenta vitezei de calcul asupra dimensiunii maxime a
datelor de intrare
Cresterea vitezei de calcul (s) a unui calculator s-a facut, in general prin perfectionarea
tehnologiilor de fabricatie a unitatilor de memorie si a cricuitelor de comutatie. Dezvoltarea
tehnologica a condus la o crestere medie a vitezei de lucru a unui calculator, de 100 de ori pe zi
pe decada, in ultimii 70 de ani. Presupunand rata de crestere constanta si in viitor, vom arata ca m
n u depinde direct proportional de s, pentru toti algoritmii. Fie un calculator M cu o viteza de
calcul s, care ruleaza un interval de timp T, efectuand un numar de pasi p. Cu cat calculatorul este
mai rapid si viteza de calcul s este mai mare, cu atat numarul de pasi p, executati in interval de
timp T, este mai mare.
Calculatorul ruleaza un algoritm A cu complexitatea de timp o(f(n)). In intervalul de timp
T, acesta va putea procesa o dimensiune maxima a datelor de intrare m, dependenta de viteza de
calcul s. Pentru ca algoritmul A cu complexitatea o(f(n)) sa fie rezolvat in intervalul de timp T,
trebuie ca numarul de masi necesari rezolvarii lui sa fie c*f(n) p, pentru orice dimensiune a
datelor de intrare n m.
Pentru n=m => p=c*f(n).
Presupunem ca in urmatoarea decada, viteza de operare a calculatoarelor creste de 100 de
ori. Consideram un nou calculator M cu o viteza de calcul s=100s si care efectueaza, in acelasi
interval de timp T, un numar de pasi p=100p. Avand o viteza mai mare si ruland algoritmul A,
calculatorul va putea procesa o dimensiune maxima a datelor de intrare m mai mare.
Similar vom avea:
p c*f(n), oricare ar fi n m
P= c*f(m), n=m
Dorim sa determinam noua valoare m a algoritmului A, la cresterea vitezei de calcul de
100 de ori. Sintetizand rezultatele anterioare, rezulta urmatorul sistem din care se obtine m:
p=c*f(m)
p=c*f(m)
=> f(m)=100*f(m)
p=100p
De la un algoritm la altul, m va avea valori diferite
Exemplu: f(m)=100*f(m)

[9]

Arhitectura Calculatoarelor Rezumat subiecte

12. Magistralele unui sistem de calcul: definitie, simboluri,


slasificari.
Transferul de informatii intre subsistemele unui calculator se realizeaza in mod secvential
prin intermediul unor linii multiple de legatura numite magistrale.
Magistrala de semnale digitale (bus) este un ansamblu de linii conductoare de legatura,
grupate functional, care conecteaza doua sau mai multe unitati componente ale unui sistem de
calcul, prin intermediul carora au loc transferurile de informatii intre unitatile conectate, sub
forma unor configuratii binare. Pe fiecare linie a unei magistrale se poate transfera, la un moment
dar, o singura valoare logica ce reprezinta o cantitate de informatii de 1bit. Daca magistrala are n
linii, atunci pe magistrala se transfera n biti de informatii in paralel si vom spune ca magistrala
tansfera cuvinte de informatie de dimensiune n biti. Simbolul de reprezentare a unei magistrale de
semnale digitale depinde de tipul magistralei.

Numarul de linii pe care le contine magistrala este indicat printr-un numar plasat deasupra
simbolului, iar sensul de transfer este indicat prin sageti. Pentru identificarea tuturor magistralelor
ce pot exista intr-un sistem de calcul, acestea primesc cate un nume, care apare trecut langa
simbol. Grosimea magistralei simbolizate poate depinde de numarul de linii incluse:

Deseori magistralele de semnal sunt reprezentate prin simboluri simplificate:

Liniile componente ale unei magistrale pastreaza numele sau initiala magistralei
respective, langa nume fiind trecut numarul liniei. Acest numar reprezinta puterea bazei 2
corespunzatoare pozitiei liniei in configuratia binara care se transfera.

[10]

Arhitectura Calculatoarelor Rezumat subiecte

13. Caracteristici ale magistralelor: dimensiunea magistralei,


semnalul de ceas
Dimensiunea magistralei (n) reprezinta numarul de legaturi simultane pe care se face
transferul de informatii si care apare si in simbolul magistralei. Daca o magistrala are n linii, vom
spune ca magistrala are dimensiunea de n biti si ca pe ea se transfera cuvinte de n biti.
Semnalul de ceas al magistralei (CLK) este un semnal de frecventa fixa, fCLK, care ajuta la
simcronizarea transferurilor pe magistrala. El are de obicei un factor de umplere de .
Transferurile de informatii pe magistrala se fac sincronizat cu semnalul de ceas, pe unul
din fronturile acestuia, declarat front activ. Ele depind de perioada TCLK, durata lor fiind un numar
intreg de stari de ceas, stari ce sunt numerotate in ordine crescatoare.

Daca magistrala nu are ceas propriu, atunci transferurile vor fi sincronizate cu semnalele
de ceas ale unitatilor conectate la magistrala. Frecventa ceasului magistralei poate sa fie fixa
pentru magistralele la care se conecteaza unitati ce contin circuite dinamice sau poate fi
modificata de la 0 la valoarea maxima pentru magistralele la care se conecteaza unitati cu circuite
complet statice. Frecventa maxima a ceasului de magistrala depinde de lungimea fizica a
magistralei si de numarul de unitati conectate la aceasta. Cu cat magistrala este mai lunga si la ea
se pot conecta mai multe unitati, cu atat frecventa semnalului de ceas trebuie sa fie mai mica.
Determinarea frecventei semnalului de ceas se face tinandu-se cont de posibilitatile de transfer
ale unitatilor conectate la magistrala si de frecventa transferurilor, astfel incat sa se obtina o
functionare optima.
t , unde t = timpul minim al celui mai lent transfer.
T
CLK

TCLK tK, unde tK = timpul minim al celui mai rapid transfer


tK TCLK tL
14. Caracteristici ale magistralelor: timpul de transfer
Timpul de transfer (tT) reprezinta timpul necesar transferului unui cuvant de informatie pe
magistrala si se exprima in secunde. Pentru o magistrala la care sunt conectate mai multe unitati,
timpul efectiv de transfer la un moment dat depinde de unitatile care participa la efectuarea
transferului. Durata transferului intre doua unitati conectate la magistrala depinde de vitezele de
lucru ale lor si de perioada ceasului de magistrala, fiin data de cea mai lenta dintre unitati si
aproximata la un numar intreg de stari de ceas. Unitatea mai rapida va astepta terminarea
transferului, introducand stari de asteptare egal cu perioada de ceas, pana cand unitatea mai lenta
poate finaliza transferul. Cu cat o unitate este mai lenta, cu atat durata de transfer va fi mai mare,
iar unitatea mai rapida va trebui sa astepte mai mult pana la terminarea transferului.
[11]

Arhitectura Calculatoarelor Rezumat subiecte

Timpul de asteptare relativ la durata transferului: tAr = N*Tw/tT unde:


N = numarul starilor de asteptare Tw
tT = timpul de transfer
Timpul de asteptare poate fi exprimat procentual: tAp = 100tAr
Pentru a micsora timpii de asteptare ai unitatilor rapide este indicat ca unitatile conectate
la o magistrala sa aiba viteze de operare apropiate si transferul sa dureze cat mai putine stari ale
ceasului de magistrala. Daca unitatile lucreaza la viteza foarte diferite ele trebuie sa fie conectate
la magistrale diferite, cu viteze de transfer apropiate de cele ale unitatilor conectate. Deoarece
timpul de transfer are valori diferite, de la un transfer la altul se definesc alte marimi similare care
caracterizeaza mai bine durata transferurilor pe magistrala:
* timpul de transfer minim (tTmin) reprezinta durata celui mai rapid transfer, fiind utilizat
pentru definirea ratei de transfer tTmin = tR. Daca magistrala are semnal de ceas propriu,
atunci perioada acestuia se alege egala cu timpul de transfer minim TCLK = tTmin.
* timpul de transfer mediu (tTM) este definit ca medie aritmetica a timpilor de transfer
considerati in functie de frecventa de aparitie a transferurilor.
Daca transferurile au frecvente de aparitie egale, atunci t M va fi media aritmetica simpla,
iar daca frecventele de aparitie sunt diferite atunci tTM va fi media aritmetica ponderata cu aceste
N

tTif i

frecvente.

tTM =

tTi

tTM =

i=1

i=1

fi
i=1

Cu cat frecventele de aparitie ale transferurilor lente usnt mai mari, cu atat valoarea medie
va fi mai mare. Este de dorit ca transferurile cu unitatile lente sa fie cat mai rare.
* timpul de transfer cumulat (tTC) reprezinta timpul necesar realizarii tuturor transferurilor
considerate, fiind definit similar timpului de transfer mediu.
N

tTM =

t Ti = N*tTM
i=1

tTC =

t Tif i = tTM * f i
i=1
i=1

15. Caracteristici ale magistralelor: rata de transfer, starea


magistralei, numarul de unitati
Rata de transfer (rT) caracterizeaza viteza de transfer a informatiilor pe o magistrala si
reprezinta numarul maxim de cuvinte ce pot fi transferate pe secunda pe magistrala respectiva. Ea
se exprima de obicei in cuvinte pe secunda sau in multipli de cuvinte si reprezinta inversa
timpului de transfer minim.
RT = 1/tTmin [cuv/s]
* in biti: rTb = rT*n [b/s], unde n= dimensiunea magistralei
* a unei linii: rTl [b/s] = rT [cuv/s]
[12]

Arhitectura Calculatoarelor Rezumat subiecte

Rata de transfer depinde de frecventa ceasului cu care se cinsconizeaza transferul pe


magistrala, si de la numarul de stari de ceas necesare unui transfer: rT=fCLK/N=1/N*TCLK [cuv/s].
Rata de transfer reprezinta o valoare teoretica maxima, care in cazul practic este foarte
greu de atins, deoarece unitatile conectate la magistrala au in general viteze de operare diferite.
Astfel nu toate transferurile realizare pe magistrala respectiva dureaza o singura stare de ceas.
Deoarece functiile de aparitie a transferurilor nu este aceeasi intre toate unitatile cu cat o unitate
lenta va fi antrenata mai des in transferuri, cu atat valoarea reala a ratei de transfer va scadea.
Starea magistralei la un moment dat poate fi activa sau inactiva, indicand prezenta unui
transfer intre unitati sau faptul ca magistrala nu este folosita la momentul respectiv. Daca are loc
un transfer intre doua unitati una dintre ele este unitate emitatoare si magistrala se gaseste in stare
activa. Cand magistrala nu este folosita ea se afla in stare inactiva si toate liniile sunt trecute in
starea logica inactiva (HZ sau 1L). Timpul de inactivitate al unei magistrale poate fi o masura a
utilizarii ineficiente a acesteia, fiind exprimat procentual din timpul total de utilizare. Daca
transferurile sunt prea rare, timpul de inactivitate este prea mare si magistrala nu este utilizata
eficient. Daca transferurile sunt prea dese timpul de inactivitate este zero si magistrala este activa
permanent. Acest lucru poate ascunde intarzieri excesive si blocaje ce apar in cazul cererilor de
transfer simultane cand se realizeaza doar un transfer, iar celelalte sunt amanate. De aceea timpul
de inactivitate trebuie sa fie cat mai mic, iar cererile de transfer simultane cat mai rare.
Numarul maxim de unitati (N u max) conectate la o magistrala este definit de standardul
magistralei respective, fiind important pentru fabricant. Un numar prea mare poate duce la
tranferuri foarte dese si la blocarea temporara a unor transferuri, iar un numar prea mic poate
duce la un timp de inactivitate mare. Pentru utilizator, acest numar este totdeauna respectat,
deoarece numarul conectoarelor de extensie accesibile utilizatorului este mai mic decat Nu max.
16. Clasificarea magistralelor
Dupa modul de transfer al informatiei:
- magistrale unidirectionale: transferul de informatii se efectueaza pe toate liniile intr-un
singur sens, de la o unitate emitatoare catre una sau mai multe unitati receptoare.
- magistrale bidirectionale: transferul de poate efectua in ambele sensuri alternativ prin
multiplexare in timp, la un moment dat transferandu-se informatii intr-un singur sens.
Astfel unitatile conectate la o magistrala bidirectionala pot fi pe rand unitati emitatoare
sau receptoare de semnal.
Dup tipul informaiilor transferate, magistralele pot fi:
- magistrale primare, pe care au loc transferurile informaiilor utile, ce se doresc a
fi transmise ntre subsistemele unui calculator. Acestea pot fi: magistrale de instruciuni sau
magistrale de date. Deoarece memoria sistemului este comun pentru programe i date, cele
dou tipuri de informaii primare sunt transferate pe o aceeai magistral bidirecional, numit
generic magistral de date.
- magistrale secundare, pe care au loc transferurile de informaii suplimentare,
necesare obinerii informaiilor primare. Acestea pot fi: magistrale de adrese, magistrale de
comenzi sau magistrale de stri, considerate n general unidirecionale. Cele dou magistrale,
de comenzi i de stri transfer informaii n sensuri opuse i formeaz mpreun o magistral
bidirecional pe linii separate, numit magistral de control. Astfel se micsoreaza numarul

[13]

Arhitectura Calculatoarelor Rezumat subiecte

liniilor de legatura dintre subsisteme dar informatiile primare se transfera succesiv pe aceeasi
magistrala unica, ceea ce paote micsora performantele globale ale sistemului de calcul.
Dup rata de transfer i implicit dup numrul de uniti conectate, putem avea:
- magistrale locale, care sunt amplasate n apropierea unitilor foarte rapide, cum este, de
e xemplu, procesorul. Aceste magistrale sunt caracterizate de o rat mare de transfer i un numr
mic de uniti ce pot fi conectate la ele. Ca exemple, pot fi date: magistrala local a procesorului,
magistrala local a memoriei;
- magistrale de extensie (magistrale I/O), care sunt magistrale accesibile
utilizatorului, fiind terminate cu conectoare de extensie. Magistralele de extensie sunt
amplasate mai departe de procesor i sunt caracterizate de o rat mai mic de transfer i un
numr relativ mare de uniti ce pot fi conectate la ele.
Dup modul de control al transferului de informaii, magistralele pot fi:
- magistrale sincrone. Toate operaiile magistralelor sincrone sunt sincronizate de un
semnal de ceas i orice transfer dureaz un numr ntreg de perioade de ceas, numite cicluri de
magistrala. In cazul acestor magistrale, dac un transfer se termin naintea unui numr ntreg
de cicluri, urmtorul transfer poate ncepe numai dup sfritul ciclului n curs de
desfurare. Aceast situaie conduce la ntrzieri inutile.
- magistrale asincrone. O magistral asincron elimin dezavantajele magistralelor
sincrone. In locul semnalului de ceas se utilizeaz un protocol logic ntre emitor i
receptor (numit handshake). In cadrul acestui protocol are loc un schimb de informaii
ntre unitatea master i unitatea slave care permit corelarea i coordonarea transferului de
date. Fiecare aciune a celor doi participani la transfer este condiionat de o aciune
anterioar i nu de un impuls de ceas.
17. Conectarea unitatilor la magistrale
Conectarea unitatilor componente ale unui sistem de calcul la o magistrala se face prin
intermediul unor circuite separatoare. Acestea permit partajarea magistralei intre diverse unitati,
prin multiplexare in timp, unitatile inactive la un moment dat fiind separate de magistrala. In
cazut defectarii unei unitati magistrala de semnale poate sa ramana functionala datorita circuitelor
separatoare.
Din punct de vedere al rolului pe care il au la transferul pe magistrale, unitatile conectate
la acestea pot fi: unitati receptoare sau unitati emitatoare de semnal. Unitatile emitatoare trebuie
sa aiba circuite de iesire cu trei stari sau cu colector in gol pentru ca, la conectarea in paralel a
iesirilor aceste circuite sa nu se defecteze. Circuitele de iesire cu trei stari trebuie sa fie active
alternativ. Cele mai utilizate circuite sunt circuitele de iesire de tip tri-state, care permit separarea
de magistrala cand unitatile sunt inactive, prin trecerea iesirilor in cea de-a treia stare logica,
starea HZ. Daca la o magistrala sunt conectate mai multe unitati emitatoare, cel mult una trebuie
sa fie activa pe magistrala la un moment dar, celelalte fiind inactive. Toate unitatile emitatoare
pot fi inactive simultan, caz in care magistrala este nefolosita si nu se efectueaza niciun transfer
de informatii. Daca la o magistrala sunt conectate mai multe unitati receptoare, acestea pot fi
active independent la un moment dat. Unitatea emitatoare transmite semnale catre toate unitatile
repectoare, semnale care sunt utilizate doar de unitatile active. Conectarea mai multor unitati care
pot fi succesiv emitatoare si receptoare trebuie realizata prin intermediul unei magistrale
bidirectionale. Toate unitatile pot fi emitatoare sau receptoare, conditia este ca la un moment dat,
[14]

Arhitectura Calculatoarelor Rezumat subiecte

cel mult o unitate sa fie de tip emitator. Dintre unitatile ramase, unele pot fi receptoare, iar restul
pot fi inactive pe durata transferului respectiv, caz in care acestea vor fi separate de magistrala.
In situatia in care la o magistrala sunt conectate prea multe unitati emitatoare, se paote
intampla ca magistrala sa fie tot timpul ocupata si unele unitati sa nu poata fi servite in timp util.
Daca la magistrala se conecteaza prea putine unitati emitatoare exista riscul ca magistrala sa stea
mai mult timp nefolosita. De aceea trebuie determinat un optim intre caracteristicile magistralei si
numarul si tipul unitatilor conectate la aceasta. Daca unitatile ce se doresc a fi interconectate au
viteze de operare mult diferite prin conectarea la aceeasi magistrala, unitatile rapide ar trebui sa
astepte unitatile lente, introducand stari de asteptare, iar transferurile rapide ar putea fi intarziate.
Ocuparea magistralei pentru efectuarea transferurilor lente poate reduce performantele
ssitemului, mai ales daca acestea au avut loc frecvent. Unitatile trebuie mai intai grupate in
functie de vitezele lor de operare si apoi conectate la magistrale cu rate de transfer apropiate de
aceste viteze. Transferurile de informatii intre unitatile conectate la magistrale diferite trebuie sa
se faca intr-un mod transparent pentru cele doua unitati, prin intermediul unor punti (circuite
specializate). Puntile asigura sincronizarea transferurilor intre cele doua magistrale astfel incat
transferurile pe magistrala mai rapida sa nu fie blocate de magistrala mai lenta.

Pentru transferul de la o unitate mai rapida catre una mai lenta, de obicei puntea contine
un latch conectat la magistrala mai rapida, care joaca rol de memorie tampon intre unitati. Astfel
transferul se poate realiza cu vitezele proprii celor doua unitati.
18. Circuite de iesire normale: schema
functionare, conectarea in paralel.

de

principiu,

Scot la iesire doar doua niveluri logice 0L sau 1L, comandand cele 2 tranzistoare de iesire
in antifaza cu un singur semnal de comanda.

[15]

Arhitectura Calculatoarelor Rezumat subiecte

In functie de valoarea comenzii Uc se va obtine la iesire prin saturarea unui tranzistor si


blocarea celuilalt valoarea logica egala cu cea a tensiunii de comanda Uc.

Functionarea in regim dinamic presupune aplicarea unui semnal de comanda cu comutari


multiple de tip ceas.
1. La cresterea frecventei de comutare se indesesc fronturile in aceeasi unitate de timp.
Se indesesc pulsurile de curent mare si ca efect creste componenta continua de curent.
Rezulta ca va creste si puterea disipata de cricuit.
2. Acelasi fenomen de comutare conduce la limitarea valorii SR la iesirea integratului.
3. La cresterea frecventei de comutare, SR incepe sa devina important in perioada
semnalului si semnalul devine trapezoidal cu paliere din ce in ce mai scurte.
4. Limitarea presiunii disipate la cresterea frecventei de comutare se poate face prin
miscarea tensiunii de alimentare si coborarea nivelului de 1L, care permite timpi de
comutare mai mici si corespunzator cresterea frecventei de comutare.
Conectarea iesirilor etajelor normale in paralel este interzisa deoarece duce la arderea
tranzistoarelor T1,T1 din etajele de iesire.
a) Uc1=0L
Uc2=1L
T1 blocat
T2 saturat
T1 saturat
T2 blocat

[16]

Arhitectura Calculatoarelor Rezumat subiecte

b) Uc1=1L
Uc2=0L
T1 saturat
T2 blocat
T1 blocat
T2 saturat

colector in gol: schema


conectarea in paralel

de

principiu,

19.
Circu
ite
de
iesire cu
functionare,

Au aparut ca o consecinta la problemele generate de conectarea in paralel a etajelor


normale, dorindu-se realizarea unui etaj de iesire care sa poate fi pus in paralel cu alte etaje de
iesire. Solutia a fost eliminarea din schema a lui T1.

Prind disparitia lui T1 nu mai exista conditii de generare la iesire a tensiunii de 1L si a


curentului aferent si de aceea circuitul necesita conecatarea in exterior a unei rezistente la +Vcc.
Functionare:
Uc = 0L => T2 saturat
Uc = 1L => T2 blocat
Conectare in paralel:

[17]

Arhitectura Calculatoarelor Rezumat subiecte

Uc1 = 0L |
Uc2 = 0L | => T2,T2 saturate => U0L = 0L (functioneaza corect)
Uc1 = 1L |
| T2 blocat
Uc2 = 0L | => | T2 saturat => U0L = 0L
Uc1 = 0L |
| T2 saturat
Uc2 = 1L | => | T2 blocat => U0L = 0L
Uc1 = 1L |
Uc2 = 1L | => T2,T2 blocate => U0H = 1L (prin R)
Iesirile circuitelor open collector pot fi conectate in paralel pe magistrale. Pot functiona
simultan asincron, iar rezultatul este conform functiei si cablat.
20. Circuite de iesire cu trei-stari: schema de principiu,
functionare, conectarea in paralel.
Circuitul tri-state perminte obtinerea la iesire a 3 niveluri logice diferite 0L, 1L, HZ.
Circuitul tri-state va avea 2 tranzistoare la iesire, ca si circuitul normal, T 1 si T2 cu
deosebirea ca pentru a obtine la iesire 3 valori logice diferite comanda trebuie facuta cu 2 biti,
cate unul pentru fiecare baza. Astfel va dispare circuitul inversor.

[18]

Arhitectura Calculatoarelor Rezumat subiecte

Uc1 = 0L |
| T1 blocat
Uc2 = 1L | => | T2 saturat => U0 = 0L
Uc1 = 1L |
| T1 saturat
Uc2 = 0L | => | T2 blocat => U0 = 1L
Uc1 = 0L |
Uc2 = 0L | => T1,T2 blocate => U0 = HZ
Uc1 = 1L |
Uc2 = 1L | => T1,T2 saturate
Functionarea normala la iesire se face cu un semnal de comanda

OE
= 1L iesirile se invalideaza, iar U0 = HZ.
Uc
OE
0
0
1

0
1
X

Uc1

Uc2

Uc1 = Uc * OE

0
1
0

1
0
0

Uc2 =

Uc

= Uc * OE

* OE

Conectare in paralel

[19]

Uc

* OE

OE

= 0L. Daca

Arhitectura Calculatoarelor Rezumat subiecte

OE 1=1 L

OE 2=1 L

| =>

OE 1=0 L

OE 2=0 L

| =>

U01=U02=HZ

circuite active => punere in paralel de circuite normale si se ard


tranzistoarele T1 si T1.

OE 1=0 L

OE 2=1 L

| => circuit 1 activ; U02=HZ

OE 1=1 L

OE 2=0 L

| => U01=HZ; circuit 2 activ

Circuitele tri-state pot fi conectate in paralel pe aceeasi magistrala, dar cel mult un singur
circuit sa fie activ, iar celelalte in HZ, la un moment dat.
21. Buffer unidirectional tri-state
Bufferul unidirectional tri-state este folosit pentru interfatarea magistralelor
unidirectionale si poate fi inversor sau neinversor. Iesirea este validata cu ajutorul semnalului
OE , activ pe 0L. Daca se doreste refacerea fronturilor semnalelor, buffer-ul poate fi de tip
trigger Schimitt.

[20]

Arhitectura Calculatoarelor Rezumat subiecte

Daca magistralele contin n linii, pentru fiecare linie se utilizeaza un buffer unidirectional,
iar semnalele de validare a iesirilor sunt legate impreuna.

Se obtine astfel un buffer unidirectional pe n biti, care poate fi utilizat: ca circuit de iesire
tri-state pentru o unitate emitatoare de semnale sau ca circuit de separare intre magistrale, cand se
doreste realizarea unei magistrale locale unidirectionale.
Avantajele buffer-ului unidirectional:
* cand este utilizat ca circuit de iesire pentru o unitate emitatoare, pentru conectarea in
paralel, pe aceeasi magistrala, a mai multor circuite cu iesiri tri-state;
* permite separarea magistralelor, realizand la iesire o noua magistrala locala
unidirectionala, care poate avea caracteristici diferite fata de magistrala initiala;
* reface fan-out-ul magistralei locale de la iesire, incarcand intrarea in fan-out numai cu 1.
Principalul dezavantaj il constituie introducerea unui timp de intarziere suplimentar,
datorita intarzierii de propagare a semnalelor de la intrare la iesire.
22. Buffer-ul bidirectional tri-state
Buffer-ul bidirectional tri-state este folosit pentru interfatarea magistralelor bidirectionale,
avand structura realizata cu doua buffere unidirectionale.

[21]

Arhitectura Calculatoarelor Rezumat subiecte

Cele doua buffere unidirectionale trebuie sa fie comandate pe rand pentru evitarea
realizarii buclelor locale. Semnalele de validare a iesirilor sunt conectate prin intermediul unui
inversor. Buffer-ele componente pot fi de tip inversor sau neinversor. Semnalul de validare a
iesirilor stabileste de fapt sensul de transfer, fiind numit SENS. Cand SENS=1, buffer-ul de sus
este comandat deschis, cel de jos are iesire in HZ, iar transferul se face de la A la B. Cand
SENS=0, buffer-ul de jos este comandat deschis, cel de sus are iesirea in HZ, iar transferul se face
de la B la A. Daca magistralele contin n linii, pentru fiecare linie se utilizeaza un buffer
bidirectional, iar semnalele SENS sunt legate impreuna.

Circuitele de tip buffer bidirectional au pin de validare a circuitului

CE

activ pe 0L.

Acest semnal permite un consum mic de energie atunci cand buffer-ul nu este folosit. La unele
buffere valoarea 1L a semnalului de validare forteaza circuitele de iesire sa treaca in HZ,
indiferent de valoarea semnalului SENS. Un astfel de buffer are semnale separate pentru cele
doua sensuri de transfer, SENS1 si SENS2.
Ele sunt generate de logica de control interna:
SENS1= CE*SENS
SENS2=CE* SENS
23. Subsistemul
actiune.

de

memorie:

definitie,

obiectiv,

cai

de

Subsistemul de memorie al unui calculator reprezinta ansamblul unitatilor de memorie,


impreuna cu algoritmii necesari pentru controlul transferurilor si memorarea informatiilor,
algoritmi ce pot fi implementati hardware sau software. Subsistemul de memorie include atat
[22]

Arhitectura Calculatoarelor Rezumat subiecte

locatii de memorie propriu-zise cat si circuitele necesare pentru adresarea locatiilor si controlul
operatiilor de citire si scriere. O parte din aceste circuite se gasesc in unitatea de memorie
respectiva, altele sunt externe, fiind de obicei integrate in controlerul unitatii de memorie.
Obiectivul principal in proiectarea oricarui subsistem de memorie este realizarea unei capacitati
de memorare adecvata sistemului de calcul, cu un nivel acceptabil de performante, la un cost
rezonabil. Trebuie subliniat faptul ca nu intotdeauna obiectivul este acela de a obtine o capacitate
de memorare cat mai mare.
Pentru atingerea acestui obiectiv, exista mai multe cai de actiune:
* folosirea unui numar diferit de unitati de memorie, cu diferite raporturi
cost/performanta, organizate astfel incat sa se obtina un nivel ridicat al performantei, la un cost
mic am cuvantului de informatie memorat. Aceste unitati de memorie formeaza o ierarhie in
subsistemul de memorie.
* dezvoltarea conceptelor de memorie virtuala, pentru a elibera utilizatorul de gestionarea
spatiului de memorie si pentru a realiza programe independente de configuratia fizica a
subsistemului de memorie.
* folosirea mai eficienta a spatiului de memorie disponibil prin dezvoltarea unore metode
de alocare automata a spatiului de memorie.
* realizarea unor legaturi de comunicatie cu subsistemul de memorie, astfel incat unitatile
master conectate la acestea sa poata operacat mai aproape de viteza lor de lucru. Aceasta cale
poate fi realizata prin cresterea numarului de legaturi simultane pentru transferuri, cat si prin
cresterea dimensiunii cuvantului transferat intre memorie si unitatea master.
24. Caracteristici ale unitatilor de memorie: capacitatea de
memorare, timpul si rata de acces

Capacitatea de memorarea reprezinta numarul locatiilor de memorie continute de o unitate


de memorie. Ea depinde de tehnologia de fabricatie si se exprima in cuvinte de informatie
memorata, dimensiunea cuvantului fiind diferita de la un calculator la altul. Daca dimensiunea
cuvantului memorat este diferita de octet atunci aceasta este exprimata separat in biti.
Timpul de acces (tA) este timpul necesar localizarii unei celule de memorie, pentru
transferul de informatii la/de la locatia de memorie respectiva. Aceasta reprezinta intervalul de
timp de cand o unitate master lanseaza o comanta catre o unitate de memorie, pana cand
informatia este transferata in sensul dorit.

Timpul de acces variaza foarte mult, in functie de tipul unitatilor de memorie. El depinde
de caracteristicile fizice ale mediului de memorare, de tehnologia de fabricatie, de modul de
acces.
[23]

Arhitectura Calculatoarelor Rezumat subiecte

Rata de acces (rA) este inversa timpului de acces. rA = 1/tA [cuv]


Pentru unitatile de memorie la care transferul se face pe cuvant, rata de acces reprezinta
frecventa maxima a transferurilor de cuvinte cu memoria respectiva. In general, aceasta este o
valoare teoretica maxima, utilizata doar pentru dimensionarea magistralelor pe care se fac
transferurile.
25. Caracteristici ale unitatilor de memorie: timpul de ciclu,
costul, modul de acces
Timpul de ciclu (tc) este timpul minim intre doua accese succesive si reprezinta timpul de
cand o unitate master lanseaza o comanda spre unitatea de memorie si pana cand poate lansa o
noua comanda la aceeasi unitate de memorie.

Timpul de revenire (tr=tc-tA) reprezinta timpul minim necesar pentru inactivarea primei
comenzi pana la activarea celei de-a doua. tA este mai restrictiv decat tc, deoarece tA reprezinta un
timp de asteptare pentru unitatea master, dupa lansarea comenzii.
Rata de transfer (rT) este inversa timpului de ciclu si reprezinta cantitatea maxima de
informatie care poate fi transferata la/de la memorie intr-o secunda.
rT = 1/tc [cuv/s]
Costul (cT) include pe langa costul celulelor de memorie propriu-zise si costul circuitelor
de acces la aceste celule. Pentru compararea diverselor unitati de memorie intre ele, se utilizeaza
costul unitar (Cu), ce reprezinta costul de memorare a unui cuvant de informatie. Costul unitar se
determina prin raportarea costului total (CT) la capacitatea de memorare (CM).
CU = CT/CM [cost/cuv]
Cu cat memoria este mai rapida, cu atat costul unitar este mai mare.
Modul de acces arata ordinea in care informatia memorata poate fi accesata. Acesta poate
fi serial sau paralel.
Daca locatiile de memorie pot fi accesate in orice ordine, iar timpul de acces este
independent de locatia accesata, atunci accesul este aleator, iar unitatea de memorie se numeste
memorie cu acces aleator. In general memoriile semiconductoare sunt memorii cu acces aleator.
Daca locatiile de memorie pot fi accesate doar intr-o secventa predeterminata, iar timpul
de acces depinde de locatia accesata, atunci accesul este serial, iar memoria se numeste memorie
cu acces serial.

[24]

Arhitectura Calculatoarelor Rezumat subiecte

26. Ierarhizarea subsistemului de memorie: RP si MP


Registrele procesorului (RP) sunt cele mai rapide elemente de memorare, dar si cele mai
scumpe. Ele sunt accesate la viteza interna a procesorului gazda, viteza limitata de logica de
control a transferurilor dintre registre. Datorita tehnologiei actuale, timpii de acces sunt foarte
mici. Registrele au o capacitate de memorare mica si pastreaza informatia primara necesara
procesorului in momentul prelucrarii. Registrele sunt particulare fiecarui procesor. Ele sunt
grupate functional si sunt indentificate printr-un nume sau printr-un numar. O parte din registre
sunt folosite explicit de catre utilizator in campul instructiunii, fiind numite registre utilizator
altele sunt accesate implicit de logica de control a procesorului si sunt transparente utilizatorului.
Un procesor este cu atat mai flexibil in programare, cu cat registrele sale prezinta o simetrie mai
mare fata de setul de instructiuni. Ideal ar fi ca oricare dintre registrele disponibile utilizatorului
sa poata fi folosit cu oricare instructiune de prelucrare de operanzi, insa acest lucru poate
complica structura procesorului si poate micsora viteza de lucru.
Memoria primara sau principala (MP) reprezinta memoria de lucru a sistemului de calcul.
Ea este realizata cu circuite integrate de memorie DRAM si are o capacitate de memorare relativ
mare. MP pastreaza informatiile active, ce vor fi apelate de catre procesor, dar care nu sunt
imediat necesare acestuia. Informatiile devin active prin transferarea lor din MS in MP, fiind
memorate sub forma de blocuri de informatii, in zone de memorie, proprii fiecarui program.
Viteza de lucru a MP este mult mai mica decat a registrelor procesorului, avand timpi de acces
aleator mai mari. Principalul avantaj al MP este pretul scazut, ce permite implementarea unor
capacitati de memorare relativ mari.
27. Ierarhizarea subsistemului de memorie: MC
Memoria cache (MC) numita si memorie imediata, este o memorie de dimensiuni relativ
mici (zeci-sute de KO), mai rapida decat memoria primara, care se interpune intre procesor si
MP, in scopul reducerii discrepantelor mari dintre performantele acestora. Ea are rol de memorie
tampon intre procesor si MP, pastrand informatiile cele mai recent folosite de procesor, duplicari
ale celor din MP. MC este o memorie rapida, realizata cu circuite integrate de memorie SRAM.
Are timpul de acces de 2-10 ori mai mic (ns) decat al memoriei primare, fiind insa si de cateva
ori mai scumpa. La realizarea ei, se doreste ca procesorul sa lucreze cat mai mult timp cu MC, si
nu cu MP. Pentru o memorie cache bine implementata, procesorul lucreaza cu aceasta, circa 7090% din timpul total de lucru cu memoria.
Functionarea MC este diferita in operatii de citire, fata de cele de scriere.
* in operatiile de citire, cand procesorul doreste sa preaia o informatie din memorie, se
testeaza si daca acesta se gaseste in MC. Din memoria cache se citeste informatia, cu timpul de
acces mic al acesteia, invalidandu-se accesul la MP. Daca informatia dorita nu se gaseste in MC,
ea va fi citita din MP, cu timpul mare de acces al MP. Simultan, o linie intreaga de memorie este
transferata de catre controlerul de memorie din MP in MC. Daca procesorul doreste informatii de
pe aceeasi linie de memorie, acestea vor putea fi citite din MC.
* in operatiile de scriere MC este mai putin avantajoasa, insa aceste operatii sunt mult mai
rare.

[25]

Arhitectura Calculatoarelor Rezumat subiecte

Exista 2 algoritmi de scriere:


* WT (Write Through): fiecare scriere se face simultan in MC si in MP
* WB (Write Back): scrierea se face numai in MC, iar daca linia de date din MC
se inlocuieste cu alta din MP, mai intai se face scrierea datelor modificate in MP.
Operatiile de citire, reprezinta avantajul MC, realizate de la adrese de memorie succesive.
Cel mai dificil proces este cautarea daca data dorita se afla sau nu in MC. De aceea, MC
realizata cu memorii SRAM are doua sectiuni: una de date si una de etichete, care pastreaza
informatii suplimentare necesare procesului de cautare. Pentru cresterea eficientei, MC poate fi
implementata pe mai multe niveluri: un nivel plasat langa procesor (nivel 1) si altul extern, plasat
langa memoria primara (nivelul 2).
28. Ierarhizarea sistemului de memorie: MS
Memoria secundara (MS) este o memorie nevolatila si reprezinta o extensie ieftina a MP,
la fel cum MP este o extensie ieftina a registrelor procesorului. MS este realizata cu unitati de
memorie pe suport magnetic si are capacitati de memorare foarte mari (zeci-sute de GO). Viteza
de operare este mult mai mica decat cea a MP, avand un timp de acces cu 5-6 ordine de marime
mai mare ca al MP. Fiind foarte lenta, MS este plasata in subsistemul de intrare/iesire si este
accesata prin intermediul controlerelor. Principalul avantaj este costul unitar de memorare foarte
mic. Informatia este memorata sub formna de blocuri, organizate in fisiere de dimensiuni relativ
mari. In timpul executarii programelor blocurile de informatii sunt transferate intre MS si MP. Ele
au anumite caracteristici, putand fi pagini sau segmente. Transferurile intre MS si MP nu se fac la
nivel de cuvant ci se fac pe blocuri de informatii, deoarece timpul de cautare a datelor este mare
si odata localizate datele, ratele de transfer sunt mari. Rezulta ca timpul total de transfer este
aproximativ acelasi, fie ca se transfera un isngur bloc sau mai multe. Se doreste ca transferurile
intre MS si MP sa fie rare si scurte. Dimensiunea blocurilor transferate si numarul lor in cadrul
unui transfer au o influenta directa asupra performantelor sistemului de calcul. Daca se transfera
blocuri de dimensiuni mici, atunci transferurile vor fi mai scurte, dar mai dese. Daca blocurile de
informatie au dimensiuni mari, atunci transferurile vor fi mai rare, dar vor dura mai mult. De
aceea, in permanenta trebuie cautat un optim al numarului de blocuri care se transfera odata,
precul si al dimensiunii lor. Datorita timpului de acces mare, este util sa se transfere din MS mai
multe blocuri de informatii, chiar si atunci cand se doreste transferul unui singur bloc. Restul de
blocuri este transferat anticipandu-se utilizarea lor ulterioara de catre UC. Rezulata ca este
necesara o memorie intermediara, plasata intre MP si MS in care sa poata fi aduse in avans, in
mod anticipativ mai multe blocuri de informatii.
29. Ierarhizarea sistemului de memorie MI si MT.
Memoria intermediara (MI) numita si memorie cache pentru suporti externi sau memorie
cache de disc, este plasata intre MP si MS actionand intr-o maniera similara cu MC. Are rol de
memorie tampon care pastreaza blocurile de informatii cele mai recent accesate de un program,
duplicari ale celor din MS. MI se realizeaza din zone disponibile ale MP definite functional ca
MI. Astfel, timpul de acces la MI este la fel de mic ca cel al MP. Pentru utilizare necesita un
driver software, care poate fi o componenta a SO sau un program utilizator.

[26]

Arhitectura Calculatoarelor Rezumat subiecte

Presupunem ca la un momentdat se lanseaza in executie programul P1. Acesta devine o


nouza sarcina pentru sistem (T1) si este rulat intr-o zona proprie in MP, incepand cu blocul B1.
Atunci cand dintr-o aplicatie se cere transferul unui bloc de informatii din MS in MP, programul
memoriei cache de disc transfera in MI atat blocul de informatii solicitat cat si un numar de
blocuri adiacente acestuia. Timpul de transfer din MS in MP este proaximativ acelasi, fiint dat in
principal de timpul de acces la MS. Apoi blocul dorit se transfera catre aplicatie, din MI in zona
de memorie proprie lui T1. Daca ulterior sunt solicitate blocuri adiacente, acestea se vor gasi deja
in MI. Transferul din MI este rapid, deoarece se realizeaza intre circuite integrate de memorie.
Performantele cresc daca blocurile transferate in MI pot fi utilizate direct de catre aplicatie.
Memoria tertiara (MT) sau memoria de arhivare este o memorie nevolatila de dimensiuni
foarte mari, dar si cu timpi de acces foarte mari (zeci de secunde). Pastreaza informatii pasive,
stocate doar in scop de arhivare si accesul la acestea se face foarte rar. MT este realizata cu unitati
de memorare pe suport detasabil, optic sau magnetic. MT reprezinta colectia de casete sau CD-uri
existente si nu unitatile de memorie propriu-zise.
30. Clasificarea memoriilor semiconductoare
1. Dupa modul de transfer al informatiilor in exterior:
- memorii cu transfer paralel (pe cuvant) transfera paralel toti bitii cuvantului memorat si
accesat pe o magistrala de date de m biti. Memoriile cu transfer pe cuvant sunt mai rapide, dar si
mai scumpe. Ele reprezinta clasa de memorii semiconductoare cea mai raspandita in sistemele de
calcul.
- memorii cu transfer serial (pe bit) transfera serial pe o magistrala externa de date de 1bit
cei m biti ai cuvantului memorat si accesat. Memoriile cu transfer pe bit sunt solutii ieftine,
folosite in sistemel de calcul simple in care nu sunt necesare memorii performante.
2. In functie de modul in care este memorata informatia:
[27]

Arhitectura Calculatoarelor Rezumat subiecte

- memorii nevolatile isi pastreaza continutul si dupa intreruperea alimentarii cu energie


electrica pentru un timp nedefinit. Ele memoreaza informatii necesare la urmatoarea pornire a
sistemului de calcul sau dupa RESET, cand memoria de lucru a sistemului nu contine informatii
valide. Memoria nevolatila pastreaza programe executate de UC pana la incarcarea sistemului de
operare, o setie de parametri de sistem eventual starea curenta si variabilele de lucru ale
programelor necesare sistemelor de calcul folosite la conducerea proceselor.
- memorii volatile pastreaza informatiile doar atat timp cat memoria este alimentata cu
energie electrica. Dupa intreruperea alimentarii ele isi pierd informatiile intr-un timp relativ scurt.
Aceste memorii sunt folosite ca memorie de lucru in sistemele de calcul. Cand memoriile volatile
sunt alimentate informatiile din celulele de memorie pot fi memorate:
* static ambele niveluri logice sunt memorate stabil;
* dinamic informatia se pierde in timp si celulele de memorie trebuie sa fie improspatate
periodic. Teoretic, un singur nivel logic este instabil si se pierde in timp, celalalt nivel logic fiind
memorat stabil. Practic, procesul de improspatare se aplica pentru toate celulele de memorie.
3. Dupa tipul operatiilor executate la celulele de memorie:
- memorii ROM (Read-Only Memory) sunt memorii nevolatile care pot fi doar citite de
unitatile master. Ele au un singur ciclu de acces la memorie, numit ciclu de citire din memorie.
- memorii RWM (Read-Write Memory) pot fi si citite si scrise de unitatile master si sunt
memorii volatile. Ele au doua cicluri diferite: ciclu de citire din memorie si ciclu de scriere in
memorie, identificate printr-un semnal specific.
4. Dupa modul de acces la locatiile de memorie:
- memorii cu acces serial (SAM = Serial Access Memory) locatiile de memorie pot fi
accesate doar intr-o anutima ordine, iar timpul de acces depinde de locatia accesata. Memoriile
semiconductoare cu acces serial nu necesita magistrala externa de adrese, avand implementat un
numar de adrese, care primeste semnale de comanda pentru incrementare sau decrementare.
Circuitele de memorie cu acces serial pot fi:
* FIFO : folosite ca memorii tampon intre doua unitati de prelucrare aflate pe acelasi flux
de informatii.
* LIFO : utilizate ca memorii de tip stiva.
- memorii cu acces aleator (RAM = Random Access Memory) locatiile de memorie pot fi
accesate in orice ordine, iar timpul de acces nu depinde de locatia accesata.
Memoriile RAM pot fi:
*SRAM (Static RAM) memoreaza informatia in mod static.
*DRAM (Dynamic RAM) memoreaza informatia in mod dinamic.
5. Dupa numarul de accese paralele care pot fi initiate:
- memorii monoport permit un singur acces la un moment dat la celula de memorie
selectata prin magistrala de adrese. Daca doua mastere dorect accesul simultan la circuitul de
memorie monoport, atunci masterul cu prioritatea mai mare este servit, iar cel cu prioritatea mai
mica este pus in asteptare. Majoritatea circuitelor integrate de memorie sunt de tip monoport.
- memorii multiport permit accese multiple la un moment dat de la mai multe unitati
master, fie la celule de memorie diferite, fie prin operatii diferite la aceeasi celula de memorie.
Ele au performante superioare fata de memoriile monoport, insa necesita magistrale de adrese
multiple. In general, memoriile multiport sunt memorii de tip RAM si de aceea se mai numesc
memorii RAM multiport.
[28]

Arhitectura Calculatoarelor Rezumat subiecte

31. Caracteristici ale memoriilor cu acces aleator


Circuitele integrate de memorie cu acces aleator sunt utilizate pentru implementarea de
MC si MP din subsistemul de memorie sau pentru realizarea unor memorii tampon plasate in
subsistemul I/O. Indiferent de tipul loc, CIM au o serie de caracteristici comune;
1. Locatiile de memorie sunt aranjate sub forma matriceala intr-o arie de memorie patrata sau
dreptunghiulara. Celulele de memorie difera de la un tip de memorie la altul. Fiecare locatie este
accesata cu ajutorul unei adrese de memorie, primita din exterior sub forma unei configuratii
binare, pe o magistrala unidirectionala de adrese (ADR).
2. Intre numarul liniilor de adresa si capacitatea memoriei, exprimata in cuvinte de memorie, exista
o relatie biunivoca: n linii de adresa dim. mem = 2n cuvinte
Dimensiunea cuvantului memorat arata dimensiunea magistralei de date, pe care se efectueaza
transferurile de informatii cu exteriorul.
Simbolul unui CIM:

3. In interiorul circuitului de memorie, adresa primita din exterior este impartita in doua campuri.
Acestea permit selectarea unei linii de celule de memorie, prin intermediul unui decodificator si a
coloanei locatiei dorite, din aria de locatii de memorie, printr-un multiplexor sau demultiplexor.
Daca aria de locatii de memorie este patratam atunci cele doua campuri contin un numar egal de
linii de adresa.
4. Pentru conectarea mai multor circuite de memorie la aceeasi magistrala, acestea trebuie sa
dispuna de circuite de iesire de tip tri-state. Pe aceeasi magistrala, memoriile vor fi active pe rand,
cand una este accesata, celelalte vor avea circuite de iesire trecute in starea HZ. Rezulta ca
memoriile vor avea un semnal specific de validare a iesirilor circuitului de memorie, numit
generic OE . Daca OE=0 , iesirile memoriei sunt activate si informatiile ajung pe
magistrala de date. Suplimentar exista un semnal specific de validare a circuitului, activ pe 0L, ce
permite un consum mic de energie atunci cand memoria nu este folosita, numit CE sau CS
.
5. Memoriile RWM au doua cicluri de memorie diferite, citire si scriere, diferentiate printr-un
semnal activ pe 0L, numit WE . Daca WE=0 , atunci se realizeaza un ciclu de scriere in
memorie, iar pentru WE=1 , ciclul este de citire.
32. Memoria ROM: simbol,
diagrama ciclului de citire.

[29]

schema

bloc,

functionare,

Arhitectura Calculatoarelor Rezumat subiecte

Memoria ROM este o memorie nevolatila cu acces aleator, care poate fi doar citita de o
unitate master. Deoarece ROM are un singur ciclu de memorie, numit ciclu de iesire, magistrala
de date este unidirectionala, de iesire din circuit.

CE , pentru validarea circuitului, care


permite un consum mic de energie atunci cand memoria nu este folosita si OE , pentru
Semnalele de comanda, active pe 0L sunt:

validarea iesirilor memoriei, care permite scoaterea informatiilor pe magistrala de date sau
trecerea iesirilor in HZ si separarea de magistrala. Daca memoria poate fi programata de
utilizator, ea contine si un semnal de intrare pe care se aplica ternsiunea de programare.
Memoria ROM are o structura de circuit logic combinational. Schema bloc, pentru
simplitate, s-a presupus ca are celulele de memorie dispuse intr-o arie patrata de locatii de
memorie, fiecare locatie memorand un cuvant de m biti.

Locatiile de memorie sunt accesate prin intermediul adreselor trimise pe magistrala de


adrese. Semnalele de validare a circuitului si a iesirilor actionaeaza prin intermediul logicii de
control. Adresa primita din exterior este impartita in doua campuri de cate n/2 linii de adresa.
Primul camp permite selectarea unei linii de celule de memorie de 2 n/2 linii, prin intermediul unui
decodificator. Al doilea camp, printr-un multiplexor, selecteaza coloana locatiei dorite, din linia
de locatii de memorie selectata de DCD. Deoarece cuvantul memorat este pe m biti, selectia

[30]

Arhitectura Calculatoarelor Rezumat subiecte

cuvantului din linie se face prin m multiplexoare cu 2 n/2 intrari si o iesire, care formeaza blocul
MUX.
Diagrama de semnale pentru ciclul de citire din ROM cuprinde cele doua semnale de
comanda si liniile magistralelor de adrese si de date. Liniile de adresa comuta simultan si apoi
raman stabile pe durata intregului ciclu de citire.

Semnalul

CE

se activeaza inaintea lui

OE

permitand selectarea celulei de

memorie, prin adresa transmisa pe magistrala de adrese ADR. Cei doi timpi reprezentati in fugira
sunt timpul de acces si timpul de ciclu la ROM.
Se observa ca datele devin stabile la iesire, dupa un anumite timp de la activarea
semnalelor de comanda. Datorita timpilor de intarziere de propagare prin circuitul de iesire,
liniile de date devin stabile la momente de timp diferite, mai devreme sau mai tarziu, dar nu mai
tarziu de o valoare limita impusa de foaie de catalog prin timpul de acces. Dupa transferul datelor
semnalul de comanda se inactiveaza simultan.
33. Memoria ROM: simbol, celula de memorie, circuit de
iesire, variante de comanda
Memoria ROM este o memorie nevolatila cu acces aleator, care poate fi doar citita de o
unitate master. Deoarece ROM are un singur ciclu de memorie, numit ciclu de iesire, magistrala
de date este unidirectionala, de iesire din circuit.

[31]

Arhitectura Calculatoarelor Rezumat subiecte

CE , pentru validarea circuitului, care


permite un consum mic de energie atunci cand memoria nu este folosita si OE , pentru

Semnalele de comanda, active pe 0L sunt:

validarea iesirilor memoriei, care permite scoaterea informatiilor pe magistrala de date sau
trecerea iesirilor in HZ si separarea pe magistrala. Daca memoria poate fi programata de
utilizator, ea contine si un semnal de intrare pe care se aplica tensiunea de programare.
Celele de memorie difera de la un tip de memorie la altul, fiind realizate cu 1 sau 2
tranzistoare. Ele au o structura simpla in care tranzistoarele joaca rol de comutatoare. Celulele de
memorie pot fi conectate la coloane astfel incat randurile si coloana respectiva sa formeze o
functie cablata din cele 4 functii logice de baza. Structurile SI-NU sunt mai lente decat cele SAUNU, dar permit densitati de integrare mai mari.

Cand comutatoarele sunt inchise prin selectarea randului, ele transfera la iesire o valoare
logica bine definita, care poate fi 0L sau 1L. Daca acestea sunt permanent deschise ele nu
modifica valoarea logica implicita a coloanei. Valorile memorate sunt trecute in dreptul celulelor.
Atunci cand celula este selectata, prin activarea liniei corespunzatoare es transfera la iesire,
valoarea prestabilita, conform functiei locice sau nu modifica iesire si coloana pastreaza valoarea
logica im....
Circuitul de iesire din ROM este cu trei stari si permite scoaterea datelor pe magistrala sau
separarea memoriei de
magistrala de date.
CE
OE
Circuit de iesire
Comanda circuitului de
iesire se face prin
urmatoarea logica de 1
control:
X
HZ
0
1
HZ
0
0
DATA

Cand memoria ROM nu este validata, ea trebuie sa fie separata de magistrala. De aceea
CE=1 forteaza circuitul de iesire sa treaca in HZ, indiferent de valoarea semnalului OE .
Logica de control inactiveaza blocurile interne, ceea ce permite un consum mic de energie. Daca
CE=0 circuitul de iesire este comandat doar de semnalul OE . Cand OE=1 , iesirile
sunt trecute in HZ si memoria este separata de magistrala de date, iar cand
iesire permite scoaterea informatiilor pe magistrala.
[32]

OE=0 , circuitul de

Arhitectura Calculatoarelor Rezumat subiecte

De obicei, semnalul

CE

se activeaza inaintea semnalului

OE , pentru a permite

curcuitelor interne sa selecteze o data valida si sa o transfere spre iesire, inainte de activarea
circuitului de iesire. Astfel magistrala de date este ocupata doar cat timp se efectueaza transferul
propriu-zi, nu si in timpul selectarii celulei de memorie, timp care poate fi mascat printr-un
transfer suplimentar pe magistrala, intre alte unitati conectate la aceasta.
Comanda memoriei ROM, pentru accesul la magistrala de date, se face intr-o maniera
simplificata, utilizandu-se un singur semnal de comanda din exterior, corespunzator lui OE ,
respectiv CE
CE
0
0

OE
1
0

Exista
memoria ROM

Circuit de iesire
HZ
CE
DATA
1
0

OE
1
0

Circuit
iesire
HZ
DATA

cu un singur semnal, corespunzator lui OE sau CE :

de
doua variante diferite prin care
poate fi comandata din exterior

In primul caz, circuitul de memorie este validat permanent, ceea ce conduce la un consum
mare de energie, in special daca memoria este accesata rar. Totusi timpul de acces poate fi
micsorat fata de comanda cu semnale separate, deoarece in orice moment de timp exista o linie
deja selectata si transferata spre iesire. In plus, magistrala de date este ocupata doar cat timp se
efectueaza transferul propriu-zis.
In cel de-al doilea caz, circuitul de iesire se activeaza simultan cu memoria, la comanda
semnalului CE , moment in care amgistrala de date trebuie sa fie deja libera.
Pe magistrala vor apare initial date invalide deoarece circuitul de iesire este deja activat si
dupa selectarea celulei de memorie, se vor obtine la iesire date valide si stabile.

[33]

Arhitectura Calculatoarelor Rezumat subiecte

34. Tipuri constructive de memorie ROM: MROM, PROM,


EPROM
MROM (Mask-programmed ROM) sau ROM programata prin masca, este o memorie al
carei continut este stabilit de fabricant, neputand fi modificat sau sters de catre utilizator.
Principalele avantaje sunt pretul mic si fiabilitatea ridicata. Deoarece continului memoriei este
cunoscut la momentul fabricatiei celulele de memorie sunt conectate sau nu la coloanele
corespunzatoare printr-o masca de contacte electrice. Acolo unde comutatorul celulei trebuie sa
fie deshis, contactul electric cu coloana nu se mai face, si practic, comutatorul nu se mai
realizeaza.

In functie de tehnologia de realizare bipolara sau MOS, celulele contin cate o singura
componenta, dioda sau tranzistor bipolar sau tranzistor MOS. Datorita modificarilor frecvente
care au loc in componenta software a unui calculator, aceste memorii sunt folosite din ce in ce
mai putin ca circuite distincte. Domeniul de aplicabilitate se rezuma doar la sistemele de calcul
simple sau integrate in alte circuite digitale.
PROM (Programable ROM) este o memorie care poate fi scrisa o singura data de catre
utilizator, prin aplicarea unui ciclu de programare specific. Celulele de memorie sunt de acelasi
tip cu cele ale MROM. Toate comutatoarele sunt plantate si conectate la coloane, prin fuzibile de
polisiliciu. In procesul de programare unele fuzibile sunt arse printr-un curent mare, datorat unei
tensiuni de programare mai mari decat cea de alimentare. Odata arsa, fuzibila nu mai poate fi
refacuta. In general continutul memoriei PROM este pastrat de utilizator intr-un fisier. Pentru
programare, acesta este transmis unui programator de memorii. Programarea se face la nivel de
cuvant si de aceea pot exista sesiuni multiple de programare a aceleiasi memorii, atat timp cat se
ard noi fuzibile. Memoria PROM neprogramata memoreaza in toate locatiile valoarea 1L. Prin
programare se scriu valori de 0L in locatiile de memorie unde se doreste acest lucru prin arderea
fuzibilelor. O locatie de memorie scrisa cu Ol nu poate fi reprogramata cu 1L insa valorile 0L pot
si programate in mai multe sesiuni.
EPROM (Erasable PROM) este o memorie care poate fi scrisa si stearsa de mai multe ori
(sute-mii de cicluri) de catre utilizator. Scrierea se face intr-un programator de memorii si
necesita o tensiune de programare mai mare decat cea de alimentare, aplicata prin exterior.
Memoria este realizata in tehnologie MOS, iar celulelele contin cate un singur tranzistor n-MOS
cu dublu poarta, una pentru comanda si una izolata. Programarea celulei consta in aplicarea unei
tensiuni mari pe poarta de comanda, care are ca efect atragerea de electroni pe poarta izolata, din
canalul n. Acest fenomen, numit injectie de electroni duce la acumularea de sarcini-electrice
negative pe poarta izolata si la blocarea tranzistorului respectiv. Programarea se mentine un timp
indelungat, cel putin 10 ani, dar este sensibila la radiatiile luminoase. Stergerea se face simultan
[34]

Arhitectura Calculatoarelor Rezumat subiecte

pentru toate locatiile de memorie, prin expunerea memoriei la radiatii ultraviolete. Pentru aceasta,
circuitul de memorie este incapsulat in ceramica si are o fereastra de cuart. Daca nu are fereastra
de cuart, memoria poate fi programata o singura data si se numeste OTPROM (One Time
PROM). Stergerea dureaza aproximativ 20 min.
35. Tipuri constructive de memorii ROM: EEPROM, FLASH
ROM
EEPROM (Electrically EPROM) este o memorie care poate fi stearsa si programata
electric de catre utilizator, folosind o tensiune mai mare decat cea de alimentare, generata intern.
De aceea memoria EEPROM poate fi programata si stearsa in sistemul de calcul in care se
foloseste, fara a fi necesar un programator de memorii, dar e scumpa. Este o memorie realizata in
tehnologie MOS ca si EPROM, dar are o densitate de integrare mai mica deoarece necesita doua
tranzistoare pe celula de memorie. Unul este pentru memorare, fiind de acelasi tip ca la EPROM,
al doilea este de acces.
Atat stergerea cat si programarea se pot face aleator la nivel de cuvant. Numarul ciclurilor
de programare si de stergere este mult mai mare decat la memoria EPROM (zeci-sute de mii de
cicluri). Totusi aceste cicluri sunt foarte lente si de aceea memoria este considerata tot de tip
ROM. Unele memorii indica in exterior printr-un semnal specific, cand se executa un ciclu de
scriere. Programarea este realizata prin intermediul unei porti ezolate, fie prin injectie de
electroni, ca la EPROM, fie prin efect tunel Fowler-Nordheim, in functie de modul de comanda a
tranzistoarelor. Programarea se mentine timp indelungat (zeci-sute de ani). Stergerea se realizeaza
electric, la nivel de cuvant, tot prin efect tunel.
Pentru compatibilitate electrica, logica interna a celor doua tipuri de memorii este astfel
realizata incat celulele sterse sa contina 1L, iar cele programate sa memoreze 0L. Programarea
sau stergerea sunt comandate in functie de modul in care este aplicata tensiunea de programare pe
cele doua tranzistoare ale celulei de memorie. Tensiunea de programare este generata intern si
este mai mare decat tensiunea de alimentare.
FLASH ROM (numita si FLASH) este o memorie careimbina avantajele memoriilor
EPROM si EEPROM, permitand o viteza de stergere mai mare, o densitate mai mare de integrare
si un cost unitar mai mic. Totodata numarul ciclurilor de programare si de stergere este mai mare
decat la EEPROM. Stergerea este mult mai rapida deoarece nu se face individual, la nivel de
cuvant, ci pentru toata memoria odata sau pe blocuri mari de cuvinte, Procesul de stergere
dureaza mai putin de 1s. Celulele de memorie sunt realizate ca la EPROM, cu cate un singur
tranzistor de tip n-MOS cu dublu poarta, ceea ce asigura o densitate mai mare de integrare.
Operatiile de citire sunt realizate la fel ca la EPROM. Fara tensiunea de programare, memoria
FLASH functioneaza ca o memorie EPROM standard. De asemenea, operatiile de programare
sunt similare, realizate la nivel de cuvant, fie prin injectie de electroni in poarta izolata, fie prin
efect tunel Fowler-Nordheim.
Tensiunea de programare este mult mai mare decat cea de alimentare, si poate fi generata
intern sau furnizata din exterior. Algoritmul de programare a fiecarui cuvant este de obicei insotit
de operatia de verificare, iar in cazut in care programarea nu a fost facuta corect, aceasta este
reluata. Mecanismul de stergere este inca diferit fata de celelalte memorii, realizandu-se prin
efect tunel Fowler-Nordheim. Acest proces are loc in sens invers programarii. Algoritmul de
[35]

Arhitectura Calculatoarelor Rezumat subiecte

stergere presupune mai intai programarea integrala a blocului respectiv cu 0L si este de asemenea
insotit de operatia de verificare. Datorita organizarii pe blocuri de informatii, memoria FLASH
permite integrarea unor mecanisme hardware de protectie a informatiilor care restrictioneaza
accesul la anumite blocuri, in operatiile de programare sau stergere.

36. Memorii SRAM: caracterizare, simbol, functionarea celulei


de memorie
Memoria SRAM (Static RAM) este o memorie RAM statica, in care informatia este
memorata intr-un mod stabil, pe ambele niveluri logice, cat timp memoria este alimentata. Este
realizata in tehnologii rapide, cu timpi de acces foarte mici. Fiind o memorie care poate fi si citita
si scrisa, SRAM va avea magistrala bidirectionala de date si doua cicluri diferite de memorie:
ciclul de citire si ciclul de scriere, identificate de semnalul WE activ pe 0L.
Simbolul memoriei SRAM:

Deoarece circuitul de iesire este activ doar in ciclurile de citire din memorie, functia
semnalului OE poate fi inglobata in celelalte doua semnale de comanda, in special la
memoriile cu magistrale separate de date, de intrare si de iesire.
Memoria SRAM poate fi:
* SRAM asincrona: nu necesita semnal de ceas pentru sincronizarea cu unitatea
master. Memoriile asincrone sunt mai lente decat cele sincrone, dar sunt mai ieftine si au consum
de energie mic.
* SRAM sincrona: necesita un semnal de ceas pentru validarea semnalelor de
control. Ceasul primit din exterior permite operarea memoriei, sincron cu unitatea master.
Memoriile sincrone sunt foarte rapide, cu timpi de acces sub 10ns, pot functiona la tensiuni de
alimentare mici, dar sunt scumpe. Pot fi: PBS (Pipelined Burst Synchronous), FTS (Floro
Through Synchronous), ZBT (Zero Bus Turnaround) SRAM.
Celulele de memorie SRAM sunt realizate cu circuite basculante bistabile, cate unul
pentru fiecare bit de informatie memorat. Pentru a face diferenta intre operatiile de citire si
scriere celula are doua linii de bit.

[36]

Arhitectura Calculatoarelor Rezumat subiecte

Daca celula nu este accesata, T1 si T2 sunt blocate si se comporta ca niste comutatoare


deschise, iar CBB este izolat si memoreaza stabil valorile determinate anterior, generate de
iesirile celor doua inversoare. Presupunand ca celula memoreaza valoarea 0L, aflata la iesirea
inversorului I, acesta genereaza la iesirea lui I2 valoarea 1L, care mentine stabila valoarea 0L la
iesirea lui I1. Se observa ca la iesirea celor doua inversoare totdeauna vor exista valori logice
complementare. Celula de memorie este accesata in operatiile de citire sau scriere prin celectarea
intregului rand de celule de memorie, activandu-se linia de selectii a randului respectiv. In
operatiile de citire, comutatoarele T1 si T2 se inchid si permit scoaterea valorilor CBB pe liniile de
bit ale tuturor celulelor de pe randul selectat. Acestea ajung la amplificatoarele de send, care
genereaza valorile logice memorate.
In ciclurile de scriere, prin inchiderea comutatoarelor T1 si T2 are loc comutarea CBB al
cuvantului de memorie selectat, in conformitate cu valorile logice de pe liniile de bit, generate de
amplificatoarele de scriere. In general fiecare celula de memorie este realizata cu 6 tranzistoare.
Deoarece liniile de bit sunt preincarcate la 1L, tranzistoarele T 5 si T6 pot fi inlocuite cu rezistente.
In acest caz celula de memorie va avea doar 4 tranzistoare si va fi mai compacta, dar va avea
consum de energie mai mare.

Memoria SRAM are o densitate de integrare mica deorece foloseste un numar relativ
mare de tranzistoare pentru fiecare locatie de memorie. Particularitatile constructive ale celulelor
de memorie genereaza dezavantaje: densitate de integrare mica, consum energetic mare, pret
unitar mare pe cuvantul de informatie memorat.
37. Memorii SRAM: schema
diagrame de semnale

[37]

bloc,

ciclurile

de

memorie,

Arhitectura Calculatoarelor Rezumat subiecte

Celulele de memorie sunt dispuse intr-o arie patrata de locatii de memorie, fiecare locatie
memorand un cuvant de m biti. Semnalele de comanda actioneaza prin intermediul logicii de
control. Magistrala de date este bidirectionala. Daca memoria SRAM este organizata la nivel de
bit magistrala de date este plementata pe linii separate de intrare si de iesire.
Locatiile de memorie sunt accesate prin intermediul adreselor, trimise pe magistrala de
adrese intr-o maniera similara cu accesarea locatiilor la memoria ROM. Adresa primita din
exterior este impartita in doua campuri, de cate n/2 linii de adresa. Primul camp permite
selectarea unei linii de celule de memorie din cele 2 n/2 linii, prin intermediul unui decodificator.
Al doilea camp selecteaza coloana locatiei dorite, din cele 2 n/2 coloane de m biti ale liniei de
locatii de memorie selectata de DCD.
Circuitul MUX/DMUX functioneaza ca multiplexor in ciclurile de citire si ca
demultiplexor in ciclurile de scriere. In operatiile de citire linia selectata este transmisa la intrarea
MUX, prin intermediul amplificatoarelor de sens, iar apoi coloana selectata este transmisa pe
magistrala de date, prin circuitul de iesire. In operatiile de scriere, cuvantul din exterior este
transmis prin DMUX, pe coloana selectata de al doilea camp de adrese. Cuvantul este inscris in
celula de memorie din linia selectata cu ajutorul smplificatoarelor de scriere, care pozitioneaza
liniile de bit ale celulei.
Diagrama de semnale pentru ciclul de citire din memoria SRAM asincrona este similar cu
cea a memoriei ROM.

La memoriile asincrone o noua operatie poate incepe dupa timpul de ciclu. La memoriile
sincrone, adresele sunt memorate intern, ceea ce permite ca operatiile de acelasi tip, citire sau
[38]

Arhitectura Calculatoarelor Rezumat subiecte

scriere, la adrese succesive sa se faca prin incrementarea interna a adresei, fiind astfel mai rapide.
Diagrama de semnale pentru ciclul de scriere in memoria SRAM asincrona:

Pentru memoriile SRAM asincrone cu magistrala comuna de date, comandate doar de


semnalele CE si WE , diagrama de semnale pentru ciclul de scriere este diferita.

Se observa ca magistrala de date este ocupata mai mult timp decat in cazul anterior.
Semnalul WE nu trebuie activat dupa semnalul CE , deoarece, in timpul scrierii, s-ar activa
circuitul de iesire din SRAM.
38. Memorii DRAM: caracterizare, simbol, functionarea celulei
de memorie 3T DRAM
Memoria DRAM este o memorie volatila cu acces aleator, care memoreaza informatia in
mod dinamic. Este realizata in tehnologie CMOS, cu consum foarte mic de energie. Datorita
particularitatilor constructive ale celulelor de memorie, informatia 0L este memorata stabil, dar
informatia 1L se pierde in timp si necesita improspatarea periodica a memoriei, de unde si
denumirea acesteia. Memoria DRAM este mult mai lenta decat memoria SRAM, din cauza
mecanismului specific de memorare a informatiilor. Timpul de acces la DRAM este de 2-10 ori
mai mare decat de SRAM si variaza in functie de tipul accesului la memorie. In acces aleator,
timpul de acces este mare, dar scade foarte mult daca se restrictioneaza accesul in mod pagina si
poate ajunge doar de 2 ori mai mare decat al memoriei SRAM.

[39]

Arhitectura Calculatoarelor Rezumat subiecte

Celula de memorie este mult mai mica decat la memoria SRAM ceea ce permite
realizarea unor densitati mari de integrare. Circuitele de memorie DRAM au capacitati de
memorare mari si implicit un numar mare de linii de adresa. Pentru micsorarea numarului de
legaturi cu exteriorul si implicit al costului unitar, memoria DRAM se conecteaza in exterior, pe
magistrala de adrese, doar cu jumatate din liniile de adresa. Cele n linii ale magistralei de adrese
necesare accesarii memoriei sunt impartite in doua mappuri de cate n/2 linii, numite adresa de
rand, respectiv adresa de coloana. Ele sunt introduse in memoria DRAM in doi pasi succesivi,
fiind memorate in registre interne separate, cu ajutorul a doua semnale de comanda. Acestea sunt
active pe 0L si sunt numite dupa adresa pe care o memoreaza: RAS (Row Adress Strobe) si
CAS (Column Address Strobe).
O particularitate a circuitelor de memorie DRAM, il constituie faptul ca numarul liniilor
de adresa este totdeauna par pentru a permite impartirea adresei in doua campuri egale. Rezulta
ca la circuitele de memorie DRAM, capacitatile de memorie cresc exponential cu baza 4. Unele
memorii DRAM dispun de semnal de validare a iesirilor ( OE ), ceea ce permite o conectare
mai judicioasa la magistrala de date. Fiecare bit de informatie este memorat prin incarcarea sau
descarcarea unui condensator. Cand condensatorul este incarcat, spunem ca se memoreaza
valoarea 1L, iar cand acesta este descarcat, valoarea memorata de 0L. Mecanismul de memorare
nu presupune consum de curent de la sursa de alimentare.
Celula 3T DRAM contine doar 3 tranzistoare din celula SRAM. Mecanismele de citire si
scriere sunt usor de implementat, insa celula contine multe conductoare, deoarece necesita linii
separate de bit si pentru selectia randului, in citire sau scriere.

Elementul de memorare a informatiei este T 3 prin capacitatea parazita poarta-sursa a


acestuia. Daca celula nu este accesata T1 si T2 sunt blocate si se comporta ca niste comutatoare
[40]

Arhitectura Calculatoarelor Rezumat subiecte

deschise, iar T3 este izolat. Daca pe poarta lui T3 exista un potential de 0V condensatorul este
descarcat si isi pastreaza starea un timp nedefinit. Daca este memorata valoarea 1L, atunci
condensatorul este incurcat la un anumit potential care tinde sa scada spre zero. Celula de
memorie este accesata prin selectarea intregului rand de celule de memorie, activandu-se linia de
selectie a randului respectiv, corespunzatoare operatiei de citire sau de scriere. In operatiile de
citire comutatorul T1 se inchide si permite scoaterea pe linia de bit de citire, a valorii logice
corespunzatoare starii lui T3: daca este memorat 1L, T3 se inchide si trece linia de bit de citire in
0L, iar daca este memorat 0L, T3 este blocat si linia de bit pastreaza valoarea implicita 1L.
Valoarea liniei de bit este transmisa amplificatorului de sens, care o inverseaza si genereaza
valoarea logica memorata. Operatia de citire este nedistructiva. In operatiile de scriere,
amplificatorul de scriere pozitioneaza linia de bit de scriere in conformitate cu valoarea logica ce
se doreste a fi memorata. Prin inchiderea lui T 2, potentialul de pe linia de bit de scriere este
transmis pe poarta lui T3 incarcand sau descarcand capacitatea parazita. Apoi comutatorul T2 se
deschide.
39. Memorii DRAM: caracterizare, functionarea celulei de
memorie 1T DRAM, simbol

Celula 1T DRAM contine doar un singur tranzistor, cu rol de comutator pentru accesul la
celula si un condensator de stocare a sarcinilor, ca element de memorare. Dimensiunea celulei
este redusa la maxim, avand numar minim de tranzistoare si conductoare, dar mecanismele de
citire si scriere sunt mai complexe. Densitatea de integrare este foarte mare, ceea ce permite
realizarea unor circuite de memorie DRAm ieftine si cu capacitati de memorare mari. Celula 1T
DRAM este mai mare decat celula memoriei ROM, doarece necesita in pus un condensator. De
aceea densitatea de integrare este mai mica decat a memoriei ROM.
Daca celula nu este accesata, T1 este blocat si se comporta ca un comutator deschis.
Condensatorul CS este izolat, iar tensiunea dintre armaturi arata valoarea logica memorata. Cand
celula memoreaza 0L, condensatorul CS este descarcat si isi pastreaza starea un timp nedefinit.
Cand este memorata valoarea 1L, C S este incarcat la o anumita tensiune care tinde sa scada spre
zero. Celula este accesata prin activarea liniei de selectie a
randului respectiv, care duce la inchiderea tuturor comutatoarelor
T1 si la conectarea condensatoarelor CS de pe linia selectata, la
liniile de bit corespunzatoare. Operatiile de citire si scriere au loc
prin transferul de sarcini electrice, intre linia de bit si
condensatorul celulei.
Operatia de scriere intr-o celula 1T DRAM este mai
simpla decat citirea, ciind similara cu cea de la celula 3T DRAM.
Amplificatorul de scriere pozitioneaza tensiunea pe linia de bit in
conformitate cu valoarea logica, care se doreste a fi memorata.
Prin activarea liniei de selectii a randului, comutatorul T1 se
inchide si tensiunea de pe linia de bit forteaza incarcarea sau
descarcarea condensatorului CS. Apoi comutatorul T1 se deschide
si izoleaza celula. In operatiile de citire, prin inchiderea lui T1 se
realizeaza un transfer de sarcini electrice intre condensatorul celulei si capacitatea parazita a liniei
[41]

Arhitectura Calculatoarelor Rezumat subiecte

de bit. Capacitatea CB este preincarcata la jumatate din tensiunea de alimentare, fiind de 10-100
ori mai mare decat capacitatea condensatorului CS. Transferul de sarcini electrice genereaza o
mica variatie a tensiunii pe linia de bit, detectata si amplificata de amplificatorul de sens.
Daca celula memoreaza 1L, tensiunea pe CS este mai mare decat pe CB si va apare un
transfer de sarcini de la CS la CB, care tinde sa creasca tensiunea pe linia de bit peste valoarea
VDD/2. Amplificatorul de sens sesizeaza aceasta variatie si o amplifica generand la iesire 1L.
Daca este memorata valoarea 0L, tensiunea pe CS este mai mica decat pe CB si va apare un
transfer de sarcini de la CB la CS. Aceasta tinde sa scada linia de bit, sub valoarea V DD/2, iar
amplificatorul de sens genereaza la iesire 0L.
Spre deosebire de celula 3T DRAM, citirea este distructiva in acest caz, deoarece
transferul de sarcini duce la modificarea tensiunii condensatorului celulei. De aceea celula trebuie
improspatata dupa fiecare citire. Amplificatoarele de scriere comanda rescrierea tuturor celulelor
de memorie de pe randul selectat, cu valorile generate de amplificatoarele de sens.
40. Memorii DRAM: schema bloc, functionare, ciclurile de
citire si scriere.
Celulele de memorie sunt dispuse intr-o arie patrata sau dreptunghiulara de locatii de
memorie, fiecare locatie memorand un cuvant de m biti. Semnalele de comanda actioneaza prin
intermediul logicii de control. Eventual, memoria DRAM poate avea circuit intern de
improspatare, care presupune un numar de adrese de rand si un ceas de timp real.
Locatiile de memorie sunt accesate prin intermediul adreselor primite din exterior pe
magistrala de adrese, in doi pasi succesivi. Mai intai apar adresele de rand, care sunt memorate in
latch-ul adreselor de rand, cu ajutorul semnalului de comanda RAS , activ pe 0L. Ele permit
selectarea unei linii de celule de memorie, prin intermediul decodificatorului. Ulterior sunt
trimise adresele de coloana, care sunt memorate in latch-ul adreselor de coloana cu ajutorul
semnalului de comanda CAS , activ pe 0L. Aceste adrese selecteaza coloana locatiei dorite
pentru efectuarea transferului, din linia selectata, prin intermediul circuitului MUX/DMUX.
Circuitul MUX/DMUX functioneaza ca multiplexor in ciclurile de citire si ca
demultiplexor in ciclurile de scriere. In operatiile de citire, intregul continut al liniei selectate este
transmis la intrarea MUX, prin intermediul amplificatoarelor de sens. Apoi coloana selectata de
multiplexor este transmisa pe magistrala de date, prin circuitul de iesire. In operatiile de scriere
cuvantul din exterior este transmis prin DMUX, pe coloanma selectata de adresa de coloana.
Cuvantul este inscris in celula de memorie din linia selectata, cu ajutorul amplificatoarelor de
scriere. Circuitul I/O este similar cu cel de la memoria SRAM. Magistrala de date este
bidirectionala: daca memoria DRAM este organizata la nivel de bit, magistrala de date este
implementata pe linii separate, de intrare si de iesire.
Diagrama de semnale pentru ciclul de citire din memoria DRAM, in acces aleator contine
semnalele de comanda si cele doua magistrale de adrese si date. Pentru ca memorarea adreselor
sa fie corecta, adresele de rand si de coloana trebuie sa fie stabile un intervat de timp inainte si
dupa momentul activarii semnalelor de comanda corespunzatoare, RAS si CAS . Acestea,
dupa activare, trebuie sa ramana active pana la sfarsitul ciclului, deoarece, prin logica de control,
ele au si rol de validare a circuitului de memorie si a iesirilor.
[42]

Arhitectura Calculatoarelor Rezumat subiecte

Datele se obtin la iesire dupa tA, care este putin mai mare decat tRAC. In general tRAC este
timpul de referinta pentru accesele aleatoare la DRAM. Timpul de ciclu este aproape dublu,
deoarece in timpul de revenire se realizeaza improspatarea celulelor de memorie ale liniei
selectate.
Diagrama de semnale pentru ciclul de scriere in DRAM, in acces aleator:

In functie de momentul in care se activeaza semnalul de validare a scrierii fata de


semnalul CAS , rezulta doua cicluri de scriere diferite, prin activarea semnalului WE
inainte sau dupa activarea semnalului CAS . Activarea WE dupa CAS este reprezentata
cu linie intrerupta.

41. Memorii DRAM: improspatarea celulelor de memorie,


cicluri de improspatare.
Improspatarea celulelor de memorie se realizeaza in cicluri de improspatare distincte,
unul pentru fiecare linie din aria de locatii de memorie. Rezulta ca, intreaga memorie va fi
improspatata dupa un numar de cicluri de refresh egal cu numarul de linii din aria de celule de
memorie. Intervalul maxim de timp, dupa care trebuie improspatata fiecare locatie de memorie,
depinde de timpul de descarcare a condensatorului celulei. Perioada de repetitie a ciclurilor de
refresh si frecventa corespunzatoare depind de intervalul de timp si de numarul liniilor din aria de
celule de memorie.
TR = tr/nl ;
fR = 1/TR = nl/tr ;

[43]

Arhitectura Calculatoarelor Rezumat subiecte

Deoarece memoria DRAM este vazuta ca unitate slave, improspatarea trebuie realizata de
catre o unitate master, care poate fi externa memoriei sau interna. Aceasta nu trebuie sa fie
unitatea centrala. In mod normal, un ciclu de improspatare nu poate fi intrerupt daca este
controlat de o unitate master externa. Insa pentru memoriile DRAm cu circuit intern de
improspatare, acest ciclu poate fi intrerupr, pentru a permite accesul din exterior, la celulele de
memorie.
In functie de tipul memoriei DRAM, ciclurile de improspatare pot si realizate in trei
moduri:
* ROR (Ras Only Refresh) este o metoda de improspatare din exterior prin care se
transmit memoriei adresa de rand si semnalul RAS , fara a se activa semnalul CAS .
Unitatea master externa este anuntata poeriodic sa faca refresh, de catre un ceas de timp real care
este programat software de catre SO.
* CBR (CAS Before RAS) este tot o metoda de improspatare din exterior prin care se
transmit semnalele CAS si RAS , activate in aceasta ordine. Memoria dispune de un
numarator de adrese intern, pentru indicarea liniei ce trebuie improspatata, fara a fi nevoie de
transmiterea adresei din exterior. De asemenea, perioada de repetitie a ciclurilor de refresh este
determinata de un ceas de timp real extern.
* Auto-improspatare cu ajutorul circuitelor interne memoriei DRAM. In interior, memoria
contine un numarator de adrese de rand, un ceas de timp real si logica de control pentru generarea
semnalelor CAS si RAS , conform metodei CBR.
Ciclul de improspatare prin metoda ROR se realizeaza ca un ciclu de citire incomplet si
nu necesita introducerea unor semnale de comanda suplimentare.

In fiecare ciclu de refresh se improspateaza o intreaga linie de locatii de memorie. Simpla


selectare a unei linii duce la improspatarea tuturor locatiilor de pe linia respectiva. Diagrama
ciclului de improspatare prin metoda CBR:

Deoarece timpul total de improspatare depinde de numarul de linii din aria de celule de
memorie, aceasta va avea o organizare dreptunghiulara cu mai putine linii si mai multe coloane.
Daca memorie DRAM este dispusa pe mai multe module si improspatarea se face din exterior,
atunci ciclul de refresh poate fi initiat pentru toate modulele simultan.

[44]

Arhitectura Calculatoarelor Rezumat subiecte

42. Memorii DRAM sincrone: caracterizare, tipuri, accesul in


mod pagina
Memoria DRAM sincrona necesita un semnal de ceas pentru validarea semnalelor de
control. Ceasul primit din exterior permite operarea memoriei sincron cu unitatea master.
Accesul aleator este lent, fiind putin mai rapid decat la memoriile asincrone, datorita
tehnologiei. In acces aleator, tRAC este de 40-60ns, iar tc este de 80-110ns.
Accesul in mod pagina este mult mai rapid decat la memoriile asincrone si depinde de
frecventa semnalului de ceas. Toate memoriile sincrone presupun aceeasi restrictie suplimentara
de la BEDO DRAM, ca transferurile in pagina sa se faca de la adrese la coloana consecutive. In
aces fel, adresa este furnizata din exterior o singura data, unui numar de adrese intern. Apoi, la
transferurile urmatoare in pagina adresele de coloana sunt obtinure prin incrementarea numarului
de adrese, la fronturile semnalului de ceas.
Primul acces in pagina este mai lung, fiind dat de t RAC, indiferent de tipul memoriei
sincrone. Acesta presupune selectarea liniei din aria de celule de memorie si memorarea ei intr-un
buffer de rand, de unde se preia doar primul cuvant. Insa accesele urmatoare la adresele de
coloana succesive in pagina sunt mult mai rapide, linioa fiind deja selectata. Accesele se fac cu
timpul de ciclu de pagina tPC, care depinde de tipul memoriei sincrone.
Memoriile sincrone pot fi de mai multe tipuri: SDRAM (Synchronous RAM), DDR
SDRAM (Double Data Rate SDRAM), RDRAM (Rambus DRAM), DRDRAM (Direct Rambus
DRAM).
La memoriile SDRAM aria de celule de memorie este organizata in planuri paralele
(bank-uri de memorie), accesate succesiv, dar sincron cu semnalul de ceas CLK. Numarul de
cuvinte transferate in mod pagina este programabil. Accesul in pagina dureaza o perioada de ceas,
astfel timpul de ciclu de pagina va fi: tPC = TCLK.
Datorita sincronizarii cu semnalul de ceas, timpul de acces poate fi exprimat in numar de
stari de ceas pentru fiecare cuvant transferat.
Memoriile DDR SDRAM realizeaza transferurile in exterior pe fiecare front al semnalului
de ceas, practic de doua ori mai rapid decat la SDRAM, de unde si denumirea memoriei. Ele au o
organizarea similara cu memoria SDRAM, avand in plus un latch de date de iesire. In timp ce un
cuvant este transferat in mod pagina, urmatorul este deja memorat in latchm gata de transfer.
Memoriile RDRAM si DRDRAM folosesc un altfel de aloritm de transfer al datelor, pe
magistrale de foarte mare viteza, dar inguste. Ele selecteaza simultan cate o linie din mai multe
bank-uri de memorie si apoi o transfera cu frecventa foarte mare, pe ambele fronturi ale ceasului,
cuvinte de dimensiune mica. Desi folosesc metode diferite de transfer in mod pagina,
perfomantele memoriilod SDRAM si RDRAM sunt comparative.
43. Organizarea si adresarea MP
MP reprezinta memoria de lucru a unui calculator, fiind considerata unitate slave pentru
restul sistemului de calcul. Ea este implementata cu circuite integrate de memorie si paote fi
realizata intr-o conceptie modulara. Prin modularizare, MP va contine mai multe module de
memorie distincte, fiecare modul putand fi impartit in mai multe blocuri de memorie, de
asemenea distincte.
[45]

Arhitectura Calculatoarelor Rezumat subiecte

Modulele de memorie pot avea capacitati de memorare diferite si pot memora cuvinte de
dimensiuni diferite.
Cuvintul de memorie reprezinta cea mai mica unitate de informatie, care poate fi adresata
individual in memorie, prin magistrala de adrese, de catre o unitate master. Nu este necesar ca
dimensiunea cuvantului de memorie sa fie egala cu dimensiunea registrelor UC. Cuvantul de
memorie se alege de dimensiunea celui mai mic operand pe care UC il poate transfera cu MP.
Modulele de memorie sunt astfel organizate incat pot transfera mai multe cuvinte de memorie in
paralel, intr-un singur ciclu de memorie. Mecanismul de adresare al microprocesorului permite
selectarea si transferul unor operanzi mai mari, pe mai multe cuvinte de memorie simultan, aflate
la adrese de memorie succesive.
Operanzii formati din mai multi octeti trebuie sa fie memorati in MP, incepand de la
anumite adrese, pentru a se putea face transferul tuturor octetilor simultan, intr-un singur ciclu de
memorie. In acest caz, operanzii sunt aliniati in memorie. Daca operanzii au octetii memorati la
adrese succesive, dar incepand de la alte adrese, transferul este mai lent si dureaza doua cicluri de
memorie, iar operanzii se numesc nealiniati in memorie.
In timpul executarii programelor, pentru ca transferurile cu MP sa fie cat mai rapide, este
important ca blocurile de informatii din MP sa fie aliniate. UC poate transfera cu MP un numai
maxim de octeti simultan, in fiecare ciclu de memorie. La scrierea programelor trebuie rezolvata
problema alinierii informatiilor in memorie.
44. Functia de adresare: definitie, proprietati
Pe cele n linii de adresa ale magistralei de adrese pot fi transmise 2 n combinatii binare
diferite, care pot selecta la un moment dat 2n locatii de memorie, diferite sau nu.
Spatiul adreselor fizice reprezinta multimea adreselor fizice care pot fi trimise pe
magistrala de adrese.
Spatiul locatiilor de memorie reprezinta multimea locatiilor de memorie existente in
sistem, care pot fi adresate prin magistrala de adrese si care apartin diferitelor circuite integrate
de memorie. La proiectarea sistemului de calcul se pun in corespondenta cele doua multimi, P si
M, asignandu-se fiecare locatii din M cel putin o adresa fizica din P.
Astfel se implementeaza hardware, prin intermediul circuitului de selectie a modulelor o
functie fad numita functie de adresare de forma fad: P ->M.
Expresia functiei de adresare poate fi modificata software, sub controlul SO.
Proprietati:
1. O adresa din P trebuie sa selecteze o singura locatie de memorie din M la un
moment dat. Insa utilizand un mecanism de comutare a blocurilor de
memorie, acceasi adresa din P poate selectam la momente de timp diferite
locatii de memorie diferite.
2. fad trebuie sa fie surjectiva:
[46]

Arhitectura Calculatoarelor Rezumat subiecte

m M , a P , a . i . f ad ( a )=m
3. fad poate fi sau nu injectiva: doua adrese diferite din P pot selecta sau nu o
aceeasi locatie de memorie din M.
45. Harta de memorie: definire, exemple
Harta de memorie permite specificarea functiei de adresare, totala sau partiala, intr-un
mod grafic condensat. Harta de memorie este o reprezentare dreptunghiulara care cuprinde pe
latura verticala, spatiu liniar al adreselor fizice, iar pe latura orizontala se simbolizeaza lungimea
cuvantului memorat. Adresele sunt trecute in ordine crescatoare de la baza spre varf si sunt
exprimate in valoari hexazecimale. Numarul cifrelor hexa depinde de numarul liniilor de adresa
pe care se face adresarea memoriei respective.
Ex.
1. dim MP = 1Mo = 220o => 20 linii de adresa => AF cu 5 cifre hexa
2. dim MP = 128Mo = s27o => 27 linii de adresa
dim I = dim II = dim III = dim IV = 32Mo = 225o => 25 linii de adresa
=> 2 linii de selectie modul
46. Marimea dimensiunii MP peste limita de adresare a UC
comutarea blocurilor de memorie
Marimea dimensiunii MP peste limita de adresare a UC se poate face folosind
mecanismul de comutare a blocurilor de memorie, intr-un acelasi spatiu de adrese fizice din P.
Acest mecanism presupune 3 pasi:
1. In P se defineste o zona continua de adrese, de dimensiune fixa, notata Pc, care va fi
folosita pentru comutarea blocurilor de memorie. Spatiul de adrese ramas se va nota
cu P.
2. In M se separa o zona de locatii de memorie M : dim P = dim M
Spatiul locatiilor de memorie ramas se noteaza M.
3. Zona M se imparte in k blocuri de dimensiuni egale cu cona Pc, notate B1....Bk.
La comutarea blocurilor nu se realizeaza niciun transfer de informatii intre locatiile de
memorie.

47. Utilizarea memoriei ROM in MP


Memoria ROM este utilizata in MP cu capacitati de memorare mici. Ea contine
componentele software necesare procesorului la alimentarea prima data sau dupa RESET, and
memoria de lucru nu contine informatii valide. Aceste informatii sunt necesare pentru testarea si
utilizarea eficienta a resurselor hardware, precum si pentru incarcarea SO.
[47]

Arhitectura Calculatoarelor Rezumat subiecte

1. Componenta POST (Power On Self-Test) este un program de autotestare executat la


alimentarea prima data a calculatorului. Indeplineste succesiv mai multe sarcini:
a. Testarea tutror componentelor sistemului de calcul
b. Programarea circuitelor programabile
c. Identificarea tuturor dispozitivelor autoconfigurabile
d. Realizarea hartii de alocare a resurselor
Daca se reseteaza calculatorul prin reset software, numit si reset cald, componenta
POST trece peste testul de memorie, care dureaza mai mult. Daca in timpul testarii se
apasa o anumita tasta, componenta POST preda controlul programului SETUP, daca
nu, la sfarsit se preda controlul urmatorului program.
2. Programul bootstrap loader incarca in MP SO de pe o unitate de memorie secundara,
iar apoi preda controlul catre SO, lasandu-l in executie.
3. Programul SETUP este un program de configurare sau modificare a unor parametri ai
calculatorului. El se lanseaza in executie doar la cererea utilizatorului prin apasarea
unei taste particulare in timpul testarilor realizate de componenta POST.
4. Componenta BIOS (Basic Input-Output System) reprezinta un ansamblu de subrutine
de accesare a resurselor calculatorului, sub forma unor drivere software.
48. Subsistemul unitatii centrale: caracterizare generala
Unitatea centrala (UC) realizeaza functia de prelucrarea a informatiilor avand insa si
sarcini suplimentare de comanda si control a colerlalte subsisteme ale calculatorului. Subsistemul
UC poate fi realizat cu un singur procesor central caz in care sistemul de calcul se numeste
monoprocesor sau cu mai multe procesoare centrale, cu prioritati egale sau diferite realizand un
sistem de calcul multiprocesor. Functia de prelucrare se refera la operatiile specifice efectuate
asupra unor operanzi la comanda componentei software. Operatiile de prelucrare sunt executate
separat in unitati diferite in functie de modul de reprezentare a operanzilor. Operatiile in virgula
fixa sunt realizate de unitati aritmetico-logice de virgula fixa. In aceste unitati se prelucreaza
operanzi numerici intregi sau date numerice. Operatiile in virgula mobila sunt executate in unitati
aritmetice speciale, de virgula mobila.
Procesorul central este un sistem digital secvential, care are la baza o structura elementara
de procesare, numita si procesor elementar. Din punct de vedere functional, contine doua unitati
interconectate: o unitate de control si o unitate de prelucrare. Un procesor executa instructiuni,
dintr-un program aflat intr-o memorie externa, intr-un interval de timp, numit ciclu instructiune.
Un ciclu instructiune presupune mai multe operatii executate succesiv de catre procesor:
citirea, decodificarea si executia instructiunii. Daca operatiile unui ciclu instructiune sunt
efectuate de unitati functionale separate ale procesorului, atunci un nou ciclu instructiune poate
incepe inaintea terminarii celui anterior. Microprocesoarele moderne au unitati functionale, care
prelucreaza in paralel pentru citirea, decodificarea si executia propriu-zisa. Din punct de vedere
tehnologic un procesor poate fi realizat:
a) Cablat pe unul sau mai multe module de cablaj imprimat, realizat cu circuite
intregrate bit-slice;
b) Integrat intr-un circuit numit single-cip, se numeste microprocesor.
49. Procesorul elementar: definitii, componente
[48]

Arhitectura Calculatoarelor Rezumat subiecte

Procesorul elementar (PE) este un sistem digital de ordinul 3 si se obtine prin conectarea
in bucla de reactie a doua automate finite particulare:
a) Un automat de control cu memorie ROM, numit controler cu ROM, prescurtat
CROM
b) O unitate aritmetico-logica cu registre pentru prelucrarea datelor de tip RALU

Procesorul elementar este conectat cu exteriorul pe 3 fluxuri de informatii:


a) Un flux de intrare de instructiuni (INSTR) pe unde procesorul citeste din
exterior instructiunile, in mod secvential
b) Un flux de date de intrate (DIN) care permite aducerea unor operanzi din
exterior in vederea prelucrarii
c) Un flux de date de iesire (DOUT) prin care se transmite in exterior rezultatul
unei opratii de prelucrare.
CROM are stocat in memoria ROM setul de instructiuni al procesorului respectiv. Pentru
fiecare instructiune, in ROM se memoreaza un microprogram. CROM-ul primeste din exterior o
instructiune si o executa prin rularea microprogramului corespunzator ei, trimitand comenzi catre
RALU sau in exterior. De la unitatea RALU, CRAM-ul primeste indicatori pe liniile IND
rezultati in urma prelucrarii, pe care ii pot testa.
Unitatea RALU realizeaza functiile de prelucrare ale procesorului. Pe liniile DIN primeste
operanzi din exterior, iar pe liniile DOUT transmite rezultate in exterior.
50. Aspecte ale evolutiei microprocesoarelor.
Evolutia microprocesoarelor este conditionata de dezvoltarea tehnologiei de fabricatie,
dar si de dezvoltarea celorlalte componente hardware si software. Tendintele dezvoltarii
tehnologice au in vedere mai multe aspecte.
1. Marirea densitatii de integrare presupune cresterea numarului de tranzistoare pe
unitatea de suprafata. Acest lucru se poate realiza prin micsorarea dimensiunii
tranzistoarelor si a distantelor dintre ele. Gordon Moore a observat ca densitatea de
integrare creste exponential numarul de tranzistoare dublandu-se la fiecare 18 luni
2. Cresterea frecventei interne de lucru a microprocesoarelor se poate obtine explicit prin
imbunatatirea calitatii tranzistoarelor si prin micsorarea distantelor dintre ele.
3. Limitarea consumului energetic si a puterii disipate de microprocesor reprezinta un
aspect tehnologic important.

[49]

Arhitectura Calculatoarelor Rezumat subiecte

4. Pastrarea compatibilitaii software cu modelele anterioare din acceasi familie de


microprocesoare.
51. Clasificarea
microprocesoarelor
dupa
registrelor si a magistralei de adrese

dimensiunea

Dupa dimensiunea registrelor interne microprocesoarele pot fi:


a) uP pe 8 biti: au registrele de date pe 8 biti si contin o singura unitate ALU pe 8
biti: I8080, I8085, Z80, M6800.
b) uP pe 16 biti: tot cu o singura unitate de virgula fixa: I8086, I80286, Z8000,
M68000
c) uP pe 32 biti: pot prelucra intr-un singur pas, operanzi pe 32 biti: I386, I486,
Pentium, M68020. Unele microprocesoare au arhitectura superscalara si contin
mai multe ALU, care functioneaza in paralel cand sunt folosite anumite
instructiuni.
d) uP pe 64 biti: nu beneficiaza de suport software adecvat. Itanium (Intel)
pastreaza compatibilitatea cu programele pe 32 biti.
Dupa dimensiunea magistralei de adrese uP pot avea:
a) magistrala de adrese pe 16 biti: dim P=216, dim MP=64 Ko.
b) magistrala de adrese pe 20 biti: dim P=220, dim MP=1 Mo.
c) magistrala de adrese pe 24 biti: dim P=224, dim MP=16 Mo.
d) magistrala de adrese pe 32 biti: dim P=232, dim MP=4 Go.
e) magistrala de adrese pe 36 biti: dim P=236, dim MP=64 Go.
f) magistrala de adrese pe 44 biti: dim P=244, dim MP=16 To.
52. Clasificarea microprocesoarelor dupa frecventa de lucru si
tensiunea de alimentare.
Dupa frecventa semnalului de ceas intern:
1. uP care lucreaza intern cu o frecventa egala cu cea a semnalului de ceas primit din
exterior
uP pe 8 b, pe 16 b, primele pe 32 b
fCLK = 1,2,4,8,16,25,33,40 MHz
2. uP care lucreaza intern cu frecvente multiplicate ale semnalului de ceas extern
Factorul de multiplicare: x1.5, x2, x2.5, x3, ...., x10, ....
fCLK = 25,33,40,50,66,100,133 MHz
54. Clasificarea
microprocesoarelor
complexitatea setului de instructiuni
Dupa complexitatea setului de instructiuni uP pot fi:

[50]

in

functie

de

Arhitectura Calculatoarelor Rezumat subiecte

1. uP CISC (Complex Instruction Set Computer) au un set extins de instructiuni flexibile


si complexe. Caracterul frexibil al instructiunilor se poate evidentia pe mai multe
planuri. Instructiunile pot transfera si prelucra mai multe tipuri de operanzi, de
dimensiuni diferite, care pot fi organizati pe cuvant sau in structuri complexe.
Caracterul complex arata ca, in timpul executarii instructiunii uP efectueaza mai multe
operatii inlantuite, rezolvand astfel m,ai multe sarcini, printr-o singura comanda din
exterior.
2. uP RISC (Reduced Instruction Set Computer) au un set redus de instructiuni simple si
nu folosesc conceptul de microprogramare. Au aparut ca o alternativa la CISC, pentru
cresterea performantelor programelor scrise in limbaje de nivel inalt si compilate.
Setul de instructiuni contine doar instructiunile cele mai des folosite in programare.
Astfel se simplifica munca de compilare si creste viteza de executie.
55. Clasificarea microprocesoarelor dupa numarul fluxurilor
de instructiuni de date
Dupa numarul fluxurilor de instructiuni de date prelucrate la un moment dat de uP pot fi:
1. SISD (Single-Instruction stream Single-Data stream): prelucreaza un singur flux de
instructiuni si un singur flux de date la un moment dat.
2. SIMD (Single-Instruction stream Multiple-Data stream): prelucreaza un singur flux de
instructiuni si mai multe fluxuri de date simultan.
3. MIMD (Multiple-Instruction stream Multilple-Data stream): prelucreaza mai multe
fluxuri de instructiuni si mai multe fluxuri de date simultan.
56. Legaturile unui microprocesor cu exteriorul sau
Microprocesorul se conecteaza cu exteriorul prin intermediul pinilor circuitului integrat.
Acestia au diverse semnificatii si sunt grupati functional in mai multe magistrale.

Magistrala de adrese, ADR, este unidirectionala, de linii de iesire, prin care uP indica
adresa unitatii slave cu care lucreaza la un moment dat.
n linii de adresa => dim P=2n
Magistrala de date, DATA, este bidirectionala si pe ea uP transfera informatii cu
exteriorul. Pe magistrala de date se transfera atat instructiuni cat si date. Dimensiunea magistralei
de date m indica dimensiunea maxima a cuvintelor pe care le transfera uP. Magistrala de comenzi
[51]

Arhitectura Calculatoarelor Rezumat subiecte

si stari este bidirectionala pe linii separate, prin care uP dialogheaza cu exteriorul sau.
Microprocesorul mai contine o serie de pini necesari functionarii normale: pini de alimentare,
pini pentru semnalul de ceas, semnalul de REST.
57. Moduri de dialog ale unui microprocesor cu exteriorul
1. Dialogul master-slave este un dialog initiat de catre uP prin generarea catre unitatea slave a unei
comenzi pentru efectuarea unui transfer pe magistrala de date. Comenzile identifica tipul de
unitate slave, precum si sensul de transfer. Simultan pe magistrala de adrese uP trimite adresa
unitatii pe care doreste sa o selecteze. Daca unitatea slave este suficient de rapida pentru a incheia
transferul in timpul unui ciclu masina al uP controlerul unitatii activeaza un semnal de raspuns,
READY, indicand ca este gata efectuarea transferului, iar ciclul masina se incheie. Daca unitatea
este mai lenta, controlerul ei va inactiva semnalul READY, indicand uP-ului ca ciclul masina
trebuie prelungit. uP prelungeste ciclul masina cu un numar intreg de stari de ceas si testeaza in
permanenta semnalul READY. Cand semnalul devine activ, ciclul masina se incheie.
2. Dialogul slave-master este un dialog initiat de o unitate slave de tip port I/O, prin generarea unei
cereri de tratare a ei de catre uP. Daca accepta aceasta cerere, el isi va intrerupe temporar executia
programului, initiind o procedura specifica pentru tratarea cererii respective. Deoarece proceduta
este initiata prin intreruperea programului, aceasta se numeste cerere de intrerupere. Cand uP
accepta aceasta intrerupere, el va raspunde cu un semnal specific de asteptare a cererii de
intrerupere, care va ajunge simultan la toate unitatile slave. Unitatea slave care a generat cererea
de intrerupere are prioritatea cea mai mare, va furniza uP-ului pe magistrala de date o informatie,
necesara initierii procedurii de testare a intreruperii.
3. Dialogul master-master are loc atunci cand in sistem exista mai multe unitati master care
partajeaza resurse comune. Dialogul este initiat de o alta unitate master, care activeaza o cerere de
magistrala catre uP, semnificand faptul ca doreste sa ocupe magistralele sistemului pentru a lucra
cu resursele acestuia. Aceasta cerere nu poate fi refuzata de catre uP, dar poate fi intarziata pana
la terminarea instructiunii curente, daca aceasta este marcata de catre utilizator ca o instructiune
ce nu poate fi intrerupta. Cand uP accepta cererea isi trece propriile magistrale in HZ si raspunde
cu semnal specific de acceptare a cererii de magistrale. Unitatea master apelanta, dupa ce a primit
acceptul, ocupa magistrala sistemului tinand activa cererea de magistrala pana la terminarea
lucrului cu unitatea slave dorita. Apoi isi trece propriile magistrale in HZ si inactiveaza cererea de
magistrala, moment in care uP ocupa din nou magistralele sistemului.

[52]

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