Introducere in Microprocesoare_Part10

download Introducere in Microprocesoare_Part10

of 6

description

25

Transcript of Introducere in Microprocesoare_Part10

  • pot genera tot in inlervalul de existenf[ al stlrii trei 9i iesirile opfionaleit, ir, -Ia (automat Mealy). La urmS.torul impuls de taci dedarece c^rivintulde intrare afost xa: O, xB.: f se trece in starea 7 generindu-se ie;irile!+: l: Is: ! gi respectiv iesirea opfionall h:0 dacl xe:0,xt: X (X

    -

    indiferent). Deci st5"rile urmS.toare si iesirile (numai pentruautomat Mealy) sint determinate in urma testS.rii cuvintului de intrare.

    Un ASM se elaboreazS" astfel incit s5. genereze iesirile de comandinecesare per-rtrg un alumit proces comandat, comenzi generate in urmqtestlrii variabilelor de intrare. Exist[ cazuri particulare de algoritmlde comandl (procese autogeneratoare) care d'rjc la structuri d; ASMfdr5. intrb"ri [3] [13] [17].

    Implementarea unui ASilI este calea sistematicS" pentru realizareacomenzii unui proces. Aceastl implementare se reduce in final la inscriereaprog-ramului-_- algoritmului

    -

    sub forma unor cuvinte binare in parteacombinalionall ROM sau PLA. lnscrierea algoritmului, in aceastl inoda-litate, se numegte microprogramare.

    Majoritatea operaliilor de procesare aritmetici gi logicd. intre doioperanzi (cuvinte) se pot realiza cu un circuit ALU, figura 1.17. Uncircuit ALU este un circuit combinafional (nesincronizat) la care pentrua. pistra cei doi operanzi, precum si'operaidul iezultai (pioc"sati tr"ce-sit5. adiugarea unor registre. Circuitul LSI oblinut piin combinarearegistrelor si a unei unitbli aritmetice ;i logice este -denumit RALU(Registr-e ;| +l,U). Semnalele de comandl pentru realizarea procesiriicircuitul R}LU le prime;te din exterior. Aieste semnale pot ii iesirilede comandS. generate de citre un ASM.

    Structura de principiu pentru un procesor se poate obline dintr-unRALU+ASM, figura 3.20. Coordonarea funclion[rii procesorului inrealizarea,unui algoritm este inscrisl intr-o memorie exterioari proce-sorului sub forma unei succesiuni de cuvinte denumite instruiliuni.Totalitatea acestor instrucfiuni Iorrneaz1 frogramul. Considerim cifiecare cuvint (instrucliune) citit din memorie gi adus in procesor conlinedou[ cimpuri,

    _un cimp (codul operafiei) care indic[ concret ce operalietrcbuie sL rcalizeze RALU, iar celSlalt cimp (cimpul operand) ionlinevaloarea celui de al doilea operand ce intr5.1n pro-esare. Se consider5.c5. primul operand exist[ (adus anterior, sau -rezultat in urma uneip-ro_ces5.ri) intr-un registru (registru acumulator din RALU). Operandulal doilea este introdus in RALU, iar codul operafiei (OPCODE aplicatla intrd.rile ASM-ului. Adresa unei locatii din ASM este generatl'de cltrequvlntul de adresl pentru starea ,rr-i"to"r", de condilTile rezultate dinRALU gi 4e codui operaliei. Un cuvint dintr-o locafie a ASM-ului vagenera bifii pentru

    -starea urmS.toare gi bifii de comandS. pentru intregulprocesor. Acegti bili de comandi impreunS" cu semnalul de clock vor coor-dona desfd;urarea funclionlrii in RALU si vor deschide si inchide porfilogice intre registrele procesorului, ast{el incit sd. realizeze un anirmittraseu dorit de transfer a informafiei propriu unei anumite proces5ri.

    108

    Fig. 3.20. Structura de principiu . r""tUl'lT.i:#*n". dintr-un RALU comandat

    Rezultatul procesirii se pS.streazl in registru acumulator din RALU.Modul concret (intim) de executare a unei instructiuni oarecare adusidin memoria externS. (dat5. prin codul operaliei) este coordonat in inte-riorul procesorului de cltre cuvintele din localiile memoriei ASM-uIui

    -denumite m'icroinstrucliuni. Microinstrucfiunile sint inscrise de cd.treproducS.torul procesorului in memoria ROM sau PLA in procesul defabricalie a ASM-ului gi determinS" pentru totdeauna setul de instructiunipe.c.are le recunoaste procesorul si cire pof fi utilizate ln program de ietreutiliza.tor.-

    Cu aceste .noji-uni ajutltoare expuse in capitolele 1,2 si 3 se poate

    aborda in capitolele urmS.toare structura si funcfionarea'microplroce-sorului. Un microprocesor este un procesor realizat la scari. micrb subforma unui circuit integrat LSI s1u VLSI.

    JI.JSlRUCTIUNE ADUSADrN TnEMORTA rrrtRrA

    CCDUL0PERA\D OpERA;lEl

    ADRESA DIN ASM

    ila'118,,1 CU\,',lNTit}t c tSAall

    COMENZIP TNTRUFUNCT IONAR E/S ]ST EMULU I

    C0liDITll R[]irii-!

  • CAPITOLUL 4

    STRUCTURA $t F|-TNCTIONAREA r.rN {.'tMICROPROCESOR

    Cercetirile in vederea cresterii gradului de integrare a LSl-urilor,in a doua jumS.tate a anilor '60, au fost stirnulate, in ipdustria ameri-icani, de masive contracte din sectoarele aero-spaliale ;i militare, sec-toare care prin natura lor lin mai pulin cont de prelul de cost. Dar"spre sfirgitul anilor '60, aceste contracte au fost sistate, deci producS"-torii de LSI-uri gi-au indreptat atenlia spre domeniile civile ;i industriale.In aceste domenii producerea de echipamente cu circuite LSI la cerereaclientului (,,custom desigrt" ) nu era o solulie din punct de vedere alprelului de cost (mai ales Ia serii mici ;i mijlocii). Se impunea deci inlo-cuirea circuitelor LSI

    -

    custom design -

    cu circuite standard ieftinepentru orice aplicalie; in 1970, deja exista RAM de 1 Kbit. Evenimentuls-a produs la firma INTEL cind tiniarul inginer M. E. Hoff a lansat oidee materializatl prin apari{ia pe piafi, in noiernbrie 19'71, a primuluimicroprocesor din lume 4004. Ideea sugeratS. de Nt. E. Hoff rS.spundeatendinlei de inlocuire a unor circuite custom design, solicitate firmeiINTEL de citre firma japonez[ BUSICO]\{, necesare pentru realizareaunor calculatoare de birou (desk-top computer). Aceasti idee impru-muta modul de funcfionare al calculatoarelor mari la care unitatea cen-tral5. de procesare, CPU (Central Processing Unit), in fond un circuitsecvenfial, ca in figura 3.20, este dirijatS. in funclionare de c5.tre un setde instrucliuni lnscrise intr-o men:orie externi. Realizind unitatea cen-trali de procesare (procesorul) sub forrna unui LSI

    -

    deci micropro-cesorul, g.P

    -

    Ia care s-a ata;at din exterior un LSI ca memorie (dejaexistent[ in 1970) gi in care se inscrie de cbtre utilizator programul,s-a oblinut o structur5. de micrasistetw ,pe bazd. de nticroprocesor (Micro-procesor-Based-System). Aceasti structurS. care a inlocuit circuite-Iecustom design cu o posibitritate standard de implementare a sistemelor,a substituit logica de funcfionare cablatl (hardware) cu o iogicS" de func-fionare programati (softrvare) refiectatE in programul inscris in memoriade prograr'r.e.

    110

    Sisternele pe bazl de microplocesor necesi.ti. existenla'runei rnemorii,iar plocesarea informaliei se face La nivel de cuvlnt.r-Cuvintele pot fi:cttairic de adresaye (a informatieil sLttrainte adyesate (ce exprimi infor-tualie b p.rr^tro procesorsau o datl pentru procesare. Dup5. cum informalia procesorului poatefi o instrucfiune sau o dat5. se poate separa memoria care confine aceastlinformalie in.rmemorie de date si*memorie de instrucliuni (de programe),figura 4.1, a. In fiecare localie a men'roriei este stocat un cuvint (adresat)cu o lungime de n bili, figura 4.1, b. Pentru un pF lungimea ra a cuvlntuluieste o caracteristici principal5; intr-adev5.r aceasta exprim[ capacitateauz al6. de procesare.-(Exist5. microprocesoare ce lucreizd, cu luigimi de4,(|) 16 sau chiar 32 bili.) Fiecare loca{ie a memoriei este adresati cuu$ cuvint de adresare cu lungirnea de m, bifi, figura 4.1, c, deci pot fiselectate in total 2* localri ale rnemoriei.

    , Paraiel cu distincfia intre cuvinte de adresare sau adresate (date;i instrucliuni) trebuie f5"cut6, si o alti d,istincfie, privind natura infor-,r'raliei furnizate de c[tre cuvint.l. !{r_e;elBSt-dafule sint simple numere trinare care exprim[ o loca-{ie de memorie, respectiv un nurnir care tretruie procesat (operand)sau care este rezultatul unei procesdli.

    2. Instrwcliwnile reprezintS. coduri nurnerice ale operaliilor ce tre-buie sl le efectueze procesorul (adunare, sc5.dere, SAU logic etc.). Uneori,o instrucliune poate furniza simultan rnai rnulte indicalii, de exemplu:

    -

    csdul operaliei de efectuat;-

    codul operandului (de efectuat).i4EH O RIA DE

    - iNSTRUCTIUNI {DE\ PRCGRAMEJ

    qDRESE

    o f----'lrl Iz [------1r l--*-----l

    llllt-r [----Jk f--k+1

    i'ftM0RrA.DE DATE

    ADRES

    ,) [4-;i-'*T _:

    Er--r

    -fb6bc

    k-1kk+1

    t-_| ") l+ , io.-'l

    i il'4 PiJ LIODUL

    CPIRAIJEIi0Pc00E )

    t ltl PU !.'coout- cpieallcuLuttoari sau ronesir

    Fig. 4.1. Funclionarea unui sistem pe bazb de piP este diriiatf,. de un programextern inscris intr-o memori.e: a

    -

    structurarea memoriei externe intr-o memorie ded.ate gi una de programe; b, o

    -

    formatutr cuvintului din program (instrucfiune saudata) 9i a celui de adresare; d

    -

    exempiu de instmcliune pe un cuvint de 8 bili

    o)

    b3 b? b1 bo

    b1b^ b0

    111

  • ln aceastl variapt5.- cqviptul ilstructiuqe conline un numir de bili cee xpr imd Yl rupzl- epAuj u+ ; A',.tA i (oig o. p-gf ,Ji ;

    "

    ;i'" p - f oies pu nz a t o rcod.ulur (valorii) suu

    ^adrese'i operand,ulwi. De 6xemplu, in figuia 4.1, dse rlustreazS. aceasti forml a instrucfiunii pe- un c.ur.int de s b11i 0c : s)comandind operafia de adunare, piimli tioi bifi ."I *"i r."iniiicativicodificl operafia d.e 1dr1nqr9 b&a _ 01, iar urmd"torii ;ase bili mai pufinisemnificativi exprimd. in binai valoarea numirului 5 (opeiand).'

    4.1. Elementele structurale ale unui microprocesorln general, prin termenul de elemente structurale se desemneazi

    elementele hardware (resg$g_ir{dwareJ care intrb, in organizarea micro-procesorului. Din- punct de vedere semantic structura microprocesoruiui/microsistemului diferl de noliunea arhitectura microsistemuiui. Notiuneide arhitectotrd se ref er6. mai mult la aspectul logic, informatic

    "i ,ttrbistructuri de control, ln special din punct de v6dere ai utilizatorului.Deci, arhitectura unei structuri de control se poate defini ca un set deresurse hardware care sint programate pentiu a obline o structirr[informatici particular5. strrctuiile 9u pP permit ca o anumitl orga-nizare s5. suporte diverse arhitecturi [2].

    Reluind structura de principiu-a unui procesor reprezentatd. infigura 3.20.se pot desprinde- ;ipentruun (1rp- rirmdtoarele'pb.rfi compo-nente: unitatea aritmetici ;i logic[

    -

    UXL, blocul de iontrol ldgicgi grupul de registre. Aceste pirti componente sint conectate intre Eregi-inspre/dinspre exterior prin intermediul magistralelor de date gi deadresare, figura 4.2.uAccesul la magistrale este- autorizat de semnalelede control generate de unitatea de control.

    unitatea aritmetici qj logicd.. UAL este circuitul din structura ppcare proceseazS. informalia rializind operalii aritmetice si togic; laju-nare, scddere, SI, SAU, SAU EXCLUSIV; complementire, incremen-tare,

    _

    decrementare, -

    deplasare dreapta, deplasaire stinga). Fiind uncircuit combinafional, ce prezinti o iegire ;i-dou5. intrdri-, necesit5. atitpentru cuvintele de intrare, cit gi pentru ceie de iesire registre de memo-rare temporar5.

    ,unul din cuvintele de intrare (a1'doilei operand) esteaplicat pe una din intrdri de pe magistrala interni. de dite a *i.oo-procesorului unde a fost depus de citie un alt registru sau a fost adusdin memoria externE. cel5"lalt cuvint de procesire (primur operand)

    -aplicat la intrarea circuitului UAL se afll d6ja intr-un'iegistru denumitregistru acumulator. Cuvintul rezultat in urma procesirii-va fi incd.rcattot in circuitul acumulator; deci registrul ac-umulator conline unrrl.din operanzi inainte de_procesare, precum si rezultatul in urma procesirii.Dar, nu toate o-perafiile ef.ectu,ate necesite doi operanzi, de- exemplu,adunarea gi sciderea necesitS. dou5. cuvinte, pe cind o complemeniaresau o deplasare spre dreapta sau spre stinga necesitd. doar un singur

    tlz

    I"1AG STRA. .DE DATE N

    r'1: lof1.. , '.;,'ni. a.Z. Structura fundamentalS

    ' o magistralS de date pi un

    l,A0 llriiRN'\ALIR m-biti

    fier,rxars lF, drraroLI TRtf.rlSE / PR r.1 TILrrI DE LA ELTMENTELE i]! DIRA]I]ONARI5l PF:,ESARE

    a unui microprocesor cusingur acumulator

    cuvint. @, cum ar fi incircarea celor doioperanzi, executarea operaliei ;i incS.rcarea acumulatorului cu rezultatulprocesirii S@ de contlql Jqelc_.-

    Grupul de registre. Orice tip de pP trebuie s[ aib[ in structura saun minim de ;ase registre cu funcliuni specifice: registrul acumulator,(registrui) numirltor de adrese al programului, registrul indicatorilorde condifii, registrul de instrucliuni, registrul de adresare a memorieisi registrul de intrare/ie;ire. In plus, pot exista si alte registre de utili-zare general5. care duc la o flexibilitate mS"riti a pLP in aplicalii.l. Nu,tndrdtorul de ad,resare al programwlui, PC (Program Cotr,nter).Succesiunea de instructiuni (programul) ce trebuie executatl de prPeste inscrisS. in locafii de adrese succesive ale unei memorii externe.Adresa localiei ce confine instrucliuyrea, care trebuie adusi din memoriaexterni, este inscrisl in registrul num6rltor de adrese al programuluidenumit numirS"tor de adrese. Continutul de m bi\i al numir6torului

    I

    r,iAr.i!-TRAr-A I -J t,tictstaqLAFXTERI'iI. EXTERNA. t'. T /JRFqAka

    t.tEl.1r-rRIE

    'E DA'I

    '

    EUFF:F TFRIIESIRE(

    REG]!TRULACUIT Ti ATOR

    ]NSTRUCTLUI.i]]

    UN TATEA OE.crllR0L

    113

  • de adrese este autontat rndrit cu o unitate dup[ ce instrucfiunea a fostadusl din memorie (cititi), in acest fel pregS.tindu-se adresa pentruirlstrucliunea urmS.toare. In general, PC este un num5.r5.tor cu prescriere(fig. 3.17), din acest motiv;i denumirea de registru num5.r5.tor de adrese.Existind posibilitatea de prescriere in PC, rezulti c5. se pot introducesi alte valori decit cele ale num5"r5.rii in ordinea naturalS, deci salturiin citirea locafiilor memoriei. Salturilor in citirea memoriei le cores-punde in succesiunea iogicl a programului existenla ramificaliilor. Rami-ficaliile sint necesare in urma unei operatii de decizie intre mai multevariante. Pentru inilierea unui program trebuie inc5.r'cat PC cu adresade inceput-corespunzS.toare. Piin-comanda de IR.ESEI aplicatl pPnumlri.torul de programe este incS"rcat cu o adresi fixatii de cEtre pro-duciltor, in geneial aceastS, adresS. este 0000H. Comanda RtrSE! iini-li aJiz arc) s"e d[

    -allt-qlsa-t . k- .punere a_ iq "

    _f-uo_c li un e a nr-Tlo [ro c.- i ol itiu idgpl conectarea tensiu+li.Sap le. apliql .dtn cxterio** 2. H-aisirut de iriVeidiT"a wem,iiii;. A;;ut;"gistiu tampon d"e adre-sare cu ie;ire tip TSL

    -

    denumit buffer de adresare -

    este conectat -tra magistrala (externi) de adresare a memoriei sau a porturilor de in-trareiie;ire, I/0. Conlinutui registrului FC este transferat in bufferul deie;ire care va ap1ica pe magistrala externS" de adresare un cuvint binarde m, bi\i ce reprezinlS" adresa unei localii de rnemorie sau adresa unr.ripofJ Vq Dar incS.rcarea bufferului de adresare se poate face nu numaide la PC, ci gi de la alte elemente ale pP; Rezulti-ci pe m'agistrala deadresare se pot aplica gi cuvinte adresS. diferite de con,tinutul registrutruiPC. Linele instrucliuni pot incS.rca registrul de iegire cu o. adresi rezul-tati din conlinutul lui PC la care se adaugi" sau se scade un numirrezultat in urma anumitor calcule (aceasta generind multiple variantede adresare).

    3. Registrul, de ,intrarefie;,ire (btf.fer Il0). Prin acest buffer latchde intrare/iesire se rea\izeazd" legitura intre magistrala de date interioaria pP ;i magistrala Ce date exterioarS. (a sistemului), deci vehicuieazicuvintele de date ;i instrucliuni.4. Ileg'istrwl, d,e instrucliuni,, RI. Dup5. ce un cuvint instrucfiuneeste adus din memorie prirl bufferul de I/0 pe magistraia interni a pP,o copiq_a acestui cuvint va fi inscris5. in reglstrul de instrucliuni. Regis-trul/Rl p5"streaz5. instrucliunea pe durata executirii acesteia. Odaticopiatl instrucliunea ln RI conlinutul numS.rS.torului de adrese esteautomat incrementat cu o unitate PC* 1. Instrucfiunea poate ii divizatS.in dou5. cirnpuri: c|wpul, cod,ulwi operaliei, OPCODE ;i ctnopul, operandathti(sau adresei operandului). Bilii din codul operafiei se -piicl decodifi-catorului instructiunii care, apoi prin unitatea de contiol, va generatoate semnalele de control necegare execudiei instrucliunii reprezentatlde cod.ul operafiei. Cimpul adresa operandului se apHce bufferului deadresare pentru a forma adresa din memorie unde se afl5 operandulnecesar operaliei specificate de OPCODE.

    174

    5.Registrul,aulmotlator,A.Autmulatorulesteregistrul'dinstruc-tor"-,rp. 3* cea mai ii.ioi""ta utilizare. Acest registru este conectat la,,,'rgirTijrrl;;;t;.';ate ai la UAT . CinC se Proceseazi doui cuvinte,,r Ji A. la inceput cuvintui ,4 se afIS' in acumulator' iar dupi proc.elare.ii"r6i"i;i;i-i.-;";i g

    "rt" trecut din UAL tot in acumulator (i"fgr-

    *.ii" i"iti"la air, ".it*-ot"toi -^"p"531d9i

    ,a - 1e ql"t,&): P-: """*plo,

    se consiclerl execrrtaie" 1ii*pffl.'"11; '-" instrucliunii de adunare a doioneranzi inotatl nt t.ui"t'epb;. frimut operand,4 se afl5" in acumulator'C.ontinutul iV ai registrului PC este transferat la reglstrul de re;lre ql;;id;i;';"*i.tirT" a"-"dr"ot". Din memoria de instruc.tiuni, de la;ffi; fr"".I" ""itii |".'i"tri i"struc! iune care prin intermediul regis tru-lui I/O este copiat in registrul RI. Cuvintul instrucltune este:

    . r ADD: < ADD ! ) cu semruttcafta \ p:adresa celui de al doilea operand, B.cimpul OPCODE al instrucliunii ADD este introdus in decodiiicator ;iin u|itatea de comandi, generindu-se succesiunea.de comenzi care va,i^hi", adresa p r" -.pri.X prin intermediul registrului de adresare la*"*oiira" dat6; de la'Gca1il d"e adres5.. a memoiiei de- date operandul B;T-;a; pii"'i"t"r*ediril registr^ului- I/O

    .pp magistrala intern[ dea"t"; ..i do'i op"t"nii-a- S; B,ior fi adunafi^in UAL, rezuitatul fiindtrecut tot in atumulator

    Registrul acumulator participl la transferul informaliei intre osurs5" (localie de memoii", p&t de l7O; Ei o destinalie (loca{ie.de memorie';;;i d';"I/di. ii"rit.r"l arle loc in doiaetape: intii iuvintul de lasursS'|rt- ;;ifi;i i;;;-"tator, iar apoi din ic.mulator este deplasat iadestinalie.

    Microprocesorul perrnite efectuarea unor oPeralii (cu un smgurooerand) iolosind ,-,uilai acumulatorul cum ar Ii : ;tergerea acumula-iSrrrliiit"ti-tifii .i"f pqi la valoarca zero), inscrierea t*turor .bi{ilorf" i."loutlr i, a.pt"."i" drelpta, stinga, compiementarea conlinutului etc.A...1" op.rafii,'cu

    "" ii"girr op.ritrd, pot ti deduse din funclionarea

    de principiu a unui registru ($ 3.2.1)'Numlrul de celule ale acumulatorului este egal cu lungimea cuvin-

    t"i"ipio.". it d,e p"P,-n in tarui structurii din figura 4.2. p.xis,t6" structurid;;t' care sint inzestrale cu mai multe acumulatoare notate acumula-;;:4,

    "."-"i"toib etc. Dar in cazul acestor structuri existi 9i instruc.-

    tiuni d,iferite peniru fiecare din acumulatoare' Acumulatoarele pot .tii;;i; tt il;;;"'J^p*ti" a se putea lucra cu cuvinte de lungimemultiptrud;;; ;i$ -i"-;;;i"l

    "r"t -.'itor acumulatoarg rezultl din posibilitate a

    lucruiui -acotmwlatorl-l'i-'ori*rtotor. De exe-plu, cy.u.n. acimulator seil;;;;;;;;;i--;i

    "; celalalt se plstreazi-civintul inifial,(de

    'ii9 *iiesre ner-oie ulterior) sau se pistreazi rezultatele. In cazul unur slngtil,.o*.rtutor, tacitita',tiie .^r"'^. fi introduse de existenla unui al doilea

    rtEI LJ

  • acumulator trebuie substituite de locafii de memorie sau de alte registrede utilitate generali.

    6. Registrul, ind,icatorilov d,e con'dilii. Prin aceastl denumire -

    deregistru. indicator de condilii

    -

    se inlelege un grup de bistabile (flag-uri,fanioane) ; aceste fanioane asamblate sub forma unui registru gi cititesimultan vor genera, impreun[ cu conlinutul acumulatorului, cuvintulde sta{e al programului PSW (Program Status Word).

    Bilii cu\uintului dc starc sint inscri;i Ia valoarea I irr urma unorteste din timpul execuliei opeialiilol aritmetice ;i logice ale programului.Existenla unui cuvint de -tare (aI programului) poate duce Ia un saltbalitativ in facilitS"file oferite de un ;r"P. Dac5. existl bi{i de stare, setul.de' instrucliuni conline gi instrucliuni condifionate (instruc{iunea seexecuti numai'dacl fanionul respectiv este pus

    -

    inscris). O instruc^-liune condifionat5. este utilizati. pentru rcalizarea unei ramificalii (sal_!)in program, adici se schimbi succesiunea de citire din ordinea naturalS'a instrucliunilor din memorie, prin inclrcarea PC cu o anumitl adresl.Deci, un fanion pus determinl executarea unei instrucliuni de sa1t,-,adicl citirea unei inumite localii din memorie. Bi{ii de stare sint inscri;iin urma unor teste asupra cuvintului din acumulator, deoarece in acu-rnulator se afll cuvintul procesat. Unele irP pot inscrie bilii de stare.pi in urma unor teste asupra cuvintelor din anulnite registre de uzgeneral.

    O inzestrare standard presupune existenfa urmltorilor trei bifide stare, cu semnificaliile ($ 1.5): transport/imprnmut (carry/borrow).zero, semn.

    a) CARRYIBORROW. Acest fanion este pus cind operalia efec-tuat[ a cauzat fie un transport, fie un imprumut. Transport apare ln urrnaunei aduniri, cind rezultatul depl;e;te capacitatea registrului, iar impru-mutul in urma unei sc5,deri, cind sclzS.torul este mai mare decit descl-zutul.

    b) ZERO. Fanionul de zero este pus cind in urma opera{iei efectuatea rezultat un cuvint care are tofi bilii la valoarea zero.

    c) SEMN (SIGI{ ). Fanionul de semn este pus cind. cel mai semni-{icativ bit al registrului (MSB) rezultS" cu valoarea 1, deoarece in repre--zentarea prin complement fali de 2 un numd-r negativ are acest bit : 1($ 1.4.1).

    Se pot adluga;i alli bili de conditie (non-standard) care si refiecte,daci anumite funcfiuni sau stlri hardware ale pP sint indeplinite saunu. Unele microprocesoare posed[ instrucliuni ce pot inscrie anuuri]ibili de condifie. Cuvintul de stare a1 programului din registrul indica-torilor de condifii (celulele registrului c5.rora nu li s-au repartizat osemnificalie de condilie sint totdeauna in valoarea logici 1) se poateciti ;i aplica pe magistrala de date,. dar nu totdeuna poate fi inscrisin registru ca un cuvint de pe magistrala de date.116

    unitatea de control. Aceastl parte componentl este cea care.op"r"ir."ri funclionarea corecti a insamblului de

    -elemente unite in;lt'";t;-4" pp d" corela{ie cu restul microsistemului. Comenzile ge-;;;;d; lrnlt"t". a" io"tioi rezultl in urma decodificdrii instrucfiunii,"-."i"riiot de intrerupere (primite de'la

    elementele microsistemului) 9i; il;;ilriio,. a" taci (cliict

  • r"iEr/ 0RitC]CLU DEADUCEREA

    JNSTR-INUI.]1 ] (FETCH )

    suD torma unui circuit integrat (clock driver). In ambele cazuri for-rrarea semnalelor de timp pornegte de la oscilaliile generate de un osci-lator de ordinul MHz sau zeci de MHz. Circuitul oscilant se realizeazS.de tip RC sau LC, pentru cazurile cind nu se cer pretenlii severe in ceeace privegte precizia in5surSrii intervalelor de timp, sau pentru cazuri deperformanll stabilizare cu cuar!. Din frecventa oscilatorului, pdn di-vizare de ordinul unit[iilor cu circuite num5"r5.toare, se ob]in doui

    l"iliFli+,' .-:,!.11 I rUF:aR t E

    EUFFERI;C

    Uri lATIA DE!l]TROL rioadd este ti,

    L- ---+gulllSIUErgU-- )Fig. 4.3. Traseele realizate in microprocesor in e{ectuarea ciclului FETCII

    gi a ciclului de execulie a instrucfiunii ..

    -

    c'iclul (etapa) d.e execwlie a 'instrwcliunii necesltind un timp maiscurt sau mai lung, in funclie de complexitatea instrucfiunii. Pentrucazul cind instrucliunea adusl are un cimp al adresei operandului cacea prezentatd in $ 4.1., atunci cicltrl de execulie incepe cu aducerea(citir:ea) oncrandului din memoria de date.' lrr'executarea unei instrucfiuni unitatea de control primegte, pelingl ie;irile decodificatorului, la aplicarea cimpului OPCODE, 9i iq-puLuri de ceas. Aceste impulsuri de clodk sint generate de-un circuitipecial care poate fi inclus in structura pP sau se atageazl in exterior

    t1B

    t

    sau (ceea ce este echivalent) pebaza tactelor (D1 ;i Q2. Fiecare perioadha acestui sernnal generat de microprocesor T :ZTa este denumit5.fazd. sau stare (phase, state), figura 4.4, c. Acest semnal generat poartaidenumire a de s evnn al, d e sincr o nizare ( SYNCR O), 4gggrce-pqqu1!9*!!n-crqnizarea exteriorqlui-microproeeson*Iui{srmodrq periferice) cu etapeledft *.it- j{,-"x-e-tllt i a I-n

    -ei- it. ttt' c t i t "' i .' i 1 f i grr.' 4. 4 t tE;;[;X]peii6Ed5- de semnal SYNCRO (fazd. sau stare) la doui perioade To.De exemplu, in figura 4.5, a sirt reprezentate fazele necesare pentruexecutarea etapelor (ciclurilor) instrucliunii explicate in figura 4.3. Intirnpul fazelor Tl gi T2 se efectueazi aducerea iirStruc{iunii din rqempr:leFEITCH), i"t p" p"t.orsul fazelor ?rJlfi*se Fx&uT{ insFircFund-

    Definirea fazei (stlrii) ca in figura 4.4, c, T : ZTa, nu este uniciexistind multe alte variante in funclie de tipul microprocesorului. Deexemplu, 1n Uf 8080 ca stare (fazi) se considerl perioada T : Ta, iargenerarea unui singur impuls de sincronizare corespunde la o inl5.nfuirede pini la cinci stiri. Impulsul de sincronizare se genereazl totdeaunape intervalul primei st5.ri din cele cinci posibile (durata totali a acestorst5"ri-etap[, cdrora le corespunde un impuls de sincronizare, este de-nurnitS" ciclu ma;ini):

    ln general, 'ciclul instrucfiune se misoar1 prin num5lul de stlrinecesar execut1rii unei instrucliuni, dar a se observa cum sint definite

    C CLUI. Li5EXtaLrl a ,iIhSTRLITIUI.]IL

    c)

    SEI'INALE DE MMANDA PTN]RU

    I,1EM ORlE

    tio de odBo li

    M1CFCFROCB{F

    BI.J F FER ]/O

    119.