特性配置 - 5.17.2.18 Endurance Group List (CNS 19h) (第287页)
在《NVM Express® Base Specification, revision 2.0b》中,以下几个命令集涉及到Endurance Group List、I/O Command Set Specific Allocated Namespace ID List、I/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命令集的特定配置,只有在该组合中启用的命令集才能被使用。
应用场景和意义:
- 耐久组列表(Endurance Group List):
-
对于多命名空间的设备,可以根据耐久性将命名空间分组,帮助管理员了解哪些命名空间属于同一个耐久组。这对于存储管理和维护设备寿命非常重要。
-
命名空间ID列表(Namespace ID List):
-
该功能使得主机能够查询多个命名空间ID,获取存储系统中有效和分配的命名空间信息。特别是在I/O命令集指定的命名空间范围内,可以更精确地查询与命名空间相关的操作。
-
I/O命令集数据结构:
-
多I/O命令集支持是NVM系统的重要特性,允许不同的命令集同时执行。通过
Identify I/O Command Set命令,主机可以查询到当前支持的命令集组合,以及每个命令集是否已启用,从而优化存储资源的利用。 -
命名空间管理与I/O命令集:
- 控制器通过支持多种命令集和耐久组,使得系统能根据不同的需求灵活地配置存储资源。I/O命令集的选择与配置使得存储设备在支持不同标准的同时,能够根据实际使用场景进行优化和定制。
总结:
这些数据结构使得NVM子系统能够灵活地管理多个命名空间、命名空间ID和耐久组,并为设备提供更高的可扩展性。通过这些结构,主机系统可以有效地查询和操作命名空间和控制器,提高系统的整体性能和资源利用率。