特性配置 - 5.17.2.18 Endurance Group List (CNS 19h) (第287页)
NVME2.0协议解读 1 min read

特性配置 - 5.17.2.18 Endurance Group List (CNS 19h) (第287页)

Blog Author

在《NVM Express® Base Specification, revision 2.0b》中,以下几个命令集涉及到Endurance Group ListI/O Command Set Specific Allocated Namespace ID ListI/O Command Set Specific Identify Namespace Data Structure for an Allocated Namespace ID等结构。通过这些结构,系统能够更高效地管理和控制命名空间、耐久组、命令集等存储资源。

5.17.2.18 Endurance Group List (CNS 19h)

Endurance Group List

  • Endurance Group用于表示具有相似耐用性要求的一组命名空间。在NVM子系统中,这些命名空间共享同一耐久级别,帮助管理存储设备的生命周期和稳定性。

Endurance Group List 的数据结构(Figure 288)

  • Number of Identifiers:表示列表中耐久组标识符的数量,最多可以包含2,047个标识符。如果该字段为0h,则表示没有耐久组。
  • 每个耐久组条目(Entry 0、Entry 1等)包含一个Endurance Group Identifier,即一个唯一标识符,代表该耐久组。
  • Endurance Group Identifier:该字段表示一个耐久组的标识符,系统通过它来区分不同的耐久组。

5.17.2.19 I/O Command Set specific Allocated Namespace ID list (CNS 1Ah)

Allocated Namespace ID list

  • 返回的Namespace ID列表包含按递增顺序排列的1,024个分配的NSID(命名空间标识符)。此列表仅包含与指定I/O命令集(通过Command Set Identifier(CSI)字段指定)相关联的命名空间。

处理过程

  • 如果指定的NSID大于列表中的任何有效NSID,该命令会返回相应的命名空间信息。
  • 如果指定的NSID为无效值(如FFFFFFFEh或FFFFFFFh),命令将被中止,返回状态码Invalid Namespace or Format

5.17.2.20 I/O Command Set Specific Identify Namespace Data Structure for an Allocated Namespace ID (CNS 1Bh)

I/O Command Set Specific Identify Namespace

  • 该命令返回与给定NSID相关的特定I/O命令集的命名空间数据结构。如果指定的NSID为无效或未分配的NSID,控制器将返回填充为零的数据结构。

命名空间特定数据结构

  • 命名空间的I/O Command Set特定数据结构由CSI字段指定。若指定的I/O命令集与该命名空间不兼容,命令将中止,返回Invalid Field in Command错误。

5.17.2.21 Identify I/O Command Set Data Structure (CNS 1Ch)

I/O Command Set Data Structure

  • 当控制器支持多个I/O命令集时,此数据结构描述了控制器支持的所有I/O命令集以及它们的组合。每个命令集通过I/O Command Set Vectors表示,指示该命令集是否被支持。

I/O Command Set Profile Feature

  • 该字段指示当前选择的I/O命令集组合的索引(从0h开始)。每个组合对应一个I/O命令集的特定配置,只有在该组合中启用的命令集才能被使用。

应用场景和意义

  1. 耐久组列表(Endurance Group List)
  2. 对于多命名空间的设备,可以根据耐久性将命名空间分组,帮助管理员了解哪些命名空间属于同一个耐久组。这对于存储管理和维护设备寿命非常重要。

  3. 命名空间ID列表(Namespace ID List)

  4. 该功能使得主机能够查询多个命名空间ID,获取存储系统中有效和分配的命名空间信息。特别是在I/O命令集指定的命名空间范围内,可以更精确地查询与命名空间相关的操作。

  5. I/O命令集数据结构

  6. 多I/O命令集支持是NVM系统的重要特性,允许不同的命令集同时执行。通过Identify I/O Command Set命令,主机可以查询到当前支持的命令集组合,以及每个命令集是否已启用,从而优化存储资源的利用。

  7. 命名空间管理与I/O命令集

  8. 控制器通过支持多种命令集和耐久组,使得系统能根据不同的需求灵活地配置存储资源。I/O命令集的选择与配置使得存储设备在支持不同标准的同时,能够根据实际使用场景进行优化和定制。

总结

这些数据结构使得NVM子系统能够灵活地管理多个命名空间、命名空间ID和耐久组,并为设备提供更高的可扩展性。通过这些结构,主机系统可以有效地查询和操作命名空间和控制器,提高系统的整体性能和资源利用率。