Per i dispositivi NAND flash di oggi, la limitazione principale è la durata di vita di Program/Erase (numero di cicli P/E). La soluzione principale per questo limite è la gestione del tasso di usura nell'intero dispositivo NAND flash in modo che ogni blocco sia distribuito uniformemente. Pertanto, per massimizzare la durata di un dispositivo NAND flash è necessaria una gestione efficiente dell'usura di interi blocchi. A tal fine, un metodo consiste nel gestire il ciclo P/E di ciascun blocco individualmente, in modo da distribuirli regolarmente ed evitare la sovrapposizione di alcuni blocchi. Esistono due meccanismi principali di livellamento dell'usura incorporati nel livello di traduzione della flash (FTL): statico e dinamico.
Il livellamento dell'usura è implementato nel flash translation layer (FTL), che è il meccanismo intermedio tra il file system e il dispositivo NANDflash. L'FTL fornisce le regole di mappatura dall'indirizzamento logico a quello fisico. Il livellamento dell'usura contribuisce a ridurre l'usura dei blocchi rispetto alle regole di mappatura. Come mostrato nella Figura 1.
Wear Leveling in the FTL
Il dispositivo NAND flash può essere suddiviso in tre parti. Il blocco dati è riservato alla capacità logica, il blocco libero è assegnato al livellamento dell'usura e alla gestione del pool di blocchi danneggiati, mentre il blocco di sistema è assegnato alla tabella di mappatura, al blocco della cache, ecc. Come mostrato nella Figura 2.
Flash Block Management
4-1 LIVELLO DI USURA DINAMICO
In un dispositivo NAND flash esistono due tipi di sottoinsiemi di dati: dati statici e dati dinamici. I dati statici sono informazioni utilizzate raramente e che cambiano raramente nei blocchi fisici. I dati dinamici, invece, cambiano frequentemente e vengono costantemente riprogrammati. Il livellamento dinamico dell'usura alloca i dati dinamici nei blocchi liberi che hanno avuto il minor numero di cicli di P/E. Questo metodo è più semplice da implementare, ma per ottimizzare completamente l'intero dispositivo flash non è una tecnica completa. Come mostrato nella Figura 3.
Dynamic Wear Leveling
4-2
livellamento statico dell'usuraIl livellamento statico dell'usura prende in considerazione un intero die di NAND flash, comprese le aree vuote e i blocchi su cui è già stata effettuata una scrittura. Il livellamento statico dell'usura alloca i dati statici nel blocco libero, consentendo così la liquidità del dispositivo flash. Può modificare il collo di bottiglia del livellamento dell'usura generale e ottenere un uso più efficiente dell'array di memoria, massimizzando così la durata del dispositivo flash. Come mostrato nella Figura 4.
Static Wear Leveling
4-3 LIVELLAMENTO GLOBALE DELL'USURAA
differenza del livellamento statico dell'usura, che funziona solo su un singolo die della NAND flash, il livellamento globale dell'usura copre l'intero dispositivo. In questo modo si garantisce che il comportamento di scrittura avvenga in blocchi su cui si scrive meno frequentemente nell'intero dispositivo. Questo equilibrio si ottiene separando il dispositivo flash in diverse zone. Se l'host continua ad accedere ripetutamente alla stessa zona, è probabile che questa si consumi più rapidamente. Il livellamento globale dell'usura interviene per evitare che ciò accada, riassegnando gli accessi e garantendo un livello uniforme di usura. Come mostrato nella Figura 5.
Global Wear Leveling
Comparison of Different Wear Leveling Mechanisms
Le schede SD di SP Industrial della serie SDI730/530/330 e le schede microSD della serie SDT730/530/330 sono dotate di tutti questi meccanismi: livellamento globale dell'usura, livellamento statico dell'usura e livellamento dinamico dell'usura. La serie di schede microSD SDT550/350 di SP Industrial è dotata di meccanismi di livellamento dell'usura statica e dinamica. Queste schede sono state ampiamente adottate per applicazioni critiche, tra cui la registrazione di video di sorveglianza con telecamera da cruscotto e i sistemi telematici per i fornitori automobilistici di primo livello, i sistemi di registrazione dei dati per le stazioni base 4G/5G delle telecomunicazioni e la registrazione dei dati dei pazienti per le apparecchiature mediche di ventilazione nelle unità di terapia intensiva degli ospedali.