arhitektura računala - skraćena skripta

52
1. Uvodna razmatranja - „idea of computing“ – razvija se oko 1200. kada je muslimanski svećenik predložio rješavanje problema putem slijeda pisanih procedura - abak – najstarije poznato pomagalo, 3000 g.p.n.e. - 1947.g. usporedba: japanski računovođa (abak) i američki vojnik (elektromeh. kalkulator) --> abak bolji u skoro svim računskim operacijama (izuzetak množenje) - 1642.g. Blaise Pascal konstruira 1. mehanički kalkulator ili stroj za zbrajanje (samo zbrajanje i oduzimanje) – W. Leibniz nadogradio --> Pascaline (nazvana i „Arithmetic Machine“) - 1673.g. Gottfried Wilhelm von Liebniz konstruira ekvivalent stolnog kalkulatora sa 4 funkcije - Arithmometer – 1. komercijalni kalkulator 1862.g. – komercijalni uspjeh u prodaji meh. računala - Charles Babbage – prvi koncept modernih računala --> 1822.g. diferencijski stroj --> „father of computing“ --> 1834.g. početak rada na analitičkom stroju – mehanički računski stroj vođen na paru s prepoznatljivim IPOS ciklusom – 1. moderno računalo opće namjene - bušene kartice – 1801.g. Jacquard (za prijenos informacija – unos podataka i operacija) - Von Neumman – 1. digitalno računalo („second father of the computer“) --> 5 funkcionalnih jedinica: memorija, ulazna jedinica, izlazna jedinica, upravljačka jedinica, aritmetičko logička jedinica - IPOS ciklus (input, processing, output, storage) - Babbage osmislio 3 niza bušenih kartica (Jacquard ih stvorio za tkalački stroj) --> za ulazne podatke, operande, za izlazne podatke - Ada Augusta Lovelace – prvi programer --> 1991.g. uz pomoć Babbageovih nacrta konstruira se analitički stroj trenutno na raspolaganju u Charles Babbage Institute u Minnesoti, SAD - moderno doba započinje upotrebom električne energije u strojevima za računanje - 1887.g. Herman Hollerith suvremenom tehnologijom konstruira sortni stroj --> popis stanovništva SAD-a 1890.g. - 1924.g. Tabulating Machine Company postaje International Business Machines Corporation, IBM - informacijsko komunikacijska tehnologija (ICT) – spreg mikroelektronike, telekomunikacija i računalne tehnologije - 1936.g. Konrad Zuse konstruira Z1 (elektromehanički releji)

Upload: tena-skok

Post on 30-Nov-2015

310 views

Category:

Documents


7 download

DESCRIPTION

Skripta za kolegij "Arhitektura računala" skraćena

TRANSCRIPT

Page 1: Arhitektura računala - skraćena skripta

1. Uvodna razmatranja- „idea of computing“ – razvija se oko 1200. kada je muslimanski svećenik predložio rješavanje problema putem slijeda pisanih procedura- abak – najstarije poznato pomagalo, 3000 g.p.n.e.- 1947.g. usporedba: japanski računovođa (abak) i američki vojnik (elektromeh. kalkulator)--> abak bolji u skoro svim računskim operacijama (izuzetak množenje)- 1642.g. Blaise Pascal konstruira 1. mehanički kalkulator ili stroj za zbrajanje (samo zbrajanje i oduzimanje) – W. Leibniz nadogradio--> Pascaline (nazvana i „Arithmetic Machine“)- 1673.g. Gottfried Wilhelm von Liebniz konstruira ekvivalent stolnog kalkulatora sa 4 funkcije- Arithmometer – 1. komercijalni kalkulator 1862.g. – komercijalni uspjeh u prodaji meh. računala- Charles Babbage – prvi koncept modernih računala--> 1822.g. diferencijski stroj--> „father of computing“--> 1834.g. početak rada na analitičkom stroju – mehanički računski stroj vođen na paru s prepoznatljivim IPOS ciklusom – 1. moderno računalo opće namjene- bušene kartice – 1801.g. Jacquard (za prijenos informacija – unos podataka i operacija)- Von Neumman – 1. digitalno računalo („second father of the computer“)--> 5 funkcionalnih jedinica: memorija, ulazna jedinica, izlazna jedinica, upravljačka jedinica, aritmetičko logička jedinica- IPOS ciklus (input, processing, output, storage)- Babbage osmislio 3 niza bušenih kartica (Jacquard ih stvorio za tkalački stroj)--> za ulazne podatke, operande, za izlazne podatke- Ada Augusta Lovelace – prvi programer--> 1991.g. uz pomoć Babbageovih nacrta konstruira se analitički stroj trenutno na raspolaganju u Charles Babbage Institute u Minnesoti, SAD- moderno doba započinje upotrebom električne energije u strojevima za računanje- 1887.g. Herman Hollerith suvremenom tehnologijom konstruira sortni stroj --> popis stanovništva SAD-a 1890.g.- 1924.g. Tabulating Machine Company postaje International Business Machines Corporation, IBM- informacijsko komunikacijska tehnologija (ICT) – spreg mikroelektronike, telekomunikacija i računalne tehnologije- 1936.g. Konrad Zuse konstruira Z1 (elektromehanički releji)--> računski stroj koji se smatra prekretnicom u tehnološkom smislu (s mehaničkih strojeva na elektromehaničke računske strojeve)--> slijedili Z2, Z3 itd. – ne pripadaju eri elektroničkih računala- 1944.g. Howard Aiken u SAD-u konstruira elektromehanički stroj MARK 1--> zasnovan na idejama Babbagea (analitički stroj)--> smatra se 1. američkim računalom opće namjene- elektromehanički uređaji veliki i nespretni – traženje alternative- 1943.g. Engleska, izgrađeno računalo COLOSSUS – dešifriranje njemačkih poruka (2000 elek. cijevi)--> smatra se 1. elektroničkim računalom- 1942.g. Sveučilište Pennysylvania, SAD – izgradnja elektroničkog računala ENIAC--> smatra se da je povijest suvremenih računala započela ENIACom- 15. veljače 1946.g. – ENIAC dovršen - početak razdoblja elektroničkih digitalnih računala--> žično ostvaren program, dekadski sustav (binarni bi bio bolji jer ima samo 2 stabilna stanja – jednostavnije za realizaciju sklopovlja), nemogućnost pohrane programa, nije imao memoriju*najekonomičniji brojevni sustav: sa bazom prirodnog logaritma--> smatra se da je povijest suvremenih računala započela ENIAC-om--> J. Presper Eckert, John Mauchley, John Von Neumann--> nikad se nije koristio za svoju svrhu (računanje putanje balističkih projektila)

Page 2: Arhitektura računala - skraćena skripta

- Eckert i Mauchley nastavljaju rad na EDVAC-u --> trebao biti nasljednik ENIAC-a- 1952.g. von Neumman na Institutu za napredna istraživanja u Princetonu završava računalo IAS--> svojim konceptima predstavlja osnovne temelje današnjih računala- osnovna logička struktura računala s pohranjenim programom: ulazna jedinica, memorijska jedinica, aritmetičko-logička jedinica, izlazna jedinica, upravljačka jedinica--> model von Neummanova računala- 1946.g. Burks, Goldstein i von Neumman: „Uvodna rasprava o logičkom oblikovanju elektroničkog računarskog uređaja“ – ima dalekosežne posljedice--> jedan od najznačajnijih članaka na području arhitekture računala--> detaljno opisano računalo opće namjene s pohranjenim programom tzv. von Neummanovo rač.--> utjecaj na arhitekturu sljedećih generacija računala od elektroničkih računala realiziranih s elektronskim cijevima pa sve do generacije koja se temelji na tehnologiji vrlo visokog stupnja integracije VLSI- računalo – stroj koji prima i obrađuje podatke prema zadanim instrukcijama (programu)- izraz „arhitektura računala“--> 60-tih godina 20. stoljeća u tvrtki IBM - opisivanje programskog modela računala iz serije IBM 360na razini asemblera (engl. assembly language),tj. zbirnog jezika vrlo bliskog strojnom jeziku (engl. machine language) - prevođenje (jedan-naprama-jedan) instrukcija u zbirnom jeziku (ili asemblerkom jeziku) u instrukcije u strojnom jeziku;--> moguća zabuna jer se prevodilac za zbirni jezik također naziva asembler (isto kao i zbirni jezik)- dva su računala imala istu arhitekturu ako su imala jednaki skup strojnih instrukcija--> ovako opisana arhitektura obično se označavala kao ISA (Instruction Set Architecture)- sadržava opise elemenata kao:*skup strojnih instrukcija*tipovi podataka izravno podržani sklopovljem procesora*načini adresiranja* registri „vidljivi“ programeru na razini instrukcija u zbirnom jeziku- s vremenom se pojam arhitektura računala proširio--> nešto općenitije može se definirati kao slika računarskog sustava kojom se sustav predočava programeru u strojnom jeziku ali i programeru koji piše prevodice (compilere) za više prgramske jezike- ostvarivanje svih ciljeva (od povećanja propusnosti, što niže cijene do ekološkog zbrinjavanja računalnog otpada) postiže se zahvatima na trima sastavnim područjima arhitekture:1) sklopovskoj opremi (hardware)2) programskoj podršci (software)3) području koje se bavi problemom odnosa čovjeka i računala, te načinima upotrebe računala (humanware)- definicija arhitekture računalnog sustava:--> temelji se na hijerarhijskom modelu računalnog sustava„arhitektura računalnog sustava je dio računarske znanosti koji se odnosi na oblikovanje računarskih sustava radi ostvarivanja osnovnih ciljeva kao što su veća performansa, prilagodljivost,pouzdanost i raspoloživost uz što je moguće nižu cijenu, tj. što je moguće veći omjer performansa/cijena“--> „to se postiže upotrebom niza tehnika, postupaka i zahvata u svim hijerarhijskim razinama – od sklopovlja, programske podrške pa sve do razine interakcije čovjeka i stroja“- široki spektar različitih računala koja se razlikuju po svojoj: organizaciji i povezanosti sklopovskih komponenata, organizaciji programske podrške, namjeni--> razlikuju se u arhitekturi-izraz „građa i organizacija računala“ često podrazumijeva podrobne opise pojedinih sastavnica računala i konfiguracija koje sastavnice oblikuju

Page 3: Arhitektura računala - skraćena skripta

2. Von Neummanovo računalo- arhitektura računala – vještina oblikovanja računala radi ostvarivanja korisnikova zahtjeva; to se postiže primjenom niza tehnika, postupaka i zahvata u svim hijerarhijskim razinama računalnog sustava- 1946.g. Burks, Goldsten, von Neumann – „Uvodna rasprava o logičkom oblikovanju elektroničkog računarskog uređaja“--> u radu detaljno opisano računalo opće namjene s pohranjivanjem programa tzv. von Neummanovo računalo--> u radu su iznijeli osnovne zahtjeve koji su poslužili kao ishodište za određivanje arhitekture računala: - opća namjena i potpuno automatsko izvođenje programa

- osim podataka za računanje, pohranjivanje međurezultata i rezultata računanja- pohranjivanje programa u obliku slijeda instrukcija

- neke od izravnih posljedica ishodišnih zahtjeva:• instrukcije u računalu svedene na numerički kod; pohranjivanje podataka i instrukcija u jednakom obliku u istoj jedinici --> memorija ili spremnik tj. memorijska jedinica• postojanje jedinice za obavljanje aritmetičkih operacija (računalo je prvenstveno stroj za računanje), ali i logičkih operacija --> aritmetičko logička jedinica• postojanje jedinice koja tumači i razumije instrukcije svedene na numerički kod, a uz to upravlja slijedom izvršavanja instrukcija --> upravljačka jedinica• komunikacija računala s vanjskim svijetom --> ulazno-izlazne jedinice- postavljena osnovna logička struktura računala s pohranjenim programom koja se sastoji iz 4 osnovne funkcijske jedinice: aritmetičko logičke, upravljačke, memorijske, ulazno-izlazne--> model von Neumannovog računala ili tzv. von Neumannovo računalo (osnovna struktura koja proizlazi iz navedenih uvjeta) NULTA GENERACIJA – GENERACIJA MEHANIČKIH STROJEVA ZA RAČUNANJE (1644.-1945.)- između 1642. i 1644. Blaise Pascal izgradio je stroj koji je mogao obavljati računarske operacije zbrajanja i oduzimanja- 1673.g. Leibniz je oblikovao mehanički računarski stroj koje je uz zbrajanje i oduzimanje mogao obavljati i računske operacije množenje i dijeljenja – ekvivalent „džepnim kalkulatorima“- 1822.g. Babbage izgradio diferencijski stroj koji se temeljio na računu konačnih diferencija- 1834.g. Babbage je započeo rad na analitičkom stroju koji je obavljao 4 osnovne računske operacije i korjenovanje te je trebao biti računski stroj opće najmjene--> zamišljen kao stroj od 4 jedinice: memorije, jedinice za računanje (mill), ulazne jedinice (čitač bušenih kartica) i izlazne jedinice (pisača i bušača kartica)--> bio je programljiv – čitao instrukcije s bušenih kartica i izvršavao ih --> iz memorije je dohvaćao 2 broja predočena u dekadskom brojevnom sustavu, obavljao operaciju u jedinici za računanje te pohranjivap rezultat natrag u memoriju--> slijed bušenih kartica određivao je program koji se mogao upotrijebiti za više skupova podataka--> nikad nije bio dovršen zbog problema s mehaničkom izradom – zahtijevala na tisuće vrlo precizno

Page 4: Arhitektura računala - skraćena skripta

izrađenih zupčanika i osovina što je u 19.st. bilo tehnološki neizvodivo- računski stroj – prekretnica u tehnološkom smislu (sa potpuno mehaničkih strojeva na elektromehaničke računske strojeve) – Z1, temeljio se na elektromehaničkim relejima (K.Zuse)- 1944. Howard Aiken (SAD) izgradio elektromehaničko računalo MARK I --> smatra se prvim američkim računalom opće namjene--> pohranjivalo je 72 riječi od kojih je svaka bila predstavljena s 23 dekadske znamenke, a instrukcije su se izvršavale za 6 sekundiPRVA GENERACIJA – ELEKTRONIČKA RAČUNALA S ELEKTRONSKIM CIJEVIMA (1945.-1955.)- 1943.g. u Engleskog izgrađen COLOSSUS – za dekriptiranje njemačkih poruka--> smatra se prvim elektroničkim računalom--> imao oko 2000 elektronskih cijevi, u razvoju računala sudjelovao i Alan Turing- iste godine (1943.) Mauchley i Eckert započeli s izgradnjom računala ENIAC--> 18000 el. cijevi, 1500 releja, 30 tona, potrebno 140 kW--> završeno 1946.g. – mnogi smatraju da je povijest suvremenih računala započela s ENIAC-om- 1949.g. Wilkes u Cambridgeu izgradio računalo EDSAC--> smatra se prvim elektroničkim računalom s pohranjivanjem programa- Mauchley i Eckert radili su na EDVAC-u koji je trebao biti nasljednik ENIAC-a- u međuvremenu je von Neumann u Institutu za napredna istraživanja u Princetonu, započeoo projekt izgradnje računala IAS--> završeno 1952.g. – svojim konceptima predstavlja osnovne temelje današnjih računala- osnovni model računala, opisan u članku „Uvodna rapsrava...“, poznat je kao von Neummanov model računala- dok je von Neumann radio na oblikovanju IAS računala, na MIT-u su razvijali 16-bitno računalo Whirlwind I koje jeprvo računalo za upravljanje u stvarnom vremenu--> u sklopu Whirlwind projekta izumljena je memorija s magnetskim jezgricama- 1953.g. tada mala tvrtka IBM započinje s proizvodnjom računala IBM 701DRUGA GENERACIJA RAČUNALA – TRANZISTOR KAO GRAĐEVNA KOMPONENTA (1955.-1965.)- 1948.g. poluvodičku elektroničku komponentu – tranzistor izumili Bardeen, Brattain i Shockley--> pojednostavljeno ga možemo predočiti kao sklopka s 2 stanja (uključeno/isključeno) koja je električki upravljana--> revolucija na području računarske tehnologije i u kasnim 50-im u potpunosti postinuso el. cijevi- prvo računalo izgrađeno na temelju tranzistora: TX-0 (MIT)- 1960.g. tvrtka DEC na tržište plasira prvo malo računalo (miniračunalo) PDP-1- 1965.g. DEC proizvodi 12-bitno miniračunalo PDP-8 (50 000 prodanih)- 1961.g. IBM proizveo malo poslovno računalo IBM 1401, a odmah sljedeće godine IBM 7094 koje je bilo jedno od vodećiih računala za upotrebu na znanstvenom području- 1964.g. tvrtka CDC izgradila prvo superračunalo CDC 6600 za znanstvenu primjenu--> vodeći istraživač Seymour Cray koji će kasnije osnovati svoju tvrtku i graditi superračunala Cray I, II,... ,Cray –XMP- pod superračunalo podrazumijevamo računarski sustav koji svojim računskim sposobnostima odnosno performansom udovoljava zahtjevima obrade na području vodećih istrživanja u znanosti i inženjerstvuTREĆA GENERACIJA – INTEGRIRANI SKLOPOVI (1965. – 1980.)- izum postupka kojim se deseci tranzistora mogu integrirati na komadiću silicija i oblikovati u integrirani sklop ili čip (Noyce, 1958.) – najavio još jednu prekretnicu u izgradnji računala- zahvaljujući integriranim sklopovima bilo je moguće graditi manja, brža i jeftinija računala- u ovoj generaciji poluvodičke memorije zamjenjuju memorije s magnetskim jezgricama,a brzina poluvodičkih memorija dopušta uporabu mikroprogramiranja u izvedbi upravljačkih jedinica- integrirani sklopovi zbog svoje niske cijene dopuštaju gradnju sustava s naglašenim stupnjem paralelnosti (uvišestručenje jedinica za obradu, izvedba protočnih instrukcijskih i aritmetičkih struktura) te višeprogramski rad pri kojem se u memoriji računala istodobno nalazi više korisničkih programa, a pritom operacijski sustav omogućuje istodobno izvođenje dijelova pojedinih programa

Page 5: Arhitektura računala - skraćena skripta

- računala i porodice računala iz ove generacije: IBM System/360 Model 30, 40, 50 i 65, UNIVAC 1100 te DEC-ove PDP-11 i VAX 11 porodice računala- 1974.g. prvo se vektorsko superračunalo Cray I pojavilo na tržištu- u drugoj polovici 1971.g. pojavljuje se na tržištu prvi 4-bitni mikroprocesor Intel 4004 (bio je predviđen kao kalkulatorski čip)- godinu dana kasnije pojavljuje se prvi 8-bitni mikroprocesor opće namjene Intel 8008- 1974.g. pojavljuje se druga generacija 8-bitnih mikroprocesora čiji su predstavnici Motorola 6800 i Intel 8080 te nagovještavaju revoluciju na području računalaČETVRTA GENERACIJA RAČUNALA – SKLOPOVI VRLO VISOKOG STUPNJA INTEGRACIJE (1980. – ?)- zahvaljujući razvoju tehnologije vrlo visokog stupnja integracije VLSI (uz nisku cijenu omogućuje realizaciju integriranih sklopova koji imaju sve veći broj tranzistora) računarski sustavi postaju dostupni vrlo širokom spektru korisnika i koriste se u svim sferama ljudske djelatnosti- povećanje broja tranzistora integriranih na čipu opisuje Mooreov zakon koji govori da se broj tranzistora na čipu udvostručuje svakih 18-24 mjeseca- četvrtu generaciju računala označila je industrija osobnih računala- IBM-ova računala temeljena na Intelovom procesoru Intel 8088 (na tržištu 1981.) postala su najprodavanija računala u povijesti- pojavili se i drugi proizvođači računala (osim IBM-a) – Commodore, Apple, Amiga, Atari koji su temeljili dizajn na tzv. non-Intel CPU, tj. mikroprocesorima drugih proizvođača- mikroprocesori se ne koriste samo kao građevne sastavnice računala opće namjene, oni se rabe za izgradnju ugrađenih računalnih sustava koji se kao sastavnice ugrađuju u proizvode kao što su videoigre, kućanske naprave, laserski pisači, mobilni telefoni, automobili- zahvaljujući razvoju tehnologije, ali i arhitekture računala, ova je generacija obilježena procesorima vrlo velikih performansi- značajke procesora i računarskih sustava 4. generacija:--> paralelizam na razini instrukcija – procesori koji izvršavaju istodobno veći broj instrukcija--> višeprocesorski sustavi na čipu odnosno višejezgreni procesori--> višedretveni procesori (multithread processor)--> povećani kapacitet priručne memorije (cache memorija)--> procesori za multimedijsku primjenu temeljeni na vrlo dugim instrukcijskim riječima – VLIW (Very Long Instruction Word)- razvoj tehnologije sklopovskih sastavnica snažno je utjecao na brzinu računala*osnovna operacija je ona koja je izravno podržana sklopovljem (zbrajanje 2 broja)

FUNKCIJSKE JEDINICE VON NEUMNNOVOG RAČUNALAUPRAVLJAČKI TOK, INSTRUKCIJSKI TOK I TOK PODATAKA U NEUMANNOVOM MODELU RAČUNALA-funkcijske jedinice računala povezane su tokom podataka, instrukcijskim tokom i tokom upravljačkih signala (većinu upravljačkih signala generira upravljačka jedinica na temelju tumačenja instrukcije)- na slici str.3 debljom puno linijom označen je tok podataka, instrukcijski tok je označen tanjom punom linijom, a crtkanom linijom tok upravljačkih signala- vidimo da tok podataka i instrukcijski tok izviru iz memorijske jedinice jer su podaci i instrukcije pohranjeni u toj jedinici- između memorijske jedinice i aritmetičko-logičke jedinice uspostavljen je dvosmjeran tok podataka: podaci (operandi) koji sudjeluju u aritmetičkim ili logičkim operacijama dohvaćaju se iz memorije, a nakon obavljene operacije podaci koji predstavljaju rezultat obrade pohranjuju se natrag u memorijsku jedinicu- memorijska jedinica nema sposobnost obrade, odnosno ne može obavlja ni aritmetičke ni logičke operacije nad operandima- uočavamo da nema izravnog toka podataka između memorijske jedinice i ulazno-izlazne jedinice. Izmjena podataka između njih u von Neumannovog modelu računala ostvaruje se neizravno: podaci (rezultat obrade) iz memorijske jedinice upućeno ulazno-izlaznoj jedinici moraju proći kroz aritmetičko-logičku jedinicu. Jednako tako, podaci iz ulazno-izlazne jedinice (ulazni podaci) upućeni

Page 6: Arhitektura računala - skraćena skripta

memoriji moraju proći kroz aritmetičko-logičku jedinicu. To je ujedno i razlog postojanja dvosmjernog toka podataka između aritmetičko-logičke jedinice i ulazno-izlazne jedinice.--> prethodno opisani smjerovi podataka odgovaraju dvjema operacijama:*izlaznoj operaciji (smjer podataka od memorije prema ulazno-izlazne jedinice)*ulaznoj operaciji (smjer podataka od ulazno-izlazne jedinice prema memorijskoj jedinici)--> obje su operacije određene strojnim instrukcijama- vidimo da ALJ nepotrebno sudjeluje u izmjeni podataka između memorijske i ulazno-izlazne jedinice--> to ujedno znači da tijekom izmjene podataka između memorije i ulazno-izlazne jedinice ona ne može obavljati svoj osnovni zadatak – aritmetičke i logičke operacije--> da bi se to izbjeglo, von Neumannov model računala modificiran je tako da je uspostavljen izravan tok podataka između memorijske i ulazno-izlazne jedinice- izravna veza između memorijske i ulazno-izlazne jedinice naziva se izravan pristup memoriji (DMA – Direct Memory Access)- prijenosom podataka na tom putu upravlja poseban DMA upravljački sklop pa je omogućen istodobni prijenos podataka i obrada u aritmetičko-logičkoj jedinici- tok podataka uspostavljen je i između ulazno-izlazne jedinice koja obično predstavlja sučelje s ulazno-izlaznim (perifernim) uređajima (prikazna jedinica, zaslon, pisač, miš, tipkovnica i sl.)- instrukcijski tok usmjeren je od memorijske prema upravljačkoj jedinici- u skladu s ishodišnim zahtjevima (instrukcije svedene na numerički kod i pohranjene u istoj memorijskoj jedinica kao i podaci) nema razlike u obliku prikaza podataka i instrukcija- jedino usmjerenost toka između memorijske jedinice i upravljačke jedinice određuje da se na tom spojnom putu nalaze instrukcije- instrukcije, odnosno numerički kodirane instrukcije dekodiraju se u upravljačkoj jedinici i na temelju njihova dekodiranja upravljačka jedinica generira sljedove upravljačkih signala kojima pobuđuje sklopove u ALJ, ali i operacije u ostalim funkcijskim jedinicama--> npr. ako je dekodirana instrukcija takva da određuje operaciju dohvata podatka iz memorijske jedinice, upravljačka jedinica će generirati upravljački signal ČITAJ (READ) i uputiti ga memorijskoj jedinici- na temelju zadatka upravljačke jedinice očekujemo da svi upravljački signali izviru iz nje, no na slici vidimo da postoje i upravljački signali usmjereni prema upravljačkoj jedinici --> u prvotnom von Neumannovog modelu tako usmjereni signali nisu postojali, ali vrlo brzo se pokazala potreba za njima jer se posebni upravljački signali, generirani od ulazno-izlazne jedinice, koriste za prekid izvođenja tekućeg programa, odnosno izvedbu prekidnog sustava (interrupt system) kojim se ostvaruje jedan od osnovnih načina izmjena podataka između vanjskog svijeta i računala--> obično se signalne linije kojima se prenose upravljački signali nazivaju prekidne linije, a signali zahtjev za prekid (Interrupt Request - IRQ)- uočavamo da su ALJ i UJ prikazane u zajedničkom okviru – razlog tome je što se objedinjenje ALJ s najnužnijom memorijom (radnim registrima) i UJ naziva središnja (centralna) procesorska jedinica (CPU) ili samo procesor*kada procesoru pridružimo preostale funkcijske jedinice, periferne uređaje i odgovarajuću programsku opremu, govorimo o računalu, odnosno računarskom sustavu ARITMETIČKO-LOGIČKA JEDINICA- sastoji se od:• sklopova koji obavljaju aritmetičke i logičke operacije na podacima (ti podaci se zovu operandi)• registara za privremeno pohranjivanje operanada i rezultata- za osnovu digitalnog računala Burks, Goldestin i von Neumann uzeli binarni brojevni sustav--> jednostavnija tehnološka izvedba sklopova (jednostavnije realizirati sklop s 2 diskretna stanja nego sklop s 10 diskretnih stanja)--> ekonomičnije prikazivanje brojeva--> ali i zato što „računalo nije samo aritmetički računski stroj, već po svojoj prirodi treba biti i logički. Logički sustavi su sustavi koji barataju s 2 stanja istinito – lažno, odnosno 0 ili 1“.

Page 7: Arhitektura računala - skraćena skripta

- aritmetičko-logička jedinica von Neumannovog računala IAS imala je sklop za zbrajanje (zbrajalo) i sklop za posmak (shifter) kojim se podatak posmiče ulijevo ili udesno za jedno ili veći broj mjesta--> imala je i dva 40-bitna registra za privremeno pohranjivanje operanada i rezultata: registar AC (akumulator) i registar MQ koji se upotrebljavao kao „proširenje“ akumulatora AC za potrebne pohrane rezultata operacija množenja i dijeljenja – te operacije daju rezultat dvostruke duljine operanada (80 bitova) pa se 40 značajnijih bitova rezultata smješta u AC, a 40 manje značajnih bitova u MQ- pošto je ALU računala IAS imala samo zbrajalo i sklop za posmak, operacija oduzimanja izvršavala se zbrajanjem umanjenika (minuenda) i potpunog komplementa odbitka (suptrahenda)- množenje i dijeljenje nije bilo izvedeno sklopovljem već se izvršavalo pod programskim upravljanjem izvođenjem uzastopnih operacija zbrajanja, odnosno oduzimanja i posmaka (prisjeti se: dualizam sklopovske i programske opreme**)- operandi su u IAS računalu imali duljinu od 40 bitova: 39 bitova bilo je namijenjeno za znamenke, a jedan bit za predznak--> zašto je izabrana duljina od 40 bitova? (Pozornost von Neumanna i ostalih autora bila je usmjerena na oblikovanje računala koje će rješavati numeričke zadatke. Na temelju analize tadašnjih matematičkih problema (1946.) i stvarnih tehnoloških ograničenja došli su do potrebnog kapaciteta radne memorije i duljine riječi, odnosno duljine operanada: 4096 riječi duljine 40 bitova)--> naime, duljina od 40 bitova omogućuje točnost računanja na 12 decimala. Brojevi su bili prikazani u obliku predznačnih razlomljenih brojeva s čvrstim pomičnim zarezom (fixed-point) u rasponu od +0.999999999998 do -0.999999999998. Brojevi koji su se nalazili izvan tog raspona morali su biti skalirani, odnosno normaliziraniUPRAVLJAČKA JEDINICA- na temelju dekodiranja strojne instrukcije generira sve potrebne upravljačke signale za vremensko vođenje i upravljanje ostalim jedinicama računala--> ti signali se dovode u tzv. upravljačke točke i njima se aktiviraju sklopovi u pojedinim funkcijskim jedinicama- uz to, upravljačka jedinica zadužena je za automatsko izvršavanje programa – upravljanje slijedom izvršavanja instrukcija kojima je predočen algoritam obrade--> svaki korak algoritma predstavljen je jednom strojnom instrukcijom ili slijedom strojnih instrukcija (1:N – viši prog. jezik : strojni jezik)– one određuju elementarne operacije koje sklopovlje može izvesti

- instrukcije određuju elementarne operacije koje sklopovlje može izvesti- na slici se prikazuje format strojne instrukcije IAS računala (gledaj samo 1 instrukciju!!) – pod formatom strojne instrukcije podrazumijeva se oblik (organizacija) strojne instrukcije s označenim poljima (nizovima binarnih znamenki 0 i 1) kojima je naznačena funkcija- strojna instrukcija je duljine 20 bitova i organizirana je u 2 polja: * 8 bitova predstavljaju polje operacijskog koda. Ono određuje operaciju koja će se izvršiti. Svakoj strojnoj instrukciji iz skupa instrukcija jednoznačno je pridružen 8-bitni operacijski kod. To znači da IAS može imati skup strojnih instrukcija koji se sastoji maksimalno od 28=256 instrukcija.* Drugo, 12-bitno polje je adresno polje koje sadržava adresu memorijske lokacije na kojoj se nalazi podatak (operand). Svakoj memorijskoj lokaciji u memorijskoj jedinici jednoznačno je pridružena dresa što znači da se binarnim slijedom iz adresnog polja može izravno adresirati 212=4096 memorijskih lokacija. 12-bitna duljina adresnog polja ujedno je određivala i ukupni kapacitet memorije: 4096 40-bitnih riječi.

Page 8: Arhitektura računala - skraćena skripta

- strojne instrukcije koje imaju samo jedno adresno polje nazivaju se jednoadresne strojne instrukcije.- vidimo da je duljina memorijske riječi (40 bita) prilagođena duljini riječi podatka (40 bita), dok je duljina strojne instrukcije 20 bitova. To je omogućilo da se 2 strojne instrukcije smještaju u jednu memorijsku lokaciju: lijeva strojna instrukcija i desna strojna instrukcija.- program se izvršava tako da upravljačka jedinica pribavlja (fetch) instrukcije u kodiranom obliku iz memorijske jedinice (u IAS računalu se istodobno pribavljaju 2 strojne instrukcije: lijeva i desna), dekodira ih i u skladu s njihovom funkcijom generira upravljačke signale na temelju kojih funkcijske jedinice (ALJ,M,U/I J) izvode potrebne operacije- algoritam obrade je u obliku slijeda strojnih instrukcija pohranjen je u memorijskoj jedinici u kojoj su pohranjeni i podaci. Računalo s takvom značajkom naziva se računalo s pohranjivanjem programa.- postavlja se pitanje: ako su podaci i strojne instrukcije predočene binarnim kodovima i ako su pohranjeni u istoj memorijskoj jedinici, kako se zna što je podatak, a što instrukcija i razlikuju li se oni na temelju slijeda bitova?--> na temelju slijeda bitova nije moguće razlikovati podatak od strojne instrukcije- za IAS računalo kažemo da je akumulatorsko orijentirani stroj zato što središnju ulogu u izvođenju aritmetičkih operacija ima spremnik – registar: akumulator AC- kako će se izvoditi aritmetičke operacije koje zahtijevaju 2 operanda npr. C=A+B, gdje su A i B operandi?--> općenito, možemo napisati C=f(A,B). Ako ovaj izraz promatramo u svjetlu strojnim instrukcija, onda bismo mogli reći da funkciji f odgovara polje operacijskog koda, a da A i B predstavljaju adrese izvorišta operanada, dok je C adresa odredišta rezultata. U skladu s time mogli bismo očekivati da strojne instrukcije budu troadresne odnosno da imaju sljedeći format: op kod, adresno polje1, adresno polje2, adresno polje3, pri čemu adresna polja 1 i 2 predstavljaju adrese izvorišta, a adresno polje 3 adresu odredišta. No strojna instrukcija IAS računala je jednoadresna. Kako se jednoadresnom instrukcijom može podržati operacija koja zahtijeva 3 adrese? To je riješeno ovako: U akumulatoru AC nalazi se jedan od operanada (AC je izvorište jednog operanda), drugi se operand nalazi u memorijskoj jedinici i on je određen 12-bitnom adresom iz adresnog polja strojne instrukcije. Odredište rezultata je akumulator AC. Dakle, umjesto C=f(A,B) možemo napisati A=f(A,M) gdje A odgovara akumulatoru AC, a M adresi memorijske lokacije. Jasno, nakon obavljene specificirane operacije operand u AC je „izgubljen“ jer se u akumulatoru AC sada nalazi rezultat.- računalo IAS imalo je 5 osnovnih tipova strojnih instrukcija koje se mogu razvrstati na:1. instrukcije za prijenos (premještanje) podataka – data transfer2. instrukcije za obradu podataka – data processing 3. ulazno-izlazne instrukcije4. instrukcije za upravljanje izvršavanjem programa – program control5. instrukcije s djelomičnom zamjenom – partial substitution- prva 4 tipa instrukcija karakteristična su i za današnja računala

- instrukcije s djelomičnom zamjenom bile su strojne instrukcije koje su mijenjale samo adresno polje strojnih instrukcija. Pomoću njih su programi mogli preoblikovati svoje strojne instrukcije tijekom izvođenja i oda se ista instrukcija mogla primjenjivati na drugom skupu podataka. Ovakva se mogućnost, da program mijenja sam sebe, vrlo brzo pokazala kao neprikladna jer otežava ispitivanje ispravnosti rada programa i

Page 9: Arhitektura računala - skraćena skripta

otkrivanja grešaka u programu te se početkom 60-ih godina prošlog stoljeća napušta uporaba instrukcija za modifikacije adresnog dijela strojnih instrukcija.

Slika prikazuje organizaciju središnje procesne jedini, tj. procesora računala IAS. Dvije se strojne instrukcije smještene u jednoj 40-bitnoj riječi, koja je pribavljena iz memorijske jedinice, privremeno smještaju u memorijski registar podataka S. Iz S registra desna se strojna instrukcija smješta u instrukcijski registar I. Lijeva se strojna instrukcija pohranjuje u privremeni registar CR. Operacijski kod (8-bita) desne instrukcije se prosljeđuje sklopu za dekodiranje (izravno se taj sklop naziva funkcijska tablica), a preostalih se 12 bitova (adresno polje) prenosi u memorijski adresni registar M. M sadržava adresu operanda koji će se dohvatiti iz memorijske jedinice i sudjelovati u zadanoj operaciji. Nakon što se desna strojna instrukcija izvede, iz privremenog registra CR se premješta lijeva instrukcija u instrukcijski registar I i izbodi se na prethodno opisan način. Sadržaj 12-bitnog registara PC(P) povećan za jedan pokazuje sljedeću memorijsku riječ koja sadržava sljedeće dvije strojne instrukcije programa. Ako je bila dekodirana strojna instrukcija grananja ili skoka (sljedeća strojna instrukcija nije ona koja je uzastopna u programu), onda se njezino adresno polje, umjesto u registar M, premješta u programsko brojilo PC(P). Na taj je način pripremljena adresa memorijske riječi koja sadržava dvije instrukcije koje će se sljedeće pribaviti.- programsko brojilo PC sadržava adresu sljedeće strojne instrukcije (odnosno, u računalu IAS adresu mem. lokacije koja sadržava instrukcijski par)- instrukcijski registar IR sadržava instrukciju čije je izvođenje upravo u tijeku--> u računalu IAS programsko se brojilo nazivalo upravljačko brojilo CC (Control Counter), a instrukcijski registar se nazivao registar funkcijske tablice FR (Function Table Register)- izvođenje strojne instrukcije odvija se u 2 faze (obje faze se nazivaju i instrukcijski ciklus): PRIBAVI (fetch) i IZVRŠI (execute)*faza PRIBAVI – tijekom ove faze upravlj. jedinica pribavlja strojnu instrukciju iz memorijske jedinice

1. KORAK: iz memorije se pribavlja strojna instrukcija i smješta se u instrukcijski registar IR;adresa strojne instrukcije nalazi se u programskom brojilu PC--> u IAS računalu pribavljaju se dvije strojne instrukcije smještene u 40-bitnoj riječi 2. KORAK: sadržaj programskog brojila PC se povećava za jedan i time određuje strojnuinstrukciju koja neposredno slijeda za instrukcijom koja je upravo pribavljena--> u računalu IAS određuje se par strojnih instrukcija iz slijeda 3. KORAK: dekodira se 8-bitni operacijski kod strojne instrukcije (pribavljene u 1.koraku)

- trećim korakom završava faza PRIBAVI. Upravljačka jedinica prelazi u fazu IZVRŠI.*faza IZVRŠI – upravljačka jedinica, ovisno o ishodu dekodiranja operacijskog koda, generira sljedove upravljačkih signala kojima pobuđuje operacije izravno podržane sklopovljem (npr. prijenos podataka iz memorijske jedinice, prijenos podataka između registra i aritmetičko-logičkih sklopova, aktiviranje aritmetičko-logičkih sklopova, prijenos podataka memorijskoj jedinici, promjena vrijednosti programskog brojila – ako je riječ o strojnoj instrukciji grananja ili skoka)

4. KORAK: pobuđuju se sljedovi operacija kojima se izvršava instrukcijaPRIMJER: faza IZVRŠI za aritmetičku operaciju zbroji (add) može biti predočena koracima:

4. KORAK: dohvati podatak (operand) iz memorijske lokacije i smjesti ga u memorijski registarpodataka S; adresa memorijske lokacije na kojoj se nalazi operand određena je sadržajemmemorijskog adresnog registra M5. KORAK: izvedi operaciju zbrajanja; rezultat operacije smješta se u akumulator AC (A)

- izvođenjem posljednjeg koraka u fazi IZBRŠI, upravljačka jedinica se vraća na 1. korak faze PRIBAVI i nastavlja se faza PRIBAVI- ritam izmjene PRIBAVI – IZVRŠI nastavlja se sve dok se ne izvede strojna instrukcija za zaustavljanje rada (Halt)*u suvremenim procesorima promjene stanja PRIBAVI – IZVRŠI događaju se i nekoliko stotina milijuna puta u sekundi- u memorijskoj su jedinici pohranjeni podaci i strojne instrukcije u istom obliku – kao nizovi 0 i 1--> kako upravljačka jedinica razlikuje strojnu instrukciju i podatak?

Page 10: Arhitektura računala - skraćena skripta

--> na temeljnu binarnog niza nije ih moguće razlikovati--> strojna instrukcija i podatak mogu se razlikovati jedino na temelju stanja upravljačke jedinice: *ako se upravljačka jedinica nalazi u fazi PRIBAVI, tada se riječ pribavljena iz memorijske jedinice smatra strojnom instrukcijom (ili parom strojnih instrukcija u računalu IAS) i smješta se u instrukcijski registar IR, odnosno u slučaju računala IAS – desna strojna instrukcija smješta se u IR, a lijeva u registar CR*ako se upravljačka jedinica nalazi u fazi IZVRŠI, riječ koja se dohvaća iz memorijske jedinice tumači se kao podatak (operand)- jednako tako, ako se tijekom faze IZVRŠI riječ pohranjuje u memorijsku jedinicu, onda je to podatak ili rezultat neke aritmetičke ili logičke operacijeMEMORIJSKA JEDINICA- memorijska jedinica IAS računala bila je za današnje stanje razvoja tehnologije vrlo skromnog kapaciteta: 4096 40-bitnih riječi dakle 4 K 40-bitnih riječi (1 K=210)- no izvedba 163840 bistabila, tj. 4096*40 bila je zbog tadašnjih tehnoloških ograničenja ocijenjena kao neizvediva- priklonili su se rješenju u kojem je memorijska jedinica bila realizirana uporabom elektronskih cijevi sličnih katodnoj cijevi koje su bile razvijene u tvrtki RCA, Princeton--> te su se cijeli nazivale Selectron i za izvedbu memorijske jedinice bilo je upotrebljeno 40 takvih Selectrona – svako od njih bio je kapaciteta 4096 bita- svaka je elektronska cijev pohranjivala bitove u obliku tamnih (0) i svijetlih polja (1), a zaslon cijevi osvježavao se elektronskim snopom- elektronski snop rabio se i za čitanje i upisivanje podataka u Selectron, tako da je to bila memorija s izravnim pristupom do željenog položaja (random access memory)- naime, za memorije s izravnim pristupom vrijedi da je vrijeme pristupa memorijskoj lokaciji neovisno o položaju te lokacije u memorijskoj jedinici. Brzina memorijske jedinice tj. vrijeme pristupa (memory access time) bilo je 50 μs- memorijska jedinica nema sposobnosti obrade podataka, već može izvoditi dvije vrlo važne operacije – pohranu podataka i dohvaćanje prethodno pohranjenog podatka- dohvaćanje podatka opisano je operacijom čitanja (read), pohrana pod. operacijom pisanja (write)- riječ iz memorije dohvaća se tako da se adresa memorijske lokacije čiji se sadržaj želi dohvatiti smješta u memorijski adresni registar M i time adresa postaje raspoloživa na adresnoj sabirnici, a zatim upravljačka jedinica generira upravljački signal ČITAJ koji se šalje memorijskoj jedinici- izabrana se riječ, nakon isteka vremena pristupa memoriji, npr. 50 μs za IAS računalo, prenosi preko puta podataka (sabirnice podataka) procesoru i smješta u memorijski registar podataka S- napomenimo da operacija čitanja nije destruktivna operacija, odnosno ona ne „ruši“ ili ne mijenja sadržaj pročitane memorijske lokacije- operacija pisanja izvodi se na sljedeći način: podatak koji se želi pohraniti u memorijskoj jedinici smješta se u memorijski registar podataka S i time postaje raspoloživ na putu podataka (sabirnici podataka) između procesora i memorije, adresa memorijske lokacije na kojoj se želi pohraniti podatak postavlja se u memorijski adresni registar M i time adresa postaje raspoloživa na adresnoj sabirnici. Upravljačka jedinica generira upravljački signal PIŠI i šalje ga memorijskoj jedinici. Nakon isteka vremena pristupa memoriji, podatak biva pohranjen na izabranoj memorijskoj lokaciji.- operacija pisanja je uvjetno rečeno destruktivna u smislu da je novi podatak koji se pohranjuje na željenu memorijsku lokaciju, „prebrisao“ stari sadržaj na toj memorijskoj lokaciji- von Neumann, Burks i Goldstein, svjesni da postoje mnogi važni razredi problema koji zahtijevaju veći kapacitet memorijske jedinice od 4096 riječi, razmatraju hijerarhijsku organizaciju memorije--> ona se sastoji od radne (primarne ili glavne) memorije , sekundarne memorije i treće razine tzv. neaktivne memorije (dead store)• radna (primarna ili glavna) memorija -u IAS računalu ostvarena Selectronima i izravno je podržavala rad procesora- ujedno i najbrža memorija u predloženoj hijerarhijskoj organizaciji• sekundarna memorija

Page 11: Arhitektura računala - skraćena skripta

- većeg kapaciteta nego radna memorija, jeftinija (cijena po bitu manja), ali sporija- s njom upravlja računalo, predstavlja njegov sastavni dio- kao medij za pohranu podataka koristi magnetsku žicu ili svjetlosno osjetljiv film• neaktivna memorija (dead store)- nije sastavio dio računala, po potrebi se uključuje u računalo- od memorije u drugoj razini razlikuje se samo po raspoloživosti (zahtjeva ručni zahvat operatera da bi se uključila u računalo)ULAZNO – IZLAZNA JEDINICA- računalo IAS razmjenjivalo je podatke s okolinom, odnosno operaterom- za to su bile predviđene ove jedinice:*grafička izlazna jedinica – za to su poslužile elektronske cijevi Selectron koje su imale svjetla polja na pozicijama na kojima su bile pohranjene jedinice i tamna polja koja su odgovarala nulama*teleprinter s pomoćnom magnetskom žicom – upotrebljavao se kao ulazno-izlazna jedinica--> oprema teleprintera bila je preinačena tako da je omogućavala i upis podataka s bušene papirnate vrpce na magnetsku žicu i obratno- računalo IAS bilo je jednokorisničko računalo (single user oriented) – dopuštalo je istodobni rad sani jednom korisniku i zato se izmjena podataka s vanjskim svijetom obavljala pod izravnim upravljanjem procesora- autori računala IAS razmatraju mogućnost istodobnog rada ulazno-izlazne jedinice i procesora, međutim, zbog tehnoloških ograničenja odustaju od takve izvedbe- tok podataka između ulazni-izlazne jedinice i memorije u von Neumannovom računalu--> preko akumulatora A pomoću programskog upravljanja- von Neumannov model računala pripada tipu arhitekture SISD- poboljšanja funkcionalnih jedinica od izvornog von Neumannovo računala do danas

JEDNOSTAVNO MIKRORAČUNALO – VON NEUMANNOV MODEL RAČUNALA- velika je pozornost posvećena von Neumannovom računarsko modelu i IAS računalu--> osnovni razlog zato što je taj model, tijekom skoro pola stoljeća, odredio osnovne zamisli u oblikovanju računala i snažno utjecao na arhitektonske značajke suvremenih računala- zamisli kao što je računalo opće namjene, svođenje podataka i instrukcija na numerički (binarni) kod, njihovo pohranjivanje u istoj memorijskoj jedinici, 4 osnovne funkcijske jedinice (ALJ, UJ, memorijska jedinica, ulazno-izlazna jedinica) i 4 osnovna razreda strojnih instrukcija (instrukcije za prijenos podataka, instrukcije za obradu podataka, ulazno-izlazne instrukcije, instrukcije za upravljanje izvršavanjem programa) – određuju značajke koje nalazimo u suvremenim računalima- naravno, za više od 5 desetljeća von Neumannov model računala doživio je brojne promjene i poboljšanja koja su se snažno odrazila na njihovoj performansi, pouzdanosti, raspoloživosti, prilagodljivosti i dramatičnom padu cijene računala- veliku je zaslugu za sve to imao strahoviti tehnološki napredak, posebno mikroelektronike, odnosno tehnologije visokog stupnja integracijeVON NEUMANNOVO RAČUNALO – RAČUNALO SISD- računala temeljena na von Neumannovom modelu razvrstavamo, u skladu s Flynnovom klasifikacijom, u SISD (Single Instruction Stream Single Data Stream) – arhitekturu računala s jednim instrukcijskim tokom i jednim tokom podataka- ako pažljivo promotrimo sliku na str. 3 vidimo da model ima samo jedan tok podataka i samo jedan instrukcijski tok- oba izviru iz memorijske jedinice, a „susreću“ se u ALJ- fizička realizacija putova za prijenos podataka i instrukcija je takva da se isti put (sabirnica podataka) koristi za oba toka--> posljedica: istodobno na tom putu ne mogu postojati i jedan i drugi tok pa je obrada strogo slijedna (sekvencijalna)- ako analiziramo aktivnosti tijekom instrukcijskog ciklusa (faze PRIBAVI i IZVRŠI), možemo utvrditi da je posebno intenzivan promet i instrukcija i podataka između procesora i memorijske jedinice:

Page 12: Arhitektura računala - skraćena skripta

tijekom faze PRIBAVI procesor obavezno jednom ili više puta uzastopce pristupa memorijskoj jedinici pribavljajući strojnu instrukciju; tijekom faze IZVRŠI, ovisno o vrsti operacije koju treba izvesti, procesor također za većinu operacija pristupa memorijskoj jedinici da bi dohvatio operande ili pak pohranio rezultatPojednostavljeni prikaz von Neumannovog računala:- vidimo da je na toj razini apstrakcije računalo prikazano samo procesorom, memorijskom jedinicom i spojnim putem između njih- promet podataka (u širem značenju – jer su i strojne instrukcije svedene na binarni kod)se odvija spojnim putem, a brzina obrade očito ovisi o njegovoj propusnosti- nažalost, propusnost spojnog puta je takva da se samo jedan podatak ili samo jedna strojna instrukcija mogu u vremenu prenijeti između procesora i memorijske jedinice- J. Backus, jedan od autora programskog jezika FORTRAN, u kritici von Neumannovog modela računala nazvao je taj spojni put „von Neumannovim uskim grlom“- Backus tvrdi da mora postojati „manje primitivan način“ ostvarivanja obrade podataka negoli je to „pumpanje“ ogromne količine podataka naprijed-natrag kroz taj spojni put

Page 13: Arhitektura računala - skraćena skripta

3. Arhitektonske generacije računalaPRVA TEHNOLOŠKA GENERACIJA (1951-1959)- elektronske cijevi (vacuum tube)- akustičke memorije – mali mapacitet, skupe i nepouzdane- strojni jezik- U/I bušene kartice- magnetski bubanj, magnetska traka- „electronic brains that would changed the world“- 1951.g. na tržištu prvo komercijalno računalo (prije toga su bili samo za znanstvena istraživanja)DRUGA TEHNOLOŠKA GENERACIJA (1959-1964)- tranzistor 1947.g. – W. Brattain, J. Bardeen i W. Schockley (dobili Nobelovu nagradu)- memorije s feritnim magnetskim jezgricama – znatni kapacitet, razumna cijena i pouzdanost- masovne memorije – magnetske trake, diskovi i bubnjevi- viši programski jeziciTREĆA TEHNOLOŠKA GENERACIJA (1964-1971)- integrirani sklop 1958. g. – J. Kilby i R. Noyce- integrirani sklopovi niskog i srednjeg stupnja integracije*stupanj integracije=broj komponenti integriranih na jediničnoj površini- integrirane poluvodičke memorijeČETVRTA TEHNOLOŠKA GENERACIJA (1971-danas)- 1970.g. T. Hoff – dizajniranje integriranog sklopa za digitalni sat--> prvi mikroprocesor Intel 4004- integrirani sklopovi višeg stupnja integracije- osobito mikroprocesori i memorije- Apple I – procesorska ploča 1977.- Apple II – cjelokupni mikroračunalni sustav (tastatura,monitor, disketna jedinica i operacijski sustav)- 1981.g. IBM Personal Computer, PC, s Intelovim mikroprocesorskim čipom i Microsoftovim OS-om- masovne memorije – savitljivi diskovi, winchester diskovi, videodiskovi- programski jezici vrlo visoke razine --> objektno orijentirano programiranje- računalne mreže (LAN, WAN)PETA TEHNOLOŠKA GENERACIJA- računala izgrađena pomoću organskih sastavnih dijelova; DNK računala, biometrijska računala--> uzor u biološkim sustavima- klasifikacija temeljena na arhitekturi i organizaciji računala- 1951.g. UNIVAC I (UNIVersal Automatic Computer)--> prvo elektroničko računalo opće namjene--> prvo komercijalno računalo (komercijalna verzija ENIAC-a)PRVA ARHITEKTONSKA GENERACIJA- računala Von Neumannove strukture --> računala s pohranjenim programom- većina računala prve arhitektonske generacije unikati- središnji položaj aritmetičko-logičke jedinice--> osnovna značajka računala prve arhitektonske generacije--> sav promet putem akumulatorskog registra- računala sa sličnom strukturom izvode se i u novijim tehnološkim generacijama, a ne samo u tehnici elektronskih cijevi- pojedinačno izvođenje programa: EDVAC, EDSAC...*sva računala 1. arh. gen. nisu samo ona sa elektronskom cijevi; nego ima ih i sa tranzistorima (i integriranim sklopovima)

Page 14: Arhitektura računala - skraćena skripta

DRUGA ARHITEKTONSKA GENERACIJA- nemogućnost autonomnih asinkronih ulaznih i izlaznih operacija--> uveden ulazno-izlazni procesor- razrađena tehnika prekida – karakteristika 2.arh.gen.- sistemski nadzorni programi, tzv. monitori (preteča operacijskog sustava)- uveden indeksni registar --> modifikacija memorijske adrese (adresni registar)- razrađen potprogramski skok i povratak u glavni program*zahvati u sklopovlju i programskoj podršci- grupni način izvođenja programa- tranzistori, feritne memorije- napredak u izradi sistemske programske podrške--> mnemonički i jezični procesori, programski punioci, uslužni programi, aplikacijski programi- programske knjižnice- druga arhitektonska generacija računala počinje se proizvoditi kao tzv. porodica računala- razvoj strojno neovisnih viših programskih jezika- više ne postoji centralizam u arhitekturi druge generacije (registar za prijenos podataka u aritmetičkoj jedinici računala prve. arh. generacije); IBM 1130, PDP-8--> Von Neumannov model računala doživio najveću promjenu

TREĆA ARHITEKTONSKA GENERACIJA- nije jednostavno razlučiti računala na ona iz druge i ona iz treće arhitektonske generacije- računala treće arh. generacije --> ona izgrađena sredinom 60-ih i kasnije- neopravdano se smatra da je svako računalo izgrađeno s integriranim sklopovima računala treće arhitektonske generacije--> iako je neosporna činjenica da su sklopovi niskog stupnja integracije preobrazili računala- svojstva treće generacije:• paralelnost i istodobnost u radu:

- naglašena paralelnost za istovremenu obradu više programa (to omogućuje OS, povećava se propusnost tj. broj izračunavanja u jedinici vremena)--> višeprogramski rad, višeprocesorski rad, aritmetičke i naredbene cjevovodne jedinice- preklapanje dohvata, analize i izvođenja naredbe izradom naredbenih i aritmetičkih cjevovoda ili- postojanje višestrukih aritmetičko-logičkih jedinica

• upotreba mikroprogramiranja--> povećanje prilagodljivosti računala raznim zahtjevima• operacijski sustav• nove poluvodičke memorije – niža cijena--> izgradnja sustava s velikim naslovnim prostorom

Page 15: Arhitektura računala - skraćena skripta

• smanjenje dimenzija i cijenaOS – sistemska programska podrška koja ima ulogu koordiniranja aktivnosti i upravljanja--> nadogradnja monitora iz prethodne arhitektonske generacije*računala 1. arh. gen. --> pojedinačno izvođenje programa*računala 2. arh. gen. --> grupno izvođenje programa (monitor)*računala 3. arh. gen. --> rad u vremenskoj podjeli (operacijski sustav) - naredbeni ciklus --> koraci povezani s obradom naredbetijek naredaba+tijek podataka--> veći broj tijekova naredbi – usmjeren prema UJ (veći broj UJ)--> veći broj tijekova operanada – veći broj ALJ- naredbu dohvati iz memorije u UJ, generira upravljačke signale do ALJ gdje se izvodi--> izvođenje naredbe zahtijeva i dohvaćanje operanada- M.J.Flynnova klasifikacija procesorskog paralelizma, zasnovana na broju istodobnih tijekova naredaba i podataka u procesoru P za vrijeme izvođenja programami i md – mnogostrukost procesora P, mjera procesorskog paralelizmaSISD mi=md=1 - nema paralelnostiSIMD mi=1, md>1 - više ALJ ili modularnost ALJ (>1 prospojnih puteva)MISD mi>1, md=1 - više UJ, jedna ALJMIMD mi>1, md>1 - veći broj UJ i ALJ (veći broj procesora)- porodica računala IBM S/360, UNIVAC 1100, PDP-11

ČETVRTA ARHITEKTONSKA GENERACIJA--> mikroprocesorska računala- mikroprocesor – CPU u integriranoj tehnologiji - s gledišta arhitekture ništa novoga- mala veličina, niska disipacija topline i niska cijena- razvoj ugrađnih (embedded) računala

Page 16: Arhitektura računala - skraćena skripta

- mikroračunalo – računalo četvrte arhitektonske generacije- mikroprocesor- radna i programska memorija- ulazni i izlazni pristupi- vremenski i upravljački sklopovi

- skup i set instrukcija različit kod mikroprocesora u različitim uređajima- arhitektura CPU-a – većina mikroprocesora ne predstavlja neki napredak (jednostavni sustavi druge ili čak prve generacije)MIKROPROCESORSKA RAČUNALA- mikroprocesor nalazimo u svim tehničkim uređajima:*računalima opće namjene: PC-ovi, prijenosna računala, dlanovnici*uređajima posebne namjene: kalkulatori, mp3 playeri, iPod*ugrađenim računalima koja upravljaju atuomobilima, kućanskim uređajima, komunikacijskim sustavima, mobitelima, tvornicama, elektranama, semaforima- razvoj mikroprocesora skup, ali proizvodnja i prodaja u velikim količinama -->podjela troškova, niska cijena- arhitektura CPU-a – većina mikroprocesora ne predstavlja neki napredak (jednostavni sustavi druge ili čak prve generacije)- prednosti mikroprocesora:*mogućnost programiranja: kompleksna funkcionalnost se relativno jednostavno može ostvariti pomoću programske podrške*performanse: napredak u tehnologiji integriranih sklopova omogućuje brže i moćnije mikroprocesore*isplativost: mikroprocesori su po prirodi višenamjenski, pa se proizvode u velikim količinama što minimizira njihovu cijenu*pouzdanost: integrirani sklopovi su visoko-pouzdani uređaji proizvedeni u strogo kontroliranim uvjetima*kompaktnost: sve veća i veća funkcionalnost se može „zapakirati“ na jedan mikroprocesorski čip- nedostaci mikroprocesora:*učenje potrebno za oblikovanje korištenjem mikroprocesora može zahtjevati veliku količinu uloženog vremena i truda*mikroprocesori imaju mnoštvo kompleksnih svojstava*mikroprocesori ne „opraštaju“ greške prilikom programiranja; izvršit će točno ono što je isprogramirano, nemaju „zdrav razum“ niti intuiciju u vezi toga što je programer namjeravao ostvariti*alati koji omogućuju ispravljanje pogrešaka obično su vrlo primitivni (posebno u odnosu na programe koji postoje za jezike više razine)OPĆENITO O RAZVOJU MIKROPROCESORSKIH RAČUNALA- 15.11.1971.g. časopis Electronic News INTELov oglas „mikroprogramabilno računalo na chipu“--> početak doba mikroprocesora- p-kanalna MOS tehnologija (2300 tranzistora, 46 instrukcija, 4-bitna riječ, takt 740 kHz) – šupljine su nosioci naboja*n-kanalni – elektroni nosioci naboja; brže, bolje- sustav MCS-4 --> Micro Computer System s 4-bitovnom riječi, 1971.g.- Intel 1976.g. – mikroračunalo 8048--> na jednoj silicijskoj pločici 8-bitovni mikroprocesor, U/I pristupi, radna memorija i ispisna programska memorija- mikroprocesor, radne memorije, ispisne memorije, ulazni i izlazni sklopovi itd.--> proizvodi četvrte tehnološke generacije integriranih sklopova koji služe za izradu cjelokupnih računala i njihovih dijelova- arhitektura i organizacija takvih računala--> druga i treća generacija (ili čak prva!)- mikroračunala --> računala četvrte arhitektonske generacije

Page 17: Arhitektura računala - skraćena skripta

- za tih prvih 15 godina razvoja:*broj komponenata na mikroprocorskom „chipu“ (poluvodičkoj pločici) se povećao za 200 puta*frekvencija signala vremenskog vođenja za 50 puta*moć obrade za 2 do 3 reda veličine- razvoj mikroprocesorskih sklopova se nastavlja:*1. generacija PMOS tehnologija*2. generacija NMOS tehnologija*3. generacija 16-bitovni mikroprocesori*4. generacija 32-bitovni mikroprocesori, 1981.*5. generacija 64-bitovni mikroprocesori, Intel PentiumMIKROPROCESORSKE TEHNOLOGIJE- uzgoj kristala silicija- rezanje u tanke kružne odreske (wafers)- izrada većeg broj poluvodičkih pločica (chips) --> prije rezanja naziva se eng. die- smještanje poluvodičkih pločica u kučišta (Dual In Line Package, DIP) --> integrirani sklop- postotak ispravnih i neispravnih integriranih sklopova- izrada kučišta s dovoljnim brojem vanjskih kontakata- poluvodički LSI sklopovi realizirani pomoću poluvodičkog materijala (silicij)- aktivni elementi u elektronici rade kao sklopke- veća ili manja vodljivost materijala ovisi o postojanju nosilaca električnog naboja (elektroni i šupljine)- čisti silicij na sobnoj temperaturi – čvrsto vezani elektroni uz kristalnu rešetku; dodavanje određene male količine nečistoća--> n-tip poluvodiča i p-tip poluvodiča- osnovna svojstva poluvodiča --> temelj izgradnje elektroničkih sklopova- tranzistori --> glavni poluvodički sastavni dijelovi; služe za realizaciju elektroničkih sklopova kao glavni aktivni elementi- prema načinu realizacije tranzistora dva osnovna tipa poluvodičke tehnologije--> MOS (unipolarna) tehnologija--> bipolarna tehnologijaMOS (unipolarna) tehnologija- MOS FET (Metal Oxide Semiconductor Field Effect Transistor)--> tranzistor koji radi na principu djelovanja električnog polja--> jednostavnija izrada, manja potrošnja--> n-kanalni; brži zbog veće pokretljivosti elektrona--> p-kanalni (nosioci naboja su šupljine)- MOS FET tranzistor s n-kanalom: dovodimo pozitivan naboj, struja teče od n do n zbog toga što poluvodič p tipa ima manjiske nosioce elektrone koji omogućavaju da struja poteče od izvora prema ponoru*CMOS FET

Page 18: Arhitektura računala - skraćena skripta

*4-bitna riječ --> br. kombinacija 24, 64-bitna riječ --> br. komb. 264

--> šira riječ=veći broj paralelnih linija koje prenose- 4-bitna riječ traži i regostre od 4 bita- poluvodič – može se učiniti vodljivim (silicija, galij arsenid – za velika računala)IZRAZITO PARALELNA RAČUNALA --> veći broj CPU- paralelnost koju donosi 3.arh.gen- osnovna želja za povećanjem propusnosti

- izgradnja sve bržih sklopova- izgradnja paralelnih sklopova--> istodobna upotreba jednakih sklopova/elemenata obrade

- razvoj i izgradnja raznih brzih i vrlo sposobnih računala pogotovo onih koja se nazivaju superračunalimaSustavi povezivanja procesora kod paralelnih računala:MATRIČNI SUSTAVI (array processor)- matrično raspoređeni paralelno vezani procesori- izvođenje naredbe --> adresa retka i stupca u procesorskom polju (processor array)- procesni dio sustava SOLOMON I (Simultaneous Operation Linked Ordinal Modular Network)GRUPNI SUSTAVI (ensemble processor)- nakupina procesora okupljena oko jedne upravljačke jedinice- paralelni sustav PEPE (Parallel Element Processing Ensemble) s 288 elemenataCJEVOVOD (pipeline)- uočena nezaposlenost pojedinih dijelova računala- posao porazdijeliti i slijedno organizirati- osnovna struktura cjevovodnog sustava--> m odsječaka (procesna jedinica Ci i ulazni registar Ri)- cjevovod --> aritmetički, naredbeni ili posebne namjene- TI ASC (Texas Instruments Advanced Scientific ComputerHIPERKOCKA (hypercube)- ideja stvaranja roja procesora- poteškoća --> međusobno povezivanje- procesore razmjestiti u vrhove hiperkocke- 2n računala razmješteno u vrhove n-dimenzionalne kocke- Cosmic cube – 6-kocka s 64 čvorovaVIŠEJEZGRENI PROCESOR (multicore processor, chip-leve multiprocessor, CMP)- kombinira dvije ili više nezavisnih jezgri (uobičajeno CPU) u jedinstvenu cjelinu unutar jednog integriranog kruga- mikroprocesor s više logičkih jedinica za obradu (logical processing units)- Mooreov zakon primjenjiv na jezgre u mikroproceosru--> dvojezgreni procesor Intel Core 2 Duo E6750

Page 19: Arhitektura računala - skraćena skripta

RAČUNALNI KLASTER (cluster)- sustav računala umreženih korištenjem brze lokalne mreže pomoću koje računala međusobno komuniciraju- mreža radnih stanica (Networks of Workstations, NOW) ili klasteri radnih stanica (Clusters of Workstations, COW)- prvi hrvatski klaster Isabella--> 92+2 računala, 560 jezgri na čvorovima, 880 GB memorije, 13 TB lokalnog diskovnog prostora, dodatnog diskovnog prostora sa središnjeg diskovnog prostora Srca ukupnog kapaciteta do 8 TBGRID (grid)- računalna okolina koja omogućava povezivanje raspodijeljenih računalnih sredstava u dinamičke zajednice tzv. virtualne organizacije- Hrvatski grid--> rezultat projekta CRO-GRID Infrastruktura koji je završio krajem 2006.SUPERRAČUNALA (supercomputers)- izvođenje visoko sofisticiranih i složenih izračunavanja koja zahtijevaju snažnu procesnu moć--> velika i vrlo skupa- izrazito paralelna računala koja trenutačno imaju najbolje ili približno najbolje performanse u svijetu- performanse izražene u FLOPS-ima (floating point operations per second)--> MFLOPS, GFLOPS, TFLOPS, PFLOPS (peta = 1015)- 1964.g. Control Data Corporation, superračunalo CDC 6600, 3 MFLOPS-a, dizajnirao Seymour Cray, California, SAD- 1972.g. Cray Research Inc., superračunalo Cray-1UMJETNA INTELIGENCIJA I RASPOZNAVANJE UZORAKA (osnova pete generacije računala)- C. Shannon (utemeljitelj teorije komunikacija) 1962.g. dao sljedeću viziju računala: „Djelotvorni strojevi za takve probleme kao što su raspoznavanje uzoraka, prevođenje kezika i tako dalje možda traže drugačiji tip računala od onih koje danas imamo. Osjećam da će to biti računalo koje će prirodno operirati strukturama, pojmovima i nejasnim sličnostima, a ne s deseteroznamenkastim brojevima.“- računala 5. generacije, 5G, Japan 1982.g.:*saobraćanje čovjek-računalo i upravljanje obradom prirodnim jezikom i jezikom bliskim korisniku*računalu reći što treba uraditi, a ne kako uraditi*posjedovanje različitih baza podataka za informiranje u više razina*rukovanje i obrađivanje nenumeričkih podataka kao što su dokumenti, grafika, slike, govor i sl.- značajke:*građevna komponenta--> integrirani sklopovi vrlo visokog stupnja integracije i*primjena umjetne inteligencije i raspoznavanje uzoraka- „Inteligentna računala nisu san već stvarni cilj istraživanja“ – S. Uchida- cilj pete generacije:*razvoj uređaja koja će biti u mogućnosti odgovoriti na ulazni prirodni jezik te biti u mogućnosti učiti i samoorganizirati se*korištenje molekularne i nanotehnologije, kao i kvantnog računanja (kvantna fizika)- bliska budućnost --> računala izgrađena pomoću organskih sastavnih dijelovaTEHNOLOŠKI TRENDOVI- Mooreov zakon--> Gordon Moore, suosnivač Intela, 1975.g. – „gustoća tranzistora se udvostručuje svake 2 godine“--> „18 mjeseci“ – David House, Intelov izvršitelj, „promjene bi uzrokovale računalnu performansu da se udvostručuje svakih 18 mjeseci“

Page 20: Arhitektura računala - skraćena skripta

4. Mikroračunalo i mikroprocesor- mikroračunalo = računalo koje ima centralnu procesorsku jedinicu izvedenu u tehnologiji VLSI ili LSI, memoriju s izravnim pristupom, ispisnu memoriju, ulazno-izlazne međusklopove, generator signala vremenskog vođenja, pomoćne sklopove (izvor napajanja, sklop za upućivanje...)- programska podrška je vezivna materija koja ta 4 bloka osmišljuje i drži ih zajedno- mikroprocesor sjedinjuje u sebi sposobnost računskog dijela i dijela koji je sposoban da na temelju dobivenih rezultata donosi odluke – izabire jedan od alternativnih smjerova daljnjeg djelovanja,akcije- u memoriji se pohranjuju podaci u binarnom obliku, međurezultati i rezultat--> također su pohranjeni programi koji određuju mikroprocesoru koje operacije mora izvršiti- preko ulaznog međusklopa ostvaruje se put za prijenos binarnih podataka od ulaznih jedinica prema mikroprocesoru ili memoriji- izlazni međusklop omogućuje prijenos binarnih podataka od mikroprocesora prema izlaznim jedinicama- sastavljeno od 4 osnovna bloka: mikroprocesora, mem. , ulaznog međusklopa, izlaznog međusklopa- sastavni blokovi su preko vanjske sabirnice povezani i tvore mikroračunalo- vanjska sabirnica je skup linija preko kojih se odvija komunikacija između sastavnih dijelova mikroračunala--> sastoji se od upravljačke i adresne sabirnice te sabirnice podatakaMODEL MIKROPROCESORA- mikroprocesor – osnovni sastavni blok mikroračunala- centralno procesorska jedinica realizirana u tehnologiji LSI- sastavljena iz:•upravljačke jedinice: sklopovi koji dekodiraju instrukcije pribavljene iz memorije i u skladu s tim generiraju sekvence upravljačkih signala potrebnih za izvođenje instrukcije•aritmetičko-logičke jedinice: u njoj se izvode aritmetičke i logičke operacije na binarnim podacima•registara za privremeno pohranjivanje i rukovanje podacima: većina standardnih mikroprocesora ima riječ duljine 8 bita (1 bajt)- duljina riječi od 8 bitova omogućuje da se instrukcijska riječ razdijeli na klasičan način kao kod računala: na polje operacijskog koda, na polje načina adresiranja i na adresno polje- samo polje operacijskog koda zauzelo bi veći dio 8-bitne riječi*primjer: 8-bitni procesor M6800 ima osnovni skup od 72 instrukcije što zahtijeva operacijski kod od 7 bitova, ako privremeno zanemarimo 197 različitih operacijskih kodova u zavisnosti od načina adresiranja- adresno polje bilo bi svedeno u najboljem slučaju na 1 bit --> to znači da bi bilo moguće izravno adresirati samo 2 memorijske lokacije – očito da je premalo!- problem duljine riječ mora biti kod mikroprocesora riješen pribavljanjem više 8-bitnih riječi za tvorbu jedne instrukcijske riječi- zašto riječ mikroprocesor nije duža? (npr. 24 ili 32 bita) – većina razloga u tehnološkim ograničenjima npr. u broju izvoda na integriranom kućištu DIP, problem gustoće integracije komponenti, postojećoj opremi za testiranje i ispitivanje čipova u fazi proizvodnje i sl.- model mikroprocesora ima akumulator A koji se upotrebljava za privremeno pohranjivanje jednog od operanada

Page 21: Arhitektura računala - skraćena skripta

- akumulator sudjeluje pri izvršavanju aritmetičkih i logičkih operacija na podacima, te ima i središnju ulogu u prijenosu podataka unutar mikroračunala ili sustava mikroračunala- programsko brojilo - registar PC – sadrži adresu (sljedeće) instrukcije koja će biti pribavljena u narednom ciklusu- operacijski kod instrukcije upisuje je u instrukcijski registar UR- u 16-bitnom brojilu podataka – registru DC – sadržana je adresa memorijske lokacije u kojoj se nalazi operand- izvođenje svake instrukcije dijeli se na:1) faza pribavljanja instrukcije – faza PRIBAVI2) faza izvršavanja instrukcije – faza IZVRŠI (moguće pribavljanje operanada)- mikroprocesor za vrijeme faze PRIBAVI postavlja sadržaj programskog brojila preko interne sabirnice na vanjsku adresnu sabirnicu. Ujedno šalje i odgovarajuće upravljačke signale (signal ČITAJ) na vanjsku upravljačku sabirnicu. Memorijski sklop dekodira postavljenu adresu (prisutnu na adresnoj sabirnici) u cilju pristupa do odgovarajuće memorijske riječi. Za nekoliko stotina ns sadržaj specificirane memorijske lokacije pojavit će se na vanjskoj sabirnici podataka. Taj se sadržaj pohranjuje u instrukcijskom registru IR i to je operacijski kod instrukcije. Za vrijeme faze PRIBAVI mikroprocesor upotrebljava svoju internu logiku i povećava sadržaj programskog brojila.- u fazi IZVRŠI upravljačka jedinica, u skladu s operacijskim kodom koji je pohranjen u instrukcijskom registru, generira niz upravljačkih signala. Rezultat tog niza signala su odgovarajući prijenosi podataka, te operacije (npr. aktiviranje pojedinih sklopova unutar ALJ) izvršavanja zadane instrukcije.- operacije unutar mikroprocesora (mikrooperacije) sinhronizirane su generatorom takta. Perioda generatora takta može biti, u ovisnosti o tipu mikroprocesora, od 100 ns do nekoliko μs. Signali generatora takta mogu se sastojati od jednog ili više signala (to je onda višefazni generator takta, M6800 ima signale φ1 i φ2).STANDARDNA ARHITEKTURA MIKROPROCESORA- većina današnjih procesora istog je tipa arhitekture- elementi standardne arhitekture su:•upravljačka jedinica•aritmetičko-logička jedinica•jedan ili više akumulatora•registri opće namjene ili skup registara opće namjene•adresni registri•interne sabirniceUPRAVLJAČKA JEDINICA- generira upravljačke signale i koordinira sve aktivnosti unutar mikroprocesora- pribavlja, dekodira, i omogućuje izvođenje instrukcije- komunicira s ostalim komponentama mikroračunala preko ulazno-izlaznih linija (upravlj. sabirnice)- za vrijeme faze PRIBAVI upravljačka jedinica pribavlja instrukciju i dekodira operacijski kod. U skladu s interpretacijom operacijskog koda, mijenja stanje mikroprocesora i šalje upravljačke signale drugim elementima mikroprocesora i mikroračunala. Niz takvih upravljačkih signala rukovodi izvršavanjem instrukcije pribavljene iz memorije. Element iz niza upravljačkih signala naziva se mikroinstrukcija. Primjeri takvih mikrooperacija su prijenosi između registara, posmak sadržaja registra i slično. Instrukcija pribavljena iz memorije mikroračunala (makroinstrukcija) obično uvjetuje izvođenje čitavog niza mikroinstrukcijaMIKROPROGRAMIANA UPRAVLJAČKA JEDINICA- upravljačka jedinica koja ima upravljačke riječi – makroinstrukcije pohranjene u svojoj vlastitoj (mikroprocesorskoj) memoriji – naziva se mikroprogramirana upravljačka jedinica--> većina upravljačkih jedinica mikroprocesora su mikroprogramirane- MIKROINSTRUKCIJA – upravljačka riječ koja je uzrok jedne ili više istovremenih operacija tzv. mikroopracija (npr. prijenosi između registara, posmak sadržaja registra i sl.)- MAKROINSTRUKCIJA --> instrukcija pribavljena iz memorije mikroračunala

Page 22: Arhitektura računala - skraćena skripta

--> uvjetuje izvođenje čitavog niza mikroinstukcija- niz mikroinstrukcija, odnosno mikroprogram, pohranjen je u internom ROM-u ili PLA – programabilnom logičkom polju u mikroprocesoru- instrukcijski kod pohranjen u instrukcijskom registru, uvjeti (vanjski i interni – kao rezultat izvođenja prijašnje mikroinstrukcije), te informacija o sljedećoj adresi mikroprograma, generiraju stvarnu adresu mikroprograma u sklopu koji se naziva mikroprogramski sljednik- riječ pohranjena na adresiranoj lokaciji mikroprogramske memorije jest mikroinstrukcija- lokacija sljedeće mikroinstrukcije može biti sljedeća u nizu lokacija ili može biti koja druga – to ovisi od uvjeta i dijela mikroinstrukcijske riječi (informacije o sljedećoj adresi)- dok se mikrooperacije izvode, slijedeća adresa se generira u mikroprogramskom sljedniku i sa sljedećim impulsom generatora takta prenosi se mikroprogramskoj memoriji- potrebno je napomenuti da duljina riječi mikroprocesora (8-bita) nema izravne veze sa duljinom riječi mikroinstrukcije (18-bita)- mikroinstrukcija – upravljačka riječ iz mikroprogramske memorije preko dekodera mikeoinstrukcija – specificira upravljačke signale koji se upućuju u nezavisne upravljačke točke sustava i omogućuju izvođenje mikrooperacija- za lakše razumijevanje odnosa (makro)instrukcija – mikroinstrukcija dan je primjer izvođenja (makro)instrukcije COMA (komplementiraj sadržaj accA) za pojednostavnjeni model mikroprocesora--> izvođenje (makro)instrukcije COMA uvjetuje sljedeće mikrooperacije:•prijenos sadržaja accA preko interne sabirnice u sklop za komplementiranje•aktiviranje logike sklopa za komplementiranje•prijenos komplementiranog sadržaja preko interne sabirnice u akumulator- mikroprogrami u upravljačkoj jedinici su u većini primjera upisani u postupku proizvodnje i korisnik ne može mijenjati mikroprogram- mikroprocesor koji ima upravljačku jedinicu u kojoj korisnik može mijenjati mikroprograme, a time i skup makroinstrukcija , naziva se mikroprogramibilni mikroprocesorARITMETIČKO LOGIČKA JEDINICA- višefunkcijski digitalni kombinacioni sklop- izvršava osnovne aritmetičke i logičke operacije- u svom sastavu ima sklopove za: komplementiranje, posmak, zbrajanje, inkrementiranje, dekrementiranje, prijenos- ALJ je pridružen registar uvjeta sa zastavicama (bistabilima dojave stanja)- mikroprocesor automatski postavlja ili briše odgovarajuće zastavice – dojavne bistabile (C,V,N,Z,H,I) u registru uvjeta za vrijeme izvođenja instrukcija, u zavisnosti od rezultata aritmetičko-logičke operacije•zastavica C – dojavni bit prijenosa- pohranjuje bit kod aritmetičkog prijenosa- upotrebljava se kao bit pri operacijama posmaka•zastavica V – dojavni bit preteka (preljeva)- u matematičkom smislu predstavlja grešku u bitu predznaka u aritmetici dvojnog komplementa- aritmetički preljev pokazuje da je prilikom aritmetičke operacije rezultat prekoračio granicu ±127, ako je riječ mikroprocesora duljina 8 bita•zastavica N – dojavni bit negativnog rezultata- upotrebljava se za indikaciju negativnog rezultata aritmetičke operacije

Page 23: Arhitektura računala - skraćena skripta

•zastavica Z – dojavni bit nule- postavlja se Z=1 kad je rezultat aritmetičke operacije 0- koristi se i za logičke operacije npr. uspoređivanja (zastavica postavlja ako su dva operanda jednaka)•zastavica H – dojavni bit poluprijenosa- upotrebljava se u BCD operacijama, budući da se u kodu BCD upotrebljavaju 4 bita za prikaz decimalnog broja•zastavica I – dojavni bit prekida - obično se ne upotrebljava u aritmetičkim operacijama- bit I se postavlja I=1 u slučaju prekida- zastavica I se kod M6800 naziva prekidna maska jer se u slučaju da je I=1 i ako se pojavi zahtjev za prekidom nižeg prioriteta (IRQ=0), prekid se neće dogoditiAKUMULATOR- neki mikroprocesori imaju jedan ili više registara koji su po funkciji izdvojeni od ostalih, a anazivaju se akumulatori- koriste se za privremeno pohranjivanje jednog operanda, sudjeluju pri izvođenju aritmetičkih i logičkih operacija na podacima- rezultati aritmetičkih i logičkih operacija izvedenih u ALJ pohranjuju se u akumulatoru- obično se akumulator postavlja na jedan od ulaza u ALJ i u kombinaciji s privremenim registrima odjeljuje ulaz ALJ od izlaza- odjeljivanje je potrebno kod mikroprocesora standardne arhitekture sa jednom internom sabirnicom, zbog utjecaja izlaza aritmetičko logičke jedinice na ulaz- neki mikroprocesori imaju dva i više akumulatora i time dobivaju na fleksibilnosti i efikasnosti operacija- kod većine mikroprocesora svi U/I podaci prolaze kroz akumulator, te njemu pripada ključna uloga u programiranom prijenosuREGISTRI OPĆE NAMJENE- omogućuju ALJ rukovanje podacima velikom brzinom- organizacija:•skup registara za privremeno pohranjivanje --> registri organizirani u maloj memorijskoj jedinici, zahtijevaju instrukcije slične onima koje se odnose na memoriju•povezivanje registara opće namjene preko sabirnica--> registri su izravno adresabilni (daju se adresirati samim instrukcijama LDAA, LDAB)ADRESNI REGISTRI- 16-bitni registri za pohranjivanje adresa- njihova bitna karakteristika je da su spojeni na adresnu sabirnicu te da im sadržaj preko adresnog međuregistra i vanjske adresne sabirnice određuje adresu memorijske riječi- adresni registri su:•programsko brojilo PC (model mikroprocesora**)•brojilo podataka DC•kazaljka stoga SP- stog – memorijska struktura koja uključuje kronološku komponentu – najstariji je podatak na dnu stoga, dok je najmlađi na vrhu (LIFO – last in first out)- jedan od načina realizacije stoga je programski (softverski) stog--> on se sastoji od određenog broja memorijskih lokacija u memoriji tako da je njegova dubina neograničena – zavisi samo od veličine memorije--> programer sam bira osnovu stoga koja je određena početnim sadržajem kazala stoga- hardverski realiziran stog sastoji se od n internih registara izvedenih u čipu--> prednost im je velika brzina, međutim, nedostatak je ograničena dubina stoga-->hardverski realiziran stog uvjetuje logičke sklopove za detekciju popunjenosti stoga- stogom se upravlja sa samo 2 funkcije:*položi podatak u stog (PUSH) – polaže podatak na vrh stoga

Page 24: Arhitektura računala - skraćena skripta

*uzmi podatak sa stoga (PULL) – uzima podatak sa vrha stoga- kazalo stoga je 16-bitni registar koji sadrži adresu stoga- svaki memorijski pristup stogu (polaganje ili uzimanje podataka) inkrementira ili dekrementira sadržaj kazala stoga--> sadržaj kazala stoga se umanjuje za 1 neposredno nakon pohranjivanja u stog (PUSH)--> kazalo stoga se povećava za 1 neposredno prije čitanja svakog bajta iz stoga, te je bajt tada dobiven iz adrese sadržane u kazalu stoga (PULL)- instrukcija PULL ne briše podatak iz stoga; podatak će biti prekriven i izgubljen slijedećom instrukcijom PUSH- stog služi za privremeno pohranjivanje podataka kao što su: tekući status mikroprocesora, povratna adresa, operandi.- upotrebljava se kod sljedećih funkcija: operacija prilikom prekida, operacija sa potprogramima, pohranjivanja podataka•indeksni registar IR- upotrebljava se pri indeksnom načinu adresiranja pri kojem se adresa u instrukcijskoj riječi i sadržaj indeksnog registra pribrajaju u cilju određivanja stvarne adrese operanda- neki mikroprocesori imaju indeksne registre (M6800) dok se drugi koriste registrima opće namjene kao indeksimaINTERNE SABIRNICE- rješenje problema povezivanja registara je u korištenju zajedničkih linija tj. sabirnice koja povezuje sve registre- grupa linija preko kojih se informacija u binarnom obliku prenosi između registara naziva se interna sabirnica- na temelju broja internih sabirnica (sabirnica ugrađenih u mikroprocesorskom čipu) arhitektura mikroprocesora može biti: jednosabirnička i više sabirnička- razvrstavanje arhitekture s obzirom na broj internih sabirnica koje se upotrebljavaju u komunikaciji između registara, odnosno registra i ALJ, može poslužiti kao osnova za procjenu performanse mikroprocesora*JEDNOSABIRNIČKA ARHITEKTURA- najjednostavnija arhitektura je sa jednom internom sabirnicom- interna sabirnica prenosi podatke iz registara prema ALJ - rezultati operacija izvedenih u ALJ također se šalju preko iste sabirnice natrag prema odredišnom registru – interna sabirnica je vremenski multipleksirana- prednost: potrebna najmanja površina za sabirnice (ušteda prostora u čipu) – jedan od glavnih razloga da je u većini današnjih mikroprocesora tako riješenoM6800 ima jednosabirničku arhitekturu. Osnovna interna sabirnica je 8-bitna interna sabirnica podataka preko koje komuniciraju interni registri i ALJ. Interna sabirnica podataka je zaključena međuregistrom podataka koji je međusklop prema vanjskoj dvosmjernoj sabirnici podataka. Interne adresne linije povezuju adresne registre s adresnim međuregistrom koji predstavlja međusklop sa vanjskom jednosmjernom adresnom sabirnicom.- nedostatak: sporost izvođenja operacija jer sabirnica omogućuje samo jedan istovremeni prijenos*primjer: pri zbrajanju sadržaja 2 registra potrebna su 3 prijenosa koja nisu istovremena:1 – prijenos podataka internom sabirnicom od prvog registra prema ALJ2 – prijenos podataka istom internom sabirnicom od drugog registra prema ALJ3 - prijenos rezultata istom internom sabirnicom prema jednom od registara *VIŠE SABIRNIČKA ARHITEKTURA- da bi se povećala brzina procesora upotrebljava se arhitektura sa više internih sabirnica- mikroprocesor sa dvosabirničkom arhitekturom obično je izgrađen tako da jedna interna sabirnica podataka spaja registre i ALJ i prenosi operande (sabirnica operanada), dok druga sabirnica podataka prenosi rezultate operacija prema registrima (sabirnica rezultata)- primjer dvosabirničke arhitekture: 16-bitni procesor PACE- trosabirnička arhitektura omogućuje maksimalnu brzinu

Page 25: Arhitektura računala - skraćena skripta

--> dvije interne sabirnice podataka (sabirnice operanada) spajaju registre sa ALJ i omogućuju istovremeni prijenos operanada--> treća interna sabirnica podataka (sabirnica rezultata) prenosi rezultat nezavisno od dviju sabirnica operanada- budući da većina mikroprocesora primjenjuje arhitekturu sa samo jednom internom sabirnicom podataka, taj se oblik smatra standardnom arhitekturom procesora

Page 26: Arhitektura računala - skraćena skripta

5. Mikroračunalo i mikroprocesor: primjer izvođenja instrukcije 8-bitovnog mikroprocesoraOvdje mozemo vidjeti nekakav program od 3 instrukcije.Lijevo od tablice su adrese slijeda instrukcija koje idu u PC (programsko brojilo) i za svaku sljedeću instrukciju se povećaje za jedan.Svi brojevi su heksadecimalni (02 hex je 0000 0010 bin sto je 8 bitova).Prvi broj B6 označava heksadecimalni kod instrkucije (napuni akumulator A sadržajem sa adrese 0201) koji ide u IR (instrukcijski registar), sljedeće dvije komponente su adresa ili operand, u ovom slučaju adresa jer se radi o proširenom adresiranju (to vidimo po B6 što je LDAA - prošireno adresiranje), a ta adresa ili operand idu u DC (brojilo podataka).Moramo pripaziti, ako prib avljamo operand on neće ići u DC jer tu ide samo adresa operanda. Sam operand će odmah ići u akumulator. PR. Kad smo radili zadatke nismo mogli direktno upisivati u memoriju nego prvo u akumulator pa onda u memoriju, ne možemo istovremeno upisati broj i adresu a da ne upotrebljavamo akumulator jer će DC uzeti adresu, a broj??? Nigdje.02 - više značajni byte i 01 - manje značajni byte. Sljedeća 2 broja, 9B instrukcija (ADDA-izravno) i FF adresa.I zadnji broj 43 (COMA-akumulatorsko adresiranje). Adresa instrukcije nije potrebna jer sam akumulatorski registar sadrži tu instrukciju.Moramo dobro razlikovati:

Adresa instrukcije - ona se upisuje u programsko brojilo, a pokazuje na instrukciju koja ce se sljedeca izvrsiti

Adresa operanda - adresa operanda kao i sam operand se nalazi u brojilu podataka, a kao što samo ime kaže ona nam pokazuje adresu memorije na kojoj se naš operand (neki broj) nalazi.

Kod instrukcije – je kod koji se nalazi u instrukcijskom registru, a on nam pokazuje o kojoj se instrukciji radi i koji je način adresiranja (npr. B6 – to je heksadecimalni zapis instrukcije LDAA koja se služi neposrednim adresiranjem)

Na ovoj slici vidimo točno gdje koja komponenta instrukcijske riječi ide.Ova slika prikazuje početno stanje procesora --> Primjetimo da je PC na 0100.

Page 27: Arhitektura računala - skraćena skripta

Prvi ciklus prve instrukcije. Adresa 0100 nam je pokazala instrukciju koja će u ovom ciklusu biti učitana.U indeksni registar IR dobijamo operacijski kod instrukcije koja se treba izvršiti (koju nam je pokazala adresa 0100 sa PC). Kod se dekodira i koliko sam ja shvatio kada dekodiramo kod onda znamo o kojoj se instrukciji radi i kojem adresiranju tako da će procesor znati da li je sljedeći podatak još jedna instrukcija, adresa ili operand.Programsko brojilo PC nije više 0100 nego se inkrementira na 0101 što znači da će u sljedećem ciklusu pribaviti sljedeću instrukciju (pošto se radi o proširenom adresiranju u sljedećem ciklusu će zapravo uzeti prvi dio adrese operanda i stavi ti ga u brojilo podataka DC.

Drugi ciklus prve instrukcije.U DC se zapisuje 02 (značajniji bajt) kao što sam naveo prije, a adresa na PC se opet inkrementira na 0102 (sljedeća instrukcija). Indeksni registar ostaje isti jer ne dobijamo novu instrukciju tj. kod instrucije.

Treći ciklus prve instrukcije.Na DC se upisuje uz 02 (značajni bajt) i 01 (ma nje značajnog bajta) te dobijamo punu adresu operanda, PC se opet inkrementira

Četvrti ciklus prve instrukcije.Kao što vidimo instrukcija će se izvršiti i sa adrese 0201 će se na akumulator A upisati broj 23.Ako pogledamo u tablicu instrukcija točno možemo vidjeti da se ova instrukcija izvršava u 4 ciklusa i da je duljina instrukcijske riječi 3 bytea.(B6 – 02 – 01) svaki dio instrukcij e je heksadecimalno zapisan i svaki nosi po 8 bitova, a znamo da je 8bit = 1byte, a 3 po 8 bitova je 3byte-a.Sljedeće dvije instrukcije će se izvršiti na isti način.

Page 28: Arhitektura računala - skraćena skripta

6. Sabirnice, memorije, komunikacija s vanjskom logikom SABIRNICE- sastavne jedinice mikroračunala (mikroprocesor, ulazno-izlazni međusklopovi, memorija) saobraćaju preko grupe linija koje se nazivaju vanjska sabirnica--> vanjska sabirnica = „krvotok i kičma računala“- preko njenih linija se prenose podaci, adrese i upravljački signali između mikroprocesora i ostalih komponenti mikroračunala- linije vanjske sabirnice obično se grupiraju po funkciji:*sabirnica podataka*adresna sabirnica*upravljačka sabirnicaSABIRNICA PODATAKA prenosi podatke između različitih LSI komponenti mikroračunala- standardno mikroračunalo (koje ima za osnovu 8-bitni mikroprocesor) ima 8-bitnu (8 linija za paralelni prijenos 8-bitne riječi) dvosmjernu sabirnicu podataka koja omogućuje dvosmjerni tok podataka (npr. od mikroprocesora prema memoriji i međusklopovima i obratno) istim linijama, ali ne i istovremeno- kod većine računala sabirnica podataka može imati 3 stanja: logičku 0, logičku 1 i stanje velike impedancije Z- svojstvo sabirnice (3 logička stanja) primjenjuje se pri izravnom pristupu memorijiADRESNA SABIRNICA prenosi adresu sklopa ili registra koji može saobraćati sa mikroprocesorom (npr. adresu memorijskog čipa i riječi u njemu, U/I međusklopa i njegova registra)- adresa prisutna na adresnoj sabirnici određuje izvor ili odredište podataka poslanih po sabirnici podataka- adresnu sabirnicu tvori skup jednosmjernih izlaznih linija iz mikroprocesora- standardna mikroračunala imaju 16-bitnu adresnu sabirnicu, što omogućuje izbor sklopa ili registra u memorijskom prostoru od 64 k riječi (216=64 k, k=1024)- adresna sabirnica ima 3 logička stanja:--> osnovni element: vrata s 3 stanja - ako je C=0, izlazna impedancija vrata postaje velika i vrata su onemogućena--> ako imamo sklop pridružen svakoj liniji dvosmjerne sabirnice podataka sa 3 stanja: CU i CI su upravljački signali za određivanje smjera i stanja sabirnica. Kada su upravljački signali CU i CI jednaki 0, vrata 1 i vrata 2 su u stanju velike impedancije Z i sabirnica je „odsječena“ od mikroprocesora te je onemogućen prijenos podataka od i prema mikroprocesoru. Sabirnica se tada može upotrebljavati za saobraćanje između drugih komponenti mikroračunala.- sklopovi sa 3 stanja (drugih sastavnih jedinica) omogućuju priključenje više komponenti na vanjsku sabirnicu, ali je u isto vrijeme samo jedna aktivnaUPRAVLJAČKA SABIRNICA prenosi upravljačke signale između mikroprocesora i ostalih komponenti računala- signali koji obično tvore upravljačku sabirnicu su: čtaj/piši (R/W), zahtjec za prekid (IRQ), reset (RESET) i sl.- svaki od 3 tipa vanjskih sabirnica ograničen je u pogledu opteretivosti i iznosi of 5 do 8 standardnih komponenti LSI--> zbog takva ograničenja u mikroračunalima – osim onih sa minimalnom konfiguracijom – nužno je upotrebljavati sabirnička pojačala (bus drivers) na sabirnici podataka, adresnoj sabirnici,a ponekad i

Page 29: Arhitektura računala - skraćena skripta

na upravljačkoj sabirnici--> time se omogućuje priključak više komponenti LSI (više memorija(RAM, ROM),međusklopova U/I)PRIMJER VANJSKIH SABIRNICA- sabirnicu za M6800 tvore: sabirnica podataka, adresna sabirnica i upravljačka sabirnicaSABIRNICA PODATAKA sastoji se od 8 linija (D0-D7). Organizirana je kao dvosmjerna sabirnica sa 3 stanja. Sabirnica omogućuje opterećenje od jednog terete TTL i kapacitivnost od 130 pF, što s obzirom na karakteristike ostalih komponenti LSI iz porodice M6800(RAM,ROM,PIA,ACIA) omogućuje izravno priključenje od 7 do 10 takvih komponenti LSI. Linije podataka prelaze u stanje velike impedancije Z prijelazom upravljačkog signala DBE u logičku 0. ADRESNU SABIRNICU tvori 16 izlaznih jednosmjernih linija (A0 – A15). Adresne linije služe za specifikaciju memorije i U/I međusklopova. Postavljanjem upravljačkog signala TSC u logičku 1 adresna sabirnica prelazi u stanje velike impedancije Z.UPRAVLJAČKA SABIRNICA sastoji se od sljedećih linija:• Izlazna linija VMA (Valid Memory Access) – memorijska adresa pravomoćna. Taj signal je logičko 1 kada je pravomoćna adresa prisutna na adresnoj sabirnici. Signal VMA nema 3 stanja. • Signal generatora takta φ2 također je element upravljačke sabirnice. Upotrebljava se za omogućavanje djelovanja ili za izbor čipa (komponenti LSI) kada je adresa na adresnoj sabirnici stabilna i signal VMA=1.• Ulazna linija zahtjeva za prekid IRQ prijelazom u 0 započinje prekidni slijed (ako je prekid omogućen). Zahtjev za prekid obično je generiran od U/I sklopova ili sklopova definiranih od strane korisnika. • Ulazna linija RESET upotrebljava se za resetiranje i ponovno upućivanje mikroprocesora nakon ispada napajanja. • Izlazna linija R/W (Read/Write) signalom pokazuje komponentama mikroračunala da li je mikroprocesor u postupku čitanja (R/W=1) ili pisanja (R/W=0).• Ulazni signal TSC postavlja liniju R/W u stanje velike impedancije Z. Iz skupa od 40 izvoda integriranog kućišta mikroprocesora M6800 izdvojen je potreban broj priključaka za vanjsku sabirnicu, tako da mikroprocesor nema vremenski multipleksiranu sabirnicu.- nemogućnost istovremenog prijenosa!!MEMORIJA- memorija je važna komponenta mikroračunala i sustava mikroračunala- instrukcije, podaci, rezultati i međurezultati pohranjuju se u memoriji i pozivaju iz memorije- cijena se obično izražava po jedinici kapaciteta ($/MB)

Page 30: Arhitektura računala - skraćena skripta

- osnovni parametri:*kapacitet – ukupna količina informacija koja se može pohraniti u memoriji*dužina riječi – broj bitova koji se mogu upisati i pročitati u jednom ciklusu*vrijeme pristupa – vrijeme potrebno da se sadržaj izabrane lokacije pojavi na sabirnici podataka nakon postavljene adrese na adresnoj sabirnici*načina pristupa podatku: sekvencijalni pristup i izravni pristup- tehnologija izrade memorija (kroz tehnološke generacija):--> memorije s katodnim cijevima, akustičke memorije sa živinim linijama za kašnjenje--> memorije s feritnim jezgricama--> poluvodičke memorije kao LSI/VLSI komponente- problem neusklađenosti između brzine rada procesora i vremena potrebnog za pristup memorije rješava se arhitekturnim prilagođavanjem organizacije memorije1) REGISTRI PROCESORA IL ISKUP REGISTARA OPĆE NAMJENE (LOKALNA MEMORIJA)- obično su organizirani kao male ekstremno brze, višepristupne (jednoulazne i dvoizlazne) memorijske jedinice ostvarene na procesorskom čipu- imaju brzinu istog reda veličine kao i sklopovi procesora, a kapacitet im se kreće od 16 ili 32 pa sve do nekoliko stotina i više riječi- registri procesora organizirani kao višepristupna memorijska jedinica oblikuju skup registara opće namjene koji služi za privremeno pohranjivanje rezultata, operanada i međurezultata- izvedba skupa registara opće namjene koja ima jedna ulazna vrata (upisna vrata) i dvoja izlazna vrata za čitanje – takva izvedba omogućuje da se istodobno čitaju sadržaji dvaju registara te da se novi sadržaj upisuje u neki od registara iz skupa- ako se želi omogućiti u istoj periodi signala vremenskog vođenja čitanje i pisanje u isti registar, potrebno je dodatno sklopovlje*MEMORIJA MIKROPROGRAMIRANE UPRAVLJAČKE JEDINICE- pohranjuje mikroinstrukcije mikroprocesora2) PRIRUČNA MEMORIJA (CACHE) – razine 1, razine 2 (obje izvedene na samom procesorskom čipu, razine 3 (opcija) realizirana na samom procesorskom čipu ili pa izvan procesorskog čipa- većeg kapaciteta u usporedbi sa skupom registara opće namjene, nije nužno sporija- korisniku „nevidljiva“ ili „skrivena“, a logički je smještena između skupa registara opće namjene, odnosno registara procesora i glavne memorije- fizički priručna memorija može biti smještena na samom procesorskom čipu (obično su to priručna memorija razine 1 i razine 2, priručna memorija razine 3 obično ostvaruje izvan procesorskog čipa)--> zahvaljujući razvoju VLSI tehnologije moguće ostvariti sve 3 razine na samom procesorskom čipu - funkcionalno, priručna memorija može biti izvedena kao memorija za pohranjivanje instrukcija i podataka ili kao izdvojena instrukcijska priručna memorija te kao izdvojena priručna memorija podataka- kapacitet od nekoliko desetaka ili stotina KB pa sve do nekoliko MB- značajno doprinosi povećanju performanse procesora (u njoj se pohranjuje dio sadržaja iz RAM-a, ubrzava razmjenu podataka između CPU-a i RAM-a) – CPU brži, RAM sporiji pa ga mora čekati!3) GLAVNA ILI RADNA MEMORIJA naziva se i primarna memorija- prilično brza, velikog kapaciteta u kojoj se pohranjuju aktivni programi i podaci- bez obzira što je realizirana poluvodičkom tehnologijom sličnoj onoj koja se rabi za izvedbu skupa registara opće namjene ili priručne memorije, ona je zbog velikog kapaciteta (nekoliko desetaka ili stotina GB) i zbog toga što je izvedena tako da je fizički odvojena od procesora, sporija od prethodnih dvaju memorija u hijerarhiji, i to od 2 do 5 i više puta4) SEKUNDARNA MEMORIJA- vrlo velikog kapaciteta (nekoliko stotina GB ili nekoliko TB), ali puno sporija u odnosu na glavnu memoriju- vrijeme pristupa za memorijske jedinice u toj razini hijerarhije mjeri se u milisekundama- tipični predstavnici ove vrste memorija su magnetski diskovi, magnetske vrpce i optički diskovi (DC

Page 31: Arhitektura računala - skraćena skripta

ROM i DVD ROM)* memorije koje se upotrebljavaju u sustavima mikroračunala možemo podijeliti u:• memorije sa sekvencijalnim pristupom• memorije sa izravnim pristupom (tipovi memorije RAM i ROM)- kod memorija sa sekvencijalnim pristupom vrijeme pristupa (vrijeme potrebno da se sadržaj izabrane lokacije pojavi na sabirnici podataka nakon postavljanja adrese na adresnoj sabirnici te generiranja signala čitaj) zavisi od mjesta gdje je podatak pohranjen --> glavni predstavnici takvih memorija su papirnate perforirane trake, magnetne trake, memorija s magnetnim mjehurićima i poluvodičke serijske memorije (veliki posmačni registri)--> većina ovih tipova memorija upotrebljavaju se u nižim hijerarhijskim razinama organizacije memorije (sekundarna memorija)- vrijeme pristupa memorija s izravnim pristupom je uvijek isto, bez obzira na lokaciju u memoriji--> u razred memorija s izravnim pristupom spadaju upisno/ispisne memorije (read/write memory RWM ili RAM random access memory) i ispisne memorije (read only memory ROM)*memorija RAM upotrebljava se za pohranjivanje podataka koji se mijenjaju za vrijeme izvođenja programa, te programa koji se razvijaju i prolaze fazu testiranja, uz popravke i preinake--> nedostatak memorija RAM je da su izbrisive – pri nestanku napajanja njihov se sadržaj briše--> karakteristika memorije RAM je da se njen sadržaj može čitati i mijenjati – upisivanjem novog sadržaja- dijeli se u 2 grupe:1)statička memorija RAM- pohranjuje podatke u polje bistabila- čitanje podataka nije destruktivno- memorijska ćelija statičkog RAM-a realizirana sa 6 ili 8 tranzistora2)dinamička memorija RAM- podaci pohranjeni u obliku naboja u „kondenzatoru“ definiranom kapacitivnošću između upravljačke elektrode i supstrata MOS-tranzistora --> zbog nesavršenosti „kondenzatora“ naboj otječe, te se takav memorijski element mora periodički osvježavati (refresh)- čitanje dinamičke memorije je destruktivno, što znači da je potrebno ponovo upisati pročitanu informaciju- memorijska ćelija dinamičkog MOS RAM-a sastoji se od 4 tranzistora -> postignuta veća gustoća pohranjenih bitova za istu površinu pločice- nedostatak – potrebno osvježavanje; kompenziran je većim kapacitetom memorije u odnosu na statičku memoriju- brži od statičkog, no pošto su za osvježavanje potrebni dodatni sklopovi, dinamička memorija je ekonomičnija samo za memorije većeg kapaciteta*memorija ROM upotrebljava se za pohranjivanje stalnih programa, konstanti i stalnih parametara--> sadržaj memorije ROM može se očitati, međutim, ne može se mijenjati upisivanjem--> memorija ROM je neizbrisiva – pri nestanku napajanja sadržaj je očuvan--> neuništivost sadržaja – ROM se pojavljuje kao memorijsko polje čiji je sadržaj jednom upisan, stalan i ne može se promijeniti pod utjecajem mikroprocesora (operacijom upisivanja)- u grupu ispisnih memorija spadaju:1)ROM- u ROM je upisan određeni sadržaj već za vrijeme izrade memorijskog čipa. Bit-uzorke koji odgovaraju željenom programu korisnik dostavlja proizvođaču u standardnom obliku. Proizvođač izrađuje odgovarajuću masku (prema priloženom programu korisnika) i kao zadnji korak u proizvodnji čipa ROM, vrši metalizaciju, odnosno uspostavlja veze između redaka i stupaca.2)PROM- tip ispisne memorije koju može isprogramirati sam korisnik uz pomoć uređaja za programiranje PROM-ova. U memorije PROM spadaju 2 tipa programabilnih ROM-ova:--> bipolarno polje dioda--> bipolarna tranzistorska konfiguracija

Page 32: Arhitektura računala - skraćena skripta

- oba tipa primjenjuju tehniku „pregorljivih“ veza. Za vrijeme programiranja uređaj generira niz impulsa kojim će se izabrane „pregorljive“ veze rastaliti i time prekinuti vezu u matrici između stupca i retka- PROM ima kratko vrijeme pristupa, manje od 100 ns; upotrebljava se kod većine mikroračunala izgrađenih u malim serijama za pohranjivanje programa- nedostatak sličan nedostatku ROM-a – kada je jednom isprogramiran, ne može se mijenjati njegov sadržaj3)EPROM- memorija koju može programirati korisnik uz pomoć (E)PROM-programera, ali se njen sadržaj može izbrisati i zatim ponovo isprogramirati- briše s osvjetljavanjem čipa UV zrakama u trajanju od 5 do 10 minuta; sadržaj svih memorijskih lokacija se briše- nakon brisanja, EPROM može biti nanovo isprogramiran- vrijeme pristupa između 450 i 1200 ns- za njihovu izradu koristi se tehnologija MOS- jedan tip višestruko programabilog ROM-a je RPROM koji se briše električki4)EAROM- svrstanu razred memorija koje se uglavnom čitaju; no omogućuje i upisivanja- operacija upisivanja treba vrijeme reda veličine milisekunde - operacije čitanja reda mikrosekunde- ne mogu se upotrebljavati kao klasične memorije sa izravnim pristupom- upotrebljava se tamo gdje je nužno pohranjivanje malog broja podataka ili parametara- realizirana u tehnologiji MNOS, prednost tih memorija je neizbrisivostKOMUNIKACIJA IZMEĐU MIKROPROCESORA I VANJSKE LOGIKE- prijenos podatak (u širem smislu riječi - informacije) između logike koja je dio sustava mikroračunala i logičke izvan mikroračunala omogućuje U/I podsustav mikroračunala- granica između internih logičkih sklopova mikroračunala i vanjskih sklopova sustava je slijedeća: interni logički sklopovi – komponente mikroračunala – djeluju u uskoj vezi sa mikroprocesorom, dok su vanjski logički sklopovi u sprezi sa mikroprocesorom- način izmjene podataka između mikroračunala i vanjske logike može se razvrstati u 3 grupe:1) programirani U/I prijenos--> prijenosom podataka u potpunosti upravlja mikroračunalo, tj. program- mikroprocesor upotrebljava istu sabirnicu za komuniciranje s memorijom i U/I međusklopovima- ne razlikuju se adrese U/I međusklopova od adresa memorijskih lokacija- tipovi programiranog U/I prijenosa, s obzirom na odnos mikroračunala i vanjskih logičkih sklopova: PROGRAMIRANI BEZUVJETNI PRIJENOS- upotrebljava se samo tamo gdje je vrijeme odziva vanjskih logičkih sklopova poznato i stalno- vanjska logika mora biti spremna na komunikaciju (prihvaćanje ili slanje podataka) u trenutku izvođenja U/I instrukcije- zbog jednostavnosti i izravnosti ovaj tip prijenosa zahtjeva minimalne zahtjeve za programe i sklopovePROGRAMIRANI UVJETNI PRIJENOS- uglavnom se koristi u sustavima mikroračunala- prije obavljanja prijenosa mikroračunalo ispituje status vanjskih logičkih sklopova--> ako vanjski logički sklop nije spreman za komunikaciju programski se tok može zatvoriti u otelju i uzastopce ispitivati njegovo stanje--> kad je vanjski logički sklop spreman, izvodi se instrukcija za U/I prijenos podataka- ta zatvorena programska petlja je čekanje da vanjski logički sklop postane spreman--> u slučaju sporog vanjskog logičkog sklopa metoda uvjetnog prijenosa je gubitak vremena (mikroračunalo većinu vremena provodi u čekanju)*POSTUPAK PROZIVANJA- u sustavima gdje više vanjskih logičkih sklopova komunicira preko više U/I međusklopova sa jednim mikroprocesorom, upotrebljava se U/I tehnika prozivanja ili cikličkog ispitivanja

Page 33: Arhitektura računala - skraćena skripta

- mikroračunalo periodički proziva svaki vanjski logički sklop i ispituje da li je zahtijevao posluživanje--> ako vanjski logički sklop ne zahtijeva posluživanja, mikroračunalo ispituje sljedeći vanjski logički sklop--> ako jedan od njih zahtijeva posluživanje, mikroračunalo prelazi na provođenje programa za posluživanje dotičnog vanjskog logičkog sklopa- u program za posluživanje uključene su funkcije U/I prijenosa- nakon prozivanja tih vanjskih logičkih sklopova postupak prozivanja se ponavlja, tako da program tvori petlju prozivanja2) prekidni U/I prijenos--> vanjska logika zahtijeva da mikroračunalo prekine s tekućim operacijama te da joj posveti pažnju- ako se bezuvjetni prijenos, uvjetni prijenos ili postupak prozivanja pokažu nepogodnim, bilo zbog nepoznavanja točnih vremena odziva vanjskih logičkih sklopova , bilo zbog rasipanja vremena računala u petljama čekanja ili sporosti u prozivanju pojedinih vanjskih logičkih sklopova, može se upotrijebiti prekidni prijenos- pri prekidnom prijenosu, na zahtjev vanjske logike, mikroračunalo prekida izvođenje tekućeg program i prelazi na izvođenje prekidnog programa- prekidna struktura omogućuje da mikroprocesor odgovori na asinhrone događaje, odnosno zahtjeve od strane vanjske logike, a da ne čeka u petlji kojom ispituje stanje vanjskog logičkog sklopa- mikroprocesor ima jednu ili više upravljačkih linija (prekidne linije) preko kojih vanjski logički sklopovi zahtijevaju posluživanje- postupak prekidnog prijenosa provodi se obično u sljedećim koracima:a) vanjska logika generira zahtjev za prekid i šalje ga prekidnom linijom mikroprocesorub) ukoliko mikroprocesor prihvaća zahtjev za prekid, na kraju izvršenja tekuće instrukcije odgovara signalom potvrde (IACK) i onemogućava daljnje prekidec) pohranjuju se svi tekući sadržaji radnih registara, sadržaj registra uvjeta i programskog brojilad) program se grana na memorijsku adresu, sa kojom započinje prekidni programe) nakon izvršenja prekidnog programa nastavlja se izvođenje prekinutog (tekućeg) programa s tim da se svi sadržaji radnih i uvjetnih registara obnavljaju- većina mikroprocesora ima mogućnost programskog maskiranja prekida u zavisnosti od razine prioriteta--> ako je bit prekida u registru uvjeta postavljen na 1, mikroprocesor ne prihvaća zahtjev za prekid i nastavlja s izvođenjem sljedeće instrukcije tekućeg programa- prvi korak u postupku prekidnog prijenosa je onemogućavanje sljedećih prekida (postavljanjem prekidne maske sprečava se gniježđenje prekida)--> u nekim se situacijama mikroračunalo mora prekidati i kad se nalazi u prekidnom programu – to se omogućava brisanjem prekidne maske- sljedeći korak u postupku prekida je slanje signala potvrde prekida na kraju izvršenja tekuće instrukcije- na kraju prekidnog programa omogućuje se nov prekid (briše se prekidna maska u registru uvjeta) te mikroprocesor prelazi na izvođenje sljedeće instrukcije iz tekućeg prekinutog programa- taj prijelaz na daljnje provođenje prekinutog programa vrši se pomoću instrukcije povratka iz prekidnog programa (npr. RTI, RET)- budući da je više U/I međusklopova priključeno na istu prekidnu liniju, mikroprocesor mora ustanoviti koji je U/I međusklop, odnosno vanjski logički sklop, zahtijevao posluživanje- postoje 2 metode utvrđivanja uzročnika prekida:•metoda prozivanja prekida – u prekidnom programu obavlja se prozivanje pojedinih U/I međusklopova i ispituje se njihovo stanje, odnosno, ispituje se da li je određeni međusklop prouzročio prekid. Ukoliko je ispitani međusklop uzrok prekida, program se grana na odgovarajući programski odsječak za prijenos podataka. Pri tom se redoslijedu ispitivanja međusklopova krije i prioritet pojedinih U/I međusklopova.•metoda vektorskog prekida – adresu grananja generira U/I međusklop koji zahtijeva posluživanje. U sustavima mikroračunala često se upotrebljavaju prekidi u više razina koji su obično kombinacija

Page 34: Arhitektura računala - skraćena skripta

prozivanja i vektorskog prekida.- prednost prekidnog programa je u brzom odgovoru, jer se vanjski logički sklopovi poslužuju u vrlo kratkom vremenu nakon generiranog zahtjeva--> prekidni prijenosi se zbog toga obično upotrebljavaju u sustavima s odzivom u realnom vremenu- nedostatak prekidnog prijenosa je u tome što zahtijeva dodatne sklopove u slučaju simultanih i višerazinskih zahtjeva za prekid- pri svakom posluživanju zahtjeva mikroprocesor gubi vrijeme na dodatnom poslu pohranjivanja stanja tekućeg programa- daljnji nedostatak je asinhrono međudjelovanje programa za posluživanje i glavnog programa, tako da mogu nastati konflikti u pogledu zahtjeva za memorijskim prostorom ili u pogledu vremena izvođenja programa- nedostatak prekida je u tome što se prijenos podataka obavlja pod programskim upravljanjem mikroprocesoraPREKIDI KOD MIKROPROCESORA M6800- ima 3 prekidna ulaza (RES, NMI – nemaskirajući prekid, IRQ)- prekidni slijed može započeti upotrebom odgovarajućih upravljačkih signala na ta 3 prekidna ulaza ili upotrebom instrukcije SWI- rezultirajući prekidni slijed različit je za svaki od gornjih slučaja•sklopovski zahtjev za prekid IRQ- obično ga generiraju međusklopovi U/I i sklopovi koje projektiraju korisnici - postavljanjem linije IRQ=0 zahtjev se aktivira •nemaskiraući prekid NMI- sa zadnjim bridom (prijelazom signala iz 1 u 0) signala na ulazu NMI inicira se u mikroprocesoru prekidni slijed – taj se prekid ne može maskirati- prekidna maska u registru uvjeta CCR ne utječe na nemaskirajući prekid- na ovu prekidnu liniju obično se priključuju vanjski logički sklopovi sa najvišim prioritetom u pogledu zahtjeva za posluživanje- izuzev činjenice da taj tip prekida ne može biti maskiran, prekidni slijed je u potpunosti jednak slijedu izvođenja IRQ prekida- nakon završetka izvođenja tekuće instrukcije mikroprocesor pohranjuje stanja, postavlja masku i pribavlja vektor sa memorijskih lokacija FFFC i FFFD- nemaskirajući prekid se koristi i za sustave gdje se stanja tekućeg programa moraju sačuvati prilikom ispada napajanja (stanja se pohranjuju u memoriju sa baterijskim napajanjem)•reset RES- kadaj te RESET=0 mikroprocesor postavlja masku prekida i sa memorijskih lokacija FFFE i FFFF pribavlja vektor (adresu prve instrukcije u prekidnom programu)- nakon pribavljanja adrese prekidnog programa, mikroprocesor prelazi na izvođenje programskog odsječka za inicijalizaciju kojim se postavljaju početne vrijednosti programskog brojila, kazala stoga i drugih registara- taj prekid se koristi za startanje mikroprocesora nakon uspostavljanja napona napajanja- budući da se upotrebljava za startanje mikroprocesora (start up mode) nije potrebno pohranjivanje stanja u stog •programski prekid SWI- pri softverskom prekidu vektor se pribavlja iz memorijskih lokacija FFFA i FFFB- ovaj se prekid upotrebljava kao ispitna točka (break point) pri otkrivanju i otklanjanju grešaka u programu- u ispitnoj točki ispisani sadržaji svih radnih registara i registra uvjeta omogućuju provjeru pravilnosti provođenja programaOPĆE KARAKTERISTIKE ORGANIZACIJE PREKIDNOG SUSTAVA M6800:*prilikom prekida tekuća se stanja pohranjuju automatski na stog (izuzetak je prekid RESET)*mikroprocesor ne odgovara posebnim signalom potvrde (IACK) vanjskoj logici nakon prihvaćanja prekida. Jedino je na adresnim sabirnicama prisutna specifična adresa za svaku vrstu prekida.

Page 35: Arhitektura računala - skraćena skripta

*u slučaju istovremenih zahtjeva za prekid, prioritet prekida je sljedeći:1. RESET- sklopovsko upućivanje mikroprocesora u rad- ne čeka završetak tekuće instrukcije- autovektor za Reset sadrži početnu adresu PC-a2. NMI3. SWI4. IRQPRIORITET PREKIDA- vektor pribavljen sa memorijskih lokacija koje su specifične za pojedinu vrstu prekida određuje početnu adresu prekidnog programa- ako je na svaku prekidnu liniju (IRQ, NMI) priključen jedan vanjski logički sklop, izvor prekida je poznat i određeno je grananje na odnosni prekidni program- problem prioriteta prekida javlja se pojavom više istovremenih zahtjeva za prekid--> metodom prozivanja prioritet se određuje redoslijedom ispitivanja stanja vanjskih logičkih slopova ili U/I međusklopova--> postoje modifikacije metode prozivanja kod kojih se najprije prikupljaju sva stanja, a zatim se određuje redoslijed posluživanja u zavisnosti od vremena proteklog od posljednjeg posluživanja vanjskog logičkog sklopa- u primjeru priključivanja više vanjskih logičkih sklopova na istu prekidnu liniju, metoda prozivanja može biti prespora za utvrđivanje izvora prekida i njegova posluživanja- u tom slučaju primjenjuje se hardverska (sklopovska) organizacija prioriteta prekida koja pospješuje mehanizam utvrđivanja uzroka prekida3) izravan pristup memoriji--> prijenos podataka bez sudjelovanja mikroprocesora i ometanja njegovog rada- u slučaju postojanja čestih zahtjeva za U/I prijenosom od strane vanjskih logičkih sklopova, te postojanje zahtjeva za prijenos većih blokova podataka, može se očekivati otežano i vrlo usporeno provođenje glavnog (prekinutog) programa- rješenje tog problema je u povećanju brzine U/I prijenosa podataka i oslobađanju mikroprocesora od tereta U/I prijenosa- pomoću izravnog pristupa memoriji ostvaruje se brz prijenos podataka između memorije i vanjskih logičkih sklopova, a da ne sudjeluje mikroprocesor i da se ne mijenja sadržaj njegovih registara- pošto se taj prijenos vrši bez programskog upravljanja, granice brzine prijenosa postavljene su sa sklopovskim karakteristikama komponenti mikroračunala- primjeri upotrebe metode izravnog pristupa memoriji su pri prijenosu podataka između memorije mikroračunala i jedinice diskete, između brzih A/D pretvarača i memorije, između memorije i prikazne jediniceORGANIZACIJA IZRAVNOG PRISTUPA MEMORIJI (DMA)- u postupku izravnog pristupa memoriji tok podataka, uspostavljen između vanjskog logičkog sklopa i memorije mikroračunala, zaobilazi mikroprocesor, odnosno DMA ima izdvojen kanal za prijenos podataka- kod organizacije direktno pristupa koristi se ista vanjska sabirnica koju upotrebljava i mikroprocesor- mikroprocesor i upravljački sklop DMA zajednički dijele vanjsku sabirnicu:*rad mikroprocesora – upravljački sklop DMA se električki odspaja od vanjske sabirnice postavljanjem svojih izlaza u stanje velike impedancije*izravni pristup memoriji – upravljački sklop DMA se priključuje na vanjsku sabirnicu, a mikroprocesor se odspaja od vanjske sabirnice postavljanjem svojih izlaza u stanje velike impedancije- s obzirom na način realizacije izravnog pristupa memoriji, postoje sljedeće tehnike:•izravni pristup memoriji zaustavljanjem procesora--> najjednostavnija metoda, u nekim aplikacijama ova je metoda neprihvatljiva budući da može postojati relativno veliko kašnjenje od trenutka zahtjeva za prijenos DMA do trenutka zaustavljanja procesora

Page 36: Arhitektura računala - skraćena skripta

•izravni pristup memoriji krađom ciklusa-->ne zaustavlja mikroprocesor, već on samo privremeno obustavlja tok provođenja instrukcije – to omogućuje upravljačkom sklopu DMA da za prijenos iskoristi vrlo kratke vremenske intervale--> krađa ciklusa mikroprocesoru od strane operacija DMA odražava se na smanjenju brzine djelovanja mikroprocesora zbog smanjenja frekvencije signala (takta) vremenskog vođenja•kombinacija gornjih metoda--> to je izravni pristup memoriji krađom ciklusa u stanju kada je procesor zaustavljen--> takvom kombinacijom koristimo se kao jednom od varijanti organizacije izravnog pristupa memoriji (Halt Steal Mode) u upravljačkom sklopu LSI DMA za mikroprocesor M6800--> mikroprocesor je u stanju Halt za vrijeme koje je potrebno da se izvrši prijenos samo jednog bajta--> nakon prijenosa jednog bajta upravljanje se usmjerava na mikroprocesor•izravni pristup memoriji multipleksiranjem operacija DMA/MPU (mikroprocesorskih)--> omogućuje najveću brzinu izvođenja operacija mikroprocesora--> mikroprocesor se ne zaustavlja niti smanjuje brzinu izvođenja operacija uz istovrem. prijenos DMA

--> operacije mikroprocesora i prijenosa DMA su multipleksirane tako da je pristup memoriji od strane mikroprocesora omogućen za vrijeme jedne faze signala vremenskog vođenja, a pristup memoriji od strane upravljačkog sklopa DMA za vrijeme druge faze signala vremenskog vođenja--> frekvencija signala vremenskog vođenja u tom slučaju mora biti prilagođena brzini memorije koja se upotrebljava – obično je perioda toga signala jednaka dvostrukom vremenu trajanja memorijskog ciklusa- da bi se ostvario izravan pristup memoriji, potreban je DMA upravljački sklop koji sjedinjuje: sljedeće funkcije:a) upravljanje adresnom sabirnicom – dodjeljivanje adresne sabirnice mikroprocesoru i upravljačkom sklopu DMAb) upravljanje sabirnicom podatakac) adresiranje memorije (upravljački sklop DMA mora imati adresni registar koji sadrži adresu sljedeće memorijske riječi koja će sudjelovati u prijenosu – sadržaj mu se inkrementira nakon svakog prijenosa riječi)d) brojanje riječi (za vrijeme prijenosa podataka broj prenesenih riječi mora se stalno uspoređivati sa željenom dužinom bloka – prijenos DMA se završava kada e dostignuta definirana duljina bloka)e) izbor načina upravljanja (uprav. registar uprav. sklopa DMA sadrži uprav. riječ koja određuje smjer toka podataka pri DMA prijenosu, informaciju da li je uprav. sklop DMA aktivan i sl.)POSTUPAK PRI PRIJENOSU DMA•generiranje zahtjeva za prijenos DMA od strane vanjskog logičkog sklopa te slanje zahtjeva mikropr.•slanje signala potvrde prihvaćanja zahtjeva•adresiranje memorije•prijenos podataka između memorije i vanjskog logičkog sklopa•završetak prijenosa DMA- prilikom izbora tehnike prijenosa DMA treba tražiti kompromis između kompleksnosti sklopova, utjecaja na brzinu izvođenja glavnog programa te brzine prijenosa DMATREND RAZVOJA ARHITEKTURE MIKROPROCESORA- tri prevladavajuća pristupa arhitekturi procesora:1) procesori s visokim stupnjem superskalarnosti – izvođenje preko 10 instrukcija u jednoj periodi taktnog signala; frekvencija taktnog signala veća od 1 GHz2) višeprocesorski sustavi – realizacija većeg broja roja procesora na jednom čipu3) VLIW (Very Long Instruction Words) procesori – omogućavaju povećanje brzine procesora korištenjem paralelizma na razini instrukcija- razvoj (mikro)procesora dijeli se prema F. Fagginu na 3 razine,svaka traje otprilike četvrt stoljeća:*u 1. fazi 1971.-1996. g. poluvodička tehnologija bila je dominantni faktor u napretku mikroprocesora*u drugoj fazi, koja je u toku, poluvodička tehnologija i arhitektura procesora igraju glavnu ulogu u daljnjem napretku procesora; faza će se okončati kada se poluvodička tehnologija stupnjem

Page 37: Arhitektura računala - skraćena skripta

integracije približi svojim krajnjim granicama*u trećoj fazi dominirat će inovacije u arhitekturi procesora