第5章 管理接口命令集 - 页码89
NVMe-MI 1 min read

第5章 管理接口命令集 - 页码89

Blog Author

你现在已经进入 NVMe-MI 2.0 规范中第 5 章管理命令集(Management Interface Command Set)的核心部分——命令列表及支持矩阵。我们来逐步、深入分析帮助你建立清晰的认知结构。


🧩 图 68:命令集 Opcode 列表

这张表是所有 NVMe-MI 命令的“命令码”清单,每个命令都具有唯一的 Opcode(操作码):

Opcode 命令名 说明
00h Read NVMe-MI Data Structure 读取设备支持的数据结构
01h NVM Subsystem Health Status Poll 查询 NVM 子系统健康信息
02h Controller Health Status Poll 查询 Controller 健康信息
03h Configuration Set 设置配置项
04h Configuration Get 获取配置项
05h VPD Read 读取 VPD(Vital Product Data)
06h VPD Write 写入 VPD
07h Reset 对组件执行软复位
08h SES Receive 接收 SES(SCSI Enclosure Services)数据
09h SES Send 发送 SES 数据
0Ah Management Endpoint Buffer Read 从管理端点缓冲区读取
0Bh Management Endpoint Buffer Write 写入管理端点缓冲区
0Ch Shutdown 发起关机流程
0Dh–BFh 保留
C0h–FFh 厂商自定义命令

✅ 图 69:使用 Out-of-Band 通道时的命令支持情况

每个命令都有不同的支持情况,对应设备为: - NVMe Storage Device(SSD 等) - NVMe Enclosure(例如 U.2/U.3 背板)

表中标识如下: - M = Mandatory(必须支持) - O = Optional(可选) - P = Prohibited(禁止支持) - 注释数字 = 特定条件(下面解释)

命令 NVMe 存储设备 NVMe Enclosure 注释说明
Read NVMe-MI Data Structure M M -
NVM Subsystem Health Poll M Enclosure 不一定有完整 NVM 视角
Controller Health Poll M 同上
Configuration Set M 如果设备实现了配置结构
Configuration Get M 同上
VPD Read M 可选
VPD Write O 可选
Reset O 可选,部分厂商支持
SES Receive P M 存储设备禁止支持,Enclosure 必须支持
SES Send P M 同上
Shutdown O 可选
Mgmt Buffer Read O M Enclosure 推荐支持
Mgmt Buffer Write O M 同上

📌 注释说明

  • ¹ O/M/P = Optional / Mandatory / Prohibited
  • ²:如果配置项存在,则必须支持 Configuration Set/Get
  • ³:设备可根据自身能力选择是否支持

🔎 学习建议

  1. 掌握 Opcode 与命令语义:牢记 0x00 到 0x0C 的命令及作用,将来遇到通信协议、调试工具日志时能快速判断是什么操作。
  2. 关注设备类型差异:命令支持情况不同,要根据设备类型判断命令是否可用。
  3. 结合 Section 5.x 深读每个命令细节:后面小节会介绍每个命令的字段、流程和异常情况处理。

接下来你是否想从 00h: Read NVMe-MI Data Structure 开始,逐条逐字段精讲每个命令的格式与交互流程?我可以按你的节奏逐步带你拆解理解。需要我继续深入第一个命令的细节吗?