Sunteți pe pagina 1din 3

SUB 1.

Memoria virtuala -concept, -functionare, -caracteristici ale uprocesoarelor pentru comanda memoriei virtuale -------------------------------------------------------------------------Concept: Consideram toate memoriile (MP si MA) ca pe un spatiu unic de adrese care ofera utilizarea unui spatiu de memorie denumit logic sau virtual unde pot fi construite blocuri de date mult mai mari decat in mp. Aceste blocuri nu mai sunt limitate de dim MP.MV e vazuta ca o mp care ofera un spatiu de adrese mult mai mare decat spatiu memoriei fizice. Pt implementarea conceptului de MV e necesar ca accesul la MV sa fie transparent pt programator, care trb degrevat de utilizarea acestui bloc de date. Cea mai mare parte a informatiei(date) sunt stocate in MA. Apoi sisteml adduce informatii din MA in mp si sistemul incepe sa functioneze. Realizarea mv implica existenta unui mechanism care sa execute transferal de date intre mp si ma. Transeferul de date intre mp si ma e ineficient, de aceea se realizeaza pe blocuri/module; Implementarea conceptului de mv poate fi realizat : soft sau hard. Pentru a fi executat un program de microprocesoare trebuie plasat in memoria principala (memoria de tip semiconductor) Pentru a prelucra datele, trebuie sa fie plasate in memoria principal, operanzii microprocesorului. Microproc evoluate folosesc principiul organizarii modulare: Liniara (spatiu de memorie liniara, pentru microproc simple (<64 octeti)) Modular (blocuri, pt microproc evoluate, blocuri, segmente, pagini) Dimensiunea blocurilor de memorie este limitata de dimensiunea memoriei principale. Este un impediment pentru ca microprocesoarele nu pot sa creeze blocuric de memorie mai mari decat memoria principala. Uneori spatiul memoriei de blocuri este f mic (pt microproc <64 Kocteti) Pentru utilizator ar fi mai comod sa constituie blocuri de date care sa nu tine seama de memoria principala. In structura unui sistem de calcul, in afara de memoria principala, exista alte memorii (memorii auxiliare este accesata prin intermediul registrului de intrare iesire), ex:discuri magnetice, discuri optice. Memoria principala este, de regula, mai mare. Pt a accesa memoria auxiliara trebuie sa mutam continutul in memoria principala de unde poate fi prelucrata de microproc. Def: conceptul de memorie virtuala consideram toate memoriile (MP si MA) ca pe un spatiu unic de adrese care ofera utilizatorului un spatiu de memorie denumit logic sau virtual unde pot fi construite blocuri mult mai mari decat in MP. Aceste blocuri nu mai sunt limitate de dimensiunea memoriei principale. MV este vazuta ca o MP care ofera spatiu de adrese mai mare decat spatiul memoriei fizice. Pentru a fi implementat conceptul de MV este necesar ca accesul la MV sa fie transparent pt programator, care trebuie degrevat de utilizarea acestui bloc de date. Cea mai mare parte a datelor este stocata in MA. Apoi sistemul aduce informatii din MA in MP si sistemul incepe sa functioneze. Realizarea MV implica existenta unui mecanism care sa execute transferul de date intre MP si MA. Transferul unor date intre MA si MP este ineficient de aceea se realizeaza pe blocuri/module. Implementarea conceptului de MV poate fi realizat atat software cat si hardware. Primele sisteme foloaseau softul (metoda lenta). La microproc evoluate (incepand cu generatia 3) in structura microproc au fost introduse facilitati hardware combinate cu elemente soft= sistemul are un spatiu de MP mult mai mare. Elementele Hard pt MV: In cazul organizarii modulare sunt folosite 2 tipuri de adrese: Virtual (pointeri) folosite in programare Fizice adrese pe care microproc le folosesc pt a accesa MP. Pt functionarea sistemului cu microproc trebuie sa existe un mecanism. Translaterea adreselor fizice in adrese virtuale este facuta de unitatea de gestionare a memoriei (MMU=Memory Management Unit) Transferul intre MA si MP se realizeaza sub forma de blocuri. Daca in cazul unei prelucrari apar adrese logice (care nu exista in MP), MMU trimite comenzi de transfer in MP. Cand in MP sunt stocate blocuri de informatie care nu mai sunt necesare ele sunt trimise in MA, prin intermediul MMU. Primele tipuri de microprocesoare au folosit blocuri segmentate. Segmentele pot avea diferite dimensiuni; unitati logice de memorie (acces direct la memorie); pot fi referite de utilizator in program. Microprocesoarele din generatia 4 si 5 folosesc si pagini si segmente = flexibilitate mare a MV. Ex: Intel (segmentele sunt impartite in pagini) Gestionarea MP de MMU si sist de operare implica cunoasterea continutului MP si al continutului MV. Trasnlatarea memoriei virtuale in adrese fizice se bazeaza pe

SUB 2. Regimul de multiprogramare concept, caracteristici, functionarea microprocesoarelor in regim de multiprogramare ---------------------------------------------------------------------Microprocesorul este un element cu functie simpla (la un moment dat el executa doar o anumita instructiune). Executarea simultana a mai multor aplicatii pe un uP se realizeaza in regim de divizor al timpului, uP fiind alocat succesiv diverselor procese. Se obtine un pseudoparalelism in executarea proceselor. Timpul alocat executarii codului unui anumit proces este dat de SO folosit. Proceselor le sunt asociate prioritati care le sunt calculate dinamic pe baza criteriului de alocare. Procesele care au fost deja lansate au prioritate mai mare. Starile unui proces: In derularea lui, un anumit proces parcurge 2 feluri de stari: active si pasive. Un proces este in stare pasiva atunci cand este creat si incarcat in MAux a uP. Executie - situatie in care codurile procesului ocupa UCP un proces intra in aceasta stare ca urmare a alocarii procesului respectiv poate sa iasa din aceasta stare prin dezalocare sau cand este incheiat Proces lansat - intra in aceasta stare in urma comenzii de lansare data de utilizator. El intra intr-o coada de asteptare si SO decide momentul in care procesul intra in executie. Comutarea proceselor Pt realizarea regimului de multiprogramare, la nivelul SO exista programul de selectare a procesului care este comutat in starea de executie din procesele aflate in coada de astept. Metoda lansarii in executie cu prioritatea proceselor care au mai trecut prin aceasta stare. In esenta comutarea proceselor cuprinde 2 faze: salvarea procesului care iese din starea de ex. Restaurarea procesului care intra in st de ex. Exista 3 categorii de info care definesc starea unui proces:

Valorile datelor: continutul registrelor care se vor afla intr-o zona nesigura.

PC: Salvarea PC pt continuarea procesului Continutul tuturor registrelor care contin info despre starea procesorului, nu despre un anumit proces Info care caract starea unui anumit proces sunt salvate intr-o zona dedicata a memo care tb sa existe pt fieare proces zona denumita descriptorul procesului respectiv. Memoria sist cu uP trebuie sa contina zone distincte pt fiecare proces. Alocarea de spatii de memorie pt fiecare proces este obligatorie pt a asigura protectia relativa a proceselor. Implementarea conceptului de multiprogr numai prin metode soft este posibila dar consuma mult timp. uP din gen 3 au fost concepute si cu procedeee hardware. uP nu sunt prevazute cu facilitati pt implementarea planificarii si sincronizarii proceselor, aceste sarcini sunt realizate de S.O.

SUB 3. Microprocesoare RISC -Caracteristici ale uprocesoarelor RISC, -Comparatii cu procesoarele CISC, -Avantaje/dezavantaje ale arhitecturii RISC ---------------------------------------------------------------------------------------------Caracteristicile procesoarelor RISC: Pentru a proiecta un processor de tip RISC au fost parcurse mai multe etape: 1.etapa de analiza a diverselor categorii de aplicatii in vederea idntificarii aplicatiei cheie. 2.definirea unei cai de date optimale pt realizarea acestor aplicatii caracteristice. 3.analiza modului in care instructiunile definite la punctul 1 exploateaza calea de date definite. 4.completarea setului de instructiuni cu alte instructiuni care nu sunt legate direct de prelucrarea de date. Instructiunile procesoarelor de tip RISC au urmatorul character: Executarea unei instructiuni/ciclu.un ciclu incepe cu extragerea codului sin u final cu depunerea rezultatelor.Spre deosebire de CISC,la care instructiunile dureaza mult,executarea la RISC este proiectata ca sa fie executata intr-un singur ciclu:CPU simplificat,uniformizarea instructiunilor. La RISC au fost excluse toate instructiunile care necesita mai mult de un ciclu pt executie(Au fost excluse instructiuni de multiplicare).Operatiile complexe sunt executate in comtinuare cu secvente de asttfel de instructiuni prin program. -folosirea arhitehturii de tip LOAD-STORE:Aceasta arhitectura are in vedere faptul ca ca instructiunile executate intr-un singur ciclu,operatia de transfer cu memoria trebuiesc evitate-nu pot fi executate intr-un singur ciclu.Procesoarele folosesc instructiuni de tip LOAD-STORE cand trebuie sa lucreze cu memoria.Nu exista instructiuni care sa foloseasca operanzi din memorie. -operatiile cu operanzi tip RISC elimina din setul de register -operatiile complexe sunt executate cu secvente de instructiuni.Chiar cu acest caz datorita faptului ca instructiunile sunt executate intr-un singur tact chiar si asa acestea dureaza putin -Prelucrarea de tip pipe-line:toate procesoare RISC au o arhitectura de tip pipe-line.Avantajul acestei arhitecturi este acelea ca toate instructiunile sunt utilizate intr-un cicluchiar daca realizate instructiunile ocupa mai mult de un ciclu. Procesoarele RISC executa o instructiune/ciclu.Procesoarele furnizeaza un rezultat/ciclu,chiar dc instructiunile dureaza mai mult de un ciclu. -Evitarea unicodarii: instructiunile produse de compilator sunt executate direct de unitatea Hard si sunt interceptate de un cod ca in cazul procesorului CISC.(la cisc fiecarei instructiuni ii este asociat un cod;dup ace instructiunea este decodificata procesorul executa o secventa de cod.)La RISC operatiile sunt executate de unitatea Hardware specializata=>viteza mai mare decat la CISC. -unitatea de comanda cablata -instructiunile au format fix:reducand nr de instructiuni acestea au putu fi codate cu un nr fix de cuvinte;nr de moduri de adresare redus(RISC 1-3 moduri de adresare) -transferul complexitatii de programe catre compilator:datorita existentei simplificate a apartii HARD a procesoarelor RISC si a CPU,o parte din problemele pe care rezolva aceste componente au fost transferate compilatorului.RISC executa operatiile simple,face ca operatiile complexe specifice de limbaj de tip inalt sa fie translatate in limbaj masina. Avantajele procesorului RISC:structura setului de instructiuni simplificate,putine moduri de adresare=>compilatorul actioneaza mai simplu decat daca ar folosi multe moduri de adresare -setul de register:toate instructiunile au operanzi in register=>nr mai mare de register(32-sute de register) Proiectantii au cautat ca aceste register interne sa fie utilizate cat mai uniform. Alocarea registrelor intr-un program inspira 2 aspecte: HARD:registrele interne ale unui microprocessor RISC sunt folosite pe principiul ferestrei de register.Registrele sunt impartite in structuri numite ferestre. SOFT:compilatorul cand interpreteaza considera setul de registreinfinit dupa care procesorul restrange avest set de register la dimensiunea ferestrei alocand ferestrei simboluri fizice in fereastrea folosita. Toate aceste trasaturi avantajeaza un processor RISC complet.In realitate nu exista un processor care sa aiba toate atributele unui RISC complet. Aproape toate procesoarele RISC existente includ in setul de instructiuni instructiuni simple,dar si o instructiune complexa. Toate cele 3 mari categorii de procesoare ,de uz general sunt de tip RISC sau CISC.

SUB 4. Caracteristici constructive si functionale ale Microcontrolerelor ----------------------------------------------------------------------------------Un controller este un system folosit pentru a comanda si a prelua stari de un process sau un aspect al mediului inconjurator.La inceput un controller era un echipament de mari dimensiuni,iar dupa aparitia microprocesoarelor controllerele s-au redus.Procesul de minimizare a continuat,toate componentele necesare unui controller incapand pe un chip. Un microcontroller contine:UC,GT la care se adauga din exterior un crystal de cuart,RAM(volatila)ROM/PROM/EPROM,EEPROM(nevolatila),I/O seriale si paralele,convertoare CAD,CDA,etc. Pretul unui microcontroller este redus din cauza cantitatilor mari in care se fabrica,pretul unic aducand cu sine si micsorarea sistemelor de control. Cu un microcontroller se poate realiza un controller integrat(EC);controllerul acesta face parte dintr-un system construit cu un anumit scop,altul decat calcule generale.

SUB 7. 8. Caracteristicile MCS86-I-SO196 SUB 5-6. MCS51-intel : i8051 caracteristici: - realizat in tehnologie M-MOS - are o arhitectura orientata pe acumulator - are in str lui 128 KB de mem ram pt date - rom si ram au mecanisme de adresare diferite -sp de adresare pt mem de program si de date este de 64KB - in memoria ram sunt organizate si bancuri de registre(locatii din mem ram) - utiliz 32 de linii i/o organizate sub forma a 4 porturi - are un port serial de mare viteza cu mai multe moduri de functionare(pe 2 fire) - poseda un timer de 16 biti, este programabil - are o logica de intreruperi cu 2 nivele de prioriitate - stiva este interna (pt stocarea contextului de lucru) - stiva de tip hard rapida - in str mai exista un multiplicator hard care realiz x&: f rapid - are semnalizator de depasire de scara - proc CISC Este o familie pe 18 biti, realizate in tehnologia CH-MOS(consum redus, viteza ridicata). Sunt in capsule cu 80 pini. Caracteristici: -arhit orientata pe registri -registrele proc sunt organiz in mem RAM sub forma unei arii de 232 de biti cnectati direct la RALU -nr de registre este mai mare -operational uP pot fi prez cu ROM(8 octeti, interna) pt stocarea programelor -operatii: x, +(16x16 biti->rezultat 32 biti in mod rapid) fTACT=12 MHz>t=4 uS, :, (cuvinte pe 32b/16b) -are 5 porturi I/O de 8 biti programabile-pt conectarea disp periferice sau pt extensia de memorie -trateaza pana la 28 de surse de intreruperi -TIMER de urmarire-> WATCH DOG detect unor anomalii in functionare -generator de unde PWM(pulse width modulation)- pt comanda surselor digitale -magistrala poate fi configurata sa lucreze pe 8 sau 16 biti

SUB 10. Criterii de proiectare -------------------------------------------------------------------------Crit pt aleg. unui uC -poate duce la succesul proiect/esec Obiectivul urmarit in alegere e obt. calit. dorite cu un cost cat mai mic Cercetare/proiectare/constr/testare/compatib elmag. cu mediul reparare Se pune probl. stab. fct. pe care uC tb. sa o indepl. in sist. Alegerea din catalog a unui uC tb facuta in ideea a cost de pe piata Dupa stab uC optim, se verifica preturile, daca e disponibil suportul acordat de fabricant, exist. uneltelor de dezv. si stabilit. firmelor constr. Crit. imp. : posib. de a fi gasit pe piata. In ord. imp. criteriile sunt: 1) Posib. fol. in aplic. data: -e suficient un uC sau sunt necesare circ. suplim. -limite i/o sunt suficiente (nr. mic. aplic. nu se face cu uC, nr. mare = pret mare) -exista toate interf. solicitate de apl. -capac. de mem. Ram si Rom -uC are viteza suficienta pt. ac. aplic. - se verifica timp necesar rularii, care tb. < intervalul de timp in care react. uC -alim. uC poate fi facuta din aplic. -pretul uC e bun pt aplic respectiv 2) Posib. de a gasi pe piata -tb. sa fie disponibil in cant. suficiente -tb. sa fie in prod. actuala + posibi. aprovizionare -disponib. unor accesorii (CNA ..) 3)Disponib. suportului de dezv. -asambloare, compilat, analizor logic, emulator 4) Suport din partea construct. -docum tehn. -buletin de aplic. -service -rapoarte despre probl. de funct. -soft de utilizare 5)Seriozitatea constr. -viteza de livrare -competenta -stab. si fiabilit. uC realiz -nr. de ani si rezult. financiare Un argum. ptr alegerea unui tip de uC e existenta unui modul de eval. Pt. a promova propriile uC, multi furniz. au creeat kituri de eval. care contin placi de eval si un soft minimal cu care se pot pune la punct aplicatii Kit- progr.. pt. calc. + un progr. de transf. al datelor spre placa + asamblor + compilat. simplu - sunt insotite de documentatie motorola, philips, texas instrum. Fiecare furnizor de uC pune la disp clientilor si un Kit de sort. -> contine o placa de soclu si Hard aferent pt. prog. initiala a uC, interfata + cablul de leg. la calc. + documente progr. Nu contine si un uC Pretul >100 dolari Alt. argum. - comoditatea fol. lui ex: Motorola 68HC // A8P1 - are in Rom un progr. monitor Pt. punerea in funct e nev. doar de o leg. seriala RS232 cu un calc. (conversie de nivel) si se poate lucra de pe calc. cu monitorul uC, ruland progr. in Ram-ul uC si stocandu;le in EEPROM Algoritmul proiect. sist. cu uC (156) Proiect. sist. cu uC in vederea sigurantei Tend. prod. de a scadea preturile duce la raspand. uC si la crearea a noi aplic. Micsorarea dimens. => creste frecv. de lucru. Cu cat frecv. creste cu atat creste posib. interferentelor elmag. si se pune probl. proiect. in vederea compatib.. elmag. -aplic. poate genera perturbatii sau poate fi susceptibila la perturb. Descop. unor probl. de interferente elmag. in faza finala a aplic. poate fi costisitoare, deoarece s'ar putea sa fie necesara reproiect, -Perturb. sunt generate de armonicile sgn. digitale din circ. Pot fi radiate de buclele de cablaj, care se comporta ca antene sau sunt card. spre sursa de alim. Orice cale inductiva sare capacitiva pe traseu poate provoca vf. de tens./caderi de tens. Pt. un sist. cu uC perturb. Sunt generate de cablaj deoarece circ. integrate au dimens. prea mici pt. a putea emite sgn. cu frecv. cea mai mare e tactul sist. generat cu un circuit oscilat cu quartz. Forma sgn e apr. sinusoidala => cont. de armonica e micl. Daca tactul e adus din ext. se impune atentie pt. a reduce buclele de circ. emisive. Pt un sist. care are mem. ext. cuplate la uC, limite de transf. pot fi emisive deoarece frecv. de tranz. sunt mari. Susceptibilit. e creata de nat. Sincrona a uC. Un tact cu nivel electric suficient poate prod. o eroare. Erori: 1) Aplic. are o eroare dar se corecteaza 2)Aplic. are o eroare dar o intrerup. / RESEAplic. are o eroareT o corect. 3)Aplic. are o eroare si oprind si repornind sist. dispare 4)Aplic. are o eroare permanenta datorata unui comp. defecte. Prob 1. S se programeze procesorul 16F84 astfel ncat pe display-ul placii sa fie afisat cifra 7. LIST P=16F84, R=DEC STATUS EQU 3 ; registrul 03h din memoria de date RA EQU 5 ; registrul 05h din memoria de date RB EQU 6 ; registrul 06h din memoria de date TRISA EQU 0x85 ;registrul 85h din memoria de dare TRISB EQU 0x86 ;registrul 86h din memoria de date RP0 EQU 5 ; bitul 5 din registrul STATUS

Perform. compatibilit. elmag. poate fi imbunatatite acord. atentie: a) Orice perturb. pe limite de alim. => funct. defectuoasa a sist. => se recomanda utiliz. cablaj. multistrat la care masa si alimentarea sunt plane interne la aplic. cu pret. mic, a cate imp. de a reduce pretul e fol cablajul dublu placat La ac. tipuri de cablaj traseele de masa si tens. de +5v tb. sa fie cat mai late pt. avea o imped. cat mai mica. Decupl. cu condens. a uC tb realiz. cat mai apr. de circuit. In unele aplic. f. ieftine se fol. alim. uC de la retea fara transform. , fol. un redresor monoalternanta. Un circ. critic e cel de generare a tactului. Orice impuls parazit modif. n (niu) =50% si instr. nu se executa corect. O astfel de sit. poate fi rezolv. de ceasul de garda. E imp. protectia pinilor de intrare. Un pin in aer poate comuta daca in vecinatatea lui sunt linii HF. Se recomanda decuplarea cu C (1-10nF) cat mai apr. de circ. b)Fol. e f. utila pt. cresterea sigurantei -e integrat, iar daca nu un ceas de garda ext. poate fi usor realiz. cu un monostabil., redeclansabil. Redecl. tb. facuta in progr. princ., nu in subrutine. Pt. a fi fol. corect, tb. analizata durata progr. pe ramura cea mai lunga. c)Se imbunatat. siguranta in funct. in fct. fara nici un HW suplim. Metode: -reincarcarea period. a reg. care comanda pinii i/o si a celor mai imp. reg. Readucerea lor la niv. corecte mict. probab. ca o perturb sa se propage in circ: -citirea repetata a sgn. de intrare micsoreaza riscul unei citiri gresite -daca exista locatii in RAm nefolosite dupa fiecare etapa de rulare se scrie un bit in Ram. Inainte de rularea unei rutine critice. Se verifica val. stocata si se executa daca val. din Ram e corecta. -daca exista mem. nefolosita, se incepe cu instr. de salt intr-un loc necunoscut pt. ca un salt neprevaz. in mem. sa fie anulat de saltul in locul cunoscut.

Prob3. S se scrie un program care verific dac coninutul registrului de la adresa 0x10 este par sau impar. Dac este par pe display se va afia valoarea FF iar daca este impar 11. LIST P=16F84, R=DEC STATUS EQU 3 ; registrul 03h din memoria de date RA EQU 5 ; registrul 05h din memoria de date RB EQU 6 ; registrul 06h din memoria de date TRISA EQU 5 ;registrul 85h din memoria de dare TRISB EQU 6 ;registrul 86h din memoria de date RP0 EQU 5 ; bitul 5 din registrul STATUS

ORG 0 ; se defineste RAM-ul ncepand cu 0h L1 MOVLW 0 ; coninutul registrului W devine 0 MOVWF TRISB ; se seteaz TRISB ca port de ieire BCF STATUS,RP0 ; se reseteaz bitul RP0 (RP0=0) pentru selectarea segmentului ;0 din memoria de date

ORG 0 ; se definete RAM-ul ncepand cu 0h BSF STATUS,RP0 ; se seteaz bitul RP0 (RP0=1) pentru selectarea segmentului 1 ; din memoria de date MOVLW 0X00 MOVWF TRISB ; se seteaza PORTB ca port de ieire BCF STATUS,RP0 ; se va scrie in segmentul 0 din memoria de date MOVLW 0X00 MOVWF RB ; pe display se va afisa 00

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