![M](https://upload.wikimedia.org/wikipedia/commons/c/c5/M.2_and_mSATA_SSDs_comparison.jpg)
M.2, pronounced ''m dot two'' and formerly known as the Next Generation Form Factor (NGFF), is a specification for internally mounted computer
expansion card
In computing, an expansion card (also called an expansion board, adapter card, peripheral card or accessory card) is a printed circuit board that can be inserted into an electrical connector, or expansion slot (also referred to as a bus slo ...
s and associated connectors. M.2 replaces the
mSATA
SATA (Serial AT Attachment) is a computer bus interface that connects host adapter, host bus adapters to mass storage devices such as hard disk drives, optical drives, and solid-state drives. Serial ATA succeeded the earlier Parallel ATA (PATA) ...
standard, which uses the
PCI Express Mini Card
PCI Express (Peripheral Component Interconnect Express), officially abbreviated as PCIe or PCI-e, is a high-speed serial computer expansion bus standard, designed to replace the older PCI, PCI-X and AGP bus standards. It is the common ...
physical card layout and connectors. Employing a more flexible physical specification, M.2 allows different module widths and lengths, which, paired with the availability of more advanced
interfacing
Interfacing is a textile used on the unseen or "wrong" side of fabrics to make an area of a garment more rigid.
Interfacings can be used to:
*stiffen or add body to fabric, such as the interfacing used in shirt collars
*strengthen a certain a ...
features, makes M.2 more suitable than mSATA in general for
solid-state storage
Solid-state storage (SSS) is a type of non-volatile computer storage that stores and retrieves digital information using only electronic circuits, without any involvement of moving mechanical parts. This differs fundamentally from the traditional ...
applications, particularly in smaller devices such as
ultrabook
Ultrabook is a marketing term, originated and trademarked by Intel, for a category of high-end laptop computers.
They were originally marketed as featuring ultra thin form factor and light weight design without compromising battery life or per ...
s and
tablets.
Computer bus
In computer architecture, a bus (shortened form of the Latin '' omnibus'', and historically also called data highway or databus) is a communication system that transfers data between components inside a computer, or between computers. This ex ...
interfaces provided through the M.2 connector are PCI Express x4 (up to four
lanes
In road transport, a lane is part of a roadway that is designated to be used by a single line of vehicles to control and guide drivers and reduce traffic conflicts. Most public roads (highways) have at least two lanes, one for traffic in each ...
),
Serial ATA 3.0, and
USB 3.0 (a single logical port for each of the latter two). It is up to the manufacturer of the M.2 host or module to select which interfaces are to be supported, depending on the desired level of host support and the module type. Different M.2 connector keying notches denote various purposes and capabilities of both the M.2 hosts and modules, and also prevent the M.2 modules from being inserted into incompatible host connectors.
The M.2 specification supports
NVM Express
NVM Express (NVMe) or Non-Volatile Memory Host Controller Interface Specification (NVMHCIS) is an open, logical-device interface specification for accessing a computer's non-volatile storage media usually attached via PCI Express (PCIe) bus. The ...
(NVMe) as the logical device interface for M.2 PCI Express
SSDs
A solid-state drive (SSD) is a solid-state storage device that uses integrated circuit assemblies to store data persistently, typically using flash memory, and functioning as secondary storage in the hierarchy of computer storage. It is a ...
, in addition to supporting legacy
Advanced Host Controller Interface
The Advanced Host Controller Interface (AHCI) is a technical standard defined by Intel that specifies the register-level interface of Serial ATA (SATA) host controllers in a non-implementation-specific manner in its motherboard chipsets.
The s ...
(AHCI) at the logical interface level. While the support for AHCI ensures software-level
backward compatibility
Backward compatibility (sometimes known as backwards compatibility) is a property of an operating system, product, or technology that allows for interoperability with an older legacy system, or with input designed for such a system, especially i ...
with
legacy
In law, a legacy is something held and transferred to someone as their inheritance, as by will and testament. Personal effects, family property, marriage property or collective property gained by will of real property.
Legacy or legacies may refer ...
SATA devices and legacy
operating system
An operating system (OS) is system software that manages computer hardware, software resources, and provides common services for computer programs.
Time-sharing operating systems schedule tasks for efficient use of the system and may also in ...
s, NVM Express is designed to fully utilize the capability of high-speed PCI Express storage devices to perform many
I/O operations
in parallel.
Features
![SATA Express interface](https://upload.wikimedia.org/wikipedia/commons/6/68/SATA_Express_interface.svg)
M.2 modules can integrate multiple functions, including the following device classes:
Wi-Fi
Wi-Fi () is a family of wireless network protocols, based on the IEEE 802.11 family of standards, which are commonly used for local area networking of devices and Internet access, allowing nearby digital devices to exchange data by radio wave ...
,
Bluetooth
Bluetooth is a short-range wireless technology standard that is used for exchanging data between fixed and mobile devices over short distances and building personal area networks (PANs). In the most widely used mode, transmission power is limi ...
,
satellite navigation
A satellite navigation or satnav system is a system that uses satellites to provide autonomous geo-spatial positioning. It allows satellite navigation devices to determine their location (longitude, latitude, and altitude/elevation) to high pr ...
,
near field communication
Near-field communication (NFC) is a set of communication protocols that enables communication between two electronic devices over a distance of 4 cm (1 in) or less. NFC offers a low-speed connection through a simple setup that can be u ...
(NFC),
digital radio
Digital radio is the use of digital technology to transmit or receive across the radio spectrum. Digital transmission by radio waves includes digital broadcasting, and especially digital audio radio services.
Types
In digital broadcasting syst ...
,
WiGig
WiGig, alternatively known as 60 GHz Wi-Fi, refers to a set of 60 GHz wireless network protocols. It includes the current IEEE 802.11ad standard and also the IEEE 802.11ay standard.
The WiGig specification allows devices to communicate wi ...
,
wireless WAN
Wireless wide area network (WWAN), is a form of wireless network.
The larger size of a wide area network compared to a local area network requires differences in technology.
Wireless networks of different sizes deliver data in the form of telephon ...
(WWAN), and
solid-state drive
A solid-state drive (SSD) is a solid-state storage device that uses integrated circuit assemblies to store data persistently, typically using flash memory, and functioning as secondary storage in the hierarchy of computer storage. It is ...
s (SSDs). The
SATA revision 3.2 specification, in its gold revision , standardizes M.2 as a new format for storage devices and specifies its hardware layout.
Buses exposed through the M.2 connector include
PCI Express
PCI Express (Peripheral Component Interconnect Express), officially abbreviated as PCIe or PCI-e, is a high-speed serial computer expansion bus standard, designed to replace the older PCI, PCI-X and AGP bus standards. It is the common ...
3.0 and newer,
Serial ATA
SATA (Serial AT Attachment) is a computer bus interface that connects host bus adapters to mass storage devices such as hard disk drives, optical drives, and solid-state drives. Serial ATA succeeded the earlier Parallel ATA (PATA) standard t ...
(SATA) 3.0 and
USB
Universal Serial Bus (USB) is an industry standard that establishes specifications for cables, connectors and protocols for connection, communication and power supply (interfacing) between computers, peripherals and other computers. A broad ...
3.0; all these standards are
backward compatible
Backward compatibility (sometimes known as backwards compatibility) is a property of an operating system, product, or technology that allows for interoperability with an older legacy system, or with input designed for such a system, especially in ...
.
The M.2 specification provides up to four
PCI Express lane
PCI Express (Peripheral Component Interconnect Express), officially abbreviated as PCIe or PCI-e, is a high-speed serial computer expansion bus standard, designed to replace the older PCI, PCI-X and AGP bus standards. It is the common ...
s and one logical
SATA 3.0 (6 Gbit/s) port, and exposes them through the same connector so both PCI Express and SATA storage devices may exist in the form of M.2 modules. Exposed PCI Express lanes provide a pure PCI Express connection between the host and storage device, with no additional layers of
bus
A bus (contracted from omnibus, with variants multibus, motorbus, autobus, etc.) is a road vehicle that carries significantly more passengers than an average car or van. It is most commonly used in public transport, but is also in use for cha ...
abstraction.
PCI-SIG
PCI-SIG, or Peripheral Component Interconnect Special Interest Group, is an electronics industry consortium responsible for specifying the Peripheral Component Interconnect (PCI), PCI-X, and PCI Express (PCIe) computer buses. It is based in ...
M.2 specification, in its revision 1.0 , provides detailed M.2 specifications.
Storage interfaces
Three options are available for the logical device interfaces and command sets used for interfacing with M.2 storage devices, which may be used depending on the type of M.2 storage device and available
operating system
An operating system (OS) is system software that manages computer hardware, software resources, and provides common services for computer programs.
Time-sharing operating systems schedule tasks for efficient use of the system and may also in ...
support:
; Legacy SATA: Used for SATA SSDs, and interfaced through the AHCI driver and
legacy
In law, a legacy is something held and transferred to someone as their inheritance, as by will and testament. Personal effects, family property, marriage property or collective property gained by will of real property.
Legacy or legacies may refer ...
SATA 3.0 (6 Gbit/s) port exposed through the M.2 connector.
; PCI Express using AHCI: Used for PCI Express SSDs and interfaced through the
AHCI
The Advanced Host Controller Interface (AHCI) is a technical standard defined by Intel that specifies the register-level interface of Serial ATA (SATA) host controllers in a non-implementation-specific manner in its motherboard chipsets.
The ...
driver and provided PCI Express lanes, providing
backward compatibility
Backward compatibility (sometimes known as backwards compatibility) is a property of an operating system, product, or technology that allows for interoperability with an older legacy system, or with input designed for such a system, especially i ...
with widespread SATA support in operating systems at the cost of lower performance. AHCI was developed when the purpose of a
host bus adapter
In computer hardware, a host controller, host adapter, or host bus adapter (HBA), connects a computer system bus, which acts as the host system, to other computer network, network and computer storage, storage devices. The terms are primarily ...
(HBA) in a system was to connect the CPU/memory subsystem with a much slower storage subsystem based on rotating
magnetic media
Magnetic storage or magnetic recording is the storage of data on a magnetized medium. Magnetic storage uses different patterns of magnetisation in a magnetizable material to store data and is a form of non-volatile memory. The information is ac ...
; as a result, AHCI has some inherent
inefficiencies when applied to SSD devices, which behave much more like
RAM
Ram, ram, or RAM may refer to:
Animals
* A male sheep
* Ram cichlid, a freshwater tropical fish
People
* Ram (given name)
* Ram (surname)
* Ram (director) (Ramsubramaniam), an Indian Tamil film director
* RAM (musician) (born 1974), Dutch
* ...
than like spinning media.
; PCI Express using NVMe: Used for PCI Express SSDs and interfaced through the
NVMe
NVM Express (NVMe) or Non-Volatile Memory Host Controller Interface Specification (NVMHCIS) is an open, logical-device interface specification for accessing a computer's non-volatile storage media usually attached via PCI Express (PCIe) bus. The ...
driver and provided PCI Express lanes, as a high-performance and scalable host controller interface designed and optimized especially for interfacing with PCI Express SSDs. NVMe has been designed from the ground up, capitalizing on the low
latency and enhanced
parallelism of PCI Express SSDs, and complementing the
parallelism of contemporary
CPUs
A central processing unit (CPU), also called a central processor, main processor or just processor, is the electronic circuitry that executes instructions comprising a computer program. The CPU performs basic arithmetic, logic, controlling, and ...
, platforms and applications. At a high level, primary
advantages of NVMe over AHCI relate to NVMe's ability to exploit parallelism in host hardware and software, based on its design advantages that include data transfers with fewer stages, greater depth of
command queue
In computer science, a command queue is a queue for enabling the delay of command execution, either in order of priority, on a first-in first-out basis, or in any order that serves the current purpose. Instead of waiting for each command to be ...
s, and more efficient
interrupt
In digital computers, an interrupt (sometimes referred to as a trap) is a request for the processor to ''interrupt'' currently executing code (when permitted), so that the event can be processed in a timely manner. If the request is accepted, ...
processing.
Form factors and keying
![M2 Edge Connector Keying](https://upload.wikimedia.org/wikipedia/commons/e/ed/M2_Edge_Connector_Keying.svg)
The M.2 standard is based on the
mSATA
SATA (Serial AT Attachment) is a computer bus interface that connects host adapter, host bus adapters to mass storage devices such as hard disk drives, optical drives, and solid-state drives. Serial ATA succeeded the earlier Parallel ATA (PATA) ...
standard, which uses the existing
PCI Express Mini Card
PCI Express (Peripheral Component Interconnect Express), officially abbreviated as PCIe or PCI-e, is a high-speed serial computer expansion bus standard, designed to replace the older PCI, PCI-X and AGP bus standards. It is the common ...
(Mini PCIe)
form factor and connector. M.2 adds the possibility of larger
printed circuit board
A printed circuit board (PCB; also printed wiring board or PWB) is a medium used in Electrical engineering, electrical and electronic engineering to connect electronic components to one another in a controlled manner. It takes the form of a L ...
s (PCBs), allowing longer modules and double-sided component population. Consequently, M.2
SSD modules can provide double the storage capacity within the footprint of an mSATA device.
M.2 modules are rectangular, with an
edge connector
An edge connector is the portion of a printed circuit board (PCB) consisting of traces leading to the edge of the board that are intended to plug into a matching socket. The edge connector is a money-saving device because it only requires a sing ...
on one side and a semicircular mounting hole at the center of the opposite edge. The edge connector has 75 positions with up to 67 pins, employing a 0.5 mm
pitch and offsetting the pins on opposing sides of the PCB from each other. Each pin on the connector is rated for up to 50
V and 0.5
A, while the connector itself is specified to endure 60 mating cycles.
The M.2 standard allows module widths of 12, 16, 22 and 30 mm, and lengths of 16, 26, 30, 38, 42, 60, 80 and 110 mm. Initial line-up of the commercially available M.2 expansion cards is 22 mm wide, with varying lengths of 30, 42, 60, 80 and 110 mm.
The codes for the M.2 module sizes contain both the width and length of a particular module; for example, "2242" as a module code means that the module is 22 mm wide and 42 mm long, while "2280" denotes a module 22 mm wide and 80 mm long.
An M.2 module is installed into a mating connector provided by the host's circuit board, and a single mounting screw secures the module into place. Components may be mounted on either side of the module, with the actual module type limiting how thick the components can be; the maximum allowable thickness of components is 1.5 mm per side, and the thickness of the PCB is .
Different host-side connectors are used for single- and double-sided M.2 modules, providing different amounts of space between the M.2 expansion card and the host's PCB.
Circuit boards on the hosts are usually designed to accept multiple lengths of M.2 modules, which means that the sockets capable of accepting longer M.2 modules usually also accept shorter ones by providing different positions for the mounting screw.
![M](https://upload.wikimedia.org/wikipedia/commons/c/c2/M.2_connector_on_a_computer_motherboard.jpg)
The PCB of an M.2 module provides a 75-position edge connector; depending on the type of module, certain pin positions are removed to present one or more keying notches. Host-side M.2 connectors (sockets) may populate one or more mating key positions, determining the type of modules accepted by the host; , host-side connectors are available with only one mating key position populated (either B or M).
Furthermore, M.2 sockets keyed for SATA or two PCI Express lanes (PCIe ×2) are referred to as "socket 2 configuration" or "socket 2", while the sockets keyed for four PCI Express lanes (PCIe ×4) are referred to as "socket 3 configuration" or "socket 3".
For example, M.2 modules with two notches in B and M positions use up to two PCI Express lanes and provide broader compatibility at the same time, while the M.2 modules with only one notch in the M position use up to four PCI Express lanes; both examples may also provide SATA storage devices. Similar keying applies to M.2 modules that utilize provided USB 3.0 connectivity.
Various types of M.2 modules are denoted using the "WWLL-HH-K-K" or "WWLL-HH-K" naming schemes, in which "WW" and "LL" specify the module width and length in millimeters, respectively. The "HH" part specifies, in an encoded form, whether a module is single- or double-sided, and the maximum allowed thickness of mounted components; possible values are listed in the right table above. Module keying is specified by the "K-K" part, in an encoded form using the key IDs from the left table above; it can also be specified as "K" only, if a module has only one keying notch.
Beside socketed modules, the M.2 standard also includes the option for having permanently
soldered
Solder (; NA: ) is a fusible metal alloy used to create a permanent bond between metal workpieces. Solder is melted in order to wet the parts of the joint, where it adheres to and connects the pieces after cooling. Metals or alloys suitable ...
single-sided modules.
Alternative standards
Samsung introduced a new form factor called ''Next Generation Small Form Factor'' (NGSFF), also known as NF1 or M.3, which may replace U.2 in server applications.
JEDEC JESD233 is another specification called ''Crossover Flash Memory'' (XFM) for XFM Embedded and Removable Memory Devices (XFMD). It targets to replace the M.2 form factor with a significantly smaller one (also called XT2), so that it can also be designed as an alternative to soldered memory. XFM Express utilizes a
NVMe
NVM Express (NVMe) or Non-Volatile Memory Host Controller Interface Specification (NVMHCIS) is an open, logical-device interface specification for accessing a computer's non-volatile storage media usually attached via PCI Express (PCIe) bus. The ...
logical interface over a
PCI Express
PCI Express (Peripheral Component Interconnect Express), officially abbreviated as PCIe or PCI-e, is a high-speed serial computer expansion bus standard, designed to replace the older PCI, PCI-X and AGP bus standards. It is the common ...
physical interface.
Gallery
File:M.2 2242 SSD connected into USB 3.0 adapter.jpg, An M.2 2242 SSD connected into a USB
Universal Serial Bus (USB) is an industry standard that establishes specifications for cables, connectors and protocols for connection, communication and power supply (interfacing) between computers, peripherals and other computers. A broad ...
3.0 adapter and connected to a computer
File:Delock USB m.2 NVMe docking station-oblique FS PNr°0912.jpg, A docking station for M.2 modules
File:Delock USB m.2 NVMe docking station-slot FS PNr°0914.jpg, The connection slot of the docking station
File:Samsung 980 PRO PCIe 4.0 NVMe SSD 1TB-top PNr°0915.jpg, A Samsung 980 PRO PCIe 4.0 NVMe SSD with 1 TB of storage capacity
See also
*
U.2
U.2 (pronounced 'u-dot-2'), formerly known as SFF-8639, is a computer interface standard for connecting solid-state drives (SSDs) to a computer. It covers the physical connector, electrical characteristics, and communication protocols.
It was ...
*
Enterprise & Data Center SSD Form Factor (EDSFF)
*
List of interface bit rates
*
*
NVM Express
NVM Express (NVMe) or Non-Volatile Memory Host Controller Interface Specification (NVMHCIS) is an open, logical-device interface specification for accessing a computer's non-volatile storage media usually attached via PCI Express (PCIe) bus. The ...
(NVMe)
References
External links
* (SATA-IO) official website
* (PCI-SIG) official website
Understanding M.2, the interface that will speed up your next SSD Ars Technica
''Ars Technica'' is a website covering news and opinions in technology, science, politics, and society, created by Ken Fisher and Jon Stokes in 1998. It publishes news, reviews, and guides on issues such as computer hardware and software, sci ...
, February 9, 2015, by Andrew Cunningham
LFCS: Preparing Linux for nonvolatile memory devices LWN.net
LWN.net is a computing webzine with an emphasis on free software and software for Linux and other Unix-like operating systems. It consists of a weekly issue, separate stories which are published most days, and threaded discussion attached to ...
, April 19, 2013, by Jonathan Corbet
PCIe SSD 101: An Overview of Standards, Markets and Performance SNIA, August 2013, archived from the original on February 2, 2014
M.2 Pinout Descriptions and Reference Designs January 28, 2020, an application note from
Congatec
* US patent 20130294023, November 7, 2013, assigned to Raphael Gay
{{Solid-state drive
Computer-related introductions in 2013
Computer connectors
Motherboard expansion slot
SATA Express
Serial ATA
Peripheral Component Interconnect
USB