Hardware

NVM Express presenta el estándar NVMe 2.0

NVM Express, Inc. ha anunciado, mediante nota de prensa, el lanzamiento de la familia de especificaciones para el futuro estándar NVMe 2.0 que intentará abarcar todas las mejoras tecnológicas necesarias para que dicho formato de transmisión de datos siga creciendo y se consolide como el más usado.

Hasta la fecha se ha dado poca importancia al número que seguía al nombre NVMe de una unidad de almacenamiento sólido que habitualmente es 1.3 ó 1.4, puesto que muchas tiendas no dan siquiera este detalle. Sin embargo parece que a partir de ahora tanto los fabricantes como las tiendas deberán ofrecer más detalles y los consumidores estar más atentos a ello, ya que el rendimiento de la unidades no sólo va a depender de ese gran reclamo que pone al lado de PCIe, sino que también lo hará en base a la versión del propio estándar NVMe.

Sin darnos demasiada cuenta el estándar NVMe ya está presente en multitud de dispositivos que nos rodean y por lo tanto no es sólo aquél SSD M.2 que compramos el año pasado. Además las previsiones de crecimiento para el mismo son enormes:

Ante esta situación NVM Express ha querido actualizar su estándar para dar cabida a más productos y liderar ese crecimiento. Las principales ventajas de NVMe 2.0 son que permiten el desarrollo de soluciones NVMe de forma más rápida y simple que hasta la fecha, lo que ayudará a los fabricantes a abrazar dicho estándar, sin ir más lejos con NVMe 2.0 se da soporte para las clásicas unidades de almacenamiento de disco duro o HDD, unidades muy presentes en el mercado cuando necesitamos TB de capacidad.

Para seguir evolucionando vemos que NVMe 2.0 añade nuevos tipos de instrucciones como las Zone Namespaces (ZNS) y Key Value (KV) además de soportar nuevos protocolos de transporte como NVMe over Fabrics (NVMe-oF).

NVMe señala que su estándar 2.0 sigue siendo compatible con las versiones anteriores por lo que no habrá problemas de transición de la tecnología al poder conectar dispositivos nuevos a controladoras antiguas o dispositivos antiguos a las futuras controladoras NVMe 2.0.

La web de NVM Express ya ofrece la documentación del nuevo estándar y para los interesados hay un documento en PDF de 450 páginas que nos detalla la mayoría de pormenores del nuevo estándar aunque en inglés TechPowerUp nos ofrece un breve resumen de los detalles más significativos:

  • The ZNS specification provides a zoned storage device interface that allows the SSD and host to collaborate on data placement. ZNS permits data to be aligned to the physical media of the SSD, improving overall device performance and cost while increasing the media capacity that can be made available to the host.
  • The KV Command Set provides access to data on an NVMe SSD controller using a key rather than a block address. KV allows applications to directly communicate with the drive using key-value pairs, avoiding the overhead of translation tables between keys and logical blocks.
  • Namespace Types provides a mechanism to allow an NVMe SSD controller to support the different command sets that are defined as part of the NVMe 2.0 release as well as a path for future command sets.
  • NVMe Endurance Group Management enables media to be configured into Endurance Groups, exposing granularity of access to the SSD and improving control.
  • Rotational Media support enables support for HDD on NVMe technology with updates to features, management capabilities and other enhancements required for HDD support.
  • Multiple Controller Firmware Update defines behavior for firmware updates on complex systems with multiple controllers.
  • Shutdown enhancements enable showdown control from enclosure management for simplified management of many drives at once.
  • Simple Copy Command copies data from one namespace in the drive, offloading the copy operations from multiple source LBAs to a single destination LBA.
  • 32/64 bit CRC expands the protection information and data protection to 32 and 64 bit allowing for new types of meta data use cases.
  • Command Group Control prevents unintended changes after a system is provisioned and protects the system from unintentional or malicious changes.
  • NVMe 2.0 specifications maintain backwards compatibility with previous NVMe generations.