Documente Academic
Documente Profesional
Documente Cultură
Subciclul de
ntrerupere
Subciclul de
indirectare
Subciclul de
execuie
Fig.4.1
Fiecare subciclu al unei instruciuni poate fi descompus ntr-o serie de
operaii elementare. O asemenea operaie elementar, care realizeaz o
prelucrare numeric a informaiei sau un transfer al acesteia, pe durata unui
singur impuls al generatorului de tact, se numete microoperaie. Unitatea de
MA
UCP
1
PC
MD
MC
2
RA
Memorie
3
UCC
6
RI
RD
Instruciune
CO
Adres
Memorie
Operand
Fig. 4.3
Acest mod de adresare presupune o singur referire la memorie i nu
necesit un calcul de adres. In acest caz dup subciclul de extragere urmeaz
subciclul de execuie.
In cazul adresrii indirecte, naintea subciclului de execuie este necesar
un subciclu de indirectare. Adresarea indirect se refer la situaia n care n
cmpul de adres al instruciunii se gsete o referin ADR1 la un cuvnt de
memorie, care conine adresa complet ADR2 a operandului. Vezi figura 4.4.
Instruciune
CO
ADR 1
Memorie
ADR 2
Operand
Fig. 4.4
Adresa ADR1 din cmpul de adres al registrului de instruciuni Rl este
transferat n RA [1] i este apoi depus pe magistrala de adrese [2]. Unitatea
de comand genereaz semnalele de comand [3] necesare pentru aducerea
n registrul de date RD a adresei ADR2 a operandului [4]. In continuare, cmpul
de adres din Rl este actualizat pentru a conine adresa direct a operandului [5].
Aceast adres este utilizat apoi pentru ncrcarea operandului n registrul de
date RD.
MA
UCP
1
RA
MD
MC
2
Memorie
UCC
RI
RD
RA RI(cmpul de adres)
(ADR1 n RA)
RD Mem (ADR2 din memorie n RD)
Rl(cmpul de adres) RD
(ADR2 n RI)
UCP
MA
MD
MC
6
6
PC
RA
Memorie
2
3
UCC
4
RD
UCC
Semnale de la
MC
Semnale de
control la MC
Ceas
RI
Decodificator
Dn
D2
D1
T1
Ceas
Generator
de
faze
T2
Indicatori de
condiii
UCC
Tn
Cn
C2 C1
Adres microinstruciune
Cmp de condiii
- Salt necondiionat
- Zero
- Depire
- Bit de indirectare
Semnale de control pentru
magistrala sistem
Semnale de control pentru
UCP
Fig. 4.9
Acest tip de microinstruciune se numete microinstruciune orizontal. Spre
deosebire de acestea se utilizeaz i microinstruciuni verticale care utilizeaz un
cod pentru fiecare operaie care trebuie executat.
Totalitatea microinstruciunilor care constituie o unitate logic formeaz un
microprogram.
O microinstruciune orizontal este interpretat n modul urmtor:
1. Pentru execuia unei microinstruciuni, se activeaz toate semnalele de
control crora le corespunde un bit de 1 n cmpul semnalelor de comand i se
dezactiveaz cele crora le corespunde un bit de 0.
2. In cazul n care condiia indicat de cmpul de condiie este fals, se
trece la execuia urmtoarei microinstruciuni din microprogram. In cazul n care
condiia indicat de cmpul de condiie este adevrat, se trece la execuia
microinstruciunii indicat de cmpul de adres.
In figura 4.10 se prezint amplasarea microprogramelor n memoria de
comand.
Fiecare rutin este constituit dintr-un microprogram. Microinstruciunile din
fiecare rutin sunt executate secvenial. Fiecare rutin se termin cu o
instruciune de salt care indic urmtoarea rutin care va fi executat. Exist o
rutin special pentru nceputul unui subciclu de execuie, care dup ncrcare i
decodificare indic rutina care va fi executat pentru diferitele instruciuni (ADD,
AND, ..., JMP), n funcie de codul instruciunii.
Memoria de comand reprezint o descriere complet a funcionrii UCC,
deoarece definete secvena de microinstruciuni care trebuie executate n timpul
fiecrui subciclu (de extragere, de indirectare, de execuie, de ntrerupere) i
specific secvenierea acestor subcicluri.
.
.
Rutina pentru
ciclul de extragere
Rutina pentru
ciclul de indirectare
Salt la execuie
.
.
Salt la extagere
Rutina pentru
ciclul de ntrerupere
.
.
Fig. 4.10
In figura 4.11 se prezint elementele principale ale unei uniti de comand
microprogramate.
Registrul de microadrese RMA conine adresa urmtoarei microinstruciuni
care va fi citit din memoria de comand. Dup citirea din memoria de comand,
microinstruciunea este transferat n registrul de microinstruciuni RMI.
Unitatea microprogramat are aceleai intrri (Rl, indicatori de condiii ai
UAL, ceas) i ieiri (semnale de comand) ca i o unitate de comand cablat.
Unitatea de comand microprogramat funcioneaz astfel:
1. Instruciunea din RI este decodificat de decodificatorul 1 rezultnd
adresa din memoria de comand a urmtoarei microinstruciuni.
2. Pentru extragerea microinstruciunii a crei adres se gsete n
RMA, logica de secveniere activeaz un semnal de citire a memoriei de
comand.
3. Microinstruciunea extras din memoria de comand este depus n
registrul de microinstruciuni (RMI).
4. Dup decodificarea microinstruciunii din RMI sunt activate semnalele
de control pentru UCP, magistrala de control i pentru blocul de secveniere.
5. Logica de secveniere ncarc o nou adres n registrul de microadrese,
pe baza informaiilor despre adresa urmtoare de la registrul de microinstruciuni
RMI i a indicatorilor de condiii ai UAL.
Dezavantajul unitilor microprogramate este c sunt mai lente dect cele
cablate realizate ntr-o tehnologie comparabil.
RI
Decodificator 1
Indicatori de
condiii
Logic de
secveniere
RMA
Ceas
READ
Memorie de
comand
RMI
Decodificator 2
Semnale de
control UCP
Semnale de control
pe magistrala