1. Osnove  |  2. Elementi DRS  |  3. DRS  |  4. Windows  |  5. Unix  |  6. Programiranje  |  7. Informatika u praksi  |  8. Rječnik  |  9. Prilozi  |  10. Literatura  |  11. Spone  |  12. Indeks

3.3.5. Radna memorija  NATRAG  DALJE  POČETAK


Memorija je sklopovlje za pamćenje podataka, sastavljena od mnoštva lokacija u koje se pohranjuje određeni broj bit-a. Element memorije koji pamti podatak od jednog bit-a naziva se MEMORIJSKI ELEMENT ili MEMORIJSKA ČELIJA.

Pristup svakoj memorijskoj ćeliji izravan je od strane mikroprocesora te se takva memorija naziva RAM (Random Access Memory - memorija s izravnim pristupom) i u njima se obavlja ČITANJE i UPISIVANJE podataka.

Prvobitno su se memorije izrađivale uglavnom od magnetskih jezgrica, malih prstena veličine desetinke milimetra, koje su podatak pamtile na osnovu smjera magnetiziranosti prstena. Današnja poluvodička tehnologija u potpunosti je potisnula ovakve vrste memorije.

U poluvodičkoj tehnologiji razvijeno je više vrsta memorije, koja se po funkciji i tehnologiji izrade dijeli na:


   a.) RAM - služi za upis i čitanje tekućih podataka i programa
             i može se vrlo lako i brzo mijenjati njen sadržaj.
             Sadržaj se gubi (zaboravlja) pri prestanku napajanja
             računala. Često se označavaju s R/W (read/write -
             čita/piše). Izrađuju se kao STATIČKE (SRAM)
             i DINAMIČKE (DRAM).
   b.) ROM - omogućavaju samo čitanje (R/O - read only) već tvornički
             upisanih podataka. Kako nakon izrade promjene sadržaja
             više nisu moguće, te zahtijevaju besprijekorno učitane
             sadržaje, vrlo su skupe i koriste se samo u masovnoj
             proizvodnji. Obično sadrže ASCII kod i instrukcije
             nekog JEZIČKOG PROCESORA ili program koji omogućava
             upis OPERATIVNOG SUSTAVA u RAM po uključivanju
             računala - BOOTSTRAP program.
             Postoje izvedbe računala kojima je cijeli ili dio
             operativnog sustava upisan u ROM. Veličina iznosi od
             nekoliko KB do više stotina KB.
   c.) PROM - su memorije slične ROM-u. Razlika je u tome što se
              njihov sadržaj ne formira tijekom tehnološkog 
              postupka izrade, već se to radi pomoću posebnog
              uređaja - 'punioca'. Jednom upisani sadržaj ne može
              se više mijenjati ni brisati. Tehnološki se izvode
              prekidanjem veza u memoriji taljenjem ili elektro-
              kemijskim postupkom.
   d.) EPROM - su trajne memorije koje se mogu više puta puniti
               i brisati. Punjenje  se vrši u za tu svrhu 
               izrađenim uređajima a brisanje pomoću izlaganja
               ultraljubičastom ili rendgenskom zračenju. Dakle,
               njihov sadržaj može se REPROGRAMIRATI.
               Vrlo su rašireni za izradu BIOS-a računala.
   e.) EEROM - imaju ista svojstva kao eprom, ali je brisanje
               električnim putem. Koriste se za upis promjenjivih
               postavki sustava kao datum, vrijeme, vrstu diska i
               diskete i drugo.
   f.) EAROM - sadržaj im se mijenja električnim putem, ali se
               reprogramiranje može izvršiti samo djelomično.
               Proces reprogramiranja traje dosta dugo.
   e.) FLASHROM - memorije koje se mogu reprogramirati za to
                  posebno napisanim programom. Danas se vrlo često
                  koriste kako bi se omogućilo da se uređaje ugradi
                  poboljšana verzija programske potpore (firmware)
                  npr. za BIOS, modeme, CD, DVD i slično.

Dakle, radna memorija računala dijeli se u dvije osnovne grupe: ROM i RAM (slika 3.3.9). Po veličini ROM je podosta manji od RAM i nije raspoloživ korisniku već samo sustavu, te se u prikazu veličine memorije podataka ROM-a obično ne navodi.

 RAM
Slika* 3.3.9 Podijela radne memorije računala.

Procesor mora moći adresirati cjelokupni adresni prostor memorije te očitava sadržaje već prema potrebi. Bootstrap i BIOS očitavaju se pri uključivanju računala. Bootstrap ima zadaću pronalaženja i povezivanja uređaja u računalu na osnovu podataka u BIOS-u i učitavanja operativnog sustava. Neke verzije računala imale su jezgru OS upisanu u ROM (Commodore Amiga) ili je cijeli OS upisan u ROM (Sinclair ZX Spectrum), a najčešće se očitava prvi sektor diska da se pronađe početna adresa programa za učitavanje operativnog sustava s tvrdog diska u RAM (LOADER). RAM je u suštini dio memorije u koji se tijekom korištenja računala učitava s tvrdog diska operativni sustav i potrebit program za rad a rezultati rada moraju se, kako se ne bi bespovratno izgubili, pohraniti u STALNU MEMORIJU - u pravilu tvrdi disk.

Veličina RAM-a ovisi o konstrukciji i namijeni računala te može iznositi od nekoliko desetaka KB do veličine od nekoliko GB. Radna memorija je sklop koji je u začecima računalne tehnologije predstavljao najsloženiji tehnološki izazov i po cijeni koštanja ponekad premašivao iznos koji su tvorili svi preostali sklopovi zajedno.

Razlika u izvedbi SRAM i DRAM je značajna. SRAM traži puno više elemenata te je u procesu izrade skuplja, ali je u odnosu na DRAM puno brža ali i fizički veća. Stoga se koristi kao brza privremena radna memorija (cache) relativno malih kapaciteta, SDRAM se često naziva međumemorija jer je međuveza između procesora i glavne memorije. DRAM zahtijeva sklopove za osvježavanje jer radi po načelu očuvanja naboja, sporiji je ali se zato u puno manjem volumenu može smjestiti puno više memorijskih elemenata uz puno manju cijenu izrade. Stoga se DRAM koristi kao glavna radna memorija računala. Glede povećanja performansi razvoj DRAM memorija ide u pravcu povećanja brzine pristupa tako da se udvostruči ili utrostruči takt čitanja ili upisivanja podataka u odnosu na radni takt sabirnice; DDR (Double Data Rate) tehnologija.

O organizaciji adresiranja memorijskih lokacija radne memorije te ovisiti će brzina pristupa podacima te brzina sustava u cjelini. Nadalje navedeni primjeri su osnovni tipovi organizacije memorije, ali se njihova osnovna načela koriste kod drugih vrsta organiziranja memorije kojima je odlika brži dohvat podataka.

Na slici 3.3.10 prikazana je DVODIMENZIONALNA organizacija radne memorije računala.


 Dekoder
Slika 3.3.10 Dvodimenzionalna organizacija memorije.

Dimenzije memorije su adresa lokacije i duljina lokacije. Prema primjeru na slici od 4 bit-ne adresne sabirnice dobiveno je 16 različitih adresnih vodova od kojih svaki poslužuje 1 lokaciju s 4 memorijske ćelije. Za adresiranje se koristi samo jedan adresni dekoder i jedinstvena adresa memorijske lokacije.

Efikasniji način organizacije je kada se adrese multipleksiraju, odnosno preko iste adresne sabirnice jedanput se daje adresa dekoderu redaka (R) a drugi put dekoderu stupaca (S) kao što je prikazano na slici 3.3.11.

Dimenzije memorije su adresa retka lokacije, adresa stupca lokacije i lokacija. Adresni vod dekodera retka obilazi sve ćelije koje su u tom retku (16x4). Isto vrijedi za adresni vod dekodera stupca. Sabirnica podataka obilazi sve lokacije slijedno iz retka u redak. Multipleksiranjem adresne sabirnice, odnosno pošiljanjem prvo adrese retka, te potom adrese stupca može se ukupno adresirati 256 lokacija od 4 ćelije.

Umjesto jednog dekodera adrese koriste se dva s ukupno 32 adresna voda. Za adresiranje 256 lokacija u dvodimenzionalnoj organizaciji trebao bi jedan dekoder s 256 izlaza. Dakle, multipleksiranjem se ne postiže samo veći broj lokacija već je i ukupni broj vodova prema memorijskoj mreži znatno manji, što opet pojednostavnjuje tehnološki proces.


 Dekoderi
Slika 3.3.11 Trodimenzionalna organizacija memorije.

Dio radne memorije organizira se u složaju (STACK). Složaj najčešće koriste komande i naredbe operativnog sustava, na primjer kod sortiranja, te aplikacije za svoje interne potrebe za čuvanje adresa memorijskih lokacija na kojima se je istupilo iz izvršavanja glavnog programa. Temeljem tih podataka moguće je ponovno nastavljanja glavnog programa po prestanku izvršavanja dodatne aktivnosti. Stoga je važno u parametrima sustava ispravno podesiti veličinu složaja jer će u protivnom doći do raspada sustava.

Memorija se organizira u složaj tako da se lokacije međusobno povežu jedna 'iznad' druge i omogući posmak zapisanih podataka duž složaja iz lokacije u lokaciju.


 Stack
Slika 3.3.12 Organizacija i posmak podataka u memoriji složaja.

Upis novog podataka automatski znači potiskivanje prethodnog na jednu lokaciju dalje. Da bi se došlo do nekog podatka 'duboko' u složaju treba cijeli složaj isprazniti ili mu dodati adresni dekoder početne adrese da se označi lokacija složaja koja je aktivna, odnosno pomiče se adresa vrha složaja.

Idealni složaj nema kraja. Načelo organizacije složaja slično je dvodimenzionalnoj organizaciji, uz razliku da dvodimenzionalna organizacija ne koristi posmak podataka iz lokacije u lokaciju.

Na slici 3.3.13 prikazano je načelo korištenja podataka smještenih u memorijske lokacije u složaju s pomičnom adresom vrha složaja.


 Slozaj
Slika 3.3.13 Složaj s pomičnim vrhom.

U registru pokazivača (POINTER) aktivne adrese čuva se podatak temeljem kojeg se u dekoderu označava vod prema lokaciji koja će predstavljati aktivni vrh složaja. Ovakva organizacija složaja puno je učinkovitija od organizacije 'punjenja i pražnjenja' jer se promjenom aktivne adrese složaja može pristupiti i podacima ispod 'vrha'.

Po načelima složaja nije moguće organizirati ROM memoriju. Ako se pak složaj zatvori u krug, pristup podacima upisanim u složaj ostvaruje se njihovom rotacijom. Tada je riječ o KRUŽNOJ organizaciji memorije.

Sam NAČIN ADRESIRANJA tijekom izvršavanja programa usko je povezan s instrukcijom i može se realizirati prema jednom od slijedećih načina:


  1. NEPOSREDNO - kada odmah iza lokacije komande slijede
                  bajt-ovi izvršavanja neke programske zadaće.
  2. DIREKTNO - po lokaciji komande slijedi adresa na kojoj
                treba započeti izvršavanje programske zadaće.
  3. INDIREKTNO - po lokaciji komande slijedi adresa na kojoj
                  je upisana početna adresa zadaće koja se ima
                  izvršiti. U suštini to je direktno adresiranje
                  u dva koraka.
  4. RELATIVNO - kada se iza komande ne nalazi stvarna adresa
                 početka zadaće, već pomak prema toj adresi u 
                 odnosu na sadržaj programskog brojila koje čuva
                 adresu komande ili sadržaj jednog od registara.
  5. INDEKSNO - kada se slično relativnom u indeksnim registrima
                (ako ih ima) čuva adresa svakog izvršenog pomaka
                te se novi pomak računa u odnosu na novu adresu.

To nisu svi mogući načini adresiranja. Navedena podjela predstavlja najosnovnije s kojima se korisnik računala može susresti bilo da se bavi podešavanjem parametara računala i dodatnih sklopova ili izradom same programske potpore.

Radna memorija u osnovi služi za korištenje programske potpore koja se čuva na nekom od trajnih memorijskih resursa samog računala ili raspoloživih resursa računalne mreže. U radnoj memoriji vršiti će se prvenstveno obrada podataka temeljem izvršavanje programske zadaće, a rezultati iste pohranjivati će se u trajnu memoriju sukcesivno tijekom obavljanja zadaće (neko mjerenje na primjer) ili će se pohraniti po izvršavanju cjelokupne zadaće (na primjer zasjenjivanje slike). Dakle, od veličine i složenosti programske potpore i očekivanih rezultata ovisiti će koliki radni i trajni memorijski resursi treba da budu na raspolaganju u računalu. No opće pravilo korisnika računalne tehnologije je: memorije nikad dosta.




SAŽETAK:

Tehnološki razvoj omogućio je uporabu računala za vrlo složene zadaće. Tako na primjer obrada fotografija bila je gotovo nezamisliva na PC računalu u njegovim prvim inačicama, a programska potpora koja se je razvijala bila je gotovo nedjelotvorna za profesionalnu uporabu. Porastom moći računala razvijala se je i programska potpora te je danas mogućno uz pomoć računala izrađivati i animirane sekvence. Ne ulazeći u detalje kvalitete slike, sigurno je da su za to potrebita vrlo brza računala s velikom procesorskom moći koja izvršavaju enormno mnogo instrukcija u jedinici vremena te dostatni memorijski resursi kako bi se sva sila sličica obradila.

Radna memorija u tom smislu još uvijek je nedovoljno brza te se koriste raznolike organizacije memorije, na primjer EDO (Extended Data Out) koja nakon adresiranja redka adresira lokacije stupca jednu za drugom za istu lokaciju retka tako da u suštini smanjuje broj adresiranja redaka.

Osim navedenog brza SRAM memorije iskorištava se za međumemoriju (CACHE) između procesora i DRAM (slika 3.3.14).


 Cache
Slika 3.3.14 Organizacija radne memorije brzih računalnih sustava.

Upravljač međumemorije trudi se da u međumemoriji zadrži što više podataka koje procesor potražuje od glavne memorije. Ako procesor ne pronađe podataka u brzoj međumemoriji upravljač međumemorije dopušta mu dohvat podatka u radnu memoriji i prosljeđuje mu ga i ujedno pohranjuje u međumemoriju kao i okolni sadržaj podatka kako bi se naredni podatak našao 'pri ruci' mikroprocesoru u bržoj međumemoriji. Kako bi se znalo gdje se podatak nalazi u međumemoriji u TAG memoriju upisuje se njegova adresa. TAG služi kao kazalo za međumemoriju.

Sama međumemorija izvodi se kao integrirani dio mikroprocesora ili kao nešto sporija ali veća međumemorija na matičnoj ploči. Naravno obe su višestruko brže od DRAM.

 NATRAG
 Tražila
 DALJE

 Početak
 KAZALO  Informatička abeceda