Voor de huidige NAND-flashapparaten is de belangrijkste beperking de programmeer-/verwijderingslevensduur (aantal P/E-cycli). De belangrijkste oplossing voor deze beperking is het beheren van de slijtage in het gehele NAND-flashapparaat, zodat elk blok gelijkmatig wordt verdeeld. Daarom is efficiënt beheer van het verslijten van hele blokken nodig om de levensduur van een NAND-flashapparaat te maximaliseren. Om dit te bereiken is één methode het beheren van de P/E-cyclus van elk blok afzonderlijk, wat helpt om ze regelmatig te verdelen en overlapping op sommige blokken te voorkomen. Er zijn twee primaire mechanismen voor slijtagenivellering ingebed in de flashvertaallaag (FTL) - statisch en dynamisch.
Slijtagenivellering is geïmplementeerd in de flashvertaallaag (FTL), die het intermediale mechanisme is tussen het bestandssysteem en het NANDflash-apparaat. De FTL levert de regels voor de toewijzing van logische naar fysieke adressering. Wear leveling zal helpen om het verslijten van blokken over de mappingregels te verminderen. Zoals weergegeven in afbeelding 1.
Wear Leveling in the FTL
Het NAND-flashapparaat kan in drie delen worden verdeeld. Het datablok is gereserveerd voor logische capaciteit, het vrije blok is toegewezen aan wear leveling en bad block pool management, en het systeemblok is toegewezen aan de mapping tabel, cache blok, etc. Zoals weergegeven in figuur 2.
Flash Block Management
4-1 DYNAMIC WEAR LEVELING
DYNAMISCH SLIJNIVEAUEr zijn twee soorten gegevensondergroepen in een NAND-flashapparaat: statische gegevens en dynamische gegevens. Statische gegevens zijn gegevens die zelden worden gebruikt en zelden worden gewijzigd in fysieke blokken. Dynamische gegevens veranderen daarentegen vaak en worden voortdurend opnieuw geprogrammeerd. Dynamische slijtagenivellering wijst dynamische gegevens toe aan de vrije blokken die de minste P/E-cycli hebben gehad. Het is eenvoudiger om deze methode te implementeren, maar om het gehele flashapparaat volledig te optimaliseren, is het geen allesomvattende techniek. Zoals weergegeven in afbeelding 3.
Dynamic Wear Leveling
4-2 STATIC WEAR LEVELING
Static wear leveling beschouwt een volledige NAND flash matrijs, inclusief lege gebieden en blokken waarnaar al is geschreven. Statische slijtagenivellering wijst statische gegevens toe aan het vrije blok; als zodanig maakt het liquiditeit van het flashapparaat mogelijk. Het kan de knelpunten van algemene slijtagenivellering aanpassen en efficiënter gebruik maken van de geheugenarray, waardoor de levensduur van het flashapparaat wordt gemaximaliseerd. Zoals getoond in Figuur 4.
Static Wear Leveling
4-3 GLOBAL WEAR LEVELING
In tegenstelling tot statische slijtagenivellering, die alleen werkt op een enkele NAND flash matrijs, beslaat het bereik van globale slijtagenivellering het gehele apparaat. Dit zorgt ervoor dat schrijfgedrag optreedt in blokken waarnaar minder vaak wordt geschreven in het hele apparaat. Deze balans wordt bereikt door het flash-apparaat in verschillende zones te verdelen. Als de host dezelfde zone herhaaldelijk blijft benaderen, zal die zone waarschijnlijk sneller verslijten. Global wear leveling grijpt in om dit te voorkomen door die toegang opnieuw toe te wijzen en te zorgen voor een gelijkmatig niveau van slijtage. Zoals getoond in afbeelding 5.
Global Wear Leveling
Comparison of Different Wear Leveling Mechanisms
De SD-kaartenseries SDI730/530/330 en microSD-kaartenseries SDT730/530/330 van SP Industrial zijn uitgebreid uitgerust met al deze mechanismen: globale slijtagenivellering, statische slijtagenivellering en dynamische slijtagenivellering. Deze veelzijdige dekking om alle verschillende statussen van het flashgebruik te beheren, zorgt voor de beste duurzaamheid en de hoogste betrouwbaarheid voor optimale prestaties van het NAND-flashgeheugen. De SDT550/350-serie microSD-kaarten van SP Industrial is uitgerust met statische en dynamische slijtagenivelleringsmechanismen. Het biedt de optie voor een hogere capaciteit met 3D TLC, maar zonder het compromis van het uithoudingsvermogen van de P/E-cyclus. Deze serie wordt veel gebruikt in kritieke toepassingen, zoals het opnemen van videobeelden van dash-camera's en telematicasystemen voor tier-1 automobielfabrikanten, datalogsystemen voor 4G/5G-basisstations van telecombedrijven en het opnemen van patiëntgegevens voor medische beademingsapparatuur in ICU's van ziekenhuizen.