Professional Documents
Culture Documents
Septembar 2017.
1.
Adresiranje sa razmestajem – mocan nacin jer kombinuje mogucnosti direktnog i registarsko indirektnog
adresiranja.
EA = A +(R)
Neophodno je da naredba ima dva adresna polja pri cemu je jedno eksplicitno. Vrednost koja se nalazi u
jednom adresnom polju (Vrednost A) se koristi direktno. Drugo adresno polje se zasniva na opkodu i
odnosi se na registar ciji se sadrzaj sabira sa A da bi se dobila efektivna adresa.
2.
Rom, PROM, EPROM, E2PROM
Rom – Sadrzaj ROM-a definise se tokom fabrikacije memorijskog cipa (korisnik specificira sadrzaj
proizvodjacu), koriste se tamo gde program ne treba menjati.
PROM – Sadrzaj cipa se postavlja uz pomoc PROM programatora, na taj nacin sto se topljivi osiguraci
pregorevaju ili ne u zavisnosti od toga da li se upisuje 0 ili 1. Proces je nereverzibilan tj. Moguce je samo
jednom programirati cip, za izmenu sadrzaja potreban je novi. Pogodan je za logicke aplikacije (tabele za
preslikavanje ili razna dekodiranja).
EPROM – Postoji mogucnost brisanja putem „prozorceta“ za prodor UV svetlosti, moze se vise puta
brisati i programirati sadrzaj, pogodno za razvoj prototipova.
E2PROM – Brise se i programira elektricnim putem, ne mora se brisati ceo sadrzaj.
3.
Vektorski, Nemaskirajuci, Nevektorski , Restartujuci
Vektorski
Kada nekoliko spoljnih uredjaja salje zahtev za prekid CPU-u, neophodno je da se identifikuje specificni
izvor prekida sa ciljem da se selektuje odgovarajuca rutina za obradu prekida. Ova aktivnost se obavlja
specijalnim ciklusom priznavanja prekida (Interrupt Acknowledge Cycle) na spoljnoj magistrali. U toku
ovog ciklusa ne obavlja se memorijska ili UI operacija, vec se adresira uredjaj koji je generisao zahtev za
prekid, a koji predaje CPU-u identifikacioni kod.
Taj kod procesor koristi kao indeks u memorijskom polju. U tom polju se smestaju informacije kojima se
odredjuje pocetak rutine za obradu prekida.
Vektorski prekidi se mogu maskirati.
Nemaskirajuci – tip prekida se ne moze maskirati izvrsavanjem odredjenih naredbi. Kada se
nemaskirajuci prekid javi prekida se izvrsavanje tekuceg programa nezavisno od tipa operacije koju CPU
trenutno obavlja.
Ukazuje na dogadjaj cije je izvrsenje veceg prioriteta od bilo koje operacije koja se trenutno programski
izvrsava. (npr. Greske u napajanju, memorijskim ciklusima). Signal ovog prekida CPU prima na posebnom
pinu (NMI). Za razliku od vektorskog, CPU u ovom slucaju ne cita podatke o tipu vektora, jer se
informacija o pocetnoj adresi rutine za obradu nalazi na fiksnoj lokaciji u vektorskoj tabeli.
Nevektorski – tip prekida ima isti efekat kao i nemaskirajuci. Informacija o pocetnoj adresi rutine za
obradu prekida smestena je na fiksnu lokaciju u vektorskoj tabeli. Mogu se maskirati.
CPU najcesce poseduje poseban ulaz za prihvatanje zahteva ovakvog tipa prekida.
Restartujuci – Standardno je da se prekid prihvata nakon zavrsetka naredbe koja je u toku. Ali ako se
zahtev za prekid generise kao rezultat kada treba da se zastiti dalji korektan tok izvrsavanja same
naredbe, prekid ce se odmah prihvatiti pre kraja naredbe.
Tipican primer je prekid koji se aktivira kada se naidje na gresku u toku memorijskog ciklusa, kao sto je
greska parnosti.
Kada je dozvoljeno nekoliko različitih tipova prekida, moguće je da više zahteva istovremeno bude
aktivno. Mehanizam za rešenje je dodeljivanje prioriteta.Osnovni kriterijum za dodeljivanje je brzina
odziva koja treba da prati dogadjaj.
Najviši prioritet – najbrži odziv.
Prioriteti su predefinisani.Novi prekid čiji je prioritet manji ili jednak tekućem ne može da prekine rad
procesora sve dok se tekući ne završi. Prekid čiji je prioritet veći može da prekine tekući prekid.
1. restartujuci
2. nemaskirajuci
3. vektorski
4. nevektorski
4.
Koriste se iste naredbe kao i za rad sa memorijom
Nema posebnih naredbi
Koriste se isti signali MR I MW Memorijski prostor je jedinstven
Procesor tretira statusne registre i registre za podatke kao memorijske lokacije
Smanjuje se adresni prostor
Veci broj uredjaja koji se mogu prikljuciti
Prividno neograničeni broj uredjaja koji se može priključiti
Nacrtati šemu i objasniti izdvojeni U-I kada je mikroprocesor povezan na sistemsku magistralu
koja ima 24-bitnu adresnu magistralu. Povezati memoriju i U-I podsistem tako da U-I podsistem
ima tačno 1024 izdvojene adrese.
Adresni prostor je izdvojen
Koriste se posebne linije sa upravljačke magistrale I-OR i I-OW
Postoje posebne naredbe za upis i čitanje
U-I portovima se pristupa posebnim komandama koje aktiviraju posebne upravljačke signale
Ograničen broj U-I uredjaja
Ograničen broj U-I naredbi
Za U-I ne mora da se koristi adresna magistrala
5.
Potrebno je ponovo omogućiti prekid nakon svih potrebnih smeštanja u magacin, a pre početka tela
prekidne rutine i zabraniti prekid nakon prekidne rutine, a pre početka obnavljanja sadržaja registara sa
magacina.
PRINCIP GNJEZDJENJA
Oktobarski 2016.
1. Nacrtaj I objasni format naredbe uslovnog skoka kod hipotetickog racunara. Prikazi I skraceni
format I navedi mogucu duzinu skoka u bajtovima kod skracenog formata.
2. Prikazati I objasniti resenje bazirano na semi sa lancanjem kod jednoprocesorskog Sistema gde
postoji veci broj izvora prekida.
3. Nacrtati dijagram toka aktivnosti kod prihvatanja zahteva za prekid. Na dijagramu oznaciti tacke
u kojima treba dopustiti I zabraniti dalji prekid kako bi bio moguc prekid po dubini.
4. Nacrtati semu I objasniti izdvojeni ulaz-izlaz.
1.
Skraćeni format je: 1110xxxx zzzzzzzz, gde je zzzzzzzz niži bajt adrese. Skok se skraćuje na (-128 +128) u
odnosu na tekuću instrukciju.
2.
Asinhrona deoba procesorskog vremena izmedju nekoliko zadataka najčešće se sreće u praksi.Dogadjaj
se pamti u IRQ flip-flopu U/I uredjaja, a signalizira se procesoru preko linije INTR. Uredjaj koji je zahtevao
prekid se identifikuje predajom svog vektor broja. U slučaju kada više od jednog uredjaja zahteva prekid
istovremeno, arbitražnim postupkom se odlučuje koji uredjaj može generisati vektor. Vektor prekida se
može interpretirati kao identifikator uslužne rutine, ili kao identifikator zahtevaoca prekida.
3.
Prekid po dubini se postiže tako što se neposredno pre tela prekidne rutine omogući prekid i odmah
nakon onemogući. Ovo treba izvesti tako da se ne poremeti rad sadržaj steka.
4.
1.
3.
4.
a) postiže se velika brzina rada jer se podaci istovremeno mogu prenositi po tri magistrale
b) za realizaciju veza potrebna je velika površina čipa
c) u toku izvršenja jedne mikro-operacije nije dozvoljen upis i čitanje u isti registar
2.
1.
2.
Kod indeksiranja postoje dve mogućnosti u zavisnosti od toga da li se indeksiranje obavlja pre ili posle
indirekcije:
Sadržaj adresnog polja se koristi za pristup memorijskoj lokaciji koja sadrži direktnu adresu. Ova adresa
se zatim indeksira od strane vrednosti registra.
Adresa se izračunava kao kod indeksiranja. U ovom slučaju izračunata adresa ne sadrži operand nego
adresu operanda.
1.
1) neusklađenost brzine rada procesora i događaja u spoljnom svetu. Brzina rada procesora je za
nekoliko redova veličine veća od brzine kojom se dešavaju događaji u spoljnom svetu
2) najjednostavnije rešenje za problem sinhronizacije leži u uvođenju linije spremnosti (ready line).
Stanjem na ovoj liniji spoljni uređaj, kome se procesor obraća ( U/I uređaj, memorija, ...),
ukazuje da je spreman za prenos podataka. Procesor testira stanje na ovoj liniji i završava
naredbu koju je započeo tek kada utvrdi da je spoljni uređaj spreman za razmenu.
3) period čekanja je celobrojni umnožak taktnog perioda.
S obzirom da dijagram prikazuje 5 različitih stanja, brojač stanja se realizuje kao trostepeni
brojač po modulu 5. Kod starog dijagrama “load” je bio aktivan samo kada se prelazilo iz 2→4 za
naredbe koje nisu koristile ALU. Ovde “load” ima složenu funkciju. Postavlja brojač stanja:
Vektorski Kada nekoliko spoljnih uredjaja šalje zahtev za prekid CPU-u, neophodno je da se identifikuje
specifični izvor prekida sa ciljem sa ciljem da se selektuje odgovarajuća rutina za obradu prekida.
Ova aktivnost se obavlja specijalnim ciklusom priznavanja prekida (Interrupt Acknowledge Cycle) na
spoljnoj magistrali.
U toku ovog ciklusa ne obavlja se memorijska ili UI operacija, već se adresira uredjaj koji je generisao
zahtev za prekid, a koji predaje CPU-u identifikacioni kod.Kod koji se čita u toku ciklusa priznavanja
prekida koristi se od strane CPU-a kao indeks u memorijskom polju. U tom polju se smeštaju informacije
kojima se odredjuje početak rutine za obradu prekida. Vektorski prekidi se mogu maskirati.
Junski 2002.
1. Nacrtaj semu i objasni kominikaciju UI interfejsa sa spoljnim uredjajem.
2. Navedi i ukratko objasni U/I tehnike.
3. Projektovati sistem za dekodiranje adresa koji na 16-bitnu adresnu magistralu povezuju 6 RAM
cipova kapaciteta 4KB u opsegu 1000 – 6FFF H, 2 ROM cipa kapaciteta 8 KB u opsegu 7000 –
AFFF H i jedan EPROM cip kapaciteta 16 KB u opsegu od B000 – EFFF H.
4. Nacrtaj semu i objasni mesto i ulogu dekodera stanja i brojaca stanja kod hipotetickog racunara.
4.
Dekoder stanja (obično realizovan kao PAL kolo – Programmable Array Logic) na svom izlazu generiše
veliki broj upravljačkih signala koji se u okviru mašinske naredbe javljaju u strogo definisanim
vremenskim intervalima. Pomoću njih se upravlja funkcijom pojedinih blokova sistema kao što su:
Brojač stanja ukazuje u kom se stanju nalazi mašina.U našem slučaju realizovan je kao dvostepeni brojač.
Izlazi brojača se vode na ulaz dekodera.
U toku izvršenja naredbi tipa ADD,SUB ( odnosno onih koje zahtevaju rad ALU) mašina sekvencijalno
prolazi kroz sva 4 stanja.
Kod instrukcija koje kraće traju (mov,nop...), odnosno kod onih koje ne zahtevaju rad ALU,
2.
Razlikujemo tri tehnike za obavljanje U/I operacija:
a) programirani U/I
b) prekidni U/I
c) direktni pristup memoriji
Kod prekidnog U/I- a, CPU izda U/I komandu, produžava da izvršava druge naredbe, a prekida se od
strane U/I interfejsa kada je interfejs spreman da primi ili preda podatke.
Obe tehnike, programirani i prekidni U/I, se izvršavaju pod programskom kontrolom, tj. CPU čita
podatke iz memorije i upisuje ih u U/I interfejs u toku operacije OUTPUT, a čita podatke iz U/I interfejsa i
upisuje ih u memoriju u toku operacije INPUT.
Treća tehnika je poznata kao DMA (Direct Memory Access). Kod ove tehnike U/I interfejs i glavna
memorija direktno razmenjuju podatke, bez posredstva CPUa.
Kod programiranog U/I– a vrši se razmena podataka izmedju CPU- a i U/I interfejsa. Kako je CPU brži od
U/I interfejsa, evidentno je da procesor suviše mnogo vremena gubi na testiranje spremnosti za prenos.
Indirektno adresiranje – naredba poseduje adresno polje kojim se može poslužiti kod obraćanja
memorijskoj adresi koja sadrži adresu operanda
EA= (A)
Ako je dužina adresnog polja N može se adresirati 2N različitih memorijskih lokacija.
Zahtevaju se dva memorijska obraćanja, prvim se pribavlja adresa, a drugim operand.
Registarsko adresiranje – razlika u odnosu na direktno adresiranje je u tome što se adresnim poljem
specificira registar, a ne adresa u glavnoj memoriji.
EA= R
Prednosti:
Adresno polje naredbe je malo Nije potrebno dodatno obraćanje memoriji Nedostatak: Adresni prostor
je ograničen brojem registara CPU-a
Registarsko indirektno adresiranje – analogno indirektnom adresiranju sa tom razlikom što se adresno
polje naredbe odnosi na specifikaciju registra, a ne specifikaciju memorijske lokacije.
EA= (R)
Prednosti i nedostaci slični kao kod indirektnog. Postoji samo jedno dodatno obraćanje memoriji.
2.
Mogu biti:
Bezuslovne i
Uslovne
Uslovi se postavljaju nakon izvrsenja ALU operacija npr. Prilikom sabiranja 2 broja moze se javiti prenos.
Prenos se detektuje i ako postoji postavlja se marker za prenos C-carry.
Markeri se objedinjuju u registar uslovnih markera. Svaki bit imas svoje znacenje.
Oktobar 2 2001.
1. Projektovati memorijski podsistem povezan na 16-bitnu magistralu sa 64 cipa ROM 1Kx8 bitova
koristeci iskljucivo dekoder tupa 1 od 8 sa jendom aktivno niskom dozvolom rada.
2. Blok sema CPU-a. Procesna i upravljacka jedinica. Struktura i funkcionalni opis.
3. Tipovi DMA.
4. Nacrtati blok dijagram za osnovni U/I interfejs i komentarisati funkcije pojedinih blokova i
realizaciju.
U zavisnosti od vremena kada mikroprocesor, zbog DMA operacija, ne moze da pristupa sistemskoj
magistrali, razlikujemo 3 tipa DMA, i to:
1. kradja ciklusa
2. normalni i
3. transparentni
Kradja ciklusa – DMA kontroler koristi sistemsku magistralu za vreme prenosa jendog bajta ili reci na
principu kradje magistralnih ciklusa mikroprocesoru.
U realnim situacijama vreme se, kod nekih masinskih ciklusa, produzava za nekoliko taktova, ali se
oslobadjanje magistrale sinhronizira sa radom mikroprocesora. Ovaj tip se koristi kod relativno sporih
prenosa.
Normalni – DMA kontroler koristi sistemsku magistralu u toku trajanja celokupnog vremena koje je
potrebno za prenos bloka podataka, a mikroprocesoru je zabranjen pristup na magistralu za taj duži
period.
Nedostatak je to što se može desiti da CPU propusti da analizira neki dogadjaj čije je izvršenje urgentno,
ili da se izvršenje DMA prenosa nedopustivo dugo odloži.
Zbog toga se DMA kontroler u takvim situacijama programira tako da se ceo blok podataka ne prenese
odjednom nego u odredjenom broju podblokova specificirane dužine. Nakon DMA prenosa podbloka,
upravljanje magistrale se za odredjeni period vremena prepušta CPU-u. Na ovaj način CPU može da
analizira i dogadjaje koji se moraju hitno izvršiti. Ovaj princip rada zove se “burst” DMA.
Transparentni – DMA kontroler koristi sistemsku magistralu samo za vreme onih taktnih intervala u
okviru procesorskih ciklusa kada mikroprocesor ne koristi istemsku magistralu. Mikroprocesor i DMA
kontroler koriste sistemsku magistralu i memoriju u razlicito vreme bez sukobljavanja.
4.
Septembar 2001.
1. Nacrtati dijagram stanja za masinu kod koje postoji stanje cekanja na spremnost i komentarisati
odgovarajuci brojac stanja.
2. Format jxx naredbe.
1.
Prenos se detektuje, i ako postoji, postavlja se marker (fleg – flag) za prenos ( ccarry). Postoje i drugi
uslovi koji se sagledavaju (nula, znak, parnost) i u čije se markere upisuje stanje nakon izvršenja neke
aritmetičke ili logičke operacije.
Markeri su objedinjeni u registru uslovnih markera. Svaki bit ima svoje značenje.
Registar markera uslova pridružen je ALU. Aritmetičko logičke instrukcije utiču na flegove i neophodno je
prvo da se obavi neka aritmetičko logička instrukcija pa da se onda ispita njen uticaj na neki od flegova.
Stanje markera uslova može se testirati naredbama za uslovnu promenu toka programa.
Direktnim memorijskim pristupom premošćava se usko grlo CPU↔ periferija i obezbedjuje prenos
podataka izmedju periferija i RAM mikroračunara bez aktivne intervencije CPU- a.
U većini slučajeva, DMA prenosi se vrše pod nadzorom hardvera, tj. DMA kontrolera koji se povezuje na
sistemsku magistralu
Kada CPU želi da upiše ili pročita blok podataka izdaje komandu DMA kontroleru koja sadrži sledeće
informacije:
CPU, nakon što je odredio da DMA kontroler obavi U/I operaciju nastavlja sa radom.
DMA kontroler obavlja prenos bloka podataka, direktno ka/iz memorije, bez posredovanja CPUa.
Kada se prenos završi, DMA kontroler šalje prekidni signal CPU-u. Na ovaj način se CPU aktivira samo na
početku i na kraju.
DMA kontroler u trenutku kada se vrši prenos podataka ka/iz memorije preuzima pravo upravljanja nad
sistemskom magistralom.
Zbog toga DMA kontroler uslovljava da CPU privremeno suspenduje svoju operaciju.
u okviru ciklusa naredbi prikazane su tačke gde se rad CPU-a može suspendovati.
4. Navesti koje sve funkcionalnosti mora da ima interfejs i nacrtati detaljnu jedinstvenu šemu
koja prikazuje kako se prenose podaci, kako se adresira uređaj i kako se koriste prekidi.
Sve komunikacije sa spoljnim svetom obavljaju se preko interfejsa. Interfejs mora da bude sposoban da:
a) Interpretira adresu, memorijske i U-I selekt signale, pa da na osnovu toga utvrdi da li se obraćanje vrši
njemu ili memoriji i da odredi kojem se od njegovih registara pristupa
b) Odredi kada se obavlja operacija ulaz izlaz i prihvati izlazne podatke ili upravljačku informaciju sa
magistrale ili postavi ulazne podatke ili statusnu informaciju na magistralu
c) prima i predaje podatke pridruženom uredjaju vrši konverziju paralelnog oblika podatka u prihvatljivi
format
d) šalje signal o spremnosti kada je podatak prihvaćen ili postavljen na magistralu podataka, čime
obaveštava procesor da je prenos završen
e) šalje zahtev za prekid, prima signal o priznavanju prekida,
f) prima reset signal i reinicijalizira sam sebe
5. Dati šemu koja prikazuje kako se interna magistrala koja je razdvojena na
ulaznu i izlaznu povezuje na magistralu podataka i objasniti tokove podataka
prilikom operacija ulaz i izlaz.
Kod operacije izlaz dozvola rada predaje je na aktivno niskom nivou kao i dozvole S1 Sn. Kod operacije
ulaz dozvola rada prijema je je na aktivno niskom nivou i dozvoljen je upis u lečeve L1 do Ln.
Da bi se realizovao sekvencijalni rad mašine neophodno je uvesti hardver koji čine brojač stanja i
dekoder stanja
7. Nacrtati šeme organizacije procesne jedinice oko jedne unutrašnje magistrale.
Da bi doneli sud o brzini obrade podataka, kod ovako organizovanog mikroprocesora analiziramo koliko
je vremena potrebno da se izvrši sledeća operacija:
(R0) = (R0) + (R1)
Sabrati sadržaje registara R0 i R1, a rezultat smestiti na mesto R0. Za realizaciju ove operacije potrebno
je obaviti sledeće mikro-operacije:
(BUF1) ← (R0)
(ACC ) ← (R1)
(BUF2) ← (ACC)
(R0) ← (BUF1) + (BUF2)
Osobine:
a) organizacija se odlikuje jednostavnom arhitekturom
b) spora je
c) ne zahteva veliku površinu čipa.
8. Tipovi portova i blok dijagram U-I interfejsa.