Opis procesora
Opis procesora
Opis procesora
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
opsluživanje zahteva za prekid vrši se provera da li je u toku izvršavanja prethodne tri faze<br />
tekuće instrukcije generisan neki od navedenih zahteva za prekid. Ukoliko nije, vraća se na<br />
fazu čitanje instrukcije sledeće instrukcije. Ukoliko jeste, izvršavanje tekuće instrukcije se<br />
produžava sa koracima faze opsluživanje zahteva za prekid. Opsluživanje zahteva za prekid se<br />
sastoji iz tri grupe koraka.<br />
U okviru prve grupe koraka na steku se čuvaju programski brojač PC i programska statusna<br />
reči PSW.<br />
U okviru druge grupe koraka utvrĎuje se adresa prekidne rutine. UtvrĎivanje adrese<br />
prekidne rutine se realizuje na osnovu sadržaja tabele adresa prekidnih rutina (IV tabela) i<br />
broja ulaza u IV tabelu. Stoga je u postupku inicijalizacije celog sistema u memoriji, počev od<br />
adrese na koju ukazuje sadržaj registra <strong>procesora</strong> IVTP (Interrupt Vector Table Pointer),<br />
kreirana IV tabela sa 256 ulaza u kojima se nalaze adrese prekidnih rutina za sve vrste<br />
prekida. Broj ulaza u IV tabelu se dobija na više načina i to:<br />
predstavlja fiksnu vrednost za prekide iz tačke i generiše ga sam procesor,<br />
predstavlja fiksnu vrednost za prekide iz tačaka , i i generiše ga sam procesor i<br />
specificiran je adresnim delom instrukcije INT za prekid iz tačke .<br />
Ulazi 0 do 3 i 9 do 15 u IV tabeli su rezrvisani za adrese prekidnih rutina za sledeće vrste<br />
prekida:<br />
0 – prekid zbog režima rada sa prekidom posle svake instrukcije,<br />
1 – nemaskirajući prekid,<br />
2 – prekid zbog greške u adresiranju,<br />
3 – prekid zbog greške u kodu operacije,<br />
9 do 15 – maskirajući prekidi po linijama intr 1 do intr 7 , respektivno.<br />
Ulazi 4 do 8 i 15 do 255 u IV tabeli su slobodni za adrese prekidnih rutina za prekide izazvane<br />
instrukcijom INT.<br />
Više prekida se može javiti istovremeno, a može se prihvatiti samo jedan zahtev za prekid i<br />
skočiti na njegovu prekidnu rutinu. Zato su zahtevima za prekid dodeljeni prioriteti, pa se od<br />
generisanih zahteva za prekid prihvata onaj zahtev za prekid koji je meĎu njima najvišeg<br />
prioriteta. Redosled zahteva za prekid po opadajućim prioritetima je sledeći: najviši je ,<br />
zatim redom , , i na kraju najniži je . Prekidi pod koji dolaze od kontrolera<br />
periferija mogu se javiti istovremeno pa se i oni prihvataju po redosledu opadajućih prioriteta.<br />
Pošto svaki kontroler periferije ima posebnu liniju u procesoru za slanje svog zahteva za<br />
prekid, na osnovu pozicije linije se odreĎuje prioritet datog zahteva za prekid. Zbog toga se<br />
radi odreĎivanja broja ulaza, po opadajućim proritetima redom proveravaju generisani zahtevi<br />
za prekid i utvrĎuje koji je to zahtev za prekid koji se u tekućoj instrukciji prihvata i na<br />
osnovu toga odreĎuje broj ulaza.<br />
Kako je memorijska reč 8-mo bitna veličina a adresa prekidne rutine 16-to bitna veličina,<br />
to svaki ulaz u IV tabeli zauzima po dve susedne memorijske lokacije. Zbog toga se najpre<br />
broj ulaza množenjem sa dva pretvara u pomeraj, pa zatim pomeraj sabira sa sadržajem<br />
registra IVTP i na kraju dobijena vrednost koristiti kao adresu sa koje se čita adresa prekidne<br />
rutine i upisuje u registar PC.<br />
U okviru treće grupe koraka se:<br />
brišu indikatori I i T registra PSW kod prekida svih vrsta i<br />
upisuje u bitove L 2 do L 0 registra PSW nivo prioriteta prekidne rutine na koju se skače u<br />
slučaju maskirajućeg prekida.<br />
18