Malý, velký a „zelený“: životopis SSD disků

Jak klesají ceny pamětí typu flash a stále více se začíná cenit účinné využití energie v segmentech natolik vzájemně vzdálených, jako jsou mobilní telefony a datová centra, přišel pravý čas pro technologii pevných paměťových úložišť SSD (solid state disk). A že to trvalo dlouho. V této podrobné zprávě vás Ars provede minulostí, současností a budoucností SSD disků.

Autorem tohoto článku je Ari Allyn-Feuera a původně byl zveřejněn na stránkách magazínu Ars Technica. Český překlad zajistila společnost Dataconsult společně s výrobcem SSD disků Kingston. Článek přetiskujeme i se svolením původního autora. Pokud dáváte přednost originálu, přečtěte si jej přímo v originálním znění Little, big, and green: a biography of the solid-state disk.

Protože jsou SSD disky stále populárnější, věřím, že vás toto nahlédnutí pod pokličku zaujme.

Pevné tranzistorové disky SSD, které jsou rychlejší a energeticky úspornější než rotující magnetická média, jsou jednou z nejdéle očekávaných a nejdychtivěji žádaných technologií v posledních dvou desetiletích výpočetní techniky. Teoretické základy velkokapacitních pamětí bez pohyblivých součástí známe již několik desetiletí, nicméně příchod vylepšení, jež vynesla SSD na ekonomický i technologický dosah větších segmentů trhu ukládání dat byl pomalý. Jak se bod zvratu přiblížil okamžiku, kdy se síla momentu jeho růstu začne rychle zvyšovat, ohlédněme se za dlouhou cestou k praktickému využití SSD a podívejme se i jaký bude pravděpodobný budoucí pokrok této technologie.

Stručná historie pamětí typu flash

Tranzistorové paměti existují již od úplných počátků výpočetní techniky, ale od dřívější doby, kdy byl kovový prstenec programován pomocí měděných cívek, se změnila celá řada věcí. První technologie energeticky nezávislé (permanentní) polovodičové paměti, kterou by alespoň teoreticky mohlo být možné využít jako disk, byla elektricky mazatelná programovatelná permanentní paměť (EEPROM – Electrically Erasable Programmable Read Only Memory), kterou v roce 1978 vynalezla společnost Intel. Pro ukládání každého bitu informace používala tranzistory s plovoucími hradly a měla samostatné obvody pro čtení, zápis a mazání každé buňky, nicméně i tak technologie EEPROM dosáhla zhruba podobné rychlosti čtení jako paměť RAM, ale bez závislosti na stálém napájení a se schopností mnohonásobného přepisování. Pokud by byla správně zkonstruována, mohla se teoreticky používat jako hlavní způsob pro ukládání dat na PC.

Byly zde však vážné problémy: paměti EEPROM byly pomalé, nákladné, měly velké nároky na spotřebu energie a nebyly trvanlivé. Mazání a přepis jednotlivých bytů v EEPROM může trvat milisekundy (přičemž většinu této doby trvá cyklus mazání), takže systém jako celek by nebyl o mnoho rychlejší než harddisk. Kromě toho by bylo potřeba více než 2.500 původních paměťových modulů Intel 2KB 2816, aby vytvořily stejný objem pro ukládání dat jako harddisk společnosti Seagate ST506 z roku 1980 s kapacitou 5 MB – to vše za cenu mnoha desítek tisíc dolarů oproti ceně disku ST506, která byla 1.500 USD. Takovýto zárodečný SSD disk by při plném zatížení během zápisu spotřeboval asi 1,5 kW, což představovalo stonásobek odběru harddisku. Jednotlivé bity pamětí EEPROM by vyhořely zhruba po deseti tisících cyklech zápisu a mazání, což by u celého disku při stálém průběžném zápisu mohlo nastat ani ne za tři dny. Z těchto důvodů – kromě mnoha dalších – nebyla myšlenka vytvářet EEPROM SSD disky nikdy ani nastolena.

Další novou technologii, která se objevila, vynalezla v roce 1980 Toshiba, ohlásila ji v roce 1984 a komerčně ji uvedla společnost Intel v roce 1988 – jednalo se o zdokonalení EEPROM, jež nabízelo částečná řešení uvedených problémů. Nová technologie s názvem „NOR Flash Memory“ potřebovala mnohem méně energie a umožňovala provést více cyklů zápisu/mazání před vyhořením buněk. Flash paměť NOR nepoužívala obvody pro mazání každého jednotlivého bitu, místo toho rozdělila dostupnou paměť do bloků, které bylo možné mazat najednou, což zásadně zrychlilo operace mazání, nicméně na úkor možnosti adresace jednotlivých bytů pro zápis, takže pro zápis neúplných bloků bylo nutné provést podivnou operaci „načíst blok, vymazat jej, zapsat změněný blok.“ Zjednodušené obvody současně snížily výrobní náklady a velikost paměťových čipů, a tím se dramaticky snížily náklady. V tomto okamžiku se stala primární teoretickou překážkou vývoje SSD disků cena a bylo dosaženo bodu zlomu.

S postupujícím časem samozřejmě probíhal vývoj výrobních technologií polovodičových produktů, díky němuž se zvyšovala rychlost, kapacita a trvanlivost SSD disků vycházejících z téže konstrukce a založených na stejné technologii. Ceny průběžně padaly. Postavení flash pamětí vůči harddiskům to však v souboji cen ve skutečnosti příliš nepomohlo. V roce 1997 byly ceny harddisků 30x nižší než ceny flash pamětí a v roce 2003 byl tento rozdíl již více než stonásobný. S pádem cen harddisků nemůže soupeřit dokonce ani Mooreův zákon, od příchodu magnetorezistivních hlav na GMR principu (Giant Magnetoresistive Heads) se ještě dramaticky zrychlil.

Permanentní paměť v éře NAND

Aby mohly flash paměti lépe konkurovat magnetickým médiím, byly představeny nové technologie, které ještě více mění jejich koncepci. Následné generace flash technologií jsou optimalizovány spíše pro nízkou cenu než pro rychlost a nekladly důraz na to, aby se flash paměti používaly jako disky, ale aby se přednosti pamětí NOR flash dostaly na trh díky nižším cenám.

Jako první z těchto inovací byla v roce 1987 představena a komerčně uvedena v roce 1989 technologie flash NAND. Tranzistory typu NAND s plovoucími hradly jsou orientovány do hradla NAND, což umožňuje fungovat i řadám ukládacích buněk s poškozenými tranzistory a současně tyto řady k sobě přiblížit s větší hustotou. Znamená to však rovněž, že čtení NAND není adresovatelné po bytech. Paměti NAND se čtou po stránkách, které jsou větší než byty, ale menší než bloky. Díky ušetřeným obvodům potřebným pro čtení, hustšímu natlačení řad k sobě a menším nárokům na kvalitu výrobního procesu je cena pamětí NAND mnohem nižší než u typu NOR a jejich hustota je mnohem vyšší. Trvanlivost zápisu je však nižší než u pamětí typu NOR.

Kromě toho je spolehlivost čtení pamětí NAND spíše statistickou hrou. Jednotlivé cykly čtení mají mnohem vyšší chybovost než jaká je u všech typů pamětí, které jsme probírali výše, takže je nutné zavést mnohem agresivnější kódování proti chybám, které zajistí, aby výsledky čtení pamětí NAND byly přesné. Korekce chyb začíná na úrovni kontrolních součtových bitů na každé stránce. ECC bity (Error Correction Code) v každém bloku a mezi bloky dále zvyšují úroveň ochrany pro chybám čtení.

Nejnovějším pokrokem v oblasti pamětí typu flash je technologie MLC. Všechny systémy, které jsme probírali dosud, ukládají informace pomocí přepínání mezi dvěma stavy – neutrálním a nabitým – a jedná se o jednoúrovňové buňky (single-level cell – SLC). U pamětí označovaných jako MLC jde o víceúrovňové buňky (multi-level cell), kdy každá buňka má neutrální napětí a tři různé nabité stavy, takže celkem disponuje čtyřmi stavy a dokáže tak uložit dva bity informace. Toto schéma sice umožňuje uložit více dat na jeden tranzistor – a je proto mnohem levnější – ale čtení jemněji rozlišených úrovní napětí vyžaduje přesnější měření, což je naopak pomalejší a více náchylné na chyby. Takto vyrobené flash paměti mají rovněž kratší životnost. Takže technologie SLC je vynikající, pokud jde o výkon a životnost, zatímco MLC je levnější a má větší hustotu. S tím, jak se technologie výrobních procesů stále zlepšují, rozdíl mezi výkonem a životností se mezi oběma typy stírá, zatímco nůžky mezi cenou a hustotou se rozevírají.

Vývoj se začal posouvat směrem k technologii MLC a bylo možné dosáhnout vyšších úrovní rozlišení. Klíčový pokrok jako první zaznamenala malá izraelská společnost jménem M-Systems. M-Systems vyvinula jeden z prvních flash disků typu NAND, které byly určené pro použití v odolných průmyslových a vojenských počítačích v palubních systémech tanků a letadel izraelských ozbrojených sil. Společnost M-Systems již před lety vynalezla techniky, které dokázaly ještě jemněji nastavit a měřit úrovně napětí buněk NAND a umožňovaly tak v jedné flash buňce ukládat tři bity (osm úrovní) nebo dokonce čtyři bity (16 úrovní). Tyto techniky se označovaly jako X3 a X4 a posunuly souboj cena a hustota versus rychlost a spolehlivost pamětí MLC ještě dále.

Technologie X3 a X4 firmy M-Systems jsou nyní v rukou společnosti Sandisk, která M-Systems v roce 2006 odkoupila a získala tak exkluzivní kontrolu nad patenty v arbitráži se Samsungem. Konečné rozhodnutí v tomto sporu znělo, že Sandisk není vázán licenční dohodou M-Systems a Samsungu, takže nyní Sandisk a Toshiba jako partner mají nyní náskok v technologiích X3 a X4, ale jsou pozadu v oblasti výrobní technologie. Partnerství společností Intel a Micron v oboru flash pamětí s technologií X3 však postupuje dále rovněž a v dlouhodobém výhledu bude dosahování vyšších úrovní hustoty buněk průběžnou soutěží mezi výrobci, a nikoli jednostranným uspořádáním na základě dohod.

Postupující evoluce technologií permanentních pamětí od EEPROM k NOR přes NAND k MLC NAND až po paměti X3 NAND a X4 NAND ruku v ruce s vylepšováním výrobních procesů tlačí cenu za bit u produktů s polovodičovými paměťmi stále blíže cenám harddisků – a přitom si tyto paměti alespoň do určité míry zachovávají původní teoretické přednosti, pokud jde o rychlost, latenci, možnost malého provedení a odolnost. V daném prostředí je prakticky s jistotou zajištěna finální penetrace SSD disků do segmentů trhu ukládání dat, kde dosud dominují harddisky. Jedinou otázkou tak zůstává kdy a jak se tak stane.

5 komentářů: „Malý, velký a „zelený“: životopis SSD disků

  • Pingback: Jablickari.cz

  • avatar
    25. 01. 2010 (13:33)
    Trvalý odkaz

    A jak je to s podporou TRIM v Mac OS X?

  • avatar
    25. 01. 2010 (14:33)
    Trvalý odkaz

    A jak je to s podporou TRIM v Mac OS X?

  • avatar
    25. 01. 2010 (21:47)
    Trvalý odkaz

    pro Vláďu Janečka:
    Podle toho co se píše v tomhle článku není zapsání nul do volného místa disku činnost, který by řešila problém, který má řešit TRIM. Už se trošku ztrácím v těch názvech. Asi se to jmenuje read-modify-write.
    Jak jsem pochopil, tak pomocí TRIM systém řekne disku, že data v daném sektoru už nejsou potřeba a že je disk nemusí číst a modifikovat, že je může rovnou zapsat.

  • avatar
    25. 01. 2010 (22:47)
    Trvalý odkaz

    pro Vláďu Janečka:
    Podle toho co se píše v tomhle článku není zapsání nul do volného místa disku činnost, který by řešila problém, který má řešit TRIM. Už se trošku ztrácím v těch názvech. Asi se to jmenuje read-modify-write.
    Jak jsem pochopil, tak pomocí TRIM systém řekne disku, že data v daném sektoru už nejsou potřeba a že je disk nemusí číst a modifikovat, že je může rovnou zapsat.

Komentáře nejsou povoleny.