curs amp 4

6
Curs Amp 4 Cap. 2: Structura unui microprocesor pe 8 biți de uz general (µP8UG) Un microcalculator: - Memorie - Dispozitive input output (DIO) - UCP Toate elementele unui microcalculator (UCP, memorie si dispozitive de intrare ieșire) comunica intre ele printr-o magistrala unica in care am definit 3 părți funcționale: - date - adrese - control Structura unui microprocesor standard de 8 biți decurge logic din structura microcalculatorului in care a fost definit, iar arhitectura sa are drept suport funcțiile îndeplinite de blocurile sale. Indiferent de ce instrucțiuni se folosesc, un microprocesor parcurge 3 etape fundamentale : 1) Identifica si adresează in memorie codul unei instrucțiuni 2) Decodifica acest cod 3) Executa instrucțiunea Având in vedere aceasta desfășurare a etapelor de funcționare, vom analiza structura unui microprocesor standard prin pași succesivi de detaliere: Registrul de date si registrul de adrese (RD, RA) Registre generale Unitatea aritmetica de procesare (UAP) Unitatea de control a adresării memoriei Unitatea de control a microprocesorului

Upload: almasim95

Post on 12-Jul-2016

20 views

Category:

Documents


0 download

DESCRIPTION

amp

TRANSCRIPT

Page 1: Curs Amp 4

Curs Amp 4Cap. 2: Structura unui microprocesor pe 8 biți de uz general (µP8UG)

Un microcalculator:

- Memorie - Dispozitive input output (DIO) - UCP

Toate elementele unui microcalculator (UCP, memorie si dispozitive de intrare ieșire) comunica intre ele printr-o magistrala unica in care am definit 3 părți funcționale:

- date- adrese- control

Structura unui microprocesor standard de 8 biți decurge logic din structura microcalculatorului in care a fost definit, iar arhitectura sa are drept suport funcțiile îndeplinite de blocurile sale.

Indiferent de ce instrucțiuni se folosesc, un microprocesor parcurge 3 etape fundamentale :

1) Identifica si adresează in memorie codul unei instrucțiuni2) Decodifica acest cod3) Executa instrucțiunea

Având in vedere aceasta desfășurare a etapelor de funcționare, vom analiza structura unui microprocesor standard prin pași succesivi de detaliere:

Registrul de date si registrul de adrese (RD, RA) Registre generale Unitatea aritmetica de procesare (UAP) Unitatea de control a adresării memoriei Unitatea de control a microprocesorului

RA, RD apar la interfața UCP cu magistrala de date respectiv magistrala de adrese a microcalculatorului.

Rolul lor este de a menține ferm pe magistrale , informațiile specifice.

RD – bidirecțional , ca si magistrala pe care o deservește

Page 2: Curs Amp 4

O informație provenită din interiorul UCP și înscrisă în registrul de date este disponibilă tuturor componentelor microcalculatorului legate pe această magistrală.

Invers, o informație (un operand sau un cod de instrucțiune), venită de exemplu din memorie, se consider a fi disponibilă pentru UCP numai după ce a fost înscrisă în RD.

Lungimea registrului de date este egală cu lățimea magistralei de date:

Prin definiție este 8 biți pentru microprocesoarele de 8 biți de uz general (µP8UG)

RA- are rolul de a menține o adresă furnizată de UCP, cât timp este necesar să se facă localizarea corectă a unei informație în memorie au în DIO.

RA – unidirecțional și are o lungime impusă de elemente din interiorul UCP.

Observație: Nici RD și nici RA nu constituie atribute de arhitectură ale microprocesorului, adică ele sunt transparente pentru utilizator.

Registrele generale Indiferent de tipul microprocesorului, un microprocesor standard are un set de registre interne cu destinație generala.

Acestea stochează temporar date reprezentând nivelul de memorie cel mai rapid adresabilă. Ele pot fi considerate ca fiind un set de locații de memorie RAM, pe care microprocesorul le folosește pentru datele aferente unui program in curs de execuție.

Numărul si lungimea acestor registre generale constituie un criteriu de performanta al microprocesorului.

Posibil subiect examen : Criteriile de performanta la microprocesoare de 8/16 biti

Setul de registre generale constituie un atribut tipic de arhitectura deoarece aceste registre sunt in întregime la dispoziția utilizatorului.

Accesul fizic în registre , adică in structura interna a microprocesorului, se face prin intermediul unui multiplexor prin care se selectează registrul dorit.

Page 3: Curs Amp 4

Legatura interna intre registrul de date si setul de registre generale se asigura prin magistrala interna de date, care este prelungirea magistralei de date a microcalculatorului in interiorul microprocesorului.

Pe aceasta magistrala se vor lega , toate blocurile interne , ce trebuie sa aibă acces la informația care circula pe magistrala externa de date.

Lărgimea acestei magistrale interne e un criteriu de performanță al microprocesorului, nu in mod necesar egală cu cea externă.

Unitatea aritmetica de procesare – acest bloc funcțional constituie suportul activității de prelucrare a datelor, pe care o executa microprocesorul

UAP este alcătuită din mai mult componente legate pe magistrala internă de date ca în figura următoare:

UAL -> unitatea aritmetica si logica – un circuit combinațiunile, care permite realizarea mai multor funcții standard, funcții aritmetice(adunare, scădere, incrementare, decrementare, complementare fata de 2; funcții logice: și, sau , complementare fata de 1 etc..)

Tipul si nr de funcții de realizate – criteriu de performanta al microprocesorului.

Aceste funcții se reflecta si într-un atribut de arhitectura:

- Subsetul de instrucțiuni de prelucrare a datelor.UAL poate prelucra numere binare de 8 sau 16 biți (după lățimea magistralei interne de date) si

permite ajustarea zecimala codificata binar a rezultatelor. În afara intrărilor și ieșirilor de date, UAL mai are o serie de intrări de selecție (nefigurate în desen) pentru alegerea funcției dorite.

Acumulatorul - un registru asemănător cu cele din setul general de registre , dar care prin definiție conține un operand al UAL și după efectuarea unei ecuații conține rezultatul.

Acumulatorul este opțional pentru un microprocesor de 8 biți de uz general. El este atribut de arhitectură.

Fanion – un bit de informație în interiorul microprocesorului care își indică evenimente speciale apărute în funcționarea microprocesorului.

Fanioanele – o serie de celule de memorare a unor condiții speciale apărute în funcționarea microprocesorului și în special a UAL (vezi desen simbolul C).

Page 4: Curs Amp 4

Ele sunt unite într-un așa-numit registru de condiții , adică sunt așezate într-o anumită ordine într-un număr binar care poate fi transferat ca un registru oarecare pe magistrala internă de date (MID).

Numărul de fanioane disponibile – un criteriu de performanță pentru microprocesoarele pe 8 biți de uz general.

Registrul de deplasare – un bloc important al oricărui microprocesor standard deoarece operațiile de deplasare stânga sau dreapta semnifică înmulțiri, respectiv împărțiri cu baza de numerație 2, operații mult folosite în derularea diverșilor algoritmi pentru rezolvarea unor prelucrări mai complexe.

Caracteristicile registrului de deplasare constituie criterii de performanță pentru microprocesor din 2 puncte de vedere:

După felul în care se utilizează LSM și MSB ai numărului binar care se procesează (deplasare stânga-dreapta) Deplasările sau rotațiile se pot face cu o celulă sau mai multe celule (poziții) într-o singură operație, acest

lucru simplifică d.p.d.v al programatorului desfășurarea unor operații complexe

Registrul de deplasare nu este atribut de arhitectură: el este implicit utilizat de instrucțiunile specifice ale microprocesorului, dar programatorul nu are acces la acest registru special.

Utilizarea registrului de deplasare constituie un compromis între complexitatea structurii și complexitatea desfășurării în timp a instrucțiunilor.

Observație: Complexitatea circuitelor logice aferente uni registru pentru ca el sa devina un registru de deplasare cu diverse posibilități a impus fabricanților varianta de a folosi un singur bloc dedicat acestei funcții, deși această opțiune mărește durata de execuție a unor deplasări sau rotații.

Etapele probabile ale unei deplasări de un tip oarecare cu o singură celulă , când operandul se află într-un registru general al microprocesorului sunt următoarele:

Se selectează registrul care conține operandul Se citește informația din registru (operandul este adus pe MID) (opțional) Pentru anumite variante de microprocesoare la care accesul în registrul de deplasare nu se face

direct de pe MID, ci prin intermediul UAL, se trece operandul prin UAL, nemodificat. Se înscrie operandul în registrul de deplasare. Se comandă registrului de deplasare selecția funcție de deplasare stânga cu o poziție Se citește conținutul registrului de deplasare (rezultatul este adus pe MID). Se selectează din nou registrul vizat la prima etapă Se înscrie în acest registru , rezultatul operației de deplasare, rezultate care ia astfel locul operandului inițial.

Toate aceste etape sunt transparente pentru utilizator (programator), pentru el deplasarea se realizează chiar în registrul în care se află operandul.

Se observă însă că instrucțiunea durează deoarece existența unui bloc unic, care poate realiza deplasări sau rotații presupune o complexitate sporită a desfășurării în timp a instrucțiunii.

LUCRARE : ora 9.00 săptămâna 6