StorageReview.com

SSD Flash

Solid State Flash-minne är tillgängligt med hjälp av NAND- och NOR-teknik. NOR-teknologin tillåter direkt slumpmässig adressering och dataflöde på samma sätt som ett vanligt RAM-minneschip gör, vilket gör att det kan användas för programlagring och exekvering inom ett bearbetningssystem. NOR Flash-chips är långsammare, mindre täta och har en begränsad omskrivningsuthållighet, vilket gör dem sämre än NAND-baserade lösningar när de används som ett alternativ till en roterande skiva.   

NAND Flash-tekniken är ett seriellt minne precis som en hårddisk. Data adresseras och lagras i block snarare än som individuella adresserbara bitar eller bytes. NAND Flash-baserade Solid State-enheter är designade för att efterlikna en roterande magnetisk skiva ur systemets perspektiv, vilket ger snabbare åtkomsttid och jämförbara datagenomströmningshastigheter. Den största nackdelen med en SSD i förhållande till magnetisk disk är datatäthet och kostnad per megabyte.

Flash-komponenter
 
För detta avsnitts skull kommer vi att fokusera på NAND-komponenter eftersom de dominerar SSD-erbjudanden. NAND Flash-komponenter kommer i densiteter från 1 Gb (gigabit) till 64 Gb per chip. Det finns också Single Level Cell (SLC) och Multi-Level Cell (MLC) konfigurationer, med SLC som kan lagra en enda bit per cell och MLC kan lagra mer än 1 bit per cell.  
 
I likhet med sektorer och spår på en magnetisk enhet har NAND Flash-komponenter strukturer som kallas sidor och block. Sidor är sektorer och block är analoga med spår, och precis som på en disk finns det en ECC (Error Correction Code) kopplad till varje sektor. En vanlig NAND Flash-komponentkonfiguration är 128 sidor med 4,096 128+512 byte vardera för en blockstorlek på XNUMX KB. Data läses och skrivs sekventiellt, också precis som en disk.
 
NAND Flash har också inneboende celldefekter, ungefär som ytdefekter på en disk. På grund av detta tillhandahålls reservdatablock i enheten och en ommappningstabell tillhandahålls i enheten för att tillåta systemprogramvara att maskera felaktiga datablock när de upptäcks. 
 
Till skillnad från en magnetisk skiva har NAND Flash en begränsad omskrivningsbeständighet på cirka 1,000,000 XNUMX XNUMX gånger per block. Du kan bara inte skriva till samma block på obestämd tid. På grund av detta används ett slitageutjämningsschema för att flytta mer allmänt tillgängliga områden, såsom en katalog, med jämna mellanrum. Slitageutjämning liknar att defragmentera en hårddisk, men i fallet med NAND Flash måste det ske, annars kan data så småningom gå förlorade.
 
Visst stöd för slitageutjämning är inbyggt i vissa Flash-chips, även om den här funktionen oftast utförs av styrenheten eller systemprogramvaran. Mycket ansträngning görs för att dölja den slitageutjämnande aktiviteten så att den inte stör enhetens normala prestanda.
 
Open NAND Flash Interface-gruppen (ONFI) utvecklade en standard för NAND Flash-komponenter som har anammats allmänt av branschen. Denna standard tillhandahåller en gemensam I/O och kommandouppsättning, och standardiserade effektivt en gemensam arkitektur för ONFI-kompatibla komponenter. Denna arkitektur innehåller följande vanliga element:
 
  • Datagränssnitt – vanligtvis 8 bitar, ibland 16 bitar i tätare delar
  • I/O-styrenhet – Multiplexerar data-, kommando- och statusordtyper. Avkodar kommandon
  • Kontrolllogik – Hanterar I/O-transaktionshandskakning med Flash-kontroller
  • Adressregister – Identifierar blocket som ska nås för läsning eller skrivning
  • Data/Cache-register – ett statiskt register med ett ord för att buffra data mellan I/O och Array
  • Statusregister – Flaggar fel i transaktioner och dataflöde
  • Rad-/kolumnavkodning – delar upp adressvärdet i sidvärden
  • Flash Array – Flash-cellerna ordnade i rader och kolumner

 

blixtdelar
Typiskt blockschema för SSD Flash Component
 
Tabellen nedan beskriver var och en av I/O- och kontrolllinjerna mer detaljerat för standard ONFI NAND Flash-delar. 
 
Kontrollrad
BESKRIVNING
Användning
ALE
Ingång
Aktivera adresslås: Under tiden ALE är HÖG, är adressinformation
överförs från I/O[7:0] till adressregistret på kretsen. Vid LÅG till HÖG
övergång på WE#—när adressinformation inte laddas — ALE-signalerna
ska köras LÅG.
CE#
Ingång
Chip aktivering: Gates överföringar mellan värdsystemet och NAND Flash-enheten.
Efter att enheten blir upptagen eller startar en PROGRAM- eller ERASE-operation kan CE# vara
avhävd. Se "Busdrift" på sidan 16 för ytterligare driftsinformation.
CLE
Ingång
Kommandospärraktivering: När CLE är HÖG överförs information från
I/O [7:0] till kommandoregistret på chipet på den stigande kanten av WE#. När
kommandoinformation laddas inte, CLE-signalerna bör drivas LÅG.
LÅS
Ingång
När LOCK är HÖG under uppstart är funktionen BLOCK LOCK aktiverad.
För att inaktivera BLOCK LOCK, anslut LOCK till VSS under uppstart eller lämna det
oansluten (intern neddragning).
KUNG#
Ingång
Läsaktivering: Gates överför från NAND Flash-enheten till värdsystemet.
VI#
Ingång
Skrivaktivering: Gates överför från värdsystemet till NAND Flash-enheten.
WP#
Ingång
Skrivskydd: Skyddar mot oavsiktliga PROGRAM- och RADERA-operationer. Allt
PROGRAM- och ERASE-operationer är inaktiverade när WP# är LÅG.
I/O[7:0] (x8)
I/O[15:0] (x16)
I / O
Dataingångar/utgångar: Dubbelriktade I/O-signaler överför adress, data och instruktioner
information. Data matas ut endast under LÄS-operationer; vid andra tillfällen I/O
signaler är ingångar.
R/B#
Produktion
Klar/upptagen: Klar/upptagen-signalen är en öppen dränering, aktiv LÅG-utgång, som använder en
externt pull-up motstånd. Signalen används för att indikera när chipet bearbetar en
PROGRAMMERA eller RADERA operation. Signalen används även under READ-operationer till
indikerar när data överförs från arrayen till det seriella dataregistret.
När dessa operationer har slutförts återgår klar/upptagen-signalen till den höga impedansen
tillstånd.
VCC
Utrustning
VCC: VCC-kulan är strömförsörjningen.
VSS
Utrustning
VSS: VSS-kulan är jordanslutningen.
 
Några av funktionerna i denna standard inkluderar:
 
  • Upptäckt – låter Flash-kontrollenheten bestämma egenskaperna hos Flash-komponenten
  • LUN-adressering – låter styrenheten aktivera operationer på Flash-komponenter oberoende
  • Interleaving – låter styrenheten synkronisera operationer på en uppsättning Flash-komponenter
  • Cachning – tillåter data att flöda till/från styrenheten oberoende av Flash-arrayoperationer
  • Copyback – gör att Flash-komponenten kan flytta data från ett block till ett annat utan direkt kontrollinblandning
 
De viktigaste leverantörerna av SSD Flash-komponenter på marknaden i början av 2010 inkluderar:
 
  • Hynix
  • Intel
  • Micron
  • SanDisk
  • Toshiba
  • Numonyx (ST Micro)
  • Samsung
 
Varje leverantör erbjuder en mängd olika kapacitet, hastigheter och funktioner för att skilja sig från sina konkurrenter.
Systemdesigners gör en serie avvägningar när de väljer en leverantör och särskild Flash-komponent för sin mål-SSD-produkt och målmarknad(er).  
 
Avvägningarna inkluderar:
 
  • programmatisk – kostnad, schema, support, garanti och tillgänglighet.
  • Teknisk – prestanda, kraft, paketalternativ, funktioner, skalbarhet och flexibilitet.
  • Övrigt – gemensamhet, kompatibilitet, dokumentation, utvecklingsstöd, testning och rykte.
 
I processen för val av Flash-komponenter gör systemdesignern också samma analys för Flash-kontrollern och andra delar som behövs i SSD-designen. Det är en iterativ process att hitta rätt kombination av leverantörer och komponenter för att på bästa sätt uppfylla kraven för den specifika produkten.   
 
Teknikutveckling
 
Nästa generation av Flash-komponenter integrerar mer funktionalitet i den grundläggande komponenten och erbjuder ett intelligent gränssnitt snarare än en standard Flash-minnesbuss av ONFI-typ som används av SSD:er idag.
 
Inledningsvis kommer detta tillvägagångssätt att tillåta NAND Flash-komponenter att föras närmare värdprocessorbussen för produkter som mobila enheter, vilket erbjuder stor lagringskapacitet och stöd för högupplöst dataströmning och inspelning. 
 
För PC:n finns det för närvarande ingen "DIMM"-standard för NAND Flash i datorn. Det behövs. Detta skulle inkludera en modulstorlek, kontakt, busstyp, felhantering och drivrutiner. 
 
Relaterade guider: