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 |