View
221
Download
0
Category
Preview:
DESCRIPTION
26
Citation preview
-
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
Recommended