Obsah

Export page to Open Document format

04 - Hierarchie pamětí v počítači

Paměti v počítači

Hierarchie pamětí

Základní pojmy

Výběr z paměti

Další téma, které se zabývá pamětmi naleznete zde. Konkrétně se jedná o správu pamětí.

Jednotlivé typy pamětí

ROM

Struktura ROM

RWM

Struktura RWM

Bipolární a unipolární tranzistory

SRAM

Struktura SRAM

Čtení a zápis asynchronní SRAM
  1. acces time - ta - říká nám, za jak dlouho můžeme vyzvednout data na datové sběrnici ⇒ nesmíme do paměti posílat data moc rychle

SRAM - čtení

  1. address setup time - čas, za jaký bude adresa na sběrnici stabilizovaná ⇒ až pak můžeme dát Write Enable (WE)
  2. data setup time - čas, po který musí být dostupná platná data, aby se stihlo zapsat
  3. data hold time - po zrušení čtení musí být data ještě nějakou dobu platná
  4. address hold time - čas po ukončení zípisu, kdy musí být ještě dostupná adresa

SRAM - zápis

Adresování dvou a více pamětí

Adresování pamětí

  1. všechny paměti musí být připojeny na datovou sběrnici
  2. každá paměť musí mít připojeny příslušné řídící signály (v závislosti na typu)
  3. všechny paměti musí být připojeny k adresovému dekodéru, který bude určovat, která paměť bude aktivní v daném čase (vytvoří nám adresový prostor)
  4. pokud budeme mít např 16 bitové adresy, např:
    1. nejvyšší tři bity použijeme pro adresový dekodér ⇒ určí nám paměť (bank ⇒ v tomto případě jich může být 8)
    2. ostatní bity se použijí pro zvolenou paměť ⇒ pro adresování v ní

DRAM

Struktura prvku DRAM

Struktura DRAM

Obnovování položek

Flash

NAND a NOR Flash nesouvisí s NAND a NOR u polovodičů. Název je odvozen pouze od podobné struktury

Hierarchie

Výkonová mezera mezi DRAM a CPU

Cache

Hierarchie

RVP s přímým mapováním

RVP - přímé mapování

příklad

  1. máme cache o velikosti 1024 položek
  2. máme paměť 32 bit kde každá položka má 4 Byty (berme, že se budou chtít adresovat jednotlivé Byty)
  3. máme 32-bit adresování

Jakou kapacitu je třeba vyhradit pro paměť cache?

RVP - přímé mapování - 32 bit

  • na adresování v položce budeme potřebovat 2 bity, protože položka má 4 Byty (pro každý Byte)
  • na adresování v RVP budeme potřebovat 10 bitů (adresujeme 1024 položek)
  • zbylých 20 bitů bude vymezeno pro tag
  • paměť tedy bude muset mít 20 bitů pro tag mít 20 bitů pro tag
  • ⇒ 1024 položek * (20 + 32 + 1 bit platnosti)
  • práce procesoru, když hledá data:
    1. vezme 10 bitů a naadresuje se příslušná položka
    2. porovná 20 bit tag s horními 20 bity adresy
    3. pokud OK, zkontroluje se bit platnosti, zda je nastaven na log 1
      1. pokud je nastaven do log 1 ⇒ generuje se hit
      2. pokud je nastaven na log 0 ⇒ musí se nahrát do paměti nový blok a starý blok se musí nahrát zpět, pokud byl měněn
  • celkový počet bloků o velikosti 32 bit je 230 ⇒ do RVP se vejde takových bloků 210dolní odhad pravděpodobnosti úspěchu je phit = 210/230 = 2-20 ⇒ díky lokalitě odkazů se v praxi dosahuje hodnot phit 0,9 až 0,98

Vícecestné RVP

RVP - přímé mapování - 32 bit

Virtuální paměť

Toto už předpokládám, že je v IOSu.

Zdroj

Při tvorbě tohoto tématu jsem čerpal především ze slajdů INP - inp2010_13pameti.pdf a inp2010_14pam_hier.pdf. K pochopení slajdů mi pomohly příslušné záznamy - INP_2009-11-10.avi a INP_2009-11-24.avi

Potvrzení

04
Celé jménoOK!!!
Jirka Hynek2011-03-02 16:36:07 
vagy2011-03-03 16:02:27 
Tom Ofeig2011-05-02 21:41:42 
 3