La natura delle memorie NAND Flash con il quale vengono fabbricate le comuni Pen Drive, gli SSD e le memory card ad uso fotografico, le rende suscettibili a diversi tipi di corruzione dei dati. Allo stesso modo di come gli Hard Disk e i Floppy disk sono a rischio nelle vicinanze di forti campi magnetici, le memorie NAND hanno diversi tipi di vulnerabilità, alcune delle quali si possono manifestare in situazioni normalissime come ad esempio una semplice operazione di lettura.

Molte  e diverse possono essere le cause di errori nelle flash. Tra i più comuni vanno considerati gli errori di scrittura. Addirittura le celle su cui non viene operata una scrittura possono essere danneggiate da una scrittura effettuata nelle celle o nelle pagine adiacenti, ciò viene chiamato disturbo di programmazione. Le celle che non vengono programmate ricevono una tensione tale da farle erroneamente apparire come debolmente programmate. In tali casi non vi è un reale danno alla struttura fisica e il problema può essere normalizzato con una semplice cancellazione. Ci sono poi errori di lettura: leggendo più volte dallo stesso blocco si può generare un effetto simile al precedente chiamato appunto disturbo di lettura. In pratica le celle raccolgono una carica sufficente a farle sembrare debolmente programmate. Anche in questo caso una semplice cancellazione normalizza il problema.

Perdita o acquisizione di carica. Un aspetto molto importante è la conservazione nel tempo dei dati all’interno delle celle. Nel corso del tempo le celle sono soggette a perdita o acquisizione di carica che le farà apparire debolmente programmate o in un altro stato non valido. Il blocco non ne viene danneggiato danneggiato e può ancora essere affidabile cancellato e riscritto. Quest’ultimo aspetto basterebbe da solo a determinare pen drive, SSD, memory card e tutti gli apparecchi basati sulle memorie flash come del tutto inaffidabili, esiste invece un efficace rimedio appositamente progettato allo scopo. Si tratta del codice ECC (Error correcting Code) che è in grado di correggere eventuali errori al volo ed in modo del tutto trasparente all’utente finale.

Gestione dei blocchi danneggiati

I Nand chip non sono sempre assolutamente perfetti. C’è da sapere che ogni chip può presentare una certa quantità di blocchi difettosi già dal momento della produzione e verrà messo comunque in commercio con tali difetti. La gestione dei blocchi danneggiati è integrata direttamente all’interno dei chip NAND. Quando viene fallita un’operazione di lettura o scrittura i dati vengono scritti in un blocco diverso e questo viene marcato come difettoso e la flash continua a funzionare regolarmente.

 

Di admin