Omdat computers, met name laptops, steeds kleiner worden, moeten componenten zoals opslagdrives ook overeenkomstig kleiner worden. Met de introductie van solid-state drives werd het een beetje eenvoudiger om ze in steeds dunner wordende ontwerpen zoals Ultrabooks te plaatsen, maar het probleem bleef toen de standaard SATA-interface gebruiken. Uiteindelijk werd de mSATA-interface ontworpen om een dunne profielkaart te maken die nog steeds kon communiceren met de SATA-interface. Het probleem is nu dat de SATA 3.0-standaarden de prestaties van SSD's beperken. Om deze problemen te verhelpen, moest een nieuwe vorm van een compacte kaartinterface worden ontwikkeld. Oorspronkelijk heette de NGFF (Next Generation Form Factor), de nieuwe interface is eindelijk gestandaardiseerd in de nieuwe M.2-schijfinterface onder de SATA-versie 3.2-specificaties.
Hogere snelheden
Hoewel grootte natuurlijk een factor is bij het ontwikkelen van de nieuwe interface, is de snelheid van de schijven net zo belangrijk. De SATA 3.0-specificaties beperkten de werkelijke bandbreedte van een SSD op de schijfinterface tot ongeveer 600 MB / s, iets dat veel stations nu hebben bereikt. De SATA 3.2-specificaties introduceerden een nieuwe gemengde aanpak 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 zijn tot 600 MB / s, of in plaats daarvan kiezen voor PCI-Express met een bandbreedte van 1 GB / sec onder de huidige PCI-Express 3.0 normen. Nu is die snelheid van 1 GB / sec voor één PCI-Express-rijstrook. Het is mogelijk om meerdere rijstroken te gebruiken en onder de M.2 SSD-specificatie kunnen maximaal vier rijstroken worden gebruikt. Het gebruik van twee rijstroken zou 2,0 GB / s opleveren, terwijl vier rijstroken tot 4,0 GB / s kunnen bieden. Met de uiteindelijke release van PCI-Express 4.0 zouden deze snelheden verdubbelen.
Nu zullen niet alle systemen deze snelheden bereiken. Het M.2-station en de interface op de computer moeten in dezelfde modus worden ingesteld. De M.2-interface is ontworpen om de oudere SATA-modus of de nieuwere PCI-Express-modi te gebruiken, maar de drive kiest welke te gebruiken. Een M.2-schijf die is ontworpen met de oude SATA-modus, is bijvoorbeeld beperkt tot die 600MB / s-snelheid. Nu kan de M.2-schijf compatibel zijn met PCI-Express tot 4 rijstroken (x4), maar de computer gebruikt slechts twee rijstroken (x2). Dit zou resulteren in maximale snelheden van slechts 2.0GB / s. Dus om de hoogst mogelijke snelheid te krijgen, moet u controleren wat de schijf en de computer of het moederbord ondersteunen.
Kleiner en groter formaat
Een van de doelen van het M.2-schijfontwerp was het verminderen van de totale grootte van het opslagapparaat. Dit wordt op verschillende manieren bereikt. Ten eerste hebben ze de kaarten smaller gemaakt dan de vorige mSATA-vormfactor. M.2-kaarten zijn slechts 22 mm breed in vergelijking met de 30 mm van mSATA. De kaarten kunnen ook worden kortgesloten als slechts 30 mm lang in vergelijking met de 50 mm mSATA. Het verschil is dat de M.2-kaarten ook langere lengtes tot 110 mm ondersteunen, wat betekent dat deze groter kan zijn, waardoor er meer ruimte is voor chips en dus voor hogere capaciteiten.
Naast de lengte en breedte van de kaarten, is er ook de mogelijkheid voor zowel enkelzijdige als dubbelzijdige M.2-kaarten. Waarom de twee verschillende diktes? Welnu, enkelzijdige platen bieden een zeer dun profiel en zijn handig voor ultradunne laptops. Een dubbelzijdig bord daarentegen zorgt ervoor dat er tweemaal zoveel chips op een M.2-bord kunnen worden geïnstalleerd voor grotere opslagcapaciteiten, wat handig is voor compacte desktoptoepassingen waar de ruimte minder kritiek is. Het probleem is dat u op de hoogte moet zijn van wat voor soort M.2-connector op de computer staat, naast de ruimte voor de lengte van de kaart. De meeste laptops gebruiken alleen een enkelzijdige connector, wat betekent dat ze geen dubbelzijdige M.2-kaarten kunnen gebruiken.
Opdrachtmodi
Al meer dan een decennium heeft SATA opslagruimte gemaakt voor computers die worden aangesloten en afgespeeld. Dit is te danken aan de zeer eenvoudig te gebruiken interface maar ook vanwege de commandostructuur van de AHCI (Advanced Host Controller Interface). Op deze manier kan de computer instructies communiceren met de opslagapparaten. Het is ingebouwd in alle moderne besturingssystemen en daarom hoeven er geen extra stuurprogramma's in het besturingssysteem te worden geïnstalleerd wanneer nieuwe stations worden toegevoegd. Het heeft geweldig gewerkt, maar het is ontwikkeld in het tijdperk van harde schijven met een beperkt vermogen om instructies te verwerken vanwege de fysieke aard van de stationskoppen en platters. Een enkele commandowachtrij met 32 commando's was voldoende. Het probleem is dat SSD's zoveel meer kunnen, maar worden beperkt door de AHCI-stuurprogramma's.
Om dit knelpunt te helpen wegnemen en de prestaties te verbeteren, zijn de NVMe-opdrachtstructuur (Non-Volatile Memory Express) en stuurprogramma's ontwikkeld om dit probleem voor SSD's te verhelpen. In plaats van een enkele opdrachtwachtrij te gebruiken, biedt het maximaal 65.536 opdrachtwachtrijen met een hoger aantal 65.536 opdrachten per wachtrij. Dit zorgt voor meer parallelle verwerking van de lees- en schrijfverzoeken voor opslag, wat de prestaties via de AHCI-opdrachtstructuur zal helpen verbeteren.
Hoewel dit geweldig is, is er een probleem. AHCI is ingebouwd in alle moderne besturingssystemen, maar NVMe is dat niet. Om de meeste potentieel uit de schijven te halen, moeten stuurprogramma's bovenop de bestaande besturingssystemen worden geïnstalleerd om deze nieuwe opdrachtmodus te gebruiken. Dat is een probleem voor veel mensen op oudere besturingssystemen. Gelukkig kan met de M.2-stuurspecificatie een van de twee modi worden gebruikt. Dit maakt de adoptie van de nieuwe interface eenvoudiger met bestaande computers en technologieën door gebruik te maken van de AHCI-opdrachtstructuur.Vervolgens, als de ondersteuning voor de NVMe-opdrachtstructuur wordt verbeterd in de software, kunnen dezelfde schijven worden gebruikt met deze nieuwe opdrachtmodus. Wees gewaarschuwd dat schakelen tussen de twee modi vereist dat de schijven opnieuw worden geformatteerd.
Verbeterd stroomverbruik
Mobiele computers hebben beperkte looptijden op basis van de grootte van hun batterijen en het vermogen dat door de verschillende componenten wordt getrokken. Solid State-schijven zorgden voor een aanzienlijke vermindering van het energieverbruik van de opslagcomponent, zodat ze een verbeterde levensduur van de batterij hebben, maar er is ruimte voor verbetering. Omdat de M.2 SSD-interface deel uitmaakt van de SATA 3.2-specificaties, bevat deze ook enkele andere functies dan alleen de interface. Dit omvat een nieuwe functie genaamd DevSleep. Omdat steeds meer systemen zijn ontworpen om in de slaapstand te gaan wanneer ze worden gesloten of uitgeschakeld, in plaats van volledig uit te schakelen, is er een constante aantrekkingskracht op de batterij om sommige gegevens actief te houden voor snel herstel wanneer de apparaten worden gewekt. DevSleep vermindert de hoeveelheid stroom die wordt gebruikt door apparaten zoals M.2 SSD's door een nieuwe lagere energiestatus te creëren. Dit zou moeten helpen om de doorlooptijd voor die systemen te verlengen in plaats van uit te schakelen tussen gebruik.
Problemen met opstarten
De M.2-interface is een geweldige aanvulling op computeropslag en de mogelijkheid om de prestaties van onze computers te verbeteren. Er is echter een klein probleem met de vroege implementatie ervan. Om de beste prestaties van de nieuwe interface te krijgen, moet de computer de PCI-Express-bus gebruiken, anders werkt deze net zo als elke bestaande SATA 3.0-schijf. Dit lijkt geen groot probleem, maar het is eigenlijk een probleem met veel van de eerste paar moederborden die de functie gebruiken. SSD-schijven bieden de beste ervaring wanneer ze worden gebruikt als de root- of opstartschijf. Het probleem is dat de bestaande Windows-software problemen heeft met het opstarten van veel stations vanaf de PCI-Express-bus in plaats van vanaf SATA. Dit betekent dat het snel hebben van een M.2-schijf met PCI-Express niet het primaire station 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 OS X ontwikkeld om de PCI-Express-bus te gebruiken voor rootpartities. Dit komt omdat Apple in de 2013 MacBook Air hun SSD-schijven heeft overgezet naar PCI-Express voordat de M.2-specificaties zijn voltooid. Microsoft heeft Windows 10 bijgewerkt om de nieuwe PCI-Express- en NVMe-schijven volledig te ondersteunen als de hardware waarop het wordt uitgevoerd ook kan werken. Oudere versies van Windows kunnen mogelijk worden gebruikt 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, is hoe de M.2-interface is verbonden met de rest van het systeem. U ziet dat er een beperkt aantal PCI-Express-stroken zijn 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-rijstroken verwijderen van andere componenten in het systeem. Hoe die PCI-Express-banen worden verdeeld tussen de apparaten op de kaarten, is een groot probleem. Sommige fabrikanten delen bijvoorbeeld de PCI-Express-stroken met SATA-poorten. Het gebruik van de M.2-schijfsleuf kan dus maximaal vier SATA-slots wegnemen. In andere gevallen. de M.2 kan die rijstroken delen met andere PCI-Express-uitbreidingsslots. Zorg ervoor dat u controleert hoe het bord is ontworpen om ervoor te zorgen dat het gebruik van de M.2 het mogelijke gebruik van andere SATA-harde schijven, dvd- of Blu-ray-schijven of andere uitbreidingskaarten niet verstoort.