Sunteți pe pagina 1din 8

SSD - Solid State Drive

Un SSD este un dispozitiv de stocare a datelor care folosete memorii cu circuite


integrate. SSD-urile se deosebesc de discurile rigide prin faptul c nu au pri mobile, ci rein
datele n memorii nevolatile. Datorita lipsei de pri mobile SSD-urile sunt mai rezistente la
ocuri mecanice, funcioneaz fr zgomot i au timp de acces i laten mai mic. Iniial,
SSD-urile foloseau aceeasi interfata de tip SATA ca si HDD-urile astfel nct SSD-urile erau
interschimbabile cu HDD-urile.

Arhitectura si functionare
Componentele cheie ale unui SSD sunt
memoria de stocare i controlerul. Din 2009 unitatea
de memorie primar a unui SSD este celula NAND.
Controler-ul nglobeaz componentele electronice
care fac legatura ntre memoria NAND i calculator.
Este un procesor ncorporat (embedded) care executa
cod de nivel firmware i are rol decisiv n obinerea
caracteristicilor de performa ale unui SSD.
Controlerul execut urmtoarele funcii:
- Detecia erorilor
- Detecia nivelului uzurii
- Realocarea blocurilor de memorie corupte
- Colectarea resturilor
- Caching (memorarea temporar a datelor) la citire i scriere
- Criptare
Citirea, scrierea si stergerea
Cand sistemul sau dispozitivul trebuie s citeasc sau s scrie date, va comunica cu
controlerul SSD-ului. Numrul de operaii individuale este limitat de viteza memoriei flash.
Nivelul de uzura
Memoria flash suporta un numr limitat de cicluri de scriere-tergere. Dac un anumit
bloc a fost programat i ters de un numr reperat de ori fr a scrie alte blocuri, acel bloc s-ar
uza naintea celorlalte astfel nct scade durata de via a unui SSD. Din aceast cauz
controler-ele folosesc o tehnic numit "egalizarea uzurii". Aceast tehnic distribuie scrierile
ct se poate de egal ntre toate blocurile SSD-ului. ntr-un caz ideal asta ar permite fiecarui
bloc sa fie folosit la capacitate maxim pentru o perioada ct mai ndelungat i toate
blocurile ar ceda n acelai timp.
Performanele unui SSD se multiplic cu numrul de cipuri NAND folosite n paralel
ntr-un dispozitiv. Un singur cip NAND este relativ lent, din cauza benzii inguste (8/16 bii) i
interfeei I/O asincrone. Cnd sunt folosite mai multe cipuri NAND n paralel limea de
band crete i latenele pot fi ascunse, atta timp ct operaiile sunt n ateptare i sarcina de
lucru este distribuita egal. La nceput, n 2009, cele mai rapide SSD-uri au implementat
tehnologia data striping similara cu RAID 0. Acest fapt a permis crearea de SSD-uri ultra
rapide cu viteze de 250 MB/s de citire/scriere folosind interfaa SATA 3 Gbit/s. Cnd a

aprut interfaa SATA de 6 Gbit/s SandForse a introdus SSD-uri cu controlere care suportau
viteze de 500 MB/s citire/scriere. Controlerele SandForce comprimau datele nainte de
trimiterea lor la memoria flash, prin acest proces rezultnd mai puine scrieri de date i putere
de procesare mai mare n funcie de algorimtul de compresie a datelor.
Colectarea resturilor
Dup ce fiecare bloc din SSD a fost scris o dat, controlerul trebuie s refoloseasc
unele din blocurile care nu mai au date curente (numite vechi). Datele din aceste blocuri sunt
nlocuite cu date noi. Acest proces este numit colectarea resturilor (datelor vechi). Colectarea
resturilor poate fi optimizat print tehnica TRIM.

Memoria flash
Majoritatea producatorilor folosesc n producerea SSD-urilor memoria nevolatila de tip
NAND. Avantajele constau din costul de fabricaie redus, n comparaie cu memoria DRAM,
i abilitatea de a reine datele fr a fi nevoie de o tensiune aplicat constant, lucru care
protejeaz datele n cazul unei caderi de tensiune. Memoriile flash nu sunt la fel de rapide ca
memoriile DRAM iar primele memorii flash nu aveau nici mcar aceeai vitez ca un HDD.
Acest problem a fost rezolvat de ctre controlerele din 2009 i mai trziu prin folosirea
unui management mai bun al memoriei numit ExtremeFFS. ExtremeFFS permite ca datele s
fie scrise fr a fi necesar tergerea sau rescrierea datelor din vecinatatea lor i permite
datelor sa fie mutate pentru a asigura o uzur uniform a blocurilor.
Ce este memoria 2D NAND
Memoria flash 2D NAND este memorie formata din tranzistoare flash, tranzistoare care
seamn cu tranzistoarele MOSFET cu canal n, dar se deosebesc de acestea prin faptul c au
dou pori n loc de una.

Un tranzistor 2D NAND este format dintr-o joctiune N-P-N cu dou pori. Deasupra se afl
poarta de control (control gate) conectat la linia de cuvnt (wordline). n structura NAND
standard, poarta de control nfoar poarta flotant (floating gate), iar cele dou pori sunt
separate de un strat izolator de Oxide-Nitride-Oxide (ONO), numit cteodat i Inter Poly
Dielectric (IPD). Sub poarta flotant se afl un alt strat izolator, numit tunnel oxide, urmat de
un substrat de siliciu care se comport ca linie de bit (bitline). Poarta de control nfoar
poarta flotant cu scopul de a maximiza capacitatea dintre cele dou. Capacitatea dintre cele

dou pori joac un rol cheie n funcionarea NAND, deoarece nseamn c poarta de control
poate controla poarta flotant.
Scopul liniilor de cuvnt i bit se nelege mai bine dac privim figura urmtoare.

Pentru programarea unei celule (unuit tranzistor), se aplic o tensiune de aproximativ 20V pe
linia de cuvnt a acelei celule. Desigur, problema este c nu putem aplica tensiunea la o
singur celul. Toate celulele conectate la acea linie de cuvnt vor detecta tensiunea. Aadar,
pentru selecie unei singure celule, se ine n 0 V linia sa de bit. n acelai timp, liniile de bit
nvecinate sunt ncrcate la aproximativ 6V. Acest lucru crete capacitatea dintre linia de bit i
poarta flotant, lucru care la rndul su descrete ndeajuns capacitatea dintre poarta de
control i poarta flotant nct electronii s nu poat trece prin stratul tunnel oxide. Dac toate
liniile de bit ar fi fost inute n 0V, atunci toate celulele prezente de-a lungul acelei linii de
cuvnt ar fi fost programate cu aceeai valoare.
Pentru tergerea unei celule se efectueaz operaia invers. Se ine poarta de control la
0V i pe bitline se aplic o tensiune pozitiv de aproximativ 20V, electronii de pe poarta
flotant fiind respini ctre substratul de siliciu/linia de bit i tranzistorul memoreaza 0 logic
pn la aplicarea unui curent pozitiv pe linia de cuvnt.
Metoda de programare i tergere reprezint clciul lui Ahile pentru memoriile NAND.
Deoarece este necesar o tensiune att de ridicat, materialele izolatoare din jurul porii
flotante (ONO i tunnel oxide) i pierd din proprieti odat cu creterea numrului de cicluri
de programare i tergere. Uzura face ca straturile izolatoare s i pierd din caracteristicile
izolatoare, nsemnnd c electronii sunt acum capabili s scape din poarta flotant sau s
rmn blocai n stratul tunnel oxide n timpul programrii sau tergerii. Acest lucru modific

nivelele de tensiune ale celulei. i tocmai nivelurile de tensiune definesc valoarea bitului.
Dac sarcina din poarta flotant nu este cea care trebuia s fie, celula poate returna la citire o
valoare invalid. Acest lucru este agravat la ML i TLC, deoarece nivelurile de tensiune sunt
mult mai apropiate unele de altele, nsemnnd c chiar o schimbare minor a nivelului de
tensiune poate genera deplasarea de la poziia iniial i modificarea valorii celulei. n special,
MLC i TLC sunt mai sensibile la modificarea nivelelor de tensiune, ca urmare timpul lor de
via este mai mic (endurance).

n figura de mai sus, o celul care memoreaz un singur bit pe celul, aadar are dou nivele
de tensiune, se numete SLC (Single Level Cell). Dac memoreaz doi bii pe celul i are
patru nivele de tensiune se numete MLC (Multi level Cell). Cele dou tipuri sunt fizic la fel,
ele difer prin modul n care datele sunt memorate i citite. Timpul de scriere MLC este de 3
ori mai mic dect timpul de scriere SLC, dar MLC are capacitate dubl la acelai cost.

SLC

MLC

Pe lng SLC i MLC mai exist TLC (Triple Level Cell) care stocheaz 3 bii pentru fiecare
celul i 16LC (16 Level Cell) care stocheaz 4 bii.
Mai multe celule de memorie (de ex. 16384) formeaza o
pagina. O pagina reprezint cea mai mic suprafa care poate fi
scris/citit individual. Ea are 4KiB (4096 biti) i poate fi
citita/scris individual, dar nu poate fi modificat sau tears
individual. Mai multe pagini formeaz un bloc. De exemplu, blocul
din imagine este format din 128 de pagini i are dimensiunea de 512
KB. Blocul reprezint cea mai mic suprafa care poate fi tears
individual. Blocurile sunt grupate n planuri (plane). Pe o singur
matrice NAND se gasesc mai multe planuri. Pe un singur cip
NAND se pot gasi una, doua sau patru matrici.

Cache buffer
SSD-urile folosesc de obicei memorie cache de tip DRAM asemenea HDD-urilor. In timpul
functionarii in memoria cache este pastrat un director pentru plasarea blocurilor si nivelului de
uzura, de obicei in cache nu sunt pastrate si datele utilizatorului. Nu este neaparat necesar
utilizarea unui cache de tip DRAM, eliminarea DRAM permite construirea de SSD-uri de
dimensiuni mai mici.

Interfetele de conectare
Interfata de conectare este de obicei incorporata in controler. De obicei interfata este
una gasita deja la HDD-uri de exemplu:
- SAS serial attached SCSI (>3 Gbit/s)
- SATA serial ATA (>1.5 Gbit/s)
- PCI express (2 Gbit/s)
- Canal fibra doar pentru servare (>200 Mbit/s)
- USB (>1.5 Mbit/s)
- M.2

Comparatie SSD cu HDD


Caracteristici
Timp de incepere
rotatiei
Timpi de acces aleator
Latenta la citire

Solid-State Drive
a Instantaneu
Aproximativ 0,1 ms, mult mai rapid decat
HDD-urile deoarece datele sunt accesate
direct din memoria flash
In general foarte redusa deoarece datele
pot fi citite din orice locatie a memoriei

Hard Disk Drive


Poate dura cateva secunde
Difera intre 5-10 ms datorita nevoii
de miscare a capetelor de citire

In general ridicata deoarece


componentele mecanice necesita
mai mult timp pentru a se alinia
Performanta constanta la Performanta la citire nu se schimba in Daca datele sunt scrise fragmentat,
citire
functie de locatia datelor
timpul de citire poate sa varieze
foarte mult
Impactul
fragmentarii Performantele SSD-ului nu se schimba Performantele
HDD-ului
sunt
datelor
deoarece nu are capete miscatoare
impactate deoarece capetele trebuie

Nivelul
(zgomotul)

acustic

Consumul total de energie

Fiabilitate mecanica
Sensibilitate
la
soc,
vibratii si temperatura
Sensibilitate la magnetism
Greutate si volum
Operatia in paralel
Pret cu amanuntul (mai.
2014)

miscate
SSD-urile nu au parti miscatoare si nu HDD-urile au parti miscatoare si
creeaza zgomot
nivelul acustic variaza in functie de
model
SSD-urile consuma mai putin curent HDD-urile de mare performanta pot
decat HDD-urile din aceeasi clasa; disipa depasi 15 wati
mai putina caldura si nu necesita racire cu
miniventilatoare, si ele zgomotoase
Deoarece nu au parti mobile acestea nu HDD-urile au parti miscatoare si se
prezinta defecte mecanice
pot defecta mecanic
Nu exista capete sau platane mobile care Capetele sau platanele mobile sunt
sa se defecteze de la soc sau vibratii
predispuse la defecte din cauza
socului sau vibratiilor
Nu are nici un impact asupra memoriei Magnetii pot altera datele de pe
flash
HDD-uri si sa le faca ilizibile
Sunt foarte usoare in comparatie cu HDD-urile de inalta performante au
HDD-uri
componente foarte grele
Unele SSD-uri contin mai multe module HDD-urile contin mai multe capete
de memorie flash care pot partaja datele de citire, dar acestea sunt mereu
care trebuie scrise sau citite
aliniate pe acelasi cilindru
Circa 450$ pentru 1 terabit
Circa 50 euro pentru 1 terabit

SSD cache
Un SSD de dimensiuni mici poate fi folosit pe post de cache pentru un HDD, tehnologie
introdusa de catre Intel pe placile Z68 numita Smart Response Technology.
SSHD-urile(solid-state hybrid drives) folosesc acelasi principiu, dar integreaza o cantitate
de memorie flash pe placa unui HDD conventional in loc sa foloseasca un SSD separat.
Dual-drive hybrid systems combina un SSD si un HDD instalat in acelasi calculator cu
performantele optimizate de catre user sau de catre sistemul de operare.

Sisteme de fisiere compatibile cu SSD-urile


De obicei sistemele de fisiere folosite pe HDD-uri sunt compatibile si cu SSD-urile, este
de asteptat ca sistemul de fisiere sa foloseasca comanda TRIM care ajuta SSD-ul sa recicleze
datele sterse. Nu este nevoie de un sistem de fisiere pentru a avea grija de egalizarea uzurii
sau de alte caracteristici ale memoriei flash deoarece ele sunt organizate intern de SSD.
TRIM permite sistemului de operare sa informeze SSD-ul care blocuri de date nu mai
sunt considerate in folosire si pot fi sterse intern. Trim a fost introdus dupa ce SSD-urile au
inceput sa aiba preturi comparabile cu HDD-urile. Deoarece operatiile de nivel redus ale
SSD-urilor difera de cele ale HDD-urilor modul in care sistemele de operare manipuleaza
stergerile si formatarile rezulta in performante degradate in operatiile de scriere pe SSD.
TRIM permite SSD sa gestioneze colectarea datelelor sterse inainte, care ar putea incetini
sistemul cand vrem sa scriem in blocurile folosite, in avans.

Linux OS
Sistemele de fisiere ext4, Btrfs, XFS, JFS si F2FS includ suport pentru TRIM. F2FS este
un sistem de fisiere modern optimizat pentru stocarea de date pe suport flash si este o alegere
foarte buna, dar este inca in teste.
SSD-urile sunt in intregime suportate de catre sistemele de operare de tip Linux incepand
cu versiunea de kernel 2.6.33 care a fost prezentata drept compatibila in intregime atat cu
detectia si alinierea SSD-urilor cat si cu comanda TRIM, versiunile anterioare ale kernelului
nu contineau suport pentru SSD.
In timpul instalatii, Linux nu configura sistemele de fisiere sa utilizeze TRIM si fisierul
/etc/fstab trebuie modificat manual.
Windows OS
Versiunile de windows mai vechi de 7 nu luau masuri speciale sa suporte SSD-urile.
Defragmentarea afecteaza negativ durata de viata a unui SSD si nu are niciun beneficiu.
Incepand cu Windows 7 sistemul de fisiere NTFS are suport TRIM. Windows 7, 8, 8.1
executa automat comenzi daca device-ul este detectat ca fiind un SSD.

Performante si calitate
Tehnologia SSD se dezvolta rapid. Majoritatea testelor de performanta utilizate de HDDuri sunt folosite si pe SSD-uri, dar performantele SSD sunt dificil de testat datorita gamei
largi de conditii posibile.
Modelele mai noi de SSD-uri au capacitati mult mai mari decat HDD-urile care sunt
limitate de viteza si de numarul de platane, SSD-urile scaleaza capacitatea cu numarul de
memorii flash. SanDisk au anuntat SDD-uri cu capacitati de 4TB, 6TB si 8TB bazate pe
tehnologia de fabricatie de 19 nm.

Forma
Forma si marimea oricarui dispozitiv decurge din
forma si marimea componentelor sale, HDD-urile
traditionale si CD-RW sunt construite in jurul motorului
si axului central. Atata timp cat SSD-urile sunt construite
din circuite integrate si inferfete conectate, ele pot in
principiu sa ia orice forma imaginabila

Forma standard este preluata de la HDD-uri pentru a putea folosi infrastructura deja
disponibila fara modificari.
Format mSATA
Exista un standard numit mSATA care foloseste un
format PCIe mini card, ramane compatibila electric cu
interfata PCIe mini card dar foloseste o o conexiune SATA
prin acelasi conector.
M.2 cunoscut ca si NGFF(next generation form factor)
este tranzitia natura de la mSATA, se foloseste acelasi layout
fizic si este un format mai avansat. Pe cand mSATA a avut
avantajul unui standard existent si conector, M.2 a fost creat
pentru a maximiza spatiul folosit si pentru crearea de
dispozitive mai mici.
Format M.2

Biblografie
1. The SSD Anthology: http://www.anandtech.com/show/2738
2. Flash memory : http://www.explainthatstuff.com/flashmemory.html
3. Understanding TLC NAND: http://www.anandtech.com/show/5067/understandingtlc-nand
4. Optimal
usage
og
SSDs
under
Linux:
https://events.linuxfoundation.org/images/stories/pdf/lceu11_fischer.pdf
5. SSD Wikipedia: http://en.wikipedia.org/wiki/SSD
6. Solid-state
revolution:
in-depth
on
how
SSDs
realy
work:
http://arstechnica.com/information-technology/2012/06/inside-the-ssd-revolutionhow-solid-state-disks-really-work/
7. http://www.anandtech.com/show/8216/samsung-ssd-850-pro-128gb-256gb-1tbreview-enter-the-3d-era/2