Sunteți pe pagina 1din 47

1.

Calculatoare numerice

Calculatorul reprezint un sistem digital format din dispozitive fizice conectate n vederea prelucrrii informaiei. Un calculator numeric (sistem de calcul) cuprinde dou categorii de componente: -componente fizice (echipamente), ansamblul lor fiind cunoscut sub denumirea de hardware; -componente logice (programe) prin intermediul crora sunt utilizate echipamentele, ansamblul lor fiind cunoscut sub denumirea de software. Sistemul de calcul reprezint un ansamblu de componente hardware i software n interaciune, fiind destinat prelucrrii datelor. Un asemenea sistem este reprezentat prin urmtoarele: -componentele funcionale - realizate cu ajutorul circuitelor electronice, majoritatea fiind circuite integrate asigurnd o vitez ridicat n efectuarea operaiilor aritmetice i fiabilitate n funcionare; -funcioneaz pe baza unui program memorat format dintr-o succesiune de instruciuni introduse n memoria calculatorului, instruciuni care sunt extrase, interpretate i prelucrate; -informaia memorat i prelucrat este una discret, fiind codificat astfel nct mrimile asupra cruia opereaz pot lua dou valori: 0 i 1. Aceast informaie se numete informaie binar.

2.

Programarea calculatoarelor numerice

Pentru rezolvarea unei probleme cu ajutorul calculatorului este necesar descrierea acesteia printr-o succesiune de operaii, care constituie algoritmul de rezolvare. Descrierea se poate realiza iniial n limbaj natural, transpunndu-se ulterior ntr-un limbaj artificial, numit limbaj de programare. Limbajul de programare reprezint un set de instruciuni mpreun cu regulile de organizare ale acestora ntr-un program. Totalitatea simbolurilor i cuvintelor utilizate n limbajul respesctiv formeaz vocabularul limbajului. Totalitatea regulilor de scriere ale instruciunilor reprezint sintaxa limbajului, iar totalitatea regulilor prin care se asociaz o semnificaie instruciunilor reprezint semantica limbajului. Calculatorul poate executa numai instruciuni exprimate intern, sub forma unor iruri de cifre binare. Programele in care instruciunile sunt scrise sub aceast form se numesc programe n limbaj-main. Limbajul-main este caracteristic fiecrui calculator n parte, ns scrierea i introducerea programelor sub aceast form este dificil. Pentru simplificarea scrierii programelor, au fost create limbaje n care fiecrui cod de instruciune i s-a ataat un nume mnemonic. Acest mod de reprezentare a instruciunilor se numete limbaj simbolic sau limbaj de asamblare. Acest limbaj permite utilizatorului s realizeze codificri simbolice ale instruciunilor si ale adreselor de memorie. Pentru a se executa un program n limbaj de asamblare, acesta trebuie n prealabil translatat n limbaj-main printr-un proces numit asamblare. Programul care se translateaz se numete program-surs, iar rezultatul translatrii program-obiect. Operaia va fi executat de ctre un program numit asamblor. O instruciune n limbaj de asamblare corespunde unei instruciuni n limbaj-main, deosebirea dintre ele constnd numai n modul de reprezentare, deci, fiecare instruciune n limbaj de asamblare este translatat ntr-o singur instruciune n limbaj-main. Un limbaj de asamblare este specific unui calculator, astfel nct trebuie s se cunoasc instruciunile i organizarea intern a acelui calculator. Din acest motiv, s-au elaborat limbaje pentru programare care se pot executa pe orice calculator. Acestea sunt limbaje orientate pe probleme sau limbaje de nivel nalt, care, spre deosebire de limbajele de asamblare, care sunt limbaje orientate pe calculator sau limbaje de nivel sczut, sunt orientate pe probleme. Unei instruciuni ntr-un limbaj de nivel nalt i corespunde o succesiune de instruciuni n limbaj-main. Translatarea n limbajul-main se poate realiza cu ajutorul unui compilator, care genereaz din programul-surs un

program executabil, acesta fiind executat dup ce ntregul program a fost compilat. O alt posibilitate este utilizarea unui interpretor, care translateaz fiecare instruciune din limbajul de nivel nalt ntr-o succesiune de instruciunimain, acestea fiind executate imediat. n acest caz, nu se genereaz un program executabil. Viteza de execuie este ns redus, deoarece fiecare instruciune trebuie interpretat chiar dac ea se execut n mod repetat.

3.

Modelul unui calculator numeric

Un model posibil al unui calculator numeric modern reprezint o ierarhie de maini virtuale pe mai multe nivele:

Nivelul 0 - nivelul logicii digitale - este reprezentat de componentele hardware ale calculatorului (maina fizic). Circuitele acestui nivel execut instruciunile main ale nivelului 1. Elementele de baz ale acestor circuite sunt porile logice, fiecare poart fiind format la rndul ei dintr-un numr de tranzistoare. O poart logic are una sau mai multe intrri digitale (semnale reprezentnd 0 logic sau 1 logic) i are ca ieire o funcie simpl a acestor intrri, de exemplu I logic, SAU logic. Nivelul 1 - nivelul de microprogram - interpreteaz instruciunile nivelului 2, pentru fiecare instruciune a acestui nivel existnd cte un microprogram. Fiecare microprogram definete n mod implicit un limbaj de nivel 2 i o main virtual. De obicei exist multe similariti ntre mainile virtuale de nivel 2, chiar i n cazul calculatoarelor diferiilor productori. Acest nivel se numete nivelul mainii convenionale. Atunci cnd se descrie setul de instruciuni al unui calculator se descrie de fapt maina virtual de nivel 2 i nu maina real de nivel 1. Sunt descrise deci instruciunile interpretate de ctre microprogram, i nu instruciunile executate direct prin hardware. De menionat c la anumite calculatoare nivelul de microprogram lipsete. La aceste calculatoare, instruciunile mainii convenionale sunt executate direct de circuitele electronice ale nivelului 0.

Nivelul 3 - este de obicei un nivel hibrid, deoarece multe din instruciunile limbajului sale sunt prezente n cadrul instruciunilor de nivel 2. Exist n plus un set de noi instruciuni, o organizare diferit a memoriei, posibilitatea de execuie a mai multor programe n paralel i mai multe faciliti. Noile faciliti adugate la nivelul 3 sunt realizate cu ajutorul unui interpretor, numit sistem de operare, iar instruciunile identice cu cele de nivel 2 sunt executate direct prin microprogram. Nivelul 3 este numit nivelul sistemului de operare - Un sistem de operare reprezint un ansamblu de programe care asigur exploatarea optim a resurselor hardware i software ale unui sistem de calcul. Sistemele de operare au fost create pentru simplificarea activitii de programare, utilizarea optim a posibilitii de lucru ale echipamentelor i reducerea interveniei utilizatorilor n cursul execuiei programului. Nivelele 0-3 nu sunt destinate utilizrii directe de ctre programatorii obinuii, ci pentru rularea translatoarelor i interpretoarelor scrise de programatorii de sistem. Nivelul 4 i nivelele superioare - sunt destinate programatorilor de aplicaii. Nivelul 4 este nivelul limbajului de asamblare. Programele scrise n limbaj de asamblare sunt translatate n limbajul nivelului 1, 2 sau 3 i apoi interpretate de maina virtual corespunztoare. Nivelul 5 - const din limbajele destinate programatorilor de aplicaie, fiind numit nivelul limbajelor de nivel nalt . Programele scrise in aceste limbaje sunt translatate n limbajele nivelului 3 sau 4 cu ajutorul compilatoarelor sau interpretoarelor. Nivelul 6 reprezint nivelul aplicaiilor. Const din colecii de programe destinate unuor domenii specializate, de exemplu pentru administraie, economie, proiectare asistat de calculator, grafic, etc. Fiecare nivel reprezint o abstractizare distinct, cu diferite obiecte i operaii. Setul tipurilor de date, a operaiilor i facilitilor fiecrui nivel reprezint arhitectura nivelului respectiv. Arhitectura trateaz acele aspecte care sunt vizibile utilizatorului nivelului respectiv, ca de exemplu dimensiunea memoriei disponibile. Aspectele de implementare, ca de exemplu tehnologia utilizat pentru implementarea memoriei nu fac parte din arhitectur. Arhitectura calculatorului reprezint studiul proiectrii acelor pri ale unui sistem de calcul care sunt vizibile pentru programatori.

4.

Structura mainii fizice

n 1945, John von Newmann a realizat structura logic a calculatorului cu program memorat. Majoritatea calculatoarelor actuale utilizeaz i astzi aceast structur:

Ideea de baz a calculatorului cu program memorat este c att instruciunile, ct i datele sunt pstrate n aceeai memorie. Datele sunt cele asupra crora se efectueaz prelucrri. Instruciunile sunt interpretate ca i coduri pentru generarea semnalelor de control necesare funcionrii calculatorului. Componentele principale ale mainii fizice sunt: CPU/UCP - unitatea central de prelucrare - execut prelucrarea datelor i controleaz funcionarea calculatorului. De multe ori se numete procesor; UM - unitatea de memorie (memoria intern sau principal) pstreaz datele i instruciunile; I/O / UI/E - unitatea de intrare/ieire - efectueaz transferul datelor ntre calculator i mediul exterior acestuia; Interconexiunile - permit comunicaia ntre UCP, UM i UI/E;

1. UCP/CPU - componenta cea mai complex a calculatorului, cu structura urmtoare:

Componentele principale ale UCP-ului sunt: UAL (Unitatea Aritmetic i Logic) - execut prelucrrile asupra datelor; Registrele - reprezint o memorie intern a UCP-ului); UCC (Unitatea de Comand i Control) - controleaz funcionarea UCP-ului, deci a calculatorului); Interconexiunile din cadrul UCP-ului asigur comunicaia ntre UAL, registre i UCC. Sunt realizate sub forma unei magistrale, numit magistrala intern a UCP-ului. Unitatea Aritmetic i Logic UAL implementeaz diferite operaii aritmetice i logice asupra operanzilor obinuti din memorie. Conine, n principal, un circuit logic pentru adunare numit sumator, toate operaiile aritmetice reducndu-se la o succesiune de operaii de adunare. Operaiile efectuate de UAL pot fi: transferul de date ntre registre sau ntre acestea i memorie; operaii aritmetice; operaii logice (I/SAU/NU); operaii de deplasare a coninutului unui registru sau locaie de memorie; operaii de comparare a doi operanzi; UAL genereaz informaii referitoare la rezultatul ultimei instruciuni aritmetice sau logice efectuate. Acestea se refer la semnul rezultatului, la paritatea acestuia, la cazurile n care a aprut un transport sau un mprumut n

cursul prelucrrii. Fiecare din aceste informaii se pstreaz n cte un bistabil, bistabilele fiind reunite ntr-un registru de stare. Acest registru conine i alte informaii referitoare la starea programului. Registrele Setul de registre din cadrul UCP pstreaz temporar operanzii unei operaii aritmetice sau logice, rezultatele intermediare i finale sau adresele acestora. Utilizarea acestora crete viteza de prelucrare a datelor, eliminnd necesiatea accesului repetat la memorie. Ele reprezint deci o memorie intern foarte rapid. Unele registre pot avea funcii dedicate, altele se pot utiliza pentru orice operaii, fiind registre generale. Un registru special l reprezint registrul acumulator (sau acumulatorul), care pstreaz de obicei unul din operanzii care particip la operaie, ca i rezultatul operaiei. O parte din registre nu sunt accesibile prin program, fiind registre de lucru. Un asemenea registru este, de exemplu, registrul de instruciuni, care pstreaz instruciunea curent(cea care se execut la un moment dat). Unitatea de comand i control UCC-ul coordoneaz activitatea calculatorului: extrage instructiunile programului din memorie, le decodific (interpreteaz) i genereaz secvena de semnale necesare execuiei. Separarea n timp a etapelor de execuie se asigur de ctre un dispozitiv de secveniere. Pe parcursul execuiei unei instruciuni UCC-ul primeste informatii de la unitatea de calcul (UAL) informaii de stare, n funcie de care selecteaz una dintre alternativele de continuare a operaiei. La terminarea execuiei, se trece la instruciunea urmtoare. Adresa acestei instruciuni este pstrat ntr-un registru, numit registru contor de program sau numrtor de instruciuni. n funcie de modul de implementare a dispozitivului de secveniere, dispozitivele de comand pot fi de dou feluri: Realizate n logic cablat, de exemplu cu un numrtor i un decodificator; Microprograme, care pstreaz secvenele semnalelor de comand ntr-o memorie de microprogram. 2. UM (unitatea de memorie) Memoria reprezint sursa/destinaia tuturor informaiilor. n memorie sunt ncrcate informaiile iniiale (date i instruciuni) prin intermediul dispozitivelor de intrare, i de la memorie sunt preluate rezultatele prin intermediul dispozitivelor de ieire. Memoria este organizat ca o colecie de locaii de memorie. Fiecrei locaii i se asociaz o adres, prin intermediul creia poate fi selectat locaia respectiv. Adresarea se realizeaz cu ajutorul unor linii de adres, numrul

acestora determinnd capacitatea maxim adresabil a memoriei. De exemplu, cu 16 linii de adres se pot selecta maxim 216 locaii de memorie. O locaie de memorie se caracterizeaz prin: Adres: poziia locaiei n cadrul memoriei; Coninut: valoarea memorat la aceast adres. Cantitatea de informaie care poate fi memorat ntr-o locaie adresabil individual, exprimat ca numr de cifre binare (bii) reprezint lungimea cuvntului de memorie. De obicei, memoria este organizat pe cuvinte de 16, 32 sau 64 de bii, unitatea adresabil fiind octetul. Capacitatea memoriei se exprim n octei (B) sau multipli ai acestuia: 1PB=210TB=250B (Peta) 1KB=210B=1024B (Kilo) 1MB=210KB=220B (Mega) 1EB=210PB=260B (Exa) 1GB=210MB=230B (Giga) 1ZB=210EB=270B (Zetta) 10 40 1TB=2 GB=2 B (Tera) 1YB=210ZB=280B (Yotta) Memoria trebuie s aib o capacitate ct mai mare i o vitez ct mai ridicat, adic un timp de acces ct mai redus. Viteza este direct proporional cu costul. De aceea, majoritatea calculatoarelor au dou tipuri de memorie, care lucreaz pe principii diferite: O memorie intern, rapid, numit memorie principal, care comunic direct cu unitatea de calcul i cu cea de comand, cu un cost per bit relativ ridicat; O memorie extern, mai lent, cu un cost per bit mai redus (disc magnetic, band magnetic). Aceast realizare a memoriei nu afecteaz sensibil viteza de calcul, deoarece prelucrarea datelor i transferul de informaii se efectueaz la viteza de acces a memoriei interne. Operaiile efectuate cu memoria sunt cele de citire i cele de scriere. Aceste operaii, ca i cea de selecie a unor locaii de memorie pe baza adresei, se realizeaz cu un ansamblu de circuite care formeaz, mpreun cu memoria, unitatea de memorie. 3. Unitatea de intrare/ieire Aceast unitate asigur comunicaia dintre calculator i mediul exterior. Utilizatorii comunic sistemului informaiile nregistrate pe suporturi externe de informaie, iar rezultatele prelucrrilor sunt furnizate utilizatorilor pe asemenea suporturi. Transmiterea informaiilor depe suporturile externe n memorie i nregistrarea informaiilor pe asemenea suporturi sunt efectuate de echipamentele periferice. Acestea sunt conectate la calculator prin interfee de I/E, existente n cadrul unitilor de I/E, care ndeplinesc dou funcii importante: de conversie de date i de memorie tampon. Conversia este necesar deoarece informaia este reprezentat diferit i pe medii diferite, fiind necesar compatibilizarea dispozitivelor respective.

Funcia de memorie tampon este necesar pentru c viteza de lucru a calculatorului (UAL i UCC) este cu cteva ordine de mrime mai mare dect a dispozitivelorexterioare. Memoria tampon asigur sincronizarea funcionrii calculatorului cu aceste dispozitive. 4. Interconexiunile Interconectarea unitilor componente ale calculatorului se realizeaz prin una sau mai multe magistrale. O magistral este format dintr-un grup de linii destinate transferului paralel al informaiilor de la una sau mai multe surse la una sau mai multe destinaii. Numrul liniilor magistrale este egal de obicei cu lungimea cuvntului transferat. Magistralele pot fi unidirecionale sau bidirecionale. La un moment dat, nu poate fi selectat dect o surs i una sau mai multe destinaii. n cazul seleciei mai multor surse simultan, rezultatul poate fi imprevizibil. Selecia sursei i a destinaiei se realizeaz cu multiplexoare i decodificatoare. Multiplexorul specific sursa care depune informaia pe magistral, iar decodificatorul selecteaz destinaiile care vor fi cuplate la magistral. n funcie de semnalele vehiculate, magistralele pot fi: de adrese, de date i de control.

5.

Memoria sistemului de calcul

Pentru a se realiza prelucrarea automat a datelor sunt necesare resurse de tip hardware i software. n sens informatic, noiunea de resurs este reprezentat de totalitatea componentelor solicitate de un program n vederea execuiei lor. n acest sens, memoria reprezint principala resurs hardware a unui sistem de calcul ea fiind un dispozitiv utilizat pentru nmagazinarea i pstrarea datelor i instruciunilor unui program, a operanzilor, rezultatelor iniiale i intermediare, a informaiilor, precum i a altor date necesare execuiei corecte a programului.

Capacitatea - reprezint numrul de bii pe care i poate nmagazina memoria. Acest parametru se exprima n bytes (MB, GB, TB); Timpul de acces - reprezint diferena dintre momentul solicitrii unei informaii i momentul obinerii ei. (t=t2-t1, unde t-timpul de acces, t2-momentul obtinerii informatiei solicitate, t1-momentul solicitarii informatiei necesare); Modul de organizare i de adresare - din acest punct de vedere memoria include dou modele: memoria intern, principal - pstreaz datele i programele n cursul execuiei lor, rezultatele intermediare i finale ce urmeaz a fi extrase din sistem avnd o capacitate redus, ns un timp de acces foarte mic; memoria extern, auxiliar - pstreaz datele, informaiile i programele pe supori externi n vederea unor prelucrri ulterioare. Are o capacitate de stocare, teoretic, nelimitat, singura limit impus fiind aceea dictat de numrul suporilor externi disponibili la un moment dat, ns are un timp de acces relativ mare fa de memoria intern; Din punct de vedere al accesului, memoria poate fi: memorie cu acces direct sau aleator - aceasta este caracterizat prin timp de acces relativ identic necesar localizrii oricrei adrese de memorie); memorie cu acces secvenial sau poziional - la care timpul de acces necesar localizrii unei adrese este determinat de o serie de deplasri relative fa de adresa de nceput;

Parametrii caracteristici ai unitii de memorie:

Tehnicile de introducere/extragere a datelor i informaiilor pot fi de dou feluri: seriale - operaiile de introducere/extragere se execut n succesiunea apariiei lor; paralele - transferul datelor se face n blocuri de o anumit dimensiune, n funcie de capacitatea maxim adresabil a memoriei interne;

Viteza de operare - reprezint numrul de bytes care se transfer n/din memorie ntr-o unitate de timp; Realizarea modular - reprezint posibilitatea divizrii memoriei n module de o anumit dimensiune i eventual extinderea acesteia prin adugarea altor module n funcie de configuraie.

6.

Memoria intern

Memoria intern este acea component a sistemului de calcul care are rolul de a stoca instruciunile i datele de prelucrare, rezultatele intermediare i/sau finale ale programelor care se afl n execuie la un moment dat. Datele necesare programului aflat n execuie trebuie s se gseasc n memoria intern, unde sunt puse la dispoziia UCP-ului (unitii centrale de prelucrare) ntr-un timp minim. Timpul de acces al memoriei interne trebuie s fie mai mic sau egal cu timpul necesar UCP-ului pentru a executa o instruciune. Operaiile care se execut la nivelul memoriei sunt: Operaia de citire - reprezint operaia de extragere a informaiilor din memorie; Operaia de scriere - reprezint operaia de stocare/nmagazinare a datelor n memorie. Specificarea adresei asociate permite localizarea unei date sau informaii n memorie, adresa fiind introdus ntr-un registru de adrese care are o capacitate de n bii, acesta putnd identifica cu ajutorul unui decodificator a 2n locaii de memorie.

Operaiile de citire/scriere se realizeaz astfel Dup localizarea adresei n memorie: dac semnalul este de comand scriere, datele coninute n registrul de date se depun n memorie la adresa localizat; dac semnalul este de comand citire, datele plasate la adresa indicat n registrul de adrese sunt aduse n registrul de date, iar de aici sunt transferate ctre alte dispozitive periferice. Ciclul de memorie reprezint intervalul de timp necesar unei referiri la memorie, cu specificarea faptului c, pe parcursul lui, coninutul acesteia rmne nemodificat.

Pentru realizarea funcionalitilor dispozitivelor fizice care alctuiesc memoria intern a calculatoarelor acestea trebuie s indeplineasc urmtoarele cerine: Existena a dou stri stabile pentru memorarea datelor n form binar; volum redus; caracteristica pre/MB s aib o valoare ct mai mic; timp de acces ct mai mic; realizare modular cu posibiliti de extindere. n prezent, memoriile sunt realizate cu circuite integrate al cror timp de acces este de oridinul nanosecundelor, fiind relativ identic cu cel al UCP-ului. Memoriile sunt construite din circuite ce sunt aezate la nivelul unei pastile de siliciu (cip), asigurndu-se astfel o mare densitate a componentelor pe unitatea de volum. Celulele binare sunt aranjate n matrici de 8 linii i 8 coloane; ncrcarea lor se face prin trimiterea de curent electric prin firele conductoare ale liniilor i coloanelor ceea ce realizeaz selectarea celulelor binare. n punctele n care firele ncrcate din punct de vedere electric se intersecteaz, celulele binare vor fi poziionate pe valoarea binar 1, iar celellte rmn poziionate pe valoarea binar 0.

Memoria intern este de dou feluri: memorie ROM (Read Only Memory) i memorie RAM (Random Acces Memory).

7.

Memoria ROM

Memoria ROM se mai numete i memorie permanent, fiind realizat din cipuri al cror coninut nu se pierde n absena curentului electric. Informaiile stocate n aceste memorii sunt destinate numai citirii, deci nu pot fi modificate sau terse (prin mijloace obinuite). n general, sunt utilizate pentru stocarea instruciunilor necesare unui calculator la punerea sa in funciune. Memoriile de tip ROM au un coninut fix, stabilit n construcie, iar datorit faptului c operaia de citire este nedistructiv, determin obinerea unor timpi de acces foarte mici, aceasta fiind caracteristica principal a acestor tipuri de memorie. Memoria ROM este, n general, utilizat pentru a stoca BIOS-ul (Basic Input Output System) unui sistem. BIOS-ul este un program de mrime mic (<2MB) fr de care calculatorul nu poate funciona, acesta reprezentnd interfaa ntre componetele din sistem i sistemul de operare instalat (SO). n practic, o dat cu evoluia calculatoarelor, acest tip de memorie a suferit o serie de modificri care au avut ca rezultat rescrierea/arderea "flash" de ctre utilizator a BIOS-ului. Scopul, evident, este de a actualiza funciile BIOSului pentru adaptarea noilor cerine i chiar realizri hardware ori chiar pentru a repara unele imperfeciuni de funcionare. Cele mai utilzate tipuri de memorie ROM sunt: PROM (Programmable Read Only Memory) - nu conine nici o informaie i poate fi programat o singur dat, apoi permind numai operaii de citire. Aceste cipuri sunt utilizate de ctre productorii de calculatoare. EPROM (Erasable Programmable Read Only Memory) sunt memorii PROM ce permit tergerea informaiilor cu ajutorul razelor ultraviolete i reprogramarea. EEPROM (Electrical Erasable Programmable Read Only Memory) - sunt memorii PROM ce pot fi terse cu un flux puternic de electricitate, apoi pot fi reprogramate. Un tip recent de memorie EEPROM este memoria flash. Diferit de EPROM, care se poate trege prin expunerea la raze ultraviolete i de EEPROM, care nu poate fi ters la nivel de octei, memoria flash poate fi tears i rescris la nivel de bloc de octei. Ca i EEPROM, memoria flash poate fi tearsa fr s fie scoas din circuit.

8.

Memoria RAM

Este memoria intern care stocheaz datele i programele care vor fi prelucrate imediat. Caracteristici: accesul direct; sunt realizate din module sau cipuri de o anumit dimensiune, prezentndu-se sub forma unor memorii integrate, ntr-o tehnic general de tip MOS; permit citirea i scrierea datelor, din i n orice cuvnt de memorie; sunt memorii volatile, nepermanente (la pierderea curentului electric coninutul lor se pierde) Exist dou tipuri de memorie RAM: 1. Memorie RAM Static (SRAM) - are calitatea de a pstra datele nscrise n mod static i permanent pe durata alimentrii cu electricitate. Acest tip de memorie utilizeaz n structura sa 4 tranzistori i dou rezistene. Comutarea strilor ntre 0 i 1 se realizeaz prin comutarea strii tranzistorilor. La utilizarea unei celule de memorie informaia nu se pierde,iar datorit utilizrii matricei de tranzistori comutarea ntre cele dou stri este foarte rapid. 2. Memorie RAM Dinamica (DRAM) coninutul volatil al acestor tipuri de memorie este conservat cu ajutorul mecanismului de remprosptare, care reprezint operaia de citire periodic a datelor din memorie i rescrierea lor n aceleai cuvinte de memorie cu ajutorul unui dispozitiv suplimentar de detectare a parittii. Memoria DRAM are ca principiu constructiv celula de memorie format dintr-un tranzistor i un condensator de capacitate mic. Schimbarea strii ntre 0 i 1 se realizeaz prin incrcarea/descrcarea condensatorului. La fiecare citire a celulei condensatorul se descarc. Aceast metod ce citire a memoriei este denumit citire distructiv. O alt problem care micoreaz performana n ansamble este timpul de remprosptare al memoriei, care se realizeaz la fiecare 64 de milisecunde. Remprosptarea memoriei este o consecin a principiului de funcionare al condensatorilor. Acetia colecteaz electroni care se afl n micare la aplicarea unor tensiuni electrice, ns dup o anumit perioad de timp energia scade n intensitate. Aceste probleme de ordin tehnic conduc la creterea timpului de ateptare pentru folosirea memoriei. Se disting dou tipuri de memorie DRAM: memorie DRAM sincron i memorie DRAM asincron.

Orice calculator este alctuit din mai multe circuite electronice care trebuie s se sincronizeze ntre ele pentru ca transferurile i prelucrrile de date s funcioneze corect. Aceast sincronizare se face cu ajutorul unui circuit de tip ceas. Acesta genereaz semnale cu o frecven constant, numit frecven de ceas, fa de care se sincronizeaz majoritatea proceselor din sistem. Cele mai vechi memorii DRAM au fost asincrone adic operaiile de citire/scriere nu erau sincronizate cu frecvena de ceas a sistemului. Cu timpul, pentru creterea vitezei de calcul, circuitele digitale au fost perfecionate i frecvena de ceas a crescut. Astfel, memoriile DRAM asincrone au fost nlocuite cu memorii DRAM sincrone, care se sincronizeaz cu frecvena de ceas i care funcioneaz la frecvene mai mari de 60MHz. Memorii asincrone se mai gsesc doar la calculatoarele care au cel mult procesor 486, funcionnd la frecvene de pn la 60MHz. Din aceast categorie sunt mai populare aa-numitele memorii EDO (Extended Data-Out), care pot lucra la frecvene de pn la 75 MHz, dar nu mai sus. Primele procesoare Pentium nc mai puteau conlucra bine cu memoriile EDO. O mbuntire considerabil a memoriilor asincrone au adus-o n acest moment memoriile BEDO (Burst Extended Data-Out), n cazul crora transferurile de date se realizeaz n rafale. Acestea nu au mai reuit s se impun, deoarece apare noua tehnologie a memoriilor DRAM, i anume DRAM sincrone. SDRAM (Synchronous Dynamic RAM) a reprezentat un mare pas nainte n tehnologia memoriilor, deoarece SDRAM funcioneaz constant bine la frecvene de ceas superioare celor la care memoriile DRAM asincrone ddeau rateuri. Memoriile SDRAM au introdus i o nou caracteristic a memoriilor, aceea de vitez de funcionare relativ la viteza magistralei sistemului. Din cauza funcionrii sale sincrone cu frecvena de ceas, o memorie SDRAM trebuie s fie suficient de rapid ca s poat comunica vine pe magistrala sistemului (system bus). Primele memorii SDRAM au fost concepute pentru magistrale lente, de 66 MHz, ns o nou generaie de memorii SDRAM a fost conceput atunci, cu specificaia PC100, adic pentru magistrale de 100 MHz. Apoi a urmat specificaia PC133, pentru magistrale de 133 MHz. Creterea vitezei pe magistrale a impus dezvoltarea de noi tipuri de memorii, mai rapide. Apare tehnologia DDR SDRAM (Double Data Rate SDRAM, numit pe scurt DDRAM) care dubleaz viteza transferurilor de date prin folosirea mai eficient a ciclilor-main, transferurile fiind declanate att pe panta ascendent, ct i pe panta descendent a semnalului de ceas (nainte, numai una dintre aceste pante era folosit pentru declanarea transferurilor). DDR2 SDRAM acest standard a devenit disponibil pentru utilizatori la jumtatea anului 2003. DDR3 SDRAM dei anunate nc din 2005, primele plci de baz cu suport pentru aceste memorii au aprut n vara anului 2007. n prezent, prezint

cea mai performant soluie, dar nu i cea mai convenabil, avnd n vedere costurile/MB. La memoriile DDR, de orice tip, trebuie s tim c specificaiile ne sunt prezentate la o valoare dubl datorit modului de lucru al acestui tip de memorii. Totui, nu toate operaiile care sunt efectuate de memorie sunt la vitez dubl, motiv pentru care, uneori, spre deruta noastr, se face referire i la viteza nominal, adic njumtit.
DDR SDRAM PC1600=200MHz PC2100=266MHz PC2700=333MHz PC3200=400MHz DDR2 SDRAM PC2-3200=400MHz PC2-4200=533MHz PC2-5300=667MHz PC2-6400=800MHz PC2-8000=1000MHz PC2-8500=1066MHz PC2-9600=1200MHz DDR3 SDRAM DIMM(=Dual In-Line Memory Module) PC3-6400=800MHz PC3-8500=1066MHz PC3-10600=1333MHz PC3-12800=1600MHz

n 1998, dou tehnologii avansate au preluat acelai principiu de declanare a transferurilor pe ambele pante ale ciclului de ceas, introdus de tehnologia DDR SDRAM. Unul dintre ele se numete SLDRAM (Synchronous-Link DRAM) i are avantajul c nu necesit modificarea arhitecturii actuale a calculatoarelor. SLDRAM a fost construit pentru o magistral de 64 de bii funcionnd la 200MHz i teoretic poate atinge o vitez de transfer de 3,2 GB/s. A doua tehnologie aprut este DRDRAM (Direct Ramburs DRAM) sau, mai scurt ,RDRAM. Este un tip de memorie RAM mai puin popular n rndul calculatoarelor personale. Acest tip de memorie a intrat pe piaa PC-urilor n 1999 avnd ca susintor principal productorul american de microprocesoare Intel. Datorit costurilor mari de producie, acest tip de memorie nu s-a impus pe pia. Tehnologia dezvoltat de firma Ramburs i-a gsit totui utilitatea n special n rndul consolelor, cum ar fi Nintendo 64 sau Sony Playstation 2 sau 3. Bazat iniial pe magistrala de 16 bii lucrnd la 400 MHz, DRDRAM funcioneaz mai degrab ca o magistral de date dect ca un sistem convenional de memorie i atinge o vitez de 1,6 GB/s. Din punct de vedere al formei i structurii fizice, memoriile pot fi implementate sub form de module, astfel: SIMM (Single In-Line Memory Module) EDO DRAM (72 pini) acestea se monteaz numai n perechi pentru a asigura limea de band necesar comunicrii cu procesorul (utilizate pentru procesoarele Intel x86 pn la Pentium I, AMD x86 pn la K5); DIMM (Double In-Line Memory Module) SDRAM (168 pini) acest modul putndu-se monta singular (utilizate pentru procesoarele Intel Pentium I, Celeron pn la PIII/PIV, AMD K6 pn la K6III); DIMM DDR i RIMM (Ramburs In-Line Memory Module) RDR (184 pini) se bazeaz pe tehnologia SDRAM (utilizate

pentru procesoarele Intel Pentium IV(RDR), AMD Duron, Athlon, Athlon XP (DDR)). Memoriile n format SO-DIMM (Small Out-Line - DIMM) sunt destinate calculatoarelor portabile, dein un numr diferit de pini, 184 pentru SDRAM i 200 pentru DDR SDRAM, i au dimensiunile reduse cu aproape 50%. Pentru a reduce consumul de energie, factor critic n economia unui sistem portabil, memoriile SO-DIMM ruleaz n general la frecvene mai sczute fa de memoriile folosite pentru desktop-uri.

9.

Memoria Cache

Memoria Cache, numit i buffer de mare vitez sau zon tampon, este o parte din memoria intern folosit pentru a executa prelucrarea diverselor operaii din cadrul unui sistem de calcul. Este un mecanism de stocare de mare vitez. Acest tip de memorie vine s suplineasc viteza unic de raspuns a memoriei RAM fa de cerinele microprocesorului, stocnd pentru un timp limitat prti ale programelor sau datelor cel mai des utilizate de UAL. Poate fi folosit ca buffer de lucru ataat UCP-ului pentru pstrarea temporal a detelor i instruciunilor. n cazul n care datele sunt plasate n memoria cache, nu mai este necesar accesul la o memorie auxiliar acest lucru conducnd la creterea vitezei de deplasare. Este o memorie de capacitate mic, dar de vitez foarte mare. Memoria Cache este introdus n totalitate n procesor (la procesoarele actuale), sau pe placa de baz (la modelele anterioare). Aceasta este mprit pe mai multe nivele, n funcie de "distana" fa de unitatea de calcul. Memoria Cache de nivel 1 - poate fi accesat imediat, fr stadii de ateptare, deoarece lucreaz la viteza procesorului. Memoria Cache de nivel 2 - este, de obicei, mai mare, i a cunoscut o evoluie marcant. Iniial, ea a fost ncorporat pe placa de baz i deinea o vitez mai mic, apoi a fost alturat procesorului, funcionnd la o vitez fracionat, dar comparabil cu aceasta. n final, ea a fost integrat n pastila de siliciu a acestuia avnd astfel o vitez egal cu UCP. Avantajul memoriei cache const n reducerea timpilor de ateptare, deci n creterea vitezei de lucru, deoarece memoria RAM a sistemului este mult mai lent dect procesorul. Memoria Cache de nivel 3 - nlocuiete acum memoria Cache de nivel 2, fiind mai lenta dect procesorul, ns mai rapid dect memoria principal.

10. Arhitectura memoriei (organizare i adresare)


Caracteristica principal a arhitecturii unui calculator este organizarea memoriei i modul n care informaia este structurat i accesat din memorie. Memoria principal este organizat ca o colecie de locaii de memorie, numerotate consecutiv, ncepnd de la 0. Numerele asociate locaiilor fizice reprezint adresa fizic, iar mulimea total a adreselor fizice constituie spaiul adreselor fizice. O adres logic este o adres utilizat ntr-o instruciune de ctre programator. Adresele care pot fi utilizate de un program poart denumirea de spaiul adreselor logice.

11. Memoria liniar


Memoria liniar este cea mai obinuit form de organizare a spaiului de adrese logice i cea mai obinuit arhitectur pentru memorie, si anume un spaiu continuu, liniar, de adrese de memorie. Adresele pornesc de la 0 i continu, n mod liniar, fr goluri sau ntreruperi, pn la limita superioar impus de numrul total de bii dintr-o adres logic. Astfel, pentru o memorie cu 16 linii de adres, vom avea 216 (65536) adrese distincte. O astfel de adres generat de un program este utilizat de partea hardware a memoriei pentru a plasa data.

Maparea memoriei liniare


Maparea reprezint procesul de translatare a adreselor logice n adrese fizice, deci fiecare adres logic va fi asignat n mod arbitrar ctre o adres fizic. Aceast operaie de mapare este foarte util n sisteme de multiprogram pentru care a fost realizat maparea. Fiecare sistem i are propriul spaiu de adrese, iar unitatea de mapare suprapune spaiul adreselor logice n memoria fizic.

(DESEN!!!)

12. Maparea bazat pe pagini


n locul maprii ntregului spaiu logic de adrese ca o unitate, mecanisme mult mai avansate de translaie a adresei mapeaz pagini de dimensiuni fixe, mai mici, ale spaiului de adrese logice. Astfel, un program de dimensiuni mari nu trebuie s fie realocat ntr-o zon continu de adrese de memorie, care poate fi greu de gsit ntr-un cadru multiprogram, ci n mai multe seciuni mai mici ce sunt disponibile. (DESEN!!!)

Fiecare pagin poate avea asociate atribute (drepturi de acces), care indic modul de accesare a paginii. Aceste atribute pot permite: numai citire (R); citire i scriere (WR); pot mpiedica orice acces (X).

13. Memoria virtual


Spaiul de adrese logice este mult mai mare dect memoria fizic. Memoria virtual este un mecanism care extinde limitele memoriei fizice. ntrun sistem cu memorie virtual aceasta apare utilizatorului ca i cum ntregul spaiu logic de adrese este disponibil pentru memorare. De fapt, n orice moment, doar cteva pagini din spaiul logic de adrese sunt mapate peste spaiul fizic . Alte pagini pot s nu fie prezente n memoria principal. n schimb, informaia din aceste pagini este memorat ntr-o memorie secundar cum ar fi hard disk-ul, al crui cost/bit este mai sczut. Ori de cte ori este accesat o pagin care lipsete, sistemul de operare ncarc pagina respectiv de pe hard disk i memoreaz n locul ei alte pagini care nu au fost recent referite.

14. Memoria segmentata


Memoria segmentat este o alta form de organizare logic a memoriei. Motivaia acesteia o reprezint faptul c programele nu sunt scrise ca o secven liniar de instruciuni i date, ci mai degrab ca buci (segmente) de cod i secvene de date. Aceste module (secvene) de cod i date pot fi de diferite dimensiuni. Spaiul logic de adrese este desprit n mai multe spaii liniare de adrese, fiecare avnd propria ei dimensiune. Fiecare dintre aceste spaii de adrese liniare este denumit segment. Fiecare element dintr-un segment este accesat printr-o adres cu dou componente: selectorul segmentului - specific adresa de nceput a segmentului; deplasamentul - specific adresa relativ fa de baza segmentului sesectat. Fiecare segment poate fi asociat unui modul de date sau de program. Programul poate avea: procedura principal ntr-un segment, fiecare alt procedur n propriul ei segment, i fiecare structur important de date n segmentul propriu. Astfel, structura adreselor logice reflect organizarea logic a programului.

Maparea memoriei segmentate


Maparea n acest caz este implementat printr-o tabel de segment care pstreaz descriptorul de segment pentru fiecare segment. Descriptorul de segment conine adresa de nceput a segmentului i lungimea acestuia. Componenta selectorului de segment a unei adrese logice este utilizat ca un index pentru a selecta descriptorul de segment din tabela descriptorilor de segment. Apoi, deplasamentul este adunat la adresa de nceput a segmentului, furnizat de descriptorul de segment, pentru a calcula adresa fizic a operandului referit. Deplasamentul este verificat hardware pentru a se asigura c referina nu depete limita segmentului.

15. Memoria externa


Pentru a utiliza informaiile memorate n memoria extern ele trebuie aduse nti n memoria principal. Prin comparaie cu memoria intern, memoria extern se caracterizeaz prin viteza de acces mai sczut, cost mai redus, capacitate mai mare, i are rolul de a mri spaiul de memorare al unui sistem de calcul. Memoria extern este o memorie de arhivare, ceea ce nseamn c asigur stocarea datelor preluate din mediul extern pe o perioad de timp nedeterminat i n volume semnificative. Se poate spune c memoria de arhivare este cea care asigur forma de stocare suplimentara a datelor din sistemul de calcul. Tot n memoria extern sunt stocate i programele cu ajutorul crora se realizeaz prelucrarea datelor. n comparaie cu memoria intern, memoria extern este: Nevolatil; Cu acces poziional; Cu timp de acces mai mare; Cu vitez de transfer mai mic; Cu cost mai mic; Cu capacitate mul mai mare; Este o memorie read-write; Are densitate de memorare variabil de la un echipament la altul i de la un suport la altul. Accesul la memoria extern nu se face direct, ci prin intermediul memoriei interne. n prezent se folosesc dou tehnologii de realizare a mediului de memorare pentru memorii externe: tehnologia magnetic; tehnologia optic. Suporii de memorare utilizai sunt: discul/banda magnetic; discul optic. Tehnica de memorare bazat pe proprieti magnetice este asemntoare tehnicii de realizare a nregistrrilor de sunet de pe banda magnetic. Spre deosebire de sunet, care este un semnal analogic, informaia memorat n calculator este digital (0 sau 1). Materialul magnetic se depune pe suprafaa suportului fizic de memorare sub forma unor matrici de puncte care pot fi sau nu magnetizate. Fiecare bit de informaie reprezint starea magnetizat/nemagnetizat a punctului respectiv. Pentru a nregistra informaia, se utilizeaz un dispozitiv numit cap de citire-scriere, prin care circul curent

electric. Variaia curentului electric n capul de citire-scriere genereaz un cmp electromagnetic ce magnetizeaz stratul magnetic depus pe suportul de informaii. La citire are loc procesul invers. Cmpul magnetic al punctelor din stratul magnetic induce n capul de citire-scriere un curent electric variabil. Acest curent furnizeaz informaia memorat n stratul magnetic. n cazul memoriilor optice, materialul care acoper suportul fizic este ars cu un fascicol laser puternic atunci cnd se scriu informaiile pe suport. Citirea informaiilor se bazeaz pe reflexia unei raze laser, reflexie care este difuz n zonele arse i puternic n zonele nearse. Observm c la acest tip de echipamante scrierea informaiilor se face cu un dispozitiv, iar citirea cu un alt dispozitiv.

Banda magnetic
Banda magnetic este un mediu tradiional de arhivare. Are capaciti de 20-40 GB. Pentru calculatoarele PC, acest echipament este cunoscut sub numele de "streamer". La acest dispozitiv este folosit banda magnetic ncasetat. Trebuie fcut deosebirea dintre banda magnetic, dispozitiv (derulator sau echipament) i banda magnetic, suport de informaie (panglic acoperit cu strat magnetic). Mecanismul (derulatorul) cuprinde: dispozitivul de antrenare, care realizeaz poziionarea benzii n aciunile de localizare, accelerare/frnare, rebobinare i deplasare cu vitez constant; circuitele de comand; dispozitive pentru realizarea schimbului de informaie. Aceste dispozitive sunt: cap de scriere, cap de citire i cap de tregere. Din punct de vedere al organizrii fizice a informaiei, banda magnetic este mprit transversal ntr-un numr de 9 piste sau canale. Fiecare caracter este nregistrat transversal pe band, cte un bit pe fiecare din primele opt piste, a noua pist fiind folosit pentru a nregistra informaia redundant aferent bitului de paritate. Informaia se nregistreaz pe band n grupe contigue de caractere, numite blocuri fizice. Blocurile fizice constituie unitatea adersabil pe banda magnetic. Accesul la o anumita adres de pe band este precedat de poziionarea la nceputul blocului cu adresa solicitat. Blocurile fizice sunt separate ntre ele prin zone nenregistrate, de lungime fix, numite GAP-uri. Un GAP este folosit ca spaiu de frnare sau accelerare pentru mecanismul de antrenare la poziionarea pe un anumit bloc. Pentru optimizarea utilizrii benzii magnetice trebuie ca raportul dintre spatiul ocupat de blocurile fizice i spaiul total de pe band s fie ct mai mare (lungimea GAP-urilor s fie minim). Principala caracteristic funcional a benzii magnetice o reprezint densitatea de nregistrare, adic numrul de octei memorati pe unitatea de msura a lungimii benzii. Densitatea de nregistrare se msoar n octei/inch, unitatea de msur avnd simbolul BPI (byte per inch). Blocul fizic este unitatea de transfer a informaiei cu memoria intern. Blocurile conin

informaie redundant pentru realizarea controlului de paritate prin sistemul de paritate ncruciat. Acest mecanism de control permite verificarea corectitudinii transferului ntre dispozitivele periferice i memoria principal. Biii citii intr ntr-un algoritm de calcul al paritii, iar rezultatul acestui algoritm este comparat cu informaia de paritate citit de pe suport. n caz de coinciden nseamn c operaia s-a desfurat corect, iar n caz de diferen operaia se reia. Accesul la informaia de pe banda magnetic este de tipul poziional, avnd n plus restricia de secvenialitate. Pentru accesul la blocul n de pe band este necesar parcurgerea celor n-1blocuri care l preced. Din acest motiv, timpul de acces la o anumit informaie nu este constant, ci depinde de distana dintre poziia curent de pe band (blocul curent) i poziia pe band a informaiei dorite. Parcurgerea benzii magnetice pentru localizare pe un bloc se face ntotdeauna ntr-un singur sens: de la primul la ultimul bloc. Principalul inconvenient pentru utilizarea benzii mgnetice este timpul de acces mai mare utilizat, datorit accesului secvenial la informaie.

Discul magnetic
Discurile magnetice sunt formate din una sau mai multe plci circulare, care constituie suportul pentru substana magnetic ce memoreaz informaia. Aceste plci circulare formeaz volumul de disc. n funcie de gradul de mobilitate, discurile pot fi fixe (amovibile) i mobile (movibile). Pentru a fi utilizat, un volum de disc, se monteaz pe o unitate de disc care cuprinde: mecanismul de antrenare a discului, care asigur rotirea continu a discului cu o vitez constant; mecanismul de susinere i manevrare a capetelor de citirescriere; mecanismul de acces la informaie, care este constituit din capetele de citire-scriere; mecanismul de control al unitii. Pe un volum de disc, informaia se memoreaz pe feele active, adic pe acele fee ale plcilor circulare care sunt acoperite cu substan magnetic de memorare. Un volum de disc format dintr-o singur plac circular are dou fee active, iar la volumele cu mai multe plci se scad cele dou fee exterioare. Numrul feelor active este o constant constructiv a pachetului de discuri. Suprafaa fiecrei fee active este divizat n coroane circulare, concentrice, numite piste. Acestea reprezint suprafeele pe care se realizeaz efectiv memorarea informaiei. Pentru accesul la informaia memorat este necesar s existe posibilitatea de poziionare a capetelor de citire-scriere pe fiecare pist. Numrul de piste este dat de numrul de poziionri distincte care pot fi realizate de ctre un cap de citire-scriere de-a lungul razei plcii circulare. Volumele cu mai multe plci circulare au acelai numr de piste pe fiecare

fa activ. Informaia se memoreaz de-a lungul unei piste a discului, existnd o poziie iniial marcat fizic. Pe fiecare pist este memorat acelai numr de caractere, indiferent de lungimea pistei. n cazul discurilor cu mai multe plci circulare, pentru a uura identificarea unei piste, se introduce noiunea de cilindru. Un cilindru este format din toate pistele care au aceeai raz pe toate feele active ale discului. Cilindrii se numeroteaz de la exterior spre interior. Numrul de piste reprezint a doua constant constructiv a discului magnetic. Fiecare pist este mprit n mai multe sectoare. Sectorul reprezint unitatea adresabil a discului. Toate pistele unui cilindru conin acelai numr de sectoare. Poziionarea la nceputul sectorului se face prin rotirea volumului de disc prin faa capetelor de citire-scriere. Sectorul este unitatea de schimb de informaie cu memoria intern. Pe parcursul schimbului de informaie, discul se rotete cu aceeai vitez prin faa capetelor de citirescriere. Numrul de octei care se pot memora ntr-un sector al discului este fix, indiferent de poziia sectorului pe disc. Capacitatea unui disc se obine prin produsul dintre numrul de octei din sector, numrul de sectoare, numrul de piste i numrul de fee active. Informaia este organizat pe disc pe trei nivele de acces: cilindrul, pista de cilindru i sectorul de pe pist. Mecanismul de acces la informaie este realizat de capetele de citirescriere. Accesul la informaia memorata pe discurile magnetice se face prin poziionarea capetelor de citire-scriere n dreptul sectorului dorit de pe pista i cilindrul cerut, concomitent cu micarea de rotire a volumului de disc.

Discurile flexibile
Caracteristicile generale sunt asemntoare cu cele ale discurilor descrise mai sus, ns, spre deosebire de discurile fixe, unde capetele plutesc pe o pern de aer n micare rapid, capetele discului flexibil vin n contact direct cu suprafaa acestuia. Rezultatul este acel c att mediul, ct i capetele se uzeaz mai repede. Pentru a reduce uzura, calculatoarele personale retrag capetele i opresc rotaia dac discul nu este folosit pentru citire/scriere. Ca urmare, atunci cnd se d urmtoarea comand pentru citire/scriere apare o ntrziere de aproximativ jumtate de secund necesar motorului s ating viteza de rotaie.

Memorii externe pe suport optic


Unitile de discuri compacte (CD-urile) funcioneaz pe baza fenomenelor electro-optice, folosind o tehnologie laser.

CD-ROM-uri
n ultimii ani au devenit disponibile discurile optice (ca opuse celor magnetice). Ele au o densitate de nregistrare mult mai mare dect discurile

magnetice convenionale. Datorit capacitii lor enorme de potenial, discurile optice au fcut obiectul unor cercetri intense i au parcurs scara evolutiv extrem de rapid. Un CD este pregtit cu ajutorul unui laser n infrarou, de mare putere, care realizeaz perturbaii de 0.8 microni diametru ntr-un disc acoperit cu sticl. Dup acest disc "model" (master) este turnat o matri, cu denivelri n locul perforaiilor. Rini policarbonate topite sunt injectate n aceast matri pentru a forma un CD cu acelai aranjament al perturbaiilor ca i modelul de sticl. Pe urm se depune peste policarburi un start foarte subire de aluminiu reflectorizant, acoperit de un lac protector, i n final o etichet. Depresiunile din substratul policarbonic se numesc caviti (pits), iar zonele nearse dintre caviti se numesc soluri (lands). La redare, o diod laser de mic intensitate trimte unde infraroii cu lungimea de und de 0.78 microni peste caviti i soluri pe masur ce acestea defileaz prin dreptul ei. Laserul este proiectat pe partea policarbonat, astfel nct cavittile apar laserului ca denivelri ntr-o suprafa altfel plan. Deoarece adncimea cavitilor este de un sfert din lungimea de und a laserului, lumina reflectat de cavitate este defazat cu jumatate din lungimea de und fa de lumina care se reflect de pe suprafaa nconjurtoare. n consecin, cele dou pri interfereaz destructiv i ntorc mai puin lumin ctre fotodetectorul dispozitivului de redare dect lumina ntoars de un sol. Aa distinge dispozitivul de redare o cavitate de un sol. Cavitile i solurile sunt scrise ntr-o spiral continu, pornind de lng perforaie i acoperind tot discul, pn la o distan de 32 mm de margine. Spirala descrie pe disc 22188 de cercuri (aproximativ 600 pe mm).

CD-uri inscripionabile (CD-R)


La nceput, echipamentul necesar pentru a produce un CD-ROM "master" (sau la fel de bine un CD audio "master") era foarte scump. Inscriptoarele de CD-uri erau nc diferite de discurile magnetice, deoarece, odat scrise, CDROM-urile nu mai puteau fi terse. n ciuda acestei limitri, ele au servit ca mediu pentru copiile de siguran ale discurilor mari i, de asemenea, permiteau indivizilor sau companiilor nceptoare s-i produc propriile CDROM-uri de serie mic sau s produc modele (matrie) a CD-urilor n serie mare. Aceste dispozitive sunt cunoscute sub denumirea de CD-R (CDRecordables sau CD-uri inscripionabile). CD-R-urile pleac de la discuri goale de 120 mm din policarbonai care sunt identice cu CD-ROM-urile, cu excepia faptului c au un an lat de 0.6 mm pentru a ghida laserul la scriere. anul are un traseu sinusoidal de 0.3 mm la o frecven de exact 22.05 KHz pentru a furniza o reacie continu, astfel nct viteza de rotaie s poat fi monitorizat exact i corectat daca e nevoie. CD-R-urile arat la fel ca CD-ROM-urile, doar c sunt aurii, nu argintii. Culoarea aurie provine de la faptul c ele au un strat reflectorizant din aur, n locul celui de aluminiu. Spre deosebire de CD-urile argintii, care au depresiuni fizice pe ele, pe CD-R-uri reflectivitatea diferit a cavitilor i a solurilor trebuie s fie simulat. Acest lucru se obine prin adugarea unui strat de vopsea ntre policarbonat i stratul reflectorizant de aur. Sunt folosite dou tipuri de vopsea: cianina, care este verde i ftalocianaina, care este galbenportocalie.

n starea iniial, stratul de vopsea este transparent i las laserul s treac i s se reflecte n stratul de aur. Pentru scriere, laserul CD-R este pornit la putere mare (8-16 mW). Cnd fascicolul lovete un punct de vopsea, acesta se ncinge, distrugnd o legtur chimic. Aceast schimbare a structurii

moleculare determin apariia unui punct ntunecat. La citire (la 0.5 mW), fotodetectorul sesizeaz o diferenaa ntre zonele ntunecate n care vopseaua a fost atins i cele transparente n care este intact. Aceast diferen este interpretat drept diferena dintre caviti i soluri (chair la citirea cu un cititor obinuit de CD-ROM-uri).

CD-uri reinscripionabile (CD-RW)


CD-RW (CD-ReWritables) este o tehnologie disponibil care folosete acelasi suport ca i CD-R. Totui, n loc de vopselele cianin si ftalocianin, CD-RW folosete pentru stratul reflectorizant un aliaj de argint, indium, antimoniu i teluriu. Acest aliaj are dou stri stabile: cristalin i amorf, cu reflectiviti diferite. Dispozitivele pentru CD-RW folosesc lasere cu trei puteri diferite. La putere nalt, laserul topete aliajul, convertindu-l din starea cristalin puternic reflectorizant la cea amorf cu reflectivitate sczut, pentru a reprezenta o cavitate. La putere medie, aliajul se topete i trece din nou n starea lui natural cristalin, redevenind sol. La putere joas se percepe starea materialului (pentru citire) i nu are loc nici o schimbare de faz. DVD (Digital Versatile Disk) DVD-urile folosesc acelai proiect ca i CD-urile, cu discuri de 120 mm din policarbonat, cu caviti i soluri, care sunt iluminate de o diod laser i citite de un fotodetector. Noutatile constau n utilizarea de: caviti mai mici (0.4 microni fa de 0.8 microni pentru CD-uri); spiral mai strns (0.74 microni ntre piste fa de 1.6 microni pentru CD-uri); un laser rosu (la 0.65 microni fa de 0.78 microni pentru CD-uri). Toate aceste mbuntiri combinate au crescut capacitatea de apte ori, la 4.7 GB. Un dispozitiv DVD funcioneaz la 1.4 MB/sec (fa de 150 KB/sec pt CD-uri). DVD-urile pot avea urmtoarele formate: 1. o singur fa, un singur strat (4.7 GB); 2. o singur fa, dou straturi (8.5 GB); 3. dou fee, un singur strat (9.4 GB); 4. doua fee, dou straturi (17 GB). Tehnologia cu dou straturi depune un strat reflectorizant la baz, acoperit de un strat semireflectorizant. n funcie de focalizarea laserului, se reflect dintr-un strat sau din cellalt. Stratul de dedesubt are nevoie de caviti i soluri de dimensiuni ceva mai mari, pentru a prezenta siguran n funcionare, astfel nct capacitatea sa este diminuat fa de cea a startului superior.

Discurile cu dou fee sunt obinute prin lipirea spate n spate a dou discuri de 0.6 mm cu o singur faa. Pentru a asigura o grosime standard pentru toate variantele, un disc cu o singur fa const dintr-un disc de 0.6 m lipit de un substrat neinscripionat.

CD-R (Recordable) - unde informaia poate fi scris. CD-ROM-urile - se realizeaz de ctre productori, informaia fiind nregistrat pe o pist unic, n spiral. Citirea se face secvenial. Sunt utilizate pentru distribuia de software. Se realizeaz un etalon, care este utilizat la producerea matriei cu care sunt create apoi copiile pentru distribuie. Aceste CD-uri au un cost foarte sczut, reducnd costul de distribuie al software-ului. Capacitatea uzual a unui CD este de 650 MB. CD-WORM (Write One, Read Many) sunt folosite pentru arhivare, scrierea fcndu-se o singur dat. Toate datele care se memoreaz trebuie s fie disponibile n memoria intern n momentul scrierii. CD-R - este folosit pentru arhivare, putndu-se scrie n continuare. Capacitatea de stocare a CD-urilor este mare, datorit densitii ridicate, ajungndu-se pn la 16000 TPI (piste/inch). Informaia pe suport este mult mai stabil, garantat circa 10 ani. Suprafaa fiind protejat de un strat transparent de material plastic, suportul nu este afectat astfel de umiditate, temperatur sau cmpuri magnetice. ntre capul de citire i suprafaa discului este o distan de civa mm, aprox de 2000 de ori mai mare decat la HardDisk-uri, de unde rezult o protecie mai bun a capului de citire-scriere. CDurile sunt mult mai fiabile. O mare parte din spaiul CD-ului este rezervat memorrii informaiilor suplimentare pentru detectarea i corectarea erorilor. n consecin, rezult o serie de dezavantaje ale CD-urilor: timpul de acces mai mare dect la Hard-Disk; o rat de transfer a informaiei mai mic dect la Hard-Disk.

16. Unitatea central Setul de instruciuni


Activitatea general a unui sistem de calcul const n stocarea i prelucrarea informaiilor. ntregul proces de tratare a informaiei n cadrul unui sistem de calcul are loc conform unui algoritm de prelucrare. Acest algoritm poate fi modelat prin seturi de instrcuiuni specifice unui limbaj de programare. Indiferent de limbajul de programare utilizat, instruciunile unui program trebuie aduse printr-un set de transformri succesive pn la nivelul unui set de comenzi elementare care pot fi executate de sistemul de calcul i care formeaz setul de instruciuni al calculatorului. Aceste instruciuni aparin unui limbaj intern numit limbaj maina care cuprinde un set restrns de instruciuni elementare, de forma unor coduri binare de lungime dat. Componenta sistemului de calcul care realizeaz executarea instruciunior este UCP-ul, care trebuie s ndeplineasc urmtoarele funcii : - citirea i scrierea informaiilor din i n memoria intern; - recunoaterea i executarea instruciunilor maina; - transmiterea de comenzi celorlalte componente ale sistemului de calcul, realiznd astfel coordonarea funcionrii sistenului de calcul. Formatul instruciunilor specific numrul de cuvinte de memorie utilizate pentru codificarea fiecrui tip de instruciune, precum i semnificaia cmpurilor care formeaz instruciunea. Formatul folosit al instruciunilor se stabilete n faza de proiectare a mainii, atunci cnd se proiecteaz i setul de instruciuni main. n general, o instruciune main trebuie s cuprind dou cmpuri: - codul operaiei operaia care trebuie executat; - zona de adrese - care trebuie s cuprind, la rndul ei, un numar de adrese pentru operanzi, o adres pentru rezultat i adresa instruciunii care urmeaz a se executa. Convenii de reprezentare a unei instruciuni : 1) Instruciunea trebuie s cuprind maxim doi operanzi. 2) Adresa urmtoarei instruciuni ce trebuie executat se citeste ntotdeauna dintr-un registru specializat, numit registru contor de adrese. La execuia fiecrei instruciuni, acest registru este incrementat cu lungimea instruciunii pe care a executat-o. 3) ntr-un program ncrcat n memorie, pentru a fi executat, instruciunile succesive se afl la adrese consecutive din memorie. 4) Pentru realizarea unei ramificri n execuia unui program, se folosesc instruciuni speciale de salt, care modific valoarea memorat n registrul contor de adrese, ncrcnd n aceasta valoarea noii instruciuni la care se va face saltul.

5) Adresa de destinaie a unei operaii este identic cu una din adresele surs, caz n care operandul adres este distrus (ters) n urma executrii instruciunii. 6) Cel puin una din adresele celor doi operanzi trebuie s fie adresa unuia din registrii UCP-ului.

17. Executarea unei instruciuni


Sub controlul unui program i cu datele stocate n memoria intern, UCP execut fiecare instruciune n dou etape, ca o secven de pai sincronizai.

Funciile principale executate de UCP sunt : 1) Extragerea instruciunilor aici, UCP trebuie s citeasc instruciunile din memorie i s le incarce n UCC. 2) Interpretarea instruciunilor - fiecare instruciune trebuie decodificat pentru a determina operaia care trebuie executat. 3) Citirea datelor - pentru executarea unor instruciuni este necesar citirea datelor din memorie sau de la dispozitivele de intrare. 4) Prelucrarea datelor execuia unei instruciuni poate necesita execuia unor operaii aritmetice sau logice asupra datelor. 5) Scrierea datelor - rezultatele execuiei trebuie depuse n memoria intern sau transmise dispozitivelor de ieire. Citirea instruciunii i pregtirea operanzilor care reprezint defapt interpretarea instruciunii este o etap ce transfer adresa instruciunii de executat din registrul contor de adrese n registrul de adrese al memoriei. Executarea intruciunii presupune executarea unui set de comenzi succesive corespunztoare codului operaiei descrise n instruciunea care se execut.

O comand se concretizeaz ntr-un cuvnt de comand care determin o aciune a UAL, a memoriei sau a dispozitivelor periferice; aceste comenzi se numesc micro operaii. O micro operaie se desfoar ntr-un ciclu main. Ciclul main reprezint timpul total necesar executrii comenzii msurat n impulsuri de tact. Cu ct o instruciune se compune din mai multe micro operaii, cu att durata ei de execuie crete. Timpul total pentru execuia instruciunii se numete ciclul instruciune i se msoar tot n impulsuri de tact.

18. Structura unei instructiuni-masina


Codul operatiei reprezinta ceea ce trebuie sa execute instructiunea respectiva iar acest cod trebuie sa se regaseasca insetul de coduri admise de UCP. Zona operanzilor trebuie sa contina: modul de adresare; adresele operanzilor. Modul de adresare al unui operand defineste algoritmul de localizare in memorie al operandului. Exista mai multe moduri de adresare : 1. Adresarea este imediata atunci cand in instructiune se specifica valoarea operandului si nu adresa lui. 2. Adresarea prin registrii este atunci cand in zona de adresa se specifica un registru de memorie. In acest caz, este necesar ca registrul respectiv sa fie incarcat cu valoarea dorita, acest mod de adresare are ca avantaj un numar redus de biti, adica o lungime redusa a intructiunii, deoarece sunt putini registri in care se pot gasi operanzi. Alt avantaj accesul imediat la operand. Ca dezavantaj are loc un schimb permanent intre memorie si registri, orice operatie executanduse prin ce putin 2 instructiuni-masina. 3. Adresarea prin locatii de memorie este atunci cand informatia folosita pentru calcului adresei operandului se preia din memorie. Acest mod de adresare necesita un algoritm de calcul pentru localizarea operandului in memorie. Din punct de vedere al algortimului de calcul, avem : 3.a. Adresare directa (informatia din instructiune reprezinta chiar locatia unde se memoreaza operandul) 3.b. Adresare indirecta (informatia din instructiune reprezinta adresa adresei operandului, necesita un calcul suplimentar pentru aflarea operandului) 3.c. Adresare indexata (valoarea din instructiune se aduna algebric cu valoarea unui registru pentru a determina adresa operandului)

19. Tipuri de instructiuni-masina


Dupa operatia pe care o genereaza avem: instructiuni de transfer de date intre memorie, registrii sau stiva; instructiuni aritmetice (operatii elementare, operatii logice si de deplasare care lucreaza la nivel de biti si sunt folosite pentru determinarea bitilor de control din cuvintele de stare sau pentru realizarea rapida a operatiilor aritmetice); instructiuni de comparatie si de salt genereaza continuitatea executiei programului de la o alta adresa decat cea imediat urmatoare; instructiuni de repetare folosite pentru executia repetata a unei secvente de instructiuni; instructiuni de apel de procedura in care pentru executia unei instructiuni dintr-o procedura, se memoreaza pe stiva adresa de revenire utilizata dupa executia procedurii apelate instructiuni de intrare/iesire folosite pt transferul de date pt dispozitivele periferice. Dupa modul de reprezentare al operanzilor, instructiunile se impart in: instructiuni in virgula fixa; instructiuni in virgula mobila; instructiuni zecimale; instructiuni pe siruri de caractere; instructiuni matriciale; instructiuni care opereaza astrupa structurilor de date tabelare. Dupa forma, structura si lungimea instructiunii avem : instructiuni in format fix (instructiunile au aceeasi lungime si implica o structura simpla a procesorului, dar o utilizare ineficienta a memoriei); instructiuni in format variabil (lungimea depinde de tipul operanzilor, de numarul de operanzi si de modul de adresare). Dupa modul de adresare al operanzilor avem: instructiuni cu o adresa; cu doua adrese; fara nici o adresa.

20. Structura procesorului 286


Arhitectura interna a microprocesorului 286 consta in patru unitati functionale care lucreaza in paralel si realizeaza executia instructiunilor ca pe o banda de asamblare. Functionarea procesorului se poate rezuma in principiu la o succesiune de operatii care se executa in mod repetat: 1. Citeste instructiunea - pe durata acestui ciclu se transmite adresa instructiunii de executat si se aduce din memorie instructiunea in CPU (ciclul Fetch); 2. Decodifica instructiunea; 3. Transmite adresa si citeste un operand din memorie, daca se specifica in instructiune (ciclul Read); 4. Executa intructiunea (ciclul Execution); 5. Transmite adresa si scrie rezultatul in memorie, daca instructiunea o cere (ciclul Write).

Cele patru unitati functionale ale procesorului 286 sunt: Unitatea de Adresare (AU=Adress Unit) - determina 1. adresa fizica si contine un sumator de deplasament (offset) care determina deplasamentul in functie de modul de adresare si un sumator de adrese fizice care determina adresa fizica, ca suma intre adresa de segment si de

offset. De asemenea unitatea mai realizeaza si diferite verificari : verifica limita si dimensiunea unui segment si furnizeaza adresa de baza a segmentului. 2. Unitatea Interfata cu Magistrala (BU=Bus Unit) Unitatea de interfata cu magistrala contine circuite driver si latch pentru adrese, o unitate de citire anticipata a instructiunilor, interfata cu extensia de procesor, logica pentru controlul magistralei, o coada de instructiuni si realizeaza transmisia/receptia datelor. 3. Unitatea de Decodificare Instructiuni (IU=Instruction Unit) - Unitatea de decodificare a instructiunilor preia octetii din coada de instructiuni si ii translateaza in microcod. Instructiunile decodificate sunt puse intr-o coada, unde asteapta sa fie executate de Unitatea de Executie. Unitatea lucreaza in paralel cu celelalte unitati si incepe o noua decodificare in momentul in care o locatie din coada devine libera. 4. Unitatea de Executie (EU=Execution Unit) - executa instructiunile din coada de instructiuni decodificate si comunica cu celelalte unitati. Aceasta unitate implementeaza functiile de executie ale tuturor instructiunilor , furnizeaza adrese si date spre AU, respectiv BU, manipuleaza registrele generale si indicatorii de stare. Cand EU este gata pentru executia unei instructiuni, citeste codul acesteia din coada de instructiuni decodificate gestionate de IU si apoi executa instructiunea.

21. Setul de registre (Generale, segment)


Un registru este in esenta o mica memorie cu destinatie speciala. Spre deosebire de o locatie de memorie, registrele sunt utilizate pentru memorarea de informatii asupra careia se opereaza intr-un anumit mod. Acestia sunt registrele specializate. Tot ca zone de memorie, registrele sut folosite drept zone de prelucrare a datelor de catre UAL si in transferul datelor cu memoria interna. Procesorul 286 are 15 registre, grupate in 4 categorii : generale, de segment, index si de baza, de stare si control. Registre generale Sunt opt registre cu scop general : AX, BX, CX, DX, BP, SP, SI, DI utilizate pentru a pastra operanzi logici si aritmetici. Patru dintre acestea pot fi utilizate fie ca registre de 16 biti referite ca AX, BX, CX, DX, fie pot fi impartite in perechi de registre separate de cate 8 opti, referite astfel : AH, AL, BH, BL, CH, CL, DH, DL (H - high, L - low). Majoritatea instructiunilor utilizeaza in acelasi mod toate registrele. Exista insa si instructiuni pentru care anumite registre generale au o anumita semnificatie. - AX si DX sunt utilizate in instructiunile de inmultire, impartire si cele de I/O cu o semnificatie prestabilita. De asemenea, registrul AL pentru operatii de translatie de cod sau in operatiile cu numere reprezentate in BCD (binary code decimal). - CX este utilizat drept numarator pentru operatii de deplasare, rotirem bucle software, repetari hardware ale unor instructiuni. Registrele segment Sunt patru registre speciale care permit selectarea in orice moment a segmentelor de memorie care sunt adresabile imediat. Registrul segment de cod CS Registrul segment de date DS Registrul extrasegment, folosit pentru suplimentarea dimensiunii segmentului de date ES Registrul segment de stiva, folosit pentru localizarea stivei in memoria interna SS Pe langa registrele de segment, vizibile programatorului mai exista pentrufiecare registru segment si registre cache de descriptori de segment, care nu sunt vizibile programatorului.

22. Registre index si de baza

Patru dintre registrele generale (BX, BP registre de baza, SI, DI registre index) pot fi utilizate, de asemenea pentru a determina adresele de offset (deplasamet) ale operanzilor din memorie. Aceste registre pot contine de baza sau indexul pentru anumite locatii de memorie dintr-un segment. Modul de adresare determina registrul specific utilizat pentru calcularea adresei efective a operandului. Registrele index sunt utilizate in mod implicit pentru a referi sirurile sursa, repsctiv destinatie pentru operatiile pe siruri. Registrul BP se refera implicitla segmentul de stiva curent. Tot la segmentul se stiva face referire, implicit pentru operatiile cu stiva si registrul SP (Stack Pointer) dar operatiile cu stiva (PUSH, POP, CALL, RET, INT, IRET) actuealizaeaza in mod automat registrul SP afectand in mod corespunzator stiva (extragerea sau introducerea informatiei din stiva). In schimb, registrul BP poate fi folosit pentru acces la date din stiva fara insa a extrage datele din stiva.

23. Registre de stare si control


Registrele de stare si control: sunt trei registre cu scop special, care memoreaza si controleaza anumite stari ale procesorului : IP, MSW si F. Registrul IP (Instruction Pointer) contine adresa de offset pentru urmatoarea instructiune secventiala ce va fi executata. Registrul MSW (Machine Status Word) memoreaza starea procesorului, adica memoreaza daca a avut loc o comutare de task si controleaza modul de operare al procesorului. Dintre cei 16 biti sunt folositi doar ultimii patru unul trece procesorul in modul protejat iar ceilalti trei controleaza interfata cu extensia de procesor si au urmatoarea seminficatie : - PE (Protected Mode Enable) este pozitionat pe 1 cand se trece in modul protejat - MP (Monitor Processor extension/Math Present) specifica daca este prezenta in sistem extensia de procesor. - EM (Emulate processor extension) specifica daca functiile extensisi de procesor sunt emulate prin software (1) sau nu (0). - TS (Task Switched) memoreaza daca a avut loc o comutare de task. Registrul de indicatori F (Flags Register) contine trei categorii: Indicatorii de stare : - OF (Overflow Flag) indica daca rezultatul unei operatii aritmetice depaseste domeniul de reprezentare (limita superioara sau inferioara a acestuia) - SF (Sign Flag) -este indicatorul de semn al rezultatului unei operatii, fiind 1 pentru negativ si 0 pentru pozitiv. - ZF (Zero Flag) este pozitionat pe 1 daca rezultatul unei operatii aritmetice este egal cu zero, altfel bitul este pozitionat pe 0. - AF (Auxiliary Carry Flag) indica daca a aparut un transport sau un imprumut in urma executiei instructiunii. - PF (Parity Flag) este pozitionat pe 1 cand numarul de unitati din rezultat este par - CF (Carry Flag) se pozitioneaza pe 1 daca a aparut un transport sau un imprumut din rangul cel mai semnificativ al rezultatului. Indicatorii de control : - DF (Direction Flag) utilizat de instructiunile de siruri si indica directia de parcurgere a acestora. - IF (Interrupt Flag) acest indicator controleaza acceptarea semnalelor de intrerupere externa. - TF (Trace Flag) este utilizat pentru controlul executiei instructiunilor in regim pas cu pas, in scopul depanarii programelor. Indicatorii speciali : - IOPL (Input/Output Privilege Level) definste dreptul de a utiliza instructiuni de intrare/iesire NT (Nested Task) este automat pozitionat pe 1 sau 0 de operatiile de comutare de task.

24. Sistemul de intreruperi


O ntrerupere transfer execuia la o nou adres de program. Vechea adres (CS:IP) a programului i starea mainii (registrul de indicatori) sunt salvate n stiv pentru a permite refacerea programului ntrerupt. ntreruperile sunt mprite n trei clase : ntreruperi initiate de hardware apar ca raspuns la un semnal extern si sunt clasificate ca fiind nemascabile si mascabile; instructiunile INT determina o intrerupere in executia programului; exceptii de instructiune apar cand o conditie neobisnuita, care impiedica executia ulterioara a instructiunii, este detectata in timp ce incearca sa execute o instrunctiune. Adresa returnata de o exceptie va referi intotdeauna instructiunea ce a cauzat exceptia si include orice prefix de instructiune. Fiecarei intreruperi ii este asociata o prioritate numerotata de la 0 la 4 : 0 Instructiunea INT sau exceptie, 1 Intrerupere Single Step, 2 - Intrerupere nemascabila, 3 Depasire segment extensie de procesor si 4 Intrerupere mascabila.

25. Intreruperi externe


Intreruperile externe care pot fi transmise de dispozitivele externe, sunt primite de procesor pe doua linii : NMI si INTR. Linia INTR este controlata de PIC (Programmable Interrupt Controller). Rolul sau este de a accepta cereri de intreruperi de la dispozitive externe, de a determina care cerere este cea mai prioritara si de a activa linia INTR, daca dispozitivul care a cerut intreruperea este mai prioritar decat cel curent in servire. Cand linia INTR devine activa, procesorul executa diferite actiuni, in functie de starea indicatorului de validare a intreruperilor (IF). Oricum, nu se executa nicio actiune pana nu se termina executia instructiunii curente, pe durata careia a aparut intreruperea. Instructiunile de activare a intreruperilor se vor lansa dupa sfarsitul instructiunii urmatoare, pentru a nu incarca excesiv stiva. O cerere externa de intrerupere poate veni si pe linia NMI care e comandata pe frontul semnalului si este utilizata pentru evenimente deosebite (cadere tensiune, repornire). Intreruperile nemascabile. NMI, nu pot fi dezactivate si au prioritate fata de cele mascabile, INTR.

26. Intreruperi interne


Intreruperile interne sunt evenimente sincrone si sunt raspunsuri ale procesorului la anumite evenimente detectate in timpul executiei unei instrunctiuni. Intreruperile externe (mascabile si nemascabile) sunt evenimente asincrone. Deosebirea majora intre aceste doua tiprui de intreruperi este originea lor : o intrerupereinterna este intotdeauna reproductibila prin reexecutia programului si datelor care au cauzat intreruperea, in timp ce o intrerupere externa este in general independenta de executia curenta a taskului. Intreruperile interne sunt de doua tipuri : un tip de intrerupere este denumit exceptie, deoarece deoarece intreruperea apare numai daca exista o anumita conditie de eroare, care nu permite executia corespunzatoare a instructiunii. Celalalt tip de intrerupere genereaza intrerupere ori de cate ori instrunctiunea INTn este executata. Aceste instructiuni sunt utilizate fie in scopul de a testa rutinele utilizatorului pentru tratarea intreruperilor externe, fie in scopul de a apela rutine DOS. Pentru apelul rutinelor DOS se utilizeaza acest mecanism si nu mecanismul de apel de procedura din doua motive : fie nu se cunosc aceste adrese, fie ele se modifica de la o versiune la alta. Intreruperile interne au urmatoarele caracteristici : codul intreruperii este continut in instructiune sau este predefinit nu se executa cicluri de recunoastere intrerupere nu pot fi dezactivate, cu exceptia intreruperii single step sunt prioritare fata de cele externe.

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