Naarmate computers kleiner worden, moeten hardwarecomponenten zoals opslagstations dat ook. De introductie van solid-state schijven maakte dunnere ontwerpen zoals Ultrabooks mogelijk, maar dit botste met de industriestandaard SATA-interface. De mSATA-interface is ontworpen om een kaart met een dun profiel te creëren die kan communiceren met de SATA-interface. Een nieuw probleem ontstond toen de SATA 3.0-standaarden de prestaties van SSD’s beperkten. Er moest een nieuwe vorm van compacte kaartinterface worden ontwikkeld om deze problemen te verhelpen. Oorspronkelijk de NGFF (Next Generation Form Factor) genoemd, is de nieuwe interface gestandaardiseerd in de M.2-schijfinterface onder de SATA-versie 3.2-specificaties.
Hogere snelheden
Hoewel grootte een factor is bij het ontwikkelen van een interface, is de snelheid van de schijf even belangrijk. De SATA 3.0-specificaties beperkten de echte bandbreedte van een SSD op de schijfinterface tot ongeveer 600 MB/s, wat veel schijven hebben bereikt. De SATA 3.2-specificaties introduceerden een nieuwe gemengde benadering voor de M.2-interface, net als bij SATA Express. In wezen kan een nieuwe M.2-kaart de bestaande SATA 3.0-specificaties gebruiken en beperkt worden tot 600 MB/s. Of het kan PCI-Express gebruiken, dat een bandbreedte van 1 GB/s biedt onder de huidige PCI-Express 3.0-standaarden. Die snelheid van 1 GB/s is voor een enkele PCI-Express-baan, maar het is mogelijk om meerdere banen te gebruiken. Onder de M.2 SSD-specificatie kunnen maximaal vier rijstroken worden gebruikt. Het gebruik van twee rijstroken zou theoretisch 2,0 GB/s opleveren, terwijl vier rijstroken tot 4,0 GB/s zouden opleveren. Met de uiteindelijke release van PCI-Express 4.0 zouden deze snelheden effectief verdubbelen. De release van PCI-Express 5.0 in 2017 zag een toename van de bandbreedte tot 32 GT/s, met 63 GB/s in een configuratie met 16 banen. PCI-Express 6.0 (2019) zag nog een verdubbeling van de bandbreedte tot 64 GT/s, waardoor 126 GB/s in elke richting mogelijk was.
Kleinere en grotere maten
Een van de doelen van het ontwerp van de M.2-schijf was om de totale omvang van het opslagapparaat te verkleinen. Dit werd op verschillende manieren bereikt. Ten eerste zijn de kaarten smaller gemaakt dan in de vorige mSATA-vormfactor. M.2-kaarten zijn 22 mm breed, vergeleken met de 30 mm mSATA. De kaarten zijn ook korter met een lengte van 30 mm, vergeleken met de 50 mm van mSATA. Het verschil is dat M.2-kaarten langere lengtes tot 110 mm ondersteunen. Dat betekent dat deze schijven groter kunnen zijn, wat meer ruimte biedt voor chips en dus hogere capaciteiten.
Opdrachtmodi
Al meer dan tien jaar maakt SATA van opslag een plug-and-play-operatie. Dit komt door de eenvoudige interface en de AHCI (Advanced Host Controller Interface) commandostructuur. De AHCI is hoe computers instructies communiceren met opslagapparaten. Het is ingebouwd in alle moderne besturingssystemen en er hoeven geen extra stuurprogramma’s te worden geïnstalleerd bij het toevoegen van nieuwe schijven. De AHCI is ontwikkeld in een tijdperk waarin harde schijven een beperkt vermogen hadden om instructies te verwerken vanwege de fysieke aard van de schijfkoppen en platters. Een enkele opdrachtwachtrij met 32 opdrachten was voldoende. Het probleem is dat de huidige solid-state schijven veel meer doen, maar nog steeds worden beperkt door de AHCI-stuurprogramma’s.
Verbeterd stroomverbruik
Een mobiele computer heeft een beperkte looptijd op basis van de grootte van de batterijen en het vermogen dat door de componenten wordt verbruikt. Solid-state schijven verminderen het energieverbruik van de opslagcomponent, maar er is ruimte voor verbetering. Omdat de M.2 SSD-interface deel uitmaakt van de SATA 3.2-specificatie, bevat deze andere functies dan de interface. Dit omvat een nieuwe functie genaamd DevSleep. Aangezien meer systemen zijn ontworpen om in een slaapstand te gaan wanneer ze worden gesloten of uitgeschakeld, in plaats van volledig uit te schakelen, is er een constante belasting van de batterij om sommige gegevens actief te houden voor snel herstel wanneer het apparaat wordt gewekt. DevSleep vermindert de hoeveelheid stroom die door apparaten wordt gebruikt door een nieuwe, lagere energiestatus te creëren. Dit zou de looptijd moeten verlengen voor computers die in de slaapstand worden gezet.
Problemen met opstarten
De M.2-interface is een vooruitgang op het gebied van computeropslag en -prestaties. Computers moeten de PCI-Express-bus gebruiken om de beste prestaties te krijgen. Anders werkt het hetzelfde als elke bestaande SATA 3.0-schijf. Dit lijkt niet zo belangrijk, maar het is een probleem met veel van de eerste moederborden die gebruik maken van de functie. SSD-schijven bieden de beste ervaring bij gebruik als root- of opstartschijf. Het probleem is dat bestaande Windows-software een probleem heeft met het opstarten van veel schijven vanaf de PCI-Express-bus in plaats van vanaf SATA. Dit betekent dat een M.2-schijf met PCI-Express niet de primaire schijf is waarop het besturingssysteem of de programma’s zijn geïnstalleerd. Het resultaat is een snelle gegevensschijf, maar niet de opstartschijf. Niet alle computers en besturingssystemen hebben dit probleem. Apple heeft bijvoorbeeld macOS (of OS X) ontwikkeld om de PCI-Express-bus voor rootpartities te gebruiken. Dit komt omdat Apple hun SSD-schijven in de MacBook Air van 2013 overschakelde naar PCI-Express – voordat de M.2-specificaties waren afgerond. Microsoft heeft Windows 10 bijgewerkt om de nieuwe PCI-Express- en NVMe-schijven te ondersteunen. Oudere versies van Windows werken mogelijk ook als de hardware wordt ondersteund en externe stuurprogramma’s zijn geïnstalleerd.
Hoe het gebruik van M.2 andere functies kan verwijderen
Een ander punt van zorg, met name bij desktop-moederborden, heeft betrekking op de manier waarop de M.2-interface is aangesloten op de rest van het computersysteem. Er is een beperkt aantal PCI-Express-lanes tussen de processor en de rest van de computer. Om een PCI-Express-compatibele M.2-kaartsleuf te gebruiken, moet de fabrikant van het moederbord die PCI-Express-lanes weghalen van andere componenten op het systeem. Hoe die PCI-Express-lanes zijn verdeeld over de apparaten op de borden, is een grote zorg. Sommige fabrikanten delen bijvoorbeeld de PCI-Express-lanes met SATA-poorten. Het gebruik van de M.2-schijfsleuf kan dus meer dan vier SATA-sleuven verbruiken. In andere gevallen kan de M.2 die rijstroken delen met andere PCI-Express-uitbreidingsslots. Controleer hoe het bord is ontworpen om ervoor te zorgen dat de M.2 het mogelijke gebruik van andere SATA-harde schijven, dvd-drives, Blu-ray-drives of andere uitbreidingskaarten niet verstoort.