Sisteme Cu Microprocesoare M.popa
Sisteme Cu Microprocesoare M.popa
.. .
2. I . Prezentare . .. . .. .. 28
2
? Moduri le d; lucru tenninalele.. .. ... ..
31
, J l. ::;:::: : : : :.::: ::.:. ::::: :: :::.:. . .::::::.::: .: .:: :: : :: :: : ::.::::: ::::: ::.:: ::::: : :::::: ::::: :;
2.5. Oroanizarea gestionarea memone1 .. .. ..
45 . . . . ...... ... .
2.6. Sistemul de intrare I .. .. . .46
2 7 Sistemul de ntreruperi . 50
--5-'s: Unitate cu microprocesorul 8086 .:.i.8086.56
.
1
1
- 2]). Conectarea memoriilor la
0
[Link] cu m.1croprocesoru
1 8086
:::: :::::::::
59
,_ . 2 I O. Conectarea porturilor la o unitate cu 62
---1:2. 11 Conectarea microprocesorului 8086 n sisteme mult1?roce2s8o91 . 63
. . 2 11 1 Arb1'ttarea maoistralei comune de c1rcu1tul 8 . -
. . . "' . . I 8?89 6:>
C
i ? I I 2 Controlul magistralei comune de c11:cu1tu - 66 11
i 11 :3: Comanda controlerului 8288 .de arbitrul 8289
66 /
2
.
1
1.
4
. de sistem cu arbitrul 8289 .. .
73 Cap 3 Microprocesorul S0386 .: .. .. .. .. .. 73
:, ! t
: . . H
, 3 4. Ciclurile .. .. .. 86
5 Oroanizarea gestionarea memoriei ..... .. . 86
t-.). . o . .
1 3.5. l. Modul real g
7 ..1, 3.5.2. Modul protejat. .... ...... ... .. .... . .. . ... . .. .... .. . .. .i03
1. 3.5.3. Modul virtual.....:::: :: ::::::: I o4
/ 3 .6. Initializarea microprocesorului .. .. I 05
' 3.7. Sistemul de intrare .... . ... ... 105
1.8. Sistemul de ntreruperi.. .. ... ... .... . ... .... .. .. . ... .. 109
. . 3 9 Unitate cu microprocesorul 80386 .:.... I 10
. . , 3: I O. Conectarea memorii ior la o unitate cu microprocesorul 80386. I 13
Cap. 4. Microprocesorul Pentium II : :::::::: :: ::: 113
4. 1. Caracteristici generale . 113
4 2. arhitecturale .. . ... . 121
4
3 Configuratii ale procesorului .. !24
4 4: Conectare; microprocesorului Pentium fI pe placa de . .. 125
4:5. Alte microprocesoare din familia P6 .:::: ::::::::::
127
Cap. s. Microprocesorul 68000 ... .. ... .. . : 127
s l Prezentare ... .... .. .. . ' l ?7
s:2: Terminalei: ................ ... ... .... . .. .... . . .. . ....... ......... ....... .......... .. .. -
Sl!'Tl.i\U: Cll flll<:R< Jl'H< l \RI :
5.3. Structura .. .... .. . . .. .... .. .. .. . . 131
5.4. Cicluri le .. . .. ...... ... . . 135
5.5. Funciionarea n modul asincron n modul sincron ...... 138
5.6. Organizarea gestionarea memoriei .... 140
5.7. Sistemul de intrare I ... .. . ... .... . ... I <11
5.8. Sistemul de ntreruperi .... . .. ... 14 J
5.9. Unitate cu microprocesorul 68000 .... .. ... ... 150
5.1 O. Conectarea memoriilor la o unitate cu microprocesornl 68000. 150
Cap. 6. Microprocesorul 68030 ... .... 153
6. 1. Prezentare .. . .. ......... . 153
6.;2. Organizarea gestionarea memoriei...... 153
6.2. 1. Unitatea de gestiune a memoriei .. ..... . ... .. .153
6.2.2. de translatare a adreselor ......... 158
r 6.2.3. . ..... ... ....164
, Cap. 7. Comanda cu microcalculatorul PC... .. .. 167
7.1. Portul paralel .. . .. . .. . .......:.. 167
7. 1. 1. Standardizarea portului paralel .. . ..... 168
7.1.2. Caracteristicile de ale portului paralel . 168
7. 1.3. Cabluri caracteristici electrice . .. .... 172
7 .1.4. Moduri de lucru... .. .. . . . 175
7. 1.5. ntreruperile la portul paralel ..... 191
7. 1.6. Utilizarea porcului paralel prin intermediul BIOS-ului .. J 92
7.1. 7. ............. 193
7 .2. Portul serial .. .. .. . ... . ........ ... .. . .. . .. .. . .. ... . ... .. . 237
7.2.1. Bazele serie a datelor .......237
7.2.2. Standardul RS232 ..............243
7.2.3. Standardele RS422 RS485 .... .. ..... 245
7.2.4. Cabluri conectori .... .. ..... ... 250
7.2.5. Magistrala FC .. ..... .. . ..253
7.2. 6. Portul serie al calcul atorului PC... .. ..259
7.3. Portul USB......... ...... .. .269
7.3. 1. Stadiul actual al periferiei la calculatorul PC ....269
7 .3.2. Caracteristici generale ale USB ..... . . . . 270
7.3.3. Caracteristici fizice ale USB ........270
7.3.4. Protocolul USB .. . .. . ... .. . .. .. . .. ... .. .. 275
7.3.5. Configurarea sistemului USB . ...277
7.3.6. Codificarea datelor. .. ... .. .. ... .... ... .. .. 277
7.3.7. Transferul datelor .. .. ... . .. ... .. . ... . .. . .... .. 278
7.3.8. USB 2.0. .. ... .. . .. . .. . .. ... .. .. .... .. 280
7.4. Magistralele de intrare I
7.4.1. Placa de a unui PC ...........280
7.4.2. Magistrale .. ..... ... . .. .. .. . ... . .. ...... .. ... ........ .. .282
7.4.3. Magistrala ISA ... ...... ... ...... ....... .. ... ....... ... .. . ... .. .... .283
7.4.4. Alte magistrale de I/E ..... .. . . 287
7.4.5. Magistrala PCI ... .. ..... ...287
Bibliografic .... .. ..... .. ..... . .. 293
Capitolul 1
INTRODUCERE
calculatoarelor se printr-o dinamicitate.
de aproximati v 60 de ani, istoria calculntoarelor este deosebit de h
Calculatoarele au evoluat pe mai multe dimc11
consllln cost. Prime le calculatoare, de uz general, lucrau Ja de tact
tle KHz, gestionau o memorie de zeci de ocupau o ncn
consumul era la nivelul de zeci de KW iar prctul era la nivelul zecilor sau sutelor di
de dolari. Calculatoarele de uz general de azi la de tact de 1-3 t
o memorie de sute de Mo. consumul este de aproximativ 500 \-\
tot cu monitor) iar este la nivelul sutelor de dolari. Aceste date, sum.1
generale, gradientul aJ calculatoarelor.
Motorul acestei ii constituie, n opinia autorului, domeniul 111
procesoarelor. Calculatoarele au evoluat n lipsa microprocesoarelor dar semniftl
au fost acestora. Evolulin microprocesoarelor este, de asemr
istoria lor este mai de aproximativ 30 de ani. Se va 1111
doar faptul primul microprocesor, 4004, al firmei Intel era pe 4 inlo(
aproximativ 2.900 tranzistoare n timp ce microprocesoarele Pentium IV, de U7.I,
firme Intel, sunt pe 64 peste [Link] tranzistoare. M1
procesoarele au [Link] unui nou tip de calculator, microcalculatt
tipul cel mai fi ind PC-ul. Dezvoltarea PC-l11
au determinat impulsionat dezvoltarea altor domenii ale calculatoarelot
exemplu edificativ fii nd Internet- ul.
. Microprocesoarele se mpart numl!rul de linii ale magistralei de dol
microprocesoare pe: 4, 8. 16, 32 64 biJl microprocesoare deosebit de perfon11
scumpe, la care magistrala de date poate avea mai mult de 64
de uz general ntlnite ln microcalculatoarele de lip PC n sisteme orientate pe 11plir
carte descrie microprocesoarele de uz general pe 16, 32 mai 64 u1
problema microcalculatorului PC n monitorizarea co1n11
aplicariilor externe.
1.1. de ale microprocesoarelor pe 16,
32 64
n acest paragraf vor fi prezentate, pe scurt, principalele de evolL1\ic
microprocesoarelor pe 16. 32 64 raportat la microprocesoarele pe 8
, Dimensiunile magistralelor de date adrese
pe 8 biti, magistrala de 8_ biti iar ele adrese A
16 bili, gestionarea unui ele rneni.o-rie de 64 Krt La miCroprocesonr
-- -- --
10 I'. CU l\llCRlll'Rt H '. LS< 'I.I HI:
64. aceste dimensiuni cresc. Astfel de date. 1. . V
rq,sgectiv 64 ceea ce-a duS"la_ vitezei de cu _ na 1 ortunle
Tn,trudt aca a e ee I I era ;.i_n, CIC u.._a
cele e 16, 32 i 64 se mai ntr-un smour ciclu. transferul cu
memoria cu po1tunle se poate ace pe cuvant, ublu cuvnt sau quadmplu cuvnt, se
la toate microprocesoarele pe mai mult de 8 transferul I_a ni vt:I ele octet.
l n acest fel se compatibil itatea cu programele scnse pentru microprocesoarele
pe 8 din familie, se flexibilitate pentru conectarea
microprocesoarelor n sisteme.
liniilor de adrese de
la 20 linii de
pe i Mo la 36 ad:Wi II. as1gurand
gest10narea umu Cle memorie fizic de 64 Go.
.i Structura - .1
inte;ne a fost de tot mai ..
pri[l de dar
-perin!s
de tact de pe placa de a s-a impus a fost !:!,tilizarea a
2 de tact: unul extern umil intem cu tiecven a de cea cu
un actor mt e O rezuffn asttefiecven e e tact man nu
a fost un aport semnificativ a fost adus de e structurale.
_prin s-_ prin a
C0!1C_eP-te: su aducerea n avans de asamblare.
microprocesor pe 1 , ___ 64 mai rnu te care relativ
independent, asigurnd astfel, de exemplu, aducerii codului
cu altei rezultnd de t iJ}W_. La microprocesorul 8086
doar 2 astfel de interne dar la 80386 6 astfel de de timp
fi ind cu att mai mare cu ct de este mai mare.
Implementarea conceptului de aducefe i'! aVansL permlte __.!!!!.f.g>procesparelor
mai eficient timpul resursele externe. Astfel,_ n timpul unei
mi surit solicitate magist ralele externe, microg;&sorul aduce n ayaqs. din
[Link], instruqiuni le depune n o tam2on de unde
vor ti luate n vederea Ufiitatea ae microprocesorului
va mat rapta, ntruct preluarea Se face din interior, rezultnG astfel
timp.
-- Implementarea conceptul ui pern1is ca,_ la un moment
dat, ntr-un microprocesor se a e mat mu te m 1 ente
crescnd astfel de executate n un[tqtea de timp.
. Pe lngii' conceptele de mai sus, la m1croproces-oarele pe 32 au mai fost
implementate altele: t;:l_l'._ecujfa.
toate avnd ca scop vitezei de S_([Link],tea micro-
- rocesorul oate executa n _Re3qM de timP. dar
acesta este limitat de ntre ms care_i:iu permit, uneori,
n micro rocesorul ad1ice n avans mai multe
le intern aste mct mm11n1zeze inter epen ente e m re
Cap. I. Introducere
I I
n n@a qrdine, crescfuld de ti111p.
este deose6lt de ntruc1 oferit de banda de asamblare este anulat 1a
modifi carea normale de a unui program iar n cazul unor
pierderea de timp este mai mare ntruct nu se poate afla adresa
dect celor de dinainte. Conceptul
previzionarea de a astfel pierderea
nu se putea afla adresa dect
Mai multe moduri de lucru
. - - -
peste J mai multe moduri de lucru.
microprocesoare pe .16 !!lli au 2 .de lucru care au denumiri diferite, la diferite
.fa111il ii._ ele se numesc: ninirn i maxim la 80 6 i ptil izator .i su ervizor la
' !.ndi un mod este mai privilegiat mai privi legiat.
La evoluate mai multe moduri de lucru, cu diferite grade
exemplu, la 80386 4 nivele de privilegiu.
_ 'Kjodurile _de se n general, prin program, cu lui 8086 la
care instalarea se face prin hardware.
Existenta mai multor moduri de lucru este o a unui micro-
restirselor [Link] software ale unui sistem. resurse,
iTI_e_rno.rii, porturi, mi pot fi folosite dect un program n modul
astfol contra acceselor neautorizate la ele. microprocesoarele
care au m- ele de rivilegiu se oate face o jerarhizare a [Link]: astfel
nucleul sistemului de operare va avea maxim
1
avnd astfel acces la toate
resursele siste u1L i driverele sistemului de o erare vor avea nivelul oe privilegiu
imediat ca turnare nu vor avea acces la une e dm resurse iar 2ro ramefe"
' [Link] yor avea nivel minim de privilegiu avnd accesul la resurse imitat. In
' acest fel sistemul de operare este protejat contra acceselor neautoriiefaresursele sale.
rezultnd astfel o a sistemului de erorile utilizatori lor.
- Si stemul de ntreruperi }
microprocesoarele pe 8 ntreruperi externe. La pe 1 g,_32
. 64 ntreruperi externe interne. din exterior, nu
[Link] de program 11 l!!l.1RUI 2i sunt
_n raport cu Fiecare microprocesor are terminale dedicate
pen1Tuaceseintreruperi:
ex teme pot fi n 2 categorii: mast:abile si nemascabile; mascarea
realizndu-se prin program. Cele mascabile pot sau fie luate n considerare,
cui dore te ro ramatorul iar cele nemascabile vor fi [Link] ntotdeauna n considerare.
Tratarea lor se face prin intermedi ul unei ta e e care adresele de nceput ale
rutinelor de tratare diferite tipu1i de ntreruperi. Pentru cele nemasc'!bile
microprocesorul un acces la o intrare n bine de unqe
aunge la rutina de tratare iar pentru cele mascabilc:; micro rocesorul a tea un vector,
pe linu e de date, e a ce care a generat cererea, iar acest vector l pentru a .
ajunge la intrarea din care adresa de rutinei de tratare.
au _ntreruperi eXerne nevectorizate, de exemplu 68000.- H--
12 SISTl::>.w ( :1_! !lllt:llC ll'f{t )( :1:sc l.\lli'
vin din interiorul microprocesorului, sunt se
de program n timpul au apJ}rut sunt smcrone cu microprocesorul.
Ele fie care apar naintea sau n timpul
unor de [Link] . cnncercare de a realiza o cu 0 sau o ncercare
de a executa o de un program care ntr-un mod
neprivilegit, fie De exemplu, microprocesorul 8086,
din fami lie, -lNf nn a executie va provoca generarea unei
ntreruperi interne. n acest fei pot fi emulate noi Trc;tare_a [Link]
iiiterne este lot doar acum, pentru fiecare corespunde
.ojntrare)n iar n cazul vectorul este generat inte{n.
pentru implementarea de si steme mu!titasldng
Microprocesoarele peste 8 pentru implementarea de sisteme
multitasking. Primul microprocesor la care se ntlnesc este 80286 al firmei Intel, pe 16
microprocesoare, pe 32 64 aceste
Microprocesoarele firmei Intel, de la 80286 n sus, memoria n mai
multe moduri. Modul protejat este cel ce microprocesorului toate
legate de implementarea sistemelor multitasking. Astfel, n acest mod microprocesorul
prin hardware prin microcod:
o separarea segmenlelor de memorie ntre diferite taskuri ntre acestea sistemul
de operare;
segmentelor de memorie proprii unui task; n acest fel fiecare task are
propriile segmente de memorie care nu pot fi accesate de alte taskuri dect el
acest lucru, de asemenea sistemul de operare are segmente de memorie
proprii, protejate contra acceselor neautorizate;
(l comutarea taskuri lor cu schimbarea a microprocesorului
noului task.
Desigur, un sistem multitasking poate fi realizat microprocesoare care
includ de mai sus, dar lor enorm munca programatorilor
care nu mai trebuie realizeze prin program de mai sus ci se
microprocesorul de ele, in plus, semnificativ de
memoriei
a rnic_roprocesoarelor a constituit-o modul de gestiu!1e
a memoriei. La microprocesoarele pe 8 singur de adrese att pentru
programator. ct 111icro_procesor. La 111icroprocesoa1:ele pe 16
adreselor logj_9e, pentru programator adreselor fizice, pentru micro rocesor.
ca peste 16 biti un spatlu, cel al a reselor liniare, o OST!.
tot de '=-
mai multor de adrese munca programatorilor.
nu mai trebuie cont de constrngerile fizice ale microprocesorului, n plus, mai
programatori pot lucra independent scriind taskuri care pot rula n paralel pe
microprocesor.
acestor avantaje mai cere, ca microprocesorul suporte memoria
Toate microprocesoarele de la 80286 n sus au Mecanismul
de memorie permite exti nderea memoriei interne a unui sistem
1:ap. I . lntrod\1ccrc
la capacitarea da1a de memoria i11te1 plus memoria pe suport extern. n tim
execu[iei une i inst1uc1iuni, microprocesornl nu operandul dorit
memoria ntrerupe execu1i:1 instructiunii, care intervine sistemul
operare care operandul cerut pe suportul extern l l
memoria ntr-o pc c:ire o anumite criteri i apoi fie r
instn1ctiunii, fie cont inul'\ cxecuna acesteia. Eliberarea se face prin scri ere
suportul extern. Transferul ntre memoria cea nu se face la nivel
octet ci la nivel ele blocuri, segmenle sau pagini ntregul mecanism este transpan
ut il izatorului care nu arc nimi c de pentr u lansarea n a mecanismului
memorie La ni velul utilizatorului se va o a vitezei dar st
implementate, la nivelul sistemului de operare metode pentru minimizarea
tehnici. Mai mult, microprocesorul supo1i hardware pentru impl ementarea accs
tehnici . De exemplu, o asemenea n felul atunci cnd sislen
de operare blocul cu operandul dorit pe suportul extern, l va aduce n memo
va scoate din memoria un bloc, pe care l alege anumite crite
1
care va trebui fie scris pe suportul extern. Dar acest bloc a fost adus n prealabil de
extern tot n cadrul unei a mecanismului de memorie da
sistemul nu a fost scris de la ultima aducere de pe supor
extern, deci nu a. !ost modificat, decide nu mai este rescrierea lui pe supor
extern oricum se acolo. ln acest fel se ti mpul de
blocului pe supo11ul extern, timp care este semnificativ seama de faptul ori
suport extern este foarte lent raportat la viteza microprocesorului. Microorocesu
1
suport hardware pentru n sensul are ranguri, pentru fiec2
segment sau de memorie, care segmentul sau pagina au fost modific<
de la ultima lor aducere 11 memoria
]J_pplernentarea mecanismului ele memorie cere o fac ilitate anur
. osibili tatea de intreru ere a 1n timpul lor. Toate 1111croprocesoic
de a 8 - ,o 1n sus au facilitate spre deosebire de cele pe 8 restul pe
care nu permit ca lor fie ntrerupte.
mai multor de adrese impune un mecanism de translatare a adresei
.il act,rese lin_iare sau fizice. 111ec<1nism la fiecare pes
8 va 11 dem1m1t. generic, [Link] (acroni mul de la "Memo1y Management Unit"). Unc
microprocesoare includ MMU-ul, ele exemplu cele ale firmelor Intel Motorola
timp ce la microprocesoare, de exemplu cele pe 16 32 ale firmei Zilog. MMU-
este ex!ern. ln cai1e vor fi descrise doar microprocesoare ce includ MMU-ul.
ln forma sa cea mai un MMU poate fi realizat printr-o care trebu
se afle n memoria fig. I. I. Adresa de programator, este l
index n iar din tabela astfel va fi tocmai adre:
Mecanismul este foa11e simplu dar poate fi aplicat doar da
microproce,sorul memoria ca fiind locati ile succesive avnd adre'.
succesive. marele dezavantaj al acestei este acela tabela va trebui ail
dimensi_uni ca memoria ce trehuie ca urmare se pierde 2/3 d
memoria ln nu este
Unele microprocesoare memoria ca fiind n blocuri care p
fi gestionate independent. 2 variante de blocuri: segmentel_e, card;tint [Link] c
dimensiuni variabile mari, de e:-:emplu pot fi de 4 Go la microprocesorul 80386
14
prin. ?9ft'"..?re_
ale mi croprocesoarelor. din. punct de
n figura 1.6, iar figura 1.7 prezmta. [Link] a ]
Din schema sa se c1rcu1tul este 2 g1 upe de 4;.
porii cu 3 avnd o intrare de val idare. j
Tabelul 1.3 c1 rcU1tulu1. }:
1/G '2/G 1Y4-l 2Y4- l
-
Cap. 1. Introducere
;. l Al
Vcc
'E
. IA2
1Y2
: IA3
1Y3
;. 1A4
7
4
IY4
'
-
L
.
I G s
2
. 2Al
4
.
2A2
4
2Yl
r
2A3 2Y2
::
.
t
;. 2A4 213
.
2Y4
.
- r .
2G r
GND
t
IA!
IA2
IAJ
!A4
IG
2Al
2A2
---r>
2AJ
-+
2A4
-----
2G
Cir cuitul amplificator/ separator 74LS245
Fig. 1.6. terminalelor
cin.:uimlui 74LS244
l Y!
IY2
I YJ
JY4
.
t-'ig. 1.7. S.:hema a
2Yl
circuitului 74LS244
2Y2
2Y3
2 Y4
o o IA4-l
o I IA4-l
I o A 3-a stare
l 1 A 3-a stare
2A4-1
A ,3-a stare
?A4- l
A 3-a srare
:
\ folosit pentru amplificarea/ se ararea magistralelor biclirectionale
. ale microprocesoarelor. terminalelor, din punct e ve ere este
; n fig. l .8, iar fig. l .9 schema a circuitului.
Din schema sa se circuit ul este din 8 perechi de porii
cu 3 bjdirectionale. o intrare dc_yal idare entru toate e o
t intrare pentru stabilirea directiei de transfer. Tabelul l .4 circuilll ui.
Tabelul 1.3. Func!ionarea circuitului 74LS244
-
:l
l
l l)
l
<ll----:---
<11----
;>
Al
A 2
A3
A4
t\5
AO
A.7
AS
DIR
G
Al
A2
A3
A4
AS
A6
A7
AS
DIR
G
Vcc
Bl
132
B3
7
84
4
L 85
s
86
2
4
B7
5 BS :]
GND
f>
SIS IFi\11" 1 :I : WUU Jl'l(C J<:l :SO,\RI;
Fig. 1.8. terminalelor
circuitului 74LS245
Fig. 1.9 Schema a
circuitului 74LS245
I . l ntioducere
IG DrR
A8-I
B8-I
o
o
BS-1
o I
AS- I
I
X A 3-a stare A 3-a stare
-
Tabelul I .4. circuitului 74LS245
Circuitul registru 74LS373
Este un circuit registru cu 8 rangur i, CLI 3 stilri, folosit, n carte, pent
demultiplexarea magistralelor 111icroprocesoarorului 8086. terminal ei
din punct de vedere este n fig. I. I O, iar fig. 1.1 1 scher
a circuitului.
t
ID
Vcc
l Q
2D 2Q
3Q
i
4Q 4D
4
SD
L
SQ
6D
s
6Q Fig. I. l O. terminale Io
7D 3
7Q circuitului 74LS373
8D 7 llQ
3
oe
G
GND
Din schema sa se circuitul este din 8 bistabi le D cu
o intrare de validare pentru toate IOC o intrare pentru
bistabilelor, G, care trebuie fie la I logic pentru a se realiza Tabel ul I.
ci rcuitului .
IOC
G
8Q- IQ
o
o Vechiul
o
I 8D-ID
I
X A 3-a stare
Tabelul I .5. circuitului 74LS373
Toate circuitele descrise acum pot fi n tehnologiile HC, HCT
Al-IC AHCT.
22
oe ---ti>
lD
20
3D
40
SD
60
70
80
G
Circuitul memorie EPROM 27256
SISTI:M1: c .li 1\ I I< .H< >l'Rc H ' l '.Sc >.\fli
-----+ IQ
---!l> lQ
3Q
SQ
Fig. I. 11. Schema a
ciicuitului 74LS373
i
,
t;.
;1
i
,).
Este un circuit memorie EPROMLavnd 32 Ko timpul de acces, !Z
n de yarian@_sub care se de 90-200 ns. terminalelor, din
punct de vedere este n fig. I. 12. i
Ci rcuitul are 15 de adrese, Al4-0, 8 li nii de date, 07-0, o linie de t
Rrogramare, /CE/ IPGM, o linie de validare a /OE, o intrare pentru tensiunea
ue programare Vpp Vcc GND. se citire din circuit,
atunci liniile 07-0 sunt if!!rart;.[Link] trebuie fi e o cu cea de la
Vcc iar citirea datelor se face n conformitate cu diagrama din fi g. 1. 13.
Vcc
-
Al4
07
..
AO
2
.
7
2
5
6
00-
,__ r
Fig. l. 12. termina[e[or
circuitu lui ele memorie 27256
.
-
"
OF.
.
-
CE /PCM
-
Vpp
GND
A J4-0
'1 1'
i
tCE I
l I .
'------t- . - - -
I
I
CE
OE
I
07-0
Fig. I. l 3. Ciclul de citire din ci rcui tul 27256
tAcc - timpul de acces
max.90ns
max. IOOns
max. I20ns
max. 150ns
max.200ns
TCE - ntrzierea de
max.90ns
max. IOOns semnalul de
max. l20ns
max. 150 ns
max. 200 ns
oE - ntrzierea de
max.35 ns
[Link] ns semnalul de validare
[Link] ns
max.50ns
max.50ns.
Tabelul 1.6. Timpii necesari la cicl ul de citire
. A
1
se ctrcuite la o unitate trebuiesc
111a1 mu trmpr. 1mpu care tre u1esc sunt n iar valorile lor m
sunt date n tabelul 1.6. Au fost considerate 5 variante de circuit, cu timpi de acces
Pent ru cl in carte nu faci litatea de programare a
circuitului ca urmare nu va fi
if
24
SISJ'l :,\11 t .1 ,\ll<.llCll ' ll< u :J."< 1 \ HI :
Circuitul de memorie EPROM 27512
Este un circuit memorie EPROM. avnd capacitatea ele 64 Ko timpul de acces,
n de varianta sub care se ele 90-200 ns. Contigura!ia terminalelor, din
punct de vedere este n fig. I . 14.
Circuitul are 16 de adrese. A [Link] linii de date. 07-0. o linie de se lec.U&
(CE. o lini e de pr_Qe:ra1mre, /QE/ Ye.p Vcc GND.
se citire din circuit, atunci liniile 07-0 sunt la intrarea de validare s.i,
j)iogramare trebuie fie O logic iar citirea datelor se face_ cu
cea cl in fig. l. 13. -
.Pentru din carte nu fac ilitatea de programare a
circuitului ca urmare nu va fi
Vcc
.
Al S
.
2
07
7
.
AO
.
5
I
2
00
- .
. CE
-
-.... OE /Vpp
GND
_t
Fig. I. 14. Configuratia terminalelor
circui tului de memorie 27512
.
.
.
Circuitul de memorie SRAM 62256
-+
Vcc
.
Al4
6
I/07
AO 2
.
2
s
6
uoo
-
;;.
cs
-
-
-
OE
-
WE
GND
if
Fig. 1.1 5. terminalelor
circuirnlui de memo1ie 62256
.
.
.
-
Este un circuit memorie SRAM, avnd capacitatea de 32 Ko timpul de acces.
n de varianta sub care se de 45-85_n?.. terminalelor, din
punct de vedere este n figura 1.15.
Circuitul are 15 linii de adrese. Al4-0. 8 lini i de date I/ 08-1, o intrare de
o 111trare de vaffciare a /OE si o de a scrierii,
C!!.f:.. Citirea din circuit se face n conformitate cu diagrama din figura I .16 iar scrierea
n circuit se face n conformitate cu diagrama din fig. 1. 17.
Timpii care trebuiesc la citire sunt n iar valorile lor
sunt date n tabelul 1.7.
Timpii care trebuiesc la citire sunt n iar valorile lor
sunt date n tabelul 1.8.
Al4-0
WE
cs
OE
l IRc I
I f,11< I
'
-------------+--
! --- -------
! Ies I
I loE r
_r-
I
1/07-0
___
Fig. I. 16. Ciclul de citire di n circuitul 62256
1 t wc
I I
IA. . ,\\V I
I
-_,,- _..,_I I
-----,v i
Al4-0
OE ' lcw iLm __ _
i._, _ ________ fjll._Jr - -----
twr I
cs
i f to_, , __ ______ Je> I
:.<L
I I " " I
I I I
I
' lr>1v I Lou
i"1 r 1 ""''----fi i
_ __________ _!,,,---- IN => _
WE
l/08-1
l/08-1
Fig. 1.17. Ciclul de scriere n circuitul 62256
26
. .\IF el' ,\lfl :1tc l l'IH lCl'.S< l \RI '
Cin.:uit HM6?256B-4 HM62256B-5 HM62256B-7 HM6?.256B-8
lRc - durata unui
min. 45 ns min. 55 ns min. 70 ns min. 85 ns
ciclu de citire
t
1
\1< - timpul de acces
max. 45 ns
la citire
max. 55 ns max. 70 ns max. 85 ns
tcs - ntrzierea
de semnalul de max. 45 ns max. 55 ns max. 70 ns max. 85 ns
loE - ntrzierea
max. 55 _:._J de semnalul de max. 30 ns max. 35 ns max. 50 ns
validare
' Tabelul 1.7. Timpii necesari la ciclul de citi re
Circuit HM622568-4 HM62256B-5 HM62256B-7 HM62256B-8
twc - durata unui
min. 45 ns
ciclu de scriere
min. 55 ns min. 70 ns min. 85 ns
tAw - timpul de acces
max. 45 ns
la scriere
max. 55 ns max. 70 ns max. 85 ns
tcw - durata semnalu-
min. 35 ns
lui de
min. 40 ns min. 60 ns min. 75 ns
twp - durata semnalu-
min. 30 ns
lui de scriere
min. 35 ns rnin. 50 ns min. 55 ns
lo1-1z - timpu 1 de
dezactivare a max. 20 ns max. 20 ns max. 25 ns max. 40 ns
tow - timpul de
prestabi li re a min. 20 ns min. 25 ns min. 30 ns min. 35 ns
dalelor
toH - timpul de
poststabilire a min. O ns min. O ns min. O ns min. O ns
datelor
Tabelul 1.8. Timpii necesari la ciclul de scriere
I
;
-Goe
I
i
\i
t!
i
0 . 1.'L t.C" ' ...
"
l 1._1
' ' I \
r::.. ._,
J. t,.I ,_. \ r. (.,: Q.i(.. \
- [Link] '.'.\, .... \\'..:!':. d ...< J ..
-:j - _,
Capitolul 2
MICROPROCESORUL 8086
t: 2.1. Prezentare
'f' Microprocesorul 8086 a n anul 1978 este _
b.i!Lcare a cunoscut o utilizare. lui a fost la scurt timp de o famil ie
de componente: generatorul de tact 8284, controlerul de 8288, coprocesorul
matematic 8087 coprocesorul de intrare I 8089. n anul I 979 a micro-
k procesorul 8088 care a toate caracteristicile microprocesorului 8086 doar
:( magistrala sa de date era de numai 8 a cunoscut o
if mai ales sale n microcalculatorul IBM PC-XT.
Printre caracteristicile microprocesorului 8086 se pot aminti:
r: r:_gistrele interne magistrala de date sunt pe 16
o a adresa dire.s;U...1fade memorie,j.,
il o de lucru {? MHz la cea mai
1. existnd variante pe 4 MHz, 8086-4 8 MHz, 8086-8) ct unei
t structuri interne pe conce12tu!.je care permite aducerea d1
memone, lll avans, a instrucpunllor, n timpul unor ciCiliii accese la magistrale;
o poate acoperi o Cle'"plicafi l celor moduri de [Link] ale
sale: modul minim pentru relativ simple, n care microprocesorul genereau'i.
el semnalele necesare transferurilor cu memoria cu porturile de intrare I
modul maxim, pentru complexe, inclusiv sisteme multiprocesor,
., n care semnalele de comana penfhr ntemotii'1i porturi sunt generate de un
,,; controler de 8288;
o magistralele de date adrese sunt multiplexate iar o parte dintre termi nalele de
au rol dublu; aceasta a pen111s ncapsularea circuitului ntr-o cu
doar 40 terminale.
Istoria microprocesoarelor este dar deosebit de Gradientul
microprocesoarelor a fost este deosebit de mare. microprocesoarelor
de azi sunt superioare de cele ale lui 8086. Sigur atunci cnd se
performantele a 2 microprocesoare se iau n considerare mai mult i factori dar, ntruct nu
'li , '
se dezvoltarea acestui subiect n carte, se vor prezenta doar 2
"'; microprocesorul 8086 include 29.000 tranzistoare pe cnd microprocesoarele
Pentium IV de azi includ peste 30.000.000 tranzistoare,
,,
:!: tactului microprocesorului 8086 este de 4, 5 sau 8 MHz pe cnd
r tactului microprocesoarelor Pentium IV de azi este de 1.2 - 3 GHz.
!, n aceste s-ar putea pune ntrebarea: la ce studiul micro-
procesorului 8086, n anul 2002? Autorul studiul acesttii microprocesor
:t este uti l din cel motive:
t,
I
28
SIS'J'l'i\.11'. ( :t, i\l lCR( Ji'lH J( :l'S( ,,,!{, r
I 2. '.l[icropn>< . :-!UH6
a) familia de microprocesoare Intel are ca microprocesor de ca microprocesor l.
de pornire, circuitul 8086. Toate microprocesoarele care i-au urmat
caracteristici le sale de pe care, evident, le-au dezvoltat completat. ,
b) Toate ntre microsistemele pe 8 cele pe 16 pot fi optim, t.
di n punct el e veuere didactic, la nivelul unui microprocesor 8086 (strlJl:tura hardware,
organizarea gestionarea memoriei. conectarea porturil or, sistemul de ntreruperi ,
pr;gramarea). acestor sunt titile necesare la trecerea spre
sisteme bazate pe microprocesoare pe 32 att pentru de sisteme ct
.,
pentru cei care pun n veri fi astfel de sisteme. 11
2.2. Modurile de lucru terminalele
Microprocesorul 8086 poate lucra n 2 moduri : modul m1111m cel maxim.
a mai multor moduri de lucru se la toate microprocesoarele peste 8 ,,
Cele pe 16 au doar 2 1noduri de lucru iar cele pe 32 au 4 1noduri de lucru.
mai multor moduri de lucru este o n sistemele cu microprocesoare '
romplexe, inclusiv n cadrul PC-urilor, ele ordonnd diferitele stratud de program din :
punct de vedere al privilegii lor. Cu facilitate se separarea
resurselor hardware software ntre diferitele straturi de programe. Astfel, de exemplu,
nucleul sistemului de operare va rula n modul care maximul de privi legiu, avnd "
acces la toate resursele sistemului. Alte module din sistemul de operare, de exemplu
driverele pentru diferite periferice, vor rula E.e un nivel de pri vilegiu mai mic
la mai putine resurse iar erogramele vor rula pe nivelul de privile iu
minim avnd acces la unele resurse. ln general, trecerea mtr-un mod n
altul se face prin controlate.
Mi croprocesorul 8086, este cel mai ,/
rudimentar, din acest punct de vedere. Cele 2 moduri nu privilegi i diferite ci ele
se n anumite hardware, pentru tipuri de diferite iar
trecerea dintr-un mod n altul se fake prin hardware: terminalul MN/ /MX la cart<,
prin I !oaie se cere modul minim iar rin O logic se cere modul maxim.
terminalelor microprocesoru u1 8086 este n figura 2. 1.
n continuare vor fi descrise sem ni le terminalelor. Se va ncepe cu terminalele
care au rol comun n ambele moduri de lucru.
e A 191 S6 - AJQ/S3 ("Address/ Status Bus"): multiplexate cu trei n timpul
l cele mai semnificative linii ale magistralei de adrese iar n ti mpul
T2 - T4, de stare: S6 este ntotdeauna O, SS
indicatorul pentru ntreruperi IF iar S4 S3 registrul de segment utilizat la :
calculul adresei fizice.
o ADI 5 - O ("Address/ Data Bus"): multiplexatt de adrese cu trei
111 starea Tl magistrala de adrese iar n T2 - T4 devine "
de date.
" IBHEI S7 ("Bus HiQh Enable/ Status"): cu trei n timpul Tl
are sau nu loc un transfer a magistralei de date 11
are loc. iar n timpul sH\ri lor T2 - T4 este bit de stare.
TEST
INTR
NMI
RESET
CLK
Vcc
GND
MN//MX---"",,,i
8
o
8
6
--.... - =:E:t=-- -c:u,:=1.:::c.
AD15 -0
/BHE /S7
11-----lli'ls> /RD
IRQ l/GTO CHOL
11-----{J'il:>- / RQ //GTJ (HLD
/ LOCK (!WR)
IS2 (M //IO)
I S l (pT !IR)
ISO (/DEN)
f;> QSO (ALE)
r:;.... QS I (/TNTA)
<3 READY
Fig. 2. l. Terminalele microprocesorului 8086
0
IRD cu trei atunci cnd microprocesorul exeCL
un c1du ae t:1 t1re sau 111trare. - - ---
0 'ff!.[Link] intrare pentru si ncronizarea cu ci rcuitele de rnemo
1
po1tunle 111a1 lente. -
0
INTR Reguest"): pentru cereri de ntrerupere mascabile.
0
("[Link] Test Control"): intrare de instruqiu:;; Vh\ IT: dacfl
1
TEST =
atunci programului n caz contrar microprocesorul <
poale fi pentru sincronizarea microprocesorului cu evenimente extern
0
NM! ( 1n
1
;[Link] Request"): cereri nemascabil
0
RESET ( System Reset ): mirare pentru 1zarea microprocesorului.
CLK ("System Clock"): intrare de tact cu frecven\a de 5 MHz factor (
umplere de l/3.
. n continuare vor fi prezentate terminalelor pentru modul rninir
term111alul MN/ /MX = l.
!;!! 110 ("M_e morv 1_10 Control"): cu trei avnd rol ca S2
modul daca are valoarea I se un ciclu de acces
iar are valoarea O un ciclu de transfel' c
portu nle ele intrare I iesire
. , .
1;-.
s1sT1::vw 1:1
1
i\llC:H< ll'R< i1 :1:.sc>i\ J(J '. I
I
:;o Cap. :Z. lvlicroprocesoiul 8086 31
r: ,_.. .. . ' .1-.:J1_,, '
o /WR ("Write Control"): cu trei atunci cnd microprocesorul ''.
ciclu ele scriere sau "2.3. Structura
" /!NTA ( "Interrupt Acknowledge") : cu trei care se atunci cnd
\,,
'
microprocesorul un ciclu de acceptare a unei cereri e mtrerupere mascabile.
("Address Latch [Link]"): se atunci cnd pe magistrala
de adrese/ date sunt active adresele; se poate folosi pentru demult1 lexarea :
n
e i5f! IR "Data Transmit/ Receive"): cu trei avnd rol ca S I n i
modul maxim: sensu trans eru ui e mag1stra a e ate: I transm1s1e f<'
iar mseamna rece[!tte. .
o /DEN _("Data @able"): Cll transferul de date pe
f!OLD ("Hold Request"): intrare pentru cerere de cedare a magistralelor.
" HLDA ("Hold Acknowleclge"): la cererea de cedare a megistralelor
semnificnd acceptarea acestei cereri; se ce microprocesorul s-a i.J
decuplat de la magistrale. .
tenninale dar pentru modul maxim, terminalul MN/ /MX
sunt descnse rn continuare.
o - O ("Bus Cycle Status"): ie iri cu trei sunt linii de stare care ti
pe care-l va executa micro rocesoru ; ele constituie
controler de 8288, care va enera semnalele de coman pentru
cu memorn e porturile; codificarea tipului de ciclu este n tabelu! 2. 1. f
/S2
o
o
o
o
I
l
I
I
_
/S 1 ISO
o o
o l
l o
l I
o o
o l
I o
I I
Tipul de ciclu
Acceptare a unei cereri de ntrerupere
Intrare
Halt
Aducere cod de
Citire date
Scriere
;
.;>
,J
Tabelul 2. L Codificarea tipului de ciclu la microprocesorul 8086 I
,.
IRQ! IOTO. IRQ! !GTJ ("Request/ Grant Bus Access Control"): linii J
folosite de microprocesor pentru primirea cererii de cedare a magistralelor
t:i n urma unui dialog de tip cerere - acceptare - cele linii
independente.
ILOCK ("Bus Prioriry Lock Control"): cu trei care atunci cnd se
microprocesoru1 nu cedarea magistralelor. Este sarcina unui arbitru J
de extern nu ca o cerere ele cedare a magistralelor
microprocesor amnci cnd /LOCK este activ.
QSJ, QSn: ("fnstruction Queue Status"): care exterio111lui ti pul de
de unitatea de din de n starea J
.>t
8086 [Link] __
enden una de Acestea sunt:
. o de executie " ecution Unit" rolul de a executa instructiunile;
--- . , iii!E::z d
uni ti,t tea de c91112gistralele. Bill "Bus Interface Unit") cu rolul de a
aduce 1i1emorie ea trans era Operanzii ntre llllitatea de
extei'ioi'ul microprocesorului.
Registre
de
date
Registre pentru
accesul n interi-
orul unui segment
Registrul indicatorilor
Unitarea de EU
I
I
I
IP
Registre
interne
Date
BIU
Magis-
trale
externe
I Unitatea de cu magistralele BfU
Fig. 2.2. Structura a microprocesorului 8086
a 2 duce la vitezei de lucru
frr ct de
mai. mace,.. vitezei este mai mare.
l![Link] cl in .familie, (de exemplu 6 la 80386 ).
'? _,_
'
;;1;;11'.i\IF. c:i1 \1 IUll ll'Rl l< .J:S< I.\ IU. j11
I
cu exteriorul. prin intermediu_l __ Jk','
magistrale de [Link]-ae- 20 linii, din care primele 16 sunt multiplexate cu magis_trala d_e :
dale iar ultimele patru, cele mai semnificative, sunt multiplexate cu de stare.
De asemenea semnalele de de stare. f
Unitatea de cu magistralele, BIU
o ... a micrnprocesorului anume aducerea
n avans a Blocul numit este de fapt o memorie FlFO. 1,
avnd capacitatea de 6 1 care. se introduc aduse n avans se
_la.. .cer.e1:e, E.Y., n acest bloc sunt cel doi EU nu
BIU pentru vi:eui1 acces la BIU va aduce n avans o
sunt pe 16 sunt preluate din rnen101ie de la adrese succesive
celeia la care. se ce se EU a rulat o cc -:;1
,i
de a de exemplu o ele .;
salt, BJU din memorie noua o transmite EU l
apoi umple citind n continuare ncepnd cu noua
facilitate_ un important n timp, ntnt::t o suprapunere 1
n timp, aducerea ca;-e; practic, face timpul de
aducere a Acest avantaj este anulat n cazul care
de a dar aceste cazuri sunt rapo11ate la
cazul n care sunt executate una
n timpul unei EU transferul unui operand ntre
el exteriorul microprocesorului (memorie sau port), el lui Bill adresa, pe
16 biri, a operandului tipul de ciclu ce trebuie executat. B!U adresa a
operandului, pe 20 printr-un mecanism ce va fi prezentat la paragraful 2.1.5, utiliznd
n acest scop unitatea UA registrele din interiorul semnalele de
pentru transferul operandului transferul ntre EU exterior.
C<! rerea de operand, din partea lui EU, apare n timp ce BIU un ciclu de aducere
a unei BlU ncheie ciclul nceput apoi noul ciclu.
Unitatea de
Are rolul ele a decodifica executa pe care le extrage succesiv clin
de -i'isfructiuni' -a1 BIU. n urma lor necesitatea unor
operanzi, lui BIU cererea de adresa pe 16 a operandului. n
timpul EU indicatorii de
de este n ntregime neocupat, EU aducerea
instructiunilor de BIU. De asemenea, n cazul unei de salt, EU
lui BIU noua a aducerea acesteia de BlU.
_,, Setul de registre
Spre deosebire de microprocesoarele pe 16 ulterioare, ale altor firme, la 8086
a fost o a registr,elor. dintre ele sunt generale,
majoritatea avnd roluri predeterminate. Se pot n categori i:
o registrele _de date, -
o registrele de segment,
0 regis(rele pentru accesul n interiorul unui segment,
o registrul indicator ele registrul indicatorilor de control.
Setul de registre este [Link] n fig. 2.J.
AX
BX
ex
DX
7 o 7
AH AL
BH BL
CH
CL
DH DL
Registre generale
o
Registru acumulator
Registru de
Registru contor
Registrn Je date
m f,ff:,.,plhn"""'
Registre de segment
15 o
t= '.J i! ; d
Reg;stre pentru acce5td n interiorul unui segment
15
semnalului READY. Impulsul de tact are facturul de umplere egal cu J/3. Pentru
adresa celeia care se Contme f generarea lui se poate utiliza circuitul 8284.
- -- 1 . . t. . . ; "e se va executa n cadrul segmentulut de coc . fi BIU - . I . I . 1- ,
adresei se at nmea cai . . , . . . 7 . . . . . . a a doar [Link] EU 11 acest lucru sau cnd
tontinutul ltu IP se combma cu cel al lut CS.; J aduce antici pat 1n care nu vreo acl1v1tate a BIU cu exteriorul
- .
1
d' t . 1 de conditii control FLAGS 'i se numesc inactive. ntre cicluri la pot exista oricte stari inactive.
Registru m ica on or ' F. 2 4 t- EU BIU 1 I
. . fi f ve ig. prez111 a activrtatea 111 cazu unei a drn o
este un registru pe 16 doar 9 sde_mrn d.t .. Ei JMP, de salt, de o instructiune MUL. sunr descrise n
. ;- I 8086 Di ntre 6 sunt m 1caton e con [Link]. r:: -
1
. . "'
111d1cator11 microprocesoru u1 . . ' . t. fi te_s.tati nlrucat semnalelor de depinde de modul n care
t' de microprocesor a unor ope1 po
1
. 1}
1
. . . . . . .
m urma . . . -t nucroprocesoru, se vor prezenta c1clunle de pentru modul m1111111 apoi
pot lua decizii n d_e __ .lor. sunt. . . . pentru modul maxim.
CF. ("Carry Flag"), bit O: indicator de se atunci cand apaie U\t . . . . . ..
uunsport sau un mprumut din/ n rangul cel mat sem111f1canv; . f Ciclul de c1t1re date tnlrare pentru moclt.I minim
PF ("Parity Flag"), bit 2: indicator de paritate: se atunci Este prezentat n fig. 2.5. Ciclul ncepe cu starea T J n care microprocesorul
unei opera(ii aritmetice sau un octet cu de _ cndt pe magistrala de ad1 ese o pe 20 De_ semnalul
AF ("Auxi liary Carry Flag"), bit 4: 111d1cator de transpo1.t auxi hai se a?:iveaza transferul va folos i Jllinatatea mat a mag1strale1 de date.
apare un transport sau un mprumut n aritmet ice cu operanzi m cod circuitele de memorie porturi cer ca adresa fie pe durata
ntre octet. . J c1clulu1. este necesar ca magistrala de I date fi e ele
ZF ("Zero Flag"), bit 6: indicator de zero: se rezultatul unei fie ntr-un registru. se face cu semnalul ALE, folos it ca
aritmet ice sau logice este zero. , semnal de strobare.
,.
SISTEi\11" 1 :1 i .\III .ll< >1'\lt lCF.S\ l ,\l{I ' i
Cidu de . . , de -
I inactive_ i 1pag1st1 ala i1.
Pj<lt
-Ui}L __ UiJL t
EU Q) ! EU d"" 2 ootofi. din (Cod"I MLIL)I u
. !
0
n 70-77 si-in \ 0 I {fJ ti
s1u I
4
. \..:},/ . I . m
. . d I EU de 1nstructn1111,
i) ntruct s-a executat o - e sat,. l . i 4 n "
2) este ool, ca urmare BI U executa c1c lll l a ma?:" . f 4
3) EU preia doi din ?oi cai e va [Link] . '
4) BIU doi m care va fi plm (6 - . . MUL
" " care EU executa mstruct1unea ,
5) BIV este liber timp de 62 : 69 Stan, tunp lll ' . ' - . . . . r " f
6) EU preia doi di_n ncep.e urmato::ue1 mstruc,1uni, '-;
7) BIV doi n care este d111 nou plm. _
Fig. 2.4. lui EU 81 U pentru o .
Ciclul instruc- I
tiunii JMP , .
Ciclu de
TI
I T3 4 T4 rl Tl
T l T2
CLK I I I >+ :
- .w.J -, .
/BHE , I - . I I \ 1. [
1 I
Cap. 2. i\licroprocesorul 81ltl 6
La nceputul Tl. semnalele M/ 110 DT/ / R sunt 1.011
ciclului in curs. starea lor tot timpul ciclului. Li nia M/ / I
indica transferul curent se cu memoria. M/ / IO= I snu c:u pllrl UI ilc
!IO = O. Linia DT/ / R va indica microprocesorul transmite, DT/ /R = I
DT/ IR= O. .
ln timpul T2. de pe liniile Al 91 S6 - A 16/ SJ se schi
reprezentnd informa!ie de stare. Liniile S3 S4 care registrul de scg
folosit la calculul adresei fizice pot fi utilizate, prin decodificare, la selec(ia
segment de memorie sau la unui segment de accesele ncauLnr i
de stare n T3 T4. Tot n starea T2. li
AD 15 - O trec n a tre ia stare se semnalul /RO, indicnd se execut
ciclu n care microprocesorul semnalul / DEN. indi
[Link] datele pot fi plasate pe
Pe frontul al tactului din starea T3, mi croprocesorul
READY. este l , n starea T4 iar este O va insera de
n care de pe lini i se din nou linia REP
cnd aceasta devine l . n starea T3 se preiau datele, iar la nceputul T
semnalele /RO /DEN indicnd ciclului. La acel
T4 se liniile DT/ / R M/ / 10 pentru ciclul
Ciclul de scriere date n modul minim
Ciclul este prezentat in fig. 2.6. El este cu cel de citire int1
avnd
o pe lini ile ADl 5 - O, de adrese se va genera imediat, n starea T2,
care se va nscrie n memorie sau po1t, ca aceste linii mai n a trei stai
o linia DT/ IR va avea nive l l de nivel O n cazul anterior;
o la nceputul T2 se semnalul de /WR, mai devremt
/RO n cazul anterior, indicnd exteriorului microprocesorul un c
de scriere sau citire;
e semnalul /DEN este act ivat mai devreme ca n cazul anterior.
Ciclurile de n modul maJCim
ADA1LsE-0 . 11_ 1
Prezentarea se va face comparativ cu ciclurile anleriore. indicnd diferentele existe
:
J! ...... i: pe magistrala de adrese I date are ca n caw l cicluri Io
\
1
=""""=*"""'....., modul minim. De asemenea semnalele ALE, /DEN OT/ IR au
M//lO
modul minim el e nu mai sunt generate de microprocesor ci de circuitul contn
i !
I 7 de 8288.
i f t Fig. 2. 7 semnalele de stare /S2 - O. Acestea circui tului 8'.2 88 ce
i I i \ de ciclu va executa microprocesorul.
I i r= Fig. 2.8 comparati v semnalele de /RD, IWR pentru modul mii
=
4
- -i- i ! -t . cele corespondente, generate de circuitul 8'.288 pentru modul maxim. semi
_.
1
1. _ \ .:. de de scriere avansate, I AM WC pentru memorii /AIOWC pentru port
I _ "--- = = "- - utile in cazurile in care semnalele de pentru scriere normale nu au du1
1
-==r= . """(
1
' I I d . . I RA l'v1 .
-l-- - __
1
. -- - . .. ._-_,
1
._1'-""""==1:
1
.
' nu pot t1 folosite dect pentru comanda acelor circuite la care inscrierea (
- - T ------ ... .. . ! de front ul posterior al semnalului ele
Fig. '.2.5 . Ciclul de citire date intrare pentrn modul minim
IRD
DT //R
/DEN
READY
38
u
\ 1)
SIS'l l':'vll <:LI 1\IJUH ll'l{( J<:J:S1 >.\l< l 1 Cap. 2. l\iicroproccsornl 8086
T2 I .._' --T4=-=-! I TI ' CLK T I 1' T2 I T3 !'=i =-=T-4- ']'I
CLK T I =--'n......_1.. -11- /RD i LJ_J_,...._._-t-
A19/S6 - - \/
I !WR
ADI S-0
I
__ l MRDC, 1+-
1
r---
1 /AMWC,/Alqwc I- J ....JJ
ALE
M /!T.O
I I j 1 r =--
mR--f' I t /MWTC, flO\fC [ lf 4 J
=-- J 4- Fig. 2.8. Semnalele de penhu modul maxim
-
DT /IR
1
r
I 'i Semnalele de pentru scriere, normale sunt utile atunci cnd 11sl'rlrrn11
I
i I este de frontul anteri or al semnalului de (de cxc111plt1 111
..--'"""""i"""'- circuite RAM dinamice). Este datelor nainte de frontul antc1irn ni
L I acestor semnale.
READY I j ________ ___ _______ I _: ____ 1:f Ciclul de acceptare a unei cereri de ntrerupere mascabile
-- -. .. . .... -.. -j-..-._.. . r--, 1 . Figura 2.9 ciclul de acceptare a unei cereri de ntrernpere mascabi lc. C1l'111 l
CLK
ALE
/S2-0
_ - . J ..... _ ___________ 1J L! -----------L .. _La nceputul [Link]. de .adrese'. date tre<.:L' t11 11
--r----- ... i I 1
1
& treia stare m stare pana la tennmarea c1clu!u1. Apoi se sc1111111l11I
Fig. 2.6. Ciclul de scriere date in modul minim
TI T2 T3 T4
!. r - ]-,--+
t
I . . ="=
- --T--------- ., I
' I - --=l I i - I
Fig. 2.7. lnformatia de stare pentru modul maxim
f. /INTA (generat de microprocesor n modul minim sau de circuitul 8288 n 111ocl11I
maxim) indicnd exteriorului a acceptat cererea de ntrerupere. In al doilea subc1rl11
o senrnalul7 1NTA md1dnd eXferiorului un vec101 du
I TI ntrernpere pe magistrala de date, linii le D7 O. Acesta este fumizat de sursa cere11i dt'
ntrerupere, n general min intermediul unui circuit spe<.:ializat entru ntreruperi 82S9A.
Microprocesorul senmalul /LOCK indicnd faptul nu cc l111l'11
!t magistralelor ntre cele subcicluri. microprocesorul este n mod minim. se1111111l11l
va fi activat doar intern dar o cerere HOLD nu va fi n
= Microprocesorul 8086 are facilitatea de cedare a magistralelor. In modul min1111,
I pent:u magistralelor este intrarea mic1,11
-,- -i procesorului la aceasta cerere este trecerea 111 a treia srare a mag1strale1 111ul t1plcxute n
L
de comnnda: /RD, /\VR. Ml /IO, /DEN, DTI I R activarea liniei de rllspum
=+-- HLDA. Dezactivarea cererii HOLD va duce la dezactivarea HLDA lu
controlului asupra magistralelor n starea celei n care s-a deznc'liv11l
!i semnalul HLDA.
'-;ISTl'.MI'. Ll' Ji'I(< li :l'.S< l ,\ 10"
TI
CLK
Fig. 2.9. Ciclul de acceptare a unei cereri de ntrerupere mascabile
f
..
I
p
n modul maxim, cedarea I preluarea magistralelor se face pe linii (;
independente una de /RQ/ /GTO /RQ/ /GTl are loc n unna um11 dialog m ;:
trei faz.e: li
n prima cel care cere controlul asupra '?'_QI ;
/GTi, care este intrare pentru microprocesor, semnalul avand semmficat1e de ce1.e1e, . ,
n a doua microprocesorul linie. semnalul av1:d
de acceptare a cererii cedare a magistralelor; activarea se face fie la
ciclului la curent fie ntr-o stare microprocesorul s-a .
deconectat de la magistrale; .
n ultima linia fRQ/ /Gi este din nou de cel care a cerut magistralele, '
semnalul avnd de la controlul asupra magistralelor.
Linia IRQ/ /GTO este asupra li niei IRQ/ /GTl.
simultan pe ambele lini i, microprocesorul /r:--Q/ /GTO ce a
reprimit magistralele, la cererea !RO/ /Gl Daca
la cererea /RQ/ /GTI, cea de pe linia O va fi doar dupa mche1e1ea d1alogul u1
referitor la linia l. _ _ . .
Microprocesorul va relua magistralele doar. [Link] a stan
liniei HOLD sau din momentul pnm1rn 1mpulsulm de pe lm1a
IRQ/ /Gi. . - A 'd ..
o cerere de pe linia HOLD sau fRQ/ /GTt, nu luata .m const e1a1e
n timpul senmalului RESET dar ea se RESET va fi
imediat Aceasta este o care poate li folos ita la de
memorie ncepnd cu adre5a FFFFOH nainte ca act1v.1ta'.ea.
ce rnicropiocesorul a cedat magistralele, EU.
din ele instruqiuni cnd devine necesar un etc lu la sau yana cand
devine gol, aceasta fiind o facil itate l:entru .v1t.eze1. .
o faci li ta te a micro procesoru lui 8086 consta 111 blocai ea mag1stl ale Io'. exte1 ne.
Microprocesorul semnal ul /LOCK atunci cnd nu cedarea magistralelor.
c;,,p. 2. Microprocesorul
Este sarcina unui arbitru de (ciicuitul 8289 n familia lui 8086) nu lase aj1
la microprocesor cereri de cedare a magistralelor n timp ce semnalul /LOCK este a1
Microprocesorul semnalul /LOCK n predeterminate (n lin
ciclului de acceptare a unei cereri de ntrerupere) n timpul unei instruc1
de prefixul LOCK. Prefixul dintr-un octet plasat naintea
compun Semnalul /LOCK se de BIV la cererea lui
ce acesta a executat prefixul LOCK activ pe durata exec1
respective. Semnalul ILOCK este activat intr-o situat ie predefinit
anume n ciclul de acceptare a cererii de ntrerupere mascabi le.
O a /LOCK este posibil itatea pe care o are mi
procesorul de a executa un acces la care nu se poate executa cli
prin mai mul te cicluri la In acest caz ce ace
trebuie fie de prefixul LOCK, ntruct n caz contrar s-ar putea ca oper
fie ntre cicluri la de un procesor mai prioritar,
transferul se ncheie cu date false.
Un exemplu clasic este se un sistem multiprocesor cu res1
partajate, starea unei resurse fiind de un "semafor" care este un indic;
comandabil prin program. El poate fi, de exemplu, un rang al LU1ei de memo
Microprocesorul 8086 are posibilitatea de a testa semaforul acesta
resursa este l activeze, astfel ca semaforul indice n continuare st<
ocupat a resursei, riscul de a fi ntrerupt intre ciclul de citire a semaforului cel
Pentru aceasta se poate folosi programul de mai jos, n care
XCHG att citirea ct semaforului :
HOV 1; se registrul AL
WAIT : LOCK XCHG MEM, P.L; se face schimbul ntre MEM, unc
se semaforul registrul AL; n AL se va afl
vechiul al semaforului iar n MEM se va af
noul al
'.::'EST 1, 1'.L; se semaforul: lui AL est
diferit ele O se ntruct resursa a fost ocupe
n caz contrar se cu accesul la
JNZ [Link].I T
prefixului LOCK, accesul la semafor sa se fac
permite accesul altui procesor la n caz contrar ar de conflict dt
cum din exemplu: procesorul i semaforul, resu
este care un acces pentru activarea semaforului dar simultan acest ac
este dori t de procesorul i + l. mai prioritar, care va activa semaforul, astfel resu
n timp ce procesorul i care nu activitatea procesorului i + l va con tir
de acces la resursa aceasta procesorul ui i +I.
, 2.5. Organizarea gestionarea memoriei
Microprocesorul 8086 poate {Vlo ele memorie. (aptului to
sunt pe 16 el__!l!! intern adrese mai lungi de 16 b
ce duce la o ele I Mo n de 64 Ko. Micropniceso
-12 s1s1 l:,\lf: c:u llfl<:R< )j>J{(JU: Sc) \RI.
poate lucra la un moment dat cu 4 asemenea segmente, a?resele lor de ncerrnt
t Cap. 2. Microprocesorul HIJ86
Pentru o erati i cu accesul_J_a_un element din irul sui se face rin intermediul
registrelor OS pentntlidresa de SI pentru deplasament iar accesul la un elemen
din se. face prin mtermediul registrelor ES Dl.
-U
se n registrele de segment. !:
Segmentele sunt blocuri de memorie care se pot suprapune. ca ij
adresele lor de nceput sa fie multiplu de l 6. Segmentar<::a memoriei are avantajele:
'" este programarea fiecare modul poate ocupa unul sau mai r
multe segmente putnd fi dezvollat independent unul de
relocarea a programe lot; pentru aceasta este necesar ca acestea ;f.
lt.
nu afecteze registrelor segment nu referire la din
afara segmentului; programul poate fi plasat oriunde n memorie prin modificarea
registrelor de segment;
'{
o se poate utiliza un mare de stive, prin plasarea adresei de nceput a
segmentului n registrul SS a vrfului stivei n SP.
Printre dezavantajele se pot enumera:
n lungimea programelor introduse de dimensiunile segmentelor;
adresa se din mecanism care timp f
deci duce la o a vitezei de lucru. tt
( Figura 2.1 O mecanisrritil de calcul al adresej Cele configuratii J
'I de progran:ator
se registru .segment este d_eplasat la stanga
cu Jatru rangun, plasandu-se O 1n ratigunle hbere apoi se aduna deplasamentl-!l
o >\1nndu-se astfel o pe 20 bl'iLExemplu: presupunem (SS) = 2590H
(SP) = I 248H. Adresa a vrfului stivei este: 25900H + J 248H = 26B48H.
{;
f
ii
f:
j
t
o
I
15
registru segment - registru pentru accesul n interiorul segmentului
este programatorul are posi b!litatea, de a modifica combinatie.
1_!_ o de ansamblu asupra n exemiJ!ul
prezentat cele 4 segmente sunt disjuncte.
Segment
de cod
.
...... ___
Segment
cs
de
ss -
DS
ES
Segment
... de date
....
Segment
de date
suplimentar
Valori mari
de adrese
Valori mici
------------
\ Atfrosn 1
15
CS,SS,DS "" ES-100001
' j ----------
de adrese
4
Fig. 2.11. Segmentarea la microprocesorul 8086
.
f . [Link] 8086 poate lucra cu operanzi pe bi t, digit, octet, cuvnt, dublu
cuvant sau bloc. In cazul n care se operanzi pe cuvnt, acesta ncepe la o
transferul se face ntr-un singur cicl u iar acesta ncepe la o
cicluri pentru transfer. Conform conventiilor firmei INTEL,
"l la ulterioare din famil ie, cuvntul este memorat cu octetul
li E:Ja1 sem111ficat1v la o de valoare mai iar dublul cuvnt este memorat
19 O cu la o de valoare mai De exemplu
Adresa C . J f AB02H este memorat la C!resa 24680H octetul 02h este memorat
, . 'li. la cu adresa 24680H octetul ABH este memorat la cu adresa 24681 H.
Fi g. 2.10. Calculul adr_esei fizice la microprocesorul 8086- ,-y - _ I li . de memorie direct adresabi l de 8086 este de I Mocu adresele de la
. . . . . . . . OOO_?CJH la se poate face la nivel de octet dar la nivel de cuvnt,
a codul unei mtotdeauna de a f a e.:1sta re_fentoare la adresa de nceput a cuvintelor. transferul unui cuvnt
1-1,n,1 tn..!:.Cj lSlrul CS iar 111 IP. Pentru un 1:1 se folosesc _ss: a. este un singur ciclu pe cnd transferul unui
pu11!1 u ocfresa de SP, pentru deplasament, atunci_ cand se ".u neal 1111at, a este cicluri procesul
SS BP att1nci cnd se accesul la un operand aflat n segmentul i fiind transparent pentru utilizator reflectndu-se doar n vitezei. n ele
i
SISTl :. r-- 11 : i;ti MI CH< lPltr J< . l.S( l,\RF
f
4-1
memorie zone, fig. 2. I 2, una la nceput, in domeniul OOOOOH - 0007FH
la n domeniul FFFFOH - FFFFFH care au speciale,.
fiind fie dedicate fie rezervate. Prima tabela de intrerupen iar a doua
secventa de initializare a unui sistem cu 8086 ntruct, dupa dezactivarea
P ESET: microprocesorul un acces la adresa FFFFOH.
Rezervat
Dedicat
Disponibil
Rezervat
Dedicat
FFFFFH
FFFFCH
FFFFBH
FFFFOH
00080H
0007FH
00014H
000!3H
OOOOOH
f
t
<!
f
p
f
j,
p
r
f Fig. 2. 12. Organizarea memoriei la microprocesorul 8086 t
Fizic, memoria poate fi n blocuri de maxim 512 .Ko: blocul_ ar
blocul imear. par cuprinde do_E cu [Link] cel np,par
doar cu adrese imP<l.!! Blocul par este coiieC'fla 1u111atatea a
dedate, 0 7 - O iar cel impar este conectat la a ?e date,
/
D 15 . 8. Liniile de adrese A 19 - I sunt folosi le pentru a selecta cte o sunultan
din ambele blocuri. Transferul ntre selectate magistrala de date se face doar )
sub controlul a li nii, AO / BHE, n conformitate cu tabelul 2.3.
/BI-LE AO Se
o o A 111 bi i
o I Octet superior la/ de la
I o Octet infe1ior la/ de la
1 1 transfer
Tabelul 2.3 pari impari la microprocesorul 8086
Figura 2.13 divizarea memoriei n cele blocuri. Pentru la.
operand octet aflat la o linia AO va val!cla b!ocul par, iar lnml
/BHE va invalida blocul impar. Va avea loc transferul intre adresata
a maoistralei de clate. Pentru accesul la un operand octet aflat la o
/inia AO va inv:lida blocul par, ntruct AO = I, n timp ce /BHE =O va [Link] bl?cul impar.
Va avea loc transferul ntre a mag1strale1 de date.
Cap. 2 . .\licrnprncesoru! 8086
FFFFFH
FFFFDH
Al9-l Dl5-8 /BHE
FFFFEH
FFFFCH
OOH
07-0
Fig. 2.13. memoriei n blocuri la 8086
n cazul unui transfer al unui cuvnt aliniat, ambele blocuri vor fi val.
simultan de liniile AO = / BHE =O. Va avea loc transferul ntre cele acin
ntrega de date.
n cazul unui acces la un cuvnt nealiniat sunt necesare ciclrn
La primul ciclu, /BHE =O AO = I, ntruct adresa este deci s
transfera octetul de la a magistralei de date. A<
este octetul mai putin al operandului. apoi al dodea ciclu m
a,2resa este deci A0;-0 7BRE = l, se va transfera ciClefi
la adresa pe a magistralei de date. Acesta este octetul
semnificativ al operandului. Aceste sunt executate de microprocesor, inel
a [Link] ale registrelor inte1
Modul de organizare gestiune a memoriei descris mai sus, impune o amu
de ordonare a programului.
2.6. Sistemu! de intrare I
Microprocesorul 8086 permite conectarea pol'turilor de imrare I at
de memorie ct n de int rare I separat de cel de memorie.
Spatiul de VE este sugrapus peste primul segment [Link] 64 KO, n zona OOOOC
OFFFFH iL_ este accesibi l prin inslrucpuni de J/E cledicate, IN OUT. 8086 pen
conectarea att a porturilor pe 8 ct a celor pe 16 Un port pe 8 pont
conectat att pe pa11ea ct pe pa11ea a magistralei de date.
conectarea unui egal de porturi pe cele ale magi str
de date dar numai din motive de
Adresele de po11 trebui e seama de conectarea liniilor ele date ale portull
magistrala de date a microprocesorului. s-a conectcirea pe j umatalea 1meri(
a acesteia al'unci adresele ele port toate pare iar s-a conect<
pe a acesteia_ trebuie fie toate impare.
fi
c:L' >l'l \l JU:S<
Pentru conectarea unui po1i pe 16 adresa de port trebuie fie se
transferul cuvntului de 16 bi!i ntr-un singur ciclu la Pentrn
portului vor fi folosite semnalele AO /BHE.
Modul de lucru al microprocesorului schema de conectare a po1iului. f!
46
-
ln modul mi nim, microprocesorul semnalul_!\1/ ILO = I dac[. n ciclul curent
date cu memona M/ /10 - O n ciclul curent se dare cu un
Acest semnal nu este necesar mem7)ria de T/E nu sunt suprapuse sau
porturile sunt conectate n de memorie. ln modul maxim, circuitul 8288 1. t"
semnale de separate pentru comanda memoriilor a porturilor.
Conectarea porturi lor n de memorie se poate face prin validarea semnalelor de
a porturilor cu semnalele tvfWTC, /MRDC sau /AWfWC iar conectarea porturilor fi
n de I/E se face prin validarea semnalelor de cu semnalele /IOWC,
/lORC I AIOWC. b
Pentru transferul datelor la I de la porturile de I/E dedicate l
1N OUT. un octet n registrul AL sau un cuvnt n registrul
AX. Portul poate fi adresat direct, prin un octet, astfel adresarea a 256
po1iuri de intrare tot attea de sau adresa sa poate fi n prealabil n
registrul DX, astfel adresarea a 65536 porturi de intrare tot attea de
OUT un octet din registrul AL sau un cuvf!t diQ. registrul AX la jji;
un port a poate fi ca li! IN. Utiliznd adresarea 'l.
o de l/E poate adresa oricare po1t din de l/E. t
Figura 2. 14 pentru generarea semnalelor de pentru po1turi.
"
2.7. Sistemul de ntreruperi
ntreruperile permit abandonarea de microprocesor a unui
program nceperea Ll!lUJalt program situat oriunde n de memorie.
ncazul microprocesorului 8086 ntreruperi le pot fi generate fie unor 1
cauze externe mi croprocesorului, fie unor cauze interne. Ca urmare ele se mpart
1
n categorii: ntreruperi externe si interne. Microprocesorul 8086 poate trata 256
tipuri de ntreruperi, fiindu-i asociat un cod care-l Accesul la rutinele t
de tratare a cererilor de ntreruperi se face pri n intermediul unei tabele de ntreruperi,
n domeniul OOOOOH - 003FFH n tabelul 2.4. g
i
Tip Intrare
Eroare la divizare o OOOOH
I
Pas cu pas l 0004H
ntrerupere 2 0008H
Breakpoint 3 (JOOCH
4 OOIOH
r
j
ii:
Rezervat 5 - 31 0014H - 007CH
Di sponibil 32 - 255 - OOJFCH
Instruc1iuni O- 255 OOOOH - 003FCH
Tabel ul 2.4. Tabela de ntreruperi la microprocesorul 8086
Cip- 2. l\licroprocesoruJ 8llH6
Al51
sau - ------'
A7-I
AO
B HE ---1"6---i
AIS-1
sau ------===--'
A7-l
AO
Al5 1
sau - -----:---'
A7-l
AO
A2
Al ro
AO L
El
E2
E3
A2
Al
s
AO L
s
l
3
El
E2
E3
A2
Al
8
AO L
s
l
3
El
5
EJ
A2
A l
8
AO L
s
I
3
El
E2
E3
A2
Al
AO
8
L
s
l
El 3
El 8
EJ
Y7
YO
Y7
YO
Y7
YO
Y7
ro
Selectie pentru
porturi pe 8 biti,
cu adrese rare
Selecti e pentru
porturi pe 8 biti,
cu adrese impare
Selectie pentru
porturi pe 8 bi ti,
cu adrese pare sau pentru
porturi pe l 6 biti
Selectie pentru portuii pe
8 biti, cu adrese impare
sau pentrnporturi pe 16 biti
Selectie pe nt ru
porturi pe 16 biti
Fig. 2. 14. pemru generarea semnalelor de seleqie pentru porturi
47
48
SI::. J' [Link] r:t .1 MICR< ll' IU JC :[Link] J;\lll :
Fiecare patru de cel
mai putin semnificativ octet al registrului IP. cel ma1_semn1t1cau: octet .al ului P.
m mai PJ!tin semnificativ octet al registrul.!:!l._ c;'S ,.octet ['
o intrare adresa corn _a rutme1 de a.
;:;spective. Pentru a realiza accesu a o 111trare m 1croproceso1 ul 11mlt1pl1ca cu pat1 u
pe C"are-1 care tip_ul _ . _ . _ ;.
Tabela de ntreruperi este n trei domen11: o zona dedicata, mtrallle 0-4,
care este n mod automat de microprocesor la unor tipL'.ri de
predefinite, o de firma lNTEL, 5-3 dispo111bita
cereri le de ntrerupere utili zator, 32-255. Toate 1ntranle pot fi accesate pt m
instructiunile INT nn. . .
ntreruperile externe sunt prin intermediul celor ale
microprocesorului, JNTR NMI. O de ntrerupere care pe linia
este
0
cerere de ntrerupere ln general ea este generata de un c11
specializat, controler de ntrerLiperi, 8259A, care cazul [Link]!1e1
cererilor simultane din mai multe surse cu maxima la
momentul respectiv. Semnalul ll'JTR este testat de rrucroprocesor m .. ultima stare a
ultimului ciclu unei .. _de la
anume cazul instrne!iunilor care cu la este li
prelucrarea element al cazul "'A-T. la care h
linia INTR este fi ecare verificare a liniei ffEST. , . '
-j cteva n care cererea de ntrerupere nu este m considerare
dect Este cazul de I
nu se nici
0
cerere de ntrerupere ntre prefixulu.1 a '
De asemenea este cazul MOV POP care registrele_ de
nu se nici o cerere de ntrerupere cnd nu se
Este 0 facilitate de .n cazul n se l
unui segment, pentru care este mod1_fic.area. a. doua_
registrul de segment registrul pentru accesul m Daca se 1a i
considerare 0 cerere de ntrerupere sch.imbarea_ reg1stru.l.u1 segment
naintea celuilalt registru, exista nscul ca acest ult1m.tiansfe1
nu loc corect ceea ce va conduce la o clin noul segment nu la cea .
Din cele de mai sus se schimbarea unui este i:
nti a care registrul segment 1med1at de l
care . . ,
Pentru luarea n considerare a unei ceren de mtrerupere ce pe [Link] -,.
este necesar ca sistemul de ntreruperi al microprocesorului fie activat. ad1ca
indicalorul de ntreniperi lf valoarea 1. IF = O, cererea de ntrerupe'.e t
nu va fi n considerare . .Indicatorul IP poate fi controlat de programator pnn
CLI pentru anularea lui ST! pentru lui. n
a unei cereri pe linia INTR. microprocesorul anuleaza pe IF pent1ua p1eveni ll1 f
considerare a unei noi cereri. De asemenea. indicatorul TF va f1. anulat
1
.nvalldand f
faci li tatea de lucru ln mod pas cu pas. Apoi cl [Link] n registrul (cu IF
TF avnd vechi le valori) registrele CS TP. D111 acest moment mcep:
exterior de acceptare a unei cereri de ntrerupere. n paragraful 2.1.4. In
L
Cnp. 2. 3086
acestui cicl u microprocesorul un vector pe care li cu paln1
accesul la o din tabela ntreruperilor de unde adresa de ncepl
rutinei de tratare a cerern de ntrerupere. Aceasta trebuie se ncheie cu instruc1il11
JRET care va realiza reveni rea n programul principal restabilirea, prin cit ire 1
a registrului indicatorilor registrelor CS fP. cu valorile existe
nainte de luarea n considerare a cererii de ntrerupere ..
Utilizatorul [Link] la pentru cererile de ntrerupere externe m'1scnl>I
zona 00080H - 003FFH din tabela de ntreruperi, dispune de maxim 224 intri
nu se cu alte produse ale firmei INTEL si nici
se folosesc ntreruperile predefinite, se pot utiliza vectori. '
Cererea }ntrerupere de pe lini a NMI este de tipul
Pentru a fi luata 111 considerare este necesar o ele minim '
este de asemenea la execu(iei unei execulE
de microprocesor la luarea ei n considerare sunt: salvarea registrului indicatorii!
anularea indicatorilor fF TE salvarea registrelor CS IP n lor ,
din intrarea 2 a tabelei de ntreruperi.
interne ca urmare a unei tipice sau
urmare a producem unw eve111ment intern. Ele se mpart n categorii:
O) ntreruperi generate de INT nn
" ntreruperi predefinite.
. INT nn accesul la intrarea nn n tabela de ntreruve1
Deci are efect ntrerupere de tip nn, doar 11u este
nu se vreun ciclu extern de acceptare a ei. Ca urmare microprocesorul ,
executa la luarea n considerare a acestor ntreruperi ca n cazi
celor externe, a genera semnalele /INTA.
pentru tratarea acestor ntreniper.i pot fi folosite pentrn emulare, [Link] etc.
lntreruperile predefinite sunt generate intern de microprocesorul, I
;ietecla'.ea unor e:venimente interne deosebite. Acestea sunl nemascabile la luarea le
111 considerare, microprocesoru! ca n cazul [N'
nn. n cont inuare vor fi prezentate ntrernperile predefinite.
. E;[Link] divizare, _tip O: este n urma instruqiuni lor de
atunci cand catul este mai mare dect valoarea (de exemplu la
O).' ca parte din instruqiunea de n cazu
DIV valoarea ctului care generarea ntreruperii este FFH dac.
este octet sau FFFFH este cuvnt iar n cazul instructiuni
IDJV valoare este 7FH in primul caz 7FFFH n al doilea caz. .
Pas cu pas, tip I: ntreruperea poate fi n considerare setarea indicatornlu
de c?ntro! TF. La microprocesorul va lua i
considerare o ntrerupere de tipul 1. Rutina de tratare a cererii de \ntrerupen
poate registrelor, a memoriei n vederea sau
pro?ramelor. Microprocesorul nu dispune de pentru modificarea <
TF se poate realiza prin PUSHF care depum
1n?1caton1 111 unde pot fi apoi registrul indicatorilor poate f
cu POPF.
ntreruperea tip 2. a fost la n1"reruper il e e:xterne.
_s_11______________________ s_1s_1_1_ :r--_11_ . _< _l
1
_:-._1_11_ . R_<_11_' 1\<" IC >.\RI'. I Cp 2. Ofoopromornl 81J'6
-------------- :>!
Breakpoint, tip 3: este o pe un singur octet care poate fi . 2.15 terminalelor, din punct de vedere funqional.
[Link] unor .de ntrerupere n timpul unui program n scopul i pent1 u cucu nul 8284A. Figura 2.16 schema bloc a circuitului.
unui program. de INT nn cu nn = 03 are .;
avantaj ul un singur octet n memorie. . -Jl!o RESET ,.-,.- ',,_,.,
tip 4: ntreruperea este n urma , -- , . ._____..
I
X!
!------.,."",osc
registrelor oricare ar fi operaria cu opcranzi cu semn ce se deci
indicatoru I OV = I . Dar ntreruperea nu se automat ci numai
microprocesorul o lNTO care trebuie urmeze unei
n1 cu operanzi cu semn.
X2
:. :t.:;
Timpul de procesare a unei cereri de ntrerupere, defini t ca timpul din momentuL
ll cure cererea este momentul n care microprocesorul accesul
rnln.:sn de nceput a rutinei de tratare depinde de tipul ntreruperii are valori n 1
do111e11iul 50-6 l perioade de tact. Pentru a determina timpul de acceptare a cererii de ,
111ll 1)1t1pcrc externe, trebuie luat n considerare momentul n care apare n raport cu !
dclLli uc a curente.
Prioritatea de microprocesor n cazul simultane a mai
tlpul'I de cereri de ntreruperi este (n ordine .
eroare la divizare, INT nn, ,
lNTO, .
NMl, !.I
INTR
pas cu pas.
n timpul unei cereri de ntrerupere mascabi!e, apare o cerere pe F
11 11111 NMl nainte ca se fi realizat accesul la rutina de tratare a primei cereri,
du po linia NMI va fi cu prioritate. microprocesorul este n modul
l11cni pt1s cu pas, el va lua n considerare o cerere de ntrerupere n felul ..
accesul la rutina de tratare a noii ntreruperi, conform cu tipul ei, dar nainte .
111 executa rea primei din ia n considerare ntreruperea de
cu pas controlul rutinei care o la ncheierea acesteia control ul i
111t111cl cnrc l'ntrerupere. K
2.8. cu microprocesorul 8085
I
X1
X2
FIC
F/C
EF!
RDY!
ENI
RDY2
AEN2
ASYNC
8
2
8
4
A
- -------P> PCLK
Fig. 2. I 5. terminalelor la cirwitul 8284A
.'!
ase
Microprocesorul 8086 cteva circuite pentru a se o unitate 3
,, 111 111cle interne ale acestor circuite sunt cunoscute, complexitatea lor este medie, ca JU!.EFf
SYNC
1111 11.11 c se poate realiza o unitate aceste circuite, implementndu-le disc CSYNC
2
SYNC
_J
111 pmli bistabile. Se utilizarea lor, din considerente de RDYl _________ __ r ___ .:;: _ __ _ _ -__ _....
11
PCLK
li11hlllt11lc dimensiuni. 1 A=11
r-,J;,:ttU!ol-
G onoratorul de tact 8284A . :f \AENz-+
9ircuiLUI 8284A are 3 roluri ntr - o unitate cu microprocesorul 8086: . RDY2
tactul pentru
D
ijt: ni:: reazt\ semnalul [Link] - I J
semnalul de RESET, catre mi croprocesor, s111cro111zandul ASYNC'---------------
;--tRR.\Dl
CLK
L __
c11111ct11I. {
Fig. 2.1 6. Schema bloc a circuitului 8284A
li'
. I
u: Ml(Rt ll' f{( J('fo.S< J,\f(f: i
Cap. 2. 81JS()
Tactul CLK micro rocesor este enerat de lin divizor la 3 care are ca
fie un oscilator cu fie un semnal de tact extern conectat la intrarea ,
Tactul CLK va avea cu 173 d:. [Link] 1/3.
Semnalul Ost va avea factorul de umplere ale semnalului de la intrare. El'
poate fi conectat l infrnrea ErI a altor circuite 8284A, n sisteme multiprocesor.
Circuitul un semnal de tact, PCLK, care are pe de cea
de la CLK factor de umplere I /2. Acesta este util pentru circuitele specializate pentru
clin familia microprocesorului 8080. Acestea pot fi utilizate ele micro-
procesorul 8086 clar sunt mai lente dect acesta un tact de mai ,
Blocurile divizoare care semnalele de tact sunt sincronizate cu un
semnal extern, CSYNC, care va sincroniza generatorul de tact cu evenimente exteme,
de exemplu cu un alt circuit 8284A n sisteme multiprocesor.
Pe generarea tactului, circuitul 8284/\ are rolul de a sincroniza intrarea
de /RES, cu frontul al tactului, rezultnd semnalul de
RESET, microprocesor celelalte circuite.
O facilitate a circuitului este aceea de a genera semnalul READY, cerere
microprocesor pentru de sincronizat cu tactul CLK. 2 surse
externe, independente, pentru cereri de de RDY I RDY2, active la 1 .
logic, fiecare dintre ele fiind sau nu validate de /AEN 1, respectiv /AEN2. Din I
posibilitatea folosirii /AEN I, 2, active la O logic,
ca surse pentru cereri externe de a semnalelor RDY l, 2 ca
Utilizarea acestor semnale depinde ele circuitele care cererile externe de 1 ..
acestea sunt active la l logic atunci se vor conecta la RDY J, 2
iar sunt active la O logic, se vor conecta la /AEN 1, 2.
terminalelor sunt:
o IRES \"Reset Input"): intrare la O logic, indicnd o cerere de pentru "
ntregul sistem; n mod uzual, la intrare se un grup RC un
comutator. 1
o X I X2 ("Crystal Inputs"): la care se un .
o
O logic, atunci intrarea este un cristal ele iar este I logic, atunci intrarea
este un semnal de tact extern, conectat la intrarea EFI. .
a EF/ l''Extemal frequency Input"): intrare pentru tactul extern.
& CSYNC ("Clock Synchronization"): intrare pentru sincronizarea divizoarelor care
semnalele de tact; este util atunci cnd se sincronizarea circuitului f.
cu alte 8284A, n sisteme multiprocesor.
" RDYI RDY2 ("Bus Ready"): pentru cereri externe de de .
active la J logic. '.
o IAEN 1 IAEN2 ("Address Enable"): active la O logic, pentru validarea
cererilor externe de de pot fi folosite ca pentru surse externe 11
de cereri de atunci ROY l RDY2 vor avea de validare.
o /ASYNC ("Reacly Synchronization Select"): intrare pentru a selecta unul sau
de sincronizare a cererilor externe RDY; este pentru a oferi timp suplimentar acelor t
circuite care nu pot genera cererea de n timpul impus de procesor.
" RESET("Reset"): pent ru microprocesorul ui. l!
o OSC ("?scil'.ator ele tact. semnalul avnd frecventa
sau a semnalului de pe intrarea EFI) caracte .- r n-
1
CLK ("CI k") . . d llS ICI -
0
oe : e pentru microprocesor; semnalul are frecventa c
cea de la mtrare factor de umplere de 113.
0
I Penpherai Cl_ock"): de tact pentru circuite specializare pentru ine
cu, fi , .C\ de l a semnalului de la CLK cu factor de umplere de
o (dRea?y d). catre microprocesor, pe care se cererea 1
rnse1a1ea e stan e
Control erul de 8288
" Este circuit necesar atunci cnd microprocesorul 8086 n 11
111ax1m, geneiand toate semnalele de pentru transferu "I
P
orturile ele i t /
11
e cu memorta s::
. . _n rare rolul de a amplifica c!e i date F
2. 17 pt ezinta terrnmalelor circui tului, din punct de vedere
S2
Sf
'
-
so
AEN
CLK
IOB
CEN
1
.
.
8
2
8
8
.
""
;..
;:;
----ip
-e>-
MRDC
A'MWC
!ORC
OWC
AIO'.VC
i NTA
DT ! R
DEN
MCE / PDEN
ALE
Fig. 2. 17. terminalelor ia circl!itul 8288
I 108 2 moduri de lucrn. selectabile prin nivelul de la intrarea IOB.
I lo"'1c. este modul de a magistralei de intrare/ n t
care magistrala de intrare I se vor activa
tntiaiea_IAEN. se atunci cnd magistrala de intrareJie ire e
d,; de exemplu atunci cnd ntr-un sistem
1s pet t1e11e p1 opne unui singur procesor.
2
logic: este modu! de a magistralei sistem. Generarea semnalelor ,
pe1:tru transferu'.1 fi prin intermediul semnalului /AEN. Se folose<
cand seJe unui sistem. stmt plasate pe magistrala sunt panajate
. [Link] de controlerului 3288 . .1r
ca sunt libere acesta poale genera
. o111an I a pent1 u tt ansferun. Este calea pnn care unui microprocesor i se pe11111'te ' ' t LI. i
<1cc.:esu laresu s I 1 ' ''
1.e e pnita,1ate t 111tr-u11 sistem multiprocesor cu
n funqie de de pe liniile de stare /S2 - /SO, circuitul
semnalele de pentru cicire/ scriere de la/ la memorii ponuri de intrare I
precum pentru acceptarea unei cereri de ntrerupere. Semnalele de
pentru scriere se att n forma lor ct n cea
iiEs
KOYl
Circuitul cteva semnale de control: DEN, cu rolul de validare a
transferului de pe magistrala de date, DT/ IR, cu rolul de a indica sensul i 1
transferului, ALE pemru demultiplexarea magistralei de adrese I date /PDEN cu rolul J
de validare a transferului de date pe magistrala de intrare I De asemenea, este
generat semnalul MCE, cu rol n ciclul de acceptare a unei cereri de ntrerupere atunci
cftnd mai n:ulte circuite pentru gestionarea cererilor de ntrerupere.
terminale or sunt: .
IS2 - ISO ("Status"): pentru de stare de la microprocesor, care
cc tip de ciclu va executa.
o CLK ("Clock"): intrare de tact de la circuitul 8284A. lf
108 ("!/O Bus Mode"): intrare care modul de lucru al ci rcuitului.
CEN ("Control Enable"): intrare pentru validarea circuitului; CEN = O logic,
1.
tonte semnalele de plus DEN /PDEN trec n starea lor
IAEN ("Address Enable"): intrare pentru validarea semnalelor de pentru ;
trnnsferuri le cu memoria porturile; sa trebuie cu cea a
8cmnalu!ui IOB. I'
CLK
MN/
MX
8
o
8
G
3X
oe
L
s
3
GSC
2X
L
s
2
DIR
- 5
G
Fig. 2. I 8. UC cu microprocesorul 8086 n modul minim
BHE
Al9-0 ,'
Dl S-O
/ MNDC ("Memory Read Command"): de pentru citirea din memorie.
/ AIWTC ("Memory Write Command"): de pentru scrierea n memorie. f;
IAMWC ("Advanced Memory Write Command"): de pentru f
scricien n memorie. r
, //OWC ("li O Write Command"): de pentru scrierea n porturi. . ,.1- .
11\/0WC ("Advanced I/ O Write Command"): de pentru
Ht't n porturi
GSC este Generatorul pentru Semnale de pentru transfernri!e cu memorie
porturile .. n care [Link] 8086 n modul minim sunt cte
complexitate
1
n sisteme Semnalele de pentru
transferurtle cu memoria porturile de intrare I sunt aenerate de micro-
procesor. Fi ura 2. 19 o pentru generarea semn;lelor de entru
transfe
/INFA ("lnterrupt Acknowledge"): pentru semnal ul de acceptare a unei cereri i RD IOR
de 1llruruperc mascabile. WR _ _,.,_ IOW
I >l\'N ("Data Enable"): pentru val idarea t ransferuril or pe magistrala de date; va
rnmnnclu circuitele separatoare plasate pe lini il e de date. I M /TO
f 1'/'/ /I? ("Data Transmit/ Receive"): pentru stabilirea transferului pe magistrala D--+ MEMR
cl11 cinic; este 1 logic atunci transferul este de la microprocesor spre exterior iar
1
_
M H ("Addrcss Latch Enable"): la demultiplexarea magistralei de
d11cn este O logic, atunci trabnsferu! este din exterior spre microprocesor. MEMW
11d1C'SC'/ [Link] a microprocesorului. Fig. 2.19 Generarea semnalelor de pentru transferurile cu memoria porturile;
MC ' l i'/ /PDEN ("Master Cascade/ Peripheral Data Enable): cu rol dublu: n modu! I
dn a magistralei de l/E are de /PDEN transferurile ' n varianta n fig. 2.1 8, amplificatoare pe liniile de date, ca
de dnto pe magistrala de intrare I iar n modul de a magistralei sistem acestea fie obligatorii.
1111 de MCE are rol n ciclul de acceptare a unei cereri de ntrerupere _ce_ .. ". cu. m_i croprocesorul 8. 086. _n. modul max. im ' :" :
r11t111\l i t:Rnd mai mLtlte circuite controler pentru generarea cererilor de ntrerupere. _
P. Figura 2.20 [Link] schema bloc a unei centrale cu microprocesorul 8086
Unit 1to cu microprocesorul 8086 n modul mi nim - n modul maxim.
Figura 2. J 8 schema bloc a unei centrale cu microprocesoru! 8086 Modul de lucru maxim este recomandat n complexe, n sisteme 111[1lti-
l11 111111lt1l 111inim. I mai de
I
...
RES
RDYJ
AENJ
8
4
A
CLK
MN/
MX
8
o
s
6
S2-0
3X
2X
L
s
'
4
G
Fig. 2.20. UC cu microprocesorul 8086 n modul [Link]
llHE
015-0
porturile ci ele vor fi generate de circuitul dedicat 8288. Acesta dii:_i partea
iilicropiocesorul ul frifor matic de stare din el ce microprocesorul pentru
a ce semnale de genereze. In sisteme mqltiprocesur, circuitul 8288 este
comandat de arbitrul de care i permite sau nu genereze semnalele de li
pentru transferuri le cu memoria porturile. i
2.9. Conectarea memoriilor la o unitate cu
microprocesorul 8086
Pentru conectarea memori ilor la o unitate cu microprocesorul 8086 trebuie
rornit de la modul n care microprocesorul "vede" memoria, fig. 2. 13. Se
memori a este n 2 blocuri, unui conectat la a magistralei
de date, doar din adrese impare vali dat de semnalul /BHE conectat
la jumiiratea a magistralei de date, doar din adrese pare val idat de
semnalul AO. Val idarea transferuri lor pe magistralei de date sau pe ntrnaga
de date se face n conformitate cu tab. 2.3.
Figura 2.21 o pentru a memoriei:
.l - o 128 Ko memorie EPROM, n zona eOOOOh - fffffh, cu circuite 275 12 (capacitate 64 Ko),
896 Ko memorie SRAM, n restul de memorie, cu circuite 62256 (capacitate
32Ko).
Pentru generarea semnalelor de selec! ie s-a utilizat un circuit decodificator 74LS 138.
ntruct accesul microprocesorului la un cod de se face ntotdeauna pe
cuvnt, cele 2 circuite EPROM vor fi comandate mpreu111i . Conectarea circuitelor SRAM
accesul la nivel de cuvnt sau ele octel. n acest scop au fost generate
!
I
I
I
I
I
i
Cap. 2. ?llicroprocesorul 808(1
Al51 :
Al9
AlS
Al7
2
AO 5
CE
OE
A1 5
AJ 4
AO
CE
OE
A2
Al
AO
El
F.2
F.J
6
2
7
2
5
6
L
s
I
3
8
07
00
YO
Yl
Y2
Y3
Y4
YS
Y6
Y7
Al4
AO
cs
OE
WE
A14
AO
Q?
OE
WE
SELrn
SELu
SE1':2
SELnJ
[Link]
SEL!6
SE4:
7x
Al 4
6
I/O
6 I/ O'
2
.2
2
AO 2
s
5
6
6
l/ Ot
WE
At 4
6 I/O
1107 6
2
2
2
AO 1
5
5
6
I/O
.i:;s 6
1100
Q.!f
WE
7x
-- SEi..m1
SElm
BHE
-WR_-c
(iYIWTC) __
AO LWH
Fig. 2.2 l . Conectarea a I Mo memorie la un microprocesor 8086
de pentru scriere, /HWR ("High Write") pent111 scrierea pe li
D8 - Dl5 /LWR ("Low Wri te") pentnr scrierea pe linii le DO - 07. ambele seir
de pentru scriere sunt act ive, se va face scriere pe cuvnt. Pentru citire nu
vreo ntruct microprocesorul va prelua de pe liniile de date,
prin program chiar memori ile o confiouratie de dimen
mai mari . Semnalele clin paranteze le n locuiesc pe cele de deasupra ;1 modul
Fig. 2.22 conectarea a 256 Ko memorie n conformi tate cu h;
0
128 Ko memorie EPROM n zona eOOOOh - fffffh, <.:li circuite 27256 (32 Ko).
" 128 Ko memorie SRAM n ;:ona 00000 - I ffftli. cu circuite 62256 (32 Ko).
'i8
o
CI
...
8 . . . 8
8 ... 8
Ji
:<
i-'.'
1tJ I
"i'
ft
\ONN'-'"l \0- ft"!
..,.
< . .
!"-
it'.l
SISTl::'lll: <':U Ml< :i{t >PR< lt :[Link] >.\ 1(1
..
'O
00
o
00
....
o
V.
o
u
o
.....
o.
e
u
.E
c:
::l
Q.)
.
5
E
1
.
"
I
2. i\licroprot:t:SOntl 8()86
de memorie acoperite de fiecare ci rcuit sunt:
" 62256 - I: OOOOOh, OOU02hl . , Offfeh;
62256 - 2: OOOO!h, 0000311 .. .. , Offftl1;
" 62256 - 3: lOOOOh, 10002h, . . . , lfffeh;
o 62256 - 4: IOOOl h, 10003h, ., lftffh;
o 27256 - I: eOOOOh. e0002h, ... , efffeh;
o 27256 - 2: eOOO I h, e0003h, ... , effffh;
o 272j6 - 3: fOOOOh, f0002h, ... , ffffeh;
Q 27256 - 4: fOOOlh, f0003h, ... , fffffh.
2.1 O. Conectarea porturilor la o unitate cu
microprocesorul8086
59
Pentru conectarea porturilor la un microprocesor 8086 trebui e seama de
toate prezentate la paragraful 2.1.6. multe cu conectarea
memoriilor, fi ind
" pentru conectarea pq(turilor este decodificarea a mai linii de adrese;
pentru conectarea memorii lor trebuiesc luate n considerare toate lin iile de adrese
A 19 - AO, pentru conectarea porturilor sunt suficiente liniile A 15 - AO sau chiar
A7 - AO, adresarea porturilor este
f; semnalele de folosite pentru validarea porturilor vor fi cele active la
transferurile cu porturile: M/ /!O = O, microprocesorul n modul
minim /IORC, / !OWC microprocesorul n modul minim.
Figura 2.23 o de intrare de la citirea unor comutatoare,
fi gura 2.24 o de de la comanda unor LED-uri iar
figura 2.25 pentru generarea semnalelor de pentru cele:?.
__ _,8 x12k
AO YO
D15-8
I L
I
s
sau
2
+
A7
4
D7-3
4 Y7
SE LIN
Gl
G2
Fig. 2. 23. Conectarea unor comutatoare la un 8086
60 < .!.' !\!!t .l(l ll'Rl li .!:st >.\HJ:
8 X 330 Q
D15-8
ID
I Q
>
L
sau
I
s
D7-0
3
8D 7
3
SELOlrr
G
oe
Fig. 2.24. Conectarea unor LED - uri la un microprocesor 8086
---
RD(IORC)
A7
SE LIN
Al
YO
A6
AS AO
L
Yl
SELOUT
s
1
__Ml!Q__
3
WR(lOWC)
(IORC" IOWC)
8
VALl
E2
Y7
VAL2 E3
001t
Transfer pe D7 - 0 D15 8
VALI AO /BHE
VAL2 /BHE AO
Fig. 2.25. Generarea semnalelor de
t
I
I
I
,.
I
t
'
I
t
t
Semnalele din paranteze corespund modului maxim. cl in figura 2.25
ntre adresa po11ului sau ju'.nMatea dm magistrala de date la care 1
este legat portul semnalele care decod1hcatorul. . . . .. .i
Figura 2.26 o pentru conectarea a 4 porturi pe 8 rn adresele pe ,;
8 2 fii ne! conectate la liniile D7 - DO iar celelalte 2 fiind conectate la lini ik DI 5 D8.
t
Cap. 2. ,\ficroprocesornl 8086
Pentrn decodificare vor fi folosite doar liniile de adrese A 7 - AO. Vor fi utilizate
de intrare I cu adresare a po11urilor. Ponurile pot fi adresate cu <
20h, 21 h, 30h 3 l h. Semnal ul /SEL20 este seleqia pentru po11ul cu adresa 20h
A6
AS
A4
A7
__Ml!Q__
(IORC
0
IOWC)
A2
Al
AO
El
E2
E3
L
s
1
3
8
YO
Yl
Y2
Y3
Y4
YS
YG
Y7
Fig. 2.26. Conectarea a 4 porturi cu adresele pe 8
Figura 2.27 conectarea mai multor porturi pe 8 cu adrese pe
Pentru decodificare vor fi luate n considerare liniile A 15 - AO iar
intare - folosite vor adresa po11urile indirect, prin intermediul registrultii [
fost generate semnale de pentru 8 porturi cu adrese n zona 037811 - 037t}
A9
AS
A6
A3
_Ml!Q__
'10RC
0
IOWC)
AO
l.B
l A
lG
7
4
L
s
l
3
2B 9
2A
2G
lYO
lYl
1Y2
1Y3
2YO
2YJ
2Y2
2Y3
Fig. 2. 27. Conectarea a 8 porturi cu adresele pe 16
-
s
-
.. Si
-
s
-
S:
Sl
Sl
Sl
-
Sl
(
.,
>-
::1
SIS'J'l'. fl ll ' < :t i t-.-111 :JH Jl'll< l< l1\RF
2.11. Conectarea microprocesorului 8086 n sisteme
multiprocesor
Microprocesorul 8086 dispune de resurse pentru conectarea n sisteme
111ulliprocesor: t
fac il itatea de LOCK pri n care nu doreste cedeze magistralele
cedeze accesul la resurse i se cere cedeze magistralele o ,,
va face),
fuuilitatea de lucru cu un coprocesor utiliznd linia TEST WAIT; f:
mecanismul de cedare - acceptare a din modul maxim, poate ,
Comunica cu alte 2 microprocesoare. J
Circuitele din familie (controlerul 8288, arbitrul de !!cu
lll'USll.I astfel nc!_ mic_!:oprocesorul 8086 poate fi conectat la sisteme
11 ultiprocesor cu de tip multimaster, la care
po1turi) comune.
2 probleme care trebuiesc rezolvate de proiectant:
sincroni zarea ntre migoprQcesoare n scop_ul conflictelor; f
l<! magistrala .I
Ponlnt sincronizarea microprocesoarelor mai multe Una n i
11111111111.m unui tact comun pentru toate microprocesoarele, eliminnd astfel defazarea i
111111 111kroproccsoare. poate fi doar cnd dimensiunile sistemului ft
1hwl11 muri, <.:find pot apare probleme ca: ntrzierea ntre diferitele semnale de tact, I
t1VQ11l1111lc reflexii, ale fronturil or semnalelor de tact etc. toate conducnd la ,
l11t111t10111 flinc1 ionare a sistemului.
() 1mlulie mai n existenta unui tact local pentru fiecare microprocesor,
li\ 1 d9vcni11d asjncrone unul de Cererile microprocesoarelor de acces la
1
11111 vor fi sincronizate de un tact extern de mare
111 I de acces pe magistrala Avantajul asigurat de
1 h 11111dl1l:lritatca hardware-ului. sunt necesare noi ale sistemului, pot fi 1
11dn11"11lr noi module, a pe cele existente. ;
lmplomcntarea acestei se poate realiza n moduri. In primul, toate ,,
1 111 lll de occcs la ntr-un arbitru care, n plus, va sincroniza toate
l1111nillu cu tactul magistralei, de mare sunt asincrone, una de 1
1 r 11lt1lltl lnr nrbitrul va alege microprocesorul i se va permite accesul la magistrala .
1111111111n. f11 cel1llalt mod, utilizat de firma Intel, cererile sunt nti sincronizate cu un tact
1 h 111 de 111arc apoi n arbitru. n acest fel, circuitele comune de arbitrare .
1111! la minimum ceea ce duce la n unul
tll111 ln11ltclo de sincronizare, situate acum local, se va defecta este eli minarea r
li po cnre se circuitul microprocesorul de care iar restul sistemului va
1 111111111111 11\ func(ioneze. n mod, defectarea unuia din circuitele de sincronizare
d111111 111 opri rea ntregului sistem. n plus, deplasarea mecanismului de sincronizare la I
1il v1 l11l 111i croproceso1ului permite controlul direct al acestuia asupra ceea ..
1 r 1111 '" p11len realiza, la cost n mod. i
Cap. 2. 8080
63
Pentru arbitrarea cererilor, circuite arbitru de n familia micro-
rocesorului 8086 mie de sincronizare i arbitrare au fost reluate de circuitul
arbitru e 8289.
2.11.1. Arbitrarea magistrcilei comune de circuitul 8289
Arbitrul de 8289 cu controlerul de 8288
a conecta centrale cu 8086, 8088 sau 8089 la sisteme multiprocesor de tiR
multimaster. De fapt calea prin care arbitrul de oermjte sap 011 1m11j mjcro-
illocesor acceseze resursele magistralei com11ne este circuitul Procesorul
arbitrului ele ca cum ar avea controlul excl usiv
asupra magistralei comune. procesorului nu i se permite accesul la
arbitrul de mi va permite accesul fa controlerului de
8288. precum amplificatoarelor situate pe masistralele de date si adrese (acestea vor
fi n starea de mare Intruct comanda nu ajunge la partenerul
procesorului (memorie sau port), nu se va genera o achitare a comenzii (XACK) iar
procesorul va intra n de Semnalul XACK este n mod uzual folosit
pentru a comanda ROY ale generatorului de tact astfel procesorul va
n de cinci arbitrul de va permite accesul procesorului pe
magistrala controlerul de va putea genera semnalele de
iar amplificatoarele vor din starea de generarea comenzii,
se va genera procesor achitarea XACK, de modulul implicat n transfer, ceea
ce va permite procesorului din ele ncheierea ciclului curent
Deci arbitrul de este de evitarea conflictelor pe magistrala
ntr-un definirea unei n cazul
mai mulcor cereri de acces simullane la magistrala Arbi tru 8289 penrnte
- trei tehnici de stabffire tehnka tehnica
tehnica ...
n figura 2.28. Fiecare arbitru are o !inie de cerere
de 7B"R.E ("Bns Re, uest"), entru a ob ine accesul e mao-istrala
Toate liniile . ntr-un codi 1cafclrCu rioritate care va genera a resa a
liniei /BREO mai la un momerit dat. Adresa- aste
va de un decodjficator pentt;u a obtine semnalul de achitare
{B_PRN ("Bus Priority In") care se va la arbitrul
care a cerut accesul la magistrala
Arbitrul care a primit dreptul de acces [Link] accesul propriu
prin intenrn;diul c.i.@.!Jitului 8288, imediat ce aceasta
un arbitru magistrala, el nu o poate aycesa imediat ci trebuie
ce prezentul al magistralei ncheie ciclul de transfer. La
unui ciclu de transfer, prezentul nu mai are prioritate
magistrala, dezactivnd semnaJ ul /BUSY. Acesta este un semnal activ la O logic, comandat
prin SAU cablat, conectat la intrarea arbitru din sistem. ,Atunci cnd iBUSY
devine l logic, arbitrul care are prioritate, are SC!1ma!ul / BPRN activ, pe
semnalul /BUSY indicnd astfel tuturor arbitri
esle Toate transferurile pe magistrala sunt sincronizate cu
/BCLK, astfel stabil izarea tuturor circuitelor.
64
Arbitru
8289
l
,, r: .
BPRN
-JJrRe-
Arbi tru
8289
2
Codi ficator cu
prioritate
Decodilicoror
Arbitru
8289
11
BPRN
. ( ,
i
BPRO
OUSY
CBRQ
I
I
Fig. 2.28. pentru stabilirea I
S;!.@l>}ste n "guco 2.29. A<b;tddo " '."' fo '
astfel -
de se conecland ( B:ts P1.1ot.1ty Out at btltt'.!t
11
I
prioritar la intrarea / BPRN a arbitrului imediat mat pn?ntar. 10,11tate '.
va avea intrarea proprie /BPRN la O logic. d: care
pot fi n depi nde de tactului comun, / BCLK de mtirz1erea de
propagare de la arbitru la arbitru. De exemplu pentru un tact cu de I O MHz,
se pot conecta doar trei arbitri. . . . 1
este cu cea doar [Link] 111
mod dinamic. Codificatorul cu prioritate este nlocuit de un c1rcu1t ;nai care ,
ntre arbitri care cer acces, asigurnd astfe l arbitru tnnp egal
pe magistrala. . . . . . '
avantaje dezavantaje ale rotat iva cer.e 111a1
circuite, iar nu poate fi dect pentru un . de
n cel .[Link]. bu'.1. este [Link] de paralela, 1
conectarea unui nu mar mare de a1 bttt t un hat cl ware exces1\ .
2. ;\Lcroprocesorul 8086
Bt
Arbit ru Arbitru Arbitru
8289 8289 8289
I 2
BPRN Ill'RO
llPRN
BPRO
BPRN
Fig. 2.29. pentru stabi lirea
2. 11.2. Controlul magistralei comune de circuitu! 82E
8189 permite accesul la magistrala a procesoar
master de mare Pro_cesorul cu prioritate mare va putea intra pe rnagis
atunci cnd prezentul al magistralei ncheie ciclul. Procesoru
prioritate mai va pLltea intra pe nici un procesor cu prioritate
mare nu o un procesor prioritar magistrala un procesor
pri oritar o arbitrul va activa, la O logic, semnalul /CBRQ, indicn
procesorul ui mai prioritar acestuia un procesor mai prioritar magist
atunci cnd aceasta va fi
Configumrea arbitrului 8289 depinde de structura sistemului va determina mc
n care preia magistrala comuna. arbitrul este conectat la un proc<
care are acces att la magistrala ct la o arbitrul se
supune tehnicii de priorit izare doar pentru accesele la magistrala procese
magistra!a arbitrul va permite unui arbitru mai prioritar
preia magistrala acesta i intrarea /CBRQ. Un exemplu
asemenea este aceea n care memoriile sunt legate pe magistrala
porturile sunt legate pe magistrala Atunci arbitrul va permite accesul proceson
la memorii doar trecnd prin partea de prioritizare. Arbitrul ce fel de acces
executa procesorul. decodificnd liniile de stare ale acestuia.
.f'1agistr,?.lsi_ de un arbitru mai prioritar este unui arb:
mai prioritar, ntr - o acesta a cerut-o, prin activa
semnalului /CBRQ. Aceasta este de inactive T
1
care se ntlnesc doa1
procesoarele 8086 8088. Ele apar procesorul ui de a aduce instruc\i
n avans de a le depline lntr-o memorie . . ntruct procesorul poate ad1
mai repede dect le poate executa, 111e11101l a se va umple
i_ntra n inactive cnd ncepe mem9r
intern. ln timpul acestor inact ive, magistrala poate fi unui arbi
inai priori tar.
66
SISTl :,.\(I 1:11 ;\Jll:](l i J>IU lC:LSt L\1(1. ., ;
!
Cedarea magistralei comune poate fi de un procesor, prin .
intermeclit1l semnalului /LOCK. Procesorul acest semnal propriul
arbitru cerndu-i acestuia nu cedarea magistralei ct timp semnalul este activ. J:
Semnalul este folosit pentru a proteja critice de cod, de ex.: lucrul cu semafoare,':)
transferurile cu harddisk ul, de refresh etc. Trebuie remarcat un
cererea de cedare a magistralelor el va trebui i se chiar a
gune1ut semnalul /LOCK. Este sarci1.1a arbitrului nu
procesor vreo cerere de cedare a magistralelor daca acesta nu sa o cedeze. r11
2.11.3. Comanda controlerului 8288 de arbitrul 8289 .:l
Arbitrul 8289 controlerul 8288 prin intermediul liniei /AEN.
[Link] arbitrnl permite accesul procesorului la magistrala el va activa linia ;"
Aceasta va permite accesul separatoarelor de pe liniile de adrese date pe'<-
iar tampoanele de la de ale controlerului de "
111nglstralll vor fi scoase din starea de mare Semnalele de vor
1qml 13cncrate, de circuitul 8288, n de tipul de ciclu executat de procesor. : .
Dacii arbitrul nu permite accesul procesorului la magistrala el va:f
1hvnctivu semnalul /AEN, Ca urmare, circui tul 8288 va trece come serIUlalele de'- '
11>1111111dtl o transferurilor cu resursele de pe magistrala n starea lor De.J
M1rn1r11ca separatoarele de pe liniiie de date adrese ntre magistralele procesorului ,
nlu vor fi trecute n a 3-a stare astfel accesul altor procesoare
[Link] .
'
2.11.4. de sistem cu arbitrul 8289
fn fiunilia procesorului 8086 tipuri de procesoare: procesorul de VE,:'i
HOll 'J p1 ocesoare generale, non l/E, 8.086 8088. ir
d1111n 11mduri ele funclionare: ---
11111tlul lOif ("i; O Peripheral Bus") care permite accesul procesorului attJ_a la o :
111nglstrald de UE ct la o .. .
111odul ("Resident Bus") care permite procesorului att_ la o
relident ct la o
f 11 mod uzual confi gurarea arbitrului trebuie se de procesorul la l
1 n11 t!'llO conectat modul IOB pentru un procesor de l/E modul RESB pentru
1111 p1 non este. alegerea I
ln1 n11d11 se 111 de caractenst1c1le '
C'elc moduri se comandnd terminalele cu denumiri.
l tlll nici un te1minal, se va instala un al treilea mod, modul Single
111 1111 u lll bllrul permite conectarea procesorului doar la o
11111lirlr terminale sunt comandate simultan procesorul poate fi conectat ntr-un sistem I
111 de l/E 1
Mnclul Sl ngle Bus .""
Figllla 2.30 schema unui master care se poate conecta doar la o
11111111111\, lip rnultimaster. Arbitrul 8289 va lucra n modul Single Bus. "
Cap. 2. 8086
8 'I
_; ':..--
2
/ .:.. I';-;)
8
4 READY -
ROY! A
CLK
r' ml
I
l CLK
-
S2
-
4
-
-
READY
St
8 so
o
--
LOCK
8
6
-
BHE
M!i l Al9-16
r
MX
AD15-0
K
I
JOB
- LOCI( 8
;';. CU<
l
8
9 SI
-
5;1
-
'-t> SI
;:.. Sii
8
2
-----
K> CLK
8
DcN
- 8
- OTI R
- ALE
V
4> oc
J
)
L
s
I IK
3
:;,.>
7
3
I
-------,
I
[J- I
Rr,se
I
iiliSY
I
I
t?>- CBRQ
BPRO
BPRN
.. I
I
AEN
.
I
I :
.:1
1
. I
' AE.\I
I
HRECJ
Bc1:R
MRriC
-!l I I> j MWTC
[Link]("
I
I
fp.
I
<}----+--
100 <I
I
I
- 1-
I
I
I
I
I
I
---t--t.-
I
.. ->
-
I
I
I
I
!ORC M
lUWC A
AiOWC g.
INTA
BHE
Al 9-0
c
o
m
u
n
a
l 4'
f,) 1' -- - - -
I
"
I
1 _,.:
I
I
, _ L L
I
__ _,____, . 1'
i ;
s I
2
<'L..--r-=1'>
.' (' ' ' ::-
4
r--r--v A
J -
. !. G
5
I
OIR I
._____ I
I
I
--- ---'
D15-0
Fig. 2.30. Conectaren n modul Single Bus
de de tact proc,esorului sunt conectate att la controlernl
. cal la arb.1trul de ln acest fel , att arbitrul de ct
controlerul de maaistrala- cL 1 1 d l
0
. e 1pu c1c u pe care-l va executa microprocesorul.
contr?lerul pnn 111ten11ed1ul liniei / AEN. Tenninalul /JOB al arbitrn!ui
e ie,:,a.t la I iar tem1malul IOB al controlerului este legat la O. Ter1ninalul RESB al
a1b1trulu1 este legat la O.
.Tot arbitrul prin intermediul separatoarel or de pe rm1gistralele de
date accesul [Link] la lini ile de date adrese ale magistralei
comune .. Daca nu este pennis accesul, acestea vor avea n a 3 .. a stare.
, Fi gura 2.31 un sistem multiprocesor cu arbitrul 8289 n modul SinJe
caracteristici!e de linie, receptoare, 4 Data2
Out Data Linie de date
li mei; terriiinatoare. - - 5 Data3
Viteza mare de porturile paralele conforme cu standardul 1284 nu era 6
Data4
atunci cnd la acest port erau conectate doar imprimante matriciale, echipamente lente 7
Atunci, cnd a fost conectarea unor echipamente ; 8
periferice mai rapide: imprimante laser, scannere, CD-ROM, a devenit
necesitatea unei viteze mai mari a portului. De asemenea, de
unele echipamente periferice: scannere, CD-ROM, precum de multe
de control a impus regndirea portului paralel. Aceste au fost
de standardul IEEE 1284 n totale cu
porturile paralele echipamentele periferice mai vechi.
7 .1.2. Caracteristicile de ale portului paralel
Portul paralel din conectorul de 25 pini , tip D,
situat pe panoul posterior al calculatorului . din totalitatea
circuitelor registrelor de date stare care ntre un echipament
periferic sau o magistralele ISA sau PCI ale calculatorului. Fizic,
se poate afla pe o de extensie, la PC-uri le mai vechi, sau pe placa de
la PC-urile mai noi. Ea este prin circuite distincte, la PC-urile mai vechi,
sau ntr-un controler de II E, la PC-urile mai noi.
. _La_ portul paralel este 8
linii de sunt n 3 grupe:
e 8 [Link],
9
10
l l
12
13
14
LS
16
17
18-25
Data5
Data6
Data?
/Ack
Busy
PaperOuV
PaperEnd
Select
/Auto-Line
feed
/Error/
/Fault
/Initialize
/Select Printer/
/Select In
Gnd
Out Data
Out Data
Out Data
Out Data
Out Data
In Stare
In Stare
In Stare
Stare
In/Out Control
In Stare
In/Out Control
ln/Out Control
- -
Linie de date
Linie de date
Linie de date
Lini e de date
Linia de date cea mai
Activ la O. datele au fost
preluate de peri feric
Activ la I . imprimanta este
nu poate primi date
Activ la I. lipsa hrtiei.
Activ ia I. imprimanta este
on-line
Activ la O. imprimanta
insereze automat un avans al hrtiei la
fiecare revenire a capului de
Activ la O. unei erori
Activ la O. imprimanta
Activ la O. imprimantei
este
Masa
Tabelul 7.1. Semnatele portului paralel
Da
Da
Da
e de controL4 linii
" de stare, S linii.
a portului paralel, liniile de date au fost pentru a
transfera date ca urmare erau ln variantele ulterioare,
aceste linii au devenit . fost
"Inversare hardware" poriului semnalul.
d: exemplu, la intrarea Busy imprimanta 1, atunci portul va citi semnalul ca
firnd O. ln ceea ce semnalele de inversate de hardware ele trebuiesc
negate prin program nainte de a fi trimise la port. '
de au fost _
,_:...>
.
l 7U SISTl :.i\ff. r .ll MIC!lOPRO<:ES( l,\Jl/:.
Standardul 1284 prevede 3 tipuri de conectori:
o de tip A, cel de 25 pini , cunoscut uwal sub numele de conector D, fig.7. I.a
de tip B, un conector Centronics de 36 pini, existent la majoritatea imprimantelr
cu jet sau laser, fig. 7. I . b, {.
de tip C, un conector tot Centronics de 36 pini dar de dimensiuni mai mici dect
cel de tip B, fig.7.1.c.
I l
0000000000000
000000000000
a) de tip A (D)
14
c: [!::::;::::::::::::: /] :p b)detipB
I
od] ( I : : " " " " " " " '] J [bo I o) de tip C
. _ ... I I I I I I I I I I I I C_ . .
Fig. 7.1. Conectorii de standardul IEEE 1284
Ct>rH!Ctoru I de tip C este cel recomandat pentru noile porturi paralele. Este mai
111ll u1 celelalte tipuri, permite o prindere mai a cablului, are caracteristici electrice
111111 h1111u n plus, prevede 2 pini pentru 2 semnale suplimentare: Peripheral Logic
111&111 {fost Logic High. conectorul cel mai cel de tip
:\ conector se pe panoul posterior al PC-ului.
S"mnalelor portului paralel le sunt asignate ranguri din registre din
l 1111lu 111odurile folosesc 3 registre, de la care unele moduri altele.
Ic corespund adrese de port din de I! E al PC-ului. Registrele sunt
du p11rntisor ca blocuri contigue aflate la adrese succesive, pomind de Ja o de
11 IOS-ul ("Basic Input/ Output System") existenta ntr-un calculator a
p1l11n lu 3 porturi paralele pe care le LPTl, LPTI LPTJ.
lllll1111tt' Slllll: .
J hclt. pentru portul paralel aflat pe video, la PC-urile mai vechi sau, mai
11ou, pc de -
11a11 pentru LPTl, n mod uzual
J 1811 pentru LPT2, n mod uzual.
1,u pornirea calculatorului, BIOS-ul este cel care porturilor paralele
dr111111111ile LPT. La nceput unui port paralel la adresa 3bch l
.,,n l denumirea LPTI. n continuare adresa 378h
.,:'
I
Cop. 7. ComanJa cxtlrnc cu mier<J([Link] PC: 171
acolo un port paralel atunci i la 3bch nu a un po11
i LPTI : Simi lar, este
adresa 278h. Ca la adresa 3 bch se poate afla doar portul paralel LPTl, la
afla LPTl sau LPT2, iar la 278h se pot afla LPTl, LPT2 sau LPT3.
porturi 'paralele mai vechi la care pot fi setate denumirile LPTl,
LPT2 sau LPT3 prin conexiuni.
''. ntruct denumirile adresi;le alocate porturi lor paralele pot diferi de la un
calculator la altul, este stabil irea unor puncte de reper pentru utilizatori,
pentru aceia care doresc po11ul paralel. Acestea sunt oferite de BIOS care
n RAM, adresele de alocate porturilor paralele la adrese fixe, tabelul 7.2.
Semnificatie
0000:0408 de pentru LPT I
0000:040a de pentru LPT2
0000:040c de pentru LPT3
Tabelul 7.2. Adresele de din RAM care adresele de ale porturilor paralele
n continuare vor fi descrise registrele ele folosite de mQ_qt1_r_i!e de lucru. .,
de se '.o.1;t :/
de ... figura 7.2. Este un port u111d1rect1onal m modurile ae lucru "Compat1b1hty , .
,;Byte", '.'EPP'.' "ECP". . . . l
7 o
Data? Da!aG , I DataS Data4 Dattl I _Data2 Datai -! Data(]
Fig.7.2. Portul de Date
(
I
1:
!:a + 1 se _ii _port de Stare, figura 7.3.
corespund la 5 'linii de infrar\i_(pinii 10 - 15 ai conectorul ui), un rang i,
stint rezervate. Rangurile notate * coresjjltid
1
unor semnale inversate n i-'ngul 2 se I, nu s-a
generat ntrerupere. n rangul 7 se l, la pinul de la conector
valoarea semnalului Busy este O. Portul de Stare poate fi doar citit.
7 o
[ Busy* Ack l l Selectin I Error ] IRQ* Rez. Rez. ]
Fig.7.3. Portul de Stare
!::a .adresa +2 se np1nit figura 7.4.
sUnt riefofosite. 'Rangurile 5 4 sunt ranguri de control intern. Rangul
4 __ [Link]-generarea unei ntreruperi iar rangul 5 va -va-lida modul care
pe1111ite transferul n ambele sensuri a 8 de date. Porturile paralele vechi nu
acest mod. Pentru ca un asemenea po11 suporte acest mod, va fi t1
la nivelul hardware-ului po1iului. . ;f.1;
la 4 [Link] Printer, Ini tialize, Autq_/
Linefeed /Strobe. Cele notate cu* sunt inve:ste-l iardware.
"'
J
;
j
i
, 1
172
7
Nefol. Nefol.
o
/Strobe*
Auto Line feed*
....__ _ __,. InitiaHze Printer
'-----& Select
Enable :}jia Ack Line
'-----<11>- Enable Bi-Directional Port
Fig.7.4. Portul de Control
aceste linii, normal de fie Aceasta din schema rangurilor
corespoiWenre-a1ra>ortuceCcintro1; fig.7.5. OC "Open Colector".
cum se din acestor ranguri sunt cu colector n gol
po1turi la care aceste sunt "ITL normale). de tragere
este de 4,7 kQ poate fi pe placa portului, la periferic sau, mai rar, niciunde. n acest
din caz va fi plasarea n exteriorul portul ui a la +5 V,
valoarea fiind de 4,7 kQ. Aceste nu vor afecta corecta
a po1tului chiar alte de tragere sau chiar portul are
n aceste ele vor ca suplimentare de aproximativ
1 mA. Pentru a uti liza aceste linii ca va fi n port a
xxxxO I 00 ceea ce va I la cu colector n gol.
Nivelele de tensiune ale semnalelor de la portul paralel sunt TTL. Curentul
absorbit I generat este dat n tabelul 7.3.
Linia
Control, I.a O Io ic (<0,4V 7 mA absorbit 14 m.A absorbit
Tabelul 7.3. Curentu 1 absorbit I generat la liniile portului paralel
7 .1.3. Cabluri caracteristici electrice
Standardul 1284 prevede utilizarea a 3 t ipuri de conectori. Tabelul 7.4
semnalelor la pinii conectoril or. Pornind de la acest tabel se pot construi
diferite cabl uri ntre conectori la po1t, respectiv la periferic. Tabelul 7.5
trei tipuri de cabluri. Fi ecare linie de semnal este de o proprie.
Fiecare a 2-a linie din tabelul 7.5 corespunde unei conexiuni de
Din punct de vedere electric, standardul IEEE 1284 2 nivele de
echipamente cabluri:
echi pamente cabluri de nivel 1 care nu dispun de mare de transfer
de standard ci doar de facilitatea de
echipamente cabluri de nivel 2 care mare de transfer.
'
,,
' 'f;
r:
.J
(3p. 7. Comanda cxtcrrn: cu n11n1Jcalcul.1cocul l'C
+5V
tampon
DO
tampon intrare
oe
/Strobe (pin I )
+5V
tampon
Dl /Autolinefeed (pin
tampon intrare
oe
+SV
tampon
D2 /Initialize (pin 16)
tampon intrare
oe
+5 V
tampon
D3
/Select Printer (pin
tampon intrare
oe
. Fig.7.5. Schema rangurilor de din Portul de Control
Pin pentru semnal Pin Jentru masa cor
Nume senmal
A(D)
Centronics Centronics
A(D)
Centronics Cer
B c B
/Strobe I I 15 18 19
Data O 2 2 6 19 20
Datai 3 3 7 19 21
Data2 4 4 8 20 22
Data3 5 5 9 20 23
Data4 6 6 10 2 1 24
DataS 7 7 11 21 25
Data6 8 8 12 22 26
Data? 9 9 13 22 27
/Ack 10 JO 3 24 28
Busy 11 l J l 23 29
PaperOut/PaperEnd 12 12 5 24 28
Pin pentru senmal Pi n pentru masa coresp.
A(D)
Centronics Centronics Centronics Centronics
B c
A{D)
B c
Select 13 13 2 24 28 20
I AutoLinefeed 14 14 17 25 30 35
/Error //Fault 15 32 4 23 29 22
/In irialize 16 31 14 25 30 32
/SelectPrinter I /Selectln 17 36 16 ?5 30 34
Host Logic f-li!!h 18
Logic High 36
Tnbelul 7.4. pinilor la conectorii de standardul IEEE 1284
Cablu A-B Cablu A - C Cablu B c
Conector A Conector B Conector A Conector C Conector B Conector C
l l 1 5 I 5
18 19 18 33 19 33
2 2 2 6 2 6
19 20 19 24 20 24
3 3 7 3 7
19 21 19 25 2! 25
4 4 4 8 4 8
-
1-
20 22 20 26 22 26
1-
5 5 9 5 9
20 23 20 27 23 27
6 6 6 10 6 10
21 24 21 ?8 24 28
-
1-
7 7 7 I l 7 11
21 25 21
1-
29 25 29
8 8 8 12 8 12
22 26 22 30 26 30
\)
9 9 13 9 13
22 27 22
31 27 31
10 10 10 3 10 3
2'1 28 24 21 28 21
li 1 l 11 [
11 1
23 29 23 19 29 19
12 12 12 5 12 5
=
24 28 24 23 28 23
1-
13 13 13 2
13.
2
1-
24 28 24 20 28 20
14 14 14 17 14 17
25 30
r
-:> 35 30 35
-
,)t :
,
,,
r.' '
J,.
":.
.\
Cap. 7. Comand.1 nplica1iilor cxctrnc tu 1rncn 1calculn1orul l'!:
175
Cablu A-C
Cablu B - C
Cablu A-B
Conector A Conector B Conector A Conector C
Conector B Conector C
15 32 15 4
32 4
29 23 22 29 22
_.)
16 31 16
14 31 14
25 30 25 32 30 32
17 36 17 16 36 16
25 30 25 34 30 34
Tabelul 7.5. Trei tipuri de cabluri paralele
Echipamentele cablurile de nivel 2 nu pot utiliza dect conectori de tip C.
Echipamentele care se trebuie amplificatoare receptoare de linie
conforme cu din standard iar cablului trebuie respecte, de
asemenea, standardului. n aceste condilii, lungimea a
cablului este de I Om. Pentru echipamentele cablurile de nivel l nu
electrice (amplificatoare de linie, receptoare de linie, a cablului) existente
oentru nivelul 2. Se doar ca fiecare fir de semnal fie de un fir de
Pot fi conectorii de tip A, B sau C. n aceste lungimea
a cablu)ui este 'de 3m.
7.1.4. Moduri de lucru
," c.inci_ moduri de lucru pentru interfata.
asigurnd transferul datelor n sens direct (PC periferic), n sens invers (periferic /
sau n ambele se1isuri. [Link] definite sunt: . I
este denumirea de standard pentru modul original, cunoscut
SPP; .
b) p inversi liniilor de ' ..
sub a 2 &rupe de cte 4 1 .
1
1
transferul invers a 8 simultan, prin intermediul liniilor de i
date; mai este cunoscut sub denumirea de mod octet sau
(.Enhanced Parallel Po11): d.e .mare a fost
pentru. peri feri ce ca: 9e . disc.. CD-ROM, adaptoare de '.
etc.;
e) ECP (Extended Capability Po11):_ de mare a fost !
pentru [Link] cu jet laser. i-- - - - -
Toate po1:turile paralele existente pot transfera date n ambele sensuri, lucrnd n
"Compatibil ity" sau "Nibble". Modul "Byte" poate fi utilizat de mai porturi.
In toate aceste moduri, transferul se face prin program. Pentru fiecare octet de transferat.
programul va trebui datele, verifice starea imprimantei comande linia
/Strobe. Ca urma1e, rata de transfer a datelor va fi fiind la max.150 ko/s.
Uirimele moduri sunt mult mai performante. Ele au fost implementate 111
controlerele de II E afl ate pe placa de a PC-ului. Dialogul nu se mai prin
program, ci prin hardware. Programul va transfera o printr-o
OUT Controlerul de V E cel care va asigura, n continuare. ntregul transfer.
I
' " f
.. -,
' ., .
. .
:,
:!
176
SISl"l '.1\IF n : MICI{( ll'ROCl'S<
Modul " Compatibility" .: ,
i Este modul original de lucru al portului paralel, cunoscut
Standard sau SPP ("Standard Parallel Pon"). Este un mod
transferul datelor de la PC la periferic. A fost n standard pentru a
compatibilitatea cu mare de porturi paralele vechi existente. Transferul unei .....
1
:.
date se face n conformitate cu diagrama din figura 7.6. .
mio 500 "' mi" 500 os mio 500 "' ol ____ _
bate ------Ir Loate valide I l.___ ___ _
I 1
\------------
/Strobe
Busy --------------------------,
/Ack
!5 ms
Fig.7.6. Diagrama de transfer a unei date n modul "Compatibility"
ce trebuiesc real izate de program sunt:
scrie data la Portul de Date;
o citeste Poi1ul de Stare, rangu! Busy, pentru a vedea imprimanta este
o daci imprimanta este atunci scrie la Portul de_ Control linia /Strobe;
scrie la Po11ul de Control _!,inia /Strobe.
Linia Busy este atunci cnd preia o o n
propriu sau atunci dind perifericul nu poate primi o (de exemplu unpnmanta
sau este de la li nie). .
Semnalul /Ack are rolul comunice ncheierea transferului.
. Pentru a transfera o vor fi necesare 4 de 1/E cel tot attea
instructiuni. Efectul va fi o limitare a ratei ko/s, rata
- Po!lr 5.Q ceea ce este petiferice mai vechi, de exemplu
matriciale, dar insuficient pentru 1mpnmante cu laser, etc.
._[ Pentru a asigura o a ratei de a fost
n controlere de li E o care n care programul scne
} datele. Acestea sunt apoi preluate de controler transferate utili_znd
I
\ un dialog realizat prin hardware conform cu figura 7 ?, cunoscut
l numele "Fast Centronics" sau "Parallel Port FIFO Mode asigura.o
f transfer .. Nu este un mod definit de standardul IEEE 1284 ci acceptat
a unui mod definit.
f ... ... doar
,, .... : ....
4
. u .PO?iblJHatea..de. c!a,te_ !:I __ m?.d. Pentru
, . , l linii de control la care ce Jrej'u1esc c1t1te. 1.n
{ s.e realiza conexjunile, se scrie la Poi:tul.
I xxxxO I 00 pentru a plasa portului, comandate de cu colector m gol , J..-
Lf logic peiHru a putea fi, apoi! com_andate din exterior.
( :ap. 7. Co manda cxtcrm cu micwrnltulat<> rul l'C :
Modul " Nibble"
Este modul cel mai pentru a primi date de la periferic se
faptul la toate porturile paralele standard 5 linii prin care se poate
imprimantei. Aceste Jlnii pot fi a un n2 gni!J'
)[Link]. Pe linia /Ack nu se pentru este i dialog.
Semnalele por1ului paralel primesc alte denumiri Ac
prezentate n tabelul 7.6, analogia cu denumirile din modul stan
Pin conector Nume semnal Nume semnal
tip D SPP "Nibble"
Descriere
l /Strobe /St robe Out Neutilizat la transferul
2-9 Data0-7 - - Neutilizate la transferul
Cnd este o o jum
10 /Ack PtrClk In octet este pus la 1 c
la trecerea la I a lui
li Busy PtrBusv Io Data3, apoi Data?
12 Paper End AckDataReq In Data2, apoi Data6
13 Select X flag In Data l, apoi Data5
Semnal de dialog. Este pus
/Auto
14 HostBusy Out
tnd portul poate primi o j
Linefeed de octet. Este pus la I
de octet a fost p
15 /Error /Data Avail ln DataO, apoi Data4
16 /Inirialize /Init Out Neutilizat la transferul in
17 /Select In 1284Active Out
Este la l atunci cnd portul
un mod definit de lEEE I
18-25 Gnd Gnd - Masa
Tabelul [Link] modului "Nibble"
Transferul unei <late se face n confonnitate cu diagrama din figura 7.7.
HostBusy
PtrBusy
AckDalaReq
X flag
/DataAvai l
PtrClk
O -3 4 - i
Fig.7.7. Diagrama pentru transfernl unui octet n modul ''Nibble''
ce trebuiesc realizate de program sunt:
portul cere o de octet activnd ta O HostBusy;
peri fericul plasnd prima de octet pe linii activnd la O PtrCI
178 __ slSTl:Mt: <.li f\!IUH JPR< iU:s< l.\IU: Cnp. . <:[Link] tplic:11ul11r externe cu micrnc;ilculatorul JlC 179
portul pe HostBusy indicnd a preluat prima de octet de a scrie la Portul de Date, data va fi n registru dar nu va apare pe liniile de
nu poate prelua o date. Ea va apare pe aceste lini i atunci cnd rangul 5 din Portul de Control este
perifericul pe PtrClk ca la dezactivarea lui HostBusy; programat la O. . . . ,
" toate le se pentru a doua de octet;
La portun le mai 1101 este mtr-un controler de
r 1 Modul "Nibble" are marele avantaj de a oferi transfer de la periferic la port i/E. La_ portunl.e mai veclu la care implementai ea s-a cu ci rcuitele din se
, ... , , , ,
11
li poate mtervem pentru modificarea schemei portul este doar un1'd1' ect'10 1 l
. \ t azul portunlor mai vechi neafectand linule de control. Intrucat transferul :"' . r i
1
a
. ' . . i<.l Modificarea n deconectarea IOC a 1ea1st1L1l 1' 1 "41 S374 t
. P::? __ ma.i _,_. a rangul 5 al Portului de . , . . ' - ea sa
_este la m_ax.?0 ko/_ este (..;;.? I Ciontrol
111
c
11
ct11tulu1 c_a m figu1a ..
/ " . --- - . ( unele porturi paralele rangul 5 dm Portul ele Control este folosi t doar pentni dezactivarea
penfence imprimante etc. , d mt1e po1tu11le paralele ale 1. La
Modul "Byte" modului iar pentru activarea sa, se rangul 6 din Portul de Control. Se
Este primul mod care permite transferul datelor n ambele sensuri pe liniile de :.J poitului se utilizarea sa n m?dul
date. n plus, spre deosebire de modul anterior n care transferul spre port al unei date .. :\ .. . 1 7.7 denum1nle semrnficaptle semnalelor utilizate
du 8 biti se n 2 faze acum transferul spre port al unei date de 8 se face ntr-o analogia cu denummle semnalelor n modul standard, iar figura 7.9 diagrama
singura Modul mai cunoscut sub denumirea de mod sau octet ;: pentru transferul unei date n modul "Byte".
snu PS/2. Acest mod se pe o modificare a schemei po1tului prin care registrele '''.:,
r11rc datele la pinii de date ai conectorului pot fi dezactivate, trecute n starea
tlu existnd posibilitatea de a citi liniile respective. Schema Portului i,"
Pin conector Nume Nume
tio D semnalSPP semnal "B yte"
Descriere
do J)ote original este n figura 7 .8
l!-JA D0-7
Di Qi
"
/'\,.
Data 0-7
1111 Port de Control ,f
IOC
'
IOW CLK
74LS374
/
1Yi!Ai
2Yi2Ai
"-.J
IOR l_
lG
20
74LS244
Fig.7.8. Schema Portului de Date original
Modificarea n rolul pe care-l rangul 5 din Portul de
t '1111trol. La po1turile registrul 74LS374 avea intrarea I/O la
11111 li, deci datele erau doar La citirea acestui registru se primea data care a
hi' l (1 La po1tul rangul 5 din Portul de Control intrarea
III) 11 registrului. acest rang este programat la I atunci registrul trece n starea de
111111111 liniile de date pot fi comandate din exterior. posibilitatea
."
j
I
--
l ./Strobe HostClk Out
Este un serrmaJ de achit?.rc, [Link] val la O
la transferului octet
2-9 Data0-7 Data0-7 In/Out Date, pot fi transferate bidirccponaJ
Este activat la O indicnd date valide
10 /Ack PtrClk In pe linii este activat la I ca
la activarea la 1 a lui HostBusy
11 Busy Ptr:Busy In starea de ocupat a perifericului
12 PaperEnd [Link] In valoare cu /DataAvai l
13 Select X flag In Neutilizat n modul "Byte"
Este activat la O po1tul
14 I AutoLinefeed HostBusy Out
este gata pentru transferul unui oele!.
Este activat la I data a
fost
15 /Error /DataAvai l
Este activat la O de peri feric
In indicnd data po1t
este
16 /Tnitialize /Init Out Nefolosit. Este la l
17 /Selectin 1284Active Out
Este la 1 atunci cnd portul este n
un mod definit de IEEE 1284
18-25 Gnd Gnd - Masa
-
Tabelul 7.7. Semnalele modului ' 'Byte"
executate sunt:
"' portul poate prelua o activnd la O pe HostBt!sy;
perifericul plasnd data pe lin ii apoi la O pe PtrClk; .
" portul la 1 pe HostBusy indicnd a primit data nu este gata
pentru un alt octet;
p
.
t
L
i:
,i !
'
'
.' .
!
181)
" perifericul la 1 pe PtrClk po1tului;
portul impulsul HostClk ca pentru periferic.
Host Busy
o;\.
.. [!;"it
..:St-t
Data 0-7 Data X ..
PtrClk
' .
I :tt
Fig.7.9. Diagrama de transfer a unui octet n modul "Byte"
a verifica port paralel existent modul
poate folosi programul Debug dm DOS sau se concepe un program propriu. Se scrie L .'l
n rangul 5 al Portului de Control ncercnd n acest fel plasarea portului n [Link](:::
"Byte", sens invers. Apoi se scrie o valoare la Portul de Date se Portul
Date. portul mod "Byte". atunci n a 3-a stare. -
valoarea nu comc1de cu cea Daca valoarea co111c1de cu cea scnsa .
atunci portul este doar . : Jt
Modul EPP ("Enhanced Parallel Port") ';:!,
,,
Modul EPP a fost dezvoltat promovat de un grup de firme: Intel, Xircon, Zenith, -.:
Data Systems, interesate n vitezei po1tului paralel n asigwarea transferului .
n scopul unor echipamente mai rapide dect cele existente la" .
momentul respectiv: scannere, imprimante laser rapide, CD-ROM etc.
pentru portul EPP: EPP ! . 7 este o a modului EPP
la nivelul microprocesornlui 386SL, n setul de cipnri al acestuia, nainte :
de standardului IEEE 1284 EPP 1.9, varianta modului EPP care a fost i
de IEEE 1284. o ntre ele care va fi ulterior.
Tabelul 7 .8 denumirile semnalelor acestui mod
analogia cu denumirile semnalelor din modul standard.
M_oduL ?PP .. permite o _de transfer de 0,5 - 2 Mol sec.
l_q._c!!Lelalte moduri, gialog\1l_pentru ,.
; transferul unei nu mai este realizat prin program ci de hardware-ul poi-tuftif,
mai exact de controlerul de I/ E care po1tul paialel. - --- - - --
Modul EPP 4 tipuri de transfer:
citire date scriere date: n aceste cicluri se date ntre po1i periferic;
citi re adrese scriere adrese: n aceste cicluri se adrese cuvinte de
control.
Cnp. 7. Comanda apLicatiilnr tu mic rncakubt1.1 rul l'C
. Pin conector Nume sellUlal Nume semnal
Descriere
tipD SPP EPP
I /Strobe /Write Out
Este activ la O, indicnd c
Este l la citire .
2-9 Data0-7 AD0-7 In/Out Lmii bidirectionale de adres
IO /Ack /Intr ln ntrerupere de la perif
Este un semnal de dialog ca
cnd este O se poat
un ciclu, semnalul des
11 Busy AVait 1n datelor sau adreselor poate I
iar atunci cnd esLe 1
ncheia un ciclu, sem
strobare poate fi [Link]
12 PaperEnd Liber ln La utilizaton
13 Select Liber In La utilizaton
Semnal de strobare a datelo
14
1
AutoLinefeed /DataStb Out este la O se
ciclu de CiLireDate sau Scrif
15 /Error Liber In La dispozitia utilizatoru
16 /Initialize /Reset Out a perifericului
Semnal de suobare a adreselo
17 /Selectln /AdrStb Out este la O se t
de Ci tireAdrese sau Scriere/
18-25 Gnd Gnd - Masa
Tabelul 7.8. Semnalele modului EPP
Toate transferurile se n conformitate cu anumite diagrame
de modurile anterioare. diagramele nu mai sunt implementate prin prog
de catre hardware-ul (controlerul) portului. Programul nu va trebui dect i
ceea ce se va realiza prin intem1edi ul unei si ngure de i
pentru fiecare de transferat.
Transferul de tip scriere date are loc n conformitate cu diagrama din fig
sunt
programul scrie o la Portul de Date EPP prin intermediul unei instructi
mai exact prin intermediul unui ciclu de li E de iesire
' '
o portul datele pe linii semnalul /Write;
0
semnalul /VVait este la O. ca urmare semnalul /DataStr va fi activat
e portul de la periferic, semnalul /VVait la I;
semnalul /DataSt r este dezactivat ciclul se ncheie.
Semnalul flOW este senmal de ISA Din diagrama 7.9 se n
are loc n timpul unui ciclu ISA. Un nou transfer poate ncepe numai
1nche1erea ciclului ISA anterior atunci cnd perifericul este /Wait este
Rata de transfer este n domeniul 0.5 - 2 Mol sec este de vitezele
2 porturi. Motivul este acela pentru transferul unei date are loc un dialog, numit di.
182
IIOW
D0_,_-7 ___ ___,C
Date valide
/Wri te
/Wait . !
Fig.7.10. Diagrama ciclului Scriere date n modul EPP
t: u interblocare, n care a unui semnal de control i se prin .
l1 unui semnal de control al celuilalt pa11ener cnd se ajunge n starea' .
l11l(lalll. La diagrama din fi g. 7. I O, la activarea lui /DataStr i se cu activarea,..
1111 /Wait ceea ce va provoca, la rndul dezactivarea lui /Wait.
Fig. 7. 11 ciclul de citire date.
/ lOR
I Write
I DntaStr
I Wnit
1)0.? __________ ______ D_a_ ta_I_n __
Fig. 7 .11. Diagrama ciclului citi re date n modul EPP
]
Co n cazul anterior, semnalul /IOR este un semnal ISA apare n 1
11n1t1111 li urata transferul se ntr-un ciclu ISA. j
sunt:
programul data de la Portul de Date EPP, prin intermediul unei
de intrare (/IOR activ),
portul /DataStr cerndu-i perifericului o /DataStr se doar
d1tcn rerifericul este liber, /Wait este la O,
pcrl foricul datele pe lini i /Wait datele sunt valide,
por tul preia datele cu frontul al lui /DataStr l pe acesta,
pori feri cul /Wait ia datele de pe linii . ncheierea ciclului ISA
dLtpl\ dezactivarea lui /Wait, poate ncepe un nou ciclu.
1
I
7. ( :, urrnnda aplic.i1ulor externe cu rnicmcalculato1 ul I'<:
183
ncheierea ciclului ISA dezactivarea lui /Wait, poate ncepe un nou
ciclu. .
Figura 7.12 un ciclu de scriere adrese. exe7utate sunt
la ciclul de scriere de date cu faptului programul scrie la. Po11ul de adresa
EPP nu la Portul de Date EPP iar semnalul de strobare este /AdrStr nu /DataStr.
/IOW
/Write
Fig 7.12. Diagrama ciclului scriere adrese n modul EPP
Figura 7.13 un ciclu de citire adrese. executate sunt ca
la ciclul de citire date cu faptului programul de la de
EPP nu de la cel de date EPP iar semnalul de strobare utilizat este /AdrStr [Link].
/IOR
.___ ____ J
/Write
/AdrStr q_ j\
t y-
A es_' e_, _c_ o _m_e_n_z_ 1
Fig. 1. 13. Diagrama ciclului de citire adrese n modul EPP
Descrierile prezentate corespund modului EPP 1.9. Varianta EPP 1. 7,
!nainte de standardul IEEE 1284 de EPP 1.9 prin aceea semnalele /DataStr
/AdrStr se vor activa indiferent de starea liniei /Wait. Aceasta perifericul
nu poate mpiedica nceperea unui ciclu. Un periferic n modul EPPJ .9 va lucra
cu un po11 n modul EPPl.7 dar un periferic n modul EPPl.7 nu va
putea lucra cu lln port n modul EPPl.9. . , . .
Marele avantaj al modului EPP este transferul unei date are loc 111 t1mp_ul unui
si ngur ciclu al magistralei de intrare I .a
asincron, prin dialog cu interblocare, se [Link] de
c:elor 2 parteneri. Pentru transferul unei date este o de
'1 .
i'
i
! l ' I
I
' ;: .!
.
ri,
-'
i
"
1
:-.....
184 SIS l'l '.:'\ ll . (:li ;\llCH< Jl'll<
;, C:np. 7. Comnnda cxrci nl' cu rrutrucalClllacorul l'C
OUT sau lN iar pentru transferul unui bloc de date se poate folosi o
0
introduce n de la ncheierea transferului
de!/ E de prefixul REP. tl"". . un asemenea ciclu este pornit a fi conectat un periferic, sa
, Un alt avantaj al, EP'. este acela nu realizate il..
0
la nivelul sau al cab}[Link], portul nu i:
suplimentare pentru stabil irea sensului de transfer al datelor. Exista un semnal, care 1Wa1t va introduce stan de la blocand astfel mag1sh
atunci cnd este I un ciclu de citire iar este O aram un ciclu scriere.' ntregul calculator. din este de un mecanism c
Semnalul este comandat de controlerul portului nu este necesar vreun dialog cu . care va asigura deblocarea ciclului va starea de Time Out apr
perifericul pentru stabilirea sensului de transfer. Acest avantaj este important atunci .. /': de la activarea unuia din semnalele de pentru periferie ale
cnd la transferu! unui bloc trebuiesc realizate dese de sens. nainte de a lansa n modul EPP, portul paralel trebuie
Tabelul 7.9 registrele (porturile) utilizate n modul EPP. programul i;; stare un port EPP trebuie semnalele /AdrS tr, /DataStr. f'
porturile aflate la adresele + 1, + 2 comportarea portului ''/, inactive, la I. este setarea acestor linii se va seri
paralel mod EPP va fi cu cea din modtil SPP la . . xxxxO I 00 la Portul de Control.
programul o ele OUT/ IN la/ de la porturile aflate la