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

Hasonló dokumentumok
Digitális rendszerek. Memória lapkák

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

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

elektronikus adattárolást memóriacím

(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.

Digitális rendszerek. Digitális logika szintje

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

Mikrorendszerek tervezése

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

Architektúra, memóriák

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

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

SZORGALMI FELADAT. 17. Oktober

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

SZÁMÍTÓGÉP ARCHITEKTÚRÁK

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

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

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

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 fajtái. 1) személyi számítógép ( PC, Apple Macintosh) - asztali (desktop) - hordozható (laptop, notebook, palmtop)

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

Magas szintű optimalizálás

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

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

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

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

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

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:

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

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

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

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

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

Apple számítógépek összehasonlító táblázata

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.

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

Processzor (CPU - Central Processing Unit)

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

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

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

Számítógépes alapismeretek

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?

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

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

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

A számítógép hardverelemei - Operatív tárak beépítése, kiszerelése, karbantartási feladatok

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

efocus Content management, cikkírás referencia

Számítógép memóriák összehasonlító szimulációs vizsgálata. Diplomaterv sorszáma: 550/2015

Alapismeretek. Tanmenet

Bepillantás a gépházba

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

SZÁMÍTÓGÉP ARCHITEKTÚRÁK

Dell Inspiron 580s: Részletes műszaki adatok

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

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

Alapismeretek. Tanmenet

A mikroprocesszor felépítése és működése

Négyprocesszoros közvetlen csatolású szerverek architektúrája:

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

Alapismeretek. Tanmenet

Autóipari beágyazott rendszerek CAN hardver

Informatika érettségi vizsga

Dr. Oniga István DIGITÁLIS TECHNIKA 9

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

A számítógép fő részei

Digitális eszközök típusai

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

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

Dr. Oniga István DIGITÁLIS TECHNIKA 9

5.1. fejezet - Általános 32 bites mikrovezérlő/processzor alkalmazástechnikája A Freescale

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

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

Dr. Oniga István DIGITÁLIS TECHNIKA 8

A számítógép. A számítógép olyan, mint az ószövetségi Isten számos szabály, és semmi könyörület! A számítógép olyan, mint az ószövetségi Isten

Digitális technika (VIMIAA01) Laboratórium 9

Digitális technika (VIMIAA01) Laboratórium 9

Tájékoztató. Használható segédeszköz: -

Digitális technika VIMIAA01 9. hét Fehér Béla BME MIT

Digitális technika VIMIAA01 9. hét

Periféria illesztés. BME-MIT FPGA labor

Software Defined technológiák használata Oracle adatbázis konszolidációhoz

TestLine - zsoltix83tesztje-01 Minta feladatsor

Dr. Illés Zoltán

INVERSE MULTIPLEXER RACK

Programozó- készülék Kezelőkozol RT óra (pl. PC) Digitális bemenetek ROM memória Digitális kimenetek RAM memória Analóg bemenet Analóg kimenet

A személyi számítógép felépítése

Hardver elemek. MOSFET PC-k legfontosabb építőköve a MOSFET-nek nevezett tranzisztortípus:

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

1. Milyen eszközöket használt az ősember a számoláshoz? ujjait, fadarabokat, kavicsokat

Digitális technika (VIMIAA02) Laboratórium 5

Digitális technika (VIMIAA02) Laboratórium 5

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

ismerd meg! A PC vagyis a személyi számítógép

SZÁMÍTÓGÉP ARCHITEKTÚRÁK

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

SZÁMÍTÓGÉP ARCHITEKTÚRÁK

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

Hordozható számítógép, noteszgép szó szerint: ölbevehető. Síkkijelzős, telepes, hordozható számítógép. (Informatikai fogalomtár)

Digitális rendszerek. Mikroarchitektúra szintje

Átírás:

Memória technológiák Horváth Gábor 2017. március 9. Budapest docens BME Hálózati Rendszerek és Szolgáltatások Tanszék ghorvath@hit.bme.hu

Hol tartunk? CPU Perifériák Memória 2

Mit tanulunk a memóriákról? Motiváció: Neumann-architektúrában szűk keresztmetszet Témakörök: Memóriatechnológiák DRAM, SRAM, memóriamodulok, többcsatornás memória-vezérlők, időzítések, DDR1-2-3, GDDR, stb. Virtuális tárkezelés Ha a valós memória mennyiségét a programok elől el akarjuk takarni Gyorsítótár (cache memória) A gyakran használt tartalmak elhelyezése egy gyors, de kicsi tárban 3

Memória technológiák Egyetlen bit tárolása: SRAM-mal DRAM-mal 4

Statikus RAM (SRAM) Felépítés: A két inverter: Olyan, mint egy flip-flop! A két tranzisztor: Ha a WL aktív, zárnak Tárolt bit: BL-re, negáltja: BL-re 5

Statikus RAM (SRAM) Felépítés: 6 tranzisztor kell 6T 6

Statikus RAM (SRAM) Olvasás: BL-t és BL-t logikai 1-re állítjuk (előfeszítés) (mert 1 0 gyorsabb, mint 0 1) WL-re logikai 1 Bit értéke: BL-re, negáltja: BL-re Érzékelő erősítők: BL és BL különbségét figyelik Írás: BL-t és BL-t a tárolni kívánt bit értékre kényszerítjük WL-re logikai 1 A kényszerítés erősebb, mint az inverterek 7

Dinamikus RAM (DRAM) Felépítés: 1 kondenzátor: Töltött: bit=1, üres: bit=0 1 tranzisztor: Ha a WL aktív, a BL-re zárja a kondenzátort 1T1C felépítés 8

Dinamikus RAM (DRAM) Olvasás: BL-t 0 és 1 közé félútra töltjük (precharge, előfeszítés) WL-re logikai 1 Érzékelő erősítők: Merre változik a BL szintje? Nő: bit=1 Csökken: bit=0 Kifolyt a töltés a kondenzátorból! Az olvasás destruktív A végén vissza kell írni bele a kiolvasott bitet Írás: WL-re logikai 1 A BL-en keresztül feltöltjük a kondenzátort, vagy kiengedjük a töltését Frissítés: Magától is elszivárog a kondenzátor töltése! Frissíteni kell (néhány 10 ms-onként) kiolvasás + visszaírás 9

SRAM vs. DRAM Melyik a gyorsabb? SRAM: tranzisztor hajtja a bitvezetéket DRAM: a kondenzátorból kitévelygő elektronok állítják a bitvezetéket és a DRAM-ot még frissítgetni is kell! Gyorsabb: SRAM Melyiknek nagyobb az adatsűrűsége? SRAM: 6T DRAM: 1T1C nagyobb adatsűrűség Mire használják? SRAM: cache DRAM: rendszermemória Melyiket lehet a CPU mellé integrálni? SRAM: könnyen. Csupa tranzisztor, mint a CPU. DRAM: nehezen. Kondenzátort kell csinálni (CPU-hoz nem) edram: CPU mellé tett DRAM 2009, POWER7, 32MB L3 cache edram-ból 2013, Intel Haswell GT3e, 128MB L4 cache edram-ból Konzolok: PlayStation 2, PlayStation Portable, Nintendo Wii U, stb. 10

DRAM alapú rendszermemóriák 11

Áttekintő kép Hogy csináljunk DRAM cellából memóriát? Úgy, hogy nagy, olcsó legyen, kicsi legyen a késleltetése, nagy legyen az átviteli sebessége 12

DRAM bank Felépítése: Cellák mátrixban Egy sor: szóvezetékek összekötve Egy oszlop: bitvezetékek összekötve Olvasás: A sordekóder kijelöl egy sort A sor összes bitjét kiolvassák az érzékelő erősítők A sorból a kívánt oszlopot kiválasztja az oszlop-multiplexer Két-fázisú műveletek: Spórolunk a címbusz szélességével Címbusz: sorcím várunk címbusz: oszlopcím adatbusz: megjelenik az adat 13

DRAM parancsok Az 5 legfontosabb: ACTIVATE Megnyit egy sort (adatok érzékelő erősítőkbe) READ A nyitott sorból olvas egy oszlopot Igazából az érzékelő erősítőkből olvas WRITE A nyitott sorba ír egy oszlopot Igazából az érzékelő erősítőkbe ír PRECHARGE Bezárja a nyitott sort Előfeszíti a bitvezetékeket is, hogy a köv. nyitás gyors legyen REFRESH Frissít egy sort Majdnem egy sormegnyitás+lezárás De ennek nem kell sorcím. Auto-inkremens. 14

DRAM parancsok Példa olvasási kérések: (3. (3. (1. (1. sor, sor, sor, sor, 8. oszlop) 14. oszlop) 3. oszlop) 4. oszlop) Parancsok (tfh. előfeszített): ACTIVATE 3 READ 8 READ 14 PRECHARGE ACTIVATE 1 READ 3 READ 4 15

DRAM időzítések A parancsok végrehajtási ideje 4 legfontosabb: TRCD: A sor megnyitás ideje TCAS (CL): oszlopcím ráadásától az adat megjelenéséig tartó idő TRP: Előfeszítés (PRECHARGE) ideje TRAS: Minimális sor nyitvatartási idő Sok-sok ilyen van még Mértékegység: órajel (szikron DRAM), ns (aszinkron) Boltban veszünk memóriát 8-9-10-11 időzítéssel: TCAS=8, TRCD=9, TRP=10, TRAS=11 Ha csak az van ráírva, hogy CL7: TCAS=7 16

DRAM időzítések Honnan tudja az időzítéseket a memóriavezérlő? Megkérdezi a memóriamodultól Memóriamodul tartalma: DRAM chip-ek...és egy SPD chip! Ebben vannak a jellemzők. 17

Hatékonyság javítása A sor minden kiolvasott oszlopánál: Oszlopcím TCAS adat elvétele Ez túl pazarló! Burst mód Egyszer adok rá oszlopcímet nem egy oszlopot ad, hanem egy egész sorozatot! Burst hossz: konfigurációs paranccsal beállítható Minimum burst hossz: DDR: 2 oszlop DDR2: 4 oszlop DDR3: 8 oszlop DDR4: 8 oszlop Átlapolt parancskiadás és adatátvitel Nem kell megvárni az előző parancsra a választ 18

Hatékonyság javítása Példa: Olvasás az 1-es sor 3. és 9. oszlopától kezdve 19

DRAM chip-ek DRAM chip 20

DRAM chip-ek Egy DRAM chip bankokból áll Bank: Független DRAM cella mátrixok Saját sordekóder, érzékelő erősítő, oszlopmultiplexer Mindegyikben lehet 1-1 nyitott sor Egy DRAM chip-ben több nyitott sor lehet Átlapolt adatátvitel! Átlapolás nélkül: Átlapolással: 21

DRAM chip-ek Bankok nem biteket tárolnak 1 oszlop: 4 bit, 8 bit, 16 bit (x4, x8, x16) Interfész: Parancs vezetékek Mit kell csinálnia Bank kiválasztó vezetékek Melyik bank-ra vonatkozik Címvezeték ACTIVATE: sorcím READ/WRITE: oszlopcím Adatvezetékek 4, 8, vagy 16 bit 22

DRAM memóriamodulok Memóriamodulok 23

DRAM memóriamodulok Egy memóriamodul több DRAM chip-ből áll Parancs, bank kiválasztás, cím: osztott Adatvezetékek: összefogva Minden parancsot minden chip megkap A megfelelő bankokban ugyanazok a sorok vannak nyitva Hatása: Adatátviteli sebesség: 8x Késleltetés: ugyanaz 24

DRAM rank-ek DRAM rank-ek 25

DRAM rank-ek A tárolási kapacitás növeléséhez Független egységek Minden vezetékük osztott Egyszerre csak 1 lehet bekapcsolva chip select vezetékek Hatása: Adatátviteli sebesség: ugyanaz Késleltetés: jobb (több bank, több nyitott sor) 26

Többcsatornás elérés Többcsatornás elérés 27

Többcsatornás elérés Szinkronizált eset Csak akkor megy, ha Azonosak a modulok (darabra, méretre, időzítésekre) Tökéletes szinkron működés 2 db 64 bites csatorna 1 db 128 bites csatorna 28

Többcsatornás elérés Független csatornák esetén Nem szükségesek azonos modulok Annyi független memóriavezérlő, ahány csatorna Implementációk: Első: 60-as évek (Cray, IBM) Legtöbb csatorna: 1995, DEC Alpha, 8 csatorna PC: Core i3/i5: 2 csatorna, Core i7 (900-as széria): 3 csatorna, Core i7 (3000-es széria után): 4 csatorna (megfelelő alaplappal) 29

A memóriavezérlő Memóriavezérlő 30

A memóriavezérlő Feladatai: Memóriakérések kiszolgálása (CPU és perifériák felől) Teendők: Címek leképzése csatornára/rank-re/bankra/sorra/oszlopra Kérések sorrendjének optimalizálása Gazdálkodás a nyitott sorokkal Frissítések 31

A memóriavezérlő Címleképzés: Cél: lehető legkevesebb sorváltás Memóriakérések lokalitása kihasználható Az egybefüggő, sorváltás nélkül elérhető címtartomány legyen nagy Példa: (4 GB, 8 bank/chip, 213 sor/bank, 2 rank, 2 csatorna, 64 bit adatszélesség) 512 kb elérhető sorváltás nélkül 32

A memóriavezérlő Kérések kiszolgálási sorrendjének optimalizálása: Spóroljunk a drága sor nyitás/zárással Sorrendi kiszolgálás (FCFS) Gyorsakat előre (FR-FCFS) FCFS Kérések: Parancsok: (3.sor, 8. oszlop) (1.sor, 3. oszlop) (3.sor, 14. oszlop) ACTIVATE 3 READ 8 PRECHARGE ACTIVATE 1 READ 3 PRECHARGE ACTIVATE 3 READ 14 FR-FCFS (3.sor, 8. oszlop) (3.sor, 14. oszlop) (1.sor, 3. oszlop) ACTIVATE 3 READ 8 READ 14 PRECHARGE ACTIVATE 1 READ 3 33

A memóriavezérlő Gazdálkodás a nyitott sorokkal: Elfogynak a kérések. Bezárjuk az aktuális sort? Ne: Ha ugyanarra a sorra jön a köv. kérés, nem kell megnyitni Ha más sorra jön a köv. kérés, be kell zárni (késleltetés) Igen: Ha ugyanarra a sorra jön a köv. kérés, újra meg kell megnyitni (késleltetés) Ha más sorra jön a köv. kérés, nem kell bezárni Adaptív: Megtippeli, hogy ugyanerre a sorra jön-e a köv. kérés APM (Active Page Management) Core i7: Adaptive Page Closing opció a BIOS-ban 34

A memóriavezérlő A tárolócellák frissítése: Frissítés közben a DRAM nem elérhető Rendszeresen REFRESH parancsot kell hívni Lehetőségek: Egyszerre végigfrissíti az összes sort Hosszú kiesés Időben eloszlatja a REFRESH hívásokat Rövidebb kiesések, egyenletesebb memóriakésleltetés 35

A DRAM technológiák evolúciója 36

DRAM evolúció 15 évvel ezelőttig: aszinkron interfész Ma: szinkron SDRAM Órajelet használ 37

SDR-DDR-DDR2-DDR3 38

SDR-DDR-DDR2-DDR3 Szabványos jelölés: Az ekvivalens SDR órajel megadásával: DDR-400, DDR2-800, DDR3-1600 órajele: 200 MHz A parancsok késleltetése egyenlő!!! csak egyre gyorsabban küldik át az adatot Az adatátviteli sebesség megadásával: pl. DDR2-800: adatátvitel 800 MHz-en, 8 byte/adategység PC2-6400 (800x8 = 6400) pl. DDR3-1600: adatátvitel 1600 MHz-en, 8 byte/adategység PC3-12800 (1600x8 = 12800) 39

DDR4 SDRAM Nincs több órajel többszörözés! Teljesítmény fokozása: Belső órajel növelése (ehhez CRC/paritásbit kell) 8 helyett 16 bank Pont-pont topológia Itt volt az ideje: a DRAM busz az egyik utolsó busz a PC-ben! Minden modul külön csatornán Egy modul 8 rank-ot is tartalmazhat 40

Összehasonlítás SDR DDR DDR2 DDR3 DDR4 66-133 MHz 133-200 MHz 100-200 MHz 100-200 MHz 266-533 MHz Adat/b. órajel 1 2 4 8 8 Adatátv. MB/s 528-1064 2128-3200 3200-6400 6400-12800 17024-34112 Burst hossz 1-8 2-8 4-8 8 8 Bank szám 2-4 2-4 4-8 8 16 Feszültség 3.3V 2.5V 1.8V 1.5V 1.05-1.2V Belső órajel 41

GDDR5 SDRAM Cél: extrém nagy sávszélesség grafikus kártyákhoz Egyszerűbb: Nincs rank, nincs modul Minden chip közvetlenül a vezérlőhöz kötve x32 adatszélesség chip-enként 8 chip 256 bites adatszélesség 16 bank, de bankonként 2 sor lehet nyitva Egyszerre tud írni és olvasni 3 -féle órajel: DRAM cella órajel, pl. 375 MHz Parancsórajel: 4-szeres: 1500 MHz Adatátviteli órajel: 4-szeres: 6 GHz!!! 256 bites adatszélességgel 196 GB/s! Problémák: Ár (4-5-szörös) Rövid chip-vezérlő távolság Nem moduláris / nem bővíthető Melegszik, sokat fogyaszt 42

Összegzés DRAM alapú memóriák: Késleltetéssel problémák vannak (évtizedek óta változatlan) Grafikus kártyának nem fontos CPU-nak nagyon fontos (lenne) Sávszélesség még növelhető (egy darabig) 43