推荐图表 - 异步事件与健康状态 - 页码6
NVMe-MI 1 min read

推荐图表 - 异步事件与健康状态 - 页码6

Blog Author

你现在提供的是 《NVM Express® Management Interface Specification, Revision 2.0》图表目录的第7页内容,主要覆盖了 第4章(消息服务模型)至第5章(命令集)后半段的图解,包括:

  • Receive 命令处理流程
  • AEM 异步事件结构
  • Command Request/Response 格式
  • Health Poll 命令结构
  • Buffer Read/Write
  • 数据结构读取响应
  • NVMe 子系统结构体

下面我会继续按图表类别拆解这些图的学习作用、建议搭配的章节阅读策略,并重点标注适合入门到进阶阶段学习的关键图表。


✅ 图解学习结构(二):第4章后半段 + 第5章命令详解


Receive 命令与处理流程(Figure 57–58)

图号 内容 涉及章节 学习用途
Fig 57 Completion Queue Entry Dword 0 (NRCQED0) §4.3.2 CQ 的状态结构说明(命令完成)
Fig 58 Receive Command Servicing Model §4.3.2 NVMe-MI 接收命令的状态流转图

📌 配合 Fig 53(Send Servicing Model)一起理解完整的隧道命令生命周期


异步事件(AEM)结构与流程(Figure 59–65)

图号 内容 涉及章节 学习建议
Fig 59–60 AEM 格式 + 字段说明 §4.4.4 异步事件消息结构
Fig 61–62 AE Occurrence 数据结构 §4.4.6 每次事件发生的记录结构
Fig 63–65 AE ID 映射、Scope、Specific Info §4.4.6 用于识别事件类型与作用范围

🧠 强烈推荐深入掌握,尤其用于系统事件监控、硬件预警。
🌟 建议绘制表格:AEM 类型 + Scope ID + Info 数据结构


管理命令封装结构(Figure 66–75)

图号 内容 涉及章节 用途
Fig 66–67 Command Request 格式与字段说明(NCREQ) §5 所有 NVMe-MI 命令的通用头
Fig 68 Opcode 一览表 §5.1–5.2 速查管理命令类型
Fig 69–70 OOB/In-Band 支持情况图示 §5 引导 显示哪些命令可用在哪种机制
Fig 71–72 Command Response 格式(NCRESP) §5.1 命令响应通用头部结构
Fig 73–75 示例命令字段图 Configuration Get 结构解析

📌 可以制作一个Opcode→功能→机制支持速查表
🎯 NCREQ/NCRSP 是分析所有命令(如 Health Poll / Buffer Read)必须掌握的通用封装


Configuration 命令结构图(Figure 76–93)

涵盖 Configuration Get / Set 的典型字段: - 2-Wire Frequency - Health Status Change - MCTP Transmission Unit Size - Asynchronous Event Enable/Suppport 列表结构

🌟 推荐重点图: | 图号 | 命令相关 | 建议 | |------|---------|------| | Fig 77/81 | Response 示例结构 | 理解字段映射响应值 | | Fig 82–83 | AE Supported Data Structure | 表示设备支持哪些 AE | | Fig 92–93 | AE Enable Data Structure | 启用哪些 AE 类型 |


健康轮询命令图表(Figure 94–99)

📌 建议作为重点学习目标之一

图号 内容 涉及命令 页码参考
Fig 94–95 Controller Health Status Poll 请求结构 CMD ID = XXh p104–105
Fig 96 响应结构总览 Controller Health Response p106
Fig 97 Controller Health Data Structure (CHDS) 数据字段详解 p107
Fig 98–99 状态变更标志位 CHSCF 差异检测机制 p109–111

🧠 建议对照使用场景绘制结构字段说明图


缓冲区读写(Figure 100–105)

  • Management Endpoint Buffer Read/Write 命令相关
  • 用于 MCTP 隧道命令缓冲操作

📌 建议重点掌握: - Dword 0Dword 1 结构(起始偏移、长度、标志等)


NVM 子系统健康状态轮询(Figure 106–108)

  • 类似于控制器健康轮询,但结构体不同
  • 特别图:
  • Fig 107:Composite Controller Status
  • Fig 108:NVM Subsystem Health Data Structure

数据结构读取命令(Figure 109–116)

图示包含: - 命令请求格式(Fig 109–110) - 响应数据结构(Fig 111–116),如: - NVM Subsystem Info - Port Info(含 PCIe/2-Wire 端口数据) - Version 字段值格式

📌 适合系统信息收集/分析/工具构建的开发者


🔖 总结:关键图表推荐(本页)

分类 推荐图 理由
异步事件 Fig 59–65 学习系统级健康事件与通知机制
命令封装 Fig 66–72 理解所有命令结构的基础
健康状态 Fig 94–99 核心轮询命令,必懂
配置命令 Fig 76–93 各类功能开关字段理解
数据读取 Fig 109–116 构建管理工具所需基础结构

📘 如果你有 PDF 正文,也可以告诉我具体页码或贴出对应内容,我可以: - 图示字段逐位解释(例如 CHDS) - 生成 NVMe-MI 命令字节结构分析表 - 还原图结构为 Markdown 或数据结构定义帮助记忆

你下一步想对哪张图或哪组命令结构深入分析?例如 Controller HealthAsynchronous Event?我们可以立刻详细拆解。