aor g6 memorijski sistem 1

22
6/8/2011 1 6. MEMORIJSKI SISTEM Komponente memorijskog sistema Dr Nebojša Milenković Elektronski fakultet u Nišu Komponente memorijskog sistema Memorijski sistem računara čine: registarska memorija, keš memorije, glavna memorija, i sekundarna memorija. N. Milenković, Arhitektura i organizacija računara 2011 OSOBINE I PARAMETRI MEMORIJE Memorije koje se koriste u računarima sačinjava memorijski medijum, sposoban da ograničeno ili neograničeno dugo čuva prethodno unete podatke, i • upravljački sistem memorije, koji omogućuje upisivanje i čitanje podataka iz memorije po nalozima procesora ili drugih elemenata računara. N. Milenković, Arhitektura i organizacija računara 2011 Memorijske lokacije i njihove adrese Memorija je fizički ili logički izdeljena na grupe bitova , čije su veličine određene dužinama osnovnih tipova podataka u arhitekturi računara, ili njihovim celobrojnim umnošcima ili njihovim celobrojnim umnošcima. Takve grupe bitova memorije, kojima se pristupa odjednom, zvaćemo memorijske lokacije. Svaka memorijska lokacija ima jedinstvenu adresu, koja označava njeno mesto (poziciju) u okviru memorijskog medijuma. N. Milenković, Arhitektura i organizacija računara 2011 Načini pristupa memoriji Prema tome na osnovu čega se pristupa podatku u memoriji podela na: adresni pristup, i asocijativni pristup. asocijativni pristup. Ograničenja u pogledu načina i redosleda pristupa memoriji: proizvoljan (slučajni) pristup, sekvencijalni pristup, i direktan pristup. N. Milenković, Arhitektura i organizacija računara 2011 Stalne i nestalne memorije •Očuvanje podataka prisutnih u memoriji može zahtevati stalno napajanje električnom energijom, inače se sadržaj memorije gubi. Takve memorije nazivaju se nestalne memorije (engl volatile memories) (engl. volatile memories). Postoje i memorije koje posle upisivanja podataka u njih zadržavaju te podatke i po ukidanju napajanja električnom energijom. Takve memorije nazivaju se stalne memorije (engl. nonvolatile memories). N. Milenković, Arhitektura i organizacija računara 2011

Upload: stevan-mihajlovic

Post on 28-Dec-2015

24 views

Category:

Documents


0 download

DESCRIPTION

Skripta

TRANSCRIPT

Page 1: AOR G6 Memorijski Sistem 1

6/8/2011

1

6. MEMORIJSKI SISTEM

Komponente memorijskog sistema

Dr Nebojša MilenkovićElektronski fakultet u Nišu

Komponente memorijskog sistema

Memorijski sistem računara čine:• registarska memorija,• keš memorije,• glavna memorija, i• sekundarna memorija.

N. Milenković, Arhitektura i organizacija računara 2011

OSOBINE I PARAMETRI MEMORIJE

Memorije koje se koriste u računarima sačinjava

• memorijski medijum, sposoban da ograničeno ili neograničeno dugo čuva g g gprethodno unete podatke, i

• upravljački sistem memorije, koji omogućuje upisivanje i čitanje podataka iz memorije po nalozima procesora ili drugih elemenata računara.

N. Milenković, Arhitektura i organizacija računara 2011

Memorijske lokacije i njihove adrese

• Memorija je fizički ili logički izdeljena na grupe bitova , čije su veličine određene dužinama osnovnih tipova podataka u arhitekturi računara, ili njihovim celobrojnim umnošcimaili njihovim celobrojnim umnošcima.

• Takve grupe bitova memorije, kojima se pristupa odjednom, zvaćemo memorijske lokacije.

• Svaka memorijska lokacija ima jedinstvenu adresu, koja označava njeno mesto (poziciju) u okviru memorijskog medijuma.

N. Milenković, Arhitektura i organizacija računara 2011

Načini pristupa memoriji

Prema tome na osnovu čega se pristupa podatku u memoriji podela na:

• adresni pristup, i• asocijativni pristup.asocijativni pristup.Ograničenja u pogledu načina i redosleda pristupa

memoriji:• proizvoljan (slučajni) pristup,• sekvencijalni pristup, i• direktan pristup.

N. Milenković, Arhitektura i organizacija računara 2011

Stalne i nestalne memorije

• Očuvanje podataka prisutnih u memoriji može zahtevati stalno napajanje električnom energijom, inače se sadržaj memorije gubi.

• Takve memorije nazivaju se nestalne memorije(engl volatile memories)(engl. volatile memories).

• Postoje i memorije koje posle upisivanja podataka u njih zadržavaju te podatke i po ukidanju napajanja električnom energijom. Takve memorije nazivaju se stalne memorije(engl. nonvolatile memories).

N. Milenković, Arhitektura i organizacija računara 2011

Page 2: AOR G6 Memorijski Sistem 1

6/8/2011

2

Kapacitet i vreme pristupa

• Kapacitet memorije meri se količinom podataka koje memorija može da prihvati i čuva. Izražava se u kilobajtima (KB), megabajtima (MB) ili gigabajtima (GB).

• Vreme pristupa memorije (označava se sa t )• Vreme pristupa memorije (označava se sa tA ) definiše se kao vremenski interval od prispeća zahteva za čitanje memorije do trenutka kada taj podatak postane raspoloživ na izlazima podataka memorije.

• Pri zahtevu za upis podatka kraj ovog intervala određen je završetkom upisa.

N. Milenković, Arhitektura i organizacija računara 2011

Vreme ciklusa

• Umesto termina “vreme pristupa memorije” često se koristi i termin latencija memorije.

• Vreme ciklusa memorije (označava se sa• Vreme ciklusa memorije (označava se sa tC ) definiše se kao najkraća perioda sa kojom memorija može uspešno prihvatati uzastopna obraćanja. Navodi se samo za memorije sa proizvoljnim pristupom.

N. Milenković, Arhitektura i organizacija računara 2011

Propusnost memorije

• Brzina sa kojom se podaci prenose u memoriju ili iz memorije naziva se propusnost memorije, označimo je sa D.

• Ona predstavlja odnos količine prenetih podataka i vremenskog intervala u kome se prenos obavlja Najčešće se izražava u MB/secprenos obavlja. Najčešće se izražava u MB/sec.

• Ako memorija podržava pristup blokovima podataka dužine L bajtova, a vreme pristupa i propusnost memorije su tA i D respektivno, onda je za pribavljanje takvog bloka podataka iz memorije potrebno vreme TB

TB = tA + L/ D

N. Milenković, Arhitektura i organizacija računara 2011

Latencija i propusnost memorije

Adresa vrste

Adresakolone

PodatakPodatak Podatak Podatak Podatak

Adresa

Latencija ovog pristupa

Propusnost u ovom intervalu(Broj prenetih bajtova/vremenski interval)

• Vreme pristupa (latencija) i propusnost memorije na primeru dinamičke RAM memorije

N. Milenković, Arhitektura i organizacija računara 2011

Još neki parametri memorije• Snaga disipacije predstavlja snagu koju zahteva

memorija za svoj rad. Snaga disipacije navodi se za operativni režim i za režim mirovanja (engl. standby).

• Specifična cena memorije izražava se odnosom cene memorije i njenog kapaciteta. Obično se iskazuje u dolarima po MB (za poluprovodničke memorije) ili dolarima po GB (za diskove i trake).

• Pouzdanost memorije meri se srednjim vremenom između otkaza (engl. mean time between failures, skr. MTBF).

N. Milenković, Arhitektura i organizacija računara 2011

DINAMIČKE RAM (DRAM) MEMORIJE

• Vladajuća tehnologija u gradnji glavnih memorija u pedesetim pa do početka sedamdesetih godina prošlog veka bila je tehnologija memorija sa magnetnim jezgrima.

• Dr Robert Dennard istraživač u IBM u• Dr. Robert Dennard, istraživač u IBM-u, patentirao je 1968. godine dinamičku RAM memoriju sa jednim MOS tranzistorom.

• Intel je 1970. godine počeo proizvodnju prvog komercijalnog DRAM čipa sa oznakom 1103, kapaciteta 1 Kbita.

N. Milenković, Arhitektura i organizacija računara 2011

Page 3: AOR G6 Memorijski Sistem 1

6/8/2011

3

Memorijska ćelija DRAM-a

• Dinamička RAM memorija (skr. DRAM) je poluprovodnička memorija koja kao jednobitnu memorijsku ćeliju koristi par MOS tranzistor-kondenzator (parazitna kapacitivnost između drain-a i source-a)drain a i source a).

• Informacija se pamti u vidu naelektrisanja kondenzatora, kojim je on napunjen pri upisu podatka.

• Memorija je dinamička zato što se naelektrisanje kondenzatora periodično mora obnavljati, inače bi došlo do gubitka upisanog podatka.

N. Milenković, Arhitektura i organizacija računara 2011

Organizacija konvencionalne DRAM memorije

Baferiulaza-izlaza podataka

Dekoder kolone

Bit linije

Sens poja~ava~i

Blok upravljanjai osve`avanja

Podatak

WEOE

RASCS

Bafer adrese kolone

Bafer adrese vrste

Poljememorijskih }elija

Bit linijaPrekida~ki element

Memorijski element (kondenzator)

Linija re~i

Linije re~

i (vrste)

Dek

oder v

rste

jCAS

Adresa

N. Milenković, Arhitektura i organizacija računara 2011

Sens pojačavači

• Neka polje memorijskih ćelija ima N vrsta i W kolona. Pri pristupu DRAM memoriji, vrsta se adresira posredstvom dekodera vrste, a kolona posredstvom dekodera kolone.

• Sadržaji svih memorijskih ćelija u adresiranoj• Sadržaji svih memorijskih ćelija u adresiranoj vrsti prenose se do sens pojačavača, kojih ima po jedan za svaku kolonu.

• Sens pojačavač (engl. sense amplifier) na osnovu napona na kondenzatoru memorijske ćelije određuje bit podatka u njoj.

N. Milenković, Arhitektura i organizacija računara 2011

Sinhronizacioni signali RAS i CAS

• Pristup memoriji obavlja se u dva koraka: najpre se pristupa vrsti i pročita sadržaj cele vrste (za vrstu se koristi i termin stranica), a zatim se pristupa koloni koja sadrži adresirani podatak.

• Ovi pristupi vremenski se razdvajaju• Ovi pristupi vremenski se razdvajaju sinhronizacionim signalima RAS (Row Address Strobe) i CAS (Column Address Strobe).

• Obzirom na ovakav dvokoračni pristup memoriji i nastojanje da se smanji proizvodna cena DRAM čipova, broj adresnih ulaza određen je dužinom adrese vrste ili kolone (većom od njih).

N. Milenković, Arhitektura i organizacija računara 2011

Ostali upravljački signali

• Kada je na adresnim ulazima prisutna adresa vrste aktivira se signal RAS, a kada je prisutna adresa kolone aktivira se signal CAS.

• Aktiviranjem upravljačkog signala CS bira se j p j g gDRAM čip.

• Pri pristupu memoriji, aktiviranjem signala WEnalaže se upis, inače sledi čitanje.

• Aktiviranjem signala OE daje se dozvola izlaza pročitanog podatka.

N. Milenković, Arhitektura i organizacija računara 2011

Faze pristupa memoriji

• Svi pristupi DRAM memoriji imaju bar tri zajedničke faze kroz koje prolazi polje memorijskih ćelija.

• Te faze su pretpunjenje (engl. precharge), pristup vrsti i pristup koloni.p p p p

• U pretpunjenju deaktiviraju se sve linije reči, a bit linije dovode se na srednji naponski nivo.

• U pristupu vrsti (događaju poznatom i kao aktiviranje) aktivira se samo jedna linija reči, kondenzatorima ove vrste dopušta se da seisprazne, dovodeći bit linije na niži ili viši naponski nivo od prethodnog.

N. Milenković, Arhitektura i organizacija računara 2011

Page 4: AOR G6 Memorijski Sistem 1

6/8/2011

4

Destruktivan pristup

• Ove promene uočavaju i pojačavaju sens pojačavači. Na kraju, u fazi pristupa koloni, iz cele pročitane vrste, koja je prisutna u sens pojačavačima, dekoderom kolone bira se zahtevana grupa podatakazahtevana grupa podataka.

• Pristup vrsti je destruktivan, pa se posle završetka pristupa koloni vraćanjem podataka iz sens pojačavača u vrstu obnavlja njen sadržaj.

• To se takođe obavlja pretpunjenjem, koje mora razdvajati prethodno od novog aktiviranja linija.

N. Milenković, Arhitektura i organizacija računara 2011

Oznake vremenskih parametara

• Tipične oznake ovih vremenskih parametara su: tRP - vreme pretpunjenja, tRCD - RAS do CAS kašnjenje i CL - CAS latencija ili vreme pristupa koloni.

• Sve tri navedene faze moraju se obaviti pri svakom pristupu DRAM-usvakom pristupu DRAM-u.

• Vremena pretpunjenja i pristupa vrsti mogu se prividno umanjiti čineći te dve faze zajedničkim za više uzastopnih pristupa kolonama u istoj vrsti.

• U nekim arhitekturama vreme pretpunjenja prikriva se preklapanjem ovog vremena sa drugim aktivnostima u sistemu.

N. Milenković, Arhitektura i organizacija računara 2011

Poboljšani oblik DRAM memorije

• DRAM memorije kod kojih se pri svakom pristupu mora aktivirati vrsta su konvencionalne DRAM memorije.

• Osnovni oblik savremenih DRAM memorija je FPM DRAM (Fast Page Mode DRAM)FPM DRAM (Fast Page Mode DRAM).

• Kod nje sens pojačavači obrazuju bafer vrste, u kome je prisutan sadržaj cele vrste pročitan pri poslednjem pristupu vrsti. Sve dok se u nekom od narednih pristupa memoriji ne promeni adresa vrste, ranije pročitani sadržaj vrste ostaje u baferu vrste.

N. Milenković, Arhitektura i organizacija računara 2011

Asinhrona priroda DRAM memorija

• Pristupi podacima prisutnim u baferu vrste zahtevaju samo vreme CL, koje je znatno kraće od punog vremena obraćanja tRP + tRCD + CL.

• Konvencionalne DRAM memorije, FPM DRAM memorije i još neki iz njih izvedeni poboljšani tipovi DRAM memorija su asinhrone memorije, u smislu da odzivi memorije nisu sinhronizovani spoljašnjim taktnim signalima.

N. Milenković, Arhitektura i organizacija računara 2011

Sinhrone DRAM memorije

• U drugoj polovini devedesetih godina pojavile su se sinhrone DRAM memorije, skraćeno SDRAM. To je tip DRAM-a čiji je rad sinhronizovan ulaznim taktnim signalom. SDRAM je razvijen sa idejom da će sinhronizacija sistemskog takta i radnog takta memorije olakšati upravljanje i magistralom i memorijom.

• Asinhronom jezgru memorije dodati su i upravljački registri, koji omogućuju da se radom SDRAM-a upravlja komandama.

N. Milenković, Arhitektura i organizacija računara 2011

Komande SDRAM-a

• Komanda je kombinacija logičkih nivoa upravljačkih signala.

• Tipične komande su komanda aktiviranja vrste komanda čitanja ili upisa komandavrste, komanda čitanja ili upisa, komanda pretpunjenja i druge.

• CAS latencija CL je programirljiva i poznata, tako da se sa njom mogu uklapati druge aktivnosti.

N. Milenković, Arhitektura i organizacija računara 2011

Page 5: AOR G6 Memorijski Sistem 1

6/8/2011

5

Nezavisne memorijske banke SDRAM-a

• Čip SDRAM memorije sadrži nekoliko nezavisnih memorijskih banaka (polja memorijskih ćelija) sa pripadajućim adresnim kolima i sens pojačavačima (baferima vrsta), čiji se rad može preklapati.

• Preko upravljačkih registara SDRAM-a može se izabrati jedna od ponuđenih dužina (4 ili 8 reči) grupe podataka koji se mogu pročitati ili upisati jednim pristupom u takozvanom režimu grupe(engl. burst mode).

N. Milenković, Arhitektura i organizacija računara 2011

Sinhrona DRAM memorija

Banka 1

Banka N-1

r vr

steSelek

tor b

anke

Poljememorijskih

.... . . Generatorunutra{njeg takta

Takt

Adresa

Sens poja~ava~i (Bafer vrste)

Dekoder koloneBafer ulaza-izlaza

Dek

ode }elija

(Banka 0)

...

Podatak

Blo

kup

ravlja

nja

Dek

oder

kom

andiRAS

CSWECAS

N. Milenković, Arhitektura i organizacija računara 2011

Rad u režimu grupe

• U režimu grupe dostavljenoj adresi kolone dodaje se sadržaj brojača grupe koji se menja udodaje se sadržaj brojača grupe, koji se menja u granicama od nule do programirane dužine grupe umanjene za 1.

• Adrese kolona u grupi mogu se menjati na različite načine, što se određuje komandama.

N. Milenković, Arhitektura i organizacija računara 2011

Tipovi SDRAM memorija

• SDRAM memorije javljaju se u četiri varijante: kao Single Data Rate (SDR SDRAM), Double Date Rate (DDR SDRAM), DDR2 SDRAM i DDR3 DRAM.

• One se razlikuju po obimu pribavljenih podataka po jednom nalogu, načinu prenosa podataka između SDRAM čipa i kontrolera DRAM-a i brzini memorijskog jezgrajezgra .

• SDR SDRAM prenosi po jednu reč u svakom taktnom ciklusu, dok ostala tri tipa SDRAM-a prenose po dve reči u svakom taktnom ciklusu, po jednu pri uzlaznoj i silaznoj ivici taktnog signala.

• Uz to, DDR2 i DDR3 razmenjuju podatke sa kontrolerom DRAM-a pri dvostruko odnosno četvorostruko većoj učestanosti od unutrašnje radne učestanosti SDRAM čipa.

N. Milenković, Arhitektura i organizacija računara 2011

Pribavljanje višestruko dužih podataka

• DDR, DDR2 i DDR3 SDRAM sa n ulazno-izlaznih linija podataka pri svakom čitanju umesto n-to bitnog podatka pribavljaju iz polja memorijskih ćelija podatak dužine 2n bitova 4nmemorijskih ćelija podatak dužine 2n bitova, 4n bitova i 8n bitova, respektivno. Onda mogu da po jedan n-to bitni podatak dostave dva puta u toku jednog taktnog ciklusa.

• Brzina SDRAM čipova iskazuje se brzinom prenosa podataka po jednom priključku podataka u Mb/s i latencijom CL.

N. Milenković, Arhitektura i organizacija računara 2011

Komande, upravljački signali i karakteristični vremenski parametri SDR i DDR SDRAM memorije

ACTa)

ACTRD PRE

Row Row

CL=2 DOUT

Takt

Komanda

Adresa

Podatak

tRAS

tRCD

tRP

Tn T1 T2 T3 T4 T5 T6 T7 T8 T1’

Col

ACT

c)

b)

RD

DQS

SDR SDRAM

DDR SDRAM

Row

10ns

10nsCL=2

CL=2

BL=4

DO DO DO DO

Cf =100MHz

Komanda

Adresa

Podatak

Podatak

Col

Tn T1 T2 T3 T4 T5 T6 T7 T8 T1’ T2’

DO DO DO DO

Hi-Z

Hi-Z

Page 6: AOR G6 Memorijski Sistem 1

6/8/2011

6

Označavanje SDRAM-a

• Tako DDR2 667, CL=4 označava DDR2memoriju koja radi na 333MHz, ima maksimalnu brzinu prenosa podataka po jednom priključku 667Mb/s i latenciju pristupa koloni od 4 periode takta odnosno 12nstakta, odnosno 12ns

• Danas se DDR2 i DDR3 SDRAM memorijski čipovi izrađuju sa kapacitetom 512Mb, 1Gb i 2Gb, sa 4 i 8 banaka, sa 4÷16 ulazno-izlaznihlinija podataka, sa mogućnošću rada na 200 MHz÷667 MHz.

N. Milenković, Arhitektura i organizacija računara 2011

Parametri tipične DDR3 SDRAM memorije

• Na primer, Micron MT41J128M8 –16 Meg x 8 x 8 banks, tipična DDR3 SDRAM memorija kapaciteta 1Gb, sadrži osam unutrašnjihmemorijskih banaka, svaka organizacije 16K vrsta i 1K 8-bitnih kolona (U-I tipa x8). ( p )

• Ova memorija može raditi na 667 MHz (perioda takta 1,5ns), sa vremenom pretpunjenja (tRP) od 10 periode takta, vremenom aktiviranja (pristupa) vrste (tRCD) od 10 periode takta i vremenom pristupa koloni (CL) od 10 periode takta.

N. Milenković, Arhitektura i organizacija računara 2011

Parametri tipične DDR3 SDRAM memorije

• Takva memorija označava se sa DDR3 1333, 10-10-10. Ovo znači da ona može raditi na najviše 667 MHz, i da su vremena tRP, tRCD i CL svako po 10 periode takta respektivno, odnosno po 15ns.

• Protočni pristupi kolonama koji prenose 8- bitne podatke mogu se vršiti u svakom taktnom ciklusu što daje maksimalnu propusnost memorije od 1,333 GB/s.

N. Milenković, Arhitektura i organizacija računara 2011

Karakteristike četiri opisana tipa SDRAM memorija

DDR3SDRAM

DDR2 SDRAM

DDR SDRAM

SDR SDRAM

Pribavljanje unapred 8n bitova 4n bitova 2n bitova n bitova

Radna učestanost t š j 200 MH 166 MH 133 MH 100 MHunutrašnje

magistrale200 MHz 166 MHz 133 MHz 100 MHz

Učestanost spoljašnjeg takta 800 MHz 333 MHz 133 MHz 100 MHz

Brzina prenosa podataka po jednoj liniji magistrale

1600 Mb/s 667 Mb/s 266 Mb/s 100 Mb/s

N. Milenković, Arhitektura i organizacija računara 2011

Odnosi brzina kod

SDR iDDR

SDRAM-a

N. Milenković, Arhitektura i organizacija računara 2011

Odnosi brzina kod DDR2 SDRAM-a

N. Milenković, Arhitektura i organizacija računara 2011

Page 7: AOR G6 Memorijski Sistem 1

6/8/2011

7

Odnosi brzina kod DDR3 SDRAM-a

N. Milenković, Arhitektura i organizacija računara 2011

Karakteristični parametri DDR3, DDR2, i DDR SDRAM memorija

N. Milenković, Arhitektura i organizacija računara 2011

Moduli sa DRAM memorijama

• DDR2 i DDR3 SDRAM memorije pakuju se u takozvane DIMM module (Dual In-line Memory Module) i SO DIMM module. DIMM memorijski modul je pločica sa zalemljenih k čipova SDRAM-a sa dvostranim konektorom sa 240SDRAM a, sa dvostranim konektorom sa 240 pinova, od kojih su 64 pina U-I priključci podataka modula.

• Broj čipova k na modulu određen je izrazom k×n=64, gde je n već pominjani broj U-I priključaka podataka DRAM čipa.

N. Milenković, Arhitektura i organizacija računara 2011

DIMM modul

DIMM modul

Linije podataka (16) D

RAM

~ip

AM

ip

DRAM

~ip

RAM

ip

Memorijskamagistrala(64 bit )

• DIMM modul sa dve paralelne grupe sa po 4

Kon

troler

DRAM-a

Adresa iupravlja~ki signaliIzbor grupe ~ipova

DRAM

~ip

DR

~

DRAM

~ip

DRAM

~ip

DR

~

DRAM

~ip

(64 bita) g upe sa počipa priključen na kontroler DRAM-a.

N. Milenković, Arhitektura i organizacija računara 2011

Mera propusnosti DIMM modula

• DIMM moduli predviđeni su za priključenje na 64-bitnu memorijsku magistralu podataka.

• Oni se specificiraju na osnovu maksimalne propusnosti kao PC2 xxxx ili PC3 xxxx, gde je p p g jxxxx maksimalna propusnost modula iskazana u MB/s.

• Ona se dobija kao osmostruka vrednost brzine prenosa podataka u Mb/s po jednom U-I priključku podataka čipa.

N. Milenković, Arhitektura i organizacija računara 2011

Projektovanje DIMM modula

• Primer 6.1 Odrediti broj potrebnih DDR3SDRAM čipova sa po 8 U-I priključaka podataka, kapaciteta po 1Gb, i njihove propusnosti da se dobije DIMM modulpropusnosti da se dobije DIMM modul kapaciteta 2 GB i propusnosti PC3 10600.

N. Milenković, Arhitektura i organizacija računara 2011

Page 8: AOR G6 Memorijski Sistem 1

6/8/2011

8

Osvežavanje DRAM memorija

• Osvežavanje DRAM memorija (engl. DRAM refresh) vrši se tako što se pristupom vrsti pročita ceo njen sadržaj, a zatim se povratnim upisom on obnovi.

• Kod DRAM čipova koji sadrže više nezavisnih p jbanaka, istovremeno se osvežavaju vrste sa istom adresom u svim bankama.

• Periode osvežavanja kod savremenih SDRAM memorija su 32 ili 64 ms.

• Osvežavanje jedne vrste traje nekoliko puta duže od pristupa čitanja ili upisa, dakle stotinakns.

N. Milenković, Arhitektura i organizacija računara 2011

Upravljanje DRAM memorijom

• Aktivnosti na upravljanju radom DRAM memorijasu obimne, što opravdava uvođenje posebnog kontrolera koji bi se bavio samo time. Takvi hardverski implementirani kontroleri DRAM memorija su danas obavezni pratioci DRAMmemorija su danas obavezni pratioci DRAM memorija u savremenim računarima.

• Kontroleri DRAM memorija obično su uklopljeni u čipove koji obavljaju i druge funkcije. Na sledećem slajdu prikazan je kontroler DRAM memorije u sastavu kontrolera sistema, koji se često naziva i severni most (engl. north bridge).

N. Milenković, Arhitektura i organizacija računara 2011

Kontroler DRAM-a

DRAMtroler

AM-a

Sistemskamagistrala

Kontroler sistema

Centralni

Memorijska magistrala

DRAMmemorija U-I most

Kon

tDRACentralni

procesor

U-I magistrala

N. Milenković, Arhitektura i organizacija računara 2011

STATIČKA RAM MEMORIJA

• Na nivou blokova, SRAM memorija ima sličnu, mada nešto jednostavniju organizaciju od DRAM memorija.

• Polje memorijskih ćelija SRAM memorije organizovano je kao 2m reči × w bitova.

• SRAM memorija ovakve organizacije ima m• SRAM memorija ovakve organizacije ima m adresnih ulaza, w ulaza-izlaza podataka i upravljačke ulaze .

• Za razliku od DRAM memorije, SRAM memorija ne multipleksira adresne linije, odnosno puna adresa joj se dostavlja istovremeno.

N. Milenković, Arhitektura i organizacija računara 2011

Organizacija SRAM-a

Adresa

SRAM P d im

• Još jedna važna odlika SRAM memorija je da čitanje podataka nije

SRAMCS

WE

OE

Podaci

2 wmx w

destruktivno. • Ovo omogućuje da

vreme ciklusa SRAM memorija ne bude duže od vremena pristupa.

N. Milenković, Arhitektura i organizacija računara 2011

Parametri tipičnog SRAM-a• SRAM memorija K7R643684M (proizvođač

Samsung) je sinhrona SRAM memorija, organizacije 2M×36 bitova.

• Dužina reči od 36 bitova (4× 9) omogućuje uvođenje po jednog kontrolnog bita (bita parnosti) u svaki bajt. Sa dva ovakva čipa dobija

b ij i ij 2M 72 bitse brza memorija organizacije 2M×72 bita, kapaciteta 16MB sa 8 kontrolnih bitova po svakoj 64-bitnoj reči.

• Ovaj čip u najbržoj varijanti ima minimalno vreme ciklusa 3,3ns i maksimalno vreme pristupa 0,45 ns.

• U režimu grupe jednim pristupom mogu se pročitati ili upisati 4 reči brzinom od 600 Mreči/s.

N. Milenković, Arhitektura i organizacija računara 2011

Page 9: AOR G6 Memorijski Sistem 1

6/8/2011

9

Adresa

Podaci 4 wx

m

a)SRAM

CS WE OE

2 wmx

SRAM

CS WE OE

2 wmx

SRAM

CS WE OE

2 wmx

SRAM

CS WE OE

2 wmx

...........

.

Formiranje memorije organizacije a) 2m×4w, b) (4×2m)×w

Adresa

Podaci

b)m

w

m+2

SRAM

CS WE OE

2 wmx

SRAM

CS WE OE

2 wmx

SRAM

CS

CS

WE

WE

WE

OE

OE

OE

2 wmx

SRAM

CS WE OE

2 wmx

....

.

.. ...

.

20 1 2 3DEK

N. Milenković, Arhitektura i organizacija računara 2011

Poređenje DRAM i SRAM memorija

• Poređenje DRAM i SRAM memorija pokazuje da su SRAM memorije daleko manjeg kapaciteta po čipu, brže, sa konstantnim vremenima pristupa i ciklusakonstantnim vremenima pristupa i ciklusa, skuplje i jednostavnije za upravljanje.

• DRAM memorije su mnogo većeg kapaciteta po čipu, sporije, sa promenljivim vremenima pristupa i ciklusa, jeftinije i složenije za upravljanje.

N. Milenković, Arhitektura i organizacija računara 2011

EPROM MEMORIJEROM memorija (Read Only Memory) je

poluprovodnička memorija sa proizvoljnim pristupom čiji se prethodno upisani sadržaj može samo čitati. Upis podataka u ROM vrši se posebnim postupkom- takozvanim programiranjem ROM-a.

Z i d či i j t j č ti i tiZavisno od načina programiranja postoje četiri tipa ROM memorija.

• ROM memorija koja se programira maskiranjem u procesu proizvodnje.

• PROM memorija (Programmable ROM), koja iz proizvodnje izlazi kao ”prazna”, programira se samo jednom odgovarajućim električnim signalima.

N. Milenković, Arhitektura i organizacija računara 2011

EPROM i EEPROM• EPROM memorija (Eraseable PROM) takođe se

programira električnim signalima, ali se programirani sadržaj može obrisati i ona ponovo programirati. Briše se sadržaj cele memorije osvetljavanjem memorije ultraljubičastom svetlošćusvetlošću.

• EEPROM memorija (Electricaly EPROM) takođe se programira električnim signalima, ali se programirani sadržaj može selektivno brisati (na nivou reči) električnim signalima i ponovo programirati.

• EPROM i EEPROM memorije mogu se programirati i brisati mnogo puta.

N. Milenković, Arhitektura i organizacija računara 2011

Odlike ROM memorija

• Unutrašnja organizacija ROM memorija slična je unutrašnjoj organizaciji SRAM memorija. Glavna razlika je u implementaciji polja memorijskih ćelija.

• Spolja gledano, ROM je organizacije 2m reči × w p j g j g jbitova.

• Vremena pristupa i ciklusa ROM memorija su vrlo kratka, uporediva sa istim vremenima kod SRAM memorija.

• ROM memorije u navedenim oblicima koriste se za trajno čuvanje programa, mikroprograma i nepromenljivih podataka.

N. Milenković, Arhitektura i organizacija računara 2011

FLEŠ MEMORIJE• Fleš memorija (engl. flash memory) je

poluprovodnička memorija koja se može programirati, brisati i naravno čitati na mestu gde je trajno postavljena u uređaju, ili kako se to kaže ”on line”.

• NAND i NOR fleš memorije NAND tip• NAND i NOR fleš memorije-NAND tip dominantan.

• SLC (Single-Level Cell) tehnologija – 1 bit po ćeliji,

• MLC (Multi-Level Cell) tehnologija – više bitova po ćeliji,

• SLC omogućuje veću brzinu rada od MLC-a.

N. Milenković, Arhitektura i organizacija računara 2011

Page 10: AOR G6 Memorijski Sistem 1

6/8/2011

10

Organizacija NAND fleš memorija• Stranice su osnovni elementi organizacije. • Blokovi sadrže 2k stranica. • Blokovi su organizovani po slojevima.• Substrat (die) može sadržati dva sloja.• Čipovi mogu imati jedan ili više substrata, kada su oni

i i blik i ( t k )organizovani u obliku magacina (steka).• Pojedinačni podaci (npr. dužine bajta) mogu se čitati

proizvoljnim redosledom ili sekvencijalno.• Mogu se programirati pojedinačne stranice, a brisati

blokovi. • Proizvode se čipovi fleš memorija kapaciteta nekoliko

stotina Mbita do 16 ili 32 Gbita.

N. Milenković, Arhitektura i organizacija računara 2011

Parametri jedne fleš memorije

• Naprimer, fleš memorija MT29F4G08(proizvođač Micron) je SLC NAND kapaciteta 4Gb, sa stranicama veličine (2048+64) bajta, blokovima sa po 64 stranice (128K + 4K) bajtova, slojevima veličine 2048 blokova i dva sloja po substratusloja po substratu.

• 64 dodatna bajta u svakoj stranici tipično se koriste za funkcije upravljanja greškama u stranicama.

• Čipovi kapaciteta 8Gbita i 16Gbita sadrže dvaodnosno četiri substrata.

N. Milenković, Arhitektura i organizacija računara 2011

Parametri jedne fleš memorije

• Programiraju se stranice, što traje oko 220 μs.• Brišu se blokovi što traje 1,5ms.• Podaci se iz prethodno otvorene stranice mogu čitati proizvoljnim redosledom brzinom od j d b jt kih 25 ili k ij ljednog bajta svakih 25μs ili sekvencijalno brzinom 25ns.

• Jednom upisani podaci mogu se održati u memoriji 10 godina.

• Memorija je funkcionalna za 100.000 upisa-brisanja.

N. Milenković, Arhitektura i organizacija računara 2011

ASOCIJATIVNE MEMORIJE

• Asocijativne memorije su memorije u kojima je zastupljen asocijativni pristup podacima.

• Pristup podatku u asocijativnoj memoriji vrši se na osnovu poznavanja vrednosti nekog dela p j gpodatka, takozvanog ključa.

• Poređenjem datog ključa sa vrednostima istih delova svih podataka prisutnih u asocijativnoj memoriji zaključuje se da li je traženi podatak prisutan u memoriji.

N. Milenković, Arhitektura i organizacija računara 2011

Blok šema asocijativne memorije

Ulazni registar

Ulaz

Klju~

.Registar maske

Izlaz

j

Slaganje

Selekcija

Blokselekcije

Izlazni registar

Poljememorijskih }elija

N. Milenković, Arhitektura i organizacija računara 2011

Logička šema jednobitne memorijske ćelije asocijativne memorije a) i njen

prikaz kao bloka b)

Ulaznipodatak D

QD Izlazni

Dozvola upisa WE

..

Q

Maskiranje MK

Selekcija S

Slaganje SLA

QFDF Izlaznipodatak QCK

MK

D

S

a) b)

WE

SLA

.

..

N. Milenković, Arhitektura i organizacija računara 2011

Page 11: AOR G6 Memorijski Sistem 1

6/8/2011

11

Upis, traženje i čitanje podatka

• Pri upisu podatka u memoriju signali S=1 i WE=1 uz MK=0 generišu taktni signal kojim se podatak D upiše u D flip-flop i prosledi na izlaz Q. Pri upisu podatka u memoriju ne maskira se ni jedan deo podatkani jedan deo podatka.

• Pri traženju podatka u memoriji aktivan je samo signal MK=0, što na izlazu SLA daje , pa je pri D= QF vrednost SLA=1.

• Pri čitanju podatka iz memorije sa S=1 označavaju se ćelije čiji se sadržaj čita. Pri tome je MK=x (nevažno), a izlazni signal Q = QF .

N. Milenković, Arhitektura i organizacija računara 2011

MEMORIJA SA MAGNETNIM DISKOM

• Memorije sa magnetnim diskom i trakom funkcionišu na principu zapisivanja bitova podataka u malim ćelijama od feromagnetnih materijala sa dva stabilna magnetna stanja, koja predstavljaju logičke vrednosti 0 i 1.

• Ova stanja određena su veličinom ili smerom magnetnog fluksa ćelije.

• Električna struja menja i omogućuje prepoznavanje magnetnih stanja ćelija na primer uz pomoć induktivne glave za upis i čitanje podataka.

N. Milenković, Arhitektura i organizacija računara 2011

Tvrdi disk

• Ovakve glave postavljene na vrlo malom rastojanju od magnetnih ćelija, u uzajamnom dejstvu sa njima mogu da menjaju magnetna stanja ćelija pri upisu podataka, ili da generišu električne signale koji pokazuju stanje ćelija pri čitanju podataka.

• Danas se tvrde disk jedinice, ili tvrdi disk drajvovi(engl. hard disk drive) široko koriste kao sekundarne memorije računara.

N. Milenković, Arhitektura i organizacija računara 2011

Šematski prikaz disk drajva

N. Milenković, Arhitektura i organizacija računara 2011

Slike čvrstog diska WD Caviar Black WD7501AALS

N. Milenković, Arhitektura i organizacija računara 2011

Sektori, piste i cilindri

• Kada se glava korektno pozicionira, podaci se mogu pročitati ili upisati, sa ili na površine kružnih ploča dok one rotiraju ispod glava, u blokovima koji se nazivaju sektori.

• Cela kružnica (prsten) na površini diska sa• Cela kružnica (prsten) na površini diska sa smeštenim podacima se naziva pista (eng. track), i svaka kružna ploča sadrži veliki broj pista, koncentričnih prstenova sa smeštenim podacima.

• Grupa pista na svim površinama na istom rastojanju od osovine diskova se naziva cilindar.

N. Milenković, Arhitektura i organizacija računara 2011

Page 12: AOR G6 Memorijski Sistem 1

6/8/2011

12

Adresiranje podataka na disku

• Sektori su numerisani tako da se sekvencijalno skeniranje svih sektora po celom disku odvija za najkraće vreme.

• Tipične vrednosti za disk drajvove od 3.5 inča su 500 1500 sektora po pisti 10 000 100 000500-1500 sektora po pisti, 10.000-100.000 cilindara i 4-12 površina.

• Najmanja jedinica podataka kojoj se može pristupiti na disku je sektor.

• Fizička adresa podatka na disku sastoji se od brojeva površine, piste i sektora u kome se podatak nalazi.

N. Milenković, Arhitektura i organizacija računara 2011

Vreme pristupa podatku

• Vreme pristupa podatku na disku se može razložiti na tri primarne komponente: vreme traženja, rotaciono kašnjenje i vreme prenosa podatka.

• Vreme traženja (eng. seek time) TS je vreme potrebno za pomeranje glave na tačnu radijalnu poziciju (pistu) i kreće se od 0.5 ms do 20 ms u zavisnosti od rastojanja koje glava treba da pređe da bi došla iznad odgovarajuće piste, kao i od samog diska.

N. Milenković, Arhitektura i organizacija računara 2011

Rotaciono kašnjenje

• Rotaciono kašnjenje TR je vreme potrebno za rotiranje kružnih ploča do nailaska traženog sektora ispod glave diska. Ono je promenljivo u granicama od 0 do periode obrtanja diska Tgranicama od 0 do periode obrtanja diska T. Zato se računa sa srednjim rotacionim kašnjenjem koje iznosi T/2.

• Kod današnjih diskova perioda obrtanja diska iznosi od 4 do 10 ms.

N. Milenković, Arhitektura i organizacija računara 2011

Vreme prenosa podataka• Vreme prenosa podataka dužine n sektora sa

jedne piste, TT, zavisi od brzine kojom podaci mogu biti preneti na ili sa površine diska i funkcija je od brzine obrtanja diska i broja sektora na pistama.

• Ono se za disk drajv sa r °/min i srednjim brojem• Ono se za disk drajv sa r °/min i srednjim brojem sektora po pisti k može izraziti kaoTT = 60×1000×n/(r×k) [ms]

• Srednje vreme čitanja ili upisivanja podataka u n sektora na jednoj pisti je onda

• TA = TS(srednje) +T/2 + TT

N. Milenković, Arhitektura i organizacija računara 2011

PrimerZa disk drajv sa sledećim parametima: r =7200 °/min, k=400 i TS(srednje)= 9ms izračunati srednju vrednost rotacionog kašnjenja, vremena prenosa podataka u/iz jednog sektora i srednje vreme čitanja ili upisivanja podataka u jedan sektor.

• Rešenje. Prema izrazu 6.6 jeRešenje. Prema izrazu 6.6 je TT = 60×1000×n/(r×k) =

60×1000×1/(7200×400) = 0,021 ms, aTR = T/ 2 = ½ ×60/r × 1000 =

½ ×60/7200 × 1000 = 4,16 ms, pa je TA = TS(srednje) +T/2 + TT =

9+4,16+0,021 = 13,181 ms. ♦

N. Milenković, Arhitektura i organizacija računara 2011

Višestruko zonsko zapisivanje

• Dužina pista je promenljiva, i raste idući od piste sa najmanjim poluprečnikom (unutrašnja pista) ka pisti sa najvećim poluprečnikom (spoljašnja pista).

• Tehnika nazvana višestruko zonsko zapisivanje(engl. multiple zone recording), koristi ovu ( g p g)činjenicu smeštajući, pri istoj linearnoj gustini zapisa, rastući broj sektora idući od unutrašnjih ka spoljašnjim pistama.

• Ovaj pristup grupiše 500-25.000 sukcesivnih pista u zone. Svaka zona sadrži konstantan broj sektora po pisti, sa skokovitim promenama broja sektora u pistama u sukcesivnim zonama.

N. Milenković, Arhitektura i organizacija računara 2011

Page 13: AOR G6 Memorijski Sistem 1

6/8/2011

13

Proizvođač i oznakaHitachi-IBM

Ultrastar 15K450

WD Caviar Black

WD7501AALSBajtova po sektoru 512-528 512Sektora po pisti 877 ÷ 1416 -Broj glava/diskova 8/4 5/3Broj zona 23 -Cilindara po disku 95.200 -Kapacitet diska 450 GB 750 GB

Parametri dva savremena disk drajva veličine 3,5 inča

Broj obrtaja diska [°/min] 15.000 7.200Perioda obrtanja [ms] 4,0 8,33Vreme pomeranja glava na susedni cilindar [ms] 0,5 -

Srednje vreme pomeranja glava [ms] 7,1 -Maksimalno vreme pomeranja glava [ms] 11,5 -Održiva brz. pren.pod. sa/iz drajva u bafer [MB/s] 100-160 106Brzina prenosa podataka sa bafera u host [Gb/s] 3 3

Veza sa hostom Serial Attached SCSI

Serial ATA 3Gb/s

Veličina bafera 16 MB 32 MBN. Milenković, Arhitektura i organizacija računara 2011

Raspored podataka na disku

N. Milenković, Arhitektura i organizacija računara 2011

Bafer diska

• Elektronika interfejsa u disk drajvu sadrži bafer memoriju, veličine između 4MB i 32MB, koja ima dvostruku ulogu.

• Prva je da, privremeno čuvajući podatke koji se j p j p jčitaju sa diska ili upisuju na disk, omogućuje da se prenos podataka između memorije sistema i bafera diska i između bafera diska i diska obavlja sa njima svojstvenim brzinama.

N. Milenković, Arhitektura i organizacija računara 2011

Keš memorije diska• Druga uloga bafera diska je uloga keš memorije

diska. Aplikacije obično pristupaju podacima sekvencijalno, pa je korisno da diskovi na optimalan način podrže takav način pristupa podacima.

• U te svrhe disk kontroleru je dodata funkcija• U te svrhe disk kontroleru je dodata funkcija upravljanja pribavljanjem unapred sekvencijalnih podataka.

• Naime, posle svake naložene operacije čitanja, disk kontroler će autonomno nastaviti da čita sekvencijalne podatke i da ih smešta u bafer.

N. Milenković, Arhitektura i organizacija računara 2011

SOLID STATE DRIVE• Stalna memorija izrađena od čipova MLC

NAND fleš memorije. Koristi se pre svega u prenosivim računarima kao zamena za tvrde diskove.P d ti d t d di k• Prednosti u odnosu na tvrde diskove:– Kraća latencija i veća propusnost, – Manja potrošnja i veća pouzdanost,– Bešumni rad i manja opasnost od oštećenja

pri padu i druge.

N. Milenković, Arhitektura i organizacija računara 2011

Solid state drive

• Mane u odnosu na tvrde diskove:- veća specifična cena,- manji kapacitet.

• Rade se u kućištima nalik tvrdim diskovima od 1,8 inča i 2,5 inča, sa kapacitetima od 32GB do 256GB.

N. Milenković, Arhitektura i organizacija računara 2011

Page 14: AOR G6 Memorijski Sistem 1

6/8/2011

14

Parametri Intel X25-M SATA SSD-a

• Form faktor 2,5 inča, kapacitet 160GB,• Propusnost pri sekvencijalnom čitanju do

250MB/s a pri upisu do 100MB/s,• Latencija pri čitanju 65μs a pri upisu 85μs,j p j μ p p μ• Proizvoljnih čitanja blokova po 4KB do 35.000/s,• Proizvoljnih upisa blokova po 4KB do 8.600/s,• Potrošnja snage 150mW (akt.) 75mW

(spremno),• Interfejs SATA 1,5Gb/s i 3,0Gb/s.

N. Milenković, Arhitektura i organizacija računara 2011

HIJERARHIJSKA ORGANIZACIJA MEMORIJE

Porast 5

5% godi{nje

anse 100

1000

10.000

Centralni

proceso

r

1980

1

10

Memorija Porast 7% godi{nje

Godina

Perform

a

1982

1984

1986

1988

1990

1992

1994

1996

1998 20

002002

2003

Ce

N. Milenković, Arhitektura i organizacija računara 2011

Oslonci hijerarhijske organizacijememorije

• Hijerarhijska organizacija memorije ima dva oslonca.

• Prvi je princip lokalnosti programa(preciznije lokalnosti obraćanja programa (p j j p gmemoriji).

• Drugi oslonac su fizički zakoni koji se, primenjeni na hardver računara, mogu formulisati u obliku aksiome: manje je brže.

N. Milenković, Arhitektura i organizacija računara 2011

Lokalnost programa

• Lokalnost programa ogleda se u tome da obraćanje programa memoriji u nekom vremenskom intervalu nije ravnomerno raspoređeno po oblasti memorije dodeljene tom programu, već je koncentrisano u nekoliko užih podoblasti memorijepodoblasti memorije.

• Eksperimentalna istraživanja ponašanja programa, koja je započeo D.E.Knuth 1971. god. i nastavili mnogi drugi istraživači, dovela su do formulisanja sledećeg opažanja: program provodi 90 % vremena u izvršavanju samo 10 % (statičkih) naredbi programa.

N. Milenković, Arhitektura i organizacija računara 2011

Vremenska i prostorna lokalnost

Lokalnost programa ima dve dimenzije:• Vremensku lokalnost (lokalnost u vremenu) -

ako se program obratio nekoj lokaciji memorije, vrlo je verovatno da će joj se uskoro ponovo j j j pobratiti;

• Prostornu lokalnost (lokalnost u prostoru) - ako se program obratio nekoj lokaciji memorije, vrlo je verovatno da će se uskoro obratiti nekoj od susednih lokacija memorije.

N. Milenković, Arhitektura i organizacija računara 2011

Nivoi hijerarhijske organizacije memorije

arni k

e{

U/IU/I

^ip procesora

Registri i ke

{

Sek

unda

Uuredjaji

U/Imagistrala

Obra}anjeregistrima

Obra}anjeke{ memoriji

Obra}anjeglavnoj memoriji

Obra}anjedisku

Veli~ina:Brzina:

512 B0,25 ns

4 MB10 ns

2x64 KB1 ns

4 GB80 ns

750 GB5 ms

Registri

Prim

arn

N. Milenković, Arhitektura i organizacija računara 2011

Page 15: AOR G6 Memorijski Sistem 1

6/8/2011

15

KEŠ MEMORIJE

• Keš memorije (KM, cache memory) su brze memorije malog kapaciteta, umetnute između procesora i glavne memorije računara. Upravljane su tako da bi u svakom trenutku trebalo da sadrže aktuelne podatke pri radu procesora.

N. Milenković, Arhitektura i organizacija računara 2011

Najpre obraćanje kešu

• U nastojanju da pribavi potreban podatak, procesor se obraća keš memoriji. Ako je traženi podatak prisutan u keš memoriji, on se iz nje čita i dostavlja procesoru, koji nastavlja sa radom bez zastoja.

• Ako traženi podatak nije prisutan u keš memoriji, obraćanje procesora prosleđuje se glavnoj memoriji. Traženi podatak iz glavne memorije prenosi se u keš memoriju, a odatle u procesor.

N. Milenković, Arhitektura i organizacija računara 2011

Preslikavanje blokova podataka

• Između glavne memorije i keš memorije ne preslikavaju se pojedinačne reči većblokovi (linije) podataka.

• Glavna memorija i keš memorija podeljene• Glavna memorija i keš memorija podeljene su na okvire blokova, dužina jednakih dužinama blokova podataka.

• Blok podataka i uvek se nalazi u i-tom okviru bloka u glavnoj memoriji.

N. Milenković, Arhitektura i organizacija računara 2011

Keš blok

• Veza između blokova podataka i okvira blokova u keš memoriji je složenija. Naprimer, okvir bloka keš memorije može sadržati jedan od većeg broja blokova podataka.

• Ili, blok podataka i može se naći u okviru bloka jili okviru bloka k keš memorije, ili i ne biti prisutan u njoj.

• Ubuduće ćemo, pominjući okvir bloka, uvek imati u vidu okvir bloka u keš memoriji ili keš blok.

N. Milenković, Arhitektura i organizacija računara 2011

Struktura keš memorije

• Neophodno je u keš memoriji imati informacije o tome koji su blokovi podataka prisutni u njoj.

• Ovo upućuje da se keš memorija mora sastojati od memorije podataka i adresara (direktorijuma).U iji d t k k š č j bl k i• U memoriji podataka keša čuvaju se blokovi podataka prisutni u keš memoriji.

• Adresar keša ima po jednu stavku za svaki kešblok. Stavka adresara sadrži informacije o bloku podataka prisutnom u keš bloku kome je ona pridružena.

N. Milenković, Arhitektura i organizacija računara 2011

Struktura keš memorije

Stavku adresara najčešće sačinjavaju:• etiketa (engl. tag) - viši deo adrese bloka

podataka prisutnog u keš bloku,• V - indikator važeći blok podataka prisutan u keš

bloku,• M - indikator modifikovan blok podataka u keš

bloku.

Kontrolerke{a

Upravlja~kelinije

Adresnelinije

Linijepodataka

Adresarke{a

Memorijapodataka

ke{a

N. Milenković, Arhitektura i organizacija računara 2011

Page 16: AOR G6 Memorijski Sistem 1

6/8/2011

16

Iskazivanje veličina u blokovima

• Blokovi podataka, kao i okviri blokova odnosno keš blokovi, su dužine B = 2b [B].

• Glavna memorija GM je kapacitetaG 2 [B] I k bl k i j k it t jG = 2g [B]. Iskazan blokovima, njen kapacitet je GB =G/B = 2g/ 2b= 2g-b [blokova].

• Keš memorija KM je kapaciteta C = 2c [B]. Iskazan blokovima, njen kapacitet je

CB= C/B = 2c/ 2b = 2c-b [blokova].

N. Milenković, Arhitektura i organizacija računara 2011

Smeštanje i traženje podataka u keš memoriji

Prema broju keš blokova u koje se može preneti blok podataka i iz glavne memorije, i∈{0,1,...,GB-1}, keš memorija može biti sa:može biti sa:

• potpunim asocijativnim preslikavanjem,• skupno-asocijativnim preslikavanjem, i• direktnim preslikavanjem.

N. Milenković, Arhitektura i organizacija računara 2011

Preslikavanje blokova podataka iz glavne memorije u sva tri tipa keš memorija

0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 11 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3Broj

bloka

Broj

Glavna memorija

Brojskupa

Presli-kavanje

Blok pod.12 mo`ebiti prenet

Potpunoasocijativno

Direktno

bilo gde bilo gde u skupu 0 (12 mod 4=0)

samo u ke{ blok 4 (12 mod 8=4)

(2-blo~no) Skupno asocijativno

Ke{ memorija

0 1 2 3 0 1 2 3 4 5 6 7

N. Milenković, Arhitektura i organizacija računara 2011

Krajnosti u preslikavanju

• Kod keš memorije sa potpunim asocijativnim preslikavanjem, blok podataka i može biti prenet u bilo koji kešblok k k∈{0 1 CB-1}blok k, k∈{0,1,...,CB 1}.

• Kod keš memorije sa direktnim preslikavanjem, blok podataka i može biti prenet samo u keš blok k određen izrazom k = i mod CB.

N. Milenković, Arhitektura i organizacija računara 2011

Skupno-asocijativna keš memorija

• Kod keš memorije sa skupno-asocijativnim preslikavanjem, po A keš blokova obrazuje skup keš blokova Sj, j = 0,1,...,s-1. s=2r = CB /A je broj skupova keš blokova u keš memoriji.

• Blok podataka i može biti prenet u bilo koji od A keš blokova u skupu keš blokova Skkeš blokova u skupu keš blokova Sk, k = i mod s.

• Broj keš blokova A u skupu naziva se asocijativnost skupa. Za keš memoriju sa skupno asocijativnim preslikavanjem, sa A kešblokova po skupu, kaže se da je A-bločna skupno-asocijativna keš memorija

N. Milenković, Arhitektura i organizacija računara 2011

Adresna polja keš memorija

E t i k e t a Pom.

g

be = g - b

Potpunoasocijativnopreslikavanje

(1)

a.

(2)

E t i k e t a Pom.Indeks

g

bb

e = g - (r + b) re = g - c c - b

Preslikavanjeskupno-asoc.direktno

(1)

b.

(2)

(2) (1) (3)

N. Milenković, Arhitektura i organizacija računara 2011

Page 17: AOR G6 Memorijski Sistem 1

6/8/2011

17

Opšti oblik keša

• Način rada keš memorije sa skupno-asocijativnim preslikavanjem reprezentativan je i za ostala dva oblika keš memorija.

• Skupno-asocijativno preslikavanje prelazi u direktno preslikavanje kada skup spadne nadirektno preslikavanje kada skup spadne na samo jedan keš blok (A=1, s=CB).

• Skupno-asocijativno preslikavanje prelazi u potpuno asocijativno preslikavanje kada jedan skup obuhvati sve blokove keš memorije (A=CB, s=1).

N. Milenković, Arhitektura i organizacija računara 2011

v Et Pod v Et Pod v Et Pod v Et Pod

t

t i

Skup01

s-1

E t i k e t a I n d e k s Pom.

Selek

tor sk

upa

MAR

k

Pogodak

Podatak

t 32

Selektor blokapodataka i re~i

N. Milenković, Arhitektura i organizacija računara 2011

Varijante keš memorija

• Glavna memorija računara sadrži programe i podatke (operande), koji se mogu prenositi u keš memoriju i čuvati u njoj.

• Jedinstveni keš je onaj u kome se zajedno čuvaju programi i podaci (Princeton-ska arhitektura računara). )

• Keš instrukcija i keš podataka odvojeno čuvaju programe i podatke (Harvard-ska arhitektura).

• Odvojeni keševi za instrukcije i podatke široko su zastupljeni u savremenim računarima, jer omogućuju istovremeni pristup i jednom i drugom kešu, čime udvajaju širinu opsega kešmemorija.

N. Milenković, Arhitektura i organizacija računara 2011

Više nivoa keša

• Primarna keš memorija radi pri taktnoj učestanosti procesora.

• Sekundarna keš memorija (L2 keš) znatno većeg kapaciteta (nekoliko stotina KB do nekoliko MB), i nekoliko puta sporija od primarne keš memorije, smešta se u čipu procesora ili van njega između primarne kešmemorije i glavne memorije.

• U poslednje vreme uvodi se i keš trećeg nivoa (L3 keš) između L2 keša i glavne memorije.

• Tako, naprimer, procesori Intel-a i AMD-a imaju L2 i L3keš memorije kapaciteta 1 do 8 MB u čipu procesora.

N. Milenković, Arhitektura i organizacija računara 2011

Zamena blokova podataka u keš memoriji

• Pri promašaju podatka sa adresom a u keš memoriji, on se u nju mora preneti zajedno sa blokom podataka i kome pripada.

• Kod keš memorije sa direktnim preslikavanjem, blok podataka i može se preneti samo u kešblok podataka i može se preneti samo u kešblok k = i mod CB.

• Kod keš memorija sa skupno-asocijativnim i potpunim asocijativnim preslikavanjem, blok podataka i može se preneti u jedan od više kešblokova. Neka su to keš blokovi j1, j2,..., jh.

N. Milenković, Arhitektura i organizacija računara 2011

Izbor bloka za zamenu

• Izbor bloka za zamenu može uticati na buduće promašaje. Zato se kao cilj postavlja izbor keš bloka jz, 1≤z≤h, u kome će zamena bloka podataka dati najmanji broj budućih promašaja.

• Pravilo po kome se bira blok podataka za zamenu novim blokom, odnosno keš blok koji ga sadrži, zvaćemo strategija (politika) zamene bloka.

N. Milenković, Arhitektura i organizacija računara 2011

Page 18: AOR G6 Memorijski Sistem 1

6/8/2011

18

Tri strategije zamene

Keš blok jz u kome će blok podataka biti zamenjen novim, bira se prema jednoj od sledećih strategija zamene:

• slučajnim izborom (RAND),j ( ),• izborom keš bloka koji je prvi napunjen

(FIFO),• izborom keš bloka koji sadrži najmanje

skoro korišćeni blok podataka (engl. Least Recently Used, skr. LRU).

N. Milenković, Arhitektura i organizacija računara 2011

Optimalna strategija zamene

• Strategija zamene blokova podataka u kešmemoriji koja bi dala najbolje rezultate zahteva poznavanje ponašanja programa u budućnosti.

• Ovakvu optimalnu strategiju zamene (OPT) predložio je L Belady 1966 god u radu koji sepredložio je L.Belady 1966. god. u radu koji se odnosio na virtuelne memorije.

• Primenjena na keš memorije, može se formulisati ovako: za zamenu se bira blok podataka koji će od svih kandidata za zamenu biti korišćen u najdaljoj budućnosti.

N. Milenković, Arhitektura i organizacija računara 2011

LRU stek

• LRU algoritam zamene može se implementirati sledećim hardverskim rešenjem, koje je deo kontrolera keša. Nazovimo ovaj deo kontrolera keša blok izbora žrtvovanog bloka podataka.

• Po jedan LRU stek pridružuje se svakom skupu keš blokova LRU stek sadrži po jedan stepen zakeš blokova. LRU stek sadrži po jedan stepen za svaki keš blok u skupu keš blokova, dakle A stepena.

• Svaki stepen sadrži k flip-flopova tipa D, gde je k određeno izrazom k= ⎡log2 A⎤, tako da svojim stanjem adresira jedan od A keš blokova u svom skupu keš blokova.

N. Milenković, Arhitektura i organizacija računara 2011

LRU stek

. . .

. . . .D D D D

Takt pogodaka

I0 X0 Y0 Z0 W0

W0

D

NX

NX

I0I1

I1X1

X1

Y1 Z1 W1

W1 X0

NY NZ

D D D

N. Milenković, Arhitektura i organizacija računara 2011

Promena sadržaja LRU steka

• Pri pogotku aktivira se takt pogodaka, i na ulaze I1 i I0 vodi se oznaka keš bloka kome se u slučaju pogotka obraća CP.

• Prostiranjem takta pogodaka do stepena Y, Z i W upravlja se preko ulaza NX NY i NZW upravlja se preko ulaza NX, NY i NZ respektivno.

N. Milenković, Arhitektura i organizacija računara 2011

Promena sadržaja LRU steka

• Signali na ovim ulazima formiraju se tako da obezbede da se u slučaju pogotka, recimo u kešblok adresiran stanjem stepena Z, zatečena stanja stepena X i Y prenose u stepene Y i Z respektivno, a stanje stepena Z prenosi se u stepen X.

• if (I1I0) = (Z1Z0)) then (Z1Z0) ← (Y1Y0), (Y1Y0) ← (X1X0), (X1X0) ← (I1I0).

• ....../stanje stepena W ostaje nepromenjeno/

N. Milenković, Arhitektura i organizacija računara 2011

Page 19: AOR G6 Memorijski Sistem 1

6/8/2011

19

Upis podataka u keš memoriju • Situacija pri upisu u keš nešto je komplikovanija

nego pri čitanju. Razlog je taj što upis u keš blok ne može početi pre no što se proverom etikete ustanovi pogodak. Zbog ovoga upis u keš traje obično duže od čitanja. D k lik ij j t št i i• Druga komplikacija je to što pri upisu procesor definiše dužinu podatka koji upisuje (obično 1-8 bajtova), i samo taj deo bloka podataka može biti izmenjen.

• To povlači pribavljanje sadržaja adresiranog kešbloka, modifikovanje odgovarajućeg dela bloka podataka, i vraćanje modifikovanog bloka podataka u keš blok iz koga je uzet.

N. Milenković, Arhitektura i organizacija računara 2011

Ponašanje keša pri upisu

Prema aktivnostima pri pogotku pri upisu, kešmemorije mogu biti:

• sa neposrednim (uporednim) upisom (engl. write through ili store through) - podatak se upisuje u niži nivo memorije kao i u keš memoriju ako je uniži nivo memorije, kao i u keš memoriju ako je u njoj prisutan,

• sa posrednim upisom (engl. write back, copy back ili store in) - podatak se upisuje samo u kešmemoriju; modifikovani blok podataka upućuje se u niži nivo memorije tek pri njegovoj zameni u kešu, ili po završetku programa.

N. Milenković, Arhitektura i organizacija računara 2011

Neophodni povratni upisi

• Da bi se pri posrednom upisu izbegla nepotrebna vraćanja nemodifikovanih blokova pri zameni, svakom keš bloku pridružuje se indikator modifikovan. Ovaj indikator svojim stanjem pokazuje da li je blok podataka modifikovan (izmenjen) za vreme prisustva u kešu.

N. Milenković, Arhitektura i organizacija računara 2011

Bafer upisa pridružen kešu

• Pri neposrednom upisu, upis podatka u niži nivo memorije blokira procesor do završetka upisa. Ovo se može izbeći umetanjem bafera upisaizmeđu keš memorije i nižeg nivoa memorije.

• Upisom podatka u bafer upisa procesor se• Upisom podatka u bafer upisa procesor se deblokira, iako upis još nije prosleđen do odredišta.

• Ako je pri pokušaju upisa u bafer upisa on većpun, procesor ostaje blokiran sve dok se u baferu upisa ne oslobodi mesto za prihvatanje novog podatka.

N. Milenković, Arhitektura i organizacija računara 2011

Performanse keš memorija

• U najjednostavnijem slučaju čitanja podataka iz keš memorije, efektivno vreme pristupa keš memorije može se izraziti kao:

Tef = Tpog + mTpromef pog prom

• U ovom izrazu Tpog je vreme potrebno za čitanje podatka iz keša pri pogotku, Tprom je vreme potrebno za pribavljanje promašenog podatka iz nižeg nivoa memorije, tzv. promašajna kazna, i m je faktor promašaja.

N. Milenković, Arhitektura i organizacija računara 2011

Vremenski parametri keša• Razmotrimo aktivnosti pri ukupno n obraćanja

memorijskom sistemu, obrazovanom od jedinstvene keš memorije KM (za instrukcije i podatke) i glavne memorije GM.

• Neka su nč i nu broj čitanja iz i upisa u memorijski sistem, pri čemu je n= nč+nu. D lj kDalje, neka su:

• Tc - perioda takta keša,• Tčb - vreme pribavljanja bloka podataka iz GM u

KM,• Tub - vreme upisa žrtvovanog modifikovanog

bloka podataka iz KM u GM,• TuGM - vreme upisa reči podatka iz KM u GM,

N. Milenković, Arhitektura i organizacija računara 2011

Page 20: AOR G6 Memorijski Sistem 1

6/8/2011

20

Provera pri upisu• nprom - broj promašaja u n obavljenih pristupa

kešu,• nčprom - broj promašaja pri čitanju u n obavljenih

pristupa kešu,• nzmd - broj zamenjenih modifikovanih blokova

d t k i t ijipodataka u n pristupa memoriji.• Pošto se upisom blok podataka u kešu

modifikuje, pre upisa moramo se uveriti da je blok podataka u koji upisujemo prisutan u kešu. Ta provera zahteva jedan taktni ciklus keša. Sam upis zahteva još jedan taktni ciklus, tako da su za upis potrebna dva taktna ciklusa keša.

N. Milenković, Arhitektura i organizacija računara 2011

Keš sa posrednim upisom

• Pri postojanju bafera upisa blokova podataka dovoljno velikog kapaciteta između KM i GM, Tub < Tčb i preklapa se sa njim, pa izraz za Tef(PU)postaje

Tef(PU) = (1+pu)Tc+mT čb

N. Milenković, Arhitektura i organizacija računara 2011

Keš sa neposrednim upisom

• Za keš sa neposrednim upisom bez pribavljanja promašenog bloka pri upisu (pribavljaju se samo blokovi promašeni pri čitanju) imaćemo:

N. Milenković, Arhitektura i organizacija računara 2011

Sa baferom upisa

• Pri postojanju bafera upisa reči dovoljno velikog kapaciteta između KM i GM , TuGM < 2Tc i preklapa se sa njim, pa izraz

T t jza Tef(NU) postajeTef(NU) = pčTc+pu⋅2Tc +mčTčb

Tef(NU) = (1+pu)Tc +mčTčb

N. Milenković, Arhitektura i organizacija računara 2011

Uticaj promašaja keša na vreme rada CP-a

N. Milenković, Arhitektura i organizacija računara 2011

Klasifikacija promašaja• Neizbežni promašaji - pri prvom obraćanju

nekom podatku taj podatak nije u kešu, tako da blok sa tim podatkom mora biti prenet u keš. Ovi promašaji nazivaju se još i promašaji hladnog starta ili promašaji prvog obraćanjastarta ili promašaji prvog obraćanja.

• Kapacitetni promašaji - ako keš ne može sadržati sve blokove podataka potrebne pri izvršenju programa, javljaju se promašaji zbog nedovoljnog kapaciteta, jer se blokovi koji su bili istisnuti iz keša drugim blokovima moraju vratiti u keš.

N. Milenković, Arhitektura i organizacija računara 2011

Page 21: AOR G6 Memorijski Sistem 1

6/8/2011

21

Klasifikacija promašaja

• Konfliktni promašaji - kod keš memorija sa direktnim ili skupno-asocijativnim preslikavanjem mogu se javiti promašaji zato što se isuviše blokova podataka preslikava u isti skup kešblokova, tako da neki od njih moraju biti istisnuti iz keša a zatim kasnije vraćeni u keš. Ovi promašaji nazivaju se još i kolizioni promašaji iliinterferentni promašaji.

N. Milenković, Arhitektura i organizacija računara 2011

Izolovanje promašaja po vrstama

N. Milenković, Arhitektura i organizacija računara 2011

Mere za smanjenje faktora promašaja

Smanjenje faktora promašaja može se postići različitim merama. Neke od njih su:

• povećanje dužine blokova,• povećanje asocijativnosti,

t b b k š bl k d t k• upotreba posebnog keša za blokove podataka istisnute iz keša, tkzv. keš žrtvovanih blokova(engl. victim cache),

• hardversko pribavljanje unapred instrukcija i podataka (naprimer korišćenjem stream buffer-a),

• kompilatorom upravljano pribavljanje unapred.

N. Milenković, Arhitektura i organizacija računara 2011

Mere za sniženje promašajne kazne

Kod savremenih keš memorija sreću se sledeća rešenja:

• davanje prioriteta promašajima pri čitanju u odnosu na upise,p

• pribavljanje podbloka podataka pri promašaju,• rani restart procesora i pribavljanje počev od

zahtevane reči,• neblokirajuće keš memorije,• keš memorija u više nivoa (L2 i L3 keš).

N. Milenković, Arhitektura i organizacija računara 2011

Neblokirajuće keš memorije • Zastoji u radu procesora mogu se značajno

smanjiti ako se omogući da procesor nastavi sa pribavljanjem i izvršavanjem drugih instrukcija dok se u keš memoriji pribavlja promašeni blok podataka.

• To omogućuju neblokirajuće keš memorije kojeTo omogućuju neblokirajuće keš memorije, koje su danas implementirane u većini procesora sa zahtevnijim performansama.

• Ova koncepcija zahteva uvođenje u keš memoriju dodatnih memorijskih struktura, u kojima se za vreme opsluživanja promašaja čuvaju informacije o formatu i odredištu u procesoru promašenog podatka.

N. Milenković, Arhitektura i organizacija računara 2011

Keš memorije u dva nivoa • Primarni keš,• Sekundarni keš• U ovom izrazu mL2 je lokalni faktor promašaja, koji se

definiše kao količnik broja promašaja u sekundarnom kešu i broja obraćanja sekundarnom kešu.

• Globalni faktor promašaja, koji se izražava količnikom b j š j k š i k b j b ć jbroja promašaja keša i ukupnog broja obraćanja procesora memoriji, za sekundarni keš bio bi iskazan proizvodom mL1mL2 .

• Za primarni keš, definicije lokalnog i globalnog faktora promašaja daju isti rezultat.

N. Milenković, Arhitektura i organizacija računara 2011

Page 22: AOR G6 Memorijski Sistem 1

6/8/2011

22

N. Milenković, Arhitektura i organizacija računara 2011

Mikroarhitektura procesora Pentium 4

N. Milenković, Arhitektura i organizacija računara 2011