Számítógép architektúrák. A memória

Hasonló dokumentumok
Számítógép architektúrák. Tartalom. A memória. A memória

Számítógép architektúrák. Tartalom. A memória. A memória

Tartalom. Számítógép architektúrák. A memória. A tárak implementációja. A félvezető tárolók. Egy cella

Számítógép architektúrák. A memória

Számítógép architektúrák. A memória

Memóriák - tárak. Memória. Kapacitás Ár. Sebesség. Háttértár. (felejtő) (nem felejtő)

elektronikus adattárolást memóriacím

MEMÓRIA TECHNOLÓGIÁK. Számítógép-architektúrák 4. gyakorlat. Dr. Lencse Gábor. tudományos főmunkatárs BME Híradástechnikai Tanszék

Dr. Oniga István. DIGITÁLIS TECHNIKA 10 Memóriák

Számítógépek, számítógép rendszerek

Dr. Oniga István. DIGITÁLIS TECHNIKA 10 Memóriák

Digitális rendszerek. Memória lapkák

statikus RAM ( tároló eleme: flip-flop ),

Architektúra, memóriák

Számítógép felépítése

BEVEZETÉS AZ INFORMATIKÁBA - SZÁMÍTÓGÉP ARCHITEKTÚRÁK. Háber István Ihaber@pmmik.pte.hu

8. témakör. Memóriák 1. Számítógép sematikus felépítése: 2.A memória fogalma: 3.A memóriák csoportosítása:

Számítógép Architektúrák (MIKNB113A)

6. óra Mi van a számítógépházban? A számítógép: elektronikus berendezés. Tárolja az adatokat, feldolgozza és az adatok ki és bevitelére is képes.

Számítógép Architektúrák

Ismerkedjünk tovább a számítógéppel. Alaplap és a processzeor

Első sor az érdekes, IBM PC ra alapul: 16 bites feldolgozás, 8 bites I/O (olcsóbb megoldás). 16 kbyte RAM. Nem volt háttértár, 5 db ISA foglalat

Fábián Zoltán Hálózatok elmélet

Máté: Számítógép architektúrák

ELŐADÁS SZÁMÍTÓGÉP MŰKÖDÉSE FIZIKA ÉS INFORMATIKA

Számítógépek felépítése

A számítógép egységei

(A DRAM-okkal kapcsolatban a bank megnyitása, bank aktiválása, banksor megnyitása vagy a lap megnyitása kifejezések szinonímák, ugyanazt jelentik.

2. Számítógépek működési elve. Bevezetés az informatikába. Vezérlés elve. Külső programvezérlés... Memória. Belső programvezérlés

A processzor hajtja végre a műveleteket. összeadás, szorzás, logikai műveletek (és, vagy, nem)

Alaplap. Az alaplapról. Néhány processzorfoglalat. Slot. < Hardver

Digitális Rendszerek és Számítógép Architektúrák

Bepillantás a gépházba

Alaplap. Slot. Bővítőkártyák. Csatolható tárolók. Portok. < Hardver

8. Fejezet Processzor (CPU) és memória: tervezés, implementáció, modern megoldások

MIKROELEKTRONIKA 7. MOS struktúrák: -MOS dióda, Si MOS -CCD (+CMOS matrix) -MOS FET, SOI elemek -MOS memóriák

8. Fejezet Processzor (CPU) és memória: tervezés, implementáció, modern megoldások

Bevitel-Kivitel. Eddig a számítógép agyáról volt szó. Szükség van eszközökre. Processzusok, memória, stb

Architektúra, cache. Mirıl lesz szó? Mi a probléma? Teljesítmény. Cache elve. Megoldás. Egy rövid idıintervallum alatt a memóriahivatkozások a teljes

DIGITÁLIS ADATTÁRAK (MEMÓRIÁK)

Memóriák. Digitális Rendszerek és Számítógép Architektúrák 2011

Számítógép egységei. Szoftver (a fizikai eszközöket működtető programok összessége)

Operációs rendszerek Memóriakezelés 1.1

Máté: Számítógép architektúrák

Processzor (CPU - Central Processing Unit)

Dr. Oniga István DIGITÁLIS TECHNIKA 8

Feladatlap: Számítógép összetevők keresése

Processzus. Operációs rendszerek MINB240. Memória gazdálkodás. Operációs rendszer néhány célja előadás Memóriakezelés

Mikrorendszerek tervezése

Computer Architecture

A memória működése szoftverfejlesztői szemmel. Smidla József Operációkutatási Laboratórium november 20.

Laptop: a fekete doboz

A számítógépek felépítése. A számítógép felépítése

I+K technológiák. Beágyazott rendszerek Dr. Aradi Szilárd

Máté: Számítógép architektúrák

MEM 5. A DIGITÁLIS ADATTÁRAK (MEMÓRIÁK) A FÉLVEZETŐ ALAPÚ MEMÓRIÁK

7.hét: A sorrendi hálózatok elemei II.

Máté: Számítógép architektúrák

A Számítógépek felépítése, mőködési módjai

Számítógép fajtái. 1) személyi számítógép ( PC, Apple Macintosh) - asztali (desktop) - hordozható (laptop, notebook, palmtop)

Új kompakt X20 vezérlő integrált I/O pontokkal

Máté: Számítógép architektúrák

Digitális eszközök típusai

7. Fejezet A processzor és a memória

A MEMÓRIA. A RAM-ok bemutatása

Digitális rendszerek. Digitális logika szintje

Járműfedélzeti rendszerek I. 3. előadás Dr. Bécsi Tamás

Számítógépek felépítése, alapfogalmak

Teljesítmény: időegység alatt végrehajtott utasítások száma. Egységek: MIPS, GIPS, MFLOPS, GFLOPS, TFLOPS, PFLOPS. Mai nagyteljesítményű GPGPU k: 1-2

Előadó: Nagy István (A65)

SZÁMÍTÓGÉPEK BELSŐ FELÉPÍTÉSE - 1

A Memory Interface Generator (MIG) beállítása a Logsys Kintex-7 FPGA kártyához

Programmable Chip. System on a Chip. Lazányi János. Tartalom. A hagyományos technológia SoC / PSoC SoPC Fejlesztés menete Mi van az FPGA-ban?

F1301 Bevezetés az elektronikába Digitális elektronika alapjai Szekvenciális hálózatok

Moore törvény Sima Dezső cikke Core-count Law

Dr. Illés Zoltán

LOGSYS LOGSYS LCD KIJELZŐ MODUL FELHASZNÁLÓI ÚTMUTATÓ november 8. Verzió

Számítógép architektúrák

Bevezetés az informatikába

5. tétel. A számítógép sematikus felépítése. (Ábra, buszok, CPU, Memória, IT, DMA, Periféria vezérlő)

Számítógép Architektúrák

Számítógép Architektúrák

Dr. Oniga István DIGITÁLIS TECHNIKA 9

Ismétlés: Moore törvény. Tranzisztorok mérőszáma: n*százmillió, n*milliárd.

Operációs rendszerek III.

Hobbi Elektronika. A digitális elektronika alapjai: További logikai műveletek

A mikroszámítógép felépítése.

Funkcionális áramkörök vizsgálata

Számítógépes alapismeretek

Hitachi Flash Újdonságok. Szokol Zsolt Senior Solution Consultant 2016 március

Nyíregyházi Egyetem Matematika és Informatika Intézete. Input/Output

Dr. Oniga István DIGITÁLIS TECHNIKA 9

A program SZÁMÍTÓGÉP ARCHITEKTÚRÁK. Legáltalánosabb architektúra. Eszközök szerepe. A vezérlők programozása. A vezérlők (adapterek, kontrollerek)

Digitális Technika I. (VEMIVI1112D)

Számítógép architektúrák 2. tétel

A PC története. Informatika alapjai-9 Személyi számítógép (PC) 1/12. (Personal computer - From Wikipedia, the free encyclopedia)

Az integrált áramkörök kimenetének kialakítása

Nagy adattömbökkel végzett FORRÓ TI BOR tudományos számítások lehetőségei. kisszámítógépes rendszerekben. Kutató Intézet

Operációs rendszerek MINB240. Bevitel-Kivitel. 6. előadás Input és Output. Perifériák csoportosításá, használat szerint

A számítógép főbb részei és jellemzői központi egységnek perifériák

Átírás:

Számítógép architektúrák A memória

Tartalom Félvezető tárolók DRAM, SRAM ROM, PROM Tokozások, memóriamodulok Lokalitás elve Gyorsítótárak (cache) A memória Vadász, 2007. Ea7 2

A memória Tár: programok és adatok tárolására. Címezhető cellák. Központi tár: (gyors) memóriabuszon v. a rendszerbuszon keresztül kapcsolódik a processzorhoz Memória a perifériavezérlőkön is! Ezek is címezhetők! Néha címtartományuk egybeesik, néha nem. Később figyeljük meg a memória-hierarchiát! A memória Vadász, 2007. Ea7 3

A tárak implementációja Régebben ferritgyűrüs tárak: mágnesezhetőség-fluxusváltás elven. Nem felejtettek. Ma már magas-integráltságú félvezetős lapkák (milló számú tranzisztor[-kondenzátor] hálózata, tokban), memória modulra szerelve ciklikus működés! Két trend: kapacitás növelés, elérési idő csökkentés. DRAM density CPU speed DRAM speed idõ A memória Vadász, 2007. Ea7 4

Magnetic-core memory A memória Vadász, 2007. Ea7 5

A tárak implementációja DRAM density CPU speed DRAM speed idõ A memória Vadász, 2007. Ea7 6

Megjegyzések A kiszolgálási idő két összetevője: (1) access time, a memória modulhoz beérkező kérelemtől a rendelkezésre állásig eltelt idő (a memória modul válaszideje). Ez nagyságrendileg 50-150 nsszokott lenni; (2) a memória buszbeli(és a chipset-beli) idő. Ez átlagosan, nagyságrendben 125 ns. Ezzel egy átlagos kiszolgálási idő: 195 ns. Vessük össze egy (átlagos) L2 cache (ez CPU-n kívüli, external cache) kiszolgálási idővel, nos ez 45 ns. Az SDRAM-ok megjelenése óta a sebességet MHz-ben adják meg. Még egy kis hamisság : a lapkákra lehet írva ns-ban idő: nos, az a ciklusidő!!! Azaz 15 ns 66 MHz; 10 ns 100 MHz; 8 ns 133 MHz sít. (Szóval ez a busz ciklus ) A valódi memóriaelérési sebesség a buszciklus szorozva a szószélességgel (MHz* bit) Pl. 100 MHz lapka, 64 bites busz = 6400 Mbit/s = 800 MByte/sec sebesség RDRAM 800 MHz, 16 bites = 1,6 GByte/sec A memória Vadász, 2007. Ea7 7

A félvezető tárolók RAM: Random Access Memory random: egy cella elérése nem függ a többitől, tetszőlegesen bármelyiket címezhetjük. (Nem pl. szekvenciális elérésű) Sorokból ás oszlopokból álló háló, elemei a cellák DRAM: Dynamic RAM Egy cella egy tranzisztor-kondenzátor pár, egy bithez. Dinamikusság: a kiolvasás-beírás, a frissítés is dinamikus, időt igénylő. Írható-olvasható, táp megszűnésével felejt. MOS, CMOS, NMOS technológiák. A memória Vadász, 2007. Ea7 8

Egy cella C kapu... Bit Line Word Line Sense Amp Írás: Állíts a bit vonalra magas v. alacsony szintet (a beírni kívánt bit szerint); Nyisd a kaput: megfelelően feltöltődik a C Olvasás: Állítsd a bit vonalat fele feszültségre; Nyisd a kaput; A C szintjétől függően a bit vonal feszültsége elmozdul, amit a Sense Amp érzékel. A memória Vadász, 2007. Ea7 9

DRAM áramkörei Sorokból ás oszlopokból álló háló, elemei a cellák A lapkában további speciális áramkörök segítenek Cellák sor/oszlopainak kiválasztására (r/c address select/decoder, sor/oszlop cím bufferek) A cellákból kiolvasott jelek tárolására (sens amplifiers: elérési tranzisztorok, output buffers) Frissítési szekvenciák nyomon követésére (counter) A cellák írására, töltésük megemelésére (write enable) Kívülről segíthet a memória kontroller (esetleg CPU) Memória típus, sebesség, mennyiség azonosítás, hibakezelés A memória Vadász, 2007. Ea7 10

DRAM logikai felépítés A Cím buffer Sor dekódoló ó Oszlop dekódoló Elérési tr.-ok Memória mátrix Word Line Bit Line Cella Ad dat ki Adat be D Q A memória Vadász, 2007. Ea7 11

Egy 4 x 4-es mátrix (1 bit adat) Frissítés (visszaírás) Olvasás Írás A memória Vadász, 2007. Ea7 12

kapu C Word Line Egy cella. Bit Line.. Sen se Amp IBM A memória Vadász, 2007. Ea7 13

DRAM operációk Tipikus memóriaelérés (olvasás): Sorcím a cím-lábakon RAS jel leesik: sorcím rögzül a sor-cím-bufferben és az elérési tranzisztorok (sens amps) aktíválódnak; a RAS jel stabilizálódásával a teljes sor celláinak értékét felveszik az elérési tranzisztorok; Oszlopcím a cím-lábakon CAS jel leesik: oszlop cím rögzül az oszlop-cím-bufferekben; a CAS stabilizálódásakor a kiválasztott rész töltődik az output bufferba. RAS CAS A D A memória Vadász, 2007. Ea7 14

DRAM operációk -olvasás IBM A memória Vadász, 2007. Ea7 15

DRAM operációk -írás IBM A memória Vadász, 2007. Ea7 16

DRAM olvasás módosítás -írás IBM A memória Vadász, 2007. Ea7 17

Technológiák Fast Page Mode(FPM)RAM (egy sorcímzés mellett több oszlopcímzés), Extended Data Out (EDO) Burst Extended Data Output (BEDO) RAM (egy sorcímzés, egy oszlopcímzés mellet 4 adatcella) (dual bank, de az EDO halála miatt elavult) SDRAM: Synchronous DRAM (mehetünk a 66-100MHz fölé) A mem zárolja a CPU-tól jövő cím, adat és kontrol infókat, autonóm módon dolgozik (a system clock kontrollja alatt), mialatt a CPU csinálhat mást. Valamennyi idő (latency) után az outputon ott az eredmény (pipeline) ESDRAM(Enhanced ): a szokásos SDRAM lapkán kisebb SRAM cache is van (akár 200 MHZ is) DDR: 2-burst-deep prefetch buffer, DDR2: 4, DDR3: 8 1Gb DDR3: 1 row 2,048 bit (256 Byte) A memória Vadász, 2007. Ea7 18

DRAM Fast Page Mode Read IBM A memória Vadász, 2007. Ea7 19

DRAM EDO (Hyper Page) Mode Read IBM A memória Vadász, 2007. Ea7 20

DDR SDRAM A memória Vadász, 2007. Ea7 21

Bemutatás éve Roadmap Technológia Sebesség határ Max Bps 1987 FPM 50 ns 176 MBps 1995 EDO 50 ns 186 Mbps 1997 PC66 SDRAM 60-66-83 MHz 240 MBps 1998 PC100 SDRAM 100 MHz 400 MBps 1999 RDRAM 800 MHz 1,6 GBps 1999/2000 PC133 SDRAM 133 MHz 532 MBps 2000 DDR SDRAM 266 MHz 1064 MBps A memória Vadász, 2007. Ea7 22

A piaci arányok SDRAM DDR RDRAM EDO DDR2 2002 55% 39% 5% 1% 2003 13% 81% 3% 3% 2004 8% 83% 2% 9% 2005 5% 58% 2% 35% A memória Vadász, 2007. Ea7 23 http://www20.tomshardware.com/motherboard/index.html

Félvezető tárolók... ROM: Read Only Memory: csak olvasható. Ez is cellák hálózata, oszlop-sor tömbbe rendezve, diódák a cellákban, összekötést adnak ( 1 bit), nincs összekötés (0 bit). Kikapcsolva nem felejt a lapka. Elérések itt is random jellegűek. (oszlop-sor kiválasztás). Címtartományuk, címezhetőségük egybeeshet a DRAMokkal: a (központi) memória részben ROM-okból, részben DRAM-ból állhat. PROM, EPROM: Beégethető a tartalom, EPROMnál törölhető és újraírható... A memória Vadász, 2007. Ea7 24

Félvezető tárolók... PROM(Programmable ROM) Sor-oszlop háló, a cellákban olvadó biztosíték (fuse), Beégethető a tartalom. EPROM(Erasable PROM) törölhető és újraírható... Cellákban két kapus FET (Field- Effect Transistot) Floating gate (negatívra töltve zár) Control gate Köztük oxidréteg 1 bit: összekötve a bit-és word line 0 bit: a kapu zárva A memória Vadász, 2007. Ea7 25

Félvezető -EPROM A memória Vadász, 2007. Ea7 26

Félvezető tárolók... EEPROM(Electronical Erasable PROM) Mint az EPROM, de nem UV fény töröl. Lassú, mert 1 bájtot lehet egyszerre törölni, újraírni FLASH memory Ez valójában EEPROM, de egyszerre blokkot (512-x kilo bájtot) lehet újraírni. Már elég gyors. A memória Vadász, 2007. Ea7 27

Félvezető tárolók Solide State Drive FLASH memory NOR flash Memory wear: 100 000 program-erase(p/e) cycles Nem sor, hanem csak 1 bit egyszerre Erasuresets (all) bits, programming can only clear bits: 1111 1110 1010-0010, finally 0000 NAND flash Cell read-out: a voltage intermediate between the threshold voltages is applied to the CG, and the MOSFET channel will conducting or remain insulating, depending on the V T of the cell, which is in turn controlled by charge on the FG. A memória Vadász, 2007. Ea7 28

Félvezető tárolók Solide State Drive NAND Flash programozás (tunneling) A memória Vadász, 2007. Ea7 29

Solide State Drive kapacitás növelés NAND Flash, elrendezés 2D 3D A memória Vadász, 2007. Ea7 30

Solide State Drive kapacitás növelés NAND Flash csíkszélesség (azonos kapacitás esetén) A memória Vadász, 2007. Ea7 31

Solide State Drive kapacitás növelés Csíkszélesség gond az élettartam (endurance) A memória Vadász, 2007. Ea7 32

Solide State Drive kapacitás növelés Állapotok számának növelése (SLC:1, MLC:2, TLC:3 bit) A memória Vadász, 2007. Ea7 33

Solide State Drive kapacitás növelés Gond az élettartam (endurance) NAND típus (20nm) SLC MLC TLC (3-bit MLC) Cellánkénti bitek száma Max. programozási ciklus 1 2 3 100 000 3000 1000 Olvasási idő 25 µs 50 µs 75 µs Írási idő 200-300 µs 600-1200 µs 900-1600 µs Törlési idő 1,5-2 ms 2-3 ms 4,5-5 ms Megoldás: tartalékok és használat kiegyenlítés (wear-leveling algorithms) A memória Vadász, 2007. Ea7 34

Félvezető tárolók... SRAM: Static Random Access Memory ezek is írhatók, olvashatók, random elérésűek, kiolvasási idejük hallatlanul gyors, de drágákés energiaigényesek(ezért melegednek, hűtendők!) gyorsító-tárakhoz (cache) használják. egy cellájuk 4-6 tranzisztorból álló flip-flop áramkör. Nincs bennük kondenzátor. (Olyanok, mint a CPU-k regiszeterei) A memória Vadász, 2007. Ea7 35

RAM Memória (összefoglalás) DRAM(Tokozott magas integráltságú áramköri lapkák) FPM, EDO, BEDO DRAM SDRAM, ESDRAM DDR, DDR2, DDR3, DDR4 RDRAM SRAM ROM FLASH PROM EPROM, EEPROM A memória Vadász, 2007. Ea7 36

A DRAM lapkák tokozása DIP: Dual In-Line Package SOJ: Small Outline J-lead TSOP: Thin Small Outline Package CSP: Chip Scale Package Ball grid array (BGA) A memória Vadász, 2007. Ea7 37

Memória modulok Memória modulok (MM) hordozzák a lapkákat. Szabványok. Az alaplap(ok) foglalatába helyezhetők. Single In-line MM (SIMM) 32 bites CPU-khoz 72 érintkező a modulon Dual In-line MM (DIMM) 128, 184, 240 láb, 64 bites CPU-khoz is Small Outline DIMM (SODIMM) 144 (72) érintkező, sokkal kisebb, notebookokhoz Rambus (RIMM, SORIMM) 16 bites adatösvény, pipelining, gyors DDR400(800 MHz-es frontside bus chipsethez) A memória Vadász, 2007. Ea7 38

30 pin-es SIMM (~1990) 72 pin-es SIMM (mid1990) A memória Vadász, 2007. Ea7 39 128 pin-es DIMM (~1997) 184 pin DDR DIMM (~2000) 184 pin DDR DIMM (~2002) 240 pin DDR2-800 DIMM 1 bit 8 bit 64 bit History

Bár növeljük a frekvenciát A memória időzítések (amit lehet, kell állítani) a nagyobbak a rosszabbak SDRAM: 2,5-2-2-5 (t CL -t RCD -t RP -t RAS ) DDR (200): 2,5-3-3-8 2.5V 2-burst-deep prefetch buffer DDR2 (400): 5-5-5-15 1.8V 4-burst-deep DDR3 (800): 9-9-9-24 1.5V 8-burst-deep t CL CAS Latency: a CAS leesése utáni várakozás ideje, szokásosan 2, 2.5, 3 ciklus. Miután ez letelik, az adat a DQ lábakra került. t RCD RAS to CAS Delay: RAS leesés utáni várakozás, amíg a CAS jelet lehet küldeni. Szokásosan 2, 3 ciklus t RP RAS Precharge: Ezalatt az idő alatt a vezérlő ismét deaktiválja a sort. t RAS Active to precharge delay: ezalatt a sor aktív kell legyen, Csak ezután lehet deaktíválni. 5 8 ciklus szokott lenni. Teljesülnie kell: t RCD + t CL < t RAS http://www.tomshardware.com/2007/10/03/pc_memory/ A memória Vadász, 2007. Ea7 40

Növeljük a teljesítményt Szélességnövelés, pipelining, bursting Dual channel (párhuzamosítás) If you want maximum memory performance, you should install two memory modules into two different memory channels to have it run in dual-channel mode. This doubles memory bandwidth by providing a 128-bit data bus. Gyorsítótárak (cache) alkalmazásával Asszociatív tárak alkalmazásával Installing two memory modules into the same channel of the memory controller will force it into single-channel mode. A memória Vadász, 2007. Ea7 41

A gyorsítótárak (caches) A programok lokalitása: tapasztalat Kisebb kapacitású, de a CPU-hoz közelebbi és gyorsabb (SRAM) memória, amiben a központi memória tartalom egy része szintén megvan. A CPU egyszerre címzi a cache-t is, a központi memóriát is: ha találat van a cache-ben, csak onnan vesz! gond lehet az adat-konzisztencia! cache sín CPU lapka L1 cache regiszterek ALU Nagyságrendek: L1 cache (a CPU lapkában), 10 ns, 4-16 KB L2 cache (SRAM), 20-30 ns, 2-16 MB MM (valamilyen RAM) 50-60 ns, 1-8 GB HD 12 ms, 0.5-4 TB rendszer sín Memória sín L2 cache MMU Mem vezérlő Memória A memória Vadász, 2007. Ea7 42

A lokalitás elve Principle of Locality Processzek statisztikailag megfigyelhető tulajdonsága, hogy egy idő-intervallumban címtartományuk egy szűk részét használják A 80/20 szabály:egy processz a Időbeli lokalitás kódja-adatai 20 %-át használja Hivatkozott címeiket újra életének 80 %-ban Térbeli lokalitás Közeli címeiket Az elv érvényesülése miatt van értelme kisebb, de gyorsabb átmeneti tárolók használatának Gyorsítótár; munkakészlet; TLB; diszk buffer cache A memória Vadász, 2007. Ea7 43

Lokalitás elve (illusztráció) Processzfutása során instrukciók sorozatát hajtja végre (instrukció hivatkozás sorozat), Az instrukciókban memória-hivatkozások lehetnek (adat hivatkozás) A hivatkozások sorozata a hivatkozási lánc (Reference String): ω= r 1, r 2, r t, r T # r t : instr. vagy adat hiv. A memória Vadász, 2007. Ea7 44

for(i=1; i<=n; i++) a[i]=b[i]+c[i]; // n=1000 legyen A gépi nyelvű program regiszteres gépen kb: Cím Kód/adat Megjegyzés 4000 LOAD (R1), ONE R1 index reg inicializálás 4001 LOAD (R2), n R2 határ reg inicializálás 4002 COMP R1, R2 i > n tesztelés 4003 JG 4009 Feltételes ugrás 4004 LOAD (R3), B[R1] B[i] betöltés R3-ba 4005 ADD (R3), C[R1] Összeadás 4006 STOR A[R1], (R3) A[i]-be tárolás 4007 ADD (R1), ONE I inkrementáció 4008 JUMP 4002 Ciklus újra 4009 Ciklus után Lokalitás elve (illusztráció) Cím Kód/adat 6000-6999 Tárolóhely A számára 7000-7999 Tárolóhely B számára 8000-8999 Tárolóhely C számára 9000 ONE 9001 Tárolóhely n számára Ekkor a hivatkozási lánc a következő (összesen 9 instrukció-hiv. ebből 7-re 1000-szer: 4000, 9000, 4001, 9001, (4002, 4003, 4004, 700i, 4005, 800i, 4006, 600i, 4007, 4008) 1000 4002, 4003, 4009 A memória Vadász, 2007. Ea7 45

Lokalitás elve (illusztráció) Ugyanez virtuális memória menedzselésnél, lapozós rendszerben Legyen a lapméret 1000, a virtuális cím: v= (p, o) (pl a[16] 6015 címe ekkor v=(6, 15) ) Ekkor a lapok hivatkozási lánca (összesen 5 lap): 4, 9, 4, 9, (4, 4, 4, 7, 4, 8, 4, 6, 4, 4) 1000 4, 4, 4 Kisméretű munkakészlet esetén sem valószínű a laphiba. A memória Vadász, 2007. Ea7 46

Gyorsítótárak szintjei A gyorsítótár koncepció minden két szint között lehetséges, ahol a felsőbb szint gyorsabb, bár kisebb kapacitású. Az alsóbb szinthez fordulás gyakorisága csökkenni fog. Level 1 CPU-n belül ~ 10 ns 4 16 KB Level 2 Központi memória Diszkek SRAM cache sínen DRAM memória sínen Mágneses+mech I/O sínen ~ 20-30 ns 2 16 MB ~ 60-195 ns Internet Hálózaton ~ 1 s - 128 8192 MB ~ 10-12 ms 0.5 6 TB szinte határtalan A memória Vadász, 2007. Ea7 47

A klasszikus gyorsítótár A CPU és a központi memória között Hardveres megoldás, még az OS számára is láthatatlan Mostanában két szintes (L1, és L2 szint), néha három Gyakori a szétválasztott adat-és instrukció gyorsítótár megoldás (Neumann elvet sért, de gyorsít!) A cache tervezés során ügyelni kell az adat konzisztenciára (ugyanaz a tartalom mind gyorsítótárban, mind a központi memóriában) Címzés során mind a cache, mind a M címződik. Ha találat van a cache-ben (cache hit). Szó transzfer. ha nincs találat (cache miss). Cache miss penalty fogalom. Blokk transzfer. Memória írás (store) probléma: konzisztencia biztosítás A memória Vadász, 2007. Ea7 48

A regiszter, a cache és a M struktúra Központi memória (n szó) Regiszter fájl (valahány szó) A cache sorok készlete (c sor) 0 címke k szóból álló blokk 1 0 1 2 3 k szóból álló blokk Szó átvitel c-1 Blokk átvitel A címzés és találat (hit) során kiderül, mely cache sorban van a címzett szó. A címzés és miss esetében teljes k szóból álló blokk átvitele történik. 2 n -1 A memória Vadász, 2007. Ea7 49

Blokkos cache Cím Cimke Index Cache Cimke Szó Szó blokk Kompar. A memória Vadász, 2007. Ea7 50

A cache tervezés A cache mérete A blokk mérete Újonnan felhozott adat használatának valószínűsége A cache-ből kicsorduló adat újrafelhasználásának valószínűsége Mapping: mely cache helyet foglaljon el egy-egy blokk Replacement algoritmus: mely blokk kerüljön ki a cache-ből, ha egy újnak kell a hely (LRU: Least Recently Used) Write Policy (store során) Memóriába is írjunk, ha cache blokkba írtunk, Csak akkor írjunk a memóriába, amikor a blokk helyére új kerül (replacemented). Write Buffer-es cache. A memória Vadász, 2007. Ea7 51

Egyszerű és Write Bufferes Cache CPU Data CPU Address Data Address Instruction Cache Cache Data Cache Write Buffer Main Memory Main Memory A memória Vadász, 2007. Ea7 52

Az asszociatív tár Tartalom szerint címezhető tár Translation Lookaside Buffer A CPU-hoz közeli tár, a memóriamenedzselést segíti Majd az OS tárgyban vesszük. A memória Vadász, 2007. Ea7 53

A memória hierarchia Gyorsabb elérés Drágább Kisebb kapacitás regs cache main memory Ezeket a CPU közvetlenül kezeli másodlagos tár, diszkek File system és paging/swapping harmadlagos tár, szalag, CD Archiválás A memória Vadász, 2007. Ea7 54

Számítógép architektúrák A memória VÉGE