La tecnologia di storage flash memory

Le flash memory

La storia evolutiva dell’hard disk è costellata di progressi tecnologici, dal sistema di storage RAMAC negli anni ’50 alla tecnica di registrazione perpendicolare - perpendicular recording - introdotta alcuni anni fa. Questi miglioramenti hanno riguardato soprattutto l’incremento di densità di memorizzazione per riuscire oggi ad arrivare a capacità di memorizzazione nell’ordine del Terabyte (1024 GB).

Sebbene vi siamo diverse opzioni disponibili per conservare i dati in modo sicuro, molti utenti non riescono a proteggerli a dovere. La perdita dei perdita è un evento frustrante per tutti gli utenti di computer e per un gran numero di loro è addirittura "devastante". Come utenti di computer, dobbiamo accettare il fatto che durante la nostra vita saremo soggetti ad una qualche perdita di dati.

La perdita dei dati è causata da problemi di tipo logico oppure di tipo fisico. Nel caso di problema logico, il dispositivo da un punto di vista hardware funziona correttamente ma è il sistema utilizzato per la gestione dei dati che si è corrotto. Ad esempio, pensiamo alla formattazione del file system. Nel caso di danno fisico invece, la perdita dei dati è il risultato di problemi hardware che coinvolgono il dispositivo in se stesso come danni all’elettronica o allo strato magnetico dal piatto del disco.

Nell’ultimo decennio, gli utenti hanno iniziato ad affidarsi per la memorizzazione dei dati alle memorie a tecnologia flash o flash memory. Grazie alla loro piccola dimensione e alle vaste possibilità di impiego, ogni giorno abbiamo accesso a più di un dispositivo di tipo flash. I player di musica con memoria flash incorporata hanno rimpiazzato i dispositivi degli anni ’80. Le flash memory hanno rivoluzionato il campo della fotografia fino al punto che le pellicole fotografiche non sono più il principale sistema per scattare e conservare le fotografie. La capacità di storage di un flash drive ha anche modificato radicalmente le abitudini degli utenti nel trasporto dei dati.

Le memorie flash sono classificate come memoria non-volatile poichè gli elettroni sono intrappolati all’interno di una struttura di celle di memoria. Quando i dati sono scritti in una memoria flash, le celle sono programmate con un preciso numero di elettroni che rappresentano il dato binario “0” e “1” alla base della struttura dei nostri file. Diversamente dalla memoria RAM di un computer che necessita di un flusso costante di energia per mantenere i dati, le flash memory non richiedono una sorgente di energia elettrica per conservare i dati.

Così, le memorie flash sono diventate un’alternativa perseguibile ai dispositivi di storage di tipo legacy per il loro basso consumo di energia, il basso sviluppo di calore e la mancanza completa di parti meccaniche. Queste caratteristiche hanno dato a questi dispositivi la percezione di una struttura solida, da qui la denominazione di struttura a stato solido o “solid-state”.

Nonostante i molti benefici, la perdita dei dati è una minaccia anche per le memorie flash. Infatti, le attività di recupero dati su memorie flash è in continuo aumento man mano che gli utenti fanno sempre più ricorso a questa tecnologia per la memorizzazione dei propri dati.

 

Il recupero dei dati dai dispositivi di memorizzazione di tipo flash

I supporti basati su tecnologia flash soffrono delle medesime cause di perdita dei dati dei dispositivi tradizionali. Spesso i danni di tipo fisico affliggono le memorie flash per la loro piccola dimensione. La figura 1 mostra un esempio di danno fisico ad alcuni dispositivi portatili con flash memory. La prima fotografia mostra una chiavetta USB spezzata, la foto centrale mostra invece una memory card di una macchina fotografica rovinata, a detta dell’utente, dal morso di un animale. L’ultima fotografia mostra ai raggi-X una Secure Digital che ha dei danni alle tracce del circuito stampato.

Fig 1 - Alcuni esempi di danni fisici a dispositivi di tipo flash memory

Fortunatamente non tutte le perdite di dati, anche quelle di tipo fisico, sono letali per un flash media. Una società di recupero dati a seconda dei casi può intervenire con quella che in termini semplicistici ma comprensibili possiamo definire una “temporanea riparazione” del dispositivo oppure con un intervento molto più complesso.

La maggior parte dei dispositivi flash sono costituiti da pochi chip semiconduttori. Uno o due sono i chip di flash memory vera e propria, più un altro chip che serve da controller e monitora tutti i dati scritti sulla memoria. Il chip con le funzioni di controller è un microprocessore estremamente complesso che non solo gestisce il flusso dati da e verso il dispositivo ma controlla anche come i dati sono scritti ai chip della flash memory. Il controller corregge anche qualunque errore che si viene a creare durante il traferimento dei dati e la loro memorizzazione.

Se il controller del dispositivo diviene inoperante a causa di un danno, allora l’unica possibilità di recuperare i dati dalle flash memory è rimuovere i relativi chip e provare un’estrazione dei dati grezzi (raw extraction). Questa è un’attività complessa che richiede strumenti particolari e molta esperienza. Non tentare assolutamente questo tipo di operazioni a casa. Poichè sono molto piccoli, i chip della flash memory sono saldati con connettori estremamente sottili. Troppa forza rischia di spezzare il chip, troppo calore applicato durante il processo di estrazione può danneggiare il chip della memoria flash o compromettere lo strato interno che contiene le microscopiche celle di memoria.

A causa della progettazione proprietaria del controller, il chip estratto non può generalmente essere inserito in un dispositivo simile. Gli ingegneri di data recovery posizionano i chip della flash memory in speciali apparecchi e utilizzano appositi software per avere accesso ai dati.

Fig 2 - Illustrazione degli strati, dallo stampo delle flash al file system formattato

Dopo l’estrazione, la sfida successiva consiste nel riorganizzare i dati estratti. Gli hard disk tradizionali memorizzano i dati in modo lineare con lo spazio disponibile che inizia dal bordo più esterno dei piatti e in modo concentrico si muove verso il centro dei piatti. La memorizzazione sulle memorie flash è dinamica. Un modo per capire questo è la figura 2. I dati in una memoria flash sono movimentati e redistribuiti mentre lo strato più alto, il file system, rimane intatto.

Il motivo della movimentazione di dati dipende dal fatto che se un blocco di memoria flash è costantemente scritto, le celle rapidamente si usurano. Il controller quindi adotta un processo chiamato wear-leveling (usura-bilanciata) per mantenere nel tempo l’efficienza delle celle. In altre parole, il processo ha l’obiettivo di bilanciare il numero di volte che uno specifico blocco è scritto. Ad esempio, se un file è stato copiato su di un dispositivo flash e successivamente non è più stato modificato, il controller effettuerà una riprogrammazione di una nuova area della flash memory con gli stessi dati quindi effettuerà la cancellazione dell’area originale liberando questi elettroni per prevenire l’usura di queste celle. Perciò i dati memorizzati in un dispositivo di tipo flash sono sempre in movimento, indipendentemente dal fatto che l’utente “sposti" realmente il file in una nuova cartella sul medesimo flash media.

In uno scenario dove il controller non “controlla” più i dati, gli algoritmi di “wear-leveling” e gli schemi di indirizzamento dei blocchi logici rappresentano una sfida particolarmente complessa per il recupero dei dati. In più, se il dispositivo flash ha due o più chip di memoria i dati potrebbero essere distribuiti (plane distribution) fra i chip per incrementare le performance del dispositivo e consumare uniformente i chip.

Il controller flash utilizza uno speciale schema di traduzione per gestire l’indirizzamento dei blocchi logici chiamato Flash Translation Layer (FTL). Questo sistema è usualmente proprietario per ogni produttore. Tecniche FTL intelligenti per la gestione dei dati sono impiegate al fine di preservare la longevità della memoria flash. Non tutti i produttori producono i dispositivi con lo stesso FTL o con i medesimi processi di “wear-leveling” anzi, i produttori possono modificare il design della progettazione molto rapidamente.

Le sfide al recupero dati da memorie flash possono quindi essere riassunte come segue:

  1. organizzazione dei dati in formato proprietario
  2. complessità degli schemi di "trasporto" dei dati
  3. densità dei chip di memoria flash
  4. implementazione di algoritmi wear-leveling personalizzati

La complessità di questi dispositivi di storage è dunque intrinseca. Le performance, la densità delle celle e la capacità di storage sono le caratteristiche che stanno guidando i laboratori di ricerca e sviluppo a esplorare vie differenti per rispondere alle esigenze degli utenti. I benefici introdotti delle memorie flash sono evidenti ad es. nessuna parte in movimento, dispositivo robusto, minori consumi, ecc. ma la tecnologia flash ha, come abbiamo visto, ancora delle limitazioni in scrittura e le celle di memoria sono soggette ad usura.

Il futuro dei dispositivi flash e il recupero dei dati

La memoria non valatile basata su tecnologia flash ha davanti a sè ancora una lunga strada prima di arrivare a sostituire completamente gli hard disk drive come primaria tecnologia di storage. Il processo di realizzazione delle flash memory è migliorato e il costo di produzione dei chip si è ridotto rendendo questa tecnologia più accessibile agli utenti. L’incremento delle performance e dell’affidabilità contribuirà a rendere l’uso dei dispositivi basati su flash memory più adeguato per applicazioni di mobile computing e per l’uso in ambiente enterprise.

L’industria delle flash memory potrà inoltre beneficiare del consolidamento e della standardizzazione della tecnologia e dell’architettura per la gestione dei dati. Diverse organizzazioni stanno cercando di portare tutti i produttori di memorie flash a concordare insieme i meccanismi di storage, l’architettura del bus interno, il set di comandi AT, ecc.

Due grosse aziende dei segmenti computing e storage hanno già iniziato ad offrire drive allo stato solido (SSD – Solid State Drive) come parte della loro offerta di storage per il segmento enterprise. Nel settore del mobile computer, due produttori di notebook di alto profilo hanno iniziato ad offrire SSD drive come opzione per i loro sistemi. Recentemente, i netbooks (PC portatili di piccola dimensione e a basso costo) sono entrati nel mercato retail impiegando un sistema di storage flash con un sistema operativo embedded ossia incluso nel dispositivo.

I prossimi 3-9 anni nell’industria delle memorie flash saranno molto interessanti, i diversi produttori progetteranno nuovi tipi di memoria non volatile per sostituire i vecchi, ma ancora affidabili, hard disk. É però improbabile che la tecnologia flash sorpasserà completamente la tecnologia degli hard disk drive in tempi brevi. Problematiche di costo, di affidabilità e di standard tecnologici necessitano di essere indirizzate al meglio perchè si realizzi una reale sostituzione di massa.

Autore: Sean Barry è senior data recovery engineer presso l'headquarter Kroll Ontrack in Minnesota. Oltre ad una vastissima esperienza nei servizi di data recovery, Sean Barry è anche autore di numerosi articoli per Kroll Ontrack indirizzati ad aziende, enti pubblici e utenti per spiegare loro il problema della perdita dei dati ma anche le soluzioni per risolverlo.