命名空间管理与配置 - 第134页
以下是对 《NVM Express® Base Specification, revision 2.0b》第123页 中关于 水平组织的双 NAND NVM 子系统(Horizontally-Organized Dual NAND NVM Subsystem) 和 容量报告(Capacity Reporting) 的详细中文解析与学习讲解。
🌟 水平组织的双 NAND NVM 子系统(Horizontally-Organized Dual NAND NVM Subsystem)
✅ 性能目标:分层存储与带宽优化
在该架构中,目标是通过优化带宽同时支持 SLC 和 QLC 的 NAND 类型。具体实现方式为:
- NVM Set 和 Endurance Group 的分配:
- Endurance Group 1 包含高性能的 SLC 媒体单元,提供较高的耐久性和更高的性能。
-
Endurance Group 2 包含大容量的 QLC 媒体单元,提供较低的耐久性,但具有更高的存储密度。
-
容量调整系数(Capacity Adjustment Factor):
- 对于 SLC NVM Set,该调整系数为 1600,意味着该组的存储密度较低,但性能高。
- 对于 QLC NVM Set,该调整系数为 100,容量更大,但性能相对较低。
✅ 具体结构(参见 Figure 106):
| 组件 | 描述 |
|---|---|
| NVM Set 1 | 含有高性能的 SLC 存储单元,容量较小,但性能较好。 |
| NVM Set 2 | 含有大容量的 QLC 存储单元,性能较低,但存储密度较大。 |
| Endurance Group 1 | 完全由 SLC 存储单元构成,适用于高性能场景。 |
| Endurance Group 2 | 完全由 QLC 存储单元构成,适用于大容量存储需求。 |
容量配置描述符:
- 第一个 Endurance Group 配置描述符:
- 指示 SLC 媒体单元的容量调整系数为 1600。
-
包含 1 个 NVM Set 标识符 和 4 个通道配置描述符,每个通道配置包含 1 个媒体单元配置描述符。
-
第二个 Endurance Group 配置描述符:
- 指示 QLC 媒体单元的容量调整系数为 100。
- 包含 1 个 NVM Set 标识符 和 4 个通道配置描述符,每个通道配置包含 3 个媒体单元配置描述符。
📊 容量报告(Capacity Reporting)
✅ 容量报告模型的变化:
NVM 子系统如何报告其容量依赖于是否支持多个域。根据不同的子系统结构和支持的功能,容量报告会有所不同。
1. 不支持多域的 NVM 子系统:
- 在这种情况下,容量报告由 Identify Controller 命令返回,其中包括:
- TNVMCAP 字段:描述 NVM 子系统的总容量。
- UNVMCAP 字段:描述子系统中的可用容量。
- MEGCAP 字段(如果非零):表示最大支持的实体(如耐久组、NVM 集或命名空间)的大小。
2. 支持多域的 NVM 子系统:
- 当子系统支持多个域时,
Identify Controller命令返回的信息描述了由当前控制器所访问的容量。 - 主机可以使用
Identify命令来访问 Domain List 数据结构(参见 §5.17.2.17),以确定该控制器可访问的域及每个域的容量信息。
3. 支持耐久组的 NVM 子系统:
- 如果控制器支持耐久组(Endurance Groups),主机可以通过
Identify命令访问 Endurance Group List 数据结构(参见 §5.17.2.18),确定控制器可访问的耐久组。 - 主机还可以使用 Get Log Page 命令 来访问 Endurance Group Information log page(参见 §5.16.1.10)以获取耐久组的详细容量信息。
🧠 关键点总结
| 内容 | 重点 |
|---|---|
| 水平组织的双 NAND 子系统 | 通过 SLC 和 QLC 的混合配置,分别优化高性能和大容量存储,采用分层存储管理。 |
| 容量配置描述符 | 通过 Endurance Group Configuration Descriptors 管理不同的 NVM Set 和 Channel 配置,实现性能优化。 |
| 容量报告 | 根据是否支持多域或耐久组,容量报告的详细信息会有所不同,主机可以通过 Identify 命令来获取相关信息。 |
如果你希望继续深入分析 耐久组(Endurance Group) 相关数据结构,或想了解 如何通过命令来配置和管理这些容量信息,请随时告诉我!