Intel a paměti Flash

Princip pamětí Flash

Paměť Flash je vlastně paměť typu EEPROM (elektricky mazatelná a programovatelná paměť). Je tvořena sítí řádků a sloupců, na jejichž průsečících leží jednotlivé paměťové buňky. Každá z buněk obsahuje jeden unipolární tranzistor, který má nad sebou umístěna dvě hradla, vzájemně izolovaná tenkou oxidovou vrstvičkou. Horní hradlo (řídící) je připojeno na sběrnici řádků a spodní hradlo není připojeno nikam (je plovoucí). Náboj se na toto plovoucí hradlo dostane tunelováním z řídícího hradla. Nenaprogramovaná buňka paměti nemá na plovoucím hradle žádný náboj, a proto se po přivedení výběrového signálu na konkrétní naadresovaný řádek paměti nedokáže paměťový tranzistor otevřít. Buňka si pamatuje logickou hodnotu 1. Pokud však vpravíme do plovoucího hradla náboj (programováním paměti), pak se po výběru řádku paměti dokáží tranzistory naprogramované paměťové buňky otevřít a buňka si tedy pamatuje logickou 0. Mazání paměti spočívá v tom, že se z plovoucího hradla uložený náboj odvede pryč.


Obr. 1: nenaprogramovaná (smazaná) buňka


Obr. 2: naprogramovaná buňka
 
 


Obr. 3: řez strukturou paměťového tranzistoru

Porovnání vlasností různých typů pamětí:

 
  • FLASH
    • nízká cena
    • velká hustota
    • velká rychlost
    • nízký příkon
    • vysoká spolehlivost
  • ROM
    • velká hustota
    • spolehlivost
    • nízká cena
    • programování maskami, jejichž výroba je náročná na čas
    • použití pro velké série
  • SRAM
    • největší rychlost
    • velká spotřeba energie
    • malá hustota
  • EPROM
    • velká hustota
    • pro vymazání musí být vystavena UV záření
  • EEPROM
    • elektricky mazatelná byte po bytu
    • nižší spolehlivost
    • vyšší cena
    • nejnižší hustota
  • DRAM
    • velká hustota
    • nízká cena
    • velká rychlost
    • velká spotřeba

Flash paměti firmy Intel:

Intel využívá dvou vysoce spolehlivých technologií založených na stejné paměťové buňce. Paměti vyrobené první technologií dokáží v každé své buňce uschovat obsah jednoho bitu. Druhá, mnohem modernější, technologie využívá "víceúrovňovou" strukturu buněk. Tato technologie umožňuje uložení dvou bitů informace do jedné paměťové buňky (do jednoho tranzistoru). Aby bylo možné uložit čtyři stavy do jediného tranzistoru, musí být programování (čili uložení náboje do plovoucího hradla) a čtení (snímání velikosti náboje) přesně řízeno. Tuto technologii využívají paměti StrataFlash, které se používají v aplikacích, vyžadujících vyšší paměťové kapacity.
 

Architektura paměťových polí

Flash paměti jsou dostupné v symetrické i asymetrické architektuře (viz. obr. 4). Flexibilní bloková architektura dovoluje systémovou integraci kódu i dat uvnitř jedné paměti. Rodina pamětí Boot Block Flash má asymetrické paměťové bloky - malé bloky (jako EEPOM) pro uložení parametrů nebo bootovacího kódu a efektivnější větší bloky pro uložení kódu nebo dat. Rodiny pamětí FlashFile a StrataFlash mají symetrická paměťová pole, která umožňují nejlepší hospodaření s kódem nebo s daty.


Obr. 4: Diagram mapy paměti symetrických a asymetrických bloků

Režimy činnosti pamětí

Standardní pracovní režimy Flash pamětí jsou čtení, programování a mazání. Firma Intel rozšířila tyto základní režimy přidáním několika dalších vlastností, které umožňují lépe využívat možnosti pamětí. Ne všechny paměti však mají možnost využívat všech režimů a vlastností.
 

Softwarově aktivované vlastnosti

Flash paměti firmy Intel mají několik softwarově aktivovatelných vlastností, které optimalizují kód, zvyšují výkonost systému a pomáhají ochránit integritu informací, uložených v součástce.

Common Flash Interface (CFI) a stavový registr jsou vlastnosti, užívané k optimalizaci kódu. CFI dotazový registr obsahuje neměnná data o součástce, jako jsou velikost bloku, hustota, x8/x16 a elektrická specifikace. Tato vlastnost "katalogu na čipu" umožňuje softwaru se adaptovat na různé typy pamětí. Dále se stavový registr používá k dotazování na stav součástky v průběhu programování, mazání a v přerušovacích režimech. Stavový registr v některých součástkách může také říci, zda je některý blok zamčený.

Stavový registr také pomáhá celkovému výkonu součástky prováděním kontinuálních dotazů na některé bity pro zjištění úspěšného programování nebo mazání. To zvyšuje systémový výkon díky využití pouze vyžadovaného času na dokončení operace a ne nutnost použítí dlouhých časových prodlev, určených maximálními hodnotami v katalogu.

Pro synchronně čtené paměti je čtecí konfigurační registr (RCR) nejzajímavějším softwarově kontrolovaným registrem v paměťovém subsystému. Nastavení RCR dovolí uživateli vstoupit do burst modu, přidá CPU čekací stavy, konfiguruje burst sekvenci/délku a také nastaví hardwarovou konfiguraci signálů CLK# a WAIT#.

Ochrana dat

Ochrana dat ve flash pamětech má velký význam. Některé paměti flash umožňují dynamické hardwarové uzamčení bloků, takže kritický kód může být v bezpečí, zatímco nezajištěné bloky jsou programovány a mazány. Toto uzamykací schéma nabízí dva stupně ochrany. První dovoluje pouze softwarové řízení zajišťování bloků (užitečné pro často měněné datové bloky), zatímco druhé vyžaduje, před tím, než bude zajištění měněno, hardwarový zásah (ochrana málo měněných dat). Tato zajišťovací schopnost je různá podle rodiny výrobků.
 
 

Literatura:

computer.howstuffworks.com
http://intel.com/design/flash/