A differenza dei classici hard disk, negli SSD i dati non sono memorizzati su una superficie magnetica ma all’interno di chip di memoria flash (NAND flash). Progettualmente un SSD è costituito da una scheda madre, da più chip di memoria (a seconda delle dimensioni in GB del drive) e da un controller che ne governa il funzionamento.
Rispetto alla memoria RAM del computer, detta volatile, perché destinata a perdere le informazioni contenute se non alimentata, la memoria degli SSD è di tipo non-volatile ossia capace di conservare i dati anche in assenza di corrente elettrica. Dobbiamo pensare ai dati memorizzati nei chip NAND flash come a cariche elettriche preservate in ciascuna cella.
Quanto dura il ciclo di vita di un SSD?
Tipi di flash memory e usura delle celle
È risaputo che le operazioni di scrittura (write) usurano le celle di memoria di un SSD riducendone la longevità. Ma le memorie si usurano tutte allo stesso modo? La risposta a questa domanda ci permetterà di scoprire qualcosa in più sulla potenziale durata del nostro amato SSD.
La memoria utilizzata nei chip flash non è tutta uguale, esistono infatti 3 tipi di NAND:
- SLC (Single Level Cell) – 1 bit di dati per cella
- MLC (Multi Level Cell) – 2 bit di dati per cella
- TLC (Triple Level Cell) o 3-bit MLC – 3 bit di dati per cella
Più bit si possono memorizzare in una cella e più è possibile produrre chip di elevata capacità.
Del resto grazie ai progressi tecnologici oggi possiamo disporre di SSD di svariati GB a prezzi accessibili. Non stupisce quindi che secondo una recente report, le memorie di tipo TLC dovrebbero arrivare a rappresentare nell’ultimo trimestre di quest’anno circa il 50% del totale dei chip NAND, con un costo di produzione inferiore rispetto ai chip MCL di circa il 15%-20%.
Esiste tuttavia un rovescio della medaglia: aggiungere sempre più bit alle celle di memoria ne riduce l’affidabilità, la durata e le performance. É piuttosto semplice determinare lo stato di una cella SLC (vuota/piena) mentre è più difficile farlo per le celle MLC. Inoltre, una cella TLC richiede 4 volte il tempo di scrittura e 2,5 volte il tempo di lettura di una cella SLC. Parlando di durata di un SSD, memorizzare più bit per cella significa anche rendere più veloce il processo di usura della memoria NAND.
Una cella di memoria è costituita da un transistor floating-gate: vi sono poi due gate chiamati Control Gate e Floating Gate isolati da uno strato di ossido (in figura una rappresentazione schematica). Ogni volta che vengono effettuate operazioni di programmazione e cancellazione della cella lo strato di ossido che intrappola gli elettroni sul Floating Gate si usura. Di conseguenza, man mano che lo strato di ossido si indebolisce si può verificare una fuga di elettroni dal Floating Gate.
Poiché lo stato di una cella NAND è dato dal numero di elettroni presenti sul Floating Gate anche pochi elettroni possono fare la differenza tra uno stato e l’altro: nelle celle SLC il problema è meno sentito in quanto ci sono solo due stati da riconoscere, ma nelle celle TLC (o 3-bit MLC) il problema è serio in quanto vi sono 8 stati differenti. Inoltre con il progresso dei processi produttivi la geometria utilizzata è sempre più piccola e lo strato di ossido sempre più sottile, l’usura è quindi più rapida e le celle più soggette alla perdita di dati perché meno capaci di preservare la carica elettrica.
Per quanto tempo può funzionare un SSD?
Non è possibile rispondere in termini perentori a questa domanda ma è possibile farsi un’idea sull'affidabilità di questa tecnologia.
Il trend in fatto di SSD è quello di puntare sullo sviluppo di prodotti basati su 3 bit MCL (TLC). La memoria TLC sta iniziando a dominare il mercato degli SSD. Negli impieghi comuni, sembra infatti che la tecnologia 2 bit MLC sia eccessiva in termini di durata e di performance, per non parlare della SLC la cui caratteristiche sono necessarie solo per pochissime applicazioni e che sta quasi del tutto scomparendo.
In altre parole, i produttori hanno deciso di rinunciare ad un eccesso di ciclo di vita a favore di una decisa riduzione dei costi al fine di ampliare la diffusione delle memorie flash e la loro capacità di storage.
Sembrerebbe tuttavia che non vi sia da preoccuparsi sulla durata di un SSD. In un esperimento condotto da The TechReport su 6 Solid State Drive, in un test che voleva portare a capire quanto un SSD possa resistere ad operazioni di scrittura, ben 2 drive su 6 sono riusciti a sostenere scritture per 2 Petabyte di dati e comunque tutti gli SSD testati sono stati in grado di scrivere centinaia di terabyte senza problemi.
Ipotizzando una scrittura di 2TB all’anno, i risultati dell’esperimento si traducono in una durata degli SSD in questione di 1000 anni (2PB = 2000 TB / 2 TB anno = 1000 anni). Qualora dovessimo scrivere anche più di 2TB l’anno significa comunque, in ogni caso, poter utilizzare il nostro SSD tranquillamente per anni, anni e anni.
Monitorare lo stato di salute di un Solid State Drive
A questo punto dell’articolo è arrivato il momento di chiederci se possiamo misurare lo stato di salute di un SSD per anticiparne un eventuale malfunzionamento. Come per gli hard disk anche per gli SSD esiste il parametro MTBF (Mean Time Between Failure). Nelle schede tecniche che riportano la voce "Affidabilità" i valori indicati sono nell'ordine di 1.5 – 2 milioni di ore. Anche agli SSD inoltre si applica la tecnologia S.M.A.R.T di monitoraggio e reporting dello stato del drive, se abilitata il sistema è in grado di avvisare quando uno o più parametri di funzionamento eccedono delle soglie prefissate. Sul significato di MTBF e SMART rimandiamo alla lettura dei precedenti articoli sui tradizionali hard disk.
Ma c’è di più: spesso i produttori di SSD forniscono con i propri prodotti apposite utility capaci di tenere sott'occhio non solo i parametri S.M.A.R.T ma anche la quantità totale di dati scritta sul dispositivo e di fornire un’indicazione sintetica dello stato di salute del drive. Nell’immagine, a titolo di esempio, è riportato l’output del software Samsung Magician. Sull’SSD in questione sono già stati scritti circa 3 TB di dati, lo stato del dispositivo è Good e i parametri S.M.A.R.T. sono tutti OK.
Altre utility si spingono oltre e cercano di stimare anche la vita residua del drive sulla base dell’uso che fino ad oggi ne è stato fatto. Un esempio è il caso rappresentato nello screenshot seguente, dove il drive sembra godere di una salute eccellente e la stima del ciclo di vita indica ancora poco più di 9 anni a disposizione. Qui abbiamo usato SSDLife un software di BinarySense. Sicuramente in Internet ogni utente potrà trovare l’utility che più lo soddisfa.
Uno stile di vita sano per il nostro SSD
Siamo arrivati alla fine di questo articolo dedicato alla durata del ciclo di vita di un SSD, vediamo allora quali accorgimenti adottare per mantenere in forma il nostro drive.
Evitare la deframmentazione – non è necessario utilizzare utility per ridurre la frammentazione dei file su SSD. Questa operazione si utilizza sugli hard disk per ridurre i movimenti (e quind il tempo) che la testina deve fare per accedere ai vari frammenti (cluster) che costituiscono il file ma sugli SSD tutte le celle di memoria hanno lo stesso tempo di accesso e l’operazione è inutile e anche dannosa (lo spostamento dei cluster in spazi contigui richiede operazioni di scrittura che come sappiamo usurano l’SSD)
Non saturare la capacità del drive e Over-Provisioning – è suggeribile non arrivare ad utilizzare il drive SSD al limite della sua capienza. Molti produttoti implementano nei loro drive la pratica dell’Over-Provisioning ossia riservano uno spazio libero permanente sull’SSD (generalmente nell’ordine del 10% della capacità). Questo spazio libero, non accessibile all’utente o al sistema operativo, serve all’SSD come una sorta di memoria tampone dove memorizzare temporaneamente i dati mentre il controller esegue lo operazione di cancellazione dei blocchi di flash NAND, prepara blocchi liberi per l’uso futuro e “muove” i dati per assicurare un livello di usura costante a tutte le celle (algoritmi di wear-leveling).
Abilitare il TRIM nel sistema operativo – Ormai gran parte dei drive SSD integrano al loro interno una funzione di garbage-collection (GC) ossia una funzione che prepara le celle di memoria a ricevere nuovi dati. Il comando TRIM proprio di molti moderni sistemi operativi rende più efficiente la funzione di GC. Con il TRIM il sistema operativo notifica all’SSD quando i dati sono marcati come cancellabili oppure come non validi e il sistema operativo invia questo comando al drive ogni volta che viene eliminato un file. Verificate che il vostro sistema operativo supporti il comando TRIM e che questo sia attivo.
Impiegare i drive SSD dove effettivamente utili – Sicuramente uno dei vantaggi dei drive SSD è la sorprendente velocità di lettura dei dati mentre le operazioni di scrittura usurano l’unità e sono più lente perchè prima di scrivere un blocco questo deve essere cancellato. Ne consegue che l’SSD offre prestazioni migliori e maggiori vantaggi in applicazioni dove la lettura è preponderante rispetto alla scrittura.
Infine, un suggerimento sempre valido per qualunque dispositivo: effettuate un backup periodico dei dati. La stima del ciclo di vita di un supporto non garantisce ovviamente il funzionamento del dispositivo fino alla data stimata e non può considerare imprevisti come sbalzi di tensione o urti capaci di creare danni all’improvviso e di rendere inaccessibili tutti i dati in un momento.