Ormai da tempo siamo abituati ad utilizzare sistemi di Storage differenti dai comuni Hard Disk ( Hdd ) con tecnologia elettro-meccanica. Sul mercato sono presenti molte alternative di Storage puramente elettronici, grazie all’uso di Chip denominati NAND (acronimo di Not AND) e più comunemente conosciuti come Memorie Flash. I principali vantaggi nell’uso di questa particolare tecnologia, sono :
- Non essendoci parti elettromeccaniche, sono strutturalmente più resistenti ad urti e pertanto, a differenza degli Hard Disk, non sono soggetti a Head Crash.
- Tempi medi di accesso ( Average Seek Time ) molto inferiori rispetto a quelli di un Hard Disk. Gli Storage che utilizzano Memorie Flash, sono nettamente più veloci.
- Dissipazione termica di molto inferiore rispetto agli Hard Disk
Ma purtroppo non tutti sono a conoscenza di altri aspetti che cercheremo di spiegare in questo articolo.
Struttura di Storage che utilizzano le Memorie Flash
Come funzionano le Memorie Flash ?
In una Memoria Flash le informazioni vengono registrate in un vettore di floating gate MOSFET, un tipo di transistor ad effetto di campo in grado di mantenere carica elettrica per un tempo lungo. Ogni transistor costituisce una "cella di memoria" che conserva il valore di un bit.
Ad oggi esistono 4 tipi di NAND, le SCL, le MLC, le TLC e le QLC .
La cella di tipo SCL può assumere 2 valori , 0 se non è carica e 1 se è carica.
La cella di tipo MLC può assumere 4 valori, la TLC 8 valori e la QLC 16 valori.
Per quanto sopra descritto, è facilmente intuibile che l’eventuale perdita della carica nel MOSFET, si tradurrebbe in una perdita di informazioni maggiore nel tipo QLC che nel tipo SLC . Purtroppo ad oggi le TLC e le QLC sono le più utilizzate.
Altra importate peculiarità delle NAND è quella definita “ Charge Leakage “ che in pratica rappresenta la Perdita di Carica intrinseca delle celle stesse. Ad esempio : supponiamo di avere un SSD nel quale abbiamo salvato alcuni dati e che questo SSD non viene alimentato/utilizzato per un certo tempo, a causa della perdite di carica nei MOSFET le informazioni in esso contenute verrebbero inizialmente corrotte ( dalle 2 alle 4 settimane), fino ad arrivare alla loro completa perdita ( in circa 2 anni )
Inoltre è importante evidenziare che a differenza di un Hard Disk, l’indirizzamento per le operazioni di lettura/scrittura, non avviene attraverso il comune sistema LBA (Logical Block Addressing) ma, a seconda del tipo di controller installato, è utilizzato uno specifico algoritmo che comporta una serie di operazioni logiche sui bytes (Es: XOR, Bit Inversion, Ecc..) prima che essi siano effettivamente memorizzati nelle NAND.
Tale processo viene definito Translazione :