Intel SSD 520: SandForce-nász az avaron

A SandForce vezérlője

A következőkben az Intel 520-ban is található, számos érdekes megoldást felvonultató SandForce vezérlőről szeretnénk néhány részletet ismertetni.

Hirdetés

A ma már az LSI égisze alatt működő SandForce még valamikor 2009 közepén mutatta be első generációs SF-1000 termékcsaládját. A rendszer elsősorban kiemelkedően magas adatátviteli tempójával hívta fel magára a figyelmet, ugyanis szekvenciális műveletekben jó néhány esetben bizonyult verhetetlennek. Ezt követően 2011 februárjában debütált az SF-2000 sorozat, mely természetesen hozott magával néhány újítást. Talán az első ilyen, hogy az új termékcsalád már natívan támogatja a 6 Gbps-os SATA felületet. Ezen túlmenően bizonyos modellek alkalmasak a 20 és 30 nm-es gyártástechnológiával készülő MLC, eMLC, illetve SLC NAND flash chipek kezelésére is. Kapacitás szempontjából maximum 512 GB támogatott, a flash interfészek közül pedig az Asynch, a Toggle és az ONFi2 jöhet szóba.

A rendszer adatátviteli sebessége a gyári specifikációk alapján akár 500 MB/s is lehet, míg az IOPS teljesítmény másodpercenként 60 000 véletlen művelet körül alakulhat. A vezérlő része még a fejlettebb ECC korrekció, ami 512 bájtos szektoronként 55 bites. További extra a TCG Enterprise biztonsági modulja, mely 128 mellett 256 bites, valós idejű AES titkosítást is lehetővé tesz. Végül egy funkció, amely elsősorban a fogyasztásra különösen érzékeny környezetekben lehet rendkívül hasznos: a második generációs SandForce ugyanis az éppen aktív NAND chipek számával képes szabályozni (csökkenteni) a fogyasztást, amennyiben éppen nincs szükség nagy átviteli sebességre. Emellett egy ultraalacsony fogyasztású, alvó állapotot is támogat a kontroller.


[+]

A SandForce második generációs SSD vezérlői összesen hét változatban jelentek meg. Az SF-2300 az ipari igényekhez illeszkedik, míg az SF-2500 és SF-2600 az abszolút felsőkategóriás vállalati megoldásokban kap szerepet. Az asztali szegmenst összesen négy különféle chippel célozták meg, melyek közül kettő (SF- 21xx) egy kissé kilóg a sorból, mivel ezeknél a SATA 6 Gbps támogatás le lett tiltva. A cikk főszereplője szerencsére nem ilyen vezérlőt kapott, hanem egészen pontosan az SF-2281 modellszámozásút, mely természetesen képes az éppen aktuális, legújabb SATA adatátviteli szabvány támogatására is.



Az első generáció fontosabb képességeit finomításokkal továbbvitték a másodikba. Az egyik ilyen a RAISE (Redundant Array of Independent Silicon Elements) elnevezésű megoldás. Ez a RAID 5 rendszerekhez hasonló védelmet képes nyújtani, amennyiben egy cella vagy netán egy teljes NAND lapka használhatatlanná válna a meghajtóban. (Ezen eljárásra a DuraWrite miatt is szükség van, melyről a későbbiekben teszünk említést.)

Az asztali szegmensbe szánt vezérlők esetében ezt a funkciót a meghajtó gyártója immáron opcionálisan alkalmazhatja, aminek következtében megspórolhatnak jó néhány gigabájt tárhelyet és ezzel NAND lapkát. (Itt érdemes megemlíteni, hogy az SSD 520 esetében az Intel alkalmazza az eljárást.) Ebben az esetben csak az új fejlesztésű, 55 bites BCH (Bose-Chaudhuri-Hocquenghem) ECC motorra támaszkodhat a rendszer, amennyiben valamilyen probléma merülne fel az adatokkal.

Röviden ennek lényege, hogy a korábban alkalmazott Reed-Solomon algoritmushoz képest a Bose-Chaudhuri-Hocquenghem megoldás kisebb vezérlőterhelés mellett képes durvább hibák korrekciójára. Minderre szükség is lehet, mivel a 25 nanométeres NAND lapkák esetében a szükséges hibajavítások száma jelentősen megnőtt.

Emellett a lapkák/chipek élettartama (azaz hogy mennyi írási ciklust viselnek el) csökkent. Az 50 nm-es MLC NAND lapkák még durván 10 000 írási ciklust viseltek el. Ez a szám 34 nm-en a felére, nagyjából 5000 környékére esett, míg 25 nm-en az érték már csak 3000 körüli. Erre is gyógyír valamelyest a DuraWrite elnevezésű technológia, mely a SandForce-ok egyik alappillére. Ez gyakorlatilag egy valós idejű tömörítési algoritmust takar, melynek szükséges számítási igényeit természetesen a vezérlő állja. Bármilyen adatot írunk a meghajtóra, az valamilyen arányban tömörítésre kerül, azaz tömörítve tárolódik el a NAND lapká(k)ban. Logikusan minél jobban tömöríthető az adat, annál kisebb lesz a végső állomány, azaz gyorsabban ki lehet írni és gyorsabban is vissza lehet később olvasni. Ráadásul a kevesebb kiírt adat kevésbé is terheli az egyre kevesebb írási ciklust elviselni képes NAND chipeket.

Sajos ennek a megoldásnak is megvannak a hátulütői, ugyanis jó néhány olyan fájlformátum létezik, amely valamilyen módon (vagy akár módokon) már eleve tömörített. A legtöbb számítógépen valószínűleg akadnak JPEG, MP3 vagy akár AVI vagy MKV formátumú fájlok, melyeket már nem igazán lehet veszteségmentesen tovább tömöríteni. (Elég, ha ilyen fájlokat megpróbálunk példának okáért WinRAR-ral betömöríteni, és máris saját szemünkkel láthatjuk a végeredményt.) Ezzel a SandForce vezérlője sem tud mit kezdeni, azaz kénytelen jóformán tömörítetlenül kiírni az adatmennyiséget, ami könnyen visszaüthet az adott művelet időtartamában.

Ezen túlmenően bizonyos jól betömöríthető adatok esetében, ha bármilyen okból megsérül egy kis adat, az elvileg akár jóval nagyobb mennyiséget is érinthet tömörítéstől függően. Ezért is van szükség a RAISE-re és a komoly ECC-re, mivel a SandForce-os meghajtóknak nemcsak az általunk felírt adatokat kell eltárolnia, hanem a fájlaink esetleges visszaállításához szükséges redundáns adatokat is, melyek a tartalékterületen helyezkednek el. Példának okáért a 240 GB-os Intel SSD 520 NAND chipjeinek összkapacitása 256 GB, melyből csak 223,6 GB áll a felhasználó rendelkezésére.

A cikk még nem ért véget, kérlek, lapozz!

Azóta történt

Előzmények

Hirdetés