Documente Academic
Documente Profesional
Documente Cultură
A = (I, S, O, f, g, s0)
unde:
I, S, O - mulimi finite de intrare, stare i ieire;
f:I
g:I
s0 - starea iniial.
Automate deterministe:
|f(i, s)| = 1, |g(i, s)| = 1, i I, s S - au o evoluie unic pentru o pereche (i, s) dat.
Realizarea fizic - sinteza structurilor secveniale.
Format din unul sau mai multe circuite VLSI sau LSI.
XTAL
fanioane
R + ULA
UC
GT
CMD. INIT.
(RESET)
comenzi
d
MD
c
MA
MC
CLK
M1
T1
T2
T3
t
tCY = T
Tc=kT.
l k
j=1
j=1i=1
CI = Mj = Tij
Durata de execuie a unei instruciuni
TI=lkT
Durata de execuie a unei secvene de program - n funcie de durata unei stri main i
de durata fiecrei instruciuni componente.
Vcc
GND
A15A8
X1
X2
CLK
AD7AD0
HOLD
HLDA
8085A
TRAP
INTR
RST 7.5
RST 6.5
RST 5.5
INTA
SID
SOD
Fig.2.3. Microprocesorul 8085 semnale la pini
IO/M
S1
S0
RD
WR
ALE
READY
RESET IN
RESET OUT
00
01
10
11
HALT
WRITE
READ
FETCH
Controlul ntreruperilor
INTR, RST 5.5, RST 6.5, RST 7.5 i TRAP linii de prezentare a cererilor de ntrerupere
INTA - linie de confirmare a acceptrii solicitrii de ntrerupere prezentate pe linia
INTR.
SID
Comand
ntreruperi
SOD
Comand
I/E serial
Acumulator
A (8)
Registru
temporar (8)
Bistabile
condiii (5)
Registru
instr. (8)
Unitate
logicoaritmetic
+5V
GND
X1
X2
B (8) C (8)
D (8) E (8)
H (8) L (8)
SP (16)
PC (16)
Latch i
inc./dec. adr.
Decodif.
instr. i codif.
ciclu main
Corecie
zecimal
Tact
extern
CLK
STATUS
RD WR
S0
READY
ALE
S1
DMA
RESET
RESET
HOLD
OUT
HLDA
IO/M
RESET IN
Tampon
adrese
A15A8
Tampon
adrese/date
AD7AD0
Magistrale de
adrese i adrese/date
CY
A7
A0
PSW
A7
A6
A5
A4
A3 A2
A1
A0
D7
D6
D5
D4
D3
D2
D1
D0
AC
CY
ci = ai bi
ai, bi, ci {0, 1}, i= 0, n - 1
= , , sau
Operarea aritmetic - n baza 2: operaiile: +, -
Registrele microprocesorului
- PC - Program Counter numrtorul de program indic ntotdeauna adresa
instruciunii care urmeaz s se execute;
- SP - Stack Pointer - indicatorul vrfului stivei;
- B, C, D, E, H i L - registre generale, utilizate individual sau n pereche (B-C, D-E, H-L)
- un registru pereche W-Z (ascuns), registru temporar pentru operaii interne.
PC - incrementat/decrementat nainte de a fi transferat n registrul tampon de adres.
Registrele comunic cu magistrala intern printr-un multiplexor, adresat printr-un circuit
de selecie, sub controlul blocului de secveniere i comand.
Magistrala intern de date - izolat de magistrala extern, D7D0, prin intermediul unui
registru tampon bidirecional, care amplific semnalele la nivelul unei sarcini TTL i asigur
memorarea temporar a datelor transmise de microprocesor.
Registrul tampon faciliteaz intrarea datelor i a codurilor instruciunilor.
Registrul de instruciuni primete codul operaiei la nceputul execuiei unei instruciuni.
Blocul de decodificare a instruciunilor - memorie ROM, programat astfel nct s permit
recunoaterea codurilor instruciunilor i odificare a ciclurilor main care trebuie realizate
n etapa de execuie.
Blocul de secveniere i comand - desfurarea temporal a ciclurilor main aferente
execuiei unei instruciuni, sincronizata cu semnalul de tact generat de un oscilator intern.
Stiva zon de memorie RAM, cu acces de tip LIFO (Last In, First Out)
- Stocarea temporar a coninutului registrelor interne;
- Salvarea/ncrcarea adresei de revenire la execuia instruciunilor de apel/revenire;
- Transferul de parametri ntre programul apelant i subrutina apelat;
Adresarea informaiilor din stiv- registrul SP Stack Pointer indicatorul vrfului stivei
SP - conine n orice moment adresa vrfului stivei - adresa ultimei locaii ocupate din stiv
Stiva crete prin decrementarea SP (n sens invers lui PC)
Operaii admise depunere i extragere
- Registre pereche sau cuvinte de 16 bii:
o BC, DE, HL, PC, PSW
Adresa
MIN
RAM
:
:
Memorie
de date
SP
MAX
Stiv
Vcc
RESET
P
RESET
trigger
Schmitt
Regimul de ntreruperi
Se trece la execuia primei instruciuni a rutinei de tratare a ntreruperii:
furnizat de dispozitivul solicitant la activarea de ctre P a liniei INTA (INTR)
este predefinit, fixat n hardware, fiind cunoscut de P (TRAP, RST).
Regimul de oprire
P i trece n starea HZ liniile de adrese, date i o parte dintre liniile de control.
Se execut cicluri HALT succesive.
La apariia unei cereri de cedare de magistrale, se intr n regimul HOLD.
La revenirea din regimul HOLD, se continu cu cicluri HALT.
La apariia unei cereri de ntrerupere, se intr n regimul de ntrerupere.
La revenirea din ntrerupere se continu cu instruciunea care urmeaz lui HLT.
La resetare, se intr n regimul de funcionare normal.
Tip ciclu
Stare
Comand
S1
S0
IO/ M
RD
WR
INTA
OF (Opcode Fetch)
MR (Memory Read)
MW (Memory Write)
BI (Bus Idle):
1
1
0
0
1
0
0
1
HZ
1
1
HZ
1
1
HZ
1
1
1
DAD
Ack. TRAP, RST
HALT
TRESET
RESET
RESET
T1
HALT
HALT
T2
CC=6
HOLD=1
Nu
CC=4
T6
CBB
HLDA=1
THALT
VALIDINT
RESET
CBB HALT
SET CBB INTA
RESET CBB IE
Da
SET
CBB HLDA
T5
Da
Nu
Nu
SET CBB
HLDA
SET CBB
HLDA
Nu
T4
HOLD VALIDINT
Da
T3
TWAIT
HOLD
HOLD=1
OF
READY
(READY+BI)
Ultimul
CM al instruciunii
?
THOLD
HOLD
HOLD
RESET
CBB HLDA
Da
Nu
VALIDINT=1
Da
HALT=1
Da
Nu
CLK
T1
T2
T3
OUT
PCL
T4
T5, 6
T2
T1
NEDEF.
PCH
A15A8
AD7AD0
M1
(PC + 1)H
OUT
(PC+1)L
IN
D7 D0
M 2 . . . M5
IN
D7 D0
ALE
IO/M
S1 , S0
S1 = S0 = 1
RD
READY
Adrese
Date
Decodificare i
execuie
Adrese
Date
M1
T1
T2
M2
T3
T4
T1
T2
M3
T3
T1
M4
T2
T3
T1
T2
T3
CLK
IO/M,
S1, S0
( 0,1,1)
( 0,1,0 )
( 0,1,0 )
PCH
(PC+1)H
(PC+2)H
( 0,0,1 )
ALE
A15A8
AD7AD0
OUT
IN
PCL
OPCODE
OUT
IN
OUT
IN
(PC+1)L
ADL
(PC+2)L
ADH
Date de la
memorie
RD
ADH
OUT
OUT
ADL
ACC.
Date de la
memorie
WR
OF
MR
MR
MW
M1
T1
T2
M2
T3
T4
T1
M3
T2
T3
T1
T2
T3
CLK
IO/M,
S1, S0
( 0,1,1)
( 0,1,0 )
( 1,1,0 )
PCH
(PC+1)H
PORT
ALE
A15A8
AD7AD0
OUT
IN
OUT
IN
PCL
OPCODE
(PC+1)L
PORT
OUT
IN
PORT
Adresa port
Date de la
port
RD
WR
OF
MR
RP