Deze website maakt gebruik van cookies. Voor meer informatie over de cookies waarvan deze website gebruik maakt klik hier.
Door verder op deze website te surfen geeft u de toestemming aan Minoc Media Services om cookies te gebruiken. verder gaan Created with Sketch.
LEES DIT:  Artificiële intelligentie: download het gratis e-book

Hoe werkt een SSD?

Van alle renovatiewerken die je aan je computer kan uitvoeren, is geen enkele zo belonend als je harde schijf vervangen door een SSD. Hoe komt het dat de schijven zoveel sneller zijn dan klassieke HDD’s?

 
HDD naar SSD

Een klassieke harde schijf bestaat uit een reeks draaiende magnetische schijven en een arm. Aan deze arm zijn lees- en schrijfkoppen bevestigd, die naar de verschillende locaties op een harde schijf worden gebracht om data te schrijven of lezen. Doordat de koppen in lijn moeten zijn met een bepaald gebied op de schijf om de correcte data uit te lezen, is er een zekere wachttijd.

 

Bovendien kan het zijn dat de nodige info zich op verschillende plaatsen op de schijf bevindt. In dat geval moet de drive meermaals wachten tot de schijven in de juiste positie zijn gedraaid. Wanneer een schijf zich in een lage-energiestatus bevindt, kan het enkele seconden duren alvorens de schijf weer op volle snelheid draait.

Geen toekomst

Toen de eerste harde schijven op de markt kwamen, was het onmiddellijk duidelijk dat de technologie onmogelijk de snelheid waaraan CPU’s draaien, kunnen evenaren. De vertragingen van HDD’s worden in milliseconden gemeten, terwijl een processor wachttijden heeft van slechts enkele nanoseconden. In een milliseconde past maar liefst een miljoen nanoseconden; een HDD komt nog niet eens in de buurt van de snelheid van CPU’s.

Fabrikanten proberen dat probleem van de baan te helpen door dunnere schijven te gebruiken, geheugencaches te implementeren en hogere draaisnelheden te introduceren. De Western Digital VelociRaptor, één van de snelste harde schijven voor consumenten en haalt 10.000 omwentelingen per minuut. Schijven voor bedrijven draaien aan een maximum snelheid van 15.000 omwentelingen per minuut, maar kunnen nog steeds de snelheid van CPU’s niet evenaren. Fabrikanten richten daarom hun aandacht op een andere technologie: de SSD.

 

NAND-roosters

Zoals de naam al doet vermoeden, heeft een solid state drive geen bewegende onderdelen. Data wordt bij een SSD opgeslagen in verschillende NAND-geheugencellen, die op hun beurt uit floating gate transistors bestaan. Elektronen worden in de floating gate van de transistors bewaard en hoeven niet regelmatig ververst te worden. Dit maakt van NAND flash non-volatile geheugen.

Een SSD bewaart de waarde 0 door elektronen te stockeren in de floating gate van een transistor.

De NAND-geheugencellen worden in roostervorm aan elkaar gekoppeld. Het volledige rooster wordt een blok genoemd en de verschillende rijen van het rooster de pagina’s. Een pagina heeft meestal een grootte van 2K, 4K, 8K, of 16K en een blok bestaat uit 128 tot 256 pagina’s. De grootte van een blok varieert hierdoor tussen de 256 KB en 4MB.

 

Bits per cel

Uiteraard kan je bij SSD’s net zo goed vertragingen opmeten. Eén van de bepalende factoren voor deze vertragingen is de hoeveelheid bits per cel de SSD gebruikt. Een single-level cell (SLC) ondervindt minder vertraging dan een SSD met meerdere bits per cel. Hierbij is met name de schrijfsnelheid een stuk trager. Een typische triple-level-cell (TLC) SSD leest data vier keer zo traag als een SLC. Wanneer je de schrijfsnelheden vergelijkt, zie je dat de TLC SSD zes keer zo traag is.

Hoe meer bits je bewaart per cel, hoe dichter de verschillende waardes bij elkaar zullen liggen.

Bij een SLC SSD moet de controller slechts nakijken of de waarde 0 of 1  is. Wanneer je de hoeveelheid bits in een cel verhoogt, neemt de hoeveelheid mogelijke waardes exponentieel toe. Zo kan een MLC SSD vier waardes hebben per cel: 00, 01, 10, of 11. Een TLC SSD heeft daarentegen 8 waardes per cel. Om deze waardes te achterhalen, moet de controller een erg precieze voltage gebruiken. De waardes liggen immers dichter bij elkaar.

Lawine-effect

Doordat een SSD geen bewegende onderdelen heeft, kan het erg snel data schrijven naar een lege drive. Het overschrijven van data gebeurt echter een stuk trager. Dit komt doordat het uitlezen en schrijven van data op paginaniveau kan gebeuren. Om één pagina data te verwijderen, dien je echter het volledige blok te wissen. Er moet immers een hoge spanning worden aangebracht om gegevens te wissen, waardoor ook de cellen rond de bedoelde cel onder spanning komen te staan.

 

Dit mechanisme heeft tot gevolg dat wanneer je een bestaande pagina wilt updaten, het volledige blok naar het geheugen gekopieerd moet worden. Het blok wordt hierna van de SSD verwijderd, waarna de gekopieerde content en de geüpdatete pagina naar het lege blok geschreven kunnen worden.

In bovenstaand diagram zie je hoe een SSD omgaat met nieuwe en aangepaste data. Alle data wordt geschreven in blok X, waarna de eerste vier cellen verouderde data bevatten. De correctie info wordt naar blok Y gekopieerd, waarna het volledige blok X gewist kan worden.

Kort samengevat zal er dus voor één data-update een hoop data geschreven moeten worden. Dit wordt in het vakjargon write amplification genoemd. Wanneer je bijvoorbeeld een aanpassing doet aan een bestand van 4 KB zal het volledige blok herschreven moeten worden. Afhankelijk van het aantal pagina’s in het blok en de grootte van de pagina’s kan er tot 4 MB aan data geschreven moeten worden.

Vuilnis

Indien je data wilt schrijven en er geen vrije pagina’s beschikbaar zijn, zal de SSD scannen naar pagina’s die gemarkeerd zijn voor verwijdering, maar nog niet verwijderd zijn. De data kan daarna worden geschreven naar de net gewiste pagina. Hierdoor zal een SSD trager worden na verloop van tijd. Een drive die bijna vol is, zal immers regelmatig het scan- en verwijdermechanisme moeten doorlopen.

 

Garbage collection is een achtergrondproces dat deze vertragingen voor een stuk moet wegwerken. Tijdens rustige periodes zal het proces op zoek gaan naar oude pagina’s die verwijderd mogen worden. Het zal de goede pagina’s van een blok kopiëren naar een andere blok en het oude blok volledig wissen. Op deze manier zijn er weer pagina’s vrij om beschreven te worden.

Slijtage

Een tweede proces dat zorgt voor minder vertragingen heet TRIM. Dit commando laat besturingssystemen toe om tegen een SSD te zeggen dat bepaalde data niet herschreven moet worden wanneer een volgend blok wordt gewist. Dit verlaagt de hoeveelheid data dat door de drive geschreven moet worden en verlengt de levensduur van een SSD. Schrijf- en leesopdrachten beschadigingen flash immers.

 

De bovengenoemde slijtage van flash wordt tegengegaan door een proces dat wear leveling heet. Dit mechanisme zorgt er immers voor dat bepaalde NAND-blokken niet vaker worden beschreven en gewist dan andere blokken. Jammer genoeg heeft dit eveneens write amplification tot gevolg. Een goed algoritme zal dan ook een evenwicht tussen beide problemen zoeken.

Controller

Omwille van bovenstaande problemen en mechanismes hebben SSD’s een gesofisticeerde controller. Vaak maakt de controller gebruik van een DDR3-geheugenpool om de NAND’s te managen. Single level cell-caches fungeren dan weer als buffer en verbeteren de prestaties van de drive. Bovendien is de controller via parallelle geheugenkanalen verbonden met het NAND-geheugen, waardoor het aan load balancing kan doen.

De controller is cruciaal om een snelle SSD te creëren.

De details over SSD-controllers zijn jammer genoeg in een hoop mysterie gehuld. De kwaliteit van controller bepaald immers voor een groot stuk de snelheid van de drive en fabrikanten staan niet te springen om hun geheimen met de concurrentie te delen.

Toekomst

NAND flash biedt een grote verbetering ten opzichte van harde schijven, maar heeft ook zijn nadelen. Zo blijft de prijs van gigabyte een stuk hoger dan wat we gewend zijn van harde schijven. Bovendien is het erg moeilijk om de nodes van een SSD te verkleinen. De meeste hardware verbetert wanneer je de node verkleint; NAND wordt fragieler.

Fabrikanten bekijken verschillende nieuwe technologieën die de fakkel van NAND SSD’s kan overnemen. De 3D XPoint van Intel – beter bekend als Intel Optane – is één van de potentiele uitdagers van NAND flash en momenteel de enige alternatieve technologie op de markt. Waarschijnlijk zullen Optane SSD’s soortgelijk presteren als NAND flash drives als het gaat om sequentiële taken, maar een stuk beter presteren wanneer de wachtrijen van de drives laag zijn. Ook is de vertraging van de drives ongeveer half zo lang als bij NAND flash en heeft de technologie een beter uithoudingsvermogen. Optane-schijven kunnen 30 keer per dag volledig gelezen en beschreven worden, terwijl NAND flash deze taak maar 10 keer per dag kunnen uitvoeren.

Bij Intel Optane worden verschillende NAND-cellen naast en op elkaar gestapeld om veel opslag te creëren op weinig plaats.

Voorlopig is Optane nog te duur om een echte uitdager te zijn van NAND-technologie. De komende 4 tot 5 jaar blijven de klassieke SSD’s aan de top, waarna Optane rijp genoeg is om de technologie te vervangen.

Lees meer over : ssd | tech zone | techzone

  • Fred Fourgon

    De drive moet wachten tot de schijven in de juiste positie zijn gearriveerd?
    => De drive moet wachten tot de R/W koppen in de juiste positie zijn gearriveerd. Als de drive niet in slaap is draaien de schijven continu.

  • Marc L

    Dorien haar recyclagehoekje

    Hoe werkt een SSD?
    Samenvatting: Dat een SSD sneller is dan een klassieke harde schijf hoeven we je waarschijnlijk niet meer te vertellen. Weet je echter ook hoe dit komt?
    Door Dorien Vervoort | 18 Juni 2016
    http://www.zdnet.be/achtergrond/182349/hoe-werkt-een-ssd/

    De plaatjes komen van
    https://www.extremetech.com/extreme/210492-extremetech-explains-how-do-ssds-work

  • Tom

    “Zo blijft de prijs van gigabyte een stuk hoger dan wat we gewend zijn van harde schijven.” is er iets te zeggen waarom dat zo blijft?
    IMHO denk ik dat een beetje zand / glas / edelmetaal en energie (veel) goedkoper is dan mechanische / gekalibreerde bewegende onderdelen. Je zou toch denken dat SSD, zoals de prijs nu zakt, binnen enkele jaren een stuk goedkoper wordt.