ARHITEKTURA RAČUNARA

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "ARHITEKTURA RAČUNARA"

Transcript

1 ARHITEKTURA RAČUNARA

2 Ciljevi predmeta 1. Jasno i potpuno upoznavanje sa prirodom i karakteristikama današnjih računarskih sistema. Ovo su veoma izazovni zadaci zbog: Mnogo je naprava koje se nazivaju računarima: od single-chip mikroprocesora od svega nekoliko maraka do superračunara od nekoliko desetina miliona $ (Tianhe miliona $).Razlikuju se i po veličini, osobinama, primjeni. Neprekidan i brz tempo promjena karakteriše kompjutersku tehnologiju. Ove promjene se odnose na sve njene aspekte: od tehnologije integralnih kola koji se koriste za izradu komponenti do porasta korištenja paralelnih organizacijskih koncepata kombinovanjem tih komponenti. Bez obzira na raznolikost i razvoj, ostali su nepromijenjeni osnovni koncepti. Primjena koncepata zavisi od trenutnog stanja tehnologije i odnosa cijena i performansi. Pri projektovanju računarskog sistema važno je postići visoke performanse, ali zahtjevi nikad nisu bili veći i složeniji kao danas. Sva osnovna svojstva računarskih sistema brzo se razvijaju. Uključuju: brzinu procesora, brzinu memorije, kapacitet memorije, brzinu i propusnost podataka među komponentama. Međutim, povećanja brzina nisu ista. To stvara poteškoće projektovanja balansiranog sistema koji maksimizira učinke i iskoristivost svih elemenata. Zato projektovanje računara sve više zahtijeva promjenu strukture ili funkcija u jednom području kako bi se kompenzovala neusklađenost u drugom. Za kompjuterski sistem važi opća definicija sistema: SKUP MEĐUSOBNO POVEZANIH ELEMENATA KOJI DJELUJU KA OSTVARENJU FUNKCIJE CILJA. Karakterišu ga: Struktura: način na koji su komponente međusobno povezane Funkcija: djelovanje pojedinih komponenti. Organizacija računara je hijerarhijska: svaka glavna komponenta se razlaže na podkomponente, a onda podkomponente se opisuju svojom vlastitom strukturom i funkcijom. To znači da se hijerarhijska organizacija računara opisuje odozgo prema dole. Računarski sistem: Osnovne komponente računarskog sistema su: procesor, memorija, ulazno-izlazni uređaji. Procesor: Procesorske osnovne komponente su: kontrolna jedinica, registri, aritmetičko-logička i izvršna jedinica; Kontrolna jedinica: obezbjeđuje kontrolne signale za rad i koordinaciju svih ostalih procesorskih elemenata. 1

3 Uvod Arhitektura i organizacija Računarska arhitektura se odnosi na sistemske osobine koje su vidljive programeru, odnosno osobine koje imaju direktan uticaj na logičko izvršavanje programa. To su: instrukcijski set, broj bitova za predstavljanje različitih tipova podataka (brojevi, karakteri i sl.), U/I mehanizmi, i tehnike adresiranja memorije. Računarska organizacija se odnosi na operativne jedinice i njihovo povezivanje kojima se ostvaruju arhitekturne specifikacije. To su: kontrolni signali, različiti interfejsi između računara i periferala, memorijske tehnologije. Npr.: pitanje arhitekture je da li će računar imati instrukciju za množenje, a organizacijsko pitanje je da li će ta instrukcija biti implementirana pomoću specijalne jedinice za množenje ili mehanizmom višekratnog korištenja jedinice za sabiranje. U tom slučaju, izbor organizacije može se zasnivati na očekivanoj frekvenciji korištenja instrukcije množenja, relativnim brzinama oba pristupa, te cijeni i fizičkoj veličini jedinice za množenje. Razlika između arhitekture i organizacije je veoma važna. Proizvođači nude familije računarskih modela sa istom arhitekturom ali različitom organizacijom. Posljedica 1.: Različiti modeli unutar familije razlikuju u cijeni i karakteristikama. Posljedica 2.: Arhitektura može trajati više godina, a obuhvaća različite modele, ali njihova organizacija mijenja se promjenom tehnologije. Primjer obje posljedice: arhitektura IBM System/370. Uvedena godine, uključivala brojne modele. Kupci sa skromnim zahtjevima mogli kupiti jeftiniji, sporiji model. Ako bi zahtjevi postajali veći skuplji i brži model. Nije bilo potrebe mijenjati softver jer je bio razvijan za cijelu familiju. Tokom godina, razvojem tehnologije IBM je uveo nove modele prateći trendove. Novi modeli zadržali su istu arhitekturu. Na taj način, kupci su mogli zaštiti prethodna ulaganja u softver. Zanimljivost: arhitektura System/370, sa nekoliko poboljšanja, ostala je i do danas kao IBM-ova mainframe proizvodna linija. Struktura i funkcija Računar je složen sistem. Sastoji se od miliona osnovnih elektronskih komponenti. Pa kad ih je toliko, kako ih jasno opisati??? Ključ rješenja:prepoznati hijerarhijsku prirodu složenih sistema. Hijerarhijski sistem je skup međusobno povezanih podsistema. Hijerarhijska priroda je osnova za projektovanje i opis sistema. Projektant samo treba da se bavi određenim nivoom sistema. Na svakom nivou sistem se sastoji od skupa komponenti i njihovih veza. Ponašanje svakog nivoa zavisi samo od pojednostavljenog prikaza sistema na nižem nivou. Na svakom nivou projektant se brine o: Strukturi: na koji način su komponente međusobno povezane, Funkciji: djelovanje svake komponente kao dijela strukture. 2

4 Funkcija U osnovi su struktura i funkcija računara jednostavne. Osnovne funkcije računara: obrada podataka, pohranjivanje podataka, kretanja podataka i kontrola. Računar mora biti u stanju da obrađuje podatke. Podaci mogu imati različitu formu, ali su i zahtjevi za obradom raznoliki. Međutim, samo je nekoliko osnovnih metoda obrade. Osnovna funkcija računara je i pohrana podataka, čak i u slučaju obrade u letu. Šta je obrada u letu? Podaci dolaze, obrađuju se i odmah prosljeđuju izvan računara. Računar mora privremeno pohraniti podatake. Zato mora postojati funkcija kratkotrajne pohrane. Također, računar mora pohraniti podatke na duži period. Datoteke se pohranjuju u računaru i naknadno se uređuju. Računar mora obezbijediti kretanje podataka između sebe i vanjskog svijeta. Radna okolina računara: uređaji koji služe ili kao izvor ili odredište podataka. Ulazno-izlazni proces: računar prima ili prosljeđuje podatke uređaju koji je direktno povezan na njega. Taj se uređaj označava kao periferal. Proces podatkovne komunikacije: podaci se prenose na veće udaljenosti, sa ili na udaljeni uređaj. Dakle, na općem nivo samo su 4 osnovne operacije računara. To su: 1. Računar je uređaj za prenos podataka sa jednog periferala (komunikacijske linije) ka drugom. 2. Računar funkcioniše i kao uređaj za pohranjivanje podataka. Podaci se prenose iz vanjskog svijeta u računarsko skladište (učitavanje) i obrnuto (pisanje). 3. Računar kao uređaj za obradu podataka na relaciji: skladište skladište / skladište okolina; ili obrnuto. Struktura 1. Najjednostavniji prikaz računara Računar je u interakciji sa svojom okolinom. Uopće, sve veze sa okolinom mogu se podijeliti na: periferne uređaje i komunikacijske linije. Međutim, za nas je važnija unutrašnja struktura računara. 3

5 Četiri su osnovne komponente strukture: 1. Centralna procesna jedinica (CPU): kontroliše rad računara i izvodi funkcije obrade podataka 2. Glavna memorija: pohranjuje podatke 3. U/I: prebacivanje podataka između računara i okoline 4. Sistemsko povezivanje: mehanizam povezivanja elemenata računara Glavne strukturne komponente CPU-a su: 1. Kontrolna jedinica: kontroliše rad CPU-a 2. Aritmetičko-logička jedinica (ALU): vrši obradu podataka 3. Registri: pohrana unutar CPU-a 4. CPU-povezanost: mehanizam povezivanja elemenata CPU-a. 5. Glavna memorija: pohranjuje podatke 4

6 Svojstva računara i njihov razvoj Historija računara Prva generacija: vakumske cijevi Prvi digitalni računar je bio ENIAC, izradjen na univerzitetu Pensilvanija, za američku vojsku. John Mauchly je predložio izradu računara opće namjene pomoću vakumskih cijevi i tako je otpočeo rad na EINACU-u. Težio je 30 tona i imao površinu od 140 kvadratnih kilometara, te vakumskih cijevi. Trebalo je 140kW snage. Mogao je izvršiti 5000 sabiranja u sekundi.to je bila decimalna, a ne binarna mašina. Korišten je do godine godine Von Neumann je predložio izradu novog računara EDVAC. Sljedeće godine su počeli projektovanje računara, završen je godine, i služio kao prototip kasnijih računara opće namjene. Opća struktura IAS-a se sastoji od: - glavne memorije u koju su pohranjeni podaci i instrukcije - aritmeticke i logičke jedinice koja radi sa binarnim podacima - kontrolna jedinica koja prevodi instrukcije iz memorija i izvršava ih - ulazna/izlazna oprema kojom upravlja kontrolna jedinica Glavne značajke Von-Neumannovog prijedloga su: 1. Uređaj će morati izvršavati najčešće aritmetičke operacije: sabiranje, oduzimanje, množenje i dijeljenje. Logično je da ima organe samo za ove operacije. To znači da mora postojati centralni aritmetički dio i to je prvi specifični dio CA. 2. Logička kontrola je predstavljena pravilnim redoslijedom operacija. To znači da se mora napraviti razlika u operacijama kojima se definiše određeni problem. Pod centralnom kontrolom se podrazumijeva funkcija ovih dijelova i oni se nazivaju drugi specifični dio. 3. Da bi izvršavao duže operacije mora imati značajnu količinu memorije. To znači da ukupna memorija čini treći specifični dio uređaja. Skraćenice su CA, CC i M. Trebaju imati ulazni i izlazni organi, a to su vanjski mediji za snimanje ili R. 4. Uređaj mora imati organe za prijenos informacija od R ka CA, CC i M. Ovi organi čine ulaz kao četvrti specifični dio. 5. Uređaj mora imati organe za prijenos od CA, CC i M ka R. Ovi organi čine njegov izlaz, kao peti specifični dio ili O. IAS-ova kontrolna jedinica radi tako što dobavlja jednu po jednu instrukcija iz memorije. Sadrži lokacije za pohranjivanje koje se nazivaju registri i to: - Memorijski buffer registar (MBR) : sadrži riječ koja se pohranjuje u memoriji i šalje prema I/O jedinici ili se koristi za primanje riječi iz memorije ili I/O jedinice. - Memorijski adreski registar (MAR): određuje adresu riječi u memoriji koja se upisuje iz ili učitava u MBR. - Instrukcijski registar: sadrzi 8-bitni kod instrukcije koja se izvršava. - Instrukcijski buffer registar: privremeno drži desnu instrukciju riječi u memoriji - Programski brojač: sadrži adresu sljedećeg instrukcijskog para koji se dobavlja iz memorije. - Akumulator i multipler quotient: privremeno drže operande i rezultate ALU operacija. 5

7 IAS radi tako što ponavlja instrukcijski ciklus. Svaki ciklus se sastoji od dva podciklusa. IAS računar je imao ukupno 21 instrukciju. Mogu se grupisati su: - prijenos podataka: između memorije i 2 ALU registra - bezuslovno grananje: potpomaže operacije koje se ponavljaju - uslovno grananje: grananje može zavisiti od uslova, te se na taj način dopušta izbor - aritmetika: operacije koje izvodi ALU - modifikacija adrese: dozvoljava se izračunavanje adresa u ALU, dozvoljava se adresna fleksibilnost. Komercijalni računari Pedesetih godina prošlog vijeka rodila se računarska industrija, a dominirali su Sperry i IBM. Prva uspješna mašina je bio UNIVAC 1, namijenjen za naučnu i komercijalnu upotrebu. UNIVAC 2 pojavio se kasnih pedesetih godina. Imao je veću memoriju i bolje performanse. IBM, najveći proizvođač opreme za bušene kartice, predstavio je godne svoj prvi elektronski računar koji je bio namjenjen za naučne svrhe. Onda izlazi IBM 702 kojom je IBM postao najveći proizvođač računara. Druga generacija: tranzistori Druga generacija računara dolazi kad su vakumske cijevi zamijenjene tranzistorom, koji je manji, jeftiniji i rasipa manje toplote. Tranzistor je sačinjen od silikona. Izumljen je u Bell Labsu i izazvao elektroničku revoluciju. Korištenje tranzistora definiše drugu generaciju računara. U drugoj generaciji pojavljuju se jezici visokog nivoa i računari sa sistemskim softverom. Narasla je veličina memorije i brzina izvršavanja CPU-a. Sljedeća novina je multiplekser tačka u kojoj završavaju svi podatkovni kanali, CPU i memorija. Treća generacija: integrisana kola Zasebni tranzistor se naziva diskretna komponenta, a one su bile prodavane zasebno i zasebno ugrađivane u računar. To je proizvodilo dosta problema. Onda je izmišljeno integralno kolo. Vrata je uređaj kojim se ostvaruje Bulova ili logička funkcija. Memorijska ćelija može pohraniti jedan bit podatka. Četiri osnovne računarske funckije se mogu objasniti pomoću ovih komponenti na sljedeci način: - pohrana podataka: obezbjeđuje memorijske ćelije - obrada podataka: obezbjeđuje kola - premještanje podataka: putanje između komponenti koje se koriste za premještanje podataka od memorije do memorije - kontrola: putanje između komponenti nose kontrolne signale. Od signala zavisi koja će se npr. vrata aktivirati. Zato se računar sastoji od kola, memorijskih ćelija i veza među njima. Integrisana kola su zapravo zasebne komponente.u ranijoj fazi kola se prave malog razmjera, vremenom sve više i više komponenti se postavlja na jedan čip. Prvi koji su uveli integrisana kola su bili IBM i postigli su uspjeh decenije sa odjelom od 70% ukupnog tržišta. Modeli su bili kompatibilni. Karakteristike porodice su: - sličan ili identičan instrukcijski set - sličan ili isti operativni sistem - povećanje brzine - povećanje I/O priključaka - povećanje memorije - povećanje cijene 6

8 Kasnije generacije Uvodi se integracija velike razine, moglo se ugraditi 1000 elemenata na jedan čip. Brzi tempo je omogućio visoku stopu uvođenja novih proizvoda, te povećanjem softvera i komunikacija. Prva upotreba integrisanih kola bila je izrada procesora od integrisanih čipova, međutim postalo je jasno da se može koristiti za izradu memorije. Poluprovodnička memorija je bila brza, međutim bila je skupa i glomazna. Mikroprocesori Kako je vrijeme prolazilo sve je vise i vise elemenata bilo postavljano na jedan čip, tako da je sve manje i manje čipova bilo potrebno za izradu procesora. Prvi mikroprocesor je bio Intelov to se smatra rođenjem mikroprocesora. Prvi je bio 4- bitni procesor. Brzina mikroprocesora Mooreov zakon opisuje povećavanje broja tranzistora na čipu tokom vremena i glasi: "broj tranzistora koji se po najpovoljnijoj cijeni mogu smjestiti na čip udvostručava otprilike svake dvije godine".razvoj računara jos prati Mooreov zakon. Kod mikroprocesora se brzina povećava pet puta svake tri godine od Intelove x86 porodice. Tehnike ugrađene u današnje procesore su: - predviđanje grananja: procesor gleda koje su instrukcije učitane iz memorije i nastoji predvijeti koje će biti sljedeće obrađene. Ako pravilno predvidi, može pripremiti ispravne instukcije i pohraniti ih u buffer. Zato predviđanje grananja povećava količinu rada koja stoji u procesu izvršenja. - analiza toka: ovim se sprječava nepotrebno kasnjenje tako so procesor analizira instrukcije koje su zavisne ili nezavisne od rezultata... - spekulativno izvršavanje: koristeći prethodna dva, izvršni dijelovi procesora se drže zaposlenim što je više moguće, jer izvršavaju instrukcije koje će vjerovatno biti potrebne. Uravnoteženje performansi Procesor se razvijao velikim tempom, dok ostale komponente i nisu. Rješenje se nalazi u uravnoteženju performansi tj. usklađivanje organizacije i arhitekture. Keš memorija je mala i brza memorija smještena između veće i sporije memorije i elementa koji pristupa većoj memoriji. Poboljšanja organizacije i arhitekture čipa Bez obzira na uravnoteženje performansa procesa sa glavnom memorijom i ostalim komponentama, ostaje potreba povećanja procesorske brzine. Postoje tri pristupa: - povećati hardversku brzinu procesora smanjenjem veličine logičkih kola procesorskog čipa - povećanje veličine i brzine keševa koji su smješteni između procesora i glavne memorije. - promjene u organizaciji i arhitekturi procesora koje povećavaju efektivnu brzinu izvršavanja instrukcija. Najčešće se koristi prvi pristup. Međutim, kako se povećava brzina procesora i gustina elemenata na njemu, javljaju se prepreke: - energija: raste gustina toka energije, rasipanje toplite koje se javlja na procesorima velike brzine i gustine. - kašnjenje kola: brzina kojom se elektroni kreću po čipu između tranzistora ograničena je otporom i kapacitetom žica. Što je veće kolo, to više kasni. - memorijska latentnost: memorijske brzine zaostaju za procesorskim. 7

9 Razvoj Intel-ove x86 arhitekture Dok su Intelovi mikroprocesori postajali brži i složeniji, Intel je povećavao tempo razvoja. Novi mikroprocesor bi izlazio svake 4 godine. Sistemski takt rukovodi izvođenjem aritmetičkih operacija, dohvatanjem instrukcija itd. Počinju taktnim impulsom. 1GHz procesor prima milijardu impulsa u sekundi. Ova mjera je poznata kao brzina takta. Jedna promjena stanja ili jedan impuls se označava kao taktni ciklus ili otkucaj. Vrijeme između impulsa je vrijeme ciklusa. Brzina izvršavanja instrukcija Procesorom upravlja njegov takt konstantne frekvencije. CPU vrši različite cikluse u različito vrijeme. Opća mjera ucinka procesora je brzina kojom se izvršavaju instrukcije izražena je milionima instrukcija u sekundi, koja se označava kao MIPS brzina. Koristi se još jedna opća mjera za instrukcije sa pokretnim zarezom, a naziva se MFLOPS. Mjerila kao što su MIPS i MFLOPS su nedovoljne za ocjenu učinka procesora. Zbog razlika u instrukcijskim setovima, brzinu izvršavanja nije opravdano koristiti za uporedjivanje performansi različitih arhitektura. U vezi s tim izmišljeni su referentni programi. Osobine referentnog programa su: napisan u jeziku visokog nivoa, predstavnik određene vrste programiranja, lagan za mjerenje, ima široku distribuciju. 8

10 Računarske funkcije i veze Gledano odozgo, elementi računara su: CPU, memorija, i I/O elementi. Može biti nekoliko od svakih. Kad su komponente međusobno povezane postiže se osnovna funkcija, a to je izvršavanje programa. Zato se na najvišem nivou računarski sistem opisuje: - ppisivanjemvanjskog ponašanja svake komponente=razmjena podataka i kontrolnih signala sa ostalim komponentama, i - opisivanjem strukture povezivanja i potrebnih kontrola za upravljanje njihovog korištenja. Važan je pogled odozgo zbog razumijevanja prirode računara i ocjenjivanja performansi računara. Pogled na strukturu i funkciju nudi uvid u: - sistemska uska grla, - alternativne putanje, - veličinu padova sistema u slučaju padova komponenti - lakše dodavanje poboljšanja performansi. Pouzdani sistem dobijamo povećanjem brzine i pouzdanosti pojedinih komponenti, te promjenama u dizajnu. Elementi računara Današnji računari zasnovani na von Neumannovimkonceptima: - podaci i instrukcije su pohranjeni u jednoj memoriji koja se može učitavati i upisivati. - sadržaji memorije su adresibilni po lokaciji, bez obzira na vrstu podataka koji je tamo pohranjen. - izvršavanje se obavlja sekvencijalno (osim ako nije eksplicitno modifikovano) od jedne do druge instrukcije. Dakle, postoji mali skup osnovnih logičkih komponenti koje mogu biti spojene na različite načine. Tako pohranjuju podatke i izvode aritmetičko-logičke operacije. Ako treba specifično izračunavanje, onda se konstruiše specijalna konfiguracija samo za taj izračun. Proces spajanja različitih komponenti je oblik programiranja. Rezultujući program je hardver koji se označava kao hardverski program (hardwired program). Kod hardvera opće namjene sistem prihvata podatke i kontrolne signale, i daje rezultate. Zato, nema ponovnog spajanja elemenata za svaki program, već samo programer treba dobaviti novi skup kontrolnih signala. Kako se kontrolni signali dobavljaju? Cijeli program je niz koraka. Korak je neka aritmetička ili logička operacija na podacima. Svaki korak treba novi skup kontrolnih signala. Svaki skup kontrolnih signala ima svoj jedinstven kôd. Postoji i dodatni hardverski segment opće namjene. On prihvata kôd i proizvodi kontrolne signale. Nema više prespajanja hardvera za svaki novi program. Samo treba obezbijediti novi niz kôdova. Kôd je instrukcija, a hardver je prevodi u kontrolne signale. Dakle: novi metod programiranja (niz kôdova ili instrukcija) = softver. Dva glavna elementa sistema su: instrukcijski prevodilac i modul za aritmetičke i logičke funkcije opće namjene. Oni čine CPU. Trebamo još nekoliko elemenata za funkcionalan računar. Podaci i instrukcije moraju se ubaciti u računar. Znači, trebamo ulazni modul. On sadržava: - komponente za prihvatanje podataka i instrukcija i - komponente za pretvaranje istih u signale razumljive sistemu. Trebamo i izlazni modul.ulazni i izlaznimoduli čine I/O komponente. Za funkcionalan računar trebamo još jedan element. Ulazni uređaj dostavlja instrukcije sekvencijalno. Međutim, često se program tako ne izvršava; može skakati okolo. Zato nam treba mjesto njihovog privremenog pohranjivanja. Taj modul je (glavna) memorija Von Neumann: Ista memorija može koristiti za instrukcije i podatke. 9

11 CPU razmjenjuje podatke sa memorijom. Za to koristi CPU registre: - MAR- određuje adresu u memoriji za sljedeće upisivanje/učitavanje, i - MBR- sadrži podatke koji se upisuju u memoriju ili prihvata podatke koji se iz nje učitavaju. Slično: - I/OAR-određuje specifični I/O uređaj - I/OBR-za razmjenu podataka između I/O modula i CPU. Memorijski modul je skup lokacija (sekvencijalno poredane adrese). Svaka lokacija sadrži binarni broj. Binarni broj se prevodi u instrukciju ili podatak. I/O modul prenosi podatke od vanjskih uređaja ka CPU i memoriji, i obrnuto.sadrži unutrašnje bafere za privremeno prihvatanje podataka dok ne budu poslani. Funkcija računara Osnovna funkcija računara je izvršavanje programa. Program je skup instrukcija koje su pohranjene u memoriji. Procesor je izvršava instrukcije koje su definisane u programu. Najjednostavniji oblik obrade instrukcije se sastoji od dva koraka: - dobavljanje instrukcija iz memorije (jedna po jedna) i - izvršavanje Izvršavanje programa je ponavljanje dobavljanjai izvršavanja instrukcija. Označavaju se kao ciklusi dobavljanja i izvršavanja. Izvršavanje instrukcije može uključivati nekoliko operacija i zavisi od prirode instrukcije. Obrada jedne instrukcije je instrukcijski ciklus.izvršavanje programa se zaustavlja: - ako je računar isključen - ako se pojavi nepopravljiva greška - ako program sadrži instrukciju koja zaustavlja računar Dobavljanje i izvršavanje instrukcije Instrukcijski ciklus počinje tako što procesor dobavlja instrukciju iz memorije. PC sadrži adresu instrukcije koja će biti sljedeća dobavljena (osim ako nije drugačije rečeno), procesor uvećava PC nakon svakog dobavljanja. Zašto mora uvećati? Pa da bi mogao dobaviti sljedeću instrukciju. Na primjer: - dužina instrukcije = 16-bitna riječ, - PC postavljen na lokaciju u sljedećim instrukcijskimciklusima dobavićeinstrukcije sa lokacija 301, 302, 303, itd. - niz može biti zaustavljen... Dobavljena instrukcija se učitava u IR. Instrukcija sadrži bite koji definišu procesorsku aktivnost. Procesor prevodi instrukciju i izvodi zahtijevanu aktivnost. Aktivnosti pripadaju jednoj od četiri kategorije: - procesor-memorija: prebacivanje podataka procesor memorija - procesor-i/o: prebacivanje podataka procesor I/O modul - obrada podataka: aritmetičko-logičke operacije nad podacima. - kontrola: može se zahtijevati zaustavljanje izvršavanja niza. Na primjer, procesor dobavi instrukciju sa lokacije 149. Ta instrukcija definiše da je sljedeća instrukcija na lokaciji 182. Šta sad radi procesor? Pamtiti ovu činjenicu tako što PC postavlja na 182. Zato se u sljedećem ciklusu dobavlja instrukcija sa 182 a ne 150. Instrukcijsko izvršavanje je kombinacija ovih aktivnosti. 10

12 Zadatak: dodavanje sadržaja memorijske riječi na adresi 940 sadržaju memorijske riječi na adresi 941 i pohranjivanje rezultata na adresi 941. Potrebne su 3 instrukcije.opisuju se preko 3 ciklusa dobavljanjai 3 ciklusa izvršavanja: - PC = 300 = adresa prve instrukcije (1940)16 IR; PC=PC+1 - Prva cifra iz (1940)16=(1)16=(0001)2=load AC frommemory - ostalih 12 bita=(940)16=adresa sa koje se učitavapodatak. - sljedeća instrukcija (5941) je sa lokacije 301, a PC se uvećava. - sadržaj AC-a i lokacije 941 se sabiru; rezultat pohrani u AC. - sljedeća instrukcija (2941) je sa lokacije 302, a PC se uvećava. - sadržaj AC-a se pohranjuje na lokaciju 941. Instrukcija može definisati i I/O operaciju. Stanja mogu bit nula, a mogu biti posjećena više od jednog puta. Opis stanja: - Izračunavanje adrese instrukcije (iac): određivanje adrese sljedeće instrukcije koja će se izvršavati. Obično je to dodavanje fiksnog broja adresi prethodne instrukcije. - Dohvatanjeinstrukcije (if): učitajinstrukciju iz mem. lok. u procesor. - Operacija dekodiranja instrukcije (iod): odrediti tip operacije koja se treba obaviti nad operandima. - Izračunavanje adrese operanda(oac): ako operacija uključuje referencu na operandu memoriji ili je dostupna preko I/O, onda se određuje adresa operanda. - Dohvatanje operanda (of): iz memorije ili iz I/O. - Operacija nad podacima (do): izvođenje operacije koja je naznačena instrukcijom. - Pohranjivanje operanda(os): upis rezultata u memoriju ili I/O. 11

13 Prekidi Svi računari imaju mehanizam preko kojeg drugi moduli mogu prekinuti normalnu obradu na procesoru. Opće klase su: Prekidi se obezbjeđuju radi poboljšanja efikasnosti obrade. Npr., periferali (štampač)<procesor. Nakon svake operacije upisa procesor ide na stanje idle i čeka da ga štampač sustigne. Pauza traje nekoliko stotina (hiljada) ciklusa (bez memorije). Nedozvoljeno je rasipanje procesorske snage. Pomoću prekida procesor može izvršavati druge instrukcije dok se izvodi I/O operacija. Na nivou korisničkog programa prekid je bukvalno prekid: prekid normalnog niza izvršavanja. Po završetku obrade prekida nastavlja se izvršavanje. Korisnički program nema specijalan kod za prekid. Procesor i OS odgovorni su za suspendovanje i nastavljanje programa. Instrukcijskom ciklusu se dodaje prekidni ciklus (prekidni ciklus-procesor provjerava pojavu prekida (signal)). Ako nema prekida procesor nastavlja sa ciklusom dobavljanja. Ako je prekid na čekanju, procesor: - zaustavlja trenutni program i spašava njegov kontekst: - postavlja programski brojač na početnu adresu procedure za upravljanje prekidima. - procesor učitava prvu instrukciju upravljanja prekidima (OS) - završetak upravljanja prekidima, procesor nastavlja izvršavanje programa od tačke prekida. Često I/O operacija duže traje od izvršavanja korisničkih instrukcija. Izmijenjeni dijagram stanja obrade instrukcijskog ciklusa zajedno sa ciklusom prekida: 12

14 Do sada smo razmatrali slučaj pojavljivanja samo jednog prekida. Međutim, može se pojaviti više prekida. Npr. : - program dobija podatke od komunikacijske linije (KL) i štampa rezultate. - štampač izaziva prekid kad završi operaciju štampanja. - KL kontroler generiše prekid kada pristigne podatkovna jedinica Jedinica je samo jedan karakter ili blok karaktera zavisno od prirode komunikacijskog režima. Moguća je pojava komunikacijskog prekida dok se obrađuje prekid kojeg je generisao štampač. Dva su pristupa rješavanja višestrukih prekida. Prvi pristup je onesposobljavanje prekida dok se jedan obrađuje. Prekid je onesposobljen kada procesor ignoriše taj prekidni signal. Ako se prekid javi tokom ovog vremena, uglavnom ostaje na čekanju, a procesor će ga provjeriti nakon omogućavanja prekida. Zato, kada se korisnički program izvršava a pojavi se prekid, prekidi se odmah isključuju. Nakon završetka programa za upravljanje prekidima, prekidi se omogućavaju prije nastavljanja korisničkog programa, te procesor provjerava postojanje dodatnih prekida. Ovaj pristup je dobar i jednostavan sve dok se pri rukovanju prekidima drži strogog redoslijeda, tzv. sekvencijalna obrada prekida. Mana ovog pristupa je što ne uzima u obzir vremensku kritičnost potreba. Drugi pristup je definisanje prioriteta prekida. Dozvoljava se da prekid višeg prioriteta izazove prekidanje nižeg. Npr. sistem sa I/O uređajima: štampač, disk i komunikacijska linija: - prioriteti 2, 4 i 5 (veći broj veći prioritet). - korisnički program počinje u t = 0. - t = 10, pojavljuje se prekid sa štampača; - korisničke informacije se smještaju na sistemski stek i izvršavanje se nastavlja rutinom prekida (interruptservice routine ISR) štampača. Dok se ova procedura izvršava u t = 15 pojavljuje se komunikacijski prekid čiji je prioritet veći od prioriteta štampača. ISR štampača se prekida, njegovo stanje se smješta na stek, a izvršavanje se nastavlja ISR-om komunikacijske linije. Dok se ova rutina izvršava pojavljuje se prekid diska u t = 20. njegov prioritet manji, jednostavno se zadržava, ISR komunikacijske linije se izvodi do kraja. ISR komunikacijske linije završi u t = 25, uspostavlja se prethodno stanje procesora (izvršavanje ISR-a štampača). Međutim, veći prioritet diska, i kontrola se prenosi na ISR diska. Kad se on završi u t = 35, nastavlja se ISR štampača. Njenim završetkom u t = 40, kontrola se konačno vraća korisničkom programu. 13

15 I/O funkcije I/O modul može direktno komunicirati sa procesorom. Kao i u memoriju, procesor može učitati/upisati u I/O modul. Procesor identificira specifični uređaj kojeg kontroliše dati I/O modul. Nekad je poželjno dopustiti direktnu razmjenu I/O sa memorijom. Procesor prenosi ovlasti na I/O modul da upisuje/učitava memoriju. Dakle, moguć je I/O memorija prenos bez procesora. I/O modul izdaje memoriji komande, tako da procesor nema odgovornosti. To je direktni pristup memoriji (direct memory access DMA). Strukture veze Računar čine tri vrste osnovnih elemenata ili modula: - procesor - memorija - I/O Oni međusobno komuniciraju. Zato moraju postojati putevi koji ih povezuju. Skup putanja koje povezuju različite module zove se struktura veze. Dizajn ove strukture zavisi od razmjena između modula. Memorijski modul se sastoji od N riječi iste dužine. Svaka riječ ima jedinstvenu numeričku adresu (0, 1,..., N -1). Riječ podataka može biti učitana/upisana u memoriju. Kontrolni signali određuju operaciju (učitavanje ili upisivanje). Lokacija operacije se specificira adresom. I/O je funkcionalno sličan memoriji. Dvije su operacije: učitati i upisati. I/O modul može imati pod kontrolom više perifernih uređaja. Sučelje prema perifernom uređaju naziva se port. Svaki port ima jedinstvenu adresu, na primjer 0, 1,..., M 1. Postoje i vanjske putanje podataka za ulaz/izlaz podataka u/iz perifernog uređaja. Procesor: - učitava instrukcije i podatke, - upisuje podatke nakod obrade, - koristi kontrolne signale za kontrolu svih sistemskih operacija - prima prekidne signale. Struktura veze mora podržati sljedeće vrste prenosa: - memorija procesor - procesor memorija - I/O procesor - procesor I/O - I/O memorija 14

16 Sabirnica Daleko najčešća struktura veze je (višestruka) sabirnica. To je komunikacijska putanja koja povezuje dva ili više uređaja. Ključna karakteristika joj je djeljivi medijum za prenos. Signal je dostupan svim uređajima koji su na nju priključeni. Kada dva uređaja pošalju istovremene signale, dolazi do preklapanja i poremećaja. Zato, u datom trenutku, signal može slati samo jedan uređaj. Obično sabirnicu čini više komunikacijskih putanja ili linija. Svaka linija je u stanju prenijeti signale (binarne 1 i 0). U vremenskom intervalu, može se prenijeti niz binarnih cifara 1 linijom. Više linija sabirnice može koristiti za istovremeni (paralelni) prenos, npr. 8-bitni podatak može se prenijeti preko osam linija sabirnice. Računarski sistemi sadrže brojne i različite sabirnice, koje omogućavaju komunikaciju komponenti različitog nivoa hijerarhije. Sabirnica za povezivanje glavnih elemenata naziva se sistemska sabirnica. Struktura sabirnice Sistemsku sabirnicu čini od 50 do stotine odvojenih linija. Svaka linija ima posebno značenje ili funkciju. Postoje različite izvedbe sabirnice, ali postoje samo tri funkcionalne grupe: - podatkovne - adresne - kontrolne Dodatno, postoje i linije za snabdijevanje strujom modula. Podatkovne linije Podatkovne linije obezbjeđuju putanju za prenos između sistemskih modula. Ove se linije, zajedno, nazivaju podatkovna sabirnica. Može sadržavati: 32, 64, 128 ili više odvojenih linija. Broj linija označava širinu podatkovne sabirnice. Svaka linija odjednom nosi samo 1 bit, broj linija određuje koliko bita odjednom se može prenijeti. Širina podatkovne sabirnice je ključni faktor u određivanju performansi cijelog sistema. Npr. širina je 32 bita a instrukcije su 64-bitne, onda procesor mora dva puta pristupiti memorijskom modulu tokom svakog instrukcijskog ciklusa. Adresne linije Adresne linije koriste za određivanje izvora ili odredišta podatka na sabirnici. Npr. ako procesor želi učitati riječ podatka iz memorije, onda postavi adresu željene riječi na adresne linije. Širina adresne sabirnice određuje najveći memorijski kapacitet. Adresne linije se najčešće koriste i za adresiranje I/O portova. Obično, viši bitovi koriste za izbor određenog modula na sabirnici, a niži za izbor memorijske lokacije ili I/O porta unutar modula. Npr., 8-bitna adresna sabirnica: - adresa i one ispod nje mogu upućivati na lokacije u memorijskom modulu (modul 0) sa 128 riječi memorije, - a adresa i one iznad nje označavaju uređaje prikačene na I/O modul (modul 1). 15

17 Kontrolne linije Preko kontrolnih linija obavlja se kontrola pristupa i korištenja podatkovnih i adresnih linija. Kontrolni signali prenose komandne i sinhronizacijskeinformacije između sistemskih modula. Sinhronizacijski signali ukazuju na valjanost podataka i adresnih informacija. Komandni signali definišu operacije koje se izvršavaju. Operacije su: - memorijski upis: podaci se sa sabirnice upisuju na naznačene lokacije. - memorijsko učitavanje: smještanje podataka sa naznačenih lokacija na sabirnicu. - I/O upis: podaci se sa sabirnice upisuju na naznačeni I/O port. - I/O učitavanje: podaci se sa I/O porta smještaju na sabirnicu. - potvrda prenosa: podaci prihvaćeni sa/na smješteni sabirnicu - zahtjev za sabirnicu: modul treba dobiti sabirnicu. - odobravanje sabirnice: modulu odobrena kontrola nad sabirnicom. - zahtjev za prekid: ukazuje da je prekid na čekanju. - potvrda prekida: potvrđivanje da je prekid koji čeka dopušten. - takt: koristi se za sinhronizaciju operacija. - resetovanje: pokretanje svih modula Kako radi sabirnica? - Ako jedan modul želi poslati podatak drugom, mora: 1. dobiti korištenje sabirnice i 2. prebaciti podatke preko nje. - Ako jedan modul zahtijeva podatke od drugog mora: 1. dobiti korištenje sabirnice i 2. prebaciti zahtjev drugom modulu preko kontrolnih i adresnih linija. Fizički, sistemsku sabirnicu čine brojni paralelni električni provodnici. Klasičnu sabirnicu čine provodnici metalni vodovi urezani u karticu ili (štampanu) ploču. Sabirnica se proteže do svih komponenti sistema, a svaka je spojena na neke ili sve linije sabirnice. Međutim, tendencija kod modernih sistema je da sve glavne komponente budu na istoj ploči, sa više elemenata na istom čipu, kao kod procesora. Zato sabirnica na čipu može povezivati procesor sa keš memorijom, dok sabirnica na ploči može povezivati procesor sa glavnom memorijom i ostalim komponentama. Hijerarhija sabirnica Kad je veliki broj uređaja spojen na sabirnicu dolazi do slabih performansi. Dva su glavna uzroka: 1. više uređaja priključeno = veća njena dužina = duže kašnjenje. - kašnjenje određuje vrijeme koje je potrebno uređajima za usklađivanje korištenja sabirnice. - Češće prenošenje kontrole, značajno utiče na pad performansi zbog produženja čekanja. 2. Sabirnica može postati usko grlo ako zbirni zahtjev za prenos podataka dostiže kapacitet sabirnice. - može neutralizirali do određene mjere povećanjem brzine prenosa podataka sabirnicom i korištenjem šire sabirnice (npr. 32 na 64) 16

18 - Međutim, veliki rast brzine podataka koje proizvede priključeni uređaji (na primjer, grafički i video kontroleri, mrežna sučelja), jednostruka sabirnica jednostavno ne može podnijeti. Zato se koriste hijerarhijski postavljene višestruke sabirnice. Kod tradicionalne strukture lokalna sabirnica povezuje procesor i keš i može podržati jedan ili više lokalnih uređaja. Keš kontroler povezuje keš sa lokalnom i sistemskom sabirnicom. Na sistemsku su priključeni svi moduli glavne memorije.kešstruktura izoluje procesor od čestog pristupa RAM-u. Zato se koriste hijerarhijski postavljene višestruke sabirnice. Znači RAM se može premjestiti sa lokalne na sistemsku sabirnicu.na ovaj način I/O prenosi do i od glavne memorije preko sistemske sabirnice ne ometaju aktivnosti procesora. I/O kontroleri se mogu direktno povezati na sistemsku sabirnicu. Efikasnije rješenje je koristiti jednu ili više produžnihsabirnica.njihovo sučelje baferuje podatke koji se prenose između sistemske sabirnice i I/O kontrolera na produžnoj sabirnici. Ovakvo uređenje omogućuje sistemu podršku za različite I/O uređaje i u isto vrijeme izoliraju memoriju-procesor od I/O saobraćaja. Tradicionalna sabirnica otkazuje povećanjem performansi I/O. Odgovor na ovaj problem je izrada vrlo brzih sabirnica usko integrisanih sa ostatkom sistema. Potreban bi bio samo bridž između procesorske i brze sabirnice. Naziv za to je međuspratna arhitektura (mezzanine architecture). Postoji lokalna sabirnica, povezuje procesor i keš-kontroler. Keš-kontroler je s druge strane povezan na sistemsku sabirnicu, koja podržava glavnu memoriju. Keš-kontroler je integrisan u bridž, ili bafer uređaj, i spojen na vrlo brzu sabirnicu. Ona podržava: - vrlo brze LAN-ove (brzi eternet na 100 MBPS), - video i grafičke kontrolere, - kontrolere sučelja prema lokalnim perifernim sabirnicama, (SCSI i FireWire - vrlo brza serijska sabirnica za podršku I/O uređaja velikog kapaciteta) - manje brze uređaje, sa sučeljem za baferovanje saobraćaja između produžene i vrlo brze sabirnice. Prednost ovog uređenja je da vrlo brza sabirnica dovodi zahtjevnije uređaje u užu intergaciju sa procesorom, a u isto su vrijeme nezavisni od njega. Karakteristike sabirnice Tipovi sabirnice - dva opća tipa: - namjenska (dodijeljena) i - višestruka (multipleksirana) Namjenska je trajno dodijeljena jednoj funkciji ili fizičkom podskupu računarskih komponenti. Npr., korištenje razdvojenih adresnih i podatkovnih linija. Međutim, adresne i podatkovne informacije se mogu prenositi preko istog skupa linija (Address Valid kontrolna linija). Prenos počinje tako što se adresa postavlja na sabirnicu i aktivira se Address Valid linija. Od tog trenutka, svaki modul ima određen period vremena za kopiranje adrese i određivanje da li je adresa za njega. Onda se adresa uklanja sa sabirnice, a ista se sabirnica koristi za kasnije čitanje / pisanje podataka. Prednost korištenja istih linija u više svrha-vremensko multipleksiranje je manje linija (ušteda prostora, odnosno cijene). 17

19 Nedostaci su: - složenija kola unutar svakog modula. - potencijalno smanjenje performansi jer određeni događaji koji dijele iste linije se ne mogu izvoditi paralelno. Fizička namjena je korištenje više sabirnica, od kojih svaka povezuje samo podskup modula. Npr., I/O sabirnica za povezivanje svih I/O modula. Ona se spaja na glavnu preko nekog tipa I/O modula za prilagođavanje. Prednost toga je velika propusnost (manje veza sabirnice), a nedostatak povećanje veličine i cijene sistema. Metod arbitraže. Više modula može trebati kontrolu nad sabirnicom. Npr., I/O treba čitati/pisati direktno u memoriju (bez CPU). Odjednom samo jedna jedinica se može uspješno prenijeti. Znači, potreban je nekakav način arbitraže. U grubo, metode mogu biti centralizirane ili distribuirane. Centralizirana šema - jedan hardverski uređaj (kontroler sabirnice ili arbitar) je potreban za dodjeljivanje vremena korištenja sabirnice. Uređaj može biti odvojen modul ili dio procesora. Distribuirana šema - ne postoji centralni kontroler. Svaki modul posjeduje kontrolnu logiku za prostup i moduli zajedno rade na dijeljenju sabirnice. U oba slučaja, namjera je odrediti jedan uređaj, bilo procesor bilo I/O modul, da bude glavni. Onda on može inicirati prenos podataka sa nekim drugim uređajem koji je podređen za datu razmjenu. Vremensko upravljanje je način koordiniranja aktivnosti na sabirnici. Sabirnice koriste sinhrono ili asinhrono upravljanje. Sinhrono upravljanje - pojava aktivnosti na sabirnici definisana je taktom. Sabirnica uključuje i taktnu liniju, po kojoj takt prenosi pravilan niz izmjenjivanja jedinica i nula jednakog trajanja. Jedan 1 0 prenos se označava kao taktni ciklus ili ciklus sabirnice i definiše vremenski interval. Svi drugi uređaji na sabirnici mogu čitati taktnu liniju, sve aktivnosti počinju na početku taktnog ciklusa. Većina aktivnosti su trajanja jednog taktnog ciklusa procesor smješta memorijsku adresu na adresne linije tokom prvog ciklusa i može izazvati različite statusne linije. Kad se adresne linije stabiliziraju, procesor izdaje signal za odobravanje adrese. Za operaciju čitanja, procesor izdaje komandu čitanja na početku drugog ciklusa. Memorijski modul prepoznaje adresu i, nakon zakašnjenja od jednog ciklusa, smješta podatke na podatkovne linije. Procesor čita podatke sa podatkovnih linija i otpušta signal čitanja. Za operaciju pisanja, procesor postavlja podatke na podatkovne linije na početku drugog ciklusa i izdaje komandu pisanja poslije stabilizacije podatkovnih linija. Memorijski modul kopira informacije sa podatkovnih linija tokom trećeg ciklusa. Asinhrono upravljanje - pojava jedne aktivnosti na sabirnici prati i zavisi od pojave prethodne. Čitanje: procesor smješta adresne i statusne signale na sabirnicu. Pravi pauzu za njihovo stabiliziraje, izdaje komandu čitanja, (pristustvo validnih adresnih i kontrolnih signala). Odgovarajuća memorija dekodira adresu i uzvraća smještanjem podataka na podatkovnu liniju. Stabilizira se podatkovna linija, memorija signalizira procesoru da su podaci raspoloživi (linija za potvrđivanje). Kada rocesor pročita podatke poništava signal čitanja koji prouzrokuje da memorijski modul otpusti podatke i linije za potvrđivanje. Na kraju, kad je linija otpuštena, procesor uklanja adresne informacije. Pisanje: procesor istovremeno postavlja podatke na podatkovnu liniju i signale na statusne i adresne linije. Memorijski modul uzvraća na komandu pisanja kopiranjem podataka sa podatkovnih linija i onda izvještava preko linije za potvrdu. Procesor otpušta signal pisanja a memorijski modul otpušta signal potvrđivanja. 18

20 Sinhrono vs. asinhrono Sinhrono: jednostavnije za izvršavanje i testiranje. Manje je fleksibilno. Svi uređaji na sinhronoj sabirnici vezani za fiksnu brzinu takta, sistem ne može iskoristiti poboljšanja performansi uređaja. Asinhrono: spori i brzi uređaji koji koriste stare i nove tehnologije mogu dijeliti sabirnicu. Širina sabirnice. Tiče se širine podatkovnih i adresnih sabirnica. Širinu kontrolne sabirnice određuju različiti drugi faktori. Širina podatkovne sabirnice određuje kako se podaci prenose između dvije komponente koje su u komunikaciji. Ima uticaj na performanse sistema: što je šira podatkovna sabirnica, to je veći broj bita koji se istovremeno prenose. Ima uticaj na kapacitet sistema: šira podatkovna sabirnica = veći opseg lokacija za referenciranje. Tip prenosa podataka. Sabirnica podržava različite tipove podatkovnog prenosa. Sve sabirnice podržavaju prenose pisanja (od glavnog ka podređenom) i čitanja (od podređenog ka glavnom). Multipleksirana (višestruka) adresna/podatkovna sabirnica prvo se koristi za specificiranje adrese, onda za prenos podataka. - Čitanje: obično postoji čekanje dok se podaci prihvate sa podređenog uređaja i postave na sabirnicu. - Čitanje/pisanje: može biti kašnjenje ako je potrebna arbitraža o Npr., zauzimanje sabirnice zbog zahtjeva čitanje/pisanje, onda ponovno zauzimanje sabirnice zbog izvođenja čitanja/pisanja. Namjenska adresna i podatkovna sabirnica: - adresa se postavlja na adresnu sabirnicu i tamo ostaje dok se podaci postavljaju na podatkovnu sabirnicu. - Pisanje: glavni uređaj postavlja podatke na podatkovnu sabirnicu čim se adresa stabilizira i podređeni uređaj prepozna svoju adresu. - Čitanje: podređeni uređaj postavlja podatke na podatkovnu sabirnicu čim prepozna svoju adresu i podaci se dohvataju. Neke sabirnice dopuštaju nekoliko kombinacija operacija: - čitanje-modifikacija-pisanje : o čitanje kojeg odmah prati pisanje u istu adresu. o adresa se samo prenosi jednom na početku operacije. o cijela operacija je obično nevidljiva kako bi se spriječio bilo kakav pristup podatku od strane drugih potencijalnih glavnih uređaja. o Glavna svrha = zaštita djeljivih memorijskih uređaja u višeprogramskim sistemima. - Čitanje-poslije-pisanja : o nevidljiva operacija o sastoji se od pisanja kojeg odmah prati čitanje sa iste adrese. o Čitanje se može izvoditi zbog provjere. 19

21 Neki sabirnice podržavaju prenos bloka podataka: jedan adresni ciklus prati sa n podatkovnih ciklusa. Prvi podatak se prenosi prema/ka određenoj adresi; ostali podaci se prenose prema/ka sljedećim adresama. PCI (Peripheral Component Interconnect) Vrlo brza široka sabirnica, nezavisna od procesora, funkcionira kao periferna sabirnica. PCI u odnosu na ostale sabirnice donosi bolje performanse za vrlo brze I/O operacije. Dodatno, dizajniran da zadovolji ekonomske I/O zahtjeve modernih sistema, jer treba vrlo malo čipova za implementiranje i podršku drugim sabirnicama priključenim na PCI. Intel je počeo sa radom na PCI godine za Pentium sisteme. Intel javno objavio svoje patente i promovisao stvaranje industrijskog udruženja PCI Special Interest Group (SIG), zbog daljeg razvoja i održavanja PCI. Rezultat je široko prihvatanje i povećanje njegovog korištenja u personalnim računarima, radnim stanicama i server sistemima. Pošto je postao javan i podržan od velikog broja proizvođača mikroprocesora i perifernih uređaja, PCI proizvodi različitih proizvođača su kompatibilni. PCI podržava različite konfiguracije (jedan i više procesora). Udruživanje DRAM kontrolera i bridža na PCI sabirnici omogućava usko povezivanje sa procesorom i mogućnost dostavljanja podataka velikim brzinama. Bridž djeluje kao podatkovni bafer, tako da se brzina PCI sabirnice može razlikovati od I/O mogućnosti procesora. Kod sistema sa više procesora jedna ili više PCI konfiguracija mogu biti povezane bridžom na sistemsku sabirnicu procesora. Sistemska sabirnica podržava samo procesor/keš jedinice, glavnu memoriju, i PCI bridževe. Bridževi drže PCI nezavisnim od procesora, i još obezbjeđuje mogućnost brzog primanja i slanja podataka. 20

22 Mašinske instrukcije Programer jezika visokog nivoa malo vidi od osnovne arhitekture. zajedničko za projektanta i njegovog programera je instrukcijski set. Ovaj set obezbjeđuje procesorske funkcionalne zahtjeve. Zašto? Jer je implementacija procesora zadatak koji uključuje primjenu instrukcijskog seta mašine. Rad procesora je određen instrukcijama koje izvršava. To su mašinske ili računarske instrukcije. Skup različitih instrukcija koje izvršava procesor čini procesorski instrukcijski set. Elementi mašinske instrukcije To su: - operacijski kôd (opkod) je binarni kod definiše operaciju koju izvodi (na primjer, ADD, I/O). - referenca izvornog operanda: operacija može uključivati jedan ili više operanada koji su ulazi za operaciju. - referenca rezultujućeg operanda: operacija može proizvesti rezultat. - referenca sljedeće instrukcije: govori procesoru gdje da dohvati sljedeću instrukciju nakon izvršavanja trenutne. Izvorni i rezultujući operandi mogu biti u: - glavnoj ili virtualnoj memoriji - procesorskom registru - neposredni: operand je u polju izvršavanja instrukcije. - I/O uređaju: instrukcija mora specificirati I/O modul i uređaj za operaciju. Predstavljanje instrukcija U računaru, instrukcija se predstavlja nizom bitova podijeljenih u polja. To su sastavni elementi instrukcije. Kod većine instrukcijskih setova koristi se više formata. Tokom izvršavanja instrukcije, učitava se u instrukcijski registar (IR) Procesor mora znati izvući podatke iz različitih instrukcijskih polja kako bi izveo traženu operaciju. Teško se barata binarnom reprezentacijom mašinskih instrukcija. Zato se koristi simboličko predstavljanje. Opkodovi su skraćenice - mnemonici (ukazuju na operaciju). Npr.: - ADD (sabiranje) - SUB (oduzimanje) - MUL (množenje) - DIV (dijeljenje) - LOAD (učitavanje podataka iz memorije) - STOR (pohranjivanje podataka u memoriju) I operandi se predstavljaju simbolički. Npr., instrukcija ADD R, Y znači dodavanje vrijednosti sadržane na podatkovnoj lokaciji Y sadržaju registra R. Dakle, Y = adresa lokacije u memoriji, R određeni registar. Operacija se izvodi nad sadržajem lokacije, a ne nad adresom. Zato je moguće pisati program na mašinskom jeziku u simboličkoj formi. 21

23 Svaki simbolički opkod ima stalno binarno predstavljanje, te programer specificira lokaciju svakog simboličkog operanda. Npr., programer počinje sa definisanom listom: X = 513 Y= 514. Program prihvata simboličke ulaze, prevodi opkodove i reference operanada u binarnu formu, i pravi binarne mašinske instrukcije. Programeri mašinskog jezika su toliko rijetki da skoro i ne postoje. Najviše se danas bave jezicima visokog nivoa, a u najgorem slučaju asemblerom. Međutim, simbolički mašinski jezik ostaje koristan alat za opisivanje mašinskih instrukcija. Razmotrimo instrukciju jezika visokog nivoa koja se može izraziti u BASIC-u: X = X + Y. Iskaz kaže računaru: Vrijednost koja je pohranjena u Y dodaj vrijednosti koja je pohranjena u X i rezultat pohrani u X. Kako ovo može biti urađeno mašinskim instrukcijama? Neka varijablama X i Y odgovaraju lokacije 513 i 514. Pod pretpostavkom korištenja jednostavnog seta mašinskih instrukcija, ova se operacija može izvršiti pomoću tri instrukcije: 1. U registar učitati sadržaj memorijske lokacije Dodaj sadržaj memorijske adrese 514 registru. 3. Pohraniti sadržaj registra u memorijsku lokaciju 513. U ovom primjeru jedna BASIC instrukcija zahtijeva tri mašinske, što je uobičajeno kod odnosa između jezika visokog nivoa i mašinskog. Jezik visokog nivoa izražava operacije u sažetom algebarskom obliku, koristeći varijable. Mašinski jezik izražava operacije u osnovnom obliku koji uključuje premještanje podataka u ili iz registra. Računar bi trebao imati set instrukcija koje omogućavaju korisniku da formulira bilo kakav zadatak obrade podataka. Da bi se izvršavao, svaki program napisan u jeziku visokog nivoa se mora prevesti u mašinski. Zato set mašinskih instrukcija mora biti dovoljan da izrazi sve instrukcije jezika visokog nivoa. Instrukcije se kategoriziraju u: - obrada podataka: aritmetičke i logičke instrukcije - pohrana podataka: premještanje podataka u ili iz registra i ili memorijskih lokacija - premještanje podataka: I/O instrukcije - kontrola: instrukcije testiranja i grananja Aritmetičke obezbjeđuju obradu numeričkih podataka. Logičke (Boolove) operišu bitovima kao bitovima a ne brojevima. Zato obezbjeđuju sposobnosti obrade bilo kojeg tipa podatka koji korisnik zatraži. Ove se operacije izvode primarno nad podacima u registrima procesora. Zato moraju postojati memorijske instrukcije za premještanje podataka između memorije i registara. I/O instrukcije su potrebne za prenos programa i podataka u memoriju i rezultata izračunavanja nazad korisniku. Testne instrukcije se koriste za provjeru vrijednosti podatkovne riječi ili statusa izračunavanja. Instrukcije grananja se koriste za prelazak na drugačiji set instrukcija u zavisnosti od odluke. Broj adresa Opisivanje arhitekture procesora može biti preko broja adresa koje su sadržane u svakoj instrukciji. Koji je najveći broj adresa koje sadržava instrukcija? Aritmetičke i logičke instrukcije trebaju najviše operanada. Aritmetičke i logičke su unarne (1) ili binarne (2 izvorna operanda). Zato je najviše potrebno dvije adrese za referenciranje izvornih operanada. Rezultat operacije mora biti pohranjen na treću adresu koja definiše odredišni operand. Nakon završetka instrukcije, mora biti dobavljena sljedeća, te je potrebna njena adresa. Dakle, instrukcija može sadržavati najviše četiri adrese: dvije za izvorne operande, jednu za odredišni, i adresu sljedeće instrukcije. Većina instrukcija ima 1, 2 ili 3 adrese operanada, pri čemu je adresa sljedeće instrukcije implicitna (od programskog brojača). Arhitektura može imati instrukcije specijalne namjene (više operanada). Npr., višestruke instrukcije učitavanja i pohranjivanja ARM arhitekture mogu imati do 17 registarskih operanada u jednoj instrukciji. 22

24 Uspoređivanje jedno-, dvo- i tro-adresne instrukcije, primjer: Y = (A B) / [C + (D E)]. Tri adrese: instrukcija određuje 2 izvorna i 1 odredišni operand. Izabrano je nemijenjanje vrijednosti lokacija bilo kojeg operanda, pa se privremena lokacija (T) koristi za pohranu međurezultata. Treba primijetiti: 4 su instrukcije, a početni izraz ima 5 operanada. Tro-adresni instrukcijski formati nisu uobičajeni, jerzahtijevaju relativno dug instrukcijski format za tri adrese referenci. 2-adresne instrukcije: jedna adresa se koristi dvostruko (i kao operand i kao rezultat). Instrukcija SUB Y, B izračunava Y B i pohranjuje rezultat u Y. 2-adresni format reducira potreban prostor, ali i unosi nespretnost. Radi izbjegavanja promjene vrijednosti operanda, instrukcija MOVE prenosi jednu od vrijednosti u rezultat ili privremenu lokaciju prije izvođenja operacije. Na taj način, početni primjer ima šest instrukcija. 1-adresne instrukcije: karakteristika ranijih mašina. Kako bi sve radilo kako treba, druga adresa mora biti implicitna. To je podrazumijevana adresa-procesorski registar akumulator AC. AC sadrži jedan od operanada, koristi se za pohranjivanje rezultata. U gornjem primjeru potrebno je 8 instrukcija za izvršenje zadatka. Sve je ovo mogu će uraditi sa 0-adresnim instrukcijama. Primjenjuju se specijalne memorijske organizacije - stek. To je LIFO skup lokacija. Stek je na poznatoj lokaciji. Često najmanje dva gornja elementa su u registrima procesora. Zato, 0-adresne instrukcije upućuju na dva gornja stek elementa. Primjer: izvodi se operacija sa 2 izvorna i 1 rezultujućim operandom. 23

25 Tipovi operanada Mašinske instrukcije se primjenjuju nad podacima. Najvažnije opće kategorije podataka su: - adrese - brojevi - karakteri - logički podaci. Adrese su u stvari oblik podataka. Često se mora sprovesti izračunavanje na referenci operanda u instrukciji radi određivanja adrese glavne ili virtualne memorije. Zato se adrese mogu razmatrati kao cijeli brojevi bez predznaka. Brojevi Svi mašinski jezici uključuju numeričke tipove podataka. Čak i kod obrade nenumeričkih, postoji potreba za brojevima koji se koriste kao brojači, širine polja i sl. Važna razlika između brojeva koji se koriste u običnoj matematici i onih pohranjenih u računaru, je da su ovi drugi ograničeni. Ovo je istinito u dva smisla: 1. postoji ograničenje dimenzije brojeva u računaru, 2. brojevi sa pomičnim zarezom = postoji ograničenje preciznosti. Zato, programer mora razumjeti posljedice: - zaokruživanja, - prekoračenje vrijednosti (overflow) i - suviše malih rezultata (underflow). U računarima su najčešća 3 tipa numeričkih podataka: - binarni cijeli ili binarni sa fiksnim zarezom - binarni sa pomičnim zarezom - decimalni. Kompjuterske operacije binarne prirode, ljudi rade sa decimalnim brojevima. Zato se rade pretvaranja decimalnih u binarne na ulazu i binarnih u decimalne na izlazu. Najčešća reprezentacija je pakirani (kodirani) decimalni. Svaka decimalna cifra se predstavlja 4-bitnim kodom, tako da jedan bajt pohranjuje dvije cifre. Zato, 0 = 0000, 1 = 0001,..., 2 = 0010, 3 = 0011, 4 = 0100, 5 =0101, 6 = 0110, 7 = 0111, 8 = 1000, i 9 = Za kreiranje brojeva, 4-bitni kodovi se zajedno nižu, obično u sadržioce od 8 bitova. Npr., za 246 kod je Negativni brojevi se predstavljaju uključivanjem 4-bitne cifre predznaka ili na lijevom ili desnom kraju BCD niza. Standardne vrijednosti za predznak su: 1100 za + i 1101 za -. 24

26 Karakteri Opća forma podataka su tekstualni ili simbolički nizovi. Tekstualni podaci su najpogodniji za ljude. Ne mogu se jednostavno pohraniti, obraditi, prenijeti komunikacijskim sistemima. Takvi sistemi su projektovani za binarne podatke. Zato postoje kodovi kojima se simboli predstavljaju nizom bitova. Danas najčešći kod je International Reference Alphabet (IRA), u SAD-u poznat kao American Standard Code for Information Interchange (ASCII). Svaki simbol se predstavlja jedinstvenim 7-bitnim obrascem. Znači, može se predstaviti 128 različitih simbola. To je više od potrebnog za predstavljanje simbola za ispis. Neki od obrazaca predstavljaju kontrolne simbole: tiču se kontrole i ispisa simbola na stranici, te komunikacijskim procedurama. IRA-simboli se pohranjuju i prenose pomoću 8 bitova po simbolu. Osmi bit može biti postavljen na nulu ili se koristi kao bit jednakosti za otkrivanje greške. Drugi sistem kodiranja je Extended Binary Coded Decimal Interchange Code (EBCDIC). Koristi se u IBM mainframe-ovima. To je 8-bitni kod. Kompatibilan je sa pakiranim decimalnim. Kodovi od do predstavljaju cifre od 0 do 9. Logički podaci Riječ (bajt, poluriječ i sl.) se tretira kao jedna podatkovna jedinica. Ponekad je korisno razmatrati da se n-bitna jedinica sastoji od n jednobitnih elemenata podatka, pri čemu svaki element ima vrijednost 0 ili 1. Ako se podaci ovako posmatraju, onda su to logički podaci. Dvije su prednosti ovog načina: 1. nekad se može zahtijevati pohranjivanje Bulovih ili binarnih podatkovnih elemenata, a svaki je 1 (istina) ili 0 (laž). Sa logičkim podacima, memorija za pohranjivanje se najefikasnije koristi. 2. Postoje slučajevi manipuliranja bitovima podatkovnog elementa. Npr.: pretvaranje iz IRA u pakovano decimalni; potrebno je izvući 4 krajnja desna bita svakog bajta. U ovim primjerima podaci se nekad tretiraju kao logički a nekad kao brojčani ili tekstualni. Tip jedinice podatka se određuje operacijom koja se izvodi. Dok ovo nije redovno u jezicima visokog nivoa, skoro uvijek jeste kod mašinskog jezika. Tipovi operacija Broj različitih opkodova zavisi od mašine. Međutim, na svim mašinama se mogu naći isti opći tipovi operacija: - prenos podataka - aritmetičke - logičke - operacije pretvaranja - I/O - operacije sistemske kontrole - operacije kontrole prenosa 25

27 Prenos podataka To je fundamentalni tip mašinske instrukcije. Ona mora specificirati nekoliko stvari: 1. specificiranje lokacije izvornog i ishodišnog operanda. (Svaka lokacija može biti memorija, registar ili vrh steka.) 2. mora se naznačiti dužina podataka koji se prebacuju. 3. kao kod svih instrukcija sa operandima, mora specificirati način adresiranja svakog operanda. Izbor instrukcija podatkovnog prenosa u instrukcijski set mora napraviti projektant. Npr., opća lokacija (memorija ili registar) operanda može se naznačiti ili specificiranjem opkoda ili operanda. Sa nivoa procesora, operacije prenosa su najjednostavniji tip. Ako su i početak i odredište registri, procesor samo izaziva prenos iz jednog u drugi registar, što je unutrašnja operacija procesora. Ako je jedan ili oba operanda u memoriji, onda procesor mora: 1. izračunati memorijske adrese, na osnovu načina adresiranja 2. ako se adresa odnosi na virtualnu memoriju, prevođenje virtualne u stvarnu memorijsku adresu 3. određivanje da li je adresirani element u kešu 4. ako nije, izdavanje komande memorijskom modulu. Aritmetičke operacije Mašina izvršava osnovne aritmetičke operacije: +, -, *, /. Koriste se i instrukcije koje se izvode nad jednim operandom. To su: - apsolutna vrijednost: uzima apsolutnu vrijednost operanda - negacija: negativna vrijednost operanda - uvećanje: dodaje 1 operandu - smanjenje: od operanda se oduzima 1 Izvršavanje aritmetičke instrukcije može uključivati operacije prenosa podataka radi pozicioniranja operanada na ALU ulaz i izdavanje izlaza iz ALU. Logičke operacije Mašina koristi različite operacije za manipuliranje pojedinim bitovima riječi ili drugim adresibilnim jedinica. Zasnivaju se na Bulovim operacijama. Logičke operacije se izvode na Bulovim (binarnim) podacima. Operacija NOT izokreće bit. AND, OR i XOR (ekskluzivno OR) su najčešće logičke funkcije sa dva operanda. EQUAL je koristan binarni test. Logičke operacije se mogu primijeniti na 1 ili n bitova podatka. 26

28 Zato, ako dva registra sadrže podatke: (R1) = , (R2) = Onda, (R1) AND (R2) = Zapis (X) znači sadržaj lokacije X. Zato se operacija AND može koristiti kao maska koja bira određene bitove u riječi a nuluje ostale bitove. Npr.2, ako dva registra sadrže: (R1) = , (R2) = Onda, (R1) XOR (R2) = Kada su u jednoj riječi sve jedinice, operacija XOR izvrće sve bitove druge riječi (jednostruki komplement). Većina mašina sadrži različite funkcije premještanja i rotiranja. Logičkim premještanjem bitovi se premještaju lijevo ili desno. Na jednom kraju, premješteni bit se gubi. Na drugom kraju, ulazi 0. Logička premještanja su korisna za izoliranje polja unutar riječi. Nule koje se premještaju u riječ premještaju neželjene informacije koje se gube na drugom kraju. Npr., prenijeti simbole podataka na I/O po jedan simbol odjednom. Neka je memorijska riječ duga 16 bitova i sadrži dva simbola, prije slanja simboli se moraju raspakovati. Za slanje dva simbola u riječi, treba: 1. učitati riječ u registar. 2. pomjeriti se udesno 8 puta. Time se premješta preostali simbol u desnu polovinu registra 3. Izvodi se I/O. I/O čita donjih 8 bitova sa podatkovne sabirnice. Ovi koraci rezultiraju slanjem lijevog simbola. Za slanje desnog treba: Za slanje desnog, treba: 1. ponovo učitati riječ u registar. 2. izvršiti operaciju AND sa Na ovaj način se sakriva (maskira) simbol na lijevoj strani. 3. izvodi se I/O. Aritmetičko premještanje tretira podatke kao cijele brojeve sa predznakom i ne premješta bit predznaka. Desno aritmetičko premještanje:bit predznaka se replicira u poziciju udesno. Lijevo aritmetičko premještanja:izvodi se lijevo premještanje na svim osim na bitu predznaka. Ove operacije mogu ubrzati određene aritmetičke operacije. 27

29 Rotiranje (ciklično premještanja): zadržava sve bitove s kojima se radilo. Operacije pretvaranja Operacije konverzije mijenjaju format ili rade na formatu podatka. Npr.1, pretvaranje decimalnih u binarne: EAS/390 instrukcija prevođenja (TR): - Može se koristiti za pretvaranje 8-bitnog koda u drugi. - Treba tri operanda: TR R1 (L), R2. - Operand R2 sadrži adresu početka tabele 8-bitnih kodova. - L bajtova, koji počinju na adresi definisanoj u R1, se prevodi. - Svaki se bajt zamjenjuje sadržajem reda tabele indeksiranogtim bajtom. Npr., prevođenje EBCDIC u IRA, prvo se kreira 256-bajt tabela na memorijskim lokacijama, na primjer, FF heksadecimalno. Tabela sadrži simbole u IRA kodu u nizu binarne reprezentacije EBCDIC koda (IRA kod je smješten u tabelu na relativnoj lokaciji koja je jednaka binarnoj vrijednosti EBCDIC koda istog simbola). Zato lokacije 10F0-10F9 sadržavaju vrijednosti jer F0 je EBCDIC kod za cifru 0, a 30 je IRA kod za cifru 0, itd. do cifre 9. Neka EBCDIC za cifre 1984 počinje na lokaciji Treba se prevesti u IRA. Sljedeće su pretpostavke: - Lokacije sadrže F1 F9 F8 F4. - R1 sadrži R2 sadrži Ako se izvrši TR R1 (4), R2 lokacije će sadržavati

30 Ulazno-izlazne operacije Koriste se različiti pristupi koji uključuju: - izolirane programirane I/O, - memorijski-preslikane programirane I/O, - DMA, te - korištenje I/O procesora. Mnoge implementacije omogućavaju samo nekoliko I/O instrukcija sa specifičnim aktivnostima koje definišu parametri, kodovi ili komandne riječi. Operacije sistemske kontrole Izvršavaju se samo dok je procesor u određenom povlaštenom stanju ili izvršava program u specijalnom povlaštenom području memorije. Obično, ove su instrukcije rezervisane za operativni sistem. Pr.1, instrukcija sistemske kontrole može čitati ili mijenjati kontrolni registar. Pr.2, instrukcija koja čita ili mijenja zaštitni ključ za pohranjivanje. Pr.3, pristup procesnom kontrolnom bloku u multiprogramskom sistemu. Prenos kontrole Za spomenute tipove operacija, sljedeća instrukcija je ona koja je neposredno iza one koja se trenutno izvršava. Međutim, značajan dio instrukcija u svakom programu imaju, kako se njihova funkcija mijenja, niz instrukcijskih izvršavanja. Za ove instrukcije, procesor mora ažurirati programski brojač koji sadrži adresu neke instrukcije u memoriji. Najvažniji razlozi zašto se zahtijevaju operacije prenosa kontrole: 1. U praktičnoj upotrebi računara, bitno je biti u stanju izvršavati svaku instrukciju više od jednom, čak i nekoliko hiljada puta. Može se, pri radu aplikacije, zahtijevati hiljade ili milioni instrukcija.ovo bi bilo nezamislivo ako se svaka instrukcija piše posebno.ako je u pitanju tabela ili lista elemenata koje treba obraditi, potrebna je programska petlja. Izvršava se jedan niz instrukcija više puta kako bi se obradili svi podaci. 2. Praktično svi programi uključuju odlučivanje. Potreba je da računar uradi jedno ako je zadovoljen jedan uslov, ili drugo ako vrijedi drugi uslov. Npr., niz instrukcija izračunava kvadratni korijen broja. Na početku niza ispituje se predznak broja. Ako je broj negativan, ne izvodi se izračunavanje, ali se prijavljuje greška. 3. Pravilno kreiranje velikog ili srednjeg računarskog programa je veoma težak zadatak. Pomaže ako postoje mehanizmi razdvajanja zadatka na manje dijelove koji se mogu raditi jedan po jedan. 29

31 Adresiranje Adresna polja u tipičnom formatu su relativno mala, a mi želimo velik raspon lokacija u memoriji. Kako bi se ovo postiglo koriste se raznovrsne tehnike adresiranja. Uključuju neku razmjenu između adresnog raspona i broja reference u instrukciji. Najčešće tehnike adresiranja su: neposredno, direktno, indirektno, registarsko, indirektno registarsko, premjestanje, stek. Koristi se sljedeća notacija: - A - sadržaj adresnog polja u instrukciji - R - sadrzaj adresnog polja u instrukciji koja upucuje na registar - EA - stvarna adresa lokacije koja sadrzi referencirani operand - X - Sadrzi memorijsku lokaciju X ili registar X. Vrijednost polja načina određuje koji ce se način adresiranja koristiti. U sistemu bez virtualne adrese EA je ili registar ili memorijska adresa. Kod sistema sa virtualnom memorijom ona je virtualna adresa ili registar. Neposredno adresiranje je najjednostavniji oblik adresiranja u kojoj se vrijednost operanda nalazi u instrukciji. Može se koristiti za definisanje konstanti ili postavljanje početne vrijednosti varijabla. Direktno adresiranje je veoma jednostavna forma adresiranja u kojoj adresno polje sadrži stvarnu adresu operanda EA. Uobičajena je kod starijih generacija računara. Indirektno adresiranje je imati adresno polje koje se odnosi na adresu riječi u memoriji koja sadrži punu adresu operanda. Nedostatak ovog pristupa je da izvršavanje instrukcije zahtijeva dvije memorijske reference za dohvatanje operanda. Adresiranje registra je slično direktnom adresiranju. Jedina razlika je što se adresno polje odnosi na registar, a ne na adresu u glavnoj memoriji. Prednost ovog pristupa je to što je unutar instrukcije potrebno malo adresno polje. Ne zahtijevaju se dugotrajne memorijske reference jer je vrijeme pristupa procesorskim registrima mnogo manje nego glavnoj memoriji. Adresni prostor je veoma ograničen. Registarsko indirektno adresiranje je isto kao i registarsko adresiranje analogno direktnom, tako je i registarsko indirektno analogno indirektnom adresiranju. Jedina razlika je da li se adresno polje odnosi na memorijsku lokaciju ili registar. EA=R. Adresiranje sa pomakom je moćan način adresiranja koji kombinuje mogćnosti direktnog I registarskog indirektnog adresiranja. Označava se kao adresiranje sa pomakom EA= A +R. Zahtijeva dva adresna polja od kojih je jedno eksplicitno. Tri najčešća korištenja adresiranja sa pomakom su: - Relativno adresiranje - Adresiranje bazirano na registru - Indeksiranje Za relativno adresiranje implicitni registar je programski brojač. Adresiranje je bazirano na registru i radi tako što referencirani registar sadrži adresu u glavnoj memoriji, a adresno polje sadrži pomak od te adrese. Referenca može biti eksplicitna ili implicitna. Tumačenje indeksiranja je: adresno polje referencira adresu u glavnoj memoriji, a referencirani registar sadrži pozitivan pomak od te adrese. 30

32 Indeksiranje se koristi kao efikasan mehanizam za izvođenje iterativnih operacija. Pošto se koristi za iterativne zadatke tipična potreba je za povećavanje ili smanjivanje indeksnog registra nakon svakog referenciranja. Neki sistemi to automatski rade i to se zove autoindeksiranje. Kod nekih mašina obezbjeđuju se indirektno adresiranje i indeksiranje, i moguće ih je upotrijebiti u istoj instrukciji. Može se izvoditi prije ili poslije indirekcije. Ako se izvršava posije onda se zove postindeksiranje. Kod preindeksiranja indeksiranje see izvodi prije indirekcije. Stek adresiranje Stek je linerni red lokacija. Ponekad se označava kao lista na dolje ili first in last out sistem. To je rezervisan blok lokacija. Stek pokazivač se održava u registru. Stek adresiranje je oblik implicitnog adresiranja. Instrukcijski format definiše raspored instukcijskih bitova u smislu njenih sastavnih polja. Svaki mora uključiti opkod implicitno ili eksplicitno, nula ili više operanada. Koristi se više instrukcijskih formata. Dužina instrukcije se odnosi na projektovanje instrukcije. Na ovu odluku utiče memorija, organizacija, struktura sabirnice, složenost procesora i njegova brzina. Konflikt se stvara između želje za jakim instrukcijskim setom i potrebe uštede na prostoru. Sve ide se na to da bude veća dužina instrukcije, međutim to može biti štetno. Dodjeljivanje bitova Sljedeći međusobno povezani faktori služe za određivanje svrshe i koristenja bitova adresiranja. 1. Broj načina adresiranja: može se odrediti implicitno, određeni opkodovi mogu biti pozvani na indeksiranje. 2. Broj operanada: manje adrese čine program dužim, što stvara neugodnost. Tipično su pravljene za dva operanda 3. Registar nasuprot memorije: mašina mora imati registar kako bi podaci bili sprovedeni u procesor na obradu. Većina današnjih arhitektura ima najmanje dva registra. Potrebno je nekoliko bitova za specificiranje registra. 4. Broj registarskih skupova: većina racunara ima skup registara opće namjene. Oni se mogu koristiti za pohranu podataka ili adresiranje sa pomakom. Neke arhitekture imaju dva ili više specijalizovanih kompjutera. 5. Adresno područje: za adrese koje referenciraju memoriju, područje adresa koje mogu biti referencirane povezano je sa brojem adresnih bitova.adresiranje sa pomakom područje je pogodno za adresni registar. 6. Adresna granulacija: za adrese koje referenciraju memoriju a ne registre, važan je faktor granulacije adresiranja. Adresa moze referencirati na riječ ili bajt. Bajt je za manipuliranje karakterima. 31

33 Struktura i funkcija procesora Organizacija procesora Organizacija procesora zavisi od poslova koje obavlja: - Dobavljanje instrukcije: procesor čita instrukciju iz memorije (registar, keš, glavna memorija). - Prevođenje instrukcije: radi određivanja aktivnosti. - Dobavljanje podataka: izvršavanje instrukcije može zahtijevati podatke iz memorije ili I/O. - Obrada podataka: izvršavanje instrukcije može zahtijevati izvođenje aritmetičkih ili logičkih operacija nad podacima. - Upisivanje podataka: rezultati izvršavanja mogu zahtijevati upisivanje podataka u memoriju ili I/O modul. Da bi ovo uradio procesor mora privremeno pohraniti podatke. Mora znati lokaciju posljednje instrukcije da zna gdje naći sljedeću. Mora privremeno sačuvati instrukcije i podatke dok se jedna izvodi. Znači, procesoru je potrebna mala interna memorija kao veza procesora sa ostatkom sistema preko sistemske sabirnice. Glavne komponente procesora su: - ALU vrši stvarno izračunavanje, odnosno obradu podataka - CU kontrola prenosa podataka/instrukcija u/iz procesora i rad ALU. - najmanja unutrašnja memorija - registri. U putanje prenosa podataka i logičke kontrole uključena je i unutrašnja sabirnica procesora. Ona je potrebna za prenos podataka između različitih registara i ALU, jer ALU radi samo sa podacima iz unutrašnje memorije procesora. Sličnost između unutrašnjih struktura čitavog računara i procesora je to što postoji skup osnovnih elemenata povezanih putanjama podataka. Organizacija registra Hijerarhija memorija viši nivoi brža, manja i skuplja (po bitu). Unutar procesora su registri - memorijski nivo iznad RAMa i keša. Dvije su uloge (vrste) registara: - Korisniku vidljivi registri: programeru niskog novoa minimiziraju pozive ka glavnoj memoriji (optimizacija iskoristivosti registara). - Kontrolni i statusni registri: kontrolna jedinica za kontrolu procesora i privilegovani programi OSa za kontrolu izvršavanja programa. Ne postoji jasna podjela registara u ove dvije kategorije. Npr., programski brojač kod x86 je prva a kod većine ostalih druga grupa. Korisniku vidljivi registri Mogu biti referencirani pomoću mašinskog jezika, a izvršava CPU. Kategorije su: - Registri opće namjene (RON) - Podatkovni registri - Adresni registri - Uslovni registri (condition codes). 32

34 Programer može dodijeliti RONove različitim funkcijama. Nekad se unutar instrukcijskog seta koriste ortogonalno na operaciju. Znači da bilo koji RON može sadržavati operand za bilo koji opkod. Time se obezbjeđuje stvarna opća namjena registra. Međutim, često postoje ograničenja. Na primjer, mogu biti registri za operacije sa pokretnim zarezom i stek operacije. Podatkovni registri koriste se samo za držanje podataka, ali ne i za izračunavanje adrese operanda. Adresni registri u neku ruku mogu biti opće namjene, ili mogu biti za određeni način adresiranja. Na primjer: - Indeksni registri: koriste se za indeksno adresiranje i mogu biti autoindeksirani. - Stek pokazivač: ako postoji stek adresiranje vidljivo korisniku, onda je to obično registar koji pokazuje na vrh steka. Ovim se dozvoljava implicitno adresiranje. Postoje tri projektantska pitanja: 1. da li koristiti RONove ili specijalizirani? 2. koliko registara obezbijediti, RONova ili podatkovni + adresni? 3. kolika je registarska dužina? Odgovor 1.: Kada se koriste specijalizirani registri, može se obuhvatiti u opkodu na koji tip registara se odnosi specifikator operanda. Specifikator identificira samo jedan skup specijaliziranih registara, a ne jedan od svih registara, čime se štede bitovi. S druge strane, ova specijalizacija ograničava fleksibilnost programera. Odgovor 2.: utiče na dizajn instrukcijskog seta jer više registara zahtijeva više bita specifikatora operanda. Negdje između 8 i 32 registra je optimum. Manje registara rezultira sa više memorijskih referenci; više registara značajno ne smanjuje memorijske reference. Odgovor 3.: adresni registri očigledno moraju biti dovoljno veliki da drže najdužu adresu. Podatkovni registri morali bi moći držati vrijednosti većina tipova podataka. Neke mašine dozvoljavaju korištenje dva susjedna registra kao jednog za držanje vrijednosti duple dužine. Uslovni registri su najmanje vidljivi korisniku. Sadrže uslovne kôdove ili zastavice. Uslovni kodovi su bitovi koje postavlja CPU hardver kao rezultat operacije. Npr., aritmetička operacija može stvoriti rezultat koji je +, -, 0, ili prekoračena vrijednost. Mašinske instrukcije dozvoljavaju programeru da čita ove bitove preko implicitne reference ali ne i da ih mijenja. Kontrolni i statusni registri Različiti registri vrše kontrolu operacija procesora. Većina njih nije vidljiva korisniku. Naravno, različite mašine imaju različite organizacije registara i koriste različitu terminologiju. Četiri tipa registara su bitna za izvršavanje instrukcija: - Programski brojač (PC): sadrži adresu instrukcije koja treba biti učitana - Instrukcijski registar (IR): sadrži instrukciju koja je zadnja učitana - Memorijski adresni registar (MAR): sadrži adresu lokacije u memoriji - Memorijski bafer registar (MBR): sadrži riječ podatka koji se upisuje u memoriju ili riječ koja je nedavno učitana. Nemaju svi procesori MAR i MBR registre, ali mora biti ekvivalentan mehanizam međuskladištenja. Potreban je za sređivanje bitova koji se prebacuju na sistemsku sabirnicu i za privremeno pohranjivanje bitova koji se učitavaju sa podatkovne sabirnice. Obično procesor ažurira PC poslije svakog dohvatanja instrukcije. Tako, PC uvijek pokazuje na sljedeću instrukciju izvršavanja. Instrukcija grananja ili skoka također mijenja sadržaj PC-a. Učitana instrukcija se smješta u IR, gdje se analiziraju specifikatori opkoda i operanda. Podaci se razmjenjuju sa memorijom korištenjem MAR i MBR. U sistemu sa bus- 33

35 organizacijom, MAR direktno povezuje na adresnu sabirnicu, a MBR na podatkovnu. Korisnički vidljivi registri razmjenjuju podatke sa MBR. Može biti i program status word PSW registar(i) koji sadrži statusne informacije. Obično sadrži uslovni kôd kao i druge statusne informacije. Zajednička polja ili zastavice uključuju: - Sign: sadrži bit predznaka rezultata posljednje aritmetičke operacije. - Zero: postavlja se kad je rezultat 0. - Carry: postavlja se ako operacija rezultira sabiranjem ili oduzimanjem najvećeg bita. Koristi se za višeriječne aritmetičke operacije. - Equal: postavlja se ako je rezultat logičkog upoređivanja jednakost. - Overflow: koristi se za prikaz aritmetičkog prekoračenja. - Interrupt enable/disable: koristi se za omogućavanje ili onemogućavanje prekida. - Supervisor: ukazuje da li se procesor izvršava u supervizorskomili korisničkom modu. Određene privilegovane instrukcije mogu se izvršavati samo u supervizorskom modu, i određenim memorijskim područjima se može pristupiti samo u supervizorskom modu. Instrukcijski ciklus Već je rečeno da se instrukcijski ciklus uključuje sljedeća stanja: - Dobavljanje: učitavanje sljedeće instrukcije iz memorije u procesor. - Izvršavanje: prevođenje opkoda i izvođenje naznačene operacije. - Prekid: ako su dozvoljeni i ako se prekidi pojave, spašava se trenutno stanje procesa i uslužuje se prekid. Već viđeno: izvršavanje može uključiti jedan ili više operanada iz memorije. Znači, zahtijeva se pristup memoriji. Ako je indirektno adresiranje dobijaju se dodatni pristupi memoriji. Učitavanje indirektne instrukcije = jedno ili više stanja instrukcije. Glavna linija aktivnosti=naizmjenična učitavanja i izvršavanja. Nakon učitavanja, pregledava se postojanje indirektnog adresiranja. Ako ima, učitavaju se operandi korištenjem indirektnog adresiranja. Prateći izvršavanje, može se obrađivati prekid prije učitavanja sljedeće instrukcije. Drugačiji pogled - priroda ciklusa instrukcije. Poslije učitavanja, određuju se specifikatori operanada. Onda se učitavaju ulazni operandi. To može zahtijevati indirektno adresiranje. Operandi bazirani na registru se ne trebaju učitavati. Nakon izvršenja opkoda, možda će biti potreban sličan proces za pohranu rezultata u glavnu memoriju. Tok obrade Slijed izvršavanja instrukcijskog ciklusa zavisi od procesora.opći opis: neka procesor koristi MAR, MBR, PC i IR.Tokom ciklusa dobavljanja, instrukcija se učitava iz memorije. PC sadrži adresu sljedeće instrukcije koju treba učitati. Adresa se premješta u MAR i smješta na adresnu sabirnicu. Kontrolna jedinica zahtijeva čitanje memorije, rezultat se smješta na podatkovnu sabirnicu, kopira u MBR, i premješta u IR. U međuvremu, PC se povećava za 1, pripremajući se za sljedeće učitavanje. Ciklus učitavanja završen, CU pregledava IR kako bi se utvrdilo postojanje specifikatora operanda koristeći indirektno adresiranje. Ako da, izvodi se indirektni ciklus. N krajnjih desnih bitova MBR-a, 34

36 koji sadrže adresnu referencu, prebacuju se u MAR. Onda kontrolna jedinica zahtijeva čitanje memorije, kako bi se dobila tražena adresa operanda u MBR-u. Prekidni ciklus: trenutni sadržaj PC-a mora bit spašen tako da proces može povratiti normalnu aktivnost nakon prekida. Zato se sadržaj PC-a prenosi u MBR radi upisivanja u memoriju. Posebna memorijska lokacija koja je rezervisana u tu svrhu, učitava se u MAR iz kontrolne jedinice (npr. stek pokazivač). U PC se učitava adresa prekidne rutine. Kao rezultat, sljedeći instrukcijski ciklus će početi učitavanjem odgovarajuće instrukcije. Instrukcijski pipelining Razvoj računara prati poboljšanje njegovih performansi koje su postignute korištenjem tehnoloških poboljšanja (npr. brže kolo). Organizacijska poboljšanja također poboljšavaju performanse. Npr., korištenje više registara umjesto samo jednog akumulatora, ili korištenje keša. Još jedan organizacijski pristup koji je veoma čest je instrukcijski pipelining. Sličan je korištenju asemblerske linije u proizvodnji. Njena prednost je što proizvod prolazi kroz različite faze proizvodnje. Znači, istovremeno se radi na različitim fazama obrade. Već znamo da instrukcija ima brojna stanja. Koliko stanja koji se pojavljuju jedan iza drugog u nizu? Jasno je da je moguće uvođenje pipelining-a. Najjednostavniji pristup je instrukcija u 2 faze: učitavanje i izvršavanje. Postoje intervali tokom izvršavanja kada se ne pristupa RAM-u. Ovo bi se vrijeme moglo iskoristiti za učitavanje sljedeće instrukcije paralelno sa izvršavanjem trenutne. Pipeline ima dvije nezavisne faze. - Prva faza: dobavljanje instrukcije i baferovanje. - Druga faza: izvršavanje instrukcije. Prva faza koristi prednost neiskorištenih memorijskih ciklusa za učitavanje i baferovanje sljedeće instrukcije. Ovo je instrukcijsko predučitavanje ili preklapanje učitavanja. Ovaj pristup, uključuje instrukcijsko baferovanje, zahtijeva više registara. U općem slučaju, pipelining zahtijeva registre za pohranjivanje podatka između faza. Jasno je da će ovaj proces ubrzati instrukcijsko izvršavanje. Ako faze učitavanja i izvršavanja jednako traju, vrijeme instrukcijskog ciklusa će biti prepolovljeno. 35

37 Međutim, ako se bolje pogleda pipeline, najvjerovatnije neće doći do udvostručavanja brzine izvršavanja iz dva razloga: 1. Uopće, vrijeme izvršavanja je duže od vremena učitavanja. Izvršavanje čini: učitavanje i pohranjivanje operanada i izvođenje neke operacije. Zato faza učitavanja će možda trebati čekati prije pražnjenja bafera. 2. uslovno grananje = nepoznata adresa sljedeće instrukcije. Zato učitavanje čeka adresu sljedeće instrukcije od izvršavanja, pa će možda čekati izvršavanje da se dobavi sljedeća instrukcija Pogađanje može smanjiti gubitak vremena zbog drugog razloga. Jednostavno pravilo je: kada instrukcija uslovnog grananja pređe iz faze učitavanja na izvršavanje, faza učitavanja dobavlja sljedeću instrukciju iz memorije nakon instrukcije grananja. Ako grana nije uzeta, nema gubitka vremena. Ako je grana uzeta, mora se odbaciti dobavljena instrukcija, a dobaviti nova. Ovi faktori smanjuju potencijalnu efektivnost dvofaznog pipeline-a, ali ipak se pojavljuje nekakvo ubrzavanje. Za dodatno ubrzavanje, pipeline mora imati više faza. Razmotrimo sljedeću dekompoziciju instrukcijskog procesa: - Učitavanje instrukcije (FI): učitavanje sljedeće očekivane instrukcije u bafer. - Dekodiranje instrukcije (DI): određivanje opkoda i specifikatora operanda. - Izračunavanje operanda (CO): izračunavanje stvarne adrese svakog izvornog operanda. Ovo može uključiti pomak, registarsku indirekciju ili druge oblike izračunavanja adrese. - Učitavanje operanada (FO): učitavanje svakog operanda iz memorije. Operandi u registrima se ne trebaju učitavati. - Izvršavanje instrukcije (EI): izvodi se naznačena operacija i eventualno pohranjivanje rezultata na specificiranu odredišnu lokaciju operanda. - Upisivanje operanda (WO): pohranjivanje rezultata u memoriju. Dobiju se faze koje imaju približno isto vrijeme trajanja, npr., 6-fazni pipeline sa jednakim vremenima trajanja faza. Za 9 instrukcija skraćenje vremena izvršavanja sa 54 na 14 vremenskih jedinica. Pretpostavka je da svaka instrukcija prolazi kroz šest faza pipeline-a. Ovo uvijek nije slučaj (instrukcija učitavanja ne treba fazu WO). Radi pojednostavljenja pretpostavlja se da instrukcije imaju 6 faza. Sve faze se mogu izvoditi paralelno. Pretpostavljeno je da nema memorijskog konflikta. Npr., FI, FO i WO uključuju pristup memoriji. Podrazumijeva se ovi pristupi mogu biti istovremeni. Većina memorijskih sistema to ne dopušta. Međutim, tražena vrijednost može biti u kešu, ili FO ili WO faze mogu biti 0. Zato većinu vremena memorijski konflikti neće usporiti pipeline. I drugi faktori ograničavaju poboljšanje performansi: 1. šest faza nisu vremenski jednake = čekanje u brojnim fazama. 2. instrukcija uslovnog grananja, može poništiti neka učitavanja. 3. Sličan nepredviđeni događaj je prekid. 36

38 4. CO faza može zavisiti od sadržaja registra koji može biti promijenjen prethodnom instrukcijom koja je još u pipeline-u. Može se pojaviti i drugi takav registar te dolazi do pojave memorijskih konflikata. Sistem mora sadržavati logiku koja uzima u obzir ovaj tip konflikta. Čini se da je brže izvršavanje što pipeline ima više faza. Dva faktora narušavaju spomenuti obrazac povećanja performansi: 1. U svakoj fazi pipeline-a, postoji neki dodatak koji je sastavni dio premještanja podataka od bafera do bafera i izvođenja različitih funkcija pripremanja i dostavljanja. Ovaj dodatak može znatno produžiti ukupno vrijeme izvršavanja samo jedne instrukcije. Ovo je značajno kad su sekvencijalne instrukcije logički zavisne, ili preko značajnog korištenja grananja ili zavisnosti od pristupa memoriji. 2. Broj kontrola koje se zahtijevaju za rukovanje memorijskom i registarskom zavisnošću, te za optimiziranje pipeline-a enormno raste sa brojem faza. Desiće se da je logička kontrola prelaza između faza složenija od faza koje se kontrolišu. Instrukcijski pipeline je veoma dobra tehnika za poboljšanje performansi, ali zahtijeva pažljivo projektovanje kako bi se postigli optimalni rezultati uz umjerenu složenost. Superskalarni procesor Superskalar (1987.) odnosi se na mašinu koja je projektovanja za poboljšanje performansi izvođenja skalarnih funkcija. Operacije su najčešće nad skalarnim veličinama. Dakle, superskalarni pristup predstavlja sljedeći korak u razvoju performansi procesora opće namjene. Osnova pristupa je nezavisno i istovremeno izvršavanje u različitim pipeline-ima. Koncept se može proširiti dopuštanjem da se instrukcije izvršavaju redoslijedom koji se razlikuje od programskog redoslijeda. Superskalarni pristup: Ima više funkcionalnih jedinica, a svaka je implementirana kao pipeline te podržava paralelno izvršavanje nekoliko instrukcija. U ovom primjeru, dvije cjelobrojne, dvije sa pomičnim zarezom i jedna memorijska (učitavanje ili pohranjivanje) operacija se mogu istovremeno izvršavati. 37

39 Kontrolna jedinica Sljedeći elementi specificiraju funkciju procesor: - Operacije (opkodovi) - Načini adresiranja - Registri - Sučelje I/O modula - Sučelje memorijskog modula - Prekidi Operacije, adresiranje i registre definiše instrukcijski set, a sučelja I/O i memorijskog modula definiše sistemska sabirnica. Prekidi se specificiraju djelimično sistemskom sabirnicom, a djelimično vrstom podrške koju procesor daje operativnom sistemu. Ovo su funkcionalni zahtjevi za procesor. Oni određuju šta procesor mora uraditi. Pitanje je kako se ostvaruju ove funkcije, odnosno kako se kontrolišu različiti elementi procesora u svrhu provođenja ovih funkcija? Kontrolna jedinica je ta koja kontroliše procesorske operacije. Mikrooperacije Kompjuterska operacija se sastoji od niza instrukcijskih ciklusa, sa jednom mašinskom instrukcijom po ciklusu. Niz instrukcijskih ciklusa ne mora biti isti nizu instrukcija koje čine program, zbog postojanja instrukcija grananja. Svaki instrukcijski ciklus čine brojne manje jedinice (učitavanje, indirekcija, izvršavanje i prekid). Koji se od ovih ciklusa uvijek pojavljuje? Učitavanje i izvršavanje. Za projektovanje kontrolne jedinice potrebna je daljnja podjela. Već spominjani pipelining sugeriše da je dekompozicija moguća. U stvari, svaki od manjih ciklusa uključuje serije koraka, svaki korak uključuje procesorske registre. Ovi se koraci označavaju kao mikrooperacije (mikro znači da je svaki korak veoma jednostavan i radi veoma malo). Dakle:izvršavanje programa sastoji se od niza izvršavanja instrukcija. Svaka se instrukcija izvršava tokom instrukcijskog ciklusa.instrukcijski ciklus čine kraći podciklusi: - dobavljanje, - indirekcija, - izvršavanje, - prekid Podciklus uključuje jednu ili više kraćih operacija (mikrooperacije). Ciklus učitavanja Pojavljuje se na početku svakog instrukcijskog ciklusa. Izaziva učitavanje instrukcije iz memorije. Uključuje sljedeće registre: - MAR: spojen je na adresne linije sistemske sabirnice. Određuje adresu u memoriji za učitavanje ili upisivanje operacije. - MBR: spojen je na podatkovne linije sistemske sabirnice. Sadrži vrijednost koja će se pohraniti u memoriju, ili posljednju koja je dobavljena iz memorije. - PC: sadrži adresu sljedeće instrukcije koju treba učitati. 38

40 - IR: sadrži posljednju dobavljenu instrukciju. Na početku ciklusa učitavanja, adresa sljedeće instrukcije je u PC. - Prvi korak: prebaciti tu adresu u MAR, jedini registar povezan sa adresnom sistemskom sabirnicom. - Drugi korak: donošenje instrukcije. Adresa iz MAR-a se smješta na adresnu sabirnicu, a kontrolna jedinica izdaje komandu READ na kontrolnu sabirnicu, i rezultat se pojavljuje na podatkovnoj sabirnici i kopira se u MBR. Potrebno je povećati PC. Ove dvije aktivnosti međusobno se ne miješaju, mogu se uraditi istovremeno radi uštede vremena. - Treći korak: premještanje sadržaja MBR-a u IR. MBR se oslobađa zbog mogućeg indirektnog ciklusa. Znači: stvarni ciklus učitavanja se sastoji od 3 koraka i 4 mikooperacije.svaka mikrooperacija uključuje premještanje podataka u/iz registra. Sve dok se ova premještanja međusobno ne miješaju, nekoliko njih se može dešavati tokom jednog koraka štedeći vrijeme. Grupiranje mikrooperacija mora pratiti dva jednostavna pravila: 1. Mora se poštovati pravilan niz događaja. Zato (MAR (PC)) mora prethoditi (MBR memorija) jer operacija učitavanja iz memorije koristi adresu u MAR. 2. Konflikti se moraju izbjeći. Ne smije se učitavati i upisivati sa istog registra odjednom jer je rezultat nepredvidljiv. Na primjer, mikooperacije(mbr Memorija) i (IR MBR) ne bi se trebale pojaviti tokom iste vremenske jedinice. 39

41 Indirektni cklus Nakon dobavljanja instrukcije, dobavlja se izvorni operand. Pretpostavimo da imamo jednoadresni instrukcijski format, sa dozvoljenim direktnim i indirektnim adresiranjem. Ako instrukcija definiše indirekciju, onda ona prethodi izvršavanju. Potrebne mikrooperacije: t 1: MAR <- (IR(adresa)) t 2: MBR <- Memorija t 3: IR(adresa) <- (MBR(adresa)) t 1 adresno polje instrukcije se prenosi u MAR. t 2 ono se onda koristi za učitavanje adrese operanda t 3 na kraju, IR adresno polje se ažurira iz MBR-a, tako da je novi sadržaj direktna a ne indirektna adresa. Sad je IR u istom stanju kao da indirektno adresiranje nije korišteno i spreman je za ciklus izvršavanja. Ciklus prekida Nakon izvršavanja, radi se testiranje zbog određivanja pojave odobrenih prekida. Ako je tako, pojavljuje se ciklus prekida. Priroda ovog ciklusa razlikuje se od mašine do mašine. Na primjer: 1. korak: sadržaj PC-a se premješta u MBR (može se vratiti nakon prekida) 2. korak: MAR se puni adresom na kojoj je spašen sadržaj PC-a, a PC se puni adresom početka rutine obrade prekida. Ove dvije aktivnosti mogu pojedinačno biti mikrooperacije. Međutim, pošto većina procesora pruža više tipova i/ili nivoa prekida, može trebati jedna ili više mikooperacija za dobivanje spašavanje_adrese i adresa_rutine prije nego što budu prebačene u MAR i PC. 3. korak je pohrana MBR-a(sadrži staru PC vrijednost), u memoriju. 40

42 Ciklus izvršavanja Prethodna tri ciklusa su jednostavna i predvidljiva. Iste se mikooperacije ponavljaju svaki put.to nije kod ciklusa izvršavanja zbog različitih opkodova. Pojavljuju se brojni i različiti nizovi mikooperacija. Razmotrimo nekoliko hipotetičkih primjera. Prvi: ADD R1, X Šta radi ova instrukcija? Dodaje sadržaj lokacije X registru R1. Može se pojaviti sljedeći niz mikrooperacija: Počinje se od IR-a. On sadrži ADD instrukciju. 1. korak: adresni dio IR-ase puni u MAR. 2. korak: učitavanje referenciranememorijske lokacije. 3. korak: ALU sabire sadržaje R1 i MBR-a. Složeniji primjer: increment-and-skip-if-zero. Instrukcija povećanja i preskakanja ako je 0: ISZ X. Vrijednost lokacije X se povećava za 1. Ako je rezultat 0, sljedeća se instrukcija preskače. Mogući niz mikrooperacija je: Nova osobina je uslovna aktivnost:pc se uvećava ako je (MBR) = 0. Ovaj test i aktivnost mogu biti jedna mikooperacija. Ova mikooperacija se može izvesti tokom iste vremenske jedinice u kojoj je ažurirana MBR-vrijednost pohranjena nazad u memoriju. Treći primjer: branch-and-save-address. Instrukcija grananje-i-spašavanjeadrese: BSA X. Adresa instrukcije koja prati BSA instrukciju se spašava na lokaciji X, i izvršavanje se nastavlja na lokaciji X + I. Spašena adresa će poslije biti korištena za vraćanje. Koristi se za obezbjeđivanje poziva potprograma. Početak instrukcije: u PC je adresa sljedeće instrukcije u nizu. Ona je spašena na adresi koja je određena u IR. Potonja adresa se također povećava da obezbijedi adresu instrukcije za sljedeći instrukcijski ciklus. Znači: faze instrukcijskog ciklusa mogu se razložiti na elementarne mikrooperacije. Naš jednostavni primjer: po jedan niz za svaki ciklus: - prihvatanja, - indirekcije, i - prekida, 41

43 - za ciklus izvršavanja, jedan niz mikrooperacijaza svaki opkod. Za dobijanje big picture treba uvezati nizove mikoroperacija. Kontrola procesora funkcionalni zahtjevi Zaključak prethodne analize: dekompozicija rada procesorana elementarne mikooperacije. Ovo pomaže tačnom definisanju posla kontrolne jedinice. Zato se definišu funkcionalnizahtjeviza kontrolnu jedinicu (funkcije koje mora izvesti kontrolna jedinica). Definisanje funkcionalnih zahtjeva je osnova implementacije CU. Karakterizacija kontrolne jedinice se vrši na osnovu: - Definisanja osnovnih elemenata procesora(uradili) - Opisivanja mikooperacijakoje izvodi procesor (uradili) - Određivanja funkcija koje mora izvesti kontrolna jedinica da bi prouzročila izvođenje mikrooperacija(slijedi u nastavku) Kontrolna jedinica izvodi dva osnovna zadatka: - Sekvencioniranje: CU uzrokuje da procesor prolazi kroz niz mikrooperacija odgovarajućim redoslijedom, zasnovano na programu koji se izvršava. - Izvršavanje: CU uzrokuje da se svaka mikrooperacija izvede. Kontrolni signali Da bi izvela svoju funkciju CU mora imati: - ulaze pomoću kojih određuje stanje sistema, i - izlaze kojima kontroliše ponašanje sistema. Ovo su njene eksterne specifikacije. Iznutra, kontrolna jedinica mora imati logiku zahtijevanuza izvođenje njenih sekvencijalnihi izvršnih funkcija. Ulazi: - Pomoću takta CU drži vrijeme. CU uzrokuje izvođenje jedne ili skupa simultanih mikooperacija u svakom taktnomimpulsu (brzina procesora) - Instrukcijski registar: opkodi način adresiranja trenutne instrukcije se koristi za određivanje koje mikrooperacije izvesti tokom izvršnog ciklusa. - Zastavice: služe za određivanje statusa procesorai rezultata prethodnih ALU operacija. Npr.: za instrukciju povećaj-i-preskoči-ako-je0 (ISZ), kontrolna jedinica će povećati PC ako je postavljena 0-zastavica. - Kontrolni signali sa kontrolne sabirnice: kontrolna sabirnica kao dio sistemske, obezbjeđuje signale ka kontrolnoj jedinici. Izlazi su: - Kontrolni signali unutar procesora: dva su tipa: jedni uzrokuju prenošenje podataka od jednog do drugog registra, a drugi aktiviraju specifične ALU funkcije. - Kontrolni signali ka kontrolnoj sabirnici: dva tipa: kontrolni signali ka memoriji, i kontrolni signali ka I/O modulima. 42

44 Unutrašnja organizacija procesora Jednostavan procesor sa jednim akumulatorom: Koristeći internu sabirnicu dobije se jednostavniji pogled. Jedna interna sabirnica povezuje ALU i sve registre. Vrata i kontrolni signali omogućavaju prenos podataka od registra na i sa sabirnice. Dodatni kontrolni signali kontrolišu prenos podataka sa i od sistemske (vanjske) sabirnice i rad ALU. 43

3.1 Granična vrednost funkcije u tački

3.1 Granična vrednost funkcije u tački 3 Granična vrednost i neprekidnost funkcija 2 3 Granična vrednost i neprekidnost funkcija 3. Granična vrednost funkcije u tački Neka je funkcija f(x) definisana u tačkama x za koje je 0 < x x 0 < r, ili

Διαβάστε περισσότερα

Osnovni primer. (Z, +,,, 0, 1) je komutativan prsten sa jedinicom: množenje je distributivno prema sabiranju

Osnovni primer. (Z, +,,, 0, 1) je komutativan prsten sa jedinicom: množenje je distributivno prema sabiranju RAČUN OSTATAKA 1 1 Prsten celih brojeva Z := N + {} N + = {, 3, 2, 1,, 1, 2, 3,...} Osnovni primer. (Z, +,,,, 1) je komutativan prsten sa jedinicom: sabiranje (S1) asocijativnost x + (y + z) = (x + y)

Διαβάστε περισσότερα

UNIVERZITET U NIŠU ELEKTRONSKI FAKULTET SIGNALI I SISTEMI. Zbirka zadataka

UNIVERZITET U NIŠU ELEKTRONSKI FAKULTET SIGNALI I SISTEMI. Zbirka zadataka UNIVERZITET U NIŠU ELEKTRONSKI FAKULTET Goran Stančić SIGNALI I SISTEMI Zbirka zadataka NIŠ, 014. Sadržaj 1 Konvolucija Literatura 11 Indeks pojmova 11 3 4 Sadržaj 1 Konvolucija Zadatak 1. Odrediti konvoluciju

Διαβάστε περισσότερα

Operacije s matricama

Operacije s matricama Linearna algebra I Operacije s matricama Korolar 3.1.5. Množenje matrica u vektorskom prostoru M n (F) ima sljedeća svojstva: (1) A(B + C) = AB + AC, A, B, C M n (F); (2) (A + B)C = AC + BC, A, B, C M

Διαβάστε περισσότερα

Najjednostavnija metoda upravljanja slijedom instrukcija:

Najjednostavnija metoda upravljanja slijedom instrukcija: 4. Upravljačka jedinica Funkcija upravljačke jedinice Prijenos upravljanja između programa Rekurzivni programi LIFO ili stožna struktura Uporaba stoga AIOR, S. Ribarić 1 Funkcije upravljačke jedinice:

Διαβάστε περισσότερα

IZRAČUNAVANJE POKAZATELJA NAČINA RADA NAČINA RADA (ISKORIŠĆENOSTI KAPACITETA, STEPENA OTVORENOSTI RADNIH MESTA I NIVOA ORGANIZOVANOSTI)

IZRAČUNAVANJE POKAZATELJA NAČINA RADA NAČINA RADA (ISKORIŠĆENOSTI KAPACITETA, STEPENA OTVORENOSTI RADNIH MESTA I NIVOA ORGANIZOVANOSTI) IZRAČUNAVANJE POKAZATELJA NAČINA RADA NAČINA RADA (ISKORIŠĆENOSTI KAPACITETA, STEPENA OTVORENOSTI RADNIH MESTA I NIVOA ORGANIZOVANOSTI) Izračunavanje pokazatelja načina rada OTVORENOG RM RASPOLOŽIVO RADNO

Διαβάστε περισσότερα

Teorijske osnove informatike 1

Teorijske osnove informatike 1 Teorijske osnove informatike 1 9. oktobar 2014. () Teorijske osnove informatike 1 9. oktobar 2014. 1 / 17 Funkcije Veze me du skupovima uspostavljamo skupovima koje nazivamo funkcijama. Neformalno, funkcija

Διαβάστε περισσότερα

INTELIGENTNO UPRAVLJANJE

INTELIGENTNO UPRAVLJANJE INTELIGENTNO UPRAVLJANJE Fuzzy sistemi zaključivanja Vanr.prof. Dr. Lejla Banjanović-Mehmedović Mehmedović 1 Osnovni elementi fuzzy sistema zaključivanja Fazifikacija Baza znanja Baze podataka Baze pravila

Διαβάστε περισσότερα

18. listopada listopada / 13

18. listopada listopada / 13 18. listopada 2016. 18. listopada 2016. 1 / 13 Neprekidne funkcije Važnu klasu funkcija tvore neprekidne funkcije. To su funkcije f kod kojih mala promjena u nezavisnoj varijabli x uzrokuje malu promjenu

Διαβάστε περισσότερα

PRAVA. Prava je u prostoru određena jednom svojom tačkom i vektorom paralelnim sa tom pravom ( vektor paralelnosti).

PRAVA. Prava je u prostoru određena jednom svojom tačkom i vektorom paralelnim sa tom pravom ( vektor paralelnosti). PRAVA Prava je kao i ravan osnovni geometrijski ojam i ne definiše se. Prava je u rostoru određena jednom svojom tačkom i vektorom aralelnim sa tom ravom ( vektor aralelnosti). M ( x, y, z ) 3 Posmatrajmo

Διαβάστε περισσότερα

numeričkih deskriptivnih mera.

numeričkih deskriptivnih mera. DESKRIPTIVNA STATISTIKA Numeričku seriju podataka opisujemo pomoću Numeričku seriju podataka opisujemo pomoću numeričkih deskriptivnih mera. Pokazatelji centralne tendencije Aritmetička sredina, Medijana,

Διαβάστε περισσότερα

IZVODI ZADACI (I deo)

IZVODI ZADACI (I deo) IZVODI ZADACI (I deo) Najpre da se podsetimo tablice i osnovnih pravila:. C`=0. `=. ( )`= 4. ( n )`=n n-. (a )`=a lna 6. (e )`=e 7. (log a )`= 8. (ln)`= ` ln a (>0) 9. = ( 0) 0. `= (>0) (ovde je >0 i a

Διαβάστε περισσότερα

Kaskadna kompenzacija SAU

Kaskadna kompenzacija SAU Kaskadna kompenzacija SAU U inženjerskoj praksi, naročito u sistemima regulacije elektromotornih pogona i tehnoloških procesa, veoma često se primenjuje metoda kaskadne kompenzacije, u čijoj osnovi su

Διαβάστε περισσότερα

Strukture podataka i algoritmi 1. kolokvij 16. studenog Zadatak 1

Strukture podataka i algoritmi 1. kolokvij 16. studenog Zadatak 1 Strukture podataka i algoritmi 1. kolokvij Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i službeni šalabahter. Predajete samo papire koje ste dobili. Rezultati i uvid u kolokvije: ponedjeljak,

Διαβάστε περισσότερα

MEMORIJA. Karakteristike memorijskih sistema

MEMORIJA. Karakteristike memorijskih sistema MEMORIJA Memorija je svojim konceptom najjednostavnija. Međutim u odnosu na druge elemente, pokazuje najširi spektar: tipova, tehnologija, organizacije, performansi i cijena. Nijedna tehnologija nije optimalna

Διαβάστε περισσότερα

M086 LA 1 M106 GRP. Tema: Baza vektorskog prostora. Koordinatni sustav. Norma. CSB nejednakost

M086 LA 1 M106 GRP. Tema: Baza vektorskog prostora. Koordinatni sustav. Norma. CSB nejednakost M086 LA 1 M106 GRP Tema: CSB nejednakost. 19. 10. 2017. predavač: Rudolf Scitovski, Darija Marković asistent: Darija Brajković, Katarina Vincetić P 1 www.fizika.unios.hr/grpua/ 1 Baza vektorskog prostora.

Διαβάστε περισσότερα

Elektrotehnički fakultet univerziteta u Beogradu 17.maj Odsek za Softversko inžinjerstvo

Elektrotehnički fakultet univerziteta u Beogradu 17.maj Odsek za Softversko inžinjerstvo Elektrotehnički fakultet univerziteta u Beogradu 7.maj 009. Odsek za Softversko inžinjerstvo Performanse računarskih sistema Drugi kolokvijum Predmetni nastavnik: dr Jelica Protić (35) a) (0) Posmatra

Διαβάστε περισσότερα

Računarska grafika. Rasterizacija linije

Računarska grafika. Rasterizacija linije Računarska grafika Osnovni inkrementalni algoritam Drugi naziv u literaturi digitalni diferencijalni analizator (DDA) Pretpostavke (privremena ograničenja koja se mogu otkloniti jednostavnim uopštavanjem

Διαβάστε περισσότερα

ELEKTROTEHNIČKI ODJEL

ELEKTROTEHNIČKI ODJEL MATEMATIKA. Neka je S skup svih živućih državljana Republike Hrvatske..04., a f preslikavanje koje svakom elementu skupa S pridružuje njegov horoskopski znak (bez podznaka). a) Pokažite da je f funkcija,

Διαβάστε περισσότερα

2 tg x ctg x 1 = =, cos 2x Zbog četvrtog kvadranta rješenje je: 2 ctg x

2 tg x ctg x 1 = =, cos 2x Zbog četvrtog kvadranta rješenje je: 2 ctg x Zadatak (Darjan, medicinska škola) Izračunaj vrijednosti trigonometrijskih funkcija broja ako je 6 sin =,,. 6 Rješenje Ponovimo trigonometrijske funkcije dvostrukog kuta! Za argument vrijede sljedeće formule:

Διαβάστε περισσότερα

DISKRETNA MATEMATIKA - PREDAVANJE 7 - Jovanka Pantović

DISKRETNA MATEMATIKA - PREDAVANJE 7 - Jovanka Pantović DISKRETNA MATEMATIKA - PREDAVANJE 7 - Jovanka Pantović Novi Sad April 17, 2018 1 / 22 Teorija grafova April 17, 2018 2 / 22 Definicija Graf je ure dena trojka G = (V, G, ψ), gde je (i) V konačan skup čvorova,

Διαβάστε περισσότερα

MATRICE I DETERMINANTE - formule i zadaci - (Matrice i determinante) 1 / 15

MATRICE I DETERMINANTE - formule i zadaci - (Matrice i determinante) 1 / 15 MATRICE I DETERMINANTE - formule i zadaci - (Matrice i determinante) 1 / 15 Matrice - osnovni pojmovi (Matrice i determinante) 2 / 15 (Matrice i determinante) 2 / 15 Matrice - osnovni pojmovi Matrica reda

Διαβάστε περισσότερα

Trigonometrija 2. Adicijske formule. Formule dvostrukog kuta Formule polovičnog kuta Pretvaranje sume(razlike u produkt i obrnuto

Trigonometrija 2. Adicijske formule. Formule dvostrukog kuta Formule polovičnog kuta Pretvaranje sume(razlike u produkt i obrnuto Trigonometrija Adicijske formule Formule dvostrukog kuta Formule polovičnog kuta Pretvaranje sume(razlike u produkt i obrnuto Razumijevanje postupka izrade složenijeg matematičkog problema iz osnova trigonometrije

Διαβάστε περισσότερα

Kontrolni zadatak (Tačka, prava, ravan, diedar, poliedar, ortogonalna projekcija), grupa A

Kontrolni zadatak (Tačka, prava, ravan, diedar, poliedar, ortogonalna projekcija), grupa A Kontrolni zadatak (Tačka, prava, ravan, diedar, poliedar, ortogonalna projekcija), grupa A Ime i prezime: 1. Prikazane su tačke A, B i C i prave a,b i c. Upiši simbole Î, Ï, Ì ili Ë tako da dobijeni iskazi

Διαβάστε περισσότερα

5. Karakteristične funkcije

5. Karakteristične funkcije 5. Karakteristične funkcije Profesor Milan Merkle emerkle@etf.rs milanmerkle.etf.rs Verovatnoća i Statistika-proleće 2018 Milan Merkle Karakteristične funkcije ETF Beograd 1 / 10 Definicija Karakteristična

Διαβάστε περισσότερα

Verovatnoća i Statistika I deo Teorija verovatnoće (zadaci) Beleške dr Bobana Marinkovića

Verovatnoća i Statistika I deo Teorija verovatnoće (zadaci) Beleške dr Bobana Marinkovića Verovatnoća i Statistika I deo Teorija verovatnoće zadaci Beleške dr Bobana Marinkovića Iz skupa, 2,, 00} bira se na slučajan način 5 brojeva Odrediti skup elementarnih dogadjaja ako se brojevi biraju

Διαβάστε περισσότερα

III VEŽBA: FURIJEOVI REDOVI

III VEŽBA: FURIJEOVI REDOVI III VEŽBA: URIJEOVI REDOVI 3.1. eorijska osnova Posmatrajmo neki vremenski kontinualan signal x(t) na intervalu definisati: t + t t. ada se može X [ k ] = 1 t + t x ( t ) e j 2 π kf t dt, gde je f = 1/.

Διαβάστε περισσότερα

(P.I.) PRETPOSTAVKA INDUKCIJE - pretpostavimo da tvrdnja vrijedi za n = k.

(P.I.) PRETPOSTAVKA INDUKCIJE - pretpostavimo da tvrdnja vrijedi za n = k. 1 3 Skupovi brojeva 3.1 Skup prirodnih brojeva - N N = {1, 2, 3,...} Aksiom matematičke indukcije Neka je N skup prirodnih brojeva i M podskup od N. Ako za M vrijede svojstva: 1) 1 M 2) n M (n + 1) M,

Διαβάστε περισσότερα

MIKRORAČUNAR. Sl.1. - Sklop mikroračunara kao crna kutija

MIKRORAČUNAR. Sl.1. - Sklop mikroračunara kao crna kutija MIKRORAČUNAR Mikroračunar je sastavljen od četiri osnovna bloka (Sl.) - to zovemo hardver: -mikroprocesora -memorije -ulaznog međusklopa -izlaznog međusklopa Programska podrška (to zovemo softver) je vezivna

Διαβάστε περισσότερα

Elementi spektralne teorije matrica

Elementi spektralne teorije matrica Elementi spektralne teorije matrica Neka je X konačno dimenzionalan vektorski prostor nad poljem K i neka je A : X X linearni operator. Definicija. Skalar λ K i nenula vektor u X se nazivaju sopstvena

Διαβάστε περισσότερα

Sortiranje prebrajanjem (Counting sort) i Radix Sort

Sortiranje prebrajanjem (Counting sort) i Radix Sort Sortiranje prebrajanjem (Counting sort) i Radix Sort 15. siječnja 2016. Ante Mijoč Uvod Teorem Ako je f(n) broj usporedbi u algoritmu za sortiranje temeljenom na usporedbama (eng. comparison-based sorting

Διαβάστε περισσότερα

RIJEŠENI ZADACI I TEORIJA IZ

RIJEŠENI ZADACI I TEORIJA IZ RIJEŠENI ZADACI I TEORIJA IZ LOGARITAMSKA FUNKCIJA SVOJSTVA LOGARITAMSKE FUNKCIJE OSNOVE TRIGONOMETRIJE PRAVOKUTNOG TROKUTA - DEFINICIJA TRIGONOMETRIJSKIH FUNKCIJA - VRIJEDNOSTI TRIGONOMETRIJSKIH FUNKCIJA

Διαβάστε περισσότερα

IZVODI ZADACI ( IV deo) Rešenje: Najpre ćemo logaritmovati ovu jednakost sa ln ( to beše prirodni logaritam za osnovu e) a zatim ćemo

IZVODI ZADACI ( IV deo) Rešenje: Najpre ćemo logaritmovati ovu jednakost sa ln ( to beše prirodni logaritam za osnovu e) a zatim ćemo IZVODI ZADACI ( IV deo) LOGARITAMSKI IZVOD Logariamskim izvodom funkcije f(), gde je >0 i, nazivamo izvod logarima e funkcije, o jes: (ln ) f ( ) f ( ) Primer. Nadji izvod funkcije Najpre ćemo logarimovai

Διαβάστε περισσότερα

PARCIJALNI IZVODI I DIFERENCIJALI. Sama definicija parcijalnog izvoda i diferencijala je malo teža, mi se njome ovde nećemo baviti a vi ćete je,

PARCIJALNI IZVODI I DIFERENCIJALI. Sama definicija parcijalnog izvoda i diferencijala je malo teža, mi se njome ovde nećemo baviti a vi ćete je, PARCIJALNI IZVODI I DIFERENCIJALI Sama definicija parcijalnog ivoda i diferencijala je malo teža, mi se njome ovde nećemo baviti a vi ćete je, naravno, naučiti onako kako vaš profesor ahteva. Mi ćemo probati

Διαβάστε περισσότερα

Elementarna memorijska kola

Elementarna memorijska kola Elementarna memorijska kola gmemorijska kola mogu da zapamte prethodno stanje gflip-flop je logička mreža a koja može e da zapamti samo jedan bit podatka (jednu binarnu cifru) flip - flop je kolo sa dva

Διαβάστε περισσότερα

Linearna algebra 2 prvi kolokvij,

Linearna algebra 2 prvi kolokvij, Linearna algebra 2 prvi kolokvij, 27.. 20.. Za koji cijeli broj t je funkcija f : R 4 R 4 R definirana s f(x, y) = x y (t + )x 2 y 2 + x y (t 2 + t)x 4 y 4, x = (x, x 2, x, x 4 ), y = (y, y 2, y, y 4 )

Διαβάστε περισσότερα

a M a A. Može se pokazati da je supremum (ako postoji) jedinstven pa uvodimo oznaku sup A.

a M a A. Može se pokazati da je supremum (ako postoji) jedinstven pa uvodimo oznaku sup A. 3 Infimum i supremum Definicija. Neka je A R. Kažemo da je M R supremum skupa A ako je (i) M gornja meda skupa A, tj. a M a A. (ii) M najmanja gornja meda skupa A, tj. ( ε > 0)( a A) takav da je a > M

Διαβάστε περισσότερα

Računarska grafika. Rasterizacija linije

Računarska grafika. Rasterizacija linije Računarska grafika Osnovni inkrementalni algoritam Drugi naziv u literaturi digitalni diferencijalni analizator (DDA) Pretpostavke (privremena ograničenja koja se mogu otkloniti jednostavnim uopštavanjem

Διαβάστε περισσότερα

Iskazna logika 3. Matematička logika u računarstvu. novembar 2012

Iskazna logika 3. Matematička logika u računarstvu. novembar 2012 Iskazna logika 3 Matematička logika u računarstvu Department of Mathematics and Informatics, Faculty of Science,, Serbia novembar 2012 Deduktivni sistemi 1 Definicija Deduktivni sistem (ili formalna teorija)

Διαβάστε περισσότερα

Zavrxni ispit iz Matematiqke analize 1

Zavrxni ispit iz Matematiqke analize 1 Građevinski fakultet Univerziteta u Beogradu 3.2.2016. Zavrxni ispit iz Matematiqke analize 1 Prezime i ime: Broj indeksa: 1. Definisati Koxijev niz. Dati primer niza koji nije Koxijev. 2. Dat je red n=1

Διαβάστε περισσότερα

IZVODI ZADACI (I deo)

IZVODI ZADACI (I deo) IZVODI ZADACI (I deo Najpre da se podsetimo tablice i osnovnih pravila:. C0.. (. ( n n n-. (a a lna 6. (e e 7. (log a 8. (ln ln a (>0 9. ( 0 0. (>0 (ovde je >0 i a >0. (cos. (cos - π. (tg kπ cos. (ctg

Διαβάστε περισσότερα

Sveučilište J.J. Strossmayera u Osijeku Odjel za matematiku. GRAĐA RAČUNALA (predavanja u ak. god /2006.)

Sveučilište J.J. Strossmayera u Osijeku Odjel za matematiku. GRAĐA RAČUNALA (predavanja u ak. god /2006.) Sveučilište J.J. Strossmayera u Osijeku Odjel za matematiku GRAĐA RAČUNALA (predavanja u ak. god. 2005./2006.) doc.dr.sc. Goran Martinović www.etfos.hr/~martin goran.martinovic@etfos.hr Tel: 031 224-766

Διαβάστε περισσότερα

XI dvoqas veжbi dr Vladimir Balti. 4. Stabla

XI dvoqas veжbi dr Vladimir Balti. 4. Stabla XI dvoqas veжbi dr Vladimir Balti 4. Stabla Teorijski uvod Teorijski uvod Definicija 5.7.1. Stablo je povezan graf bez kontura. Definicija 5.7.1. Stablo je povezan graf bez kontura. Primer 5.7.1. Sva stabla

Διαβάστε περισσότερα

STANDARDNA ARHITEKTURA MIKROPROCESORA

STANDARDNA ARHITEKTURA MIKROPROCESORA STANDARDNA ARHITEKTURA MIKROPROCESORA UVOD Svaki sastavni deo, a time i celi mikroprocesor, najbolje je opisan skupom registara i njihovom funkcijom, putevima između registara, nizom operacija koje se

Διαβάστε περισσότερα

Apsolutno neprekidne raspodele Raspodele apsolutno neprekidnih sluqajnih promenljivih nazivaju se apsolutno neprekidnim raspodelama.

Apsolutno neprekidne raspodele Raspodele apsolutno neprekidnih sluqajnih promenljivih nazivaju se apsolutno neprekidnim raspodelama. Apsolutno neprekidne raspodele Raspodele apsolutno neprekidnih sluqajnih promenljivih nazivaju se apsolutno neprekidnim raspodelama. a b Verovatno a da sluqajna promenljiva X uzima vrednost iz intervala

Διαβάστε περισσότερα

APROKSIMACIJA FUNKCIJA

APROKSIMACIJA FUNKCIJA APROKSIMACIJA FUNKCIJA Osnovni koncepti Gradimir V. Milovanović MF, Beograd, 14. mart 2011. APROKSIMACIJA FUNKCIJA p.1/46 Osnovni problem u TA Kako za datu funkciju f iz velikog prostora X naći jednostavnu

Διαβάστε περισσότερα

STANDARDNA ARHITEKTURA MIKROPROCESORA

STANDARDNA ARHITEKTURA MIKROPROCESORA STANDARDNA ARHITEKTURA MIKROPROCESORA UVOD Svaki sastavni deo, a time i celi mikroprocesor, najbolje je opisan skupom registara i njihovom funkcijom, putevima između registara, nizom operacija koje se

Διαβάστε περισσότερα

Eliminacijski zadatak iz Matematike 1 za kemičare

Eliminacijski zadatak iz Matematike 1 za kemičare Za mnoge reakcije vrijedi Arrheniusova jednadžba, koja opisuje vezu koeficijenta brzine reakcije i temperature: K = Ae Ea/(RT ). - T termodinamička temperatura (u K), - R = 8, 3145 J K 1 mol 1 opća plinska

Διαβάστε περισσότερα

INTEGRALNI RAČUN. Teorije, metodike i povijest infinitezimalnih računa. Lucija Mijić 17. veljače 2011.

INTEGRALNI RAČUN. Teorije, metodike i povijest infinitezimalnih računa. Lucija Mijić 17. veljače 2011. INTEGRALNI RAČUN Teorije, metodike i povijest infinitezimalnih računa Lucija Mijić lucija@ktf-split.hr 17. veljače 2011. Pogledajmo Predstavimo gornju sumu sa Dodamo još jedan Dobivamo pravokutnik sa Odnosno

Διαβάστε περισσότερα

Pismeni ispit iz matematike Riješiti sistem jednačina i diskutovati rješenja sistema u zavisnosti od parametra: ( ) + 1.

Pismeni ispit iz matematike Riješiti sistem jednačina i diskutovati rješenja sistema u zavisnosti od parametra: ( ) + 1. Pismeni ispit iz matematike 0 008 GRUPA A Riješiti sistem jednačina i diskutovati rješenja sistema u zavisnosti od parametra: λ + z = Ispitati funkciju i nacrtati njen grafik: + ( λ ) + z = e Izračunati

Διαβάστε περισσότερα

2log. se zove numerus (logaritmand), je osnova (baza) log. log. log =

2log. se zove numerus (logaritmand), je osnova (baza) log. log. log = ( > 0, 0)!" # > 0 je najčešći uslov koji postavljamo a još je,, > 0 se zove numerus (aritmand), je osnova (baza). 0.. ( ) +... 7.. 8. Za prelazak na neku novu bazu c: 9. Ako je baza (osnova) 0 takvi se

Διαβάστε περισσότερα

Riješeni zadaci: Nizovi realnih brojeva

Riješeni zadaci: Nizovi realnih brojeva Riješei zadaci: Nizovi realih brojeva Nizovi, aritmetički iz, geometrijski iz Fukciju a : N R azivamo beskoači) iz realih brojeva i ozačavamo s a 1, a,..., a,... ili a ), pri čemu je a = a). Aritmetički

Διαβάστε περισσότερα

SISTEMI NELINEARNIH JEDNAČINA

SISTEMI NELINEARNIH JEDNAČINA SISTEMI NELINEARNIH JEDNAČINA April, 2013 Razni zapisi sistema Skalarni oblik: Vektorski oblik: F = f 1 f n f 1 (x 1,, x n ) = 0 f n (x 1,, x n ) = 0, x = (1) F(x) = 0, (2) x 1 0, 0 = x n 0 Definicije

Διαβάστε περισσότερα

Pravilo 1. Svaki tip entiteta ER modela postaje relaciona šema sa istim imenom.

Pravilo 1. Svaki tip entiteta ER modela postaje relaciona šema sa istim imenom. 1 Pravilo 1. Svaki tip entiteta ER modela postaje relaciona šema sa istim imenom. Pravilo 2. Svaki atribut entiteta postaje atribut relacione šeme pod istim imenom. Pravilo 3. Primarni ključ entiteta postaje

Διαβάστε περισσότερα

Elektronske memorije

Elektronske memorije Elektronske memorije A. VRSTE ELEKTRONSKIH MEMORIJA Registri; RAM (Random Access Memory); ROM (Read Only Memory); PROM (Programmable ROM); EPROM (Erasable PROM); EEPROM (Electrically EPROM). B. RAM RAM

Διαβάστε περισσότερα

Otpornost R u kolu naizmjenične struje

Otpornost R u kolu naizmjenične struje Otpornost R u kolu naizmjenične struje Pretpostavimo da je otpornik R priključen na prostoperiodični napon: Po Omovom zakonu pad napona na otporniku je: ( ) = ( ω ) u t sin m t R ( ) = ( ) u t R i t Struja

Διαβάστε περισσότερα

41. Jednačine koje se svode na kvadratne

41. Jednačine koje se svode na kvadratne . Jednačine koje se svode na kvadrane Simerične recipročne) jednačine Jednačine oblika a n b n c n... c b a nazivamo simerične jednačine, zbog simeričnosi koeficijenaa koeficijeni uz jednaki). k i n k

Διαβάστε περισσότερα

21. ŠKOLSKO/OPĆINSKO/GRADSKO NATJECANJE IZ GEOGRAFIJE GODINE 8. RAZRED TOČNI ODGOVORI

21. ŠKOLSKO/OPĆINSKO/GRADSKO NATJECANJE IZ GEOGRAFIJE GODINE 8. RAZRED TOČNI ODGOVORI 21. ŠKOLSKO/OPĆINSKO/GRADSKO NATJECANJE IZ GEOGRAFIJE 2014. GODINE 8. RAZRED TOČNI ODGOVORI Bodovanje za sve zadatke: - boduju se samo točni odgovori - dodatne upute navedene su za pojedine skupine zadataka

Διαβάστε περισσότερα

Najjednostavnija metoda upravljanja slijedom instrukcija:

Najjednostavnija metoda upravljanja slijedom instrukcija: 4. Upravljacka jedinica Funkcija upravljacke jedinice Prijenos upravljanja izmedu programa Rekurzivni programi LIFO ili stožna struktura Uporaba stoga AIOR, S. Ribaric 1 Funkcije upravljacke jedinice:

Διαβάστε περισσότερα

1a. Von Neumannov model računala

1a. Von Neumannov model računala 1a. Von Neumannov model računala Razvoj programirljivosti računala: Univerzalni stroj [Turing36] TS koji čita logičku funkciju s trake ENIAC (1943-1947): ručno prospajanje, prekidači (Mauchly, Eckert)

Διαβάστε περισσότερα

T E M A 4A Procesori i memorije

T E M A 4A Procesori i memorije T E M A 4A Procesori i memorije 1 20. jula 1969. godine prva letilica sa ljudskom posadom sletela je na Mesec. Računar koji je tada asistirao kod spuštanja koristio je frekvenciju internog takta (takt

Διαβάστε περισσότερα

Veleučilište u Rijeci Stručni studij sigurnosti na radu Akad. god. 2011/2012. Matematika. Monotonost i ekstremi. Katica Jurasić. Rijeka, 2011.

Veleučilište u Rijeci Stručni studij sigurnosti na radu Akad. god. 2011/2012. Matematika. Monotonost i ekstremi. Katica Jurasić. Rijeka, 2011. Veleučilište u Rijeci Stručni studij sigurnosti na radu Akad. god. 2011/2012. Matematika Monotonost i ekstremi Katica Jurasić Rijeka, 2011. Ishodi učenja - predavanja Na kraju ovog predavanja moći ćete:,

Διαβάστε περισσότερα

Pošto pretvaramo iz veće u manju mjernu jedinicu broj 2.5 množimo s 1000,

Pošto pretvaramo iz veće u manju mjernu jedinicu broj 2.5 množimo s 1000, PRERAČUNAVANJE MJERNIH JEDINICA PRIMJERI, OSNOVNE PRETVORBE, POTENCIJE I ZNANSTVENI ZAPIS, PREFIKSKI, ZADACI S RJEŠENJIMA Primjeri: 1. 2.5 m = mm Pretvaramo iz veće u manju mjernu jedinicu. 1 m ima dm,

Διαβάστε περισσότερα

SKUPOVI I SKUPOVNE OPERACIJE

SKUPOVI I SKUPOVNE OPERACIJE SKUPOVI I SKUPOVNE OPERACIJE Ne postoji precizna definicija skupa (postoji ali nama nije zanimljiva u ovom trenutku), ali mi možemo koristiti jednu definiciju koja će nam donekle dočarati šta su zapravo

Διαβάστε περισσότερα

7 Algebarske jednadžbe

7 Algebarske jednadžbe 7 Algebarske jednadžbe 7.1 Nultočke polinoma Skup svih polinoma nad skupom kompleksnih brojeva označavamo sa C[x]. Definicija. Nultočka polinoma f C[x] je svaki kompleksni broj α takav da je f(α) = 0.

Διαβάστε περισσότερα

Ispitivanje toka i skiciranje grafika funkcija

Ispitivanje toka i skiciranje grafika funkcija Ispitivanje toka i skiciranje grafika funkcija Za skiciranje grafika funkcije potrebno je ispitati svako od sledećih svojstava: Oblast definisanosti: D f = { R f R}. Parnost, neparnost, periodičnost. 3

Διαβάστε περισσότερα

radni nerecenzirani materijal za predavanja

radni nerecenzirani materijal za predavanja Matematika 1 Funkcije radni nerecenzirani materijal za predavanja Definicija 1. Kažemo da je funkcija f : a, b R u točki x 0 a, b postiže lokalni minimum ako postoji okolina O(x 0 ) broja x 0 takva da je

Διαβάστε περισσότερα

MATEMATIKA 2. Grupa 1 Rexea zadataka. Prvi pismeni kolokvijum, Dragan ori

MATEMATIKA 2. Grupa 1 Rexea zadataka. Prvi pismeni kolokvijum, Dragan ori MATEMATIKA 2 Prvi pismeni kolokvijum, 14.4.2016 Grupa 1 Rexea zadataka Dragan ori Zadaci i rexea 1. unkcija f : R 2 R definisana je sa xy 2 f(x, y) = x2 + y sin 3 2 x 2, (x, y) (0, 0) + y2 0, (x, y) =

Διαβάστε περισσότερα

VJEŽBE 3 BIPOLARNI TRANZISTORI. Slika 1. Postoje npn i pnp bipolarni tranziostori i njihovi simboli su dati na slici 2 i to npn lijevo i pnp desno.

VJEŽBE 3 BIPOLARNI TRANZISTORI. Slika 1. Postoje npn i pnp bipolarni tranziostori i njihovi simboli su dati na slici 2 i to npn lijevo i pnp desno. JŽ 3 POLAN TANZSTO ipolarni tranzistor se sastoji od dva pn spoja kod kojih je jedna oblast zajednička za oba i naziva se baza, slika 1 Slika 1 ipolarni tranzistor ima 3 izvoda: emitor (), kolektor (K)

Διαβάστε περισσότερα

FTN Novi Sad Katedra za motore i vozila. Teorija kretanja drumskih vozila Vučno-dinamičke performanse vozila: MAKSIMALNA BRZINA

FTN Novi Sad Katedra za motore i vozila. Teorija kretanja drumskih vozila Vučno-dinamičke performanse vozila: MAKSIMALNA BRZINA : MAKSIMALNA BRZINA Maksimalna brzina kretanja F O (N) F OI i m =i I i m =i II F Oid Princip određivanja v MAX : Drugi Njutnov zakon Dokle god je: F O > ΣF otp vozilo ubrzava Kada postane: F O = ΣF otp

Διαβάστε περισσότερα

( , 2. kolokvij)

( , 2. kolokvij) A MATEMATIKA (0..20., 2. kolokvij). Zadana je funkcija y = cos 3 () 2e 2. (a) Odredite dy. (b) Koliki je nagib grafa te funkcije za = 0. (a) zadanu implicitno s 3 + 2 y = sin y, (b) zadanu parametarski

Διαβάστε περισσότερα

Matematička analiza 1 dodatni zadaci

Matematička analiza 1 dodatni zadaci Matematička analiza 1 dodatni zadaci 1. Ispitajte je li funkcija f() := 4 4 5 injekcija na intervalu I, te ako jest odredite joj sliku i inverz, ako je (a) I = [, 3), (b) I = [1, ], (c) I = ( 1, 0].. Neka

Διαβάστε περισσότερα

Osnovne teoreme diferencijalnog računa

Osnovne teoreme diferencijalnog računa Osnovne teoreme diferencijalnog računa Teorema Rolova) Neka je funkcija f definisana na [a, b], pri čemu važi f je neprekidna na [a, b], f je diferencijabilna na a, b) i fa) fb). Tada postoji ξ a, b) tako

Διαβάστε περισσότερα

ZBIRKA POTPUNO RIJEŠENIH ZADATAKA

ZBIRKA POTPUNO RIJEŠENIH ZADATAKA **** IVANA SRAGA **** 1992.-2011. ZBIRKA POTPUNO RIJEŠENIH ZADATAKA PRIRUČNIK ZA SAMOSTALNO UČENJE POTPUNO RIJEŠENI ZADACI PO ŽUTOJ ZBIRCI INTERNA SKRIPTA CENTRA ZA PODUKU α M.I.M.-Sraga - 1992.-2011.

Διαβάστε περισσότερα

IspitivaƬe funkcija: 1. Oblast definisanosti funkcije (ili domen funkcije) D f

IspitivaƬe funkcija: 1. Oblast definisanosti funkcije (ili domen funkcije) D f IspitivaƬe funkcija: 1. Oblast definisanosti funkcije (ili domen funkcije) D f IspitivaƬe funkcija: 1. Oblast definisanosti funkcije (ili domen funkcije) D f 2. Nule i znak funkcije; presek sa y-osom IspitivaƬe

Διαβάστε περισσότερα

19. INTEGRISANI DIGITALNI PROCESORI SIGNALA

19. INTEGRISANI DIGITALNI PROCESORI SIGNALA 19. INTEGRISANI DIGITALNI PROCESORI SIGNALA U prethodna dva poglavlja razmotrena su dva načina implementacije sistema za digitalnu obradu signala čije su karakteristike komplementarne. Softverska implementacija

Διαβάστε περισσότερα

radni nerecenzirani materijal za predavanja R(f) = {f(x) x D}

radni nerecenzirani materijal za predavanja R(f) = {f(x) x D} Matematika 1 Funkcije radni nerecenzirani materijal za predavanja Definicija 1. Neka su D i K bilo koja dva neprazna skupa. Postupak f koji svakom elementu x D pridružuje točno jedan element y K zovemo funkcija

Διαβάστε περισσότερα

Dijagonalizacija operatora

Dijagonalizacija operatora Dijagonalizacija operatora Problem: Može li se odrediti baza u kojoj zadani operator ima dijagonalnu matricu? Ova problem je povezan sa sljedećim pojmovima: 1 Karakteristični polinom operatora f 2 Vlastite

Διαβάστε περισσότερα

Arhitektura Računara. 1. sedmica

Arhitektura Računara. 1. sedmica Arhitektura Računara 1. sedmica Valentina Salapura Saša Salapura Predavanja dostupna na: www.blc.edu.ba [prilagodjeno od predavanja D. Patterson, M. J. Irwin] BLC - Arhitektura Računara 2011 Valentina

Διαβάστε περισσότερα

Program za tablično računanje Microsoft Excel

Program za tablično računanje Microsoft Excel Program za tablično računanje Microsoft Excel Teme Formule i funkcije Zbrajanje Oduzimanje Množenje Dijeljenje Izračun najveće vrijednosti Izračun najmanje vrijednosti 2 Formule i funkcije Naravno da je

Διαβάστε περισσότερα

Sume kvadrata. mn = (ax + by) 2 + (ay bx) 2.

Sume kvadrata. mn = (ax + by) 2 + (ay bx) 2. Sume kvadrata Koji se prirodni brojevi mogu prikazati kao zbroj kvadrata dva cijela broja? Propozicija 1. Ako su brojevi m i n sume dva kvadrata, onda je i njihov produkt m n takoder suma dva kvadrata.

Διαβάστε περισσότερα

Hardverska struktura plc-a

Hardverska struktura plc-a Hardverska struktura plc-a 2.1 Hardverska struktura PLC-a 2.2 Procesorski modul 2.3 Memorija 2.4 Ulazno-izlazni (I/O) moduli 2.5 Specijalni, funkcijski i tehnološki moduli 2.6 Komunikacioni interfejs 2.7

Διαβάστε περισσότερα

Protočnost 1. PROTOČNOST. 1.1 Osnovne tehnike za eksploataciju paralelizma

Protočnost 1. PROTOČNOST. 1.1 Osnovne tehnike za eksploataciju paralelizma SADRŽAJ 1. PROTOČNOST...2 1.1 Osnovne tehnike za eksploataciju paralelizma...2 1.2 Protočna obrada na nivou instrukcije osnovni koncepti...3 1.3 Performansne mere... 1.4 Tehnika projektovanja protočnog

Διαβάστε περισσότερα

KVADRATNA FUNKCIJA. Kvadratna funkcija je oblika: Kriva u ravni koja predstavlja grafik funkcije y = ax + bx + c. je parabola.

KVADRATNA FUNKCIJA. Kvadratna funkcija je oblika: Kriva u ravni koja predstavlja grafik funkcije y = ax + bx + c. je parabola. KVADRATNA FUNKCIJA Kvadratna funkcija je oblika: = a + b + c Gde je R, a 0 i a, b i c su realni brojevi. Kriva u ravni koja predstavlja grafik funkcije = a + b + c je parabola. Najpre ćemo naučiti kako

Διαβάστε περισσότερα

Rad, snaga, energija. Tehnička fizika 1 03/11/2017 Tehnološki fakultet

Rad, snaga, energija. Tehnička fizika 1 03/11/2017 Tehnološki fakultet Rad, snaga, energija Tehnička fizika 1 03/11/2017 Tehnološki fakultet Rad i energija Da bi rad bio izvršen neophodno je postojanje sile. Sila vrši rad: Pri pomjeranju tijela sa jednog mjesta na drugo Pri

Διαβάστε περισσότερα

Linearna algebra 2 prvi kolokvij,

Linearna algebra 2 prvi kolokvij, 1 2 3 4 5 Σ jmbag smjer studija Linearna algebra 2 prvi kolokvij, 7. 11. 2012. 1. (10 bodova) Neka je dano preslikavanje s : R 2 R 2 R, s (x, y) = (Ax y), pri čemu je A: R 2 R 2 linearan operator oblika

Διαβάστε περισσότερα

Funkcije dviju varjabli (zadaci za vježbu)

Funkcije dviju varjabli (zadaci za vježbu) Funkcije dviju varjabli (zadaci za vježbu) Vidosava Šimić 22. prosinca 2009. Domena funkcije dvije varijable Ako je zadano pridruživanje (x, y) z = f(x, y), onda se skup D = {(x, y) ; f(x, y) R} R 2 naziva

Διαβάστε περισσότερα

GLAZBENA UMJETNOST. Rezultati državne mature 2010.

GLAZBENA UMJETNOST. Rezultati državne mature 2010. GLAZBENA UJETNOST Rezultati državne mature 2010. Deskriptivna statistika ukupnog rezultata PARAETAR VRIJEDNOST N 112 k 61 72,5 St. pogreška mjerenja 5,06 edijan 76,0 od 86 St. devijacija 15,99 Raspon 66

Διαβάστε περισσότερα

PRIMJER 3. MATLAB filtdemo

PRIMJER 3. MATLAB filtdemo PRIMJER 3. MATLAB filtdemo Prijenosna funkcija (IIR) Hz () =, 6 +, 3 z +, 78 z +, 3 z +, 53 z +, 3 z +, 78 z +, 3 z +, 6 z, 95 z +, 74 z +, z +, 9 z +, 4 z +, 5 z +, 3 z +, 4 z 3 4 5 6 7 8 3 4 5 6 7 8

Διαβάστε περισσότερα

ANALIZA RADA 6T_SRAM I 1T_DRAM MEMORIJSKE ĆELIJE

ANALIZA RADA 6T_SRAM I 1T_DRAM MEMORIJSKE ĆELIJE KATEDRA ZA ELEKTRONIKU Laboratorijske vežbe DIGITALNA ELEKTRONIKA (smer EL) ANALIZA RADA 6T_SRAM I 1T_DRAM MEMORIJSKE ĆELIJE NAPOMENA: Prilikom rada na računaru mora se poštovati sledeće: - napajanje na

Διαβάστε περισσότερα

TROŠAK KAPITALA Predmet: Upravljanje finansijskim odlukama i rizicima Profesor: Dr sci Sead Mušinbegovid Fakultet za menadžment i poslovnu ekonomiju

TROŠAK KAPITALA Predmet: Upravljanje finansijskim odlukama i rizicima Profesor: Dr sci Sead Mušinbegovid Fakultet za menadžment i poslovnu ekonomiju TROŠAK KAPITALA Predmet: Upravljanje finansijskim odlukama i rizicima Profesor: Dr sci Sead Mušinbegovid Fakultet za menadžment i poslovnu ekonomiju Sadržaj predavnaja: Trošak kapitala I. Trošak duga II.

Διαβάστε περισσότερα

ORGANIZACIJA PREKIDNOG SISTEMA ZA MIKROPROCESOR M6800

ORGANIZACIJA PREKIDNOG SISTEMA ZA MIKROPROCESOR M6800 ORGANIZACIJA PREKIDNOG SISTEMA ZA MIKROPROCESOR M6800 Mikroprocesor M6800 ima tri prekidna ulaza: Reset (RES), Non-Maskable Interrupt (NMI - nemaskirajući prekid) i Interrupt Request (IRQ). Prekidni sled

Διαβάστε περισσότερα

( ) ( ) 2 UNIVERZITET U ZENICI POLITEHNIČKI FAKULTET. Zadaci za pripremu polaganja kvalifikacionog ispita iz Matematike. 1. Riješiti jednačine: 4

( ) ( ) 2 UNIVERZITET U ZENICI POLITEHNIČKI FAKULTET. Zadaci za pripremu polaganja kvalifikacionog ispita iz Matematike. 1. Riješiti jednačine: 4 UNIVERZITET U ZENICI POLITEHNIČKI FAKULTET Riješiti jednačine: a) 5 = b) ( ) 3 = c) + 3+ = 7 log3 č) = 8 + 5 ć) sin cos = d) 5cos 6cos + 3 = dž) = đ) + = 3 e) 6 log + log + log = 7 f) ( ) ( ) g) ( ) log

Διαβάστε περισσότερα

Logičko i fizičko stanje digitalnog kola

Logičko i fizičko stanje digitalnog kola LOGIČKA KOLA Kao što smo već istakli, obrada podataka u digitalnom račuanaru se realizuje pomoću električnih veličina (napon, struja), odnosno elektronski sklopovi računara obrađuju električne veličine

Διαβάστε περισσότερα

Skripta iz Arhitekture i organizacije računara (radna verzija)

Skripta iz Arhitekture i organizacije računara (radna verzija) Skripta iz Arhitekture i organizacije računara (radna verzija) Nikola Milosavljević Prirodno-matematički fakultet, Univerzitet u Nišu Departman za računarske nauke e-mail: nikola5000@gmail.com Niš, Novembar

Διαβάστε περισσότερα

5 Ispitivanje funkcija

5 Ispitivanje funkcija 5 Ispitivanje funkcija 3 5 Ispitivanje funkcija Ispitivanje funkcije pretodi crtanju grafika funkcije. Opšti postupak ispitivanja funkcija koje su definisane eksplicitno y = f() sadrži sledeće elemente:

Διαβάστε περισσότερα

HEMIJSKA VEZA TEORIJA VALENTNE VEZE

HEMIJSKA VEZA TEORIJA VALENTNE VEZE TEORIJA VALENTNE VEZE Kovalentna veza nastaje preklapanjem atomskih orbitala valentnih elektrona, pri čemu je region preklapanja između dva jezgra okupiran parom elektrona. - Nastalu kovalentnu vezu opisuje

Διαβάστε περισσότερα

TOLERANCIJE I DOSJEDI

TOLERANCIJE I DOSJEDI 11.2012. VELEUČILIŠTE U RIJECI Prometni odjel OSNOVE STROJARSTVA TOLERANCIJE I DOSJEDI 1 Tolerancije dimenzija Nijednu dimenziju nije moguće izraditi savršeno točno, bez ikakvih odstupanja. Stoga, kada

Διαβάστε περισσότερα

Mehatronika - Metode i Sklopovi za Povezivanje Senzora i Aktuatora. Sadržaj predavanja: 1. Operacijsko pojačalo

Mehatronika - Metode i Sklopovi za Povezivanje Senzora i Aktuatora. Sadržaj predavanja: 1. Operacijsko pojačalo Mehatronika - Metode i Sklopovi za Povezivanje Senzora i Aktuatora Sadržaj predavanja: 1. Operacijsko pojačalo Operacijsko Pojačalo Kod operacijsko pojačala izlazni napon je proporcionalan diferencijalu

Διαβάστε περισσότερα

TRIGONOMETRIJSKE FUNKCIJE I I.1.

TRIGONOMETRIJSKE FUNKCIJE I I.1. TRIGONOMETRIJSKE FUNKCIJE I I Odredi na brojevnoj trigonometrijskoj kružnici točku Et, za koju je sin t =,cost < 0 Za koje realne brojeve a postoji realan broj takav da je sin = a? Izračunaj: sin π tg

Διαβάστε περισσότερα