NVM Express® Base Specification
NVMe BaseDesigned from the ground up for SSDs, the NVM Express® (NVMe®) base specification was initially created to help define how host software communicates with non-volatile memory across a PCI Express® (PCIe®) bus. It has quickly evolved into the industry standard for PCIe solid state drives (SSDs) in many form factors (U.2, M.2, AIC, EDSFF). The NVMe base specification offered an efficient interface, providing lower latency, that is more scalable for SSDs than legacy interfaces, like serial ATA (SATA).
The NVMe 2.1 family of specifications was released on August 6, 2024. The NVMe library of specifications is divided into eight different specifications, including the NVMe Base specification, Command Set specifications (NVM Command Set specification, ZNS Command Set specification, KV Command Set specification) and Transport specifications (PCIe Transport specification, RDMA Transport specification and TCP Transport specification). The NVMe Management Interface specification will be kept separate.
The restructured NVMe 2.1 specifications enable faster and simpler development of NVMe technology, supporting the seamless deployment of flash-based solutions in many emerging market segments. The specifications include evolutionary new features like Zoned Namespaces (ZNS), Key Value (KV), Rotational Media and Endurance Group Management.
As of August 2024, NVMe is a set of the following eleven specifications:
- NVM Express® Base Specification, Revision 2.1
- Command Set Specifications:
- NVM Express® NVM Command Set Specification, Revision 1.1
- NVM Express® NVMe Zoned Namespaces Command Set Specification, Revision 1.2
- NVM Express® Key Value Command Set Specification, Revision 1.1
- NVM Express® Subsystem Local Memory Command Set Specification, Revision 1.0
- NVM Express® Computational Programs Command Set Specification, Revision 1.0
- Transport Specifications:
- NVM Express® NVMe over PCIe Transport Specification, Revision 1.1
- NVM Express® RDMA Transport Specification, Revision 1.1
- NVM Express® TCP Transport Specification, Revision 1.1
- NVM Express® NVM Express Management Interface Specification, Revision 2.0
- NVM Express® NVMe Boot Specification, Revision 1.1
The NVM Express® Base Specification, Revision 2.1 reorganizes sections to distinguish requirements on functionality common to PCIe® and Fabrics implementations, specific to PCIe implementations, and specific to Fabrics implementations.
Current Specification
NVM Express Base Specification, Revision 2.1Ratified Specifications
Previous Specifications
- NVM Express Base Specification 2.0e
- NVM Express Base Specification 2.0d
- NVM Express Base Specification 2.0c
- NVM Express Base Specification 2.0b
- NVMe - NVM Express Base Specification 2.0a
- NVM Express Base Specification 2.0
- NVM Express Base Specification 1.4c
- NVM Express Base Specification 1.4b
- NVM Express Base Specification 1.4a
- NVM Express Base Specification 1.4
- Changes in NVMe Revision 1.4
- NVM Express 1.4 Ratified TPs
- NVM Express 1.4 Ratified Errata
- NVM Express 1.3d
- NVM Express 1.3c
- NVM Express 1.3b
- NVM Express 1.3a
- Changes in NVMe Revision 1.3
- NVM Express 1.3 Ratified TPs
- NVM Express 1.3 Errata
- NVM Express 1.2.1
- NVM Express 1.2.1 Errata
- NVM Express 1.2b
- NVM Express 1.2a
- NVM Express 1.2 Errata
- NVM-Express-1_1b
- NVM Express 1.1 Errata
- NVM Express 1.0e
- NVM Express 1.0 Errata
- NVM Express® Base Specification
- NVM Command Set Specification
- NVMe Zoned Namespaces (ZNS) Command Set Specification
- Key Value Command Set Specification
- Subsystem Local Memory Command Set
- Computational Programs Command Set
- NVMe over PCIe Transport Specification
- RDMA Transport Specification
- TCP Transport Specification
- NVM Express Management Interface Specification
- NVMe Boot Specification
- Changes in NVM Express Revision 2.1
- Changes in NVM Express Revision 2.0
- NVMe over Fabrics (oF) Specification (historical reference only)