28
VISOKA POSLOVNA ŠKOLA STRUKOVNIH STUDIJA-BLACE SEMINARSKI RAD IZ ARHITEKTURE I ORGANIZACIJE RAČUNARA MEMORIJE RAČUNARA

Osnovni pojmovi - smoochysarma.files.wordpress.com€¦ · Web viewvisoka poslovna Škola strukovnih studija-blace. seminarski rad iz arhitekture i organizacije raČunara. memorije

  • Upload
    buidien

  • View
    219

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Osnovni pojmovi - smoochysarma.files.wordpress.com€¦ · Web viewvisoka poslovna Škola strukovnih studija-blace. seminarski rad iz arhitekture i organizacije raČunara. memorije

VISOKA POSLOVNA ŠKOLA STRUKOVNIH STUDIJA-BLACE

SEMINARSKI RAD IZ ARHITEKTURE I ORGANIZACIJE RAČUNARA

MEMORIJE RAČUNARA

Mentor: Student:dr Danilo Oklobđija Stefan Ničić 32/13p

Page 2: Osnovni pojmovi - smoochysarma.files.wordpress.com€¦ · Web viewvisoka poslovna Škola strukovnih studija-blace. seminarski rad iz arhitekture i organizacije raČunara. memorije

2

Sadržaj:

Osnovni pojmovi............................................................................................................Memorijski medijumi.....................................................................................................Podela memorije.............................................................................................................Paramerti memorije........................................................................................................Struktura memorijskog sistema......................................................................................Hijerarhija memorija......................................................................................................Registarska memorija.....................................................................................................Stek memorija.................................................................................................................Operativna memorija......................................................................................................Segmentacija memorije..................................................................................................Čitačka memorija..........................................................................................................Asocijativna memorija..................................................................................................Keš-memorija................................................................................................................Problemi korišćenja keš-memorije...............................................................................Dvonivovske i podeljene keš-memorije........................................................................Keš-memorija diska......................................................................................................Virtuelna memorija.......................................................................................................Memorijske stranice......................................................................................................Prevođenje virtuelnih adresa.........................................................................................Zamena stranica............................................................................................................

3334456789

10121314151616171819

Page 3: Osnovni pojmovi - smoochysarma.files.wordpress.com€¦ · Web viewvisoka poslovna Škola strukovnih studija-blace. seminarski rad iz arhitekture i organizacije raČunara. memorije

Osnovni pojmovi

Memoriju ili memorijski sistem čine uređaju koji obezbeđuju zapisivanje binarnih podataka. Memorija je namenjena upisu, pamćenju i čitanju podataka i programa. Operacija upisa i operacija čitanja nazivaju se još i pristup memoriji. Svaki memorijski sistem bilo kog tipa sadrži memorijski medijum na kome si pamte podaci, kao i odgovarajuće upravljačke elektronske i programske blokove.

Za memorije računara koristi se široki opseg tipova, tehnologija, organizacija i cena. Nijedna tehnologija nije optimalna u zadovoljenju zahteva za memorijski sistem računara. Kao posledica toga svaki računarski sistem poseduje hijerarhiju memorijskih podsistema, pri čemu nekim procesor pristupa direktno, a nekim pristupa preko ulazno-izlaznih modula.

Memorijski medijumi

Za obradu podataka na računaru tj. za njihovo unošenje u računar ili izlaz iz računara, kao i za prenos na daljinu, podaci se pamte na posebnim materijalnim nosiocima – memorijskim medijumima ili nosiocima podataka. Memorijski medijum predstavlja materijal, ili konfiguraciju načinjenu od njega, čija se neka njegova promenljiva fizička veličina koristi za registrovanje podataka. Primeri medijuma su: magnetne trake, diskete, magnetni diskovi, optički diskovi, bistabilna elektronska kola itd.

U svim memorijskim sistemima koji se danas koriste na memorijskom medijumu se pamti energija u nekim diskretnim količinama, kao što su npr. magnetni moment, struja, naelektrisanje, provodni put i sl. Da bi se neki medijum mogao koristiti za pamćenje podataka, treba da poseduje:

a) dva stabilna stanja kojima se predstavljaju binarne vrednosti „0“ i „1“,b) mogućnost upisa prelaskom u odgovarajuće stanje,c) mogućnost čitanja stanja.

Podela memorije

Memorija računara se sastoji od operativne memorije i spoljne memorije. Operativna memorija je namenjena privremenom pamćenju podataka i programa, a sačinjena je od bistabilnih memorijskih elemenata. U operativnoj memoriji se takođe pamte i međurezultati i konačni rezultati obrade.

Operativna memorija često se sastoji od više memorijskih modula, pri čemu svaki od njih može da obavi istovremeno jedan pristup memoriji. Memorijski moduli organizovani su u memorijske banke, sastavljene od više modula koji dele iste ulazne i izlazne magistrale.

Spoljna memorija ima veliki kapacitet i služi za pamćenje podataka velikog obima i njihovo čuvanje na duži vremenski period, a znatno je sporija od operativne memorije. Spoljne memorije služe za dugotrajno čuvanje podataka i programa, čuvanje podataka velikog obima, arhiviranje podataka, čuvanje rezervnih kopija podataka i dr.

3

Page 4: Osnovni pojmovi - smoochysarma.files.wordpress.com€¦ · Web viewvisoka poslovna Škola strukovnih studija-blace. seminarski rad iz arhitekture i organizacije raČunara. memorije

Parametri memorije

Za opis karakteristika memorije koristi se više različitih parametara od kojih su osnovni sledeći:

1) kapacitet memorije – broj bajtova ili bitova koji se mogu zapamtiti na memoriji;2) vreme pristupa ili kašnjenje – vremenski interval koji protekne od dovođenja

signala za definisanje pristupa do završetka upisa ili čitanja;3) memorijski ciklus – minimalni dozvoljen vremenski interval između dva uzastopna

pristupa memoriji. Memorijski ciklus nemože biti kraći od vremena pristupa, a obično je nešto duži od njega;

4) jedinica prenosa – za operativnu memoriju jedinica prenosa je memorijska reč, tj.broj bitova koji se istovremeno čita ili upisuje;

5) brzina prenosa podataka – broj bitova, bajtova ili memorijskih reči koje uređaj može preneti u jednoj sekundi posle postavljanja upisno-čitajuće glave na početak bloka ili segmenta podataka;

6) cena 1 bita memorije – odnos ukupne cene memorije prema kapacitetu memorije.

Struktura memorijskog sistema

Osnovni cilj memorije računara jeste da opslužuje centralni procesor i druge delove za obradu podacima i programima. Dve osnovne operacije koje obezbeđuje memorija su:

1) pamćenje (upis) podataka i2) pozivanje (čitanje) podataka.

Za obezbeđivanje ovih operacija memorijski sistem dobija upustva od centralnog procesora, a pre svega koje funkcije treba da izvrši (upis ili čitanje) i gde (adresa). Pri tome centralni procesor obezbeđuje podatke koje treba zapamtiti pri operaciji upisa, odnosno mesto za podatke koji se dobijaju operacijom čitanja.

Da bi memorija mogla izvršavati svoje funkcije, treba obezbediti i upravljanje. Zbog toga svaki memorijski sistem poseduje dva osnovna funkcionalna dela:

upravljačku jedinicu memorije i memorijski medijum (slika 1).

4

Podaci Upravljanje

UPRAVLJČKA JEDINCAMOMERIJE

- Kola za čitanje/upis- Kola za sinhronizacione

signale- Kola za druge

upravljačke signale

MEMORIJSKIMEDIJUM

Instrukcija

Dekoder

Podaci

CENTRALNI PROCESOR

MEMORIJSKI MEDIJUM

Adresa

Podaci

Page 5: Osnovni pojmovi - smoochysarma.files.wordpress.com€¦ · Web viewvisoka poslovna Škola strukovnih studija-blace. seminarski rad iz arhitekture i organizacije raČunara. memorije

Slika 1 – Opšta organizacija memorijskog sistema

Hijerarhija memorija

Većina računara radi mnogo efikasnije ako osim operativne memorije postoji spoljna memorija. Pri tome se u operativnoj memoriji nalaze samo podaci i programi koje procesor koristi u datom trenutku. Svi ostali podaci čuvaju se na spoljnoj memoriji i prenose se na operativnu memoriju kada su potrebni.

Ukupno raspoloživa memorija može se razmatrati kao hijerarhijski sistem komponenata koji se sastoji od svih uređaja za čuvanje podataka koje koristi računarski sistem. Zbog toga se memorija računara organizuje u hijerarhijsku strukturu memorijskih uređaja koji na pojedinim nivoima imaju različite brzine i kapacitete (slika 2).

U računaru se koriste sledeće memorije: registarska memorija, keš memorija (ultra brza memorija, priručna memorija), operativna memorija (osnovna memorija, glavna memorija), keš memorija diska, spoljna memorija sa direktnim pristupom (magnetni diskovi) i memorija sa sekvencijalnim pristupom (magnetne trake).

Navedeni redosled momorija odgovara smanjenju nivoa u hijerarhiji, smanjenju brzine i cene po jednom bitu a povećanju kapaciteta.

Slika 2 – Hijerarhija memorija

Svaki nivo može da sadrži više modula (primeraka) odgovarajućih uređaja za dobijanje potrebnog kapaciteta datog nivoa memorije. Ovakva hijerarhijska struktura omogućava da se ekonomski efikasno usklade čuvanje velikog broja podataka sa brzim pristupom podacima u procesu njihove obrade.

Na donjem nivou hijerarhije nalaze se relativno spore magnetne trake koje se koriste, pre svega, za arhiviranje podataka. Sledeći nivo čine magnetni diskovi koji se koriste kao spoljni memorijski uređaji za trajno čuvanje podataka i programa. Keš-memorija diska služi za bafer koji čuva značajan deo ulazno izlaznog prenosa, smanjujući tako efektivno vreme pristupa i zahtevani broj pristupa na disku. Centralno mesto ima operativna memorija koja može neposredno razmenjivati podatke sa centralnim procesorom i sa perifernim uređajima. Kada su procesoru potrebni podaci kojih nema u operativnoj memoriji, oni se unose iz keš-memorije diska ili sa spoljne memorije. Keš-memorija služi za povećanje brzine obrade pomoću koje tekuće instrukcije i tekući podaci mogu da se prenose u centralni procesor velikom brzinom. Time se kompenzuje razlika u brzini rada procesora i vremena pristupa operativnoj memoriji, jer je vreme pristupa kes-memorije približno jednako brzini rada centralnog procesora. Registarsku memoriju

5

CentralniRegistriprocesor

Keš memorija

Operativna memorija

Keš memo-rija diska

Spoljnamemorija

Page 6: Osnovni pojmovi - smoochysarma.files.wordpress.com€¦ · Web viewvisoka poslovna Škola strukovnih studija-blace. seminarski rad iz arhitekture i organizacije raČunara. memorije

čini skup registara zžu procesoru ili posebna registarska polja (registarske matrice), a služi pre svega za privremeno pamćenje operanada i međurezultata.

Veća Kraće

Cena po MB Vreme pristupa

Manja Duže

Slika 3 – Proširena hijerarhija memorija računara

Registarska memorija

Centralni procesor pored više upravljačkih registra, kao što su akumulator, brojač instrukcija, registar instrukcija i dr., sadrži i memoriju relativno malog kapaciteta koja se naziva registarska memorija. Registarska memorija predstavlja skup registra u procesotu koji se nazivaju registri opšte namene. Oni se koriste u različite svrhe, pre svega za privremeno pamćenje operanada, međurezultata, komponenata adresa i dr. Ovi registri rade brzinom centralnog procesora tako da se operacije sa podacima smeštenim u registre izvode brzinom rada procesora. Iz tog razloga svi novi procesori sadrže više desetina ili čak nekoliko stotina registara opšte namene koji se organizuju kao tzv.registarske matrice ili registarska polja (eng. register file – registarsko spremište).

Registarska memorija realizuje se poluprovodničkim memorijskim elementima sa dva stabilna stanja – bistabilnim kolima ili flip-flopovima. Pri tome registar predstavlja uređeni skup memorijskih elemenata koji se pri radu tretira kao jedna celina. Registrima se radi identifikacije pristupa dodeljuju adrese na isti način kao i lokacijama operativne memorije. Za adresiranje registara koristi se poseban načina adresiranja koji se naziva registarsko adresiranje. Za označavanje registra u asemblerskom jeziku koriste se simbolička imena.

Registarska memorija koristi se onda kada je potrebno da se za sto kraće vreme pritupi podacima i jednostavno upisivati i čitati podatke. Njena brzina je identična brzini rada centralnog procesora, oko dva puta je veća od brzine keš memorije i deserak puta veća od brzine operativne memorije.

Registarska memorija ima naročito važnu ulogu u novim arhitekturama procesora kojima se teži bržem izvršenju operacija. To je posebno slučaj kod procesora sa redukovanim skupom instrukcija, tzv. RRISC arhitekturom. Pri tome se teži da se podaci i instrukcije za koje se očekuje

6

Registarska memorija

Keš-memorija

RAM memorija

Keš-memorija diska

Tvrdi disk

CD-ROM disk, MO disk

Strimer traka, Magnetna traka

Page 7: Osnovni pojmovi - smoochysarma.files.wordpress.com€¦ · Web viewvisoka poslovna Škola strukovnih studija-blace. seminarski rad iz arhitekture i organizacije raČunara. memorije

da će biti potrebni centralnom procesoru, kao i međurezultati operacija, čuvaju u registarskoj memoriji ili u jednoj ili više keš-memorija.

Stek-memorija

Stek-memorija ili magacinska memorija jeste bezadresna registarska memorija sa sekvencijalnim pristupom. Kod ove memorije registri formiraju jednodimenzionalni niz u kome su susedni registri povezani kolima za paralelni prenos binarnih reči tako da se u njima upis i čitanje vrši po principu „poslednji upisan – prvi pročitan“ (eng. LIFO – Last In – First Out). Drugim rečima, ako je neki niz podataka upisan u stek, tada će pri čitanju redosled tih podataka biti obrnut od onog pri unosu (slika 4a).

Upis u stek i čitanje iz steka vrši se samo na jednom mestu, u gornjoj ćeliji koja se naziva vrh steka, tako da pri korišćenju steka nema potrebe zadavati adrese. Pri upisu podataka u stek sadržaji svih registra steka se pomeraju u susedne ćelije za jedno mesto „naniže“, a pri čitanju se pomeraju za jedno mesto „naviše“. Operacija upisa naziva se PUSH (eng. push – gurnuti, ubaciti), a operacija čitanja naziva se POP (eng. pop – izgurati, izbaciti).

Stek se koristi kod izračunavanja vrednosti aritmetičkih izraza, pri realizaciji programskih prevodilaca i u mnogim drugim slučajevima. U džepnim kalkulatorima koristi se unutražnji stek za izračunavanje vrednosti aritmetičkih izraza. Korišćenjem steka za pamćenje operanada i rezultata moguće je realizovati centralni procesor u kome instrukcije nemaju adresni deo ( to su tzv. bezadresne instrukcije).

Upis Čitanje Upis

Čitanje

a) Stek b) Red

c) Realizacija steka

Slika 4 – Stek i red

Memorija tipa reda (Slika 4b) jeste registarska memorija slična steku, samo se podaci u nju upisuju i iz nje čitaju po principu „prvi upisan – prvi pročitan“ (eng. FIFO – First In – First Out). Koristi se pri opsluživanju po principu redova čekanja.

Osim realizacije steka pomoću registara, vrlo se često stek realizuje i u operativnoj memoriji. Radi toga se u procesor uvodi poseban adresni registar za vrh steka koji se naziva pokazivač steka. Ovako organizovan stek u operativnoj memoriji prikazan je na slici 4c. Kod ovakve realizacije steka pri upisu i čitanju steku se pristupa na osnovu sadržaja pokazivača steka, koji pokazuje na vrh steka proko njegove memorijske adrese. Pri tome nema fizičkog pomeranja sadržaja steka, već se samo podešava novi sadržaj pokazivača

7

Vrh steka

Page 8: Osnovni pojmovi - smoochysarma.files.wordpress.com€¦ · Web viewvisoka poslovna Škola strukovnih studija-blace. seminarski rad iz arhitekture i organizacije raČunara. memorije

steka povećanjem ili smanjenjem adrese za 1.

Operativna memorija

Operativna memorija, glavna memorija ili memorija sa neposrednim pristupom (eng. RAM – Random Acces Memory – memorija sa proizvoljnim pristupom) jeste adresivna memorija koja služi za čuvanje podataka koji se koriste u procesu izvršenja mašinskih operacija u aritmetičko-logičkoj jedinici i upravljačkoj jedinici procesora. To su polazni podaci za obradu, međurezultati i konačni rezultati obrade i instrukcije programa koji se izvršava. Karakteristike operativne memorije neposredno utiču na osnovne pokazatelje samog računarskog sistema, pre svega na njegovu brzinu.

Slika 5 – Struktura operativne memorije

Tipična struktura operativne memorije prikazana je na slici 5. Operativna memorija sastoji se od memorijskih lokacija realizovanih bistabilnim kolima i odgovarajućih prekidačkih mreža koje obezbeđuju upis podataka u memoriju i čitanje podataka iz memorije. Kako se na osnovu adrese može pristupiti bilo kojoj lokaciji, koristi se termin memorija sa neposrednim pristupom ili memorija sa proizvoljnim pristupom.

U memoriji se binarni podaci čuvaju u obliku grupa bitova koje se nazivaju memorijske reči. Svaka reč čuva se u posebnoj lokaciji a čita se ili upisuje kao celina. Svaka reč može predstavljati brojčani podatak, alfanumerički podatak, kŏd instrukcije ili bilo koji drugi binarni kŏd.

Veza sa operativnom memorijom ostvaruje se preko pojedinih signala na upravljačkim linijama, adresnim linijama i linijama za ulaz i izlaz podataka. Upravljački signali određuju smer prenosa (upis ili čitanje) a signali na adresnoj liniji određuju momorijsku lokaciju kojoj se pristupa. Upravljački i sinhronizacioni signali za izvršenje zahtevanih operacija obezbeđuju unutrašnja upravljačka kola memorije koja su sastavni deo upravljačke jedinice operativne memorije.

8

Page 9: Osnovni pojmovi - smoochysarma.files.wordpress.com€¦ · Web viewvisoka poslovna Škola strukovnih studija-blace. seminarski rad iz arhitekture i organizacije raČunara. memorije

Za realizaciju operativne memorije danas se gotovo isključivo koriste kao memorijski elementi poluprovodnička bistabilna kola. Postoje statičke i dinamičke poluprovodničke memorije sa neposrednim pristupom.

Statička memorija kao memorijske elemente koristi poluprovodnička bistabilna kola. Dobre odlike ovih kola su velika brzina upisa i čitanja i dozvoljena odstupanja parametara komponenata. Nedostatak je mali kapacitet posto troše vise energije nego dinamičke, zbog čega je manja gustina na silicijumskoj pločici integrisanog kola. Većina statičkih memorija realizuje se u MOS tehnologiji (eng. MOS – Metal – Oxide – Semiconductor - metal – oksid – poluprovodnik). Međutim, postoje i statičke memorije sa bipolarnim kolima, koje su brže ali imaju veću disipaciju snage.

Dinamičke memorije kao memorijski element koriste spregu kondendzatora i tranzistora realizovanih na integrisanom kolu u MOS tehnologiji kao jedna struktura. Bit podataka se pamti kao veća ili manja količina naelektrisanja na p-n spoju MOS tranzistora koji igra ulogu kondendzatora a izolovan je od drugih kola pomoću tranzistora. Ovo naelektrisanje se zadržava ograničeno vreme, zbog čega je potrebno periodično osvežavanje naelektrisanja otprilike svake 2ms.

Segmentacija memorije

Segment predstavlja grupu sukcesivnih memorijskih lokacija veličine do 64 K (kod mikroprocesora INTEL 8086). Segmenti se koriste da bi se postiglo proširenje ukupnog memorijskog prostora. Naime, kod ovog mikroprocesora postoji 16 adresnih linija, što znači da se njima može adresirati samo 64 K lokacija. Kako je oprativna memorija kapaciteta 1 M lokacija i više, uvedena je segmentacija. Kod mikroprocesota INTEL 8086 za specifikaciju memorijske adrese koriste se dva broja: početna adresa segmenta i pomeraj, pri čemu pomeraj predstavlja relativnu udaljenost (relativnu adresu) memorijske lokacije od početka segmenta. U procesoru postoje četiri posebna registra koji se nazivaju segmentni registri, a služe za adresiranje segmenta u operativnoj memoriji. To su (slika 6):

registar segmenta programa (koda programa, eng. CS – Code Segment), služi za adresiranje instrukcija programa koji se izvršava;

registar segmenta podataka (eng. DS – Data Segment), služi za adresiranje podataka za obradu;

registar segmenta steka (stek-memorije, eng. SS – Stack Segment), služi za adresitanje steka (kada se radi sa njim);

registar dodatnog segmenta (eng. ES – Extra Segment) sa sličnom ulogom kao i registar segmenta podataka.

Slika 6 – Segmenti u operativnoj memoriji

9

Page 10: Osnovni pojmovi - smoochysarma.files.wordpress.com€¦ · Web viewvisoka poslovna Škola strukovnih studija-blace. seminarski rad iz arhitekture i organizacije raČunara. memorije

Segmenti se u operativnoj memoriji mogu preklapati, ali mogu sadržati i sasvim različite lokacije operativne memorije, što je češći slučaj.

Adresa memorijske lokacije u operativnoj memoriji formira se kao 20-bitna fizička adresa onako kako je to prikazano na slici 7. To se postiže sabiranjem pomeraja sa sadržajem segmentnog registra pomnoženog sa 16. U stvari, kao što se sa slike vidi mikroprocesor tretira segmentni registar kao da on ima još 4 bita najmanje težine i da ta 4 bita sadrže nule.

Primer. Ako je sadržaj registra segmenta podataka DS jednak adr, tada [DS] + d16 predstavlja adresu memorijske lokacije u tom segmentu sa adresom jednakom adr + d16.

Pri programiranju na asemblerskom jeziku nema potrebe voditi računa o adresi segmenta i veličini pomeraja. Naime, prevodilac pri dodeljivanju memorijskog prostora simboličkim promenljivim sam definiše adrese koje sadrže obe ove vrednosti.

Slika 7 – Formiranje fizičke adrese mikroprocesora Intel 8086

Čitačka memorija

Čitačka memorija, memorija sa konstantnim sadržajem, fiksna memorija (eng. ROM – Read-Only Memory – memorija samo za čitanje) jeste memorija sa neposrednim pristupom koja omogućava da se jednom upisani podaci mogu samo čitati, dok upis nije moguć. Binarni podaci se upisuju u čitačku memoriju u procesu proizvodnje ili posebnim uređajima kod korisnika. Sadržaj čitačke memorije ne može se uopšte menjati instrukcijama programa.

Za razliku od nepostojanih poluprovodničkih memorija, čitačka memorija, koja je takođe poluprovodnička, ne zavisi od postojanja napona napajanja i ne gubi svoj sadržaj.

Čitačka memorija koristi se za programe i podatke računara koji se ne menjaju često, kao što su podprogrami, tablični podaci, konstante, test-programi i dr. Svaki računar ima bar jednu čitačku memoriju koja se koristi za pokretanje računara prilikom uključenja i poziv sa spoljne memorije operativnog sistema. Na primer, u personalnim računarima realizovan je u čitačkoj memorije program BIOS (eng. Basic Input-Out Sistem – osnovni ulazno-izlazni sistem). BIOS predstavlja osnovni sistem programa za unošenje i izdavanje podataka. Ima ulogu inicijalnog programa kojim se pokreće računar, ali sadrži i važan skup programa za podršku, komunikacije sa svim perifernim jedinicama, kao npr. čitanje sa tastature, ispis na ekranu i dr.

Postoje četiri tipa čitačkih memorija. Najprostije su čitačke memorije u kojima se podaci upisuju jednom zauvek u procesu proizvodnje poluprovodničkih integrisanih kola. To znači da se ove čitačke memorije mogu samo jednom programirati. Programiranje se vrši pomoću specijalnih

10

Page 11: Osnovni pojmovi - smoochysarma.files.wordpress.com€¦ · Web viewvisoka poslovna Škola strukovnih studija-blace. seminarski rad iz arhitekture i organizacije raČunara. memorije

maski na kraju tehnološkog procesa proizvodnje integrisanih kola. Ovakve čitačke memorije koriste se samo ako se masovno proizvode, jer je priprema maski dosta skupa.

Programibilne čitačke memorije omogućavaju programiranje samo jednom, i to programiranje vrši korisnik. Pri tome je programiranje jednokratni postupak, jer se jednom upisani podaci u čitačkoj memoriji ne mogu više menjati. Ako je potreban drugačiji sadržaj mora se uzeti novo integrisano kolo i ono programirati.

Reprogramabilne čitačke memorije omogućavaju da posebnim postupkom korisnik može da ih programira, po potrebi može zatim te podatke obrisati i ponovo upisati novi željeni sadržaj u istu tu čitačku memoriju. U praksi se najviše primenjuju čitačke reprogramabilne memorije čiji se sadržaj može brisati ultraljubičastim zracima.

Slika 8 – Čitačka memorija

Postoje i električno reprogramabilne čitačke memorije, kod kojih se programiranje i izmena sadržaja mogu vršiti električnim putem. Za razliku od reprogramabilnih čitačkih memorija, ovde nisu potrebni posebni dodatni uređaji za brisanje starog sadržaja. Čitačka memorija je jednostavnija od operativne memorije. Njena struktura je prikazana na slici 8a. Kao što se sa slike vidi, čitačka memorija faktički formira određeni odnos između ulaza (adrese) i izlaza (upisanog sadržaja).

Za realizaciju čitačke memorije koristi se dekoder i diode. Jedna od mogućnosti programiranja jeste korišćenje toljivih kratkospojnika, kako je to prikazano na slici 8b. Programiranje ovakve memorije sastoji se u pregorevanju kratkospojnika tamo gde nisu potrebni dovođenjem odgovarajuće struje.

U praksi se umesto dioda za realizaciju svih vrsta čitačkih memorija koriste MOS tranzzistori zbog znatno manje disipacije snage. Pored pamćenja programa koji se ne menjaju, čitačka memorija se može koristiti i za konverziju jednog binarnog koda u drugi, za realizaciju tabela matematičkih funkcija, za generisanje znakova na ekranu i dr. Takođe se koristi i za mikroprogramsku realizaciju mašinskih instrukcija u upravljačkoj jedinici.

11

Page 12: Osnovni pojmovi - smoochysarma.files.wordpress.com€¦ · Web viewvisoka poslovna Škola strukovnih studija-blace. seminarski rad iz arhitekture i organizacije raČunara. memorije

Asocijativna memorija

U mnogim zadacima obrade podataka potrebno je pronaći podatke u nekoj strukturi podataka smeštenoj u operativnu memoriju. Procedura traženja nekog elementa sastojaće se od poređenja zapamćenih podataka sa zadatom vrednošću sve dok ne dodje do poklapanja. Pri tome će broj pristupa operativnoj memoriji zavisiti od mesta traženog elementa i algoritma po kome se vrši traženje. Vreme potrebno za traženje podataka u operativnoj memoriji može se znatno skratiti ako se zapamćeni podaci mogu identifikovati ne samo na osnovu adrese nego i na osnovu njihovog sadržaja. Onda kada vreme traženja treba da bude vrlo kratko, postoji memorija koja omogućava pristup na osnovu sadržaja i ona se naziva asocijativna memorija ili memorija sa adresiranjem prema sadržaju. Asocijativna memorija je memorija sa neposrednim pristupom kojoj su dodatno ugrađena kola koja omogućavaju istovremeno poređenje u samo jednom memorijskom ciklusu sadržaja svih lokacija sa zadatim sadržajem – ključem. U njoj se traženje vrši na osnovu sadržaja i pronalaze se sve lokacije koje imaju sadržaj jednak sadržaju ključa ili dela ključa. U asocijativnoj memoriji pristupa se istovremeno i paralelno svim lokacijama na osnovu njihovog sadržaja. Da bi to bilo moguće potrebni su memorijski elementi složeniji od običnih bistabilnih kola, a nazivaju se asocijativni memorijski elementi (AME). Zato je asocijativna memorija skuplja od memorije sa neposrednim pristupom. Na slici 9. prikazan je asocijativni memorijski element.

y k m

s x

p

Slika 9 – Opšti model asocijativnog memorijskog elementa

Ulazi x i y služe kod pristupa asocijativnoj memoriji kao memoriji sa neposrednim pristupom. Sranje memorijskog elementa dobija se na izlazu s. Kod asocijativnog pristupa poredi se ulazni signal (bit) ključa k sa stanjem memorijskog elementa s. Izlaz p imaće vrednost 1 ako ulazni bit ključa k i stanje memorijskog elementa s imaju istu vrednost. Pri tome bit maske m definiše da li bit ključa k treba da se ispituje na poklapanje ili ne.

Princip rada asocijativne memorije je sledeći (slika 10). Registar maske sadrži vrednost 1 u onim pozicijama koje određuju deo ključa za upoređivanje na poklapanje. Ključ iz registra ključa upoređuje se sa sadržajem svake memorijske lokacije, ako registar maske ima 1 u svim pozicijama. U protivnom, u poređenju učestvuju samo oni bitovi ključa za koje je u odgovarajućim pozicijama maske upisana vrednost 1. Ovde je maska binarna reč koja određuje koji bitovi ključa se upoređuju sa sadržajima memorijskih lokacija.

12

Asocijativnimemorijski

element

x – signal selekcije lokacijey – signal selekcije bitas – signal stanja memorijskog elementak – ulazni bit ključam – ulazni bit maskep – rezultat poređenja ključa i stanja memorijskog elementa

Page 13: Osnovni pojmovi - smoochysarma.files.wordpress.com€¦ · Web viewvisoka poslovna Škola strukovnih studija-blace. seminarski rad iz arhitekture i organizacije raČunara. memorije

Slika 10 – Struktura asocijativne memorije

Sadržaj registra ključa upoređuje se sa sadržajem svih memorijskih lokacija u samo jednom memorijskom ciklusu. Za svaku memorijsku lokaciju postoji po jedan komparator čiji je izlaz jednak 1 ako postoji poklapanje, tj. ako memorijska reč ima iste bitove kao i definisani bitovi ključa. Sve takve lokacije označe se u registru indikatora poklapanja, koji ima po jedan bit za svaku memorijsku lokaciju sa vrednošću 1. Posle upoređivanja može se memorijskim lokacijama za koje postoji poklapanje pristupiti radi čitanja, pri čemu se sada asocijativna memorija tretira kao memorija sa neposrednim pristupom.

Keš-memorija

Za smanjenje vremena pristupa podacima i instrukcijama u operativnoj memoriji procesoru se dodaje keš-memorija (ultrabrza memorija) čija brzina odgovara brzini rada procesora. Keš-memorija je mala, ultrabrza poluprovodnička memorija sa neposrednim pristupom. U keš-memoriju se čuvaju podaci i instrukcije iz operativne memorije koje procesor trenutno koristi. Keš-memorija služi za usaglašavanje brzine procesora i operativne memorije koja je sporija od procesora za red veličine (oko 10 puta). Ona omogućava povećanje brzine obrade, jer se u njoj nalaze tekući podaci i tekuće instrukcije programa kojima procesor pristupa znatno brže, čime se povećava produktivnost rada procesora, odnosno vreme izvršenja programa. Cilj efikasnog memorijskog sistema je da efektivno vreme pristupa procesora podacima bude vrlo blisko vremenu pristupa keš-memoriji.

13

Memorijski medijum

Registar ključa

Registar maske

Prihvatni registar

Adresni registar

AME

AME

AME

AME

AME

AME

AME

AME

AME

...

...

.........

0

1

2n-1

Adresni

dekoder

Komparatori

Registar

indikatora

Page 14: Osnovni pojmovi - smoochysarma.files.wordpress.com€¦ · Web viewvisoka poslovna Škola strukovnih studija-blace. seminarski rad iz arhitekture i organizacije raČunara. memorije

Blok (n fizičkih reči)

Slika 11 – Princip korišćenja keš-memorije

Keš-memorija se koristi na sledeći način (slika 11). Operativna i keš-memorija su podeljene na jedinice koje se nazivaju blokovi. Blok (ponekad se naziva i linija) predstavlja skup od n sukcesivnih memorijskih lokacija koji se uvek kao celina prenosi između operativne i keš-memorije. To znači da se svi podaci ili instrukcije u nekom bloku istovremeno nalaze ili ne nalaze u keš-memoriji. Jedinica prenosa između centralnog procesora i keš-memorije je fizička reč. Jedinica prenosa između keš-memorije i operativne memorije je blok. Veličina bloka obično iznosi između 4 i 128 bajtova. Kapacitet keš-memorije je u opsegu od 1 do 256 kB. Broj blokova operativne memorije znatno je veći od broja blokova keš-memorije, tako da se u keš-memoriji u istom trenutku nalaze kopije samo malog broja blokova operativne memorije.

Kada centralni procesor generiše adresu memorijske lokacije, formira se upravljački signal za pristup keš-memoriji. Ukoliko se podatak sa traženom adresom nalazi u keš-memoriji, on se prenosi u procesor radi obrade ili se zamenjuje novom vrednošću iz procesora koja predstavlja rezultat obrade. Ukoliko u keš-memoriji nema blokova sa traženom adresom, aktivira se procedura kojom se iz keš-memorije jedan blok šalje u operativnu memoriju, a na njegovo mesto se iz operativne memorije poziva traženi blok koji se prenosi u keš-memoriju, a istovremeno se traženi podatak prenosi u operativnu memoriju.

Keš-memorije funkcionišu na bazi lokalnosti ponašanja kojom se karakteriše većina programa. Postoje tri principa koji uključuju lokalnost:

1. Prostorna lokalnost. – Ako je potreban pristup određenoj lokaciji u memoriji, postoji velika verovatnoća da će drugi pristupi biti toj ili susednim lokacijama za vreme trajanja izvršenja programa;

2. Vremenska lokalnost. – Ako je postojala sekvenca pristupa do n lokacija, postoji velika verovatnoća da će pozivi koji sleduju biti u toj sekvenci. Ova lokalnost dopunjuje se sa prostornom lokalnošću;

3. Uzastopnost. – Ako je bilo pristupa određenoj lokaciji c, verovatno je da će u sledećih nekoliko pristupa biti na lokaciji c+1. Uzastopnost je ograničeni tip prostorne lokalnosti. I može se razmatrati kao njen podskup.

Problemi korišćenja keš-memorija

Pri korišćenju keš-memorija treba rešiti sledeća četiri osnovna problema:1) smeštanje blokova – gde će u keš-memoriji biti smešten novi blok pročitan iz

operativne memorije;2) identifikacija bloka – kako će biti nađen blok koji se nalazi u keš-memoriji;3) zamena blokova – koji blok će biti zamenjen, ako se traženi blok ne nalazi u keš-

memoriji;4) strategija upisa – kako će se postupiti kod upisa novog podataka u keš-memoriju,

jer se tada modifikuje blok i postaje različit od odgovarajućeg bloka u operativnoj memoriji.

14

Centralniprocesor

Keš-memorija Operativna memorija

Prenosreči

Prenosblokova

Page 15: Osnovni pojmovi - smoochysarma.files.wordpress.com€¦ · Web viewvisoka poslovna Škola strukovnih studija-blace. seminarski rad iz arhitekture i organizacije raČunara. memorije

Najbolji način za smeštanje pročitanih blokova iz operativne memorije jeste tzv. asocijativno preslikavanje – svaki se blok može smestiti bilo gde u keš-memoriju. Međutim, u tom slučaju radi identifikacije blokova, pogodno je kao keš-memoriju koristiti asocijativnu memoriju u kojoj ključ predstavlja memorijsku adresu bloka a informacioni deo podatke iz operativne memorije. Za zamenu blokova posroji više strategija, ali se najčešće zamenjuje najranije korišćeni blok ili najduže prisutan blok. Kada se blok u keš-memoriji modifikuje upisom novog podatka iz procesora, postoje dva načina koji se koriste za ažuriranje operativne memorije: a) neposredni upis – istovremeno se podatak upisuje u keš-memoriju i u operativnu memoriju, b) posredni upis – podatak se upisuje samo u blok keš-memorije, a modifikovani blok se vraća u operativnu memoriju tek kada se zamenjuje drugim blokom. Međutim, ovde je potrebno za svaki blok uvesti po jedan bit koji pamti da li je blok modifikovan ili nije.

Osnovni parametar po kome se meri efikasnost keš-memorije naziva se faktor pogotka h. To je verovatnoća da se sadržaj memorijske lokacije koju adresira procesor, tj. traženi podatak, nalazi u keš-memoriji. Vekičina 1-h naziva se faktor promašaja. Faktor promašaja meri penale zbog keš promašaja, jer procesor prekida aktivnost kada se ustanovi keš promašaj. Faktor pogotka je uvek manji od 1, a u praksi se ostvaruju vrednosti veće od 0,9. Ostali važni parametri keš-memorija su: vreme pristupa, zadržavanje usled promašaja, zadržavanje usled ažuriranja operativne memorije i dr.

Dvonivovske i podeljene keš-memorije

Kada su keš-memorije prvobitno uvedene, običan sistem je imao jednu keš-memoriju. Kasnije je korišćenje više keš-memorija postala norma. Dva aspekta ovog problema odnose se na broj nivoa keš-memorije i korišćenje jedinstvene ili podeljene keš memorije.

Kako se gustina logike na čipu povećava, postaje moguće imati keš-memoriju na istom čipu sa procesorom. U poređenju sa keš-memorijom kojom se pristupa preko spoljne magistrale, keš-memorija na čipu redukuje aktivnost procesora na spoljnoj magistrali i, prema tome, ubrzava vreme izvršenja i povećava ukupne performanse sistema. Kada se zahtevana instrukcija ili podatak nalazi u keš-memoriji, pristup magistrali je eliminisan.

Uključivanje keš-memorije na čipu ostavlja otvoreno pitanje da li je keš-memorija van čipa, ili spoljna keš-memorija, potrebna. Odgovor je obično da, i najnoviji procesori uključuju i keš-memoriju na čipu i spoljnu keš-memoriju. Rezultujuća organizacija je poznata kao dvonivovska keš-memorija, gde se interna keš-memorija označava kao nivo 1 (L1) a spoljna keš-memorija kao nivo 2 (L2) (slika 12). Korišćenje keš-memorije drugog nivoa poboljšava performanse.

Slika 12 – Dvonivovska keš-memorija

15

Procesorskičip Operativna

memorijaL2kešL1

keš

Page 16: Osnovni pojmovi - smoochysarma.files.wordpress.com€¦ · Web viewvisoka poslovna Škola strukovnih studija-blace. seminarski rad iz arhitekture i organizacije raČunara. memorije

Osim toga danas je postala opšteprihvaćena podela keš-memorije nivoa L1 na dve: jedne namenjene za instrukcije (I keš) i druge namenjene za podatke (D keš), posebno u tzv.superskalarnim procesorima. Ključna prednost projektovanja podeljene keš-memorije je što se eliminiše takmičenje za keš-memoriju između procesora instrukcija i izvršne jedinice. Naime, podeljene keš memorije za instrukcije i podatke omogućavaju da se značajno poveća propusni opseg keš-memorije, potencijalno udvostručavajući mogućnosti pristupa.

Keš-memorija diska

Operativna memorija savremenih računara odgovara na zahteve u desetinama nanosekundi, a disk odgovara na zahteve u desetinama milisekundi, što znači da je razlika u brzini oko milion puta. Kako keš-memorije značajno poboljšavaju vreme pristupa operativnoj memoriji, isti se koncept uspešno koristi i za diskove, značajno smanjujući saobraćaj sa diskom i prosečno vreme pristupa na disku.

Keš-memorija diska (keš-bafer diska) ima sličnu ulogu kao keš-memorija u sistemmu keš-memorija – glavna memorija (slika 13). To je memorijski bafer koji pamti poslednje korišćene delove adresnog prostora diska, smanjujući tako zahtevani broj pristupa i efektivno vreme pristupa disku, odnosno povećavajući efektivnu brzinu diska. Procesor uvek pristupa podacima predhodno smeštenim u keš-memoriju diska kad god mu zatrebaju.

Keš-memorija diska je veličine od jednog do vise megabajta. Jedinica prenosa između diska i keš-memorije diska obično sadrži jednu ili više staza diska.

Keš-memorija diska može se pridružiti ulazno-izlaznom uređaju, kontroleru tog uređaja ili operativnoj memoriji procesora. Ispitivanja su pokazala da je efikasnost keš-memorije diska najbolja kada je ona uključena kao deo operativne memorije.

Slika 13 – Keš-memorija diska

Virtuelna memorija

U hijerarhijskom memorijskom sistemu program i podaci se najpre smeštaju na spoljnu memoriju. Fragmenti programa i podataka prenose se u operativnu memoriju samo onda kada su potrebni centralnom procesoru, jer je kapacitet operativne memorije znatno manji od kapaciteta spoljne memorije. Ako bi se operativna memorija zamenila spoljnom memorijom dobila bi se nezadovoljavajuća brzina pristupa, zbog spore spoljne memorije.

Nedovoljan kapacitet operativne memorije može se nadoknaditi specifičnim načinom sprezanja operativne memorije i spoljne memorije koji se naziva virtuelna memorija. Vituelna memorija omogućava da korisnik piše programe kao da poseduje adresni prostor jednak ukupnom kapacitetu spoljne memorije, pri čemu je brzina pristupa približna brzini operativne memorije. Uvođenje virtuelne memorije zasniva se na činjenici da procesor često u obradi koristi podatke smeštene u sukcesivne memorijske lokacije.

16

Operativnamemorija

Keš-memorijadiska . . .

Page 17: Osnovni pojmovi - smoochysarma.files.wordpress.com€¦ · Web viewvisoka poslovna Škola strukovnih studija-blace. seminarski rad iz arhitekture i organizacije raČunara. memorije

Rešenje problema većeg kapaciteta, a zadovoljavajuće brzina memorije postiže se zadovoljavanjem operativne memorije koja se koristi tako što se u nju iz spoljne memorije prenose aktuelni podaci i instrukcije. Kada neki deo operativne memorije postane neaktuelan, on se vraća na spoljnu memoriju i zamenjuje se novim aktuelnim podacima

Memorijske stranice

Ceo adresni prostor spoljne memorije podeljen je na blokove sastavljene od fiksnog broja lokacija koji se nazivaju memorijske stranice ili kratko stranice. Stranica može sadržati od 256 do 1024 i više memorijskih reči. Primarna (operativna) memorija deli se na grupe sukcesivnih lokacija istog obima koje se takođe nazivaju stranice. Delovi programa i podataka prenose se sa spoljne memorije, ili obrnuto, uvek u obimu jedne stranice. Odnos stranica spoljne i operativne memorije prikazan je na slici 14. Pri korišćenju virtuelne memorije postoji više vrsta adresa. Adresa koju koristi programer je virtuelna adresa ili sekundarna adresa. Skup virtuelnih adresa obrazuje virtuelni adresni prostor. Adresa operativne memorije naziva se fizička adresa ili primarna adresa. Skup adresa operativne memorije obrazuje primarni adresni prostor.

Slika 14 – Odnos spoljne i operativne memorije

Princip korišćenja virtuelne memorije je sledeći. Da bi počelo izvršenje programa jedna ili nekoliko stranica se prenose u operativnu memoriju. Program se izvršava korišćenjem operativne memorije sve dok centralni procesor ne pokuša obraćanje instrukciji ili podatku koji se još nalazi na spoljnoj memoriji. Tada se pozivaju programi sistema za upravljanje virtuelnom memorijom koji treba da obezbede efikasno korišćenje operativne memorije. Sistem za upravljanje virtuelnom memorijom najčešće se realizuje kombinacijom hardvera i softvera. On traba da reši sledeće probleme:

prevođenje virtuelne adrese – virtuelna adresa koju koristi procesor prevodi se u adresu primarne memorije;

smenjivanje stranica – izbor stranica koju treba udaljiti iz primarne memorije da bi se oslobodilo mesto za novu stranicu.

17

Program 1Podaci 11Podaci 12

Program 2Podaci 21

Program 1

Podaci 11

Spoljnamemorija Operativna

memorija

Page 18: Osnovni pojmovi - smoochysarma.files.wordpress.com€¦ · Web viewvisoka poslovna Škola strukovnih studija-blace. seminarski rad iz arhitekture i organizacije raČunara. memorije

Prevođenje virtuelnih adresa

Na slici 15a prikazani su formati virtuelne adrese av i primarne adrese ap. Pri tome ac

predstavlja adresu lokacije u okviru stranice (tj.pomeraj) i ona je ista za virtuelnu i primarnu adresu. Svaka virtuelna adresa treba da se prevede u adresu primarne memorije gde će biti smeštena stranica pozvana sa spoljne memorije. Kako se obično ta stranica može nalaziti bilo gde u primarnoj memoriji, sistem za upravljanje vodi evidenciju gde je koja sekundarna stranica smeštena u primarnoj memoriji. Jedan od načina čuvanja te informacije je tzv.stranična tablica, koja sadrži kao ključ vrednost adrese virtuelne stranice, a informacioni deo vrednost adrese primarne stranice. Osim toga informacionom delu se mogu dodati binarne pozicije za još neke informacije koje će sistem za upravljanje virtuelnom memorijom koristiti za svoje potrebe.

Slika 15 – preslikavanje virtuelne u fizičku adresu

Na slici 15b prikazan je način transformacije virtuelne u primarnu adresu. Kao ulaz u tablicu preslikavanja služi adresa virtuelne stranice, a na izlazu se dobija adresa primarne strance. Umesto stranične tablice mnogo je bolje koristiti asocijativnu memoriju, u koliko je to i ekonomski prihvatljivo.

Zamena stranica

Stranice je potrebno zameniti ako se stranica sa virtuelnom adresom koju zahteva procesor ne nalazi u primarnoj memoriji. Pri zameni stranica u sekundarnu (spoljnu) memoriju se vraća stranica koja je prema nekom kriterijumu najmanje aktuelna, a u primarnu memoriju se na njeno mesto prenosi tražena stranica.

18

avs ac

ac

ac

acaps

avs

ap

av

ap

av

Tablica preslikavajna virtuelnih adresa

a) Formati virtuelne i primarne adrese

b) Prevođenje virtuelne u primarnu adresu

Page 19: Osnovni pojmovi - smoochysarma.files.wordpress.com€¦ · Web viewvisoka poslovna Škola strukovnih studija-blace. seminarski rad iz arhitekture i organizacije raČunara. memorije

Slično kao kod keš-memorija, za ocenuefikasnosti korišćenja virtuelne memorije uvode se faktor pogotka i faktor promašaja. Faktor pogotka predstavlja verovatnoću da se tražena stranica nalazi u primarnoj memoriji. Faktor promašaja predstavlja verovatnoću da se tražena stranica ne nalazi u primarnoj memoriji. Faktor pogotka zavisi od nekoliko parametara, a pre svega od:

kapaciteta primarne memorije, veličine stranice, statističkih odlika korišćenih podataka i instrukcija, algoritma zamene stranica.

Za zamenu stranica može se koristiti nekoliko različitih algoritama, a najčešći su sledeći:1) redosled unošenja stranica – smenjuje se stranica koja je prva uneta, tj. stranica

koja se najduže nalazila u primarnoj memoriji;2) najranije korišćena stranica – smenjuje se stranica koja je najranije korišćena, tj.

stranica koja je korišćena pre svih ostalih stranica koje se nalaze u primarnoj memoriji;

3) najređe korišćena stranica – smenjuje se stranica koja je najređe korišćena, tj. najmanje bila aktivna.

19

Page 20: Osnovni pojmovi - smoochysarma.files.wordpress.com€¦ · Web viewvisoka poslovna Škola strukovnih studija-blace. seminarski rad iz arhitekture i organizacije raČunara. memorije

20