|
Politica de confidentialitate |
|
• domnisoara hus • legume • istoria unui galban • metanol • recapitulare • profitul • caract • comentariu liric • radiolocatia • praslea cel voinic si merele da aur | |
PROIECTLA SISTEME CU MICROPROCESOARE | ||||||
|
||||||
UNIVERSITATEA „VALAHIA” TARGOVISTE m8k16ki AUTOMATICA IV PROIECTLA SISTEME CU MICROPROCESOARE TEMA PROIECT: Sa se implementeze un algoritm care sa realizeze numararea cu afisare cu tactul de 6Hz pana la o valoare de referinta citita de pe portul de intrare cu microprocesoare. Cand contorul ajunge la valoarea de referinta, aceasta va fi afisata timp de 3 secunde, apoi va incepe numararea inversa pana la 0. Decrementarea se va face cu o frecventa de 8Hz. Notiuni introductiveDomeniul microprocesoarelor este unul dintre cele mai dinamice din industria
calculatoarelor. Aparut in anii 1970, microprocesorul este un circuit
capabil sa efectueze functiile aritmetice si de control ale unui calculator.
Pe atunci un microprocesor era un circuit integrat pe scara larga (LSI), continand
cateva mii de tranzistoare, pe o suprafata de aproximativ 5 mm2. Dezvoltarea
microprocesoarelor a urmat dezvoltarii circuitelor integrate, complexitatea
acestora dublandu-se practic in fiecare an. In prezent s-a
ajuns la cateva milioane de tranzistoare (6-9 milioane: Pentium II, AMD
K6-2, Cyrix MII) pe o suprafata de cativa milimetri patrati. Cap. I. Microprocesorul Z80 1.1. Notiuni introductive. Arhitectura interna Microprocesoarele nu sunt altceva decat unitati centrale de calculator
(CPU -; Central Processing Unit) incorporate intr-o singura
capsula de circuit integrat. REGISTRII SPECIALI Contorul program -; PC (Program Counter) este un registru dublu, avand
lungimea de 16 biti. El este destinat sa memoreze adresa instructiunii ce urmeaza
a fi executata. Dupa ce se citeste codul instructiunii curente din memorie continutul
acestui registru este incrementat automat cu 1. Flagul H (Half carry) reprezinta transportul care apare in cursul unei operatii aritmetice de la bit 3 spre bit 4 al acumulatorului. El ocupa pozitia bit 4 in registrul indicatorilor de conditie F .Flagul H nu poate fi testat prin instructiuni de salt conditionat. El este folosit de catre unitatea aritmetica si logica a microprocesorului la executia instructiunii de corectie zecimala, pentru corectia numerelor zecimale codificate in binar: BCD. Flagul P/V (Parity/ Overflow) -; este un indicator de conditie multifunctional. El ocupa pozitia bit 2 in registrul F. Asa cum rezulta din numele acestui indicator, el poate indica paritatea numarului din acumulator sau depasire de domeniu. Flagul N -; este un indicator care memoreaza tipul ultimei operatii aritmetice efectuate: adunare sau scadere. In registrul F el ocupa pozitia bit 1. N=1 daca ultima operatie aritmetica a fost adunare; N=0 daca ultima operatie aritmetica a fost scadere. Flagul F este folosit impreuna cu indicatorul de transport H si cu indicatorul de transport Cy. Flagul Cy (Carry - transport) -; este indicatorul cel mai popular, afectat atat de operatiile aritmetice/ logice cat si de clasa operatiilor de rotire/ deplasare octet. El ocupa pozitia cea mai putin semnificativa (bit 0) in registrul indicatorilor de conditie F. Registrul de reimprospatare a memoriilor dinamice - R (Refresh) este un registru cu lungimea de 7 biti, menit sa asigure printr-o numarare ciclica de la 127 (0000000 - 1111111) reimprospatarea memoriilor RAM dinamice, din componenta unui microcalculator, atunci cand ele exista. Prezenta registrului R este un castig semnificativ in favoarea microprocesorului Z80, ea scutindu-l pe proiectantul microcalculatorului de un efort coniderabil, cel de a realiza o memorie cu 2 cai de acces ( din partea procesorului si din partea unui circuit de reimprospatare extern) si de a rezolva conflictele ce apar intre cele doua componente. Registrul vectorului de intreruperi - I (Interrupt register) este ultimul in sirul registrilor speciali ai microprocesorului Z80. El este un registru cu lungimea de 8 biti si serveste in modul de intreruperi 2 la dirijarea sursei de cerere a intreruperilor. Prin intrerupere intelegem fenomenul la aparitia caruia microprocesorul abandoneaza -; la cererea unui eveniment extern -; programul in curs de rulare, deserveste -; executand un program dedicat -; evenimentul extern, dupa care se reintoarce la programul abandonat, reluandu-i executia din punctul in care ea fusese suspendata. REGISTRII GENERALI Registrii de uz general au menirea sa pastreze in imediata apropiere a „focarului” microprocesorului date, care sa poata fi accesate rapid, evitandu-se pe cat se poate accesele la memorie si astfel reduc viteza de lucru a microprocesorului. Intr-o grupare semnificativa a figurii 1 distingem alaturi de registrii deja prezentati (PC, SP, R, I) alte casute simbolizate cu B, C, D, E, H, L. Registrii B si C: sunt registrii generali de 8 biti. Exista o multitudine de instructiuni(de transfer, aritmetice, logice, de rotire, etc.) care trateaza continutul acestor registrii. Ei nu au fost figurati intamplator pe aceeasi linie: in anumite conditii ei se pot atasa, formand un registru pereche BC, avand lungimea de 16 biti. In aceasta situatie B este octetul cel mai semnificativ, iar C octetul cel mai putin semnificativ. Exista instructiuni care trateaza perechea BC ca un registru de 16 biti(instructiuni de transfer, instructiuni aritmetice). Registrii D si E: se caracterizeaza prin aceleasi trasaturi ca si registrii B si C. Atunci cand perechea DE formeaza un registru dublu de 16 biti, D ocupa octetul superior iar E octetul inferior. Registrii H si L: difera de cei anteriori B, C, D, E doar prin faptul ca sunt implicati intr-un numar mai mare de instructiuni, avand astfel un grad de functionalitate sporit fata de BC si respectiv DE. Atunci cand ei formeaza o pereche HL, registrul H ocupa octetul superior, iar L cel inferior. Perechea HL devine principalul instrument de adresare indirecta a unor operanzi locazati in memorie la adrese cunoscute. Registrii index IX si IY: sunt registrii de 16 biti. Ei sunt dedicati eminamente pentru stocarea unor adrese de memorie. Ii vom trata ca registrii de 16 biti. Acesti registrii au fost ganditi sa fie utilizati atunci cand trebuiesc efectuate operatii aritmetice/logice asupra unor campuri de date ce sunt asezate la adrese succesive de memorie, formand astfel un tabel. Registrii index nu vor contine adresa celulei care se doreste a fi tratata. CAP II. Clasificarea intructiunilor microprocesorului Z80 pe clase de instructiuni. Clasa 1. Instructiuni de transfer de 8 biti LOAD-8 Totalul intructiunilor din clasa: 111 Numarul de grupe: 11 Clasa 2. Instructiuni de transfer de 16 biti LOAD-16 Clasa 3. Instructiuni de transfer de blocuri de date LOAD-IDR Clasa 4. Instructiuni aritmetice/logice pe 8 biti AR/LOG-8 Clasa 5. Instructiuni aritmetice de 16 biti ARIT-16 Clasa 6. Instructiuni logice pe blocuri de date LOG-IDR Clasa 7. Instructiuni orientate pe bit BITSR Clasa 8. Instructiuni de salt JUMP Clasa 10. Instructiuni de rotire si deplasare ROT/HIFT Clasa 11. Instructiuni de intrare/ iesire IN/OUT Clasa 12. Instructiuni de comanda SYS CAP. III. Descrierea algoritmului folosit pentru tema enuntata. Adresa de Eticheta Mnemonica Opcodul Comentarii memorie simbolica Si SUBRUTINA -; adresa 1100 1100 LD HL, 43D0H 21D0431103 Et3 DEC HL 2B 1104 LD A, H 7C 1105 OR L B5 1106 JPNZ Et3 C20311 1109 RET C9 SUBRUTINA -; adresa 1200 1200 LD C, 04 OEO4 1202 Et4 LD HL, FFFF 21FFFF 1025 Et5 DEC HL 2B 1026 LD A, H 7C 1027 OR L B5 1028 JPNZ Et5 C20512 120B DEC C 0D 120C JPNZ Et4 C20212 120F LD HL, C4B7H 21B7C4 1212 Et6 DEC HL 2B 1213 LD A, H 7C 1214 OR L B5 1215 JPNZ C21212 1218 RET C9 SUBRUTINA -; adresa 1300 1300 LD HL, 32DCH 21DC321303 Et7 DEC HL 2B 1304 LD A, H 7C 1305 OR L B5 1306 JPNZ Et7 C20313 1309 RET C9 BIBLIOGRAFIE: 1. D. Carstoiu -; Sisteme cu microprocesoare, Note de curs |
||||||
|
||||||
|
||||||
Copyright© 2005 - 2024 | Trimite document | Harta site | Adauga in favorite |
|