Documente Academic
Documente Profesional
Documente Cultură
SUBSISTEMUL
DE INTRRI / IEIRI AL
CALCULATORULUI DIDACTIC
7.1 Generaliti
Legatura unitii centrale cu mediul extern se realizeaz prin intermediul
subsistemului de intare/ieire (I/E).
n funcie de domeniul de utilizare a sistemului de calcul, subsistemul de I/E
este proiectat pentru:
-a conversia informaiei ce caracterizeaz mediul extern ntrun format
acceptat de ctre unitatea central;
-conversia rezultatelor prelucrrilor n formatul specific mediului extern.
Pentru a proiecta un subsistem de I/E trebuie examinate aspecte privind:
structura informaiilor de I/E;
operaiile de baz implicate ntrun transfer de I/E;
modaliti de transfer a datelor de I/E;
interaciunea i sincronizarea unitii centrale de prelucrare cu echipamentele
periferice.
MEMORIE
UCP
Interfata
de
intrare/iesire
Echipament periferic
Suport exterior
Activeaza EP
Sistem
operare
Citire stare EP
Nu
Rutina
tratare
eroare
EP operational
Da
Eventuale
prelucrari
Comanda citire
Citire stare EP
Nu
EP operational
Da
Date
disponibile?
Nu
Da
Nu
Transfer
corect?
Da
Preluare date
Nu
Transfer
bloc terminat?
Da
Dezactiveaza EP
Activeaza EP
Sistem
operare
Citire stare EP
Nu
Rutina
tratare
eroare
EP operational
Da
Pregatire nou
cuvant din
bloc
Transfer date
Comanda scriere
Eventuale
prelucrari
Citire stare EP
Nu
EP
operational?
Da
Nu
Operatie
tereminata?
Da
Nu
Transfer
corect?
Da
Transfer bloc
terminat?
Da
Dezactiveaza EP
Nu
Activeaza EP
Sistem
operare
Citire stare EP
Nu
Rutina
tratare
eroare
EP operational
Da
Pregatire nou
cuvant din
bloc
Nu
Operatie
terminata?
Da
Nu
Eventuale
prelucrari
Transfer
corect?
Da
Transfer date
Comanda scriere
Nu
Transfer
bloc terminat?
Da
Dezactiveaza EP
Initializare transfer
bloc
PROGRAM
PRINCIPAL
Rutina de tratare
intrerupere
Activeaza EP
Sistem
operare
Sistem
operare
Citire stare EP
Rutina
tratare
eroare
Nu
EP
operational?
Rutina
tratare
eroare
Da
Comanda citire
Salvare context
Citire stare EP
Intrerupere de la EP
Nu
EP
operational?
Da
Transfer
corect?
Da
Preluare date
Transfer
bloc terminat?
Comanda citire
Dezactivare EP
actualizare date
Intrerupere de la EP
Refacere context
PROGRAM
PRINCIPAL
Rutina de tratare
intrerupere
Initializare transfer
bloc
Activeaza EP
Sistem
operare
Sistem
operare
Citire stare EP
Rutina
tratare
eroare
Nu
EP
operational?
Rutina
tratare
eroare
Da
Transfer date
Salvare context
Comanda scriere
Citire stare EP
Intrerupere de la EP
Nu
EP
operational?
Da
Nu
Transfer
corect?
Da
Nu
Pregatire
nou cuvant
din bloc
Transfer date
Intrerupere de la EP
Transfer
bloc terminat?
Da
Dezactivare EP
Comanda scriere
Refacere context
Transfer programat
Fiecare cuvnt transferat implic participarea unitii centrale de prelucrare, prin
executarea unei secvene de instruciuni reprezentnd programul de I/E specific.
Prin intermediul interfeelor de I/E, unitatea central de prelucrare i echipamentele
periferice, interacioneaz la fiecare cuvnt transferat. Interaciunea:
-cuvnt de stare citit n mod ciclic;
-prin ntreruperi.
Transferul programat este uor de implementat:
-interfaa;
-programul ce controleaz transferul de date.
Dezavantaj: ineficient din punctul de vedere al utilizrii unitii centrale de prelucrare.
Utilizare: echipamente cu debitul de transfer i cantitatea de informaii transferate
relativ sczute.
Canalul de I/E:
-poate transfera mai multe blocuri de date far intervenia UCP;
-functionare "inteligenta" n cazul apariiei unor evenimente n cursul
transferului (ex: erori de poziionare a capetelor la disc, poriuni de suport magnetic
deteriorat, erori de citire tranzitorii, etc.) rezolvnd far intervenia UCP aceste situaii;
-la terminare sau la apariia unor erori fatale (iremediabile) se invoc
intervenia UCP.
n general, un canal controleaz transferul cu mai multe echipamente
periferice => dou tipuri de canale de I/E:
de tip selector, care controleaz un singur periferic la un moment dat;
de tip multiplexor, care controleaz mai multe periferice simultan.
Consideratii:
echipamentele periferice fie de intrare fie de ieire ;
fiecarui echipament periferic i se asociaz un registru de date (din cele 256) n care
UCP nscrie datele ce trebuie transmise ctre echipamentul periferic de ieire sau din
care UCP preia datele nscrise de un echipament periferic de intrare;
fiecrui echipament periferic i se asociaz un registru de comenzi n care UCP nscrie
comenzile transmise spre echipamentul periferic i un registru de stri n care
echipamentul periferic nscrie starea ce va fi preluat de UCP (din punctul de vedere al
implementrii este convenabil s se considere 2 registre separate, unul de comenzi
selectat numai la execuia instruciunilor OUT i unul de stri selectat numai la execuia
instruciunilor IN, cele dou registre avnd aceeai adres);
registrele de I/E sunt conectate la magistrala MAG a unitii centrale de prelucrare;
fiecare interfa i recunoate adresele asociate.
MT
RSMT
RCMT
RDATE
MT
RSMT
Caractere ce trebuiesc transferate
imprimantei
RCMT
RDATE
MAG
___
tipc
_____
avansr
_____
retcar
_____
opterm
defal
cdes
hl
rl
DATE
rentoarcerea
carului de tiprire
7 8
15
DATE
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
operational
actint
hl
resint
rl
defal
cdes
edis
Bit0
_________
imprimant operaional (operaional)
este nscris de imprimant i citit de unitatea central de prelucrare. Este constituit din
suma cauzelor de oprire a funcionrii imprimantei.
=0
imprimanta este operaional conectat la reea; siguranele capului de scriere
n bun funcionare, are hrtie, are ribon, capacul este nchis
=1
imprimanta nu este operaional. Una din condiiile de bun funcionare nu este
ndeplinit
hl
rl
defal
cdes
operational
D
TACT
CLK
Bit1
Bit2
Bit3
Bit4
Bit7
____
echipament disponibil (edis)
- este nscris de echipamentul periferic i citit de unitatea central de prelucrare
= 0 memoria tampon a interfeei mai poate primi un nou caracter
=1
memoria tampon a interfeei nu mai poate primi un nou caracter deoarece este
plin cu caractere care nu au fost nc tiprite
imprimant (caracterul se
ADRESA
DENUMIRE
FUNCIE
Baza +0
CSEP0
Baza +1
CSEP1
Baza +2
CSEP2
Baza +3
CSEP3
Baza +4
CSDMA
Baza +5
AMDMA
Baza +6
RCDMA
Baza +7
ITDMA
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
SEP0
SEP1
activare/dezactivare transfer
sens transfer
mod transfer
SEP2
activare/dezactivare intrerupere
SEP3
intrerupere programabila
DMA liber
intrerupere externa
terminare transfer bloc
;Definirea constantelor
BAZA EQU 0D0H
BIT1
EQU 4000H
BIT6
EQU 200H
BIT7
EQU 100H
CCDMA EQU 0234H
CCEP
LNG
ADR
EQU H
EQU H
DW H
___
ctie
_______
_______
cmdma smdma
________
atmdma
___
atie
Terminarea unui ciclu de transfer
Memoria sau EP preia datele
actAM
____
actM
Semnale
CCITT
V.24
101
102
103
104
105
106
107
108
125
109
110
111
112
113
114
115
118
119
120
121
122
Descriere
GND-Nul (mpmntare)
GND-Semnal referin/Retur comun (mas electric)
TxD(Transmiter Data)-Transmisie date
RxD(Receiver Data)-Recepionare date
RTS(Request To Send) - Cerere pentru emisie
CTS(Clear To Send) - Gata de emisie
DSR(Data Set Ready) - Conectat la linie
DTR(Data Terminal Ready) -Conecteaz la alinie
RI(Ring Indicator)
RLSD(Receive Line Signal Detector)
SQD(Signal Quality Detector)
DSRS-DTE(Data Signal Rate Selector)
DSRS-DCE(Data Signal Rate Selector)
DTE transmiterea semnalului de timing (DTE)
DTE transmiterea semnalului de timing (DCE)
DTE recepionarea semnalului de timing (DTE)
STD Secondary Transmitted Data
SRD Secondary Received Data
RTSS (pe calea secundar)
CTSS
RLSDS
GND(101,102) 1,7
TxD(103) 2
RxD(104) 3
1,7 GND(101,102)
3 RxD(104)
2 TxD(103)
RTS(105) 4
CTS(106) 5
5 CTS(106)
4 RTS(105)
DSR(107) 6
DTR(108) 20
20 DTR(108)
6 DSR(107)
DISP 1
DISP 2
Semnale
transmisie/receptie
date
Semnale de
comanda/stare
START
BIT1 BIT2 BIT3 BIT4 BIT5 BIT6 BIT7 BIT8 BITP STOP STOP
5 biti
6 biti
7 biti
8 biti
+12V
MC1488
MC1489
RxD(TTL)
TxD(TTL)
linie de tansmisie
7404
-12V
START
BIT1
7404
RxD
Unitate
Comanda
RRS
RTRS
SIN
RDT
RDR
CSSIN
AIE
MAG16
DTR
____
actint activare / dezactivare ntrerupere: scris/citit de unitatea central de
prelucrare
=0
permite lansarea unei cereri ntreruperi spre unitatea central de prelucrare la
termirea recepionrii/transmiterii unui cuvnt sau schimbarea strii de operaional (conectat la
linie)
= 1
nu permite lansarea unei cereri de ntrerupere spre unitatea central de
prelucrare .
resintsin reset ntrerupere de la interfaa serial (ieire): scris de unitatea central de prelucrare
=0
nu terge, eventual cererea de ntrerupere de la sin
= 1
terge (se anuleaz) cererea de ntrerupere de la seciunea de transmisie a
interfeei seriale.
reseror reset eroare este scris de unitatea central de prelucrare
=0
nu are nici o aciune
= 1
sterge erorile aprute n procesul de recepie/transmisie datorate: paritii
(PE), depirii ritmului de recepie (OE) sau a bitului de stop (FE).
TxRDY transmitter ready transmisie gata este nscris de UCSI i citit de unitatea central de
prelucrare
= 0
interfaa are un cuvnt ce trebuie transmis i nu mai poate primi un nou
cuvnt de la unitatea central de prelucrare
=1
interfaa poate primi, pentru transmisie, un nou cuvnt de la unitatea central
de prelucrare .
RxRDY receiver ready recepie gata este nscris de UCSI de recepie al interfeei i citit de
unitatea central de prelucrare
=0
interfaa nu a recepionat un cuvnt, sau este n curs de receptionare, unitatea
central de prelucrare nu poate prelua un cuvnt de date de la interfa deoarece acesta nu este
disponibil.
=1
interfaa a recepionat un cuvnt de date i unitatea central de prelucrare
poate sl preia. Preluarea se face cu ajutorul unei instruciuni n port. Odat cu preluarea datelor
se dezactiveaz (terge), implicit, i indicatorul RxRDY.
EP
PE
parity error eroare de paritate scris de interfa (paritatea de recepie) i citit de
unitatea central de prelucrare
=0
nu a existat eroare de paritate
=1
indic faptul c a fost detectat o eroare de paritate n procesul de recepie
date.
OE
overrun error eroare de ritm scris de interfaa (partea de recepie) i citit de unitatea
central de prelucrare
= 0
nu a existat o eroare de ritm ntre unitatea central de prelucrare i
dispozitivul de recepie
=1
a fost detectat o eroare de ritm. Unitatea central de prelucrre nu a preluat
cuvntul recepionat i ntre timp sa mai recepionat un nou cuvnt.
FE
Framing error eroare datorat bitului de stop nscris de interfa (partea de recepie) i
citit de unitatea central de prelucrare
=0
nu a fost o eroare de bit de stop
= 1
a fost detectat o eroare n cursul operaiei de recepie datorat absenei
bitului sau biilor de stop.
STP
DSR data set ready echipament conectat la linie, citit de unitatea central de prelucrare i
nscris de terminalul serial cu care este interconectat interfaa
= 0
indic faptul c echipamentul de transmisie/recepie cu care este
interconectat interfaa nu este gata de funcionare
= 1
echipamentul cu care este interconectat interfaa este gata de funcionare
(conectat la linie).
15
;Afecteaz:
registrul RA i indicatorii de condiii
;Funcie: transmite cuvntul din registrul RB la interfa standard n modul de lucru transfer
programat cu citirea ciclic a strii
CO:
IN
STSIN
; citete starea
TEST
RA,8000H
; se analizeaz DSR (data set ready)
JZ
ERRCO
; dispozitiv neconectat la linie, eroare
TEST
RA,100H
; se analizeaz TxRDY
JZ
CO
; dac are cuvnt de transmis, ateapt
MOV
RA,RB
;
OUT
DATSIN
; transmite cuvntul spre interfa
RET
ERRCO: .
; trateaz eventuala eroare
__
cie
__
sie
Unitatea
central de
prelucrare a
calculatorului
didactic
GND 17
17 GND
____
cerint
TxD 2
3 RxD
MAG16
RxD 3
2 TxD
DTR 20
6 DSR
DSR 6
20 DTR
RTS 4
5 CTS
CTS 5
4 RTS
AIE8
Interfata
seriala
standard
SIN
Echipamentul
periferic