CATEGORII DOCUMENTE |
MICROPROGRAMAREA
Fie o structura din circuite logice interconectate , controlata cu n semnale logice de comanda S0 ,S1 ,.,Sn-1 , reprezentate ca biti distincti ai unui cuvant binar de comanda cu structura :
Dn-1 |
D1 |
D0 |
|
Sn-1 |
.. |
S1 |
S0 |
Din cele 2n cuvinte posibile de comanda a structurii logice , doar p cuvinte sunt operationale (p<2n) , fiecare cuvant operational comandand structura logica sa efectueze o sarcina concreta si simpla numita microoperatie.
Definitie
Cuvantul de comanda care genereaza semnale logice necesare unei structuri logice pentru a efectua o microoperatie se numeste microinstructiune.
Fiecare sarcina mai complexa va putea fi astfel realizata de o structura de circuite logice in mod secvential , ca o succesiune stricta de microoperatii executate pas cu pas sub controlul cuvintelor de comanda citite din locatii succesive ale unei memorii numita de comanda , organizata pe locatii din n biti si in care fiecare locatie este identificata si selectata la un moment dat prin numarul sau de ordine numit adresa . Citirea memoriei de comanda are loc la in ritmul tactelor unui generator pilot, care controleaza un numarator cu rolul de a forma adresa fiecarei locatii de citit .
Definitie
Succesiunea stricta a microinstructiunilor sub ale caror comenzi o structura de circuite logice interconectate realizeaza o sarcina complexa se numeste microprogram .
Fig.1 Comanda prin circuite de memorie
Memoria de comanda a unei structuri de circuite logice interconectate, este incarcata cu microprogramele sarcinilor prevazute a se realiza cu structura logica data si care , in cazul unui microprocesor realizeaza operatiile elementare prevazute acestuia (adunare , adunare cu transport , scadere , scadere cu imprumut , operatii logice , transport intre locatii , extragere cuvant instructiune din memoria sistemului , etc).
Astfel , la efectuarea unui program sursa in limbaj de asamblare , depozitat in memoria sistemului in forma simbolica binara a instructiunilor ce-l compun , fiecare instructiune este preluata din memoria sistemului intr-un registru de instructiuni , de unde prin decodificare se obtine adresa de inceput a microprogramului din memoria de comanda prin a carui citire pas cu pas se realizeaza sarcina prevazuta in instructiune , ca o succesiune de microoperatii .
Adresarea locatiilor succesive ale memoriei de comanda se realizeaza simplu prin incrementarea unui numarator de adrese de microinstructiuni . Multe microprograme din memoria de comanda contin insa secvente identice de microinstructiuni , fapt ce impune folosirea operatiilor de ramificare in microprograme pentru a se reduce capacitatea memoriei de comanda . Intre operatiile de ramificare (salt , apel , si revenire) , cele de apel si revenire necesita o memorie stiva .
Operatiile de ramificare au impus ca unui cuvant de comanda sa i se adauge un numar suplimentar de biti ce constituie campul de identificare a urmatoarei adrese a microinstructiunii de executat .
Intr-un program , o ramificare se poate face neconditionat , sau conditionata de o caracteristica a unui rezultat partial memorata intr-un bistabil de conditie asociat care se testeaza .
Definitie
Tehnica de realizare cu circuite de memorie a unitatii de comanda a unei structuri din circuite logice , se numeste microprogramare.
Microprogramarea , ca metoda de proiectare a unitatii centrale de operare a unui calculator, a fost definita si introdusa in anul 1951 de catre M. V. Wilkes profesor la Universitatea din Cambridge.
Tehnica microprogramarii permite ca aceleasi sarcini sa poata fi realizate pe structuri logice diferite , dar cu microprograme distincte. Astfel , modificarea setului de instructiuni al unui microprocesor , necesita doar o noua microprogramare si nu modificari in structura sa logica . De asemenea , pe o noua arhitectura de microprocesor se poate prevedea setul de instructiuni al unui microprocesor mai vechi al carui software poate fi reutilizat .
Intr-un microprocesor cu o arhitectura interna simpla , realizarea unei sarcini are loc intr-un interval de timp mai mare , prin efectuarea mai multor microoperatii succesive controlate cu un microprogram , despre care se poate spune ca-i obtinut prin tehnica microprogramarii pe verticala , deoarece este lung.
Scurtarea timpului de realizare a unei sarcini se obtine la microprocesoarele cu arhitecturi interne complexe , in care se pot realiza in paralel mai multe microoperatii , caz in care se spune ca microprogramul unei sarcini este realizat prin tehnica microprogramarii pe orizontala , intrucat este mai scurt.
Rezulta ca , intr-o microprogramare pe verticala , microprogramele sunt mai lungi , dar cuvintele de comanda au mai putini biti , in timp ce la microprogramarea pe orizontala microprogramele sunt scurte , dar cuvintele de comanda sunt un numar mai mare de biti (circa 80) necesari controlului unei arhitecturi logice complexe .
Microprogramele din memoria de comanda fiind strans legate de structura logica controlata, sunt deseori denumite firmware (= partial hardware , partial software).
Politica de confidentialitate | Termeni si conditii de utilizare |
Vizualizari: 2256
Importanta:
Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved