nvme.h) (NVME_POWER_STATE_DESC 结构

包含描述每个电源状态的属性的字段。

控制器功能结构的 PDS 字段中使用NVME_POWER_STATE_DESC结构的数组。

语法

typedef struct {
  USHORT MP;
  UCHAR  Reserved0;
  UCHAR  MPS : 1;
  UCHAR  NOPS : 1;
  UCHAR  Reserved1 : 6;
  ULONG  ENLAT;
  ULONG  EXLAT;
  UCHAR  RRT : 5;
  UCHAR  Reserved2 : 3;
  UCHAR  RRL : 5;
  UCHAR  Reserved3 : 3;
  UCHAR  RWT : 5;
  UCHAR  Reserved4 : 3;
  UCHAR  RWL : 5;
  UCHAR  Reserved5 : 3;
  USHORT IDLP;
  UCHAR  Reserved6 : 6;
  UCHAR  IPS : 2;
  UCHAR  Reserved7;
  USHORT ACTP;
  UCHAR  APW : 3;
  UCHAR  Reserved8 : 3;
  UCHAR  APS : 2;
  UCHAR  Reserved9[9];
} NVME_POWER_STATE_DESC, *PNVME_POWER_STATE_DESC;

成员

MP

指示此电源状态下 NVM 子系统消耗的最大功率。

以瓦特为单位的幂等于此字段中的值乘以“最大功率刻度 (MPS) ”字段中指定的刻度。

Reserved0

保留位 16:23。

MPS

指示“最大功率”字段 (MP) 的比例。

将此字段清除为 0时, MP 字段的比例为 0.01 瓦。 当此字段设置为 1时, MP 字段的比例为 0.0001 瓦。

NOPS

指示控制器是否在此电源状态下处理 I/O 命令。

将此字段清除为 0时,控制器将处理处于此电源状态的 I/O 命令。 当此字段设置为 1时,控制器不会处理处于此电源状态的 I/O 命令。

Reserved1

保留位 26:31。

ENLAT

指示与进入此电源状态相关的最大入口延迟(以微秒为单位)。

EXLAT

指示与退出此电源状态相关的最大退出延迟(以微秒为单位)。

RRT

指示与此电源状态关联的相对读取吞吐量。

此字段中的值应小于支持的电源状态数。 例如,如果控制器支持 16 个电源状态,则此字段的有效值为 0 到 15。 值越小,则表示读取吞吐量越高。

Reserved2

保留位 101:103。

RRL

指示与此电源状态关联的相对读取延迟。

此字段中的值应小于支持的电源状态数。 例如,如果控制器支持 16 个电源状态,则此字段的有效值为 0 到 15。 值越小表示读取延迟越低。

Reserved3

保留位 109:111。

RWT

指示与此电源状态关联的相对写入吞吐量。

此字段中的值应小于支持的电源状态数。 例如,如果控制器支持 16 个电源状态,则此字段的有效值为 0 到 15。 值越小表示写入吞吐量越高。

Reserved4

保留位 117:119。

RWL

指示与此电源状态关联的相对写入延迟。

此字段中的值应小于支持的电源状态数。 例如,如果控制器支持 16 个电源状态,则此字段的有效值为 0 到 15。 值越小表示写入延迟越低。

Reserved5

保留位 125:127。

IDLP

指示当空闲 (没有挂起的命令、注册访问或后台进程) 时,NVM 子系统在此电源状态下超过 30 秒的典型功耗。

在 NVM 子系统空闲 10 秒后开始测量。 以瓦特为单位的功率等于此字段中的值乘以“空闲功率缩放 (IPS) ”字段中指示的刻度。 值为 0000h 指示未报告空闲电源。

Reserved6

保留位 144:149。

IPS

此字段指示空闲电源 (IDLP) 字段的比例。

IPS 字段使用以下值:

定义
00b 未报告此电源状态。
01b 0.0001 W
10b 0.01 W
11b 预留

Reserved7

保留位 152:159。

ACTP

指示此电源状态中 NVM 子系统在 10 秒内消耗的最大平均功率,并在“活动电源工作负载 (APW) ”字段中指示工作负载。

以瓦特为单位的幂等于此字段中的值乘以“活动功率刻度 (APS) 字段中指示的刻度。 值为 0000h 表示未报告活动功率。

APW

指示用于计算此电源状态的最大功率的工作负荷。

APW 字段使用以下值:

定义
00b 无工作负荷。 工作负荷未知或未提供。
01b 工作负荷 #1。 随机写入突发的延长空闲期。 工作负载 #1 包括 5 (5) 分钟的空闲,然后是 3) 2 个 (32 个 1MB 大小的随机写入命令提交到单个控制器,而 NVM 子系统中的所有其他控制器都处于空闲状态,然后是 30 (30) 秒空闲。
10b 工作负荷 #2:大量顺序写入。 工作负载 #2 包含提交到单个控制器的 80,000 个大小为 128KB 的顺序写入命令,而 NVM 子系统中的所有其他控制器都处于空闲状态。 提交队列 () 应足够大,允许主机确保在工作负载期间随时有多个命令挂起。
11b 预留

除非 ACTP0000h为 ,否则此字段的值不会为“无工作负荷”。

Reserved8

保留位 179:181。

APS

指示 Active Power (ACTP) 字段的刻度。 如果报告电源状态 (APW) 的活动电源工作负载,则还将报告该电源状态的活动电源规模 (APS) 。

APS 字段使用以下值:

定义
00b 未报告此电源状态。
01b 0.0001 W
10b 0.01 W
11b 预留

Reserved9[9]

保留位 184:255。

要求

要求
最低受支持的客户端 Windows 10
标头 nvme.h