Uploaded by Dvaest Dva

ORT

advertisement
1. OSNOVNI STAVOVI PREKIDAČKE ALGEBRE
Još u stara doba mnogi stavovi logičkog mišljenja izražavani su riječima „
tačno“ i „ pogrešno“. Engleski matematičar Bul je izložio metodu za simbolično
izražavanje logičkih stavova. Takva algebra se naziva Bulovom algebrom. Svrha
korištenja Bulove algebre u tehnici prekidačkih kola je višestruka. Pomoću nje se
složeni problemi mogu da predstave u obliku matematičkih jednačina, složene
matematičke funkcije mogu se često svesti na mnogo jednostavnije oblike. Bulova
algebra omogućava sažeto izražavanje funkcija prekidačkih mreža kao i bitnih
osobina prekidačkih kola u tim mrežama.
Promjenljiva veličina u Bulovoj algebri može da ima samo dvije vrijednosti (0
i 1). Prekidačke funkcije se definišu pomoću tri osnovne operacije: sabiranje,
množenje i komplementiranje. Operacije sabiranja i množenja obilježavaju se
najčešće istim simbolima kao i u klasičnoj algebri. Operacija komplementiranja
obično se označava crticom iznad slova promjenljive.
U osnovne stavove prekidačke algebre spadaju: postulati (elementarni
stavovi), pravila, zakoni, teoreme i identiteti.Postulate definišu dosljednost,
nezavisnost i jadnostavnost. Postulati se mogu napisati u sledecem obliku:
Postoje I relacije koje se izvode pomoću postulata i obično se navode kao
pravila.
Postoje i koriste se i odredjeni zakoni: zakon komutacije, asocijacije,
distribucije I apsorpcije.
Osim zakona u osnovne stavove Bulove algebre ubrajaju se i teoreme. One omogućavaju
raznovrsne transformacije prekidačkih (logičkih) funkcija. U tom pogledu
najpoznatije su tzv. De Morganove (de Morgan ) teoreme o invertovanju, koje su date
sljedećim relacijama:
2. LOGICKE OPERACIJE I LOGICKA KOLA
U prekidačkoj algebri primjenjuju se tri osnovne logičke operacije:
sabiranje, množenje i komplementiranje. Rezultati ovih operacija dati su kao
elementarni stavovi ili postulati.logika digitalnih kola za izvođenje osnovnih
logičkih operacija je poznata i definisana je elementarnim stavovima prekidačke
algebre. Za predstavljanje tih logičkih kola i logičkih operacija upotrebljavaju se
odgovarajući grafički simboli
Bulova operacija sabiranja se naziva ILI logičkom operacijom i obavlja se
pomoću logičkog ILI kola. U principu ILI kolo ima više ulaza A,B,C,... N, a samo
jedan izlaz.Logika ovakvog kola sastoji se u tome, da je postojanje logičke 1 na
izlazu Y uslovljeno postojanjem logičke 1 na bilo kom ulazu. “ILI” operacija
označava se simbolom + koji se izgovara «ili«.
Bulova operacija množenja se naziva I logičkom operacijom i obavlja se pomoću
I logičkog kola. Logika ovakvog kola sastoji se u tome da logička 1 na izlazu Y
postoji samo ako istovremeno postoje logičke 1 na svim ulazima. “I” operacija se
označava se simbolom ∙ i izgovara se « i «.
Bulova operacija komplementiranja izvodi se pomoću logičkog NE kola. Ovo kolo
ima samo jedan ulaz i samo jedan izlaz. Logika ovog kola sastoji se u tome da
signal na izlazu ne može da bude iste vrijednosti kao signal na ulazu. Logička “NE”
operacija u prekidačkoj algebri označava se crticom ili iznad simbola I Izgovara se
« komplement A « ili « ne A «.
Postavljanjem invertora na izlaz elementarnog ILI logičkog kola dobija se NILI
logičko kolo. To logičko kolo sadrži logičku ILI–NE operacijuOva funkcija pokazuje
da u slučaju postojanja signala logičke 1 na bilo kom ulazu kola, uspostavljeno
stanje na izlazu neće odgovarati logičkoj jedinici već nuli.
Dodavanjem invertora na izlaz elementarnog I logičkog kola dobija se NI logičko
kolo. Logika tog kola bazira se na I–NE operaciji. Ovo kolo ima vrijednost logičke
jedinice na izlazu u svim slučajevima izuzev kada pobudni signali logičke jedinice
djeluju istovremeno na svim ulazima kola.
Inhibiciono logičko kolo je u stvari elementarno I logičko kolo kod koga je
jedan ulaz komplementira, odnosno negiran. U slučaju da je invertor postavljen na
ulaz B logika takvog inhibicionog kola predstavlja « zabranu po B «a izgovara se «
A i ne B «.
Implikaciono logičko kolo je elementarno ILI kolo kod koga je jedan ulaz
negiran.Implikaciono logičko kolo je analogno predhodnom, samo što se tu radi o
elementarnom ILI kolu kod koga je jedan ulaz negiran i izgovara se « A ili ne B «.
Logika isključivog, odnosno eskluzivnog ILI logičkog kola (EX–ILI), je takva
da uslovljava formiranje stanja logičke jedinice na izlazu pri postojanju pobudnog
signala logičke jedinice isključivo na jednom od postojeća dva ulaza.
3. SOFTVER RACUNARSKIH SISTEMA
Softver ili programsku opremu računarskih sistema čine svi programi koji se
izvršavaju na računaru, a koriste se za različite namjene. S obzirom na funkciju i
namjenu softver računarskih sistema se može podijeliti na: softver za razvoj
programa, softver za dijagnostiku, operativni softver.
*SOFTVER ZA RAZVOJ PROGRAMA
Softver za razvoj programa čine svi programi koji se koriste za razvoj i
izradu drugih I aplikativnih programa. Jedna od osnovnih namjena i oblasti
korištenja računara je razvoj programa za različite potrebe i različite primjene.
Takvi programi se pišu korištenjem određenih simbola i pravila za korištenje tih
simbola pa se nazivaju programskim jezicima. Glavne komponenete softvera za razvoj
programa su programi koji se nazivaju: editor, asembler I programi prevodioci.
-EditorTo je program koji se koristi za pisanje programa u asemblerskom ili nekom
višem programskom jeziku. On omogućava unošenje teksta, odnosno instrukcija
programa, zatim njihovo korigovanje, brisanje, kopiranje, 2 dodavanje itd.
-AsemblerAsembler je program koji se koristi za prevodjenje programa napisanog u
asemblerskom jeziku nekog procesora u njegov mašinski program. Asembler vrši i
provjeru ispravnosti napisanog programa s obzirom na pravila pisanja i daje
informacije korisniku o eventualnim greškama.
-Programrski PrevodiociTo su programi koji se koriste za prevodjenje programa napisanih u nekom
višem programskom jeziku u mašinski program. Oni takođe za vrijeme prevođenja
otkrivaju i daju korisniku informacije o greškama u programu koje se odnose na
način i pravila pisanja programa. Postoje 2 tipa prevodioca: interpreter, kompajler
Razlikuju po odnosu između faza prevođenja i izvršavanja programa.
Interpreter prevede jednu instrukciju, pa je onda izvrši i to se ponavlja za svaku
instrukciju do kraja programa.Kompajler prvo prevede kompletan program, a zatim se
taj program izvršava i može se izvršavati koliko god treba puta bez ponovnog
prevodjenja. Programi prevedeni korištenjem kompajlera se brže izvršavaju nego pri
korištenju interpretera.
*SOFTVER ZA DIJAGNOSTIKU
Softver za dijagnostiku čine svi programi koji se koriste za utvrđivanje
ispravnosti i otklanjanje grešaka u programima koji se izvršavaju u računaru.
Glavne komponente softvera za dijagnostiku su: simulator, dibager, dijagnosticki
programi.
-SIMULATORSimulator je program koji se koristi za otkrivanje i ispravljanje grešaka u
programima koji se razvijaju na jednom računaru,a izvršavaće se na nekom drugom
računaru, tj. drugom procesoru, koji nije na raspolaganju.On faktički simulira rad
procesora koji nije na raspolaganju tako što simulira izvršavanje instrukcija kod
procesora.
-DIBAGERDibager je program koji omogućava otkrivanje i ispravljanje grešaka u
programima koji se razvijaju i izvršavaju na jednom istom računaru. On takođe
omogućava da se za vrijeme izvršavanja instrukcija prate rezultati ili sadržaj
registara procesora nakon izvršenja svake instrukcije ili nakon izvršavanja dijela
programa.
-DIJAGNOSTICKI PROGRAMITo su programi koji se koriste za provjeru ispravnosti funkcionisanja i
utvrđivanje grešaka u radu određenih sklopova računara. Postoje posebni
dijagnostički programi za procesore, za memoriju ROM tipa, za memoriju RAM tipa, za
U/I sklopove i za druge sklopove u računaru i računarskom sistemu. Ovi programi se
uglavnom izvršavaju odmah nakon uključivanja računara.
*OPERATIVNI SOFTVER
Operativni softver čine svi programi koji omogućavaju funkcionisanje računara
i svi programi koje korisnici izvršavaju na računaru. Njegove glavne komponente su
programi: operativni sistem I aplikativni programi.
-OPERATIVNI SISTEMOperativni sistem je skup programa koji omogućavaju funkcionisanje računara i
realizovanje njegovih osnovnih funkcija i komunikacija sa korisnikom.To je skup
programa koji upravlja radom računara i omogućava komunikaciju izmedju računara i
korisnika.Ti programi takođe upravljaju svim resursima računarskog sistema,
dodjeljuju procesor pojedinim korisnicima ili programima, dodjeljuju periferne
jedinice procesorima i programima. Operativni sistem je uglavnom sastavni dio
računara. Korisnik treba da upozna njegove mogućnosti i savlada njegovu upotrebu,
odnosno korištenje. Postoje neki standardni operativni sistemi kao što su: LINUX,
WINDOWS, UNIX i dr.
-APLIKATIVNI PROGRAMIKorisnički (aplikativni) programi su svi programi koji se izvršavaju na
računaru, a služe za različite namjene, odnosno za realizovanje nekih funkcija i
poslova za korisnika računara. To su programi zbog kojih korisnici koriste
računar.Postoje dva pristupa u vezi sa korisničkim programima:razvoj vlastitih
programa, nabavka gotovih programa od proizvođača softvera.Vlastiti programi se
razvijaju uglavnom za neke specifične primjene, za koje nema ili nema dovoljno
kvalitetnih gotovih programa. Gotovi korisnički programi se nabavljaju uglavnom za
neke standardne i uobičajene namjene, za koje postoje proizvodjači takvih softvera.
Neki od poznatih gotovih korisničkih programa su: WORD, EXCEL, ACCESS, INTERNET
EXPLORER, POWER POINT, COREL DRAW, AutoCAD, MathCAD, i dr.
4. POTPROGRAMI
Potprogram je takva programska struktura koja omogućava da se isti niz
instrukcija višestruko koristi i poziva u različitim tačkama programa. Naime,
događa se često da se u različitim dijelovima programa pojavljuje isti niz
instrukcija koji rješava određeni zadatak. Ušteda memorijskog prostora i
skracivanje vremena pisanja programa moguća je korištenjem potprograma. Potprogram
je smješten samo na jedno mjesto u memoriji, a može biti pozvan i izvršavan iz više
različitih tačaka u programu.
Prelazak na izvršavanje potprograma naziva se poziv potprograma i pri tome se
izvršava granjanje iz glavnog programa na početak potprograma. Pri pozivanju
potprograma mora se sačuvati tzv. povratna adresa, a to je adresa sljedeće
instrukcije u glavnom programu.Povratna adresa se upisuje u stek pri pozivu
potprograma, a vraća se iz steka u programski brojač procesora pri povratku iz
potprograma.Korištenje steka omogućava i tzv. “gniježdenje” potprograma, tj.
mogućnost da se iz jednog potprograma vrši pozivanje drugog potprograma.
Pri korištenju potprograma postoje tri postupka: poziv potprograma, povratak iz tog
potprograma, prenosenje parametara u potprogram.
-Za pozivanje potprograma se koristi instrukcija procesora tipa: CALL, koje
su instrukcije grananja. Na mjestu u glavnom programu odakle treba pozvati
potprogram piše se instrukcija: CALL ime_potprograma, gdje je ime potprograma u
stvari labela koja označava adresu na kojoj se nalazi prva instrukcija potprograma.
Instrukcije za poziv potprograma mogu biti bezuslovne i uslovne. Kod bezuslovnih
vrši se bezuslovno pozivanje, tj. prelazak na potprogram, a kod uslovnih se vrši
pozivanje po ispunjenju nekog uslova.
-Za povratak iz potprograma takođe se koriste posebne instrukcije tipa RET.
Pri izvršavanju takve instrukcije iz steka se vraća memorisana povratna adresa u
programski brojač i tako automatski omogućava da se sljedeća instrukcija iz glavnog
programa može izvršavati. Instrukcija tipa RET uvijek je posljednja instrukcija u
potprogramu i te instrukcije mogu biti bezuslovne i uslovne.
-Potprogram operiše sa određenim podacima i adresama, te pošto su oni
različiti u različitim tačkama glavnog programa potrebno je obezbijediti da se
njihove vrijednosti adekvatno prenesu u potprogram, tj. onakve kakvi jesu u momentu
kada se poziva potprogram. Inače, takvi podaci i adrese koje koristi potprogram se
nazivaju parametri. Postoji nekoliko mogućih načina za prenošenje parametara u
potprogram.
Prvi je korištenje registara procesora za prenošenje parametara. To je
najjednostavniji način. Kod njega se parametri postavljaju u registre procesora
prije pozivanja potprograma. Nedostatak takvog načina je u tome što procesor ima
konačan broj registara, tako da se na taj način može prenositi ograničen broj
parametara.
Sljedeći način je korištenje steka za prenos parametara. Ovdje se parametri
prvo postave u stek, a onda se poziva potprogram. Glavni program smješta parametre
u stek, a potprogram ih odatle koristi i takođe rezultat upisuje u stek. Broj
parametara koji se tako mogu prenijeti zavisi jedino od veličine steka. Pošto stek
radi na principu “lasti in, first out” zbog toga treba voditi računa da potrprogram
ne pomiješta parametre i povratnu adresu jer tako moze doci do njhihove zamjene.
Treći način je korištenje posebnog dijela memorije za prenos parametara.
Ovdje se koristi jedan dio operativne memorije za prenošenje parametara koji se
rezerviše samo za te namjene. Glavni program upiše u taj dio memorije parametre, pa
se onda realizuje grananje u potprogram. Potprogram koristi parametre iz tog dijela
memorije i u njega upisuje rezultate.
Cesto se koriste višestruko-ulazni potprogrami ili ponovno ulazni
potprogrami. To su potprogrami koji mogu biti prekinuti u izvršavanju od strane
zahtjeva za prekid, ponovo korišteni kao program za obradu tog prekida, a po
završetku nastavljaju sa obradom prethodnog posla od tačke prekida.
Da bi potprogram bio ovog tipa on može da koristi samo registre procesora i
stek za smještaj parametara.Mogućnost da potprogram sam sebe poziva naziva se
rekurzija. Korištenje steka omogućava realizovanje rekurzije. Smanjujena je brzina
izvršavanja kompletnog glavnog programa.
5. NACINI ADRESIRANJA
Pri izvršavanju programa procesor mora da ima informaciju o tome gdje se
nalazi instrukcija koju treba sljedeću izvršiti kao i to gdje se nalaze operandi
koji će se koristiti pri izvršavanju te instrukcije. Instrukcija koja treba biti
sljedeća očitana i izvršena uvijek se nalazi u nekoj memorijskoj lokaciji
operativne memorije. Operandi se mogu nalaziti u memorijskim lokacijama operativne
memorije ili u registrima procesora.Način na koji se definiše gdje se nalazi
instrukcija za izvršavanje i gdje se nalaze potrebni operandi za vrijeme
izvršavanja instrukcije naziva se način adresiranja. Instrukcija se sastoji od tri
dijela: operacioni kod, polje načina adresiranja i dio operanda.
Svi procesori koriste više načina adresiranja, pogodne za različite primjene, da bi
se podacima pristupalo na što jednostavniji način. Osnovni načini adresiranja su:
implicitno adresiranje, neposredno adresiranje, direktno adresiranje, indirektno
adresiranje, indeksno adresiranje, relativno adresiranje.
IMPLICITNO ADRESIRANJE
Kod tog načina adresiranja u sastavu operacionog dijela same instrukcije
implicitno je sadržana informacija o tome gdje se nalazi operand. Kod instrukcija
sa takvim načinom adresiranja operand se obično nalazi u nekom registru procesora,
a najčešće u akumulatoru. Instrukcije sa ovakvim načinom adresiranja se brzo
izvršavaju jer je podatak već unutar procesora. One su obično jednobajtne.
Neposredno adresiranje
Kod takvog načina adresiranja operand se nalazi u sastavu instrukcije, iza
koda instrukcije se nalazi fiksan podatak koji će se koristiti pri izvršavanju te
instrukcije. Ove instruckije se koriste kada je potrebno da se neki konstantan
podatak smjesti u neki od registara procesora ili da se doda ili oduzme pri
obavljanju aritmetičkih operacija, a takođe kod logičkih operacija i kod poređenja.
Direktno adresiranje
Kod takvog načina adresiranja se u dijelu operanda instrukcije direktno
nalazi adresa memorijske lokacije u kojoj je smješten operand koji je potreban za
izvršenje te instrukcije. Taj podatak u dijelu operanda instrukcije može da
predstavlja ili adresu ili podatak na osnovu kojeg se određuje adresa operanda.
Zavisno od veličine tog podatka definisan je prostor u kojem se može vršiti
adresiranje. Ako je taj podatak 8 bita, onda se adresiranje može vršiti unutar 256
lokacija, a ako je taj podatak 16 bita onda unutar 64K lokacija tj. različitih
adresa.
Indirektno adresiranje
Kod ovog načina adresiranja adresa operanda se nalazi u nekom od registara
procesora. On se bazira na korištenju jednog ili više registara procesora kao
pokazivača na lokaciju u kojoj se nalazi operand. Tako se može pristupiti bilo
kojoj lokaciji u memoriji pa čak i pomoću jednobajtne instrukcije.
Indeksno adresiranje
Takav način adresiranja se koristi za olakšavanje rada sa nizovima podataka.
Kod njega je adresa promjenjiva i zavisi od tekućeg sadržaja indeksnog registra.
Stvarna adresa operanda se dobija tako što se koristi sadržaj indeksnog registra i
dio operanda instrukcije, a taj dio operanda instrukcije je adresni dio.
Jednostavnom manipulacijom, korištenjem posebnih instrukcija za to, omogućava se
jednostavno adresiranje nizova podataka.
Relativno adresiranje
Relativno adresiranje je adresiranje relativno u odnosu na trenutno stanje
programskog brojača. Koristi se uglavnom za adresiranje pri grananju u programu.Dio
operanda instrukcije se dodaje na trenutni sadržaj programskog brojača i tako
dobiva stvarna adresa. Dio operanda je podatak sa predznakom, tj. može biti
pozitivan ili negativan, tako da stvarna adresa može da bude veća ili manja od
trenutnog stanja programskog brojača. Npr. ako je dio operanda veličine 8 bita onda
se mogu dobiti adrese u opsegu od +127 do –128 u odnosu na trenutno stanje
programskog brojača.
6. INKREMENTORI/ DEKREMENTORI
Inkrementor je kombinaciona prekidačka mreža koja realizuje inkrementovanje
vrijednosti digitalnog podatka, odnosno uvećanje vrijednosti digitalnog podatka za
1.
Dekrementor je kombinaciona prekidačka mreža koja realizuje dekrementovanje
vrijednosti digitalnog podatka, odnosno umanjenje vrijednosti digitalnog podatka za
1.
Inkrementori
Mreza jednobitnog inkrementora:
F – rezultat, Pr – prenos nakon inkrementovanja
Da bi se moglo realizovati inkrementovanje podataka koji imaju više bita
potrebno je na višim bit pozicijama uzeti u obzir ulazni prenos.
F - rezultat, PRU - ulazni prenos, PRI - izlazni prenos.
Inkrementovanje na višim bit pozicijama kao mreže za inkrementovanje koriste
polusabirači. Inkrementovanje podataka sa više bita se može realizovati redno
(serijski) ili paralelno.
Za realizovanje serijskog inkrementovanja dovoljan je jedan polusabirač. Za
memorisanje prenosa se koristi D flipflop koji se na početku setuje na 1, pa se
tako obezbjeđuje da se podatku doda vrijednost 1. Setovanje D flipflopa na početku
se vrši dovođenjem logičke jedinice na njegov ulaz S za setovanje.
Za realizovanje paralelnog inkrementovanja potrebno je koristiti više polusabirača.
Potrebno je onoliko polusabirača koliko ima bita u podatku koji se
inkrementuje.Polusabirači se međusobno povezuju. Da bi se realizovalo
inkrementovanje na ulaz za ulazni prenos polusabirača na najnižoj poziciji se
dovodi
logička
1.
PRIMJER: inkrementora za inkrementovanje podataka od 3 bita.
A0 - A2 - ulazi, F0 - F2 – izlazi,Pri - izlazni prenos
Dekremntori
Mreza jednobajtnog dekrementora
F – rezultat, PO - pozajmica nakon dekrementovanja
Da bi se moglo realizovati dekrementovanje podataka koji imaju više bita
potrebno je na višim bit pozicijama uzeti u obzir ulaznu pozajmicu.
Dekrementovanje na višim bit pozicijama kao mreže za dekrementovanje koriste
poluoduzimači. Dekrementovanje podataka sa više bita se može realizovati redno
(serijski) ili paralelno.
Za realizovanje serijskog dekrementovanja dovoljan je jedan poluoduzimač. Za
memorisanje pozajmice se koristi D flipflop koji se na početku setuje na 1 pa se
tako obezbjeđuje da se podatku oduzme vrijednost 1. Setovanje D flipflopa na
početku se vrši dovođenjem logičke jedinice na njegov ulaz S za setovanje.
Za realizovanje paralelnog dekrementovanja potrebno je koristiti više
poluoduzimača. Potrebno je onoliko poluoduzimača koliko ima bita u podatku koji se
dekrementuje. Da bi se realizovalo dekrementovanje na ulaz za ulaznu pozajmicu
poluoduzimača na najnižoj poziciji se dovodi logička 1.
PRIMJER: dekrementora za dekrementovanje podataka od 3 bita.
A0 - A2 - ulazi, F0 - F2 – izlazi,Poi - izlazni pozajmica
7. POMJERACI
Pomjerači su kombinacione mreže koje realizuju pomijeranje digitalnog
podatka, tj. promjenu položaja bita binarne riječi u odnosu na početni položaj
premiještanjem svakog bita za k mijesta u lijevo ili u desno.Pomijeranje binarne
riječi A za k binarnih mijesta u lijevo ili u desno daje novu binarnu riječ F.
Pri pomijeranju za jedno mjesto u desno dobija se:
Fn-1 se mora posebno definisati kao Fn-1=Ir, Ir – bit koji se unosi na
najnižu poziciju s desna u lijevo.
Pri pomijeranju za jedno mjesto u lijevo dobija se:
F0 se mora posebno definisati kao F0=Il, gdje je Il bit koji se unosi na
najnižu poziciju s desna u lijevo.
Vrijednosti IL i IR se posebno definišu I
biraju se iz sljedećih skupova:
Vrijednost g se definiše po potrebi u oba slučaja. Kada je Ir=Fn-1=A0 ili Il=F0=An1 takvo pomjeranje se naziva cirkulacija ili rotacija u lijevo ili u desno.
Pomjerač je najlakše realizovati ako se svaki bit binarne riječi posmatra posebno,
tj. kao n kombinacionih mreža za podatak od n bita.
Sr1 i Sl1 su označeni
ulazni kontrolni
signali za pomjeranje
u desno (SR1=1) ili
za pomjeranje u
lijevo (Sl1=1) za
jedno mjesto.
Mogućnost prenosa
bita bez pomjeranja
za šta se koristi
upravljački signal
TRN (TRN=1). Ako su
sva tri upravljačka
signala jednaka 0
(SR1=SL1=TRN=0) onda
je Fi=0.
Korištenjem više ovakvih pomjerača za jedan bit može se realizovati mreža
pomjerača koja pomjera podatak od više bita za jedno mjesto u lijevo ili u desno.
PRIMJER: mreža pomjerača koja pomjera podatke od 3 bita za jendo mjesto.
Pomjerači se često realizuju pomoću multipleksora.
8. LOGICKA STANJA PROCESORA
Koncept rada procesora baziran je na programu koji se izvršava tako što
procesor očitava i izvršava jednu po jednu instrukciju tog programa iz operativne
memorije. Cjelina pribavljanja i izvršavanja instrukcije naziva se ciklus
instrukcije.U toku svakog ciklusa instrukcije realizuje se jedan ili više pristupa
memoriji ili U/I sklopovima.Za svaki pristup memoriji ili U/I sklopu potreban je
jedan mašinski ciklus. Svaki ciklus instrukcije se sastoji od jednog ili više
mašinskih ciklusa. Procesor funkcioniše pod uticajem takt signala, a za izvršavanje
jednog mašinskog ciklusa potreban je jedan ili više takt ciklusa što zavisi od
realizacije konkretnog procesora.
Svaki dio ciklusa instrukcije u kome je jasno definisana aktivnost procesora
naziva se stanje procesora. Osnovna stanja tipičnog procesora su:
očitavanje (pribavljanje) instrukcije, očitavanje iz memorije, upisivanje u
memoriju, očitavanje iz ulaznog sklopa, upisivanje u izlazni sklop, prekid,
zadržavanje, zaustavljanje, resetovanje.
Očitavanje (pribavljanje) instrukcije
U tom stanju procesora na adresnim linijama je postavljena adresa memorijske
lokacije iz koje treba očitati instrukciju koja će sljedeća biti izvršena. Kada ta
adresa postane potpuno stabilna procesor generiše upravljački signal za očitavanje
memorije koji se vodi na memoriju. Nakon par nanosekundi/ mikrosekundi na
magistrali podataka se pojavljuje instrukcija očitana iz memorije. Ona se tada
upisuje u registar instrukcije procesora.
Očitavanje iz memorije
U to stanje procesor dolazi pri izvršavanju instrukcije koja treba da očita
podatak iz memorije. Situacija je slična kao kod očitavanja instrukcije, jedino se
na linijama adresne magistrale sada nalazi adresa memorijske lokacije iz koje treba
očitati podatak a na linijama magistrale podataka se pojavljuje očitani podatak
koji se upisuje u neki registar procesora.
Upisivanje u memoriju
U to stanje procesor dolazi pri izvršavanju instrukcije koja treba da upiše
podatak iz nekog registra procesora u memoriju. Tada se na adresnoj magistrali
nalazi adresa memorijske lokacije u koju treba upisati podatak, a na magistralu
podataka se dovodi podatak koji treba upisati u memoriju. Kada adresa i podatak
postanu stabilni procesor generiše upravljački signal za upisivanje u memoriju i
realizuje upisivanje podataka u adresiranu memorijsku lokaciju.
Očitavanje iz ulaznog sklopa
U tom stanju procesor se nalazi pri izvršavanju ulazne instrukcije, odnosno
pri realizovanju očitavanja iz ulaznog sklopa. Tada se na adresnu magistralu dovodi
adresa ulaznog sklopa, a zatim generiše signal za očitavanje iz ulaznog sklopa.
Nakon toga se na magistrali podataka pojavljuje očitani podatak koji se zatim
upisuje u neki od registara procesora.
Upisivanje u izlazni sklop
To je stanje u kojem se procesor nalazi pri izvršavanju izlazne instrukcije
pri čemu se realizuje upisivanje podatka iz procesora u izlazni sklop. Na adresnoj
magistrali se nalazi adresa izlaznog sklopa, a na magistrali podataka podatak koji
treba upisati. Procesor zatim generiše upravljački signal za upisivanje u izlazni
sklop pa se realizuje upisivanje.
Prekid
U to stanje procesor dolazi nakon što dobije zahtjev za prekid od strane nekog U/I
sklopa. Procesor tada prekida izvršavanje tekućeg programa i prelazi na izvršavanje
programa za obradu prekida za U/I sklop koji je izazvao prekid. Pri tome se u stek
upisuje trenutno stanje programskog brojača i sadržaj registra bita stanja. To je
potrebno da bi po završetku programa za obradu prekida procesor mogao da nastavi
izvršavanje prekinutog programa. To se realizuje tako što se memorisani sadržaji iz
steka vraćaju u registre procesora i tako nastavlja daljnje izvršavanje tekućeg
programa.
Zadržavanje
U to stanje procesor dolazi kada dobije zahtjev od nekog U/I sklopa da oslobodi
zajedničku magistralu računara da bi je mogao koristiti taj U/I sklop. Najčešće je
to slučaj kada treba realizovati U/I prenos direktnim pristupom memoriji (DMA
prenos). Procesor tada dovodi svoje izlaze u stanje visoke impedanse i odvaja se od
zajedničke magistrale prepuštajući je na korištenje U/I sklopu koji je postavio
zahtjev. U tom stanju procesor ostaje sve dok postoji zahtjev za zadržavanje. Takav
način rada se koristi i kod sistema sa više procesora
Zaustavljanje
To je stanje u kojem procesor zaustavlja izvršavanje programa. U njega procesor
dolazi nakon izvršavanja instrukcije za zaustavljanje. Dok god je u tom stanju
procesor ne izvršava instrukcije. Izlaz iz tog stanja moguć je jedino nakon pojave
nekog vanjskog signala, zahtjeva za prekid, zahtjeva za zadržavanje ili signala za
resetovanje. Kada se nalazi u tom stanju procesor ne izvršava instrukcije i zato
ima manju potrošnju energije. Zbog toga se takav način rada koristi često u
primjenama koje zahtjevaju manju potrošnju energije.
Resetovanje
U to stanje procesor dolazi kada se dovede vanjski signal za resetovanje procesora
(reset). U tom stanju se postavljaju sadržaji nekih registara i bita u procesoru na
početnu vrijednost.. Obavezno se sadržaj programskog brojača postavlja na početnu
vrijednost, odnosno na adresu memorijske lokacije u kojoj se nalazi prva
instrukcija programa. Po uklanjanju signala za resetovanje procesor izlazi iz ovog
stanja i počinje izvršavati program od početka, tj. od prve instrukcije.
Download