PCIe配置与VPD管理 - 页码163
深入分析:NVM Express® Management Interface Specification, Revision 2.0
1. Product Info Area(产品信息区)解析
产品信息区 是 VPD(Vital Product Data) 中的一个重要组成部分,它提供了关于 NVMe 存储设备 的详细信息。这些字段通常使用 8 位 ASCII 编码 来表示设备的名称、型号、版本、序列号等,确保设备能够被正确识别和管理。其结构如下:
产品信息区的主要字段解析:
- Product Name Type/Length (PNTL):
-
该字段指定产品名称字段的类型和长度。最大长度为 24 字节。
-
Product Name (PNAME):
-
该字段包含产品名称,使用 8 位 ASCII 编码,且不应有填充。如果填充了字符,应使用 NULL 字符(
00h
)。 -
Product Part/Model Number Type/Length (PPMNNTL):
-
该字段指定产品零件或型号号字段的类型和长度。最大长度为 40 字节。
-
Product Part/Model Number (PPMN):
-
该字段包含产品零件或型号号,使用 8 位 ASCII 编码。应与 Identify Controller 数据结构中的 Model Number (MN) 字段相匹配,注意去除空格。
-
Product Version Type/Length (PVTL):
-
该字段指定产品版本字段的类型和长度。最大长度为 2 字节。
-
Product Version (PVER):
-
该字段包含产品版本,使用 8 位 ASCII 编码。
-
Product Serial Number Type/Length (PSNTL):
-
该字段指定产品序列号字段的类型和长度。最大长度为 20 字节。
-
Product Serial Number (PSN):
-
该字段包含产品序列号,使用 8 位 ASCII 编码,应与 Identify Controller 数据结构中的 Serial Number (SN) 字段一致,去除空格。
-
Asset Tag Type/Length (ATTL):
-
该字段指定资产标签字段的类型和长度。如果没有资产标签,则该字段为
0h
。 -
Asset Tag (AT):
-
该字段包含资产标签信息。
-
FRU File ID Type/Length (ATTL):
-
该字段指定 FRU 文件 ID 字段的类型和长度。若没有 FRU 文件 ID,则该字段为
0h
。 -
FRU File ID (FFI):
-
该字段提供用于验证制造时使用的 FRU 文件的制造支持信息。
-
Custom Product Info Area (CPIA):
-
该可选字段允许添加自定义的产品信息区域字段,字段前面需要有 Type/Length 字段。
-
End of Record (EOR):
-
该字段的值为
C1h
,表示记录的结束。 -
产品信息区校验和 (PICHK):
- 计算 产品信息区 中所有字节(不包括校验和字段)的校验和。通过将这些字节的 8 位值相加并取模 256,之后取 2 的补码得到。校验和应保证加上字节和的模 256 的结果为
0h
。
2. NVMe MultiRecord Area(NVMe 多记录区域)解析
NVMe 多记录区域 用于描述 NVMe 存储设备 的 形态、功率要求和容量,并通过 VPD 进行访问。实现版本为 1.1 或更高版本的规范应实现 Topology MultiRecord(参见第 8.2.5 节)。
- NVMe MultiRecord 及 NVMe PCIe Port MultiRecord(参见第 8.2.4 节)应与 Topology MultiRecord 一同包含在 VPD 中,除非:
- 对于某些特殊情况,可能不需要包括这些多记录。
3. 产品信息区的校验机制
产品信息区 的内容应具有完整的校验机制来确保其数据的完整性。PICHK 字段提供了 产品信息区 的校验和,确保数据在传输过程中没有被篡改。这种校验机制是数据传输的基础,保证了 VPD 内容在不同管理控制器和管理端点之间传递时的一致性。
4. 总结与应用
-
产品信息区 提供了有关设备的基础信息,如产品名称、型号、序列号、制造商信息等。通过这些信息,管理控制器可以识别设备并进行有效的管理。
-
NVMe 多记录区域 描述了设备的功率、形态和容量等方面的关键信息,有助于实现设备的功能描述和支持。
-
VPD 校验和机制 确保了数据的完整性和一致性,这对于设备管理至关重要,特别是在大规模部署和远程管理中。
通过分析 产品信息区 和 NVMe 多记录区域 的细节,可以更好地理解 NVM Express 规范如何通过结构化的方式为存储设备提供基本信息,并确保设备信息的有效管理和无误传输。