# Paměťový systém ### Přehled polovodičových pamětí - dělení - nevolatilní - jednorázově programovatelné - ROM, PROM, OTP EPROM - mazatelné - EPROM, EEPROM, Flash - volatilní - statické RAM - CMOS, rychlé CMOS - dynamické RAM - asynchronní - synchronní **ROM** - Read Only Memory - pouze ke čtení, programovatelné jen u výrobce při výrobě - efektivní jen ve velkých sériích, nejsou časté **PROM** - Programmable ROM - programovatelné jednorázově u uživatele **EPROM** - Erasable PROM - probramovatelné u uživatele - lze opakovaně mazat UV zářením (cca 100x, v pouzdře je okénko) **EEPROM** - Electrically Erasable PROM - v normálním provozu jen pro čtení - lze elektricky vymazat a znovu naprogramovat (cca 100 000x) - vyžaduje speciální pomalé postupy - trvanlivost uložených dat cca 10 let - kapacita řádově 1 MB **Flash EEPROM** - v normálním provozu jen pro čtení - lze je elektricky vymazat a znovu naprogramovat - vyžaduje (poměrně pomalé) speRead-Write Memoryciální postupy - kapacita řádově 10-100 MB - nejedná se o Flash disky, ty využívají AND Flash **Porovnání EEPROM a Flash** | | EEPROM | Flash | | ----------------------------- | ---------------- | ------------ | | zápis bez předchozího smazání | ano | ne | | mazací cyklus | 20 ms | 100 ms - 1 s | | zápis dat | 10 ms | 10 μs | | počet mazacích cyklů | 10 000 - 100 000 | 1 000 000 | **Statické paměti RWM** (Read-Write Memory) - někdy též RAM (Random Access Memory) nebo SRAM (Static RAM) - **volatilní paměti** - pro udržení dat potřebují trvalé napájení - dvě verze - CMOS SRAM s nízkým příkonem (low power) - možnost převést do velmi úsporného režimu - rychlé synchronní CMOS SRAM (fast) - kapacita řádově 1 MB **Dynamické RAM** (DRAM) - **volatilní paměti** - pro udržení dat můsí být jejich obsah periodicky obnovován - velká kapacita (až 1024 MB) při nízké ceně - pro vyšší rychlosti v synchronních verzích (SDRAM) ### Použití polovodičových pamětí - paměť sestavena z mnoha paměťových buňek - konstrukce buňek podle typu paměti (EEPROM, SRAM, ...) **Použití paměti Flash** - čtení - jednoduchý čtecí cyklus na sběrnici - zápis - několik zápisových cyklů na sběrnici **Použití pamětí SRAM** - nízkopříkonové SRAM - snadný zápis i čtení **Dynamické paměti** (DRAM) - paměťová matice je přibližně čtvercová ($2^n \times 2^n$ buňek) - adresa řádku a sloupce se do paměti zapisuje postupně - může mít oddělený vstup a výstup dat + čtecí cyklus - na adresních vodičích předána adresa - signálem /RAS se přečte celá řádka z paměťové matice - signálem /CAS se vybere jedno z přečtených slov - poté aktivuje výstupní budiče dat - po zrušení /RAS a /CAS provede paměť zpětný zápis do paměťové matice - cyklus Read-Write-Modify - umožňuje v jednom cyklu přečíst i zapsat data na stejnou adresu + stránkové režimy - umožňuje přečíst data z celé řádky při jediné aktivaci /RAS - podobné též stránkový zápis - zotavování - každá buňka se musí zotavovat podle typu po cca 10-60 ms - při čtení nebo zápisu se automaticky zotaví celá řádka - zotavovací cykly - RAS only - používá vnější čítač pro zotavení - CAS Before RAS (CBR) - používá vnitřní čítač pro zotavení - časování - při zotavovacím cyklu není možný přístup do DRAM - čtecí/zápisový cyklus prodloužen signálem /WAIT + zapojení paměti + adresa z CPU se rozdělí na řádkovou a sloupcovou část + přepínač adres postupně připojuje obě části adresy na adresní vstupy paměti + podle potřeby se na adresní vstupy připojuje registr adresy zotavení **Synchronní DRAM** (SDRAM) - k synchronizaci adresy, povelu a dat se používají hodinové signály CK a DQS - při čtení/zápisu se čte/zapisuje paralelně 2, 4 nebo 8 slov - přenos dat paměť ↔ vnější obvody se provádí po slovech (např. 36 bitů) - příkazy kódovány signály /RAS, /CAS a /WE