Arhitektura računara NOVO

Embed Size (px)

Citation preview

Arhitektura raunara odnosi se na one atribute sistema koji su vidljivi programeru, oni koji imaju uticaja na logiko izvrenje programa. Organizacija raunara odnosi se na operacione jedinice i njihove meusobne veze koje realizuju specifikacije arhitekture. Sistem moemo podeliti na nivoe, a svaki od njih sadri: - struktura: nain na koji su komponente u meusobnom odnosu, - funkcija: rad svake pojedinane komponente kao deo strukture. Raunar mora da bude u stanju da: 1. obrauje podatke podaci mogu da budu vrlo razliitih oblika i opseg zahteva za obradom je irok, 2. skladiti podatke ak i kada raunar obrauje podatke on mora privremeno da skladiti bar one delove podataka na kojima se radi u bilo kom datom trenutku, a podjednako izvodi funkciju dugotrajnog skladitenja podataka, 3. premeta podatke izmeu sebe samog i spoljanjeg sveta, 4. upravlja ovim trima funkcijama izvodi pojedinac koji obezbeuje raunaru instrukcije, a unutar raunara resurse dodeljuje i upravlja upravljaka jedinica. Glavne strukturne komponente: - Centralna procesorska jedinica (CPU): upravlja radom raunara i izvodi njegove funkcije obrade podataka; esto se jednostavno naziva procesor. - Glavna memorija: skladiti podatke. - Sistemsko meupovezivanje: neki mehanizam koji obezbeuje komunikaciju izmeu CPU, glavne memorije i U/I. Najsloenija komponenta raunara je CPU. Njene glavne strukturne komponente su: - Upravljaka jedinica: upravlja radom CPU, a time i raunara u celini. - Aritmetika i logika jedinica (ALU): izvodi funkcije obrade podataka raunara. - Registri: obezbeuju unutranje skladitenje za CPU. - Meupovezivanje CPU: neki mehanizam koji obezbeuje komunikaciju izmeu upravljake jedinice, ALU i registara. Jedan od uobiajenih pristupa implementaciji upravljake jedinice je mikroprogramirana implementacija. Takva upravljaka jedinica radi tako to izvrava mikroinstrukcije koje definiu njenu funkcionalnost.

1

Najpopularniji nain za meusobno povezivanje procesora, memorije, U/I modula radi razmene podataka i upravljakih signala je upotrebom deljene magistrale, koja se sastoji od vie linija. Kljuni elementi projektovanja magistrala ukljuuju: - arbitraa (da li se dozvolama za slanje signala na linije magistrale upravlja na centralizovan ili distribuiran nain), - vremensko usklaenje (da li su signali na magistrali sinhronizovani sa centralnim generatorom takta ili se alju asinhrono, zasnovano na poslednjem prenosu), - irina (broj adresnih linija i linija za podatke). Osnovna funkcija koju izvodi raunar je izvrenje programa, koji se sastoji od skupa instrukcija uskladitenih u memoriji. Instrukcijski ciklus se sastoji od dva koraka: procesor ita(donosi) instrukcije iz memorije, po jednu istovremeno, i izvrava svaku instrukciju. Izvrenje programa se sastoji od ponavljanja procesa donoenja i izvrenja instrukcije. Izvrenje instrukcije moe da obuhvati vie operacija i zavisi od prirode instrukcije. Dva koraka se zovu ciklus donoenja i ciklus izvrenja. Izvrenje programa zaustavlja se samo ako se maina iskljui, ako se pojavi neka vrsta nepopravljive greke, ili ako se naie na instrukciju programa koja zaustavlja raunar. Na poetku svakog instrukcijskog ciklusa, procesor donosi instrukciju iz memorije. U tipinom procesoru, registar koji se zove programski broja (PC) dri adresu instrukcije koja treba sledea da se donese. Procesor uvek poveava sadraj programskog brojaa posle svakog donoenja instrukcije. Donesena instrukcija se uitava u instrukcijski registar (IR) u procesoru. Instrukcija sadri bitove koji odreuju akciju koju procesor treba da preduzme. Procesor interpretira instrukciju i izvodi zahtevanu akciju. Te akcije obino spadaju u jednu od sledee etiri kategorije: - Procesor-memorija: podaci mogu da se prenose od procesora do memorije ili obrnuto. - Procesor U/I: podaci mogu da se prenose do periferijskog ureaja ili od njega, prenosom izmeu procesora i U/I modula. - Obrada podataka: procesor moe da izvodi ne aritmetike ili logike operacije nad podacima. - Upravljanje: instrukcija moe da odredi da se promeni sekvenca izvrenja. Izvrenje instrukcije moe da obuhvati i kombinaciju ovih akcija. Stanja instrukcijskog ciklusa mogu da se opiu na sledei nain: - Proraun adrese instrukcije (iac): odreuje se adresa sledee instrukcije za izvrenje. To obino obuhvata dodavanje fiksnog broja na adresu prethodne instrukcije. - Donoenje instrukcije (if): instrukcija se uitava iz njene memorijske lokacije u procesor.

2

-

Dekodovanje operacije instrukcije (iod): analizira se instrukcija da bi se odredila vrsta operacije za izvrenje i operand (i) koji treba da se koristi (e). - Proraun adrese operanda (oac): ako operacija obuhvata pozivanje na operand koji je u memoriji, ili raspoloiv preko U/I, onda se odreuje adresa operanda. - Operacija nad podacima (do): izvodi se operacija iz instrukcije. - Skladitenje operanda (os): upisuje se rezultat u memoriju ili u U/I. Stanja na gornjem delu slike obuhvataju razmenu izmeu procesora i memorije ili U/I modula. Stanja u donjem delu dijagrama obuhvataju samo unutranje operacije procesora. Magistrala je komunikaciona linija koja povezuje dva ili vie ureaja. Ona je deljeni prenosni medijum. U jednom vremenskom periodu signal mogu primati svi ureaji prikljueni na magistralu dok slanje moe vriti samo jedan prikljueni ureaj da ne bi dolo do preklapanja signala. Raunarski sistem sadri veliki broj magistrala, a najvanija je sistemska magistrala koja povezuje procesor, memoriju i U/I. Tipino se sastoji od oko 50, pa do vie stotina posebnih linija od kojih je svaka sposobna da prenosi signale koji predstavljaju binarne cifre 1 i 0. Svakoj liniji se dodaje posebno znaenje i funkcija i mogu se podeliti u tri grupe: linije za podatke, adresne i upravljake linije. Linije podataka obezbeuju putanju za pomeranje podataka izmeu modula sistema koje se zajedno zovu magistrala podataka. Moe da se sastoji od 32 do vie stotina linija i taj ukupan broj linija nazivamo irinom magistrale. Adresne linije se koriste da oznae izvor ili odredite podataka na magistrali podataka. Obino se koriste i za adresiranje U/I portova. Upravljake linije se koriste da se upravlja pristupom i upotrebom linija za podatke i adrese. Upravljaki signali predaju i komandne i vremenske informacije izmeu modula sistema. Vremenski signali ukazuju na validnost informacija o podacima i adresama. Komandni signali odreuju operacije koje treba da se izvedu. Upravljake linije ukljuuju: - Upis u memoriju: prouzrukuje da se podatak na magistrali upie u adresiranu lokaciju. - itanje iz memorije: prouzrukuje da se podatak iz adresirane lokacije postavi na magistralu. - U/I upis: prouzrukuje da podatak na magistrali izae na adresirani U/I port. - U/I itanje: prouzrukuje da se podatak iz adresiranog U/I porta postavi na magistralu. - Prenos ACK: pokazuje da je podatak prihvaen sa magistrale, ili postavljen na nju. - Zahtev za magistralu: pokazuje da je modulu potrebno da dobije upravljanje nad magistralom. - Odobrenje magistrale: pokazuje da je modulu koji je to zahtevao odobreno upravljanje nad magistralom. - Zahtev za prekidom: pokazuje da je prekid nereen. - Prekid ACK: potvruje da je nereen prekid prepoznat. - Clock: koristi se za sinhronizaciju operacija. - Reset: inicijalizuje sve module. Operacija magistrale se odvija na sledei nain. Ako jedan modul alje podatak, on mora da dobije upotrebu magistrale i da prenese podatak preko magistrale. Ako jedan modul zatrai podatak od drugog, on mora da dobije upotrebu magistrale i da prenese zahtev drugom modulu preko odgovarajuih upravljakih i adresnih linija i onda da saeka da mu drugi modul poalje podatak. 3

Fiziki, sistemska magistrala je, u stvari, izvestan broj elektrinih provodnika. Ti provodnici su metalne linije na kartici ili tampanoj ploi. Prostire se preko svih komponenata sistema, od kojih je svaka prikljuena na neke ili na sve linije magistrale. Vrste magistrala. Linije magistrale mogu da budu razdvojene u dve vrste: namenske i multipleksirane. Namenska je stalno dodeljena ili jednoj funkciji, ili fizikom podskupu raunarskih komponenata. Vremensko multipleksiranje je metoda korienja istih linija za viestruke namene. Prednost je upotreba manjeg broja linija, to tedi prostor i trokove, a mana zato to je potrebno sloenije elektronsko kolo unutar svakog modula i postoji mogue smanjenje performansi. Metoda arbitrae. Imamo centralizovanu i distribuiranu. U centralizovanoj imamo jedan hardverski element, arbitar, odgovoran za dodeljivanje vremena na magistrali. Ureaj moe biti poseban modul ili deo procesora. U distribuiranoj nema centralnog kontrolera, ve svaki modul sadri pristupnu upravljaku logiku, a moduli rade zajedno delei magistralu. Kod obe vrste se oznai jedan ureaj kao gospodar (master) koji zapoinje prenos podataka sa drugim ureajem koji je sluga (slave). Vremensko usklaivanje se odnosi na nain na koji se koordiniraju dogaaji na magistrali. Magistrale koriste sinhrono ili asinhrono vremensko usklaivanje. Kod sinhronog vremenskog usklaivanja, pojavu dogaaja na magistrali odreuje generator takta. Magistrala ima liniju generatora takta, preko koje generator takta predaje pravilan niz binarnih cifara 1 i 0. Jedna predaja 1-0 naziva se ciklus generatora takta ili ciklus magistrale i definie vremenski odseak. Svi drugi ureaji na magistrali mogu da itaju liniju takta i svi dogaaji poinju na poetku ciklusa generatora takta. Kod asinhronog vremenskog usklaivanja, pojava jednog dogaaja na magistrali sledi i zavisi od pojave prethodnog dogaaja. irina magistrale. Ima uticaja na performansu sistema; to je ira magistrala podataka, to vei broj bitova moe da se prenese odjednom. irina adresne magistrale ima uticaja na kapacitet sistema; to je ira adresna magistrala, to je vei opseg lokacija kojima moe da se obraa. Vrsta prenosa podataka. Magistrala podrava razne vrste prenosa podataka. Sve magistrale podravaju prenose i upis (master-slave) i itanja (slave-master). Raunarska memorija je hijerarhijski organizovana. Na najviem nivou (najblie procesoru) nalaze se procesorski registri. Zatim dolazi jedan ili vie nivoa ke memorije. Kada se koristi vie nivoa, oni se oznaavaju sa L1, L2, itd. Zatim imamo glavnu memoriju, koja se obino pravi od dinamike memorije sa sluajnim pristupom (DRAM). Ove memorije se smatraju unutranjom memorijom. Hijerarhija se nastavlja dalje spoljanjom memorijom, gde obino spadaju fiksirani vrsti disk i jedan ili vie nivoa ispod njega, koji se sastoje od izmenljivih medijuma optiki diskovi i trake. Oigledna karakteristika memorije je njen kapacitet. Za unutranju memoriju, on se obino izraava u bajtovima (1 bajt = 8 bitova), ili u reima. Uobiajene duine rei su 8, 16 i 32 bita. Kapacitet spoljanje memorije se tipino izraava u bajtovima.

4

Srodna karakteristika je jedinica prenosa. Za unutranju memoriju, jedinica prenosa jednaka je broju linija za podatke koje vode u memorijski modul i iz njega. Ona moe da bude jednaka duini rei, ali je esto vea, npr. 64, 128, 256 bitova. Druga razlika meu vrstama memorije je metoda pristupanja jedinicama podataka. Te metode ukljuuju sledee: - Sekvencijalni pristup. Memorija je organizovana po jedinicama podataka koje se zovu zapisi. Pristup mora da se napravi u specifinoj linearnoj sekvenci. Koristi se deljeni mehanizam za itanje/upisivanje, a on mora da se premeta sa svoje trenutne na eljenu lokaciju, prolazei i odbacujui svaki zapis koji se nalazi izmeu. - Direktan pristup. Kao kod sekvencijalnog, i kod direktnog pristupa koristi se deljeni mehanizam za itanje/upisivanje. Meutim, pojedinani blokovi ili zapisi imaju jedinstvenu adresu, zasnovanu na fizikoj lokaciji. Pristup se ostvaruje direktnim pristupom da bi se postigla opta susednost, plus sekvencijalno traenje, brojanje ili ekanje da bi se dostigla konana lokacija. Vreme pristupa je takoe promenljivo. - Sluajni pristup. Svaka adresibilna jedinica u memoriji ima jedinstven, fiziki oien mehanizam za adresiranje. Vreme za pristup datoj lokaciji konstantno je i nezavisno od sekvence prethodnih pristupa. - Asocijativni pristup. Kao i kod obine memorije sa sluajnim pristupom, svaka lokacija ima sopstveni mehanizam za adresiranje, a vreme izvlaenja je konstantno, nezavisno od lokacije ili prethodnih uzoraka pristupanja. Koriste se tri parametra performanse: - Vreme pristupa (kanjenje). Za memoriju sa sluajnim pristupom, to je vreme potrebno da se izvede operacija itanja ili upisivanja, odnosno, vreme od trenutka kada se neka adresa predstavi memoriji, do trenutka kada se podatak uskladiti ili stavi na raspolaganje za upotrebu. Za memoriju koja nema sluajan pristup, vreme pristupa je ono koje je potrebno da se zauzme poloaj mehanizma za itanje-upisivanje na eljenoj lokaciji. - Vreme ciklusa memorije. Taj koncept se primenjuje na memorije sa sluajnim pristupom i sastoji se od vremena pristupa, plus svako dodatno vreme koje se zahteva pre nego to moe da pone sledei pristup. - Brzina prenosa. To je brzina kojom podaci mogu da se prenose u memorijsku jedinicu ili iz nje. Za memoriju sa sluajnim pristupom, ona je jednaka 1/(vreme ciklusa). Organizacija je kljuno pitanje za memoriju sa sluajnim pristupom. Pod organizacijom se podrazumeva fiziko ureenje bitova da bi formirali rei. Kako se ide niz hijerarhiju, dogaa se sledee: 1. smanjuje se cena po bitu; 2. poveava se kapacitet; 3. poveava se vreme pristupa; 4. smanjuje se uestalost pristupa memoriji od strane procesora. Na taj nain, skuplje, bre memorije dopunjavaju se veim, jeftinijim i sporijim memorijama. Najbra, najmanja i najskuplja vrsta memorije sastoji se od registara koji su interni za procesor. Procesor tipino sadri nekoliko desetina takvih registara. Glavna memorija je najvanija unutranja memorija raunara. Svaka lokacija u glavnoj memoriji ima jedinstvenu adresu. Glavna memorija se obino proiruje brim i manjim keom. Ke obino nije vidljiv za programera ili, zaista za procesor. To je ureaj 5

za privremeno prihvatanje podataka izmeu glavne memorije i procesora da bi se poboljale performanse. Ove tri memorije su nepostojane i koriste poluprovodniku tehnologiju. Podaci se trajnije skladite na spoljanjim masovnim memorijskim ureajima, najee vrsti disk i izmenljivi medijumi. Disk se takoe koristi da obezbedi proirenje glavne memorije koje je poznato kao virtuelna memorija. Ke sadri kopiju delova glavne memorije. Kada procesor pokua da ita re memorije, napravi se provera da bi se utvrdilo da li je re u keu. Ako jeste, re se isporuuje procesoru. Ako nije, blok glavne memorije, koji se sastoji od nekog fiksnog broja rei, uitava se u ke i onda se re isporuuje procesoru.

Glavna memorija se sastoji od 2n adresibilnih rei, gde svaka re ima jedinstvenu n-bitnu adresu. Ta memorija je zamiljena da se sastoji od izvesnog broja blokova fiksne duine, svaki po K re. Postoji M = 2n/K blokova. Ke se sastoji od C redova, od kojih svaki sadri K rei, plus tag od nekoliko bitova; broj rei u redu se zove veliina reda. Broj redova je mnogo manji od broja blokova u glavnoj memoriji (C