Professional Documents
Culture Documents
Mpe 1
Mpe 1
Uređaj koji sadrži tesno povezane hardverske i softverske komponente projektovane sa ciljem
ostvarivanja jedne ili više unapred definisanih funkcija.
Dve glavne karakteristike: Reaktivno ponasanje, Rad pod velikim ogranicenjima
Upravljačka jedinica
Upravljačka jedinica (CU) upravlja radom CPU
Ona je realizovana kao konačni automat koji neprekidno prolazi kroz sledeći skup stanja:
1. Fazu prihvatanja instrukcije (instruction fetch, IF)
2. Fazu dekodovanja instrukcije (instruction decode, ID)
3. Fazu izvršavanja instrukcije (instruction execute, IE)
Ove tri stvari se nazivaju ciklusom instrukcije ili CPU ciklus i traje nekoliko taktova u zavisnosi od tipa
instrukcije
Aritmetičko-logička jedinica
Aritmetičko logička jedinica (ALU) je CPU komponenta u kojoj se obavljaju sve aritmetičke i logičke
operacije koje sistem mora da podržava. Osnovne aritmetičke operacije uključuju sabiranje,
oduzimanje, komplementiranje i podržane su od strane većine ALU jedinica. Logičke operacije koje
ALU jedinica može da izvede uključuju bitske I, ILI, NE i XOR operacije, kao i operacije pomeranja i
rotiranja sadržaja registra. Širina ulaznih operanada ALU jedinice obično se koristi za iskazivanje
računske moći posmatranog procesora: 8-bitna, 16-bitna, 32-bitna, 64-bitna.
Unutrašnji registri procesora. Navesti i objasniti najvažnije unutrašnje registre. Unutrašnji registri
procesora obezbeđuju privremeni smeštaj za podatke, adrese i upravljačke informacije, najbrze su
memorijske jedinice u embeded sistemu ali su i malog kapaciteta i sadrzaj im se brise prilikom gubitka
napajanja.
Postoje dve grupe unutrasnjih registara: Registri opšte namene (GPR): (nemaju specificnu funkciju
unutar procesora, koriste se za cuvanje podataka, vrednosti promenljivih, adresa itd. U zavisnosti od
arhitekture moze da ih bude od 1 do nekoliko desetina.
Registri posebne namene (SFR): Imaju specificno definisanu namenu. Registar instrukcija IR,
programski brojac PC, pokazivac steka SP, statusni registar SR.
Napredne arhitekture procesora - procesori sa protočnom obradom
Osnovna arhitektura procesora koju smo do sada razmatrali bazira se na sekvencijalnom izvršavanju
CPU ciklusa, koji se sastoji iz tri faze: faze prihvata (F), faze dekodovanja (D) i faze izvršavanja (E).
Uvođenjem protočne obrade (pipelining) moguće je izvršavanje većeg broja instrukcija istovremeno,
izvršavanje individualnih instrukcija je preklopljeno, tako što se svaka instrukcija nalazi u drugoj fazi
izvršavanja. Ovakav način izvršavanja, pod idealnim uslovima, koji podrazumevaju uvek pun lanac
obrade (pipeline), omogućava da se u svakom taktu kompletira izvršavanje jedne instrukcije. Procesor
sa N faza protocne obrade u idealnom slucaju ce biti N puta brzi.
Aritmetičko-logičke instrukcije
Su instrukcije namenjene izvođenju aritmetičkih i logičkih operacija nad podacima. Prilikom
izvršavanja ove grupe instrukcija koriste se unutrašnji registri, aritmetičko-logička jedinica kao i BIL
modul i modifikuju se bitovi unutar statusnog registra.
Kod većine procesora instrukcije iz ove grupe uključuju samo dva operanda, odnosno obično imaju
sledeći format: ciljni_operand ← (ciljni_opreand * polazni_perand) gde je sa * oznacena
aritmeticko-logicka operacija.
Uobicajne operaciju su: +, - , I, ILI, XOR. Mnozenje nije podrzano kod svih aritm log jed.
U slučaju kada je podatak smešten u nekoj memorijskoj lokaciji, da bi se “došlo” do njega potrebno je
na neki način specificirati adresu memorijske lokacije:
Apsolutno ili direktno adresiranje – sintaksa: adresa
Indirektno adresiranje – sintaksa: @Rn
Indeksno adresiranje – sintaksa: X(Rn)
RISC i CISC arhitekture procesora. Navesti osnovne razlike, prednosti i mane. Ilustrovati
princip rada jedne i druge grupe na primeru.
Adresna magistrala
Svaki registar, bilo da se nalazi unutar memorije ili periferijske jedinice, ima jedinstvenu
identifikacionu oznaku koja se naziva adresa.
Skup linija koje prenose informaciju o adresi registra sa kojim se želi ostvariti komunikacija čine
adresnu magistralu one su unidirekcione i polaze od procesora
Broj linija koje čine adresnu magistralu određuje maksimalnu veličinu adresnog prostora koji dati
procesor može da adresira
Adresna magistrala od m bita može da adresira najviše 2m različitih lokacija
Upravljačka magistrala
Grupiše sve linije koje prenose signale koji upravljaju nekom od aktivnosti unutar sistema. Za razliku
od adresne i magistrale podataka, kod kojih se vrednosi individualnih linija posmatraju kao celina
(adresa, odnosno podatak), signali upravljačke magistrale obično rade i interpretiraju se odvojeno.
Upravljački signali uključuju:
– Signale koji pružaju informaciju o tome da li procesor izvršava operaciju čitanja ili upisa
– Signale koji sinhronizuju prenos podataka, označavajući kada transakcija počinje i završava
– Signale koji pružaju informaciju da li neki od uređaja pristunih u sistemu zahteva servis od strane
procesora
Vecina upravljackih magistrala je unidirekcione, ulaze ili izlaze iz procesora u zavisnosti od namene.
Broj i funkcija upravljacke magistrale zavisi od arhitekture procesora.
Organizacija memorije
Memorijski podsistem služi za smeštanje instrukcija programa kao i podataka koje taj program
obrađuje, sastoje se od velikog broja hardverskih komponenti koje su u stanju da skladiste 1 bit
informacije. Bitovi su organizovani u n bitne reci, koje se tipicno nazivaju registrima ili lokacijama.
Sadržaj svake memorijske lokacije zove se memorijska rec, identifikuje se pomoću jedinstvenog
identifikatora, memorijske adrese koju procesor koristi da bi pristupio zeljenoj memoriskoj lokaciji. U
opštem slu čaju, memorijska jedinica sastoji se iz m memorijskih lokacija (ćelija) veli čine n bita i
oznacava se kao m x n memorija.
Servisiranje zahteva periferijskih jedinica. Navesti i ukratko objasniti dva osnovna pristupa.
Ukoliko se javi potreba za servisiranjem periferija od strane procesora, izvršavanje programa se mora
prekinuti i programska kontrola se mora preneti na poseban blok instrukcija koji je napisan na takav
način da na efikasan način može opsluži posmatranu periferijsku jedinicu.
Postoje dva pristupa:
– Servisiranje bazirano na prozivkama - procesor neprekidno “ispituje” ili “proziva” status
periferijske jedinice kako bi utvrdio da li ona zahteva servisiranje
– Servisiranje bazirano na prekidima - svaka periferijska jedinica koristi poseban signal da
signalizira procesoru kada ima potrebu da bude servisirana (zahtev za prekidom ili interrup
request)
Vrste prekida
• Maskirajuće prekide – ovi prekidi se mogu zabraniti (maskirati) od strane programera. Način
maskiranja varira od procesora do procesora. Na ovaj način moguće je kontrolisati koji izvori
prekida mogu prekinuti procesor u datom trenutku.
• Nemaskirajuće prekide – ovi prekidi ne mogu biti zabranjeni od strane programera i svaki put
kada se generiše neki prekid ovog tipa procesor će zaustaviti izvršavanje tekuće akcije i preći na
opsluživanje prekida. Ovi prekidi su obično rezervisani za signalizaciju kritičnih događaja u
sistemu koji se moraju opslužiti odmah.