OpslagReview. com

SSD-flash

Solid State Flash-geheugen is beschikbaar met behulp van NAND- en NOR-technologie. NOR-technologie maakt directe willekeurige adressering en gegevensstroom mogelijk op dezelfde manier als een normale RAM-geheugenchip, waardoor deze kan worden gebruikt voor programma-opslag en uitvoering binnen een verwerkingssysteem. NOR Flash-chips zijn langzamer, minder dicht en hebben een beperkt herschrijfvermogen, waardoor ze inferieur zijn aan op NAND gebaseerde oplossingen wanneer ze worden gebruikt als alternatief voor een roterende schijf.   

NAND Flash-technologie is een serieel geheugen, net als een schijfstation. Gegevens worden geadresseerd en opgeslagen in blokken in plaats van als individuele adresseerbare bits of bytes. Op NAND Flash gebaseerde Solid State Drives zijn ontworpen om vanuit het systeemperspectief een roterende magnetische schijf na te bootsen, wat een snellere toegangstijd en vergelijkbare gegevensdoorvoersnelheden biedt. Het grootste nadeel van een SSD ten opzichte van een magnetische schijf is de datadichtheid en de kosten per megabyte.

Flash-componenten
 
Omwille van dit gedeelte zullen we ons concentreren op NAND-componenten, aangezien deze het SSD-aanbod domineren. NAND Flash-componenten zijn er in dichtheden van 1Gb (gigabit) tot 64Gb per chip. Er zijn ook Single Level Cell (SLC) en Multi-Level Cell (MLC) configuraties, waarbij SLC een enkele bit per cel kan opslaan en MLC meer dan 1 bit per cel kan opslaan.  
 
Net als sectoren en tracks op een magnetische schijf, hebben NAND Flash-componenten structuren die pagina's en blokken worden genoemd. Pagina's zijn sectoren en blokken zijn analoog aan tracks, en net als op een schijf is er een foutcorrectiecode (ECC) gekoppeld aan elke sector. Een gebruikelijke NAND Flash-componentconfiguratie is 128 pagina's van elk 4,096+128 bytes voor een blokgrootte van 512 KB. Gegevens worden sequentieel gelezen en geschreven, ook net als een schijf.
 
NAND Flash heeft ook inherente celdefecten, net zoals oppervlaktedefecten op een schijf. Hierdoor zijn reservegegevensblokken in het apparaat aanwezig en is er een hertoewijzingstabel in het apparaat aanwezig, zodat de systeemsoftware defecte gegevensblokken kan maskeren wanneer deze worden ontdekt. 
 
In tegenstelling tot een magnetische schijf heeft NAND Flash een beperkt herschrijfvermogen van ongeveer 1,000,000 keer per blok. Je kunt gewoon niet voor onbepaalde tijd naar dezelfde blokken schrijven. Daarom wordt een wear-leveling-schema gebruikt om meer algemeen toegankelijke gebieden, zoals een directory, periodiek te verplaatsen. Wear-leveling is vergelijkbaar met het defragmenteren van een harde schijf, maar in het geval van NAND Flash moet dit gebeuren, anders kunnen er uiteindelijk gegevens verloren gaan.
 
Enige ondersteuning voor wear-leveling is ingebouwd in sommige Flash-chips, hoewel deze functie meestal wordt uitgevoerd door de controller of de systeemsoftwarelaag. Er wordt veel moeite gedaan om de wear-leveling-activiteit te verbergen, zodat deze de normale apparaatprestaties niet verstoort.
 
De Open NAND Flash Interface-groep (ONFI) heeft een standaard ontwikkeld voor NAND Flash-componenten die op grote schaal door de industrie is overgenomen. Deze standaard biedt een gemeenschappelijke I/O- en commandoset en heeft een gemeenschappelijke architectuur effectief gestandaardiseerd voor ONFI-compatibele componenten. Deze architectuur bevat de volgende gemeenschappelijke elementen:
 
  • Gegevensinterface - meestal 8 bit, soms 16 bit in dichtere delen
  • I/O-controller - Multiplext gegevens, commando's en statuswoordtypen. Decodeert commando's
  • Control Logic – Beheert I/O-transactie-handshake met Flash-controller
  • Address Register – Identificeert het blok waartoe toegang moet worden verkregen voor lezen of schrijven
  • Data/Cache register – een statisch register van één woord om gegevens te bufferen tussen I/O en Array
  • Statusregister – Markeert fouten in transacties en gegevensstroom
  • Rij-/kolomdecodering – splitst de adreswaarde op in paginawaarden
  • Flash Array – de Flash-cellen gerangschikt in rijen en kolommen

 

flitsende delen
Typisch SSD Flash Component-blokschema
 
De onderstaande tabel beschrijft elk van de I/O- en besturingslijnen in meer detail voor standaard ONFI NAND Flash-onderdelen. 
 
Controle lijn
Beschrijving
Gebruik
MAAR
Invoer
Adresvergrendeling inschakelen: Gedurende de tijd dat ALE HOOG is, is adresinformatie dat ook
overgebracht van I/O[7:0] naar het adresregister op de chip. Van LAAG naar HOOG
overgang op WE # - wanneer adresinformatie niet wordt geladen - de ALE-signalen
moet LAAG worden gereden.
CE#
Invoer
Chip inschakelen: Gates-overdrachten tussen het hostsysteem en het NAND Flash-apparaat.
Nadat het apparaat bezet raakt of een PROGRAM- of ERASE-bewerking start, kan CE# zijn
de-beweerd. Zie “Busbediening” op pagina 16 voor aanvullende operationele details.
CLE
Invoer
Opdrachtvergrendeling inschakelen: wanneer CLE HOOG is, wordt informatie overgedragen van
I/O [7:0] naar het commandoregister op de chip op de stijgende flank van WE#. Wanneer
commando-informatie wordt niet geladen, de CLE-signalen moeten LAAG worden aangestuurd.
LOCK
Invoer
Wanneer LOCK tijdens het opstarten op HIGH staat, is de BLOCK LOCK-functie ingeschakeld.
Om BLOCK LOCK uit te schakelen, verbindt u LOCK met VSS tijdens het opstarten of laat u deze staan
niet verbonden (interne pull-down).
KONING#
Invoer
Lezen inschakelen: Gates-overdrachten van het NAND Flash-apparaat naar het hostsysteem.
WIJ#
Invoer
Schrijfvrijgave: Gates-overdrachten van het hostsysteem naar het NAND Flash-apparaat.
WP #
Invoer
Schrijfbeveiliging: Beschermt tegen onbedoelde PROGRAM- en ERASE-bewerkingen. Alle
PROGRAMMA- en ERASE-bewerkingen zijn uitgeschakeld wanneer WP # LAAG is.
I/O[7:0] (x8)
I/O[15:0] (x16)
I / O
Gegevensinvoer/-uitvoer: Bidirectionele I/O-signalen verzenden adres, gegevens en instructies
informatie. Gegevens worden alleen uitgevoerd tijdens LEES-bewerkingen; op andere momenten de I/O
signalen zijn ingangen.
R/B#
uitgang
Gereed/bezet: Het gereed/bezet-signaal is een open-drain, actief-LAAG uitgang, die gebruik maakt van een
externe pull-up weerstand. Het signaal wordt gebruikt om aan te geven wanneer de chip aan het verwerken is
PROGRAM of ERASE operatie. Het signaal wordt ook gebruikt tijdens LEES-bewerkingen om
aangeven wanneer gegevens worden overgedragen van de array naar het seriële gegevensregister.
Wanneer deze bewerkingen zijn voltooid, keert het gereed/bezet-signaal terug naar de hoge impedantie
staat.
VCC
Supply
VCC: De VCC-bal is de voeding.
VSS
Supply
VSS: De VSS-bal is de massaverbinding.
 
Enkele kenmerken van deze standaard zijn:
 
  • Discovery - stelt de Flash-controller in staat om de kenmerken van de Flash-component te bepalen
  • LUN-adressering – stelt de controller in staat om bewerkingen op Flash-componenten onafhankelijk te activeren
  • Interleaving - stelt de controller in staat om bewerkingen op een set Flash-componenten te synchroniseren
  • Caching – zorgt ervoor dat gegevens van/naar de controller kunnen stromen, onafhankelijk van Flash-arraybewerkingen
  • Copyback - stelt de Flash-component in staat om gegevens van het ene blok naar het andere te verplaatsen zonder directe tussenkomst van de controller
 
De belangrijkste leveranciers van SSD Flash-componenten die begin 2010 op de markt zijn, zijn onder meer:
 
  • Hynix
  • Intel
  • Micron
  • SanDisk
  • Toshiba
  • Numonyx (ST Micro)
  • Samsung
 
Elke leverancier biedt verschillende capaciteiten, snelheden en functies om zich te onderscheiden van hun concurrenten.
Systeemontwerpers voeren een reeks afwegingen uit bij het selecteren van een leverancier en een bepaalde Flash-component voor hun doel-SSD-product en doelmarkt(en).  
 
De afwegingen zijn onder meer:
 
  • programmatische – kosten, planning, ondersteuning, garantie en beschikbaarheid.
  • Technisch - prestaties, kracht, pakketopties, functies, schaalbaarheid en flexibiliteit.
  • Overige – gemeenschappelijkheid, compatibiliteit, documentatie, ontwikkelingsondersteuning, testen en reputatie.
 
Tijdens het selectieproces van Flash-componenten voert de systeemontwerper dezelfde analyse uit voor de Flash-controller en andere onderdelen die nodig zijn in het SSD-ontwerp. Het is een iteratief proces om de juiste combinatie van leveranciers en componenten te vinden om zo goed mogelijk aan de vereisten voor het specifieke product te voldoen.   
 
Technologische evolutie
 
De volgende generatie Flash-componenten integreert meer functionaliteit in de basiscomponent en biedt een intelligente interface in plaats van een standaard Flash-geheugenbus van het ONFI-type die tegenwoordig door SSD's wordt gebruikt.
 
In eerste instantie zal deze aanpak het mogelijk maken NAND Flash-componenten dichter bij de hostprocessorbus te brengen voor producten zoals mobiele apparaten, waardoor een grote opslagcapaciteit wordt geboden en ondersteuning wordt geboden voor high-definition datastreaming en -opname. 
 
Voor de pc is er momenteel geen "DIMM"-standaard voor NAND Flash in de pc. Het is nodig. Dit omvat een modulegrootte, connector, bustype, foutbeheer en stuurprogramma's. 
 
Gerelateerde gidsen: