设计工具
内存

NVMe® 2.0 促进闪存未来发展

美光科技 | 2021 年 7 月

NVM Express® 标准(简称为 NVMe®)是前沿 SSD 接口技术,在数据中心、笔记本电脑及手机的绝大多数计算系统中得到普及。2021 年 6 月 2 日,NVM Express 公开发布了一套适用于各种应用的非易失性内存规范。除了完全重组现有规范之外,NVMe 2.0 还引入了许多重要的新特性。NVMe 委员会成员和用户对这一进展感到兴奋。我们来探究一下个中原因。

传统机械硬盘的一个局限性是,如果您需要的下一个数据块位于实际物理磁盘的另一侧,就必须等待磁盘旋转,直到它到达读磁头。当然,基于闪存的固态硬盘不存在这一问题:它的每个数据块都有着相同的“距离”。但原有接口标准在编写时就纳入了对这一局限性的考量。2011 年发布的首个 NVMe 规范旨在释放 SSD,让应用充分利用额外的性能。

新增了哪些内容?

上一次公开发布的规范是 NVMe 1.4(2019 年 6 月 10 日),包括以下三个规范:

  • NVMe 基础规范
  • NVMe 管理接口 (MI) 规范,内容涵盖了通过“带外”机制监控、配置和管理 NVMe 设备的相关操作,意味着这些操作与读/写操作是分开的
  • NVMe over Fabrics (NVMe-oF) 规范,其中增加了对网络协议的支持,使构建高性能存储网络或“矩阵网络”成为可能

到 NVME 2.0,这些规范均经过了重构,以实现“更快、更简单的开发”。它对基础规范与具体领域的规范进行了区分,不再是一个非常庞大的文档。用户应该能通过这些规范清楚地了解去哪查找特定主题相关信息,但为此可能需要分为多个文档。因此,现在有八个规范:

  • NVMe 基础规范 2.0
  • NVM 命令集规范 1.0
  • 分区命名空间命令集规范 1.0
  • PCIe 传输规范 1.0
  • 管理接口 1.2
  • RDMA 传输规范 1.0
  • TCP 传输规范 1.0
  • 键值命令集规范 1.0

下图显示了它们如何组合在一起。

NVM Express, Inc. 示意图 示意图:NVM Express, Inc.

除重构之外,新规范还引入了一系列重要的新特性:

分区命名空间 (ZNS)

这是一项重大发展,可帮助应用实现更高的性能,同时提高基于 NAND 的存储的使用寿命。ZNS 不是将许多硬盘任意组织为一个或多个逻辑空间,而是让一个硬盘看起来像多个硬盘一样,可以分配给多个线程。此规范定义了分区命名空间及相关的分区命名空间命令集。分区命名空间功能会将命名空间的逻辑地址空间划分为多个区域。每个区域都是顺序写入的逻辑块范围,但如果重写,则会重置。接口允许分区命名空间公开内部设备结构的自然边界,以及将内部映射表的管理分载到主机。

NVM 集和耐久性组管理

美光积极参与了此特性的开发,因为它允许将各种类型的内存(如 SLC、TLC 等)用于特定应用。它定义了用于耐久性组和 NVM 集可互操作管理的接口。这允许配置和管理域。耐久性组类似于热存储和冷存储的自动分层,但针对的是需要经常访问但未必需要快速访问的数据。

简单复制命令

此特性定义了一个简单的复制命令,供主机使用,以将数据从一个或多个源逻辑块范围复制到单个连续目标逻辑块范围。数据可以在设备内复制,无需通过 PCI Express (PCIe) 接口传输,这可以减少接口流量,从而提高性能。

域和分区

此特性定义了将大规模环境分为不同域及对多个域进行分区的功能,以此扩展 NVMe 架构。它非常适合单个设备上有多种可用闪存类型(如 SLC、TLC、QLC 等)的情况,允许系统的某些部分进行离线维护,而其他部分继续运行。

命令和功能锁定

这是一项重要的安全增强特性,允许主机和管理实体禁止执行某些命令和 Set Feature 命令功能。例如,它们可以允许对特定硬盘执行普通的读/写命令,但禁止执行任何管理员命令。

命名空间类型

此特性扩展了 NVMe 架构,以支持不同类型的命名空间。例如,命名空间可能包含具有特殊访问规则的逻辑块,也可能包含逻辑块以外的内容,例如键值对。

旋转介质

此特性添加了 NVMe 对传统机械硬盘的支持。这是 NVMe 尝试通过允许使用单一存储连接来连接各种持久媒体,从而拓宽其范围并简化生态系统的一个很好例证。

展望未来

遵循这些规范非常重要,因为 2.0 规范已应要求修改多次。后续还会有一些特性引入,包括每 I/O 密钥 (key per I/O)、分区随机写入区域 (ZRWA) 和计算存储。这些都是正在积极开发的重要而复杂的特性,我将在以后的文章中对此进行探讨。

如今硬盘和 SSD 供应商面临的一个重大问题是:从 1.4 过渡到 2.0 所需的最小变化集是什么? 这是一个非常重要的话题,但很快就会变得非常技术性。我们对此也有自己的看法,并且很乐意与大家分享,如果您希望进一步探索,欢迎联系我 (whubis@micron.com)。

美光一直是 NVMe 2.0 规范的重要支持者,为其中许多新特性的开发做出了贡献,这些新特性将为系统架构师和应用开发人员开辟许多值得关注的可能性。今后,我们将继续积极地为该规范引入有价值的新特性,使我们持久存储产品的用户受益。

有关美光 NVMe SSD 的更多信息,请访问 micron.com 上的数据中心 SSD 页面