各電源状態の属性を記述するフィールドが含まれています。
NVME_POWER_STATE_DESC構造体の配列は、コントローラー機能構造体の PDS フィールドで使用されます。
構文
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;
Members
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 フィールドでは、次の値を使用します。
| 価値 | Definition |
|---|---|
| 00b | この電源状態については報告されません。 |
| 01b | 0.0001 W |
| 10b | 0.01 W |
| 11b | 引っ込み思案 |
Reserved7
ビット 152:159 は予約されています。
ACTP
この電源状態の 10 秒間に NVM サブシステムによって消費された最大の平均電力を、アクティブな電源ワークロード (APW) フィールドに示されたワークロードと共に示します。
ワット単位の電力は、このフィールドの値に、アクティブな電力スケール (APS) フィールドに示されているスケールを乗算した値と等しくなります。
0000hの値は、アクティブな電源が報告されていないことを示します。
APW
この電源状態の最大電力の計算に使用されるワークロードを示します。
APW フィールドは、次の値を使用します。
| 価値 | Definition |
|---|---|
| 00b | ワークロードなし。 ワークロードが不明であるか、指定されていません。 |
| 01b | ワークロード #1。 ランダム書き込みのバーストによるアイドル期間の延長。 ワークロード #1 は、アイドル状態の 5 分 (5) 分と、NVM サブシステム内の他のすべてのコントローラーがアイドル状態の間にサイズ 1 MB の 32 (32) ランダム書き込みコマンドが送信され、次に 30 秒のアイドル状態で構成されます。 |
| 10b | ワークロード #2: 大量の順次書き込み。 ワークロード #2 は、NVM サブシステム内の他のすべてのコントローラーがアイドル状態である間、1 つのコントローラーに送信されるサイズ 128 KB の 80,000 の順次書き込みコマンドで構成されます。 送信キューは十分に大きくする必要があります。これにより、ホストはワークロード中に常に複数のコマンドが保留中であることを確認できます。 |
| 11b | 引っ込み思案 |
ACTP が0000hされていない限り、このフィールドの値は [ワークロードなし] になりません。
Reserved8
ビット 179:181 は予約されています。
APS
Active Power (ACTP) フィールドのスケールを示します。 電源状態についてアクティブな電源ワークロード (APW) が報告された場合、その電源状態のアクティブな電源スケール (APS) も報告されます。
APS フィールドでは、次の値を使用します。
| 価値 | Definition |
|---|---|
| 00b | この電源状態については報告されません。 |
| 01b | 0.0001 W |
| 10b | 0.01 W |
| 11b | 引っ込み思案 |
Reserved9[9]
ビット 184:255 は予約されています。
Requirements
| Requirement | 価値 |
|---|---|
| サポートされる最小クライアント | Windows 10 |
| Header | nvme.h |