Skriv ut
Den snabbt ökande användningen av NAND-minnen drivs allt från konsument- och mobilprodukter över fordons- och industriprodukter till den färska IoT-trensen. Sedan Toshiba lanserade NAND år 1984 har både tekniken och marknaden utvecklats kraftigt. Packningsgraden har ökat 2 000 gånger när tillverkningsprocessen gått från 700 nm till 15 nm i kombination med teknik för flera bitar per cell. Resultat har blivit ett prisfall mätt kostnad per Gigabit som varit snabbare än teknikutvecklingen vilket gjort NAND till ett förstahandsval för många tillämpningar.
embexLadda ner artikeln på 500 kbyte här (länk, pdf).
Fler tekniska rapporter finns på etn.se/expert
Men medan priset per bit har minskat har det inte alltid varit så lätt att byta till en ny processnod. En av utmaningarna har varit att ny NAND-teknik tenderar att kräva kraftfullare felkorrigering (ECC) av styrkretsarna. Det här är en ständigt pågående kapplöpning eftersom styrkretsarna inte hinner med att implementera nya felkorrigeringsscheman i samma takt som de dyker upp.
Exempelvis krävs bara en bit för 512 byte när minnet har en bit (single level cell) ner till 43 nm. Det ökar till åtta bitars felkorrigering för 512 byte på 24 nm vilket gör processbytet besvärligt och påverkar prestanda negativt om inte en mer avancerad felkorrigering används.

Även om det finns teknik för att tillverka flash med ännu mindre geometrier så börjar problem med tillförlitlighet och livslängd göra sig påminda. Dessutom har det kommit NAND-celler som kan lagra två bitar per cell (multi-level cell, MLC) och tre bitar per cell (triple level cell, TLC). Antalet läs- och skrivcykler påverkas dock för de senare. En cell med en bit klarar ungefär 60 000 cykler, en cell med två bitar 3 000 cykler och en cell med tre bitar bara 500 cykler. Siffrorna gäller för identiska felkorrigeringsalgoritmer.

Eftersom NAND-minnen kan degradera och slitas ut sätts det en övre gräns för antalet skrivcykler till varje cell. Man måste också bygga in algoritmer för att använda alla minnesceller lika mycket.

När man beräknar systemets livstid utgående från NAND-minnet är det viktigt att komma ihåg att administrationen av minnet ger fler skrivcykler per cell än enbart de data som skrivs. Det beror på att administrationen bland annat flyttar data mellan olika celler vilket ökar antalet skrivcykler.

Medan skrivfunktionen i NAND arbetar med en sida i taget så sker raderingen på hela block (som består av flera sidor). För att förbereda en radering av ett block måste därför en del data kopieras till andra block. Det här förfarandet kallas för sophämtning.

För många existerande tillämpningar som använder enbitars NAND-minnen inklusive industriella produkter, kommunikationsprocessorer och fordonssystem är felkorrigeringen implementerad i mjukvara i en styrkrets utan att det märkbart påverkar prestanda. Att gå över till den senaste generationen kräver 4-, 8- eller till och med 24-bitars felkorrigering vilket ökar kraven på processorn dramatiskt och därmed sjunker prestanda.

För att slippa det här straffet har det blivit vanligt att välja NAND-flash med integrerad felkorrigering. Toshibas BENAND (Built-in ECC NAND) är ett exempel på en sådana produkt.

BENAND använder det vanliga gränssnittet för NAND vilket gör dem kompatibla med enbitars NAND flash vad gäller instruktionsuppsättning, användning, kapsling och benkonfiguration. Kretsen hanterar själv saker som dåliga block, jämn användning av minnescellerna, adresshantering och sophämtning på samma sätt som i en enbitars NAND.

BENAND finns från 1 Gbit till 8 Gbit kapslade som TSOP-I-48-P och 63-anslutningars BGA som är anslutningskompatibla med motsvarande enbitarsminnen. Det finns också en liten 6,5 mm 5 8,0 mm BGA med 67 anslutningar som passar bra när utrymmet är begränsat. Att enbitars-NAND och BENAND är direkt ben- och kapselkompatibla gör det till en enkel uppgift att uppgradera minnet till den senaste generationen. Det här angreppssättet har gjort det möjligt för Toshibas kunder att använda BENAND i både befintliga och nya konstruktioner vilket ger den nyaste teknikens fördelar samtidigt som de undviker de höga kostnader som en omkonstruktion liksom underhåll av gammal teknik alltid medför.

e.MMC NAND går ett steg längre än BENAND i och med att det även innehåller minneskontrollern. De här minnena följer Jedec-standarden och används bland annat i mobiltelefoner, surfplattor, set-top-boxar, tv-apparater och industridatorer. Den inbyggda kontrollern sköter bland annat felkorrigeringen, ser till att alla celler används lika mycket och hanterar dåliga block så att minnet fungerar korrekt.

Lösningar för e.MMC baseras normalt på flerbitars-NAND och kombinerar rena flerbitars-NAND med en minneskontroller. För att öka tillförlitligheten när data ofta ändras kan minnena använda en modell kallade pseudo-enkelbitars (pSLC) som emulerar enbitars-NAND genom att lagra bara en bit i varje flerbitarscell. Den här metoden gör det möjligt att skriva data tio gånger snabbare än med ett vanligt flerbitars-NAND och med samma tillförlitlighet. Det här kan vara användbart i tillämpningar som set-top-boxar som kan pausa livesändningar.

pSLC-läget måste aktiveras vid initialiseringen och NAND-kontrollern sköter flerbitarsminnet som om det skulle ha varit ett vanligt minne. Stora e.MMC kan använda tekniker som interleaving för att dubblera prestanda genom att adressera flera områden parallellt. Under läsning och skrivning är minnet upptaget och måste vänta på ett svar. Om den integrerade kontrollern kan accessa ett annat minne eller ett separat NAND-register (alternativt NAND-buss) är det möjligt att göra multipla accesser (läsning/skrivning/radering).

Gränssnittet för e.MMC-minnen är specificerat av Jedec vilket gör produkter från olika tillverkare kompatibla med varandra. Gränssnittet är standardiserat för en parallell buss med 8/4/1 bitar plus ett par styrsignaler. Däremot är gränssnitt till NAND-kretsarna inte nödvändigtvis standardiserade och använder åtta parallella bitar plus ett par för styrsignaler.

Den senaste versionen av Jedecs standard för e.MMC, v5.0, definierar snabbare gränssnitt (HS400) som klarar system med högre prestanda. Det inkluderar också uppdateringsprocedurer som tillåter installation av nya versioner av firmware för kontrollern även när produkten är installerad i fält. Det finns en funktion för att på ett säkrare sätt försätta kontrollern i sovläge och därmed sänka energiförbrukningen.

En nyckelkomponent är att nya versioner av e.MMC är bakåtkompatibla med tidigare versioner. Av den orsaken är även layouten i anslutningarna bakåtkompatibel samtidigt som det går att få ut bättre prestanda med version 5.0.

Precis som med andra digitala kretsar finns det en trend mot bättre prestanda och lägre energiförbrukning i allt kompaktare format. Toshiba använder sin process på 15 nm för flashminnen av typen e.MMC för att möta kraven. Det finns också behov av att garantera tillgängligheten på äldre produkter och BENAND är en lösning på det i och med att man inte behöver uppgradera kontrollern trots att man använder den senaste generationen.

Det finns också en trend mot användning av e.MMC-flash över ett större temperaturområde. Dagens standardiserade temperaturområde är –25 till +85 °C. Toshiba har startat tillverkning som klarar krav från industrin och fordonsbranschen med ett temperaturområde på –40 till +85 °C.

Tittar man lite längre fram kommer de mest avancerade smartmobilerna och surfplattorna att vara de första produkterna som tar steget från dagens flash av typen e.MMC till vad som kallas universal flash storage (UFS) som är i tidig volymproduktion. Med en initial datatakt på 300 Mbyte/s (2,9 Gbit per sekund och kanal) siktar minnet in sig på avancerade konsumentprodukter. Nästa generation av specifikationen siktar på hastigheter på åtminstone 5,8/11,6 Gbit/s och kan implementeras som flerkanaliga lösningar. Data kan skickas över den seriella bussen samtidigt för både upp- och nedlänk.