SlideShare a Scribd company logo
1 of 12
Savremeni računarski sistem
Računarski sistemse,uosnovi,sastoji odcentralnogprocesora,memorije i različitihulazno/izlaznih
uređajakoji sumeđusobnopovezani takodaobezbjeđujuizvršavanjefunkcijaračunara.Najveći broj
današnjihračunarskih sistemaje zasnovannafonNojmanovoj arhitekturiračunarskogsistema.
Osnovni koncepti ove arhitekturesu:
1. Računarski sistemposjeduje samojednumemorijuukojoj se čuvajui podaci i instrukcije.Između
zapisapodatakai instrukcijane postoje razlike,tj.jedinoodnačinainterpretacije zavisi koji sadržaj će
biti shvaćenkaopodataka koji kaoinstrukcija.
2. Memorijaračunara je adresibilnapolokacijamakojimase može pristupiti bezobzirakakavimje
sadržaj.
3. Izvršavanje instrukcijase izvodi strogosekvencijalno,osimukolikodrugačijenijeeksplicitno
naglašeno(npr.izvršavanjeminstrukcije skokase može modifikovati redoslijedizvršavanja
instrukcija).
Slika 1. Savremeni računarski sistem
Savremeni računarski sistemse sastoji odCPU-a,memorijei određenogbrojakontrolerauređajana
koje supovezani različiti periferni uređaji.Memorijaje dijeljena –istoj lokaciji umemoriji moguda
pristupe i procesori kontroleri različitihuređajaprekozajedničke magistrale.Sinhronizacijapristupa
dijeljenojmemoriji se obavljaprekokontroleramemorije.Dabi računarski sistempočeodaradi
potrebnoje dase izvrši inicijalni(eng. bootstrap) programkoji morabiti štojednostavniji.On
inicijalizuje sve komponente računarskogsistemapočevodregistaraCPU,prekokontrolerauređaja
do sadržajamemorije.Inicijalniprogrammorada zna kakoda učita operativni sistemi dapočne
njegovoizvršavanje.Operativni sistempočinje izvršavanje prvogprocesai čekadokse ne pojavi neki
događaj.Pojavudogađajamoguda signalizirajui hardveri softverprekomehanizmakoji se
nazivasistem prekida.Postoji veliki broj različitihtipovadogađajakoji mogudase signalizirajukao
prekidi –npr. kraj ulazno/izlazne operacije,dijeljenjenulom,nedozvoljenpristup memoriji,zahtjevza
nekimodservisaoperativnogsistema.Zasvaki odovihprekidaje predviđenservisni programkoji
preuzimakontrolui obrađuje prekid.
Dijelovi računara su:
 Centralna procesorska jedinica /CENTRAL PROCESSING UNIT/ (CPU).
 Tastatura /KEYBOARD/.
 Monitor /MONITOR/.
 kučište /CASE/.
 Drajveri /HARD DISK DRIVE, CD DRIVE, DVD DRIVE, FLOPPY, OPTICAL, TAPE
 Ostali vanjski dijelovi često zvani periferije / PERIPHERAL COMPONENTS OR DEVICES / kao što su
miš,štampač,modem,skener,digitalna kamera,...
Monitor/SCREEN MONITOR/
Tastatura /KEYBOARD/
Miš /MOUSE/
Kućište ili sistemskajedinica/CASE,SYSTEMUNIT/
Štampač /PRINTER/
Microfon/MICROPHONE/
Zvučnik/SPEAKER/
Kroz čitavusvojuistoriju,ljudi subili prinuđenidavrše različitaizračunavanjai obraduinformacija
dobijenihizsvijetakoji ihokružje.Obimi složnostovihizračnavanjaneprekidnosuse povećavali,a
manuelnoizračunavanje,ukojemje čovjekosnovnosredstvo,imadvavelikaograničenja:
čovjekovabrzinaje veomaograničena
čovjekpokazuje sklonostkapravljenjugrešaka
U procesuizračunavanjaljudi koriste raznapomoćnasredstva.Tasredstvasuse razvijalai
usavršavaladabi sredinomdvadesetogvijekadoveladopojave računara.
Računar je uređaj koji samostalnoobavlja obradupodatakanaosnovuunesenogprograma.
Računar je uređaj sastavlјenodrazličitihelektronskihuređaja.Osnovnakarakteristikaračunaraje da
imamogućnostizvršavanjarazličitihprogramakoji omogućavajudase onpo potrebi koristi za
poslove različitenamјene.Osimizvršavanjaprogramakoji gavode,računar imasposobnosttrajnog
pamćenjavelikekoličine organizovanihpodataka(brojeva,teksta,slika,zvučnihi videozapisaitd),
tako da se,osimza direktnodobijanje rezultata,njegovi kapaciteti koristezačuvanje i obradu
podataka(pisama,arhiva,slika,tabelaitd).Kapaciteti računarase istovremenokoristei začuvanje
programa na hard diskuili nekomodeksternihdiskova,odkojihse svaki može poželјiaktivirati.Zbog
toga je računar u svakomtrenutkuspremandana vašu komandupočne daobavlјaspecifičanposao.
Računar je uređaj opšte namjene koji je postaoneophodnaalatkavelikogbrojakakopojedinacatako
i organizacija.Zbogvelikogbrojaprogramai aplikacijakoje sadrže računari novijegeneracije,posao
se obavljaefikasnijei urednijenegopomoćupapirai olovke.Pri tome se svi dokumenti i drugi podaci
mogupouzdanočuvati u elektronskomoblikunaračunaruili na različitimvrstamadiskova,takodasu
uvekponovodostupni zapregled,izmjene i ponovnuupotrebu.
Primjenaračunara,a samimtimračunarstva i informatike je veomarasprostranjenausvimoblastima
savremenogživota.
Računarstvoje nauka kojase bavi proučavanjemteoretskihosnovainformacije i računanja,te
njihovimimplementacijamai primjenamauračunarskimsistemima.
Nabrojaćemoneke oblastiprimjeneračunara:
• Unošenje različitihtekstova(pisama,knjiga,blogovai slično)
• Tehničkoprojektovanje,grafičkodizajniranje i crtanje
• Izradatabelai grafikona,modeliranje i statističke analize podtaka
• Obradavelikihkoličinapodatakabilokoje vrste
• Kontrolaradarazličitihuređajai mašina
Postoje nastotine hilјadaprogramaspecijalizovanihzarazne aktivnosti:vođenje knjigovodstva,
učenje,enciklopedijenaračunaru,telefonski imenici i adresari,planiranjekućnogbudžeta,pai igrice
za zabavui opuštanje.
Jednaod prednosti računaraje povezivanje velikogbrojapojedinačnihračunaraujedinstveni
sistem- računarskumrežu.Umreženi računari uopšte ne morajuda budufizički blizu,većse svaka
jedinicamože nalazitiudrugoj prostoriji,pačaki različitomgraduili kontinentu,dokse ovaveza
održavaprekotelefonskihlinijaili naneki drugi način(podzemni kablovi,satelitske veze).Sadrugim
računarimau mreži razmjenjujuse poruke,programi,dokumentai drugi podaci,pakorisnikimana
raspolaganjusve informacije kojepostojenasistemu.Takobanke,turističke agencijei druge
insitucije mogudausvojimposlovnicamanaterenuodržavajuažurnostanje,aposlovni lјudi i
korisnici izkuće imajuprekoglobalnesvjetskemreže kojase zove Internetpristupsvimakoji preko
nje prezentujuinformacije osebi širomsvijeta.Pomoćuračunaraumreži može se ostvarivati
potpunakontrolaprocesaproizvodnjesajednogmesta.Timovi stručnjakaizraznihoblasti mogu
raditi na raznimprojektima,ane morajubiti na jednommjestu.Računari umreži mogubiti
angažovani ukontroli saobraćajaili obezbjeđivanjuobjekata,amogubiti i sastavni diosistema
obrazovanja(učenici i nastavnici ne morajudolaziti uspecijalizovanuustanovu - školudabi se proces
obrazovanjaostvarivao)
Računar je nastao zatošto je čovjektežiozaspravomkoja bi ljudski mozakoslobodilamnogih
problemai ograničenja(sporost,zaboravnost,sklonostgreškamaitd.)
1. Računar ABACUS(500 g.pne.) - pravougli okvirsanekolikoparalelnihžica,asvakaima
sedamkuglica.Moguće je raditi četiri osnovne matematičke operacije.
2. Paskalovaaritmetičkamašina( 1643.god. ) - sličnadanašnjimkalkulatorima samehaničkim
komponentama.Moglaje samosabirati i oduzimati.
3. Lajbnicovamašinaza računanje ( 1694. god.) - pomoćunje se mogloizvršiti sve četiri
osnovne matematičkeoperacije kaoi nalaziti kvadratni korijen.
4. CharlesBabbage je 1820. godine konstruisaodiferencnumašinu(engl.Differenceengine).Takva
mašinaje trebaloda omogući mašinskoizračunavanje logaritamskihtablica.Sve sprave togdoba
imale suveliki nedostatak,mogle sudaizvode operacijesamozaonoza šta subile napravljene.Taj
nedostatakuočioje ČarlsBabejdž,paje 1833. godine konstruisaouniverzalnumašinuzaračunanje
kojaje moglada rješavarazličite funkcije.Babejdžje podijeliouniverzalnumašinunaviše dijelova,
gdje je svaki dio imaosvojufunkciju:
Diou koji se unose podaci
Diokoji računa
Diokoji upravlјamašinom
Diokoji pamti podatke
Diokoji prikazuje rezultate.
Analitičkamašina(engl.Analytical engine) se smatraprethodnikomsavremenihračunara.Mašinaje
trebalada bude sastavlјenaodmehaničkihdijelova,polugai zupčanika.Međutim, zbogfinansijskih
razlogai tehničkihmogućnostitogdobanikadanije bilazavršena.Babejdžovaidejaje osnova
današnjihračunara
5. Holeritovamašinazabušene kartice (1890.god.) – prekočitačakartica podaci se lakoi
brzo sortiraju.Korištenaje pri popisustanovništvaSAD-a1890. god.,a preraslaje u IBM
(InternationalBusinessMashines).
6. Howard Aikenje 1943.godine dovršioMARKI,prvi elektronski računar(zasnovanna
elektromehaničkimrelejima).“Div”odračunara,dugačak 17m, visok2,5m, težak5 tona,a imao je
okomiliondijelova. Zajednosabiranje trebalamuje sekunda,zajednodijelјenje15sekundi.
7. Ekert i Mohlijevračunar(1946.god.) – to je prvi elektronski računarENIAC.Imaoje 18000
elektronskihcijevi,bioje težakpreko30 tona.
CPU
CPU se odnosi na procesori to je CENTRALPROCESSINGUNIT centralnaprocesorskajedinicaiil
procesor.Centralnaprocesorskajedinica/CENTRALPROCESSINGUNIT/je hardver/HARDWARE/.
Procesorse nalazi na matičnoj ploči /MOTHER BOARD/unutarračunara. Zbog velikogbroja
računarski komponenti kojese nalaze unjemupovečanoje grijanje procesorai zatose na procesoru
nalazi posebanhladnjak/COOLER/.
Ljudski mozak/BRAIN/se koristi kaoasocijacijazaprocesor.
Glavni čipu računaru se zove CPU.Svi poslovi koji se rade uračunaru izvodi procesordirektnoili
indirektno.Pri ovomprocesorkoristidruge dijelove računara.
Centralnaprocesorskajedinica/CENTRALPROCESSINGUNIT/se sastoji oddva dijela:
Aritmetičke jednicie/ALU- ARITHMETIC LOGIC UNIT/ izvodi aritmetičkei logičke operacijeu
računaru.
Upravljačkajedinica/CU- CONTRLOLUNIT/ izvodi upravljačkefunkcije uračunaru.
CISC i RISC arhitekture mikroprocesora
 Paralelno sa evolucijom računarskog hardvera išao je i razvoj softvera. Sve šira upotreba računara i
napredak tehnologije doveli su do relativnog pada cijene hardvera i relativnog porasta cijene softvera.
 Razlog tome je bio nedostatak kvalitetnih programera i odgovarajućih metoda razvoja softvera. Ovo je
uzrokovalo pojavu tzv. softverskih kriza.
 Odgovor računarske industrije je bio:definisanje novih metodologija razvoja softvera, razvoj moćnijih i
složenijih programskih jezika i generatora softvera, primjena novih paradigmi u programiranju (prvo
strukturno,zatim objektno-orijentisano programiranje).
 Sa druge strane,ova rješenja su dovodila do tzv. semantičke praznine u mogućnostima postojeće
arhitekture računara i programskih jezika i alata.
 Izvršavanje programa je postajalo neefikasno,povećana je veličina mašinskog programa i složenost
prevodilaca (kompajlera).
 Da bi se premostila ova praznina modifikovana je arhitektura novih modela računara.Svaki novi model
je donosio povećanje skupa instrukcija,nove načine adresiranja i hardversku implementaciju pojedinih
naredbi viših programskih jezika.
 Ove modifikacije su omogućile:
1. jednostavniju konstrukciju kompajlera i podršku za sve složenije programske jezike
2. povećanje efikasnosti izvršavanja
 Istovremeno sa konstrukcijom novih modela računara rađene su i studije izvršavanja mašinskih
instrukcija generisanih prevođenjem tada postojećih programskih jezika.
 Rezultati ovih studija su doveli do potpuno drugačijeg pristupa pri konstrukciji novih modela računara,
tzv. RISC (eng. Reduced Instruction SetComputer).
Neke osobine RISC procesora
Karakteristike ponašanja dotadašnjih CISC (eng. Complex Instruction SetComputer) procesora i programa koji su
radili na njima su bile:
• Naredbe koje su se najčešće javljale u programima su bile naredbe dodjele,uslovna naredba i poziv
potprograma.Takođe,pronađeno je da su poziv i povratak iz procedure operacije koje zahtijevaju najviše
vremena u tipičnim programima pisanim na višim programskim jezicima.
• Referisanje na operande se obavlja kao referisanje na lokalne skalarne vrijednosti.Na osnovu toga je
zaključeno da je nužna optimizacija procesa zapisivanja i pristupa lokalnim promjenljivim.
• Pri pozivu procedura oko 98% procedura je prenosilo manje od 6 argumenata,a čak kod 92% procedura su ti
argumenti bili lokalni.Ovi rezultati govore da broj riječi potreban pri pozivu procedure nije veliki,kao i da treba
obratiti pažnju na pristup argumentima,čime su potvrđeni raniji rezultati.
Na osnovu rezultata ovih studija zaključeno je da konceptpravljenja arhitektura bliskih višim programskim
jezicima nije optimalan.Slijedila su 3 načina za poboljšanje performansi:
1. Povećanje broja registara. Uočeno je da u analiziranim programima postoji jako veliki procenatnaredbi
dodjeljivanja i pomjeranja podataka.Ova karakterstika zajedno sa skalarnim tipom podataka sugerisala je da se
performanse mogu poboljšati smanjenjem referisanja memorije i,umjesto toga,povećanim referisanjem registara.
Kako je najveći broj takvih referenci lokalan,jedan od praktičnih prilaza je bio povećanje broja registara.
2. Poboljšanje dizajna preklapanja instrukcija. Obzirom na visoki procenatuslovnih skokova i poziva procedura
uobičajeni način implementacije preklapanja nije efikasan.Posljedica uslovnih skokova i poziva procedura je
postojanje velikog broja instrukcija koje su dohvaćene ali se nikada ne izvršavaju.
3. Smanjen broj osnovnih instrukcija. Sa smanjenim brojem osnovnih instrukcija jednostavnije je konstruisati
mikroprocesor (koji je po definiciji na jednom jedinom čipu),manje vremena se troši na prepoznavanje instrukcija i
instrukcije su brže jer se izvršavaju u jednom ciklusu.
Najpoznatiji proizvođači RISC čipova su firme Motorola (88000,..., PowerPC), Silicon Grpahics (MIPS R1000,
R3000,R4000,..., R12000),Digital (Alpha), HewlettPackard (PA-RISC 8200,...,8600), Sun Microsystems (Micro
SPARC i ULTRA SPARC) i IBM (RS/6000 i PowerPC).
Osobine RISC procesora koje su zajedničke bez obzira na proizvođača su:
1. Izvršavanje (bar) jedne mašinske instrukcije za jedan mašinski ciklus.Ovim se smanjuje ili eliminiše potreba za
mikrokodom i kompletna mašinska instrukcija može da bude hardverski kodirana.Takva instrukcija se izvršava
brže od odgovarajućih instrukcija CISC procesora jer nema potrebe za vršenjem mikroprogramske kontrole.
2. Najveći broj mašinskih operacija je tipa registar-u-registar što rezultuje uprošćenom upravljačkom jedinicom.
Takođe, ovakva arhitektura omogućuje optimizaciju upotrebe registara tako da argumentkome se često pristupa
ostaje u brzoj memoriji od koje su napravljeni registri.
3. Upotreba relativno malog broja načina adresiranja.Najveći broj instrukcija RISC procesora koristi registarsko
adresiranje.Pored njega mogu da se jave i drugi načini adresiranja kao npr.adresiranje sa baznim registrom i
udaljenjem,i/ili relativno adresiranje u odnosu na programski brojač.Ostali kompleksniji načini adresiranja se
realizuju softverski.
Ova osobina takođe ima uticaj na jednostavnostkonstrukcije upravljačke jedinice čime se povećava brzina rada.
4. Upotreba jednostavnih formata instrukcija.U opštem slučaju se koristi samo nekoliko različitih formata
instrukcija.Instrukcije su fiksne dužine i obično su poravnate na granicu riječi,što znači da ne prelaze granice
stranica.Polja u instrukcijama (npr.kod operacije) su takođe fiksne dužine što omogućuje istovremeno
dekodiranje operacionog koda i pristup operandu instrukcije.Takođe,mali broj formata pojednostavljuje
upravljačku jedinicu.
Prednosti RISC procesora u odnosu na procesore izvedene u CISC tehnologiji se mogu podijeliti u dve grupe:
1. Jednostavnija konstrukcija. Zbog manjeg broja instrukcija i jednostavnije strukture vrijeme potrebno za
dizajniranje i uvođenje takvog procesora u komercijalnu upotrebu je znatno kraće.
2. Bolje performanse. RISC čipovi posjeduju znatno bolje performanse od CISC čipova koji rade na istim
brzinama.Za RISC mikroprocesore je jednostavnije definisati prevodioce koji formiraju mnogo optimalniji kod
nego za CISC mikroprocesore.Veliki broj instrukcija koje generišu prevodioci je relativno jednostavan.
Upravljačka jedinica može da se napravi da za ovakve instrukcije koristi vrlo malo mikrokodiranja,tako da se one
izvršavaju brže nego na odgovarajućim CISC procesorima.
RISC procesori postižu bolje performanse i zbog intenzivnog korišćenja tehnike preklapanja instrukcija (o tome će
biti riječi kasnije)
Organizacija centralnog procesora
• Kod prvih generacija procesora glavne komponente CPU-a su bile aritmetičko–logička
jedinica (eng.Arithmetic-Logic Unit,ALU) i upravljačka jedinica (eng. Control Unit,CU). ALU je obavljala obradu
podataka,a CU je kontrolisala obavljanje operacija u ALU i upravljala prenosom podataka i instrukcija u i iz CPU-
a.
• Ove i druge funkcije koje posjeduju savremeni mikroprocesori se realizuju preko više funkcionalnih jedinica.U
nekim jedinicama su objedinjeni kontrola i izvršavanje.
• Bez obzira na broj funkcionalnih jedinica procesora,proces izvršavanja instrukcija uključuje:
– dohvatanje instrukcije i njenu interpretaciju
– obezbjeđivanje argumenata instrukcije
– čuvanje vrijednosti dobijenih pri izvršavanju
– određivanje naredne instrukcije koja se izvršava
Da bi se ove operacije uspješno obavile,neophodna je memorija za čuvanje npr. argumenata instrukcije,
privremenih rezultata izračunavanja, itd. Ova memorija se realizuje u obliku registara koji predstavljaju internu
memoriju CPU-a.
Slika 16. Uprošćena struktura centralnog procesora
Globalne funkcije funkcionalnih jedinica mikroprocesora su:
BCEU Branch Control ElementUnit.Ova jedinica se koristi pri obradi zahtjeva za podacima i instrukcijama izkeš
memorije,prevođenje virtualnih u apsolutne adrese,pri implementaciji preklapanja instrukcija,itd.Pored toga ova
jedinica sadrži i mikrokod.
IU Instruction Unit se koristi za dekodiranje instrukcija i određivanje njihovih komponenti.
AGU Address Generation Unit se koristi za generisanje adresa koje treba sačuvati ili sa kojih treba napuniti
vrijednosti.
LSU Load/Store Unit se koristi za prijem i čuvanje podataka pri njihovom čitanju/upisu u L1 keš za podatke.
Takođe obezbjeđuje poravnanje,konverziju između zapisa brojeva različitih dužina, kao i (na nekim
mikroprocesorima) normalizaciju brojeva u pokretnom zarezu.
FX ALU FiXed point ALU vrši operacije sa brojevima u fiksnom zarezu (cjelobojnim i BCD) kao i logičke operacije.
FP ALU Floating PointALU vrši operacije sa brojevima u pokretnom zarezu. Kod nekih mikroprocesora se ova
jedinica koristi za izvršavanje dodatnih skupova instrukcija (npr MMX), dok je kod drugih mikroprocesora jedinica
koja izvršava ove dodatne skupove instrukcija (npr.SSE ili AltiVec) po strukturi slična FP ALU i vrlo blisko
povezana sa njom.
DC Data Cache. L1 Keš za podatke.
IC Instruction Cache.L1 Keš za instrukcije.
L2I Cache Level 2 Interface.Veza ka kešu na nivou 2.
L2C Level 2 Cache.Keš na nivou 2. Formalno gledano,on se nalazi van CPU-a i sa njim je povezan posebnom
magistralom.
Jedinice su međusobno povezane internim vezama koje se nazivaju interne magistrale procesora.Većina jedinica
posjeduje svoje interne bafere.Registri u procesoru nisu grupisani na jednom mjestu već su distribuirani prema
svojoj namjeni.
Aritmetičko-logička jedinica
ALU je dio procesora u kome se izvode
aritmetičke i logičke operacije.Operacije se
izvode u elektronskim komponentama koje su
izgrađene u skladu sa pravilima digitalne logike.
Podaci se prenose u ALU preko registara;
rezultati operacija,koji mogu da uključe i
postavljanje različitih zastavica (flagova) i
indikatora,se takođe smještaju u registre.
ALU se u savremenim procesorima ne
implementira kao jedinstvena jedinica već su
funkcije ALU dislocirane u različite
specijalizovane procesorske jedinice.Tako se
funkcije ALU (vidi gornju sliku) obavljaju u FX
ALU, FP ALU i LSU, mada se integralnim dijelom
ALU mogu smatrati i DC jedinica (kao neka vrsta
skladišta za podatke koji se obrađuju u ostalim
ALU jedinicama),kao i AGU jedinica (operacije
nad adresama).
Registri
Registri centralnog procesora se prema namjeni mogu podijeliti na
1. Registre opšte namjene,i
2. Specijalizovane registre.
Registri opšte namjene
Ovi registri se koriste za različite funkcije, npr. za čuvanje različitih vrsta podataka,adresa i kodova generisanih
pri izvršavanju programa.Korisnički program može da im pristupi,čita i mijenja njihovsadržaj bez ograničenja.
Optimalan broj registara opšte namjene za CISC procesore je u intervalu [8,32], dok je za RISC procesore ≥ 32, i
kreće se do nekoliko stotina.
U zavisnosti od dizajna procesora i odgovarajućeg mašinskog jezika,opšti registri se mogu dodatno podijeliti
prema namjeni,npr.na:
• Akumulatore za aritmetičko–logičke operacije i čuvanje znakovnih podataka.
• Indeks registre koji se koriste za indeksno adresiranje.
• Pokazivače segmenata koji sadrže početnu adresu segmenta na računarima sa segmentnim adresiranjem.
• Pokazivače steka koji pokazuju na početak memorije koja je određena za stek.
Podjela registara opšte namjene nije striktna na svim procesorima.Na nekim od njih je strogo određeno koji opšti
registri mogu da sadrže podatke a koji adrese,dok na drugim programer ili operativni sistem određuje podjelu.
Veličina opštih registara zavisi od arhitekture procesora i u opštem slučaju mora biti dovoljna da prihvati cijelu
riječ koja se obrađuje u procesoru,odnosno da prihvati kompletnu adresu ako se registar koristi za adresiranje.
Specijalizovani registri
Ovi registri se koriste pri izvršavanju operacija,njihovoj kontroli, kao i za prikaz tekućeg stanja procesora i
programa koji se izvršava.
• Većina ovih registara nije direktno dostupna korisničkim programima.
• Neke od njih koriste samo programi operativnog sistema,dok su drugi dostupni samo na nivou mikrokoda.
Neki od specijalnih registara i njihove funkcije su:
• Instrukcioni registar,(IR) koji sadrži posljednju pročitanu instrukciju.
• Registar memorijskih adresa,(RMA) koji sadrži adresu u memoriji izkoje treba prenijeti sadržaj u PRM ili u koju
treba upisati sadržaj iz PRM.
• Prihvatni registar memorije,(PRM). Sadrži riječ koja je posljednja pročitana izmemorije ili koju treba upisati u
memoriju na adresu koja je sadržana u RMA.
• Brojač instrukcija,(PC) koji sadrži adresu sljedeće instrukcije koju treba prenijeti u procesor.
• Registar koji sadrži status programa koji se trenutno izvršava,PSW (eng. Program Status Word). Informacije
koje sadrži ovaj registar a odnose se na program koji se trenutno izvršava uključuju:
– Uslovne kodove (eng. Condition codes,CC) pri izvršavaju aritmetičkih i logičkih operacija.Ovi kodovi mogu da
označavaju npr.
 Da li je rezultat jednak,manji ili veći od nule
 Pojavu prekoračenja pri izvršavanju aritmetičkih operacija
 Da li su vrijednosti koje se porede jednake,ili je prva veća ili manja od druge,itd.
– Postojanje prenosa pri aritmetičkim operacijama.
– Prekoračenje pri aritmetičkim operacijama i vrstu podataka nad kojima je došlo do prekoračenja (cijeli brojevi,
BCD brojevi).
– Prekoračenje i potkoračenje pri izvođenju operacija nad realnim brojevima u ne-IEEE 754 zapisu.
– Indikatore da li je dozvoljen prekid kao i tip prekida koji je dozvoljen.
– Indikator da li je tekući program u supervizorskom ili korisničkom režimu rada.
– Indikator da li je tekuća adresa realna ili je potrebno preračunavati adrese iz programa da bi se dobile realne
adrese.
– Indikator da li je CPU u stanju čekanja kada ne izvršava ni jednu instrukciju.Ovo stanje može da se promijeni
jedino pojavom prekida.
– Pored ovih, PSW uključuje i informacije koje su specifične za svaku pojedinačnu arhitekturu procesora.Tako
npr. PSW može da sadrži i adresu naredne instrukcije (za program koji se trenutno izvršava), itd. PSW može
fizički da se realizuje kao jedan ili kao skup više registara.Korisnički program može da pristupi PSWi provjeri
trenutno stanje programa očitavanjem vrijednosti bitova koji sadrže vrijednosti indikatora.Korisnik ne može da
postavi vrijednosti u PSW; vrijednosti nekih bitova mogu da budu postavljeni isključivo od strane programa koji
rade u supervizorskom režimu rada.
• Kontrolni registar pri izvršavanju operacija u pokretnom zarezu,FPC (eng. Floating PointControl). Ovaj registar
sadrži informacije vezane za izračunavanja u pokretnom zarezu (tačnije IEEE 754 aritmetiku).
• Kontrolne registre koji sadrže specifične informacije za svaku mašinu:tekuće stanje mašine,vektor prekida,
postojanje/nepostojanje FPU (npr. na Pentiumu ili PowerPC procesoru),rad u posebnom režimu izvršavanja
instrukcija (npr.protected/real mod kod Pentium procesora), itd.
Na nekim procesorima postoji specijalizovan registar koji se koristi kao pokazivač steka. Time se postiže
smanjenje veličine instrukcija koje rade sa stekom jer u njima nema potrebe za eksplicitnim navođenjem ovog
registra.Sa druge strane,postojanje takvih registara ograničava fleksibilnostprogramera.
Instrukcioni ciklus
Izvršavanje programa (korisničkih ili sistemskih) se sastoji od uzastopnog čitanja i izvršavanja instrukcija.
Izvršavanje svih faza mašinskih instrukcija čini proces koji se naziva instrukcioni ciklus.Na sljedećoj slici je
prikazan blok dijagram izvršavanja instrukcionog ciklusa.
Preklapanje instrukcija
Jedannačinza poboljšanje performansi procesoraje upotrebanovihtehnologijakoje donose
integrisanakolasasve većimbrojem bržihtranzistora.Drugi načinse sastoji umodifikaciji
organizacije procesora.Najznačajnijaodovihmodifikacijaje preklapanjeinstrukcija.Samtermin
preklapanje (eng.pipelining)označavamogućnostistovremenogizvršavanjarazličitihfazamašinske
instrukcije.
Načini izvršavanjainstrukcija
Šematski prikaznekihtehnikaizvršavanjamašinskihinstrukcijaje datna slici 19. Pretpostavimodase
izvršavanje mašinske instrukcije može podijelitiu6 koraka:
1. Dohvatanje instrukcije(eng.Fetch)
2. Dekodiranje operacionogkodainstrukcije (eng.Decode)
3. Određivanje adrese operanada(eng.Addresscalculation)
4. Dohvatanje operanada(eng.Readoperands)
5. Izvršavanje (eng.Execute)
6. Upis rezultata(eng.Write results)
Svaki korakje na slici označen kaouokvireni kvadratukome je upisannazivkoraka.Radi
pojednostavljenja,obradaprekidanijeprikazananaslici.Takođe,pretpostavkaje dasuvremena
potrebnaza izvršavanje svihkorakajednakai dase svaki odkoraka izvršavaujednomciklusu
časovnika(ovapretpostavkane važi urealnimsituacijama).
Tehnike prikazane naslici odgovarajusljedećimnačinimaizvršavanjamašinskihinstrukcija:
sekvencijalnoizvršavanje
izvršavanje uzpreklapanje korakauinstrukciji(eng.pipelining)
napredne tehnikepreklapanja,npr.superpreklapanje(eng.superpipelining)
superskalarnoizvršavanje
rasparenosuperskalarnoizvršavanje
RAM- ROM
RAMili radna memorijaje smještenavrloblizuprocesora(namatičnoj ploči) paje zbogtogai
najbrža.U njoj se nalaze podaci i instrukcije koje procesorkoristi dabi mogaoupravljati ostalim
dijelovimaračunara.
Upravo “brzinastruje”čini RAMmemorijunajbržom, ali zbogtoganije umogućnosti pamtiti podatke
kad je računar isključen(nije trajna).Osimovog,RAMimajošnedostataka:visokacijena,mali
kapacitet,nemogućnostprenošenja,KapacitetRAMmemorije krećese odnpr.8 MB (PC486) do 1
GB, ali vrloubrzo i više.Školskiračunari imajuuprosjekuRAMod128 MB – 512 MB.
Inače,RAMje skraćenicaod RandomAccess Memoryšto bi u prijevoduznačilomemorijaslučajnog
pristupa.(RAMne zna«ko» ili «šta» će mu doći u goste).Onaje zapravoradni prostoru kojemse
izvršavajuprogrami.URAM se učitavanajprije operativni sistemkoji je neophodanzaispravanrad
računara, a zatimpokrećemoaplikativni softverkoji želimo.
Rezultatslikazaram memorija
ROM memorija
ROM je skraćenicaodReadOnlyMemory štobi u prevoduznačilomemorijasamozačitanje.ROMje
najmanjamemorija,tvornički upisanai njensadržaj se ne može mijenjatiniti izbrisati.Ne zavisi o
napajanjuelektričnomenergijom, analazi se namatičnoj ploči.
Po uključenjuračunaraprvase aktivira,azbog svoje sposobnosti trajnogpamćenja(i dokje računar
isključen)sadrži isključivosistemske podatkeneophodnezarad računara tj.koristi se za
pohranjivanjeupravljačkihprograma

More Related Content

Similar to Savremeni računarski sistem

Struktura hardvera računarskog sistema - Darko Stevanović - Nebojša Lazarević
Struktura hardvera računarskog sistema - Darko Stevanović - Nebojša LazarevićStruktura hardvera računarskog sistema - Darko Stevanović - Nebojša Lazarević
Struktura hardvera računarskog sistema - Darko Stevanović - Nebojša LazarevićNašaŠkola.Net
 
Računarski sistem
Računarski sistemRačunarski sistem
Računarski sistemOlga Klisura
 
Od tranzistora do kompjutera
Od tranzistora do kompjuteraOd tranzistora do kompjutera
Od tranzistora do kompjuteraMilena
 
Primena računara u elektrotehnici ,računarski sistem
Primena računara u elektrotehnici  ,računarski sistemPrimena računara u elektrotehnici  ,računarski sistem
Primena računara u elektrotehnici ,računarski sistemDejan Pavlovic
 
Primena računara u elektrotehnici ,računarski sistem copy
Primena računara u elektrotehnici  ,računarski sistem   copyPrimena računara u elektrotehnici  ,računarski sistem   copy
Primena računara u elektrotehnici ,računarski sistem copyDejan Pavlovic
 
Hardver i softver - Dimitrije Stevanović - Dragan Ilić
Hardver i softver - Dimitrije Stevanović - Dragan IlićHardver i softver - Dimitrije Stevanović - Dragan Ilić
Hardver i softver - Dimitrije Stevanović - Dragan IlićNašaŠkola.Net
 
Struktura hardverskog računarskog sistema.2003
Struktura hardverskog računarskog sistema.2003Struktura hardverskog računarskog sistema.2003
Struktura hardverskog računarskog sistema.2003Ivona98
 
Racunarske mreze umrezavanje racunara
Racunarske mreze   umrezavanje racunaraRacunarske mreze   umrezavanje racunara
Racunarske mreze umrezavanje racunaranikolasse
 
Racunarski sistemi
Racunarski sistemiRacunarski sistemi
Racunarski sistemiAleksaToni98
 
Racunarski software
Racunarski softwareRacunarski software
Racunarski softwareucionica
 
Viseslojne arhitekture i razvojno okruzenje .net
Viseslojne arhitekture i razvojno okruzenje .netViseslojne arhitekture i razvojno okruzenje .net
Viseslojne arhitekture i razvojno okruzenje .netseminarskid
 
Centralna jediniccca.ppt
Centralna jediniccca.pptCentralna jediniccca.ppt
Centralna jediniccca.pptHidoo
 

Similar to Savremeni računarski sistem (20)

Rad
RadRad
Rad
 
Struktura hardvera računarskog sistema - Darko Stevanović - Nebojša Lazarević
Struktura hardvera računarskog sistema - Darko Stevanović - Nebojša LazarevićStruktura hardvera računarskog sistema - Darko Stevanović - Nebojša Lazarević
Struktura hardvera računarskog sistema - Darko Stevanović - Nebojša Lazarević
 
Računarski sistem
Računarski sistemRačunarski sistem
Računarski sistem
 
L7 3
L7 3L7 3
L7 3
 
Komponente hardvera rs
Komponente hardvera rsKomponente hardvera rs
Komponente hardvera rs
 
Komponente hardvera rs
Komponente hardvera rsKomponente hardvera rs
Komponente hardvera rs
 
Od tranzistora do kompjutera
Od tranzistora do kompjuteraOd tranzistora do kompjutera
Od tranzistora do kompjutera
 
Primena računara u elektrotehnici ,računarski sistem
Primena računara u elektrotehnici  ,računarski sistemPrimena računara u elektrotehnici  ,računarski sistem
Primena računara u elektrotehnici ,računarski sistem
 
Primena računara u elektrotehnici ,računarski sistem copy
Primena računara u elektrotehnici  ,računarski sistem   copyPrimena računara u elektrotehnici  ,računarski sistem   copy
Primena računara u elektrotehnici ,računarski sistem copy
 
Softver
SoftverSoftver
Softver
 
Hardver i softver - Dimitrije Stevanović - Dragan Ilić
Hardver i softver - Dimitrije Stevanović - Dragan IlićHardver i softver - Dimitrije Stevanović - Dragan Ilić
Hardver i softver - Dimitrije Stevanović - Dragan Ilić
 
Struktura hardverskog računarskog sistema.2003
Struktura hardverskog računarskog sistema.2003Struktura hardverskog računarskog sistema.2003
Struktura hardverskog računarskog sistema.2003
 
Racunarske mreze umrezavanje racunara
Racunarske mreze   umrezavanje racunaraRacunarske mreze   umrezavanje racunara
Racunarske mreze umrezavanje racunara
 
Racunarski sistemi
Racunarski sistemiRacunarski sistemi
Racunarski sistemi
 
Racunarski software
Racunarski softwareRacunarski software
Racunarski software
 
Racunarske mreze
Racunarske mrezeRacunarske mreze
Racunarske mreze
 
Racunarski sistemi
Racunarski sistemiRacunarski sistemi
Racunarski sistemi
 
Racunarski sistemi
Racunarski sistemiRacunarski sistemi
Racunarski sistemi
 
Viseslojne arhitekture i razvojno okruzenje .net
Viseslojne arhitekture i razvojno okruzenje .netViseslojne arhitekture i razvojno okruzenje .net
Viseslojne arhitekture i razvojno okruzenje .net
 
Centralna jediniccca.ppt
Centralna jediniccca.pptCentralna jediniccca.ppt
Centralna jediniccca.ppt
 

Savremeni računarski sistem

  • 1. Savremeni računarski sistem Računarski sistemse,uosnovi,sastoji odcentralnogprocesora,memorije i različitihulazno/izlaznih uređajakoji sumeđusobnopovezani takodaobezbjeđujuizvršavanjefunkcijaračunara.Najveći broj današnjihračunarskih sistemaje zasnovannafonNojmanovoj arhitekturiračunarskogsistema. Osnovni koncepti ove arhitekturesu: 1. Računarski sistemposjeduje samojednumemorijuukojoj se čuvajui podaci i instrukcije.Između zapisapodatakai instrukcijane postoje razlike,tj.jedinoodnačinainterpretacije zavisi koji sadržaj će biti shvaćenkaopodataka koji kaoinstrukcija. 2. Memorijaračunara je adresibilnapolokacijamakojimase može pristupiti bezobzirakakavimje sadržaj. 3. Izvršavanje instrukcijase izvodi strogosekvencijalno,osimukolikodrugačijenijeeksplicitno naglašeno(npr.izvršavanjeminstrukcije skokase može modifikovati redoslijedizvršavanja instrukcija). Slika 1. Savremeni računarski sistem Savremeni računarski sistemse sastoji odCPU-a,memorijei određenogbrojakontrolerauređajana koje supovezani različiti periferni uređaji.Memorijaje dijeljena –istoj lokaciji umemoriji moguda pristupe i procesori kontroleri različitihuređajaprekozajedničke magistrale.Sinhronizacijapristupa dijeljenojmemoriji se obavljaprekokontroleramemorije.Dabi računarski sistempočeodaradi potrebnoje dase izvrši inicijalni(eng. bootstrap) programkoji morabiti štojednostavniji.On inicijalizuje sve komponente računarskogsistemapočevodregistaraCPU,prekokontrolerauređaja do sadržajamemorije.Inicijalniprogrammorada zna kakoda učita operativni sistemi dapočne njegovoizvršavanje.Operativni sistempočinje izvršavanje prvogprocesai čekadokse ne pojavi neki događaj.Pojavudogađajamoguda signalizirajui hardveri softverprekomehanizmakoji se nazivasistem prekida.Postoji veliki broj različitihtipovadogađajakoji mogudase signalizirajukao prekidi –npr. kraj ulazno/izlazne operacije,dijeljenjenulom,nedozvoljenpristup memoriji,zahtjevza nekimodservisaoperativnogsistema.Zasvaki odovihprekidaje predviđenservisni programkoji preuzimakontrolui obrađuje prekid. Dijelovi računara su:  Centralna procesorska jedinica /CENTRAL PROCESSING UNIT/ (CPU).  Tastatura /KEYBOARD/.  Monitor /MONITOR/.  kučište /CASE/.
  • 2.  Drajveri /HARD DISK DRIVE, CD DRIVE, DVD DRIVE, FLOPPY, OPTICAL, TAPE  Ostali vanjski dijelovi često zvani periferije / PERIPHERAL COMPONENTS OR DEVICES / kao što su miš,štampač,modem,skener,digitalna kamera,... Monitor/SCREEN MONITOR/ Tastatura /KEYBOARD/ Miš /MOUSE/ Kućište ili sistemskajedinica/CASE,SYSTEMUNIT/ Štampač /PRINTER/ Microfon/MICROPHONE/ Zvučnik/SPEAKER/ Kroz čitavusvojuistoriju,ljudi subili prinuđenidavrše različitaizračunavanjai obraduinformacija dobijenihizsvijetakoji ihokružje.Obimi složnostovihizračnavanjaneprekidnosuse povećavali,a manuelnoizračunavanje,ukojemje čovjekosnovnosredstvo,imadvavelikaograničenja: čovjekovabrzinaje veomaograničena čovjekpokazuje sklonostkapravljenjugrešaka U procesuizračunavanjaljudi koriste raznapomoćnasredstva.Tasredstvasuse razvijalai usavršavaladabi sredinomdvadesetogvijekadoveladopojave računara. Računar je uređaj koji samostalnoobavlja obradupodatakanaosnovuunesenogprograma. Računar je uređaj sastavlјenodrazličitihelektronskihuređaja.Osnovnakarakteristikaračunaraje da imamogućnostizvršavanjarazličitihprogramakoji omogućavajudase onpo potrebi koristi za poslove različitenamјene.Osimizvršavanjaprogramakoji gavode,računar imasposobnosttrajnog pamćenjavelikekoličine organizovanihpodataka(brojeva,teksta,slika,zvučnihi videozapisaitd), tako da se,osimza direktnodobijanje rezultata,njegovi kapaciteti koristezačuvanje i obradu podataka(pisama,arhiva,slika,tabelaitd).Kapaciteti računarase istovremenokoristei začuvanje programa na hard diskuili nekomodeksternihdiskova,odkojihse svaki može poželјiaktivirati.Zbog toga je računar u svakomtrenutkuspremandana vašu komandupočne daobavlјaspecifičanposao. Računar je uređaj opšte namjene koji je postaoneophodnaalatkavelikogbrojakakopojedinacatako i organizacija.Zbogvelikogbrojaprogramai aplikacijakoje sadrže računari novijegeneracije,posao se obavljaefikasnijei urednijenegopomoćupapirai olovke.Pri tome se svi dokumenti i drugi podaci mogupouzdanočuvati u elektronskomoblikunaračunaruili na različitimvrstamadiskova,takodasu uvekponovodostupni zapregled,izmjene i ponovnuupotrebu. Primjenaračunara,a samimtimračunarstva i informatike je veomarasprostranjenausvimoblastima savremenogživota.
  • 3. Računarstvoje nauka kojase bavi proučavanjemteoretskihosnovainformacije i računanja,te njihovimimplementacijamai primjenamauračunarskimsistemima. Nabrojaćemoneke oblastiprimjeneračunara: • Unošenje različitihtekstova(pisama,knjiga,blogovai slično) • Tehničkoprojektovanje,grafičkodizajniranje i crtanje • Izradatabelai grafikona,modeliranje i statističke analize podtaka • Obradavelikihkoličinapodatakabilokoje vrste • Kontrolaradarazličitihuređajai mašina Postoje nastotine hilјadaprogramaspecijalizovanihzarazne aktivnosti:vođenje knjigovodstva, učenje,enciklopedijenaračunaru,telefonski imenici i adresari,planiranjekućnogbudžeta,pai igrice za zabavui opuštanje. Jednaod prednosti računaraje povezivanje velikogbrojapojedinačnihračunaraujedinstveni sistem- računarskumrežu.Umreženi računari uopšte ne morajuda budufizički blizu,većse svaka jedinicamože nalazitiudrugoj prostoriji,pačaki različitomgraduili kontinentu,dokse ovaveza održavaprekotelefonskihlinijaili naneki drugi način(podzemni kablovi,satelitske veze).Sadrugim računarimau mreži razmjenjujuse poruke,programi,dokumentai drugi podaci,pakorisnikimana raspolaganjusve informacije kojepostojenasistemu.Takobanke,turističke agencijei druge insitucije mogudausvojimposlovnicamanaterenuodržavajuažurnostanje,aposlovni lјudi i korisnici izkuće imajuprekoglobalnesvjetskemreže kojase zove Internetpristupsvimakoji preko nje prezentujuinformacije osebi širomsvijeta.Pomoćuračunaraumreži može se ostvarivati potpunakontrolaprocesaproizvodnjesajednogmesta.Timovi stručnjakaizraznihoblasti mogu raditi na raznimprojektima,ane morajubiti na jednommjestu.Računari umreži mogubiti angažovani ukontroli saobraćajaili obezbjeđivanjuobjekata,amogubiti i sastavni diosistema obrazovanja(učenici i nastavnici ne morajudolaziti uspecijalizovanuustanovu - školudabi se proces obrazovanjaostvarivao) Računar je nastao zatošto je čovjektežiozaspravomkoja bi ljudski mozakoslobodilamnogih problemai ograničenja(sporost,zaboravnost,sklonostgreškamaitd.) 1. Računar ABACUS(500 g.pne.) - pravougli okvirsanekolikoparalelnihžica,asvakaima sedamkuglica.Moguće je raditi četiri osnovne matematičke operacije. 2. Paskalovaaritmetičkamašina( 1643.god. ) - sličnadanašnjimkalkulatorima samehaničkim komponentama.Moglaje samosabirati i oduzimati. 3. Lajbnicovamašinaza računanje ( 1694. god.) - pomoćunje se mogloizvršiti sve četiri osnovne matematičkeoperacije kaoi nalaziti kvadratni korijen. 4. CharlesBabbage je 1820. godine konstruisaodiferencnumašinu(engl.Differenceengine).Takva mašinaje trebaloda omogući mašinskoizračunavanje logaritamskihtablica.Sve sprave togdoba
  • 4. imale suveliki nedostatak,mogle sudaizvode operacijesamozaonoza šta subile napravljene.Taj nedostatakuočioje ČarlsBabejdž,paje 1833. godine konstruisaouniverzalnumašinuzaračunanje kojaje moglada rješavarazličite funkcije.Babejdžje podijeliouniverzalnumašinunaviše dijelova, gdje je svaki dio imaosvojufunkciju: Diou koji se unose podaci Diokoji računa Diokoji upravlјamašinom Diokoji pamti podatke Diokoji prikazuje rezultate. Analitičkamašina(engl.Analytical engine) se smatraprethodnikomsavremenihračunara.Mašinaje trebalada bude sastavlјenaodmehaničkihdijelova,polugai zupčanika.Međutim, zbogfinansijskih razlogai tehničkihmogućnostitogdobanikadanije bilazavršena.Babejdžovaidejaje osnova današnjihračunara 5. Holeritovamašinazabušene kartice (1890.god.) – prekočitačakartica podaci se lakoi brzo sortiraju.Korištenaje pri popisustanovništvaSAD-a1890. god.,a preraslaje u IBM (InternationalBusinessMashines). 6. Howard Aikenje 1943.godine dovršioMARKI,prvi elektronski računar(zasnovanna elektromehaničkimrelejima).“Div”odračunara,dugačak 17m, visok2,5m, težak5 tona,a imao je okomiliondijelova. Zajednosabiranje trebalamuje sekunda,zajednodijelјenje15sekundi. 7. Ekert i Mohlijevračunar(1946.god.) – to je prvi elektronski računarENIAC.Imaoje 18000 elektronskihcijevi,bioje težakpreko30 tona. CPU CPU se odnosi na procesori to je CENTRALPROCESSINGUNIT centralnaprocesorskajedinicaiil procesor.Centralnaprocesorskajedinica/CENTRALPROCESSINGUNIT/je hardver/HARDWARE/. Procesorse nalazi na matičnoj ploči /MOTHER BOARD/unutarračunara. Zbog velikogbroja računarski komponenti kojese nalaze unjemupovečanoje grijanje procesorai zatose na procesoru nalazi posebanhladnjak/COOLER/. Ljudski mozak/BRAIN/se koristi kaoasocijacijazaprocesor. Glavni čipu računaru se zove CPU.Svi poslovi koji se rade uračunaru izvodi procesordirektnoili indirektno.Pri ovomprocesorkoristidruge dijelove računara.
  • 5. Centralnaprocesorskajedinica/CENTRALPROCESSINGUNIT/se sastoji oddva dijela: Aritmetičke jednicie/ALU- ARITHMETIC LOGIC UNIT/ izvodi aritmetičkei logičke operacijeu računaru. Upravljačkajedinica/CU- CONTRLOLUNIT/ izvodi upravljačkefunkcije uračunaru. CISC i RISC arhitekture mikroprocesora  Paralelno sa evolucijom računarskog hardvera išao je i razvoj softvera. Sve šira upotreba računara i napredak tehnologije doveli su do relativnog pada cijene hardvera i relativnog porasta cijene softvera.  Razlog tome je bio nedostatak kvalitetnih programera i odgovarajućih metoda razvoja softvera. Ovo je uzrokovalo pojavu tzv. softverskih kriza.  Odgovor računarske industrije je bio:definisanje novih metodologija razvoja softvera, razvoj moćnijih i složenijih programskih jezika i generatora softvera, primjena novih paradigmi u programiranju (prvo strukturno,zatim objektno-orijentisano programiranje).  Sa druge strane,ova rješenja su dovodila do tzv. semantičke praznine u mogućnostima postojeće arhitekture računara i programskih jezika i alata.  Izvršavanje programa je postajalo neefikasno,povećana je veličina mašinskog programa i složenost prevodilaca (kompajlera).  Da bi se premostila ova praznina modifikovana je arhitektura novih modela računara.Svaki novi model je donosio povećanje skupa instrukcija,nove načine adresiranja i hardversku implementaciju pojedinih naredbi viših programskih jezika.  Ove modifikacije su omogućile: 1. jednostavniju konstrukciju kompajlera i podršku za sve složenije programske jezike 2. povećanje efikasnosti izvršavanja  Istovremeno sa konstrukcijom novih modela računara rađene su i studije izvršavanja mašinskih instrukcija generisanih prevođenjem tada postojećih programskih jezika.  Rezultati ovih studija su doveli do potpuno drugačijeg pristupa pri konstrukciji novih modela računara, tzv. RISC (eng. Reduced Instruction SetComputer). Neke osobine RISC procesora Karakteristike ponašanja dotadašnjih CISC (eng. Complex Instruction SetComputer) procesora i programa koji su radili na njima su bile: • Naredbe koje su se najčešće javljale u programima su bile naredbe dodjele,uslovna naredba i poziv potprograma.Takođe,pronađeno je da su poziv i povratak iz procedure operacije koje zahtijevaju najviše vremena u tipičnim programima pisanim na višim programskim jezicima. • Referisanje na operande se obavlja kao referisanje na lokalne skalarne vrijednosti.Na osnovu toga je zaključeno da je nužna optimizacija procesa zapisivanja i pristupa lokalnim promjenljivim. • Pri pozivu procedura oko 98% procedura je prenosilo manje od 6 argumenata,a čak kod 92% procedura su ti argumenti bili lokalni.Ovi rezultati govore da broj riječi potreban pri pozivu procedure nije veliki,kao i da treba obratiti pažnju na pristup argumentima,čime su potvrđeni raniji rezultati. Na osnovu rezultata ovih studija zaključeno je da konceptpravljenja arhitektura bliskih višim programskim jezicima nije optimalan.Slijedila su 3 načina za poboljšanje performansi:
  • 6. 1. Povećanje broja registara. Uočeno je da u analiziranim programima postoji jako veliki procenatnaredbi dodjeljivanja i pomjeranja podataka.Ova karakterstika zajedno sa skalarnim tipom podataka sugerisala je da se performanse mogu poboljšati smanjenjem referisanja memorije i,umjesto toga,povećanim referisanjem registara. Kako je najveći broj takvih referenci lokalan,jedan od praktičnih prilaza je bio povećanje broja registara. 2. Poboljšanje dizajna preklapanja instrukcija. Obzirom na visoki procenatuslovnih skokova i poziva procedura uobičajeni način implementacije preklapanja nije efikasan.Posljedica uslovnih skokova i poziva procedura je postojanje velikog broja instrukcija koje su dohvaćene ali se nikada ne izvršavaju. 3. Smanjen broj osnovnih instrukcija. Sa smanjenim brojem osnovnih instrukcija jednostavnije je konstruisati mikroprocesor (koji je po definiciji na jednom jedinom čipu),manje vremena se troši na prepoznavanje instrukcija i instrukcije su brže jer se izvršavaju u jednom ciklusu. Najpoznatiji proizvođači RISC čipova su firme Motorola (88000,..., PowerPC), Silicon Grpahics (MIPS R1000, R3000,R4000,..., R12000),Digital (Alpha), HewlettPackard (PA-RISC 8200,...,8600), Sun Microsystems (Micro SPARC i ULTRA SPARC) i IBM (RS/6000 i PowerPC). Osobine RISC procesora koje su zajedničke bez obzira na proizvođača su: 1. Izvršavanje (bar) jedne mašinske instrukcije za jedan mašinski ciklus.Ovim se smanjuje ili eliminiše potreba za mikrokodom i kompletna mašinska instrukcija može da bude hardverski kodirana.Takva instrukcija se izvršava brže od odgovarajućih instrukcija CISC procesora jer nema potrebe za vršenjem mikroprogramske kontrole. 2. Najveći broj mašinskih operacija je tipa registar-u-registar što rezultuje uprošćenom upravljačkom jedinicom. Takođe, ovakva arhitektura omogućuje optimizaciju upotrebe registara tako da argumentkome se često pristupa ostaje u brzoj memoriji od koje su napravljeni registri. 3. Upotreba relativno malog broja načina adresiranja.Najveći broj instrukcija RISC procesora koristi registarsko adresiranje.Pored njega mogu da se jave i drugi načini adresiranja kao npr.adresiranje sa baznim registrom i udaljenjem,i/ili relativno adresiranje u odnosu na programski brojač.Ostali kompleksniji načini adresiranja se realizuju softverski. Ova osobina takođe ima uticaj na jednostavnostkonstrukcije upravljačke jedinice čime se povećava brzina rada. 4. Upotreba jednostavnih formata instrukcija.U opštem slučaju se koristi samo nekoliko različitih formata instrukcija.Instrukcije su fiksne dužine i obično su poravnate na granicu riječi,što znači da ne prelaze granice stranica.Polja u instrukcijama (npr.kod operacije) su takođe fiksne dužine što omogućuje istovremeno dekodiranje operacionog koda i pristup operandu instrukcije.Takođe,mali broj formata pojednostavljuje upravljačku jedinicu. Prednosti RISC procesora u odnosu na procesore izvedene u CISC tehnologiji se mogu podijeliti u dve grupe: 1. Jednostavnija konstrukcija. Zbog manjeg broja instrukcija i jednostavnije strukture vrijeme potrebno za dizajniranje i uvođenje takvog procesora u komercijalnu upotrebu je znatno kraće. 2. Bolje performanse. RISC čipovi posjeduju znatno bolje performanse od CISC čipova koji rade na istim brzinama.Za RISC mikroprocesore je jednostavnije definisati prevodioce koji formiraju mnogo optimalniji kod nego za CISC mikroprocesore.Veliki broj instrukcija koje generišu prevodioci je relativno jednostavan. Upravljačka jedinica može da se napravi da za ovakve instrukcije koristi vrlo malo mikrokodiranja,tako da se one izvršavaju brže nego na odgovarajućim CISC procesorima. RISC procesori postižu bolje performanse i zbog intenzivnog korišćenja tehnike preklapanja instrukcija (o tome će biti riječi kasnije) Organizacija centralnog procesora • Kod prvih generacija procesora glavne komponente CPU-a su bile aritmetičko–logička jedinica (eng.Arithmetic-Logic Unit,ALU) i upravljačka jedinica (eng. Control Unit,CU). ALU je obavljala obradu podataka,a CU je kontrolisala obavljanje operacija u ALU i upravljala prenosom podataka i instrukcija u i iz CPU- a. • Ove i druge funkcije koje posjeduju savremeni mikroprocesori se realizuju preko više funkcionalnih jedinica.U nekim jedinicama su objedinjeni kontrola i izvršavanje.
  • 7. • Bez obzira na broj funkcionalnih jedinica procesora,proces izvršavanja instrukcija uključuje: – dohvatanje instrukcije i njenu interpretaciju – obezbjeđivanje argumenata instrukcije – čuvanje vrijednosti dobijenih pri izvršavanju – određivanje naredne instrukcije koja se izvršava Da bi se ove operacije uspješno obavile,neophodna je memorija za čuvanje npr. argumenata instrukcije, privremenih rezultata izračunavanja, itd. Ova memorija se realizuje u obliku registara koji predstavljaju internu memoriju CPU-a. Slika 16. Uprošćena struktura centralnog procesora Globalne funkcije funkcionalnih jedinica mikroprocesora su: BCEU Branch Control ElementUnit.Ova jedinica se koristi pri obradi zahtjeva za podacima i instrukcijama izkeš memorije,prevođenje virtualnih u apsolutne adrese,pri implementaciji preklapanja instrukcija,itd.Pored toga ova jedinica sadrži i mikrokod. IU Instruction Unit se koristi za dekodiranje instrukcija i određivanje njihovih komponenti. AGU Address Generation Unit se koristi za generisanje adresa koje treba sačuvati ili sa kojih treba napuniti vrijednosti. LSU Load/Store Unit se koristi za prijem i čuvanje podataka pri njihovom čitanju/upisu u L1 keš za podatke. Takođe obezbjeđuje poravnanje,konverziju između zapisa brojeva različitih dužina, kao i (na nekim mikroprocesorima) normalizaciju brojeva u pokretnom zarezu. FX ALU FiXed point ALU vrši operacije sa brojevima u fiksnom zarezu (cjelobojnim i BCD) kao i logičke operacije. FP ALU Floating PointALU vrši operacije sa brojevima u pokretnom zarezu. Kod nekih mikroprocesora se ova jedinica koristi za izvršavanje dodatnih skupova instrukcija (npr MMX), dok je kod drugih mikroprocesora jedinica koja izvršava ove dodatne skupove instrukcija (npr.SSE ili AltiVec) po strukturi slična FP ALU i vrlo blisko povezana sa njom. DC Data Cache. L1 Keš za podatke. IC Instruction Cache.L1 Keš za instrukcije. L2I Cache Level 2 Interface.Veza ka kešu na nivou 2. L2C Level 2 Cache.Keš na nivou 2. Formalno gledano,on se nalazi van CPU-a i sa njim je povezan posebnom magistralom. Jedinice su međusobno povezane internim vezama koje se nazivaju interne magistrale procesora.Većina jedinica posjeduje svoje interne bafere.Registri u procesoru nisu grupisani na jednom mjestu već su distribuirani prema svojoj namjeni.
  • 8. Aritmetičko-logička jedinica ALU je dio procesora u kome se izvode aritmetičke i logičke operacije.Operacije se izvode u elektronskim komponentama koje su izgrađene u skladu sa pravilima digitalne logike. Podaci se prenose u ALU preko registara; rezultati operacija,koji mogu da uključe i postavljanje različitih zastavica (flagova) i indikatora,se takođe smještaju u registre. ALU se u savremenim procesorima ne implementira kao jedinstvena jedinica već su funkcije ALU dislocirane u različite specijalizovane procesorske jedinice.Tako se funkcije ALU (vidi gornju sliku) obavljaju u FX ALU, FP ALU i LSU, mada se integralnim dijelom ALU mogu smatrati i DC jedinica (kao neka vrsta skladišta za podatke koji se obrađuju u ostalim ALU jedinicama),kao i AGU jedinica (operacije nad adresama). Registri Registri centralnog procesora se prema namjeni mogu podijeliti na 1. Registre opšte namjene,i 2. Specijalizovane registre. Registri opšte namjene Ovi registri se koriste za različite funkcije, npr. za čuvanje različitih vrsta podataka,adresa i kodova generisanih pri izvršavanju programa.Korisnički program može da im pristupi,čita i mijenja njihovsadržaj bez ograničenja. Optimalan broj registara opšte namjene za CISC procesore je u intervalu [8,32], dok je za RISC procesore ≥ 32, i kreće se do nekoliko stotina. U zavisnosti od dizajna procesora i odgovarajućeg mašinskog jezika,opšti registri se mogu dodatno podijeliti prema namjeni,npr.na: • Akumulatore za aritmetičko–logičke operacije i čuvanje znakovnih podataka. • Indeks registre koji se koriste za indeksno adresiranje. • Pokazivače segmenata koji sadrže početnu adresu segmenta na računarima sa segmentnim adresiranjem.
  • 9. • Pokazivače steka koji pokazuju na početak memorije koja je određena za stek. Podjela registara opšte namjene nije striktna na svim procesorima.Na nekim od njih je strogo određeno koji opšti registri mogu da sadrže podatke a koji adrese,dok na drugim programer ili operativni sistem određuje podjelu. Veličina opštih registara zavisi od arhitekture procesora i u opštem slučaju mora biti dovoljna da prihvati cijelu riječ koja se obrađuje u procesoru,odnosno da prihvati kompletnu adresu ako se registar koristi za adresiranje. Specijalizovani registri Ovi registri se koriste pri izvršavanju operacija,njihovoj kontroli, kao i za prikaz tekućeg stanja procesora i programa koji se izvršava. • Većina ovih registara nije direktno dostupna korisničkim programima. • Neke od njih koriste samo programi operativnog sistema,dok su drugi dostupni samo na nivou mikrokoda. Neki od specijalnih registara i njihove funkcije su: • Instrukcioni registar,(IR) koji sadrži posljednju pročitanu instrukciju. • Registar memorijskih adresa,(RMA) koji sadrži adresu u memoriji izkoje treba prenijeti sadržaj u PRM ili u koju treba upisati sadržaj iz PRM. • Prihvatni registar memorije,(PRM). Sadrži riječ koja je posljednja pročitana izmemorije ili koju treba upisati u memoriju na adresu koja je sadržana u RMA. • Brojač instrukcija,(PC) koji sadrži adresu sljedeće instrukcije koju treba prenijeti u procesor. • Registar koji sadrži status programa koji se trenutno izvršava,PSW (eng. Program Status Word). Informacije koje sadrži ovaj registar a odnose se na program koji se trenutno izvršava uključuju: – Uslovne kodove (eng. Condition codes,CC) pri izvršavaju aritmetičkih i logičkih operacija.Ovi kodovi mogu da označavaju npr.  Da li je rezultat jednak,manji ili veći od nule  Pojavu prekoračenja pri izvršavanju aritmetičkih operacija  Da li su vrijednosti koje se porede jednake,ili je prva veća ili manja od druge,itd. – Postojanje prenosa pri aritmetičkim operacijama. – Prekoračenje pri aritmetičkim operacijama i vrstu podataka nad kojima je došlo do prekoračenja (cijeli brojevi, BCD brojevi). – Prekoračenje i potkoračenje pri izvođenju operacija nad realnim brojevima u ne-IEEE 754 zapisu. – Indikatore da li je dozvoljen prekid kao i tip prekida koji je dozvoljen. – Indikator da li je tekući program u supervizorskom ili korisničkom režimu rada. – Indikator da li je tekuća adresa realna ili je potrebno preračunavati adrese iz programa da bi se dobile realne adrese. – Indikator da li je CPU u stanju čekanja kada ne izvršava ni jednu instrukciju.Ovo stanje može da se promijeni jedino pojavom prekida. – Pored ovih, PSW uključuje i informacije koje su specifične za svaku pojedinačnu arhitekturu procesora.Tako npr. PSW može da sadrži i adresu naredne instrukcije (za program koji se trenutno izvršava), itd. PSW može fizički da se realizuje kao jedan ili kao skup više registara.Korisnički program može da pristupi PSWi provjeri trenutno stanje programa očitavanjem vrijednosti bitova koji sadrže vrijednosti indikatora.Korisnik ne može da postavi vrijednosti u PSW; vrijednosti nekih bitova mogu da budu postavljeni isključivo od strane programa koji rade u supervizorskom režimu rada. • Kontrolni registar pri izvršavanju operacija u pokretnom zarezu,FPC (eng. Floating PointControl). Ovaj registar sadrži informacije vezane za izračunavanja u pokretnom zarezu (tačnije IEEE 754 aritmetiku). • Kontrolne registre koji sadrže specifične informacije za svaku mašinu:tekuće stanje mašine,vektor prekida, postojanje/nepostojanje FPU (npr. na Pentiumu ili PowerPC procesoru),rad u posebnom režimu izvršavanja instrukcija (npr.protected/real mod kod Pentium procesora), itd. Na nekim procesorima postoji specijalizovan registar koji se koristi kao pokazivač steka. Time se postiže smanjenje veličine instrukcija koje rade sa stekom jer u njima nema potrebe za eksplicitnim navođenjem ovog registra.Sa druge strane,postojanje takvih registara ograničava fleksibilnostprogramera.
  • 10. Instrukcioni ciklus Izvršavanje programa (korisničkih ili sistemskih) se sastoji od uzastopnog čitanja i izvršavanja instrukcija. Izvršavanje svih faza mašinskih instrukcija čini proces koji se naziva instrukcioni ciklus.Na sljedećoj slici je prikazan blok dijagram izvršavanja instrukcionog ciklusa. Preklapanje instrukcija Jedannačinza poboljšanje performansi procesoraje upotrebanovihtehnologijakoje donose integrisanakolasasve većimbrojem bržihtranzistora.Drugi načinse sastoji umodifikaciji organizacije procesora.Najznačajnijaodovihmodifikacijaje preklapanjeinstrukcija.Samtermin preklapanje (eng.pipelining)označavamogućnostistovremenogizvršavanjarazličitihfazamašinske instrukcije. Načini izvršavanjainstrukcija
  • 11. Šematski prikaznekihtehnikaizvršavanjamašinskihinstrukcijaje datna slici 19. Pretpostavimodase izvršavanje mašinske instrukcije može podijelitiu6 koraka: 1. Dohvatanje instrukcije(eng.Fetch) 2. Dekodiranje operacionogkodainstrukcije (eng.Decode) 3. Određivanje adrese operanada(eng.Addresscalculation) 4. Dohvatanje operanada(eng.Readoperands) 5. Izvršavanje (eng.Execute) 6. Upis rezultata(eng.Write results) Svaki korakje na slici označen kaouokvireni kvadratukome je upisannazivkoraka.Radi pojednostavljenja,obradaprekidanijeprikazananaslici.Takođe,pretpostavkaje dasuvremena potrebnaza izvršavanje svihkorakajednakai dase svaki odkoraka izvršavaujednomciklusu časovnika(ovapretpostavkane važi urealnimsituacijama). Tehnike prikazane naslici odgovarajusljedećimnačinimaizvršavanjamašinskihinstrukcija: sekvencijalnoizvršavanje izvršavanje uzpreklapanje korakauinstrukciji(eng.pipelining) napredne tehnikepreklapanja,npr.superpreklapanje(eng.superpipelining) superskalarnoizvršavanje rasparenosuperskalarnoizvršavanje RAM- ROM RAMili radna memorijaje smještenavrloblizuprocesora(namatičnoj ploči) paje zbogtogai najbrža.U njoj se nalaze podaci i instrukcije koje procesorkoristi dabi mogaoupravljati ostalim dijelovimaračunara. Upravo “brzinastruje”čini RAMmemorijunajbržom, ali zbogtoganije umogućnosti pamtiti podatke kad je računar isključen(nije trajna).Osimovog,RAMimajošnedostataka:visokacijena,mali kapacitet,nemogućnostprenošenja,KapacitetRAMmemorije krećese odnpr.8 MB (PC486) do 1 GB, ali vrloubrzo i više.Školskiračunari imajuuprosjekuRAMod128 MB – 512 MB.
  • 12. Inače,RAMje skraćenicaod RandomAccess Memoryšto bi u prijevoduznačilomemorijaslučajnog pristupa.(RAMne zna«ko» ili «šta» će mu doći u goste).Onaje zapravoradni prostoru kojemse izvršavajuprogrami.URAM se učitavanajprije operativni sistemkoji je neophodanzaispravanrad računara, a zatimpokrećemoaplikativni softverkoji želimo. Rezultatslikazaram memorija ROM memorija ROM je skraćenicaodReadOnlyMemory štobi u prevoduznačilomemorijasamozačitanje.ROMje najmanjamemorija,tvornički upisanai njensadržaj se ne može mijenjatiniti izbrisati.Ne zavisi o napajanjuelektričnomenergijom, analazi se namatičnoj ploči. Po uključenjuračunaraprvase aktivira,azbog svoje sposobnosti trajnogpamćenja(i dokje računar isključen)sadrži isključivosistemske podatkeneophodnezarad računara tj.koristi se za pohranjivanjeupravljačkihprograma