introducere in microprocesoare_part12

Upload: mesuzana-1

Post on 07-Jan-2016

219 views

Category:

Documents


0 download

DESCRIPTION

26

TRANSCRIPT

  • -

    Un decodi{icator ,.'rc instructiuiri care prin decoC'ificarea cimpuluiOPCODE, din instrucliutrea ce ttebuie executati, tez',Iizeaz/a un cl1vintadresd pentru CROII.

    -- Utr numiri-tor de adrese de rnicroinstructiuni (modulo 25; caregeneleazS. adresele ctrin CItOlI. in numiritor se incar-ch cur-intul adlresl,fenerat de decodificator, care se incrementeazi ]a fii'care impuls rie tact.

    Un registru de microinstlucliuni -

    cu lungiinea cle 15 hiti -

    iucare se incarcd- cuvintul citit din CROI{.

    -

    Un decocli{icator de rlticroinstrucliuni c.lro genereazi, clin cu-vintul extras din CIiOl.I, scmnaielc cle inicrocomeLrzi.

    Cuvintele insci'isc in L-RO}'I, care intr--o magiiiiL rea15- pot avealungimi de 30, 60 sau chiar rnar n:iu1!i bi{i, conlin.aigor"itrnul dc gene-rare a tuturor semnalelor de comai:dl a celor mai elcmentare opera-,rii-

    (micra)opt.ralti -

    din proccsor ; :tccas'Lir stlccL':iil1ile rit: cur-i;rie dor-mcazS- ntiiroprogratt,,'/c. 7)eoztrece r::ici:

  • Tabelul 4.2Repartifia bililor &rr, b' din cimpul

    ,,operafie"

    Bit 12 lBit 111 Operalia comandatd.00

    NOP: niciooperalieADD : adunare, des-

    tir.ratd, pentruALU.

    SUB: scidere, des-tinatd pentruALU.

    INCR :incrementareanumdrd.toru-lui de adrese

    Tabelul 4.3Repartitia bifilor &ro, bs, bs, b7 din cimpul ,,comanda porlilor de pe

    nagistrale"

    Bit 10 Bit 9 Bit 8 Bit 7 Microcomandd (semnal) care valideazd. porfilepentru:

    0I

    =__l

    t=

    E

    !r

    lds-

    1?A10 65r3?10DICOOIFITATORUL Mi CR OINSTRUCTIUNILOR

    00

    0

    0

    I

    I1

    1

    0

    0

    0

    0

    00

    0

    0

    0

    0

    00

    I

    II1

    1

    1

    1

    I

    0000 1'1,1021 1'30040 1 i5

    I1 o io1 I i70 0 js

    I0 1 isI 0 1101t.000r10l1

    nici o poartd nu este comandathnumd,rd,torui de adrese este transferat inbu{fer-ul de adrese,,adresa operandului" este trans{erat in buf-fer-ul de adresebuffer-ul de intrare/iegire este trailsferat in re-gistrul de instrucfiuni,,codul operafiei" este transferat in decodi{ica-torul de instrucliunirezultatul din -ALU este trans{erat in acumu-latoracumulatorul este trans{erat in ALUbuffer-ul de intrare/iegire este transferat inacumulatoracumulatorul este transferat in buffer-ul deintrare/ie;ire.

    , buffer-ul de intrare/iegire este transferat inUAL

    , decodi{icat. de irrstruc}. este transferat innumdrdtorul de microinstructiuni

    neutilizate

    ts

    o

    o

    -

    oo D'

  • llTll:,1: f.u1c1ie de .nric'oco'renzire -

    roperatiile c)cnrenrare) ,rccsar a:":t:.\"? rrIlr-o. pcrroadi de ract clernentar.se asarnbkazi, r.aloar.eacu'lntulrrr mrcroinstructi.unc. pcntru microprocesoi.ul c]in Iigura 4.i4,cu.lungimea de cu'int din figura a.13 ;i i'i"i"J-;";i A repartizirriiebitilor clin tabelele 4.i, 4.2;i ?.:, se \ror asambla micr.oprogramere co-respunz5.toare urmi.toarelor dou5. instr-uctirini, ' -o'

    lP{ *(= incarci. acumulatorul cu operanclul de la adresa rn)ADD m (: se aduni Ia co.tinutul acJm't;i;',r1,ri olerarrclrrtr dela adresa m)__^j":1T.111t1.ti""e.se compune clintr-o iniintuire de rnicropro-grame' dar totdeauna-primur cstc rnicroprogra..rl FETcH. iticroiio-gram_ul FETCH, asamblat in tabetut

  • Tabelul 4.G irrhitecture de procesor foarte particulare, adaptatl unei probleme.Sc poate considera, de exemplu: prelucrarea in timp real a semnalelor,,r:onducerea proceselor, tealizarea de calcule in timp scurt (transformateliourie rapide) etc. Pentru viteze ridicate de procesare se impun cir-cuite rapide, cum ar fi cele realizate in tehnologiile bipolare (TTLShottky sau ECL), dar acestea au un grad de integrare mai redus,decit c'ele in tehnologie MOS. lntr-o tehnologie bipolail structura dinfigura 4.12 ar putea fi integratS" doar pe secfiuni atit a unitLlii de calcul,cit ;i a unitilii de control, evident adS.ugindu-se memoria de micro-programare. Cu aceste secliuni (,,felii") avind o lungime de cuvint de2,4,8,...., biti, prin punerea in paralel se poate obline un procesor cuo lungime de cuvint doriti. Principalele circuite (integrate) secliuni,comercial accesibile, atit pentru unitatea de comandi, cit gi pentruunitatea de calcul, sint indicate in tabele 4.7 ;i 4.8 (cele notate cu as-terisc nu pot fi puse in paralel). Un procesor bit-slice, conlinemaimultecircuite decit unul standard, in tehnologie NMOS, dar in schimb este

    Microprogramul pentru realizarea instrucliunii,,ADD

    Cimpul decomandA al

    porfilor de

    1"1""l"lor"l---l"l',o1

    Microinstrucfiune

    Oli Cimpul de comanddal saltului la o altimicroinstrucfiune

    Ard Comentariumagistrale

    ;t;t; Lltl000000 II Citirea operandulu

    I menorie de la adlm.I

    0

    I

    -i Ii del."ol

    II000000 Transferul operandului

    de la adresa m inALU,

    Transferul celui de aldoilea operand dinacumulator in ALLI,comanda de sumare

    000000 0 Tabelul 4.7Tipuri de ,,felii" de unitate de comandd

    00 000000 Deplasarea rezultatuIui irr acumulator Num5"r de I fehnotogia ae J-Uiii - j .".lir?*- | Firma producitoare ;i indicativul chip-uluiEOP: lrevenireladdre5g, 2916.

    elaborarea unui firmr,vare-microprogramare). prin prograrnarea unuimicrocalculator/microprocesor se inlElege scrlerea programelor necesaieunei anumite utilizirr.

    4.4.1. Aplicagii ale microprogramdriiconceptul de microprogram-are a fost introdus in 195 1 de prof"M. wilkes, de ra lJniveriitaiea din cambriag", ;i."*ta'#i-ii"il."_tarea unitd'tii de contror prin folosirea unor-secvenfe de microinstruc_

    Itl{ A..1","1, pentru elabo'rarla ;";i r;.i.* de comandd. numeric existi,doud. metode sistematice: a) s.tructurd. hardware microprogiamate f nsruilb) structurd" pe.bazd. de microprocesor. J'ate ae ";;;;ii";;" iniliall,:gi::!!"l d9. mjcrgnlosramare s_a dezvotrar arit di,,6;;;;' de

    'cdereg.:y..{t^11"1t]l,.jij din punct de vedere a.l implementarii gir irsl. otntr"multrprele-aplicalii _ale microprogramdrir se

    'or expune succint doarurmd.toarele trei: microprocesoarere,,bit-slice.., **"iir"i r"ii i"t"s*t.

    l. lllicroprocesoarele bit-slice (slic_e -

    felie, secfiune). Existi anu_mite aplicalii care necesiti fie vite)6 de procesare foarte ridicatd, fie o138

    4 biti8 bili9 bifi*l0 bili*12 bilir

    TTL-ShottkyECLECLTTL-ShottkyTTL-ShottkyI2LTTL-Shottky

    AMD (Am 2909 9i Am 2911 Texas Instr. (745482)Motorola (MC 1080 1)Fairchild (MSU F 100224)Intel (300 1), MMI (6710)Signetics (8 x 02)Fairchild (9402)AMD (Am 29010)

    Tabelul 4.E

    Tipuri de. felii de unitate de calcut

    Numd.r debiti

    4 biti8 biti

    16 . bifi*

    TTLTTL-ShottkyECLECLECL (TTL-

    Shottky lar/o)

    Fairchild (9405A) ; AMD (am 290 1 9i Am 2903)MMI (670 1), Texas Instruments (745481)IIotorola (MC 10800)Fairchild (ADIU F10022)

    AMD (am 29116)

    139

  • lx:r'i rapid tl" to, r ,,'9,rli lii,pl'-l-t, ltrin elaLorai'ea iirlrlu"i,-arc-ului pentrRmlcroprocesorul bit-siicc utiiL.L,Lorui isi poate ;i eirgii,,l si.r_r set d,ernicroi:rstructiuni. i

    lr-l-a.bo.al'i:a irit-r'.,fluo-i;-llrrlor cli. flioli 'ecr.^i itr o foaltr_ Liuniicurroasterr a ,c lri.Lct_uii.i ;i f unc{ioliirii l. j)r-Lt.,iclor: i,.,,.t_r"rt,. De tapt,proieciarcrl unui nicroprocfsoi- bii-slice /:au a LlUri1 :rr:rti.-irf ii'_ru..ric. decontrol) constir din elilrorare:, in p.a;:alel, . ..i"nl

    .1".,u,1";"r,rr,:*t_*te:harcilyarr: si fir nr','iire. -{.sani-,1:ir-au' ,rrorr,-,^ri

    " iratir*ti,,routor, ca ir.l.e-rt'mpir-rl expus in tabeiclc,l.i

    -,- f .O, nll poate fi o r-ar.ia3t:r de r.r.zoh"arc.:pentru un sistern cornDle:r. in i l:ll,rrrarr.-l unr-ri pr ut rsr-rl ' bii_slicc, ca,inslrurnent de lucrir, c.r- ,occ..,r rn ASa-rllrnrit sr.'r.,r1 \r: -.,iia^a^r'iroa,r,de drt;oltaye) f-Z: ' -S-ar parea ci aplicriiilt lrrr,, r)ccr"sit,i lolorit., :. rui, ro1,r."iuso;relorbit-siicr', in irltimul timp, 1',-,r t' ;.ur,ri, ati; C .i!r.r rr)icr.nLrr-oc."soaieltcu Iungirnra de cur.inr i.':,i

    .; :z ii--, cir :i ,l ,i,,1,,i,.]i ',l,rlt-._srorn,_sau,,semi-cr-rstorn design''. in \ -1.i -'-acxp*lce,i.n-^p"l.nila ,,i.F poate fiprivit:i ca o contran.,suli trhnoloeica unpotur.a clrcliiteror customdesign. adicii i'lor *i.el

    ",r,i r,.zor,'.J u,,i.e :p.,r ticrrl ,r,. si",lo.iisirqar.e).cuo rc.'olrrlestrrrdai-d.1,le.r irflinn). t*plc,i,,i,t.,.. .rrl.l,-fr,:rj i;f;'_;i.,;jorocesor) pe lir.rsi mulripl., rr anr ij., ;.. :i d"..,;;; ,f ll rj ranrczia

    ::*-it?"i.*, a proit'c1anr urrrl t|ehui. ri ri" canarizati rirr;rr. iilrr.c a:irrrrrit."date hardwa.e si'n set lix de instr-uctiuni, restrictn",-0.*-or.n"ipai:e ca undat la impleinentar ""

    f.rh *"'"."*i;ustor* desi,qll. f *tr-o reatrizarelull-cusloni Lr{ilizr r-91irf l,!iinil t"^i."irescrip1ijl, tnriu. , .i trrr;cf ionalE]" tllc lt .tl'-ire;te, irr. Produc.rtorul re'aliz."ri.'ii,..*ii*r irii,,,lrar cores_punz.'rtor (le cerere). in realizareo

    ."*iooii"; ili;;;";;.r,i"rri pr.oiec_teazr singur structura rogici, o teste""a-r"rril*r^i"pn:ir-,'.ulr.*tar.e insott*'are, traseazi geomeTria cirt'uitul'r pe care u; oi i1 r.or)landir fa_bricantului pe'i*r i 1t- ynr"*";rr"t ;; pialhete a*' .iri*,r'Inn,.pl"m"r,-tirilc,lc ci.c6i1^ integrate scrni',:s'.odr p'o,t li .t* tier!--r,,ir.e de portil:1-:i:: !9,1 n) sau cu .il*l" standarui. Fe'plactrreta de siticiu, na circuiteteser,r-custom cu c.irrle standarti, si*r reJlizatu

    "roo"it" lin,rau.a ($ 7.a}^n'1l.rgir c si ,Jigitale. crrt.sirrt co.rcr,l,.-intn* .le, lli intrnrl_ .;i it.sirilesi't sccrs'' lu pini posibiriratc, , iLiri.ii .ir.liii"i"t ti,.,i*..rnr- ,"-i-custorn l:'L un nret acceptabil eslc o consecrntit a iiltroclncerii sistr-melor.c-qEicAD/cat (q r.:i.

    .

    2' Emularea- poate fi

  • CAPITOLUL 5pRoGRAMAREA il',1 LlrqeAJ DE ASAMBLARE

    A MICROPROCE5OAR.ELOR

    5.1. structura si funcfionarea microprocesoruruiINTEL 8O8O

    .

    Ilicroprocesorur 80g0 este o unitate centrald, inrcgrati pe un singurcip, destinat construirii de microsisteme a" ;;;;;;;?1] daiacteristicilesale sint:-

    ciclul unei instructiuni tipice de Z Vr;-

    compatibilitate TTL Ia intrar.e si Ia'iesire :-

    permite adresarea unei memorii' de mixim 6a Iibaifi (cuvintde adresare de t6 bi!i);---,r*I^..T]te^^adresarea a 256 dispozitive periferice rle intrare gi 25Gperrlerrce de re$lre;

    -

    formeazl stiva in spaliul memoriei (externe) :-

    proceseazd" in paraiel cu cuvinte de un bait.'Structura bloc^a microprocesorului este cea din figur-a 5.r, a, iarsemnificafia celor 40 de pinieste redatd. in figuia 5.i,;:l;aceast[ fi_guri este u;or si. se regiieasci erementere un"ei .i.".1"ir ior.a"-ent"teprezentate in figura 4.il. Transferur datelor, de ia/citre-cxterior, seface printr-o magistrald" bidirecfio'aid de s niii lb,-o.r,"i"i adresarea.

    nemonel gr-a crrcurteror de interfa{5 printr-o magistiari de r6 biii(Atr-Ao).Microprocesorul necesitn douh semnate J? i;;t";g; 6i"O2 gi. trei tensiuni de alimentar:_(t I ZV, +5V, _5V) fati de masd, gene_:.-= ?::: :,"i?it: de comand.i ;i contror,. ia*i1i,la,

    .i"-"."ru;i' ii*p,orepr rntrarr alte patru semnale de comand[ si control.

    Memoria interni este formati din urm5toarere registre:-

    Numf,ritorul. de adrese, pC (program Counter) "rt" .r., registrr,lde 1,6 bi!i, care

    ,co.n!inc adresa instructiinii .. "i*.ula l"ji executara.conlinutul acestui registru este accesibil gi poate ?i-*"airi."t p.i" pr"_g.ram.

    -

    Indicatorul de stivd, Sp (stack pointer) este un registru de rdP:t::_l': :rlrr:1_" totdeauna adreia din memoriL 1*o.oii- p?"tru srivi)rn care s-a depus ultimu-l crrvint (indici vir{ul stirlei). StirL se constru_iepte in RA[{-gi crbste i* jos,

    "tii.i i" sensul de scidere a numd.rurui142

    Fig. 5.1. ilIicroprocesorul 8080: a -

    ot-ganizarea (structurd) intern[; b

    -

    conexi-unile externe

    adresei. $i indicatorul de stiv5. este accesibil programatorului pentruinilializarea zonei din RAM ca stivi.

    -

    Sase registre de utilizare general[ de 8 bili (8, C, D, E, H gi L)care pot fi folosite gi in perechi pentru a forma trei registre de 16 bilitB-C, denumit registrul pereche B, D-8, registrul pereche D, H-L,registrul pereche H). Aceste registre pot efectua un numlr mai redusde operalii decit registrul acumulator. Registrele temporare W gi Znu sint accesibile prin program, ele fiind utilizate numai in funcfion.areainterni a micropfocesorului.

    Un cuvint de 8 bili poate {i transferat intre registre pe magistralainterni, folcsind circuiteie pentru selectarea regisirelor lnnClSfnn

    BlDlRElri0ilAl-DATA BUS

    S]ATK POINTER

    IO'RTSS LATTH

    DATA 1 Ii T! -BiJ,i RRUPI I,]CtC WAIT0r'rIR til.rTR. toi,iTR. r0NTR (

    A14

    412A15.A.9

    A8

    A5

    A3-t2v

    A1AoWAIIREADY01HLDA

    ir'ri cL I

    1,43