共用方式為


NVME_CDW11_FEATURES union (nvme.h)

包含取得功能和設定功能命令的參數,這些命令會擷取或設定指定功能的屬性。

這個結構用於 Command 結構中 GETFEATURES 和 SETFEATURES 欄位的 CDW11 參數。

語法

typedef union {
  NVME_CDW11_FEATURE_NUMBER_OF_QUEUES              NumberOfQueues;
  NVME_CDW11_FEATURE_INTERRUPT_COALESCING          InterruptCoalescing;
  NVME_CDW11_FEATURE_INTERRUPT_VECTOR_CONFIG       InterruptVectorConfig;
  NVME_CDW11_FEATURE_LBA_RANGE_TYPE                LbaRangeType;
  NVME_CDW11_FEATURE_ARBITRATION                   Arbitration;
  NVME_CDW11_FEATURE_VOLATILE_WRITE_CACHE          VolatileWriteCache;
  NVME_CDW11_FEATURE_ASYNC_EVENT_CONFIG            AsyncEventConfig;
  NVME_CDW11_FEATURE_POWER_MANAGEMENT              PowerManagement;
  NVME_CDW11_FEATURE_AUTO_POWER_STATE_TRANSITION   AutoPowerStateTransition;
  NVME_CDW11_FEATURE_TEMPERATURE_THRESHOLD         TemperatureThreshold;
  NVME_CDW11_FEATURE_ERROR_RECOVERY                ErrorRecovery;
  NVME_CDW11_FEATURE_HOST_MEMORY_BUFFER            HostMemoryBuffer;
  NVME_CDW11_FEATURE_WRITE_ATOMICITY_NORMAL        WriteAtomicityNormal;
  NVME_CDW11_FEATURE_NON_OPERATIONAL_POWER_STATE   NonOperationalPowerState;
  NVME_CDW11_FEATURE_IO_COMMAND_SET_PROFILE        IoCommandSetProfile;
  NVME_CDW11_FEATURE_ERROR_INJECTION               ErrorInjection;
  NVME_CDW11_FEATURE_HOST_IDENTIFIER               HostIdentifier;
  NVME_CDW11_FEATURE_RESERVATION_PERSISTENCE       ReservationPersistence;
  NVME_CDW11_FEATURE_RESERVATION_NOTIFICATION_MASK ReservationNotificationMask;
  NVME_CDW11_FEATURE_GET_HOST_METADATA             GetHostMetadata;
  NVME_CDW11_FEATURE_SET_HOST_METADATA             SetHostMetadata;
  ULONG                                            AsUlong;
} NVME_CDW11_FEATURES, *PNVME_CDW11_FEATURES;

成員

NumberOfQueues

指定包含值 NVME_CDW11_FEATURE_NUMBER_OF_QUEUES 結構,指出主機要求此控制器的佇列數目。

針對 [佇列數目] 功能提交 [設定功能] 或 [取得功能] 命令時,NVME_CDW11_FEATURE_NUMBER_OF_QUEUES結構會傳回該命令之 [完成佇列] 專案的 [Dword 0 (DW0) ] 字段。

InterruptCoalescing

指定 NVME_CDW11_FEATURE_INTERRUPT_COALESCING 結構,其中包含設定中斷聯合設定的值。

提交 「中斷聯合功能」的 Get Features 命令時,NVME_CDW11_FEATURE_INTERRUPT_COALESCING 結構的 TIMETHR 字段中指定的值會傳回該命令完成佇列專案的DW0 字段中。

InterruptVectorConfig

指定 NVME_CDW11_FEATURE_INTERRUPT_VECTOR_CONFIG 結構,其中包含設定特定中斷向量特定設定的值。

提交 「中斷向量設定功能」的 Get Features 命令時,會在該命令的完成佇列輸入的 DW0 欄位中傳回 [中斷向量] (IV) 和 [已停用 NVME_CDW11_FEATURE_INTERRUPT_VECTOR_CONFIG] (CD) 字段中指定的值。

在發出這項功能之前,主機應該使用有效的 I/O 完成佇列來設定指定的中斷向量。 如果指定的 I/O 完成佇列或中斷向量無效,控制器會傳回 NVME_STATUS_INVALID_FIELD_IN_COMMAND的狀態。

LbaRangeType

指定包含值 NVME_CDW11_FEATURE_LBA_RANGE_TYPE 結構,指定 [設定功能] 命令中 LBA 範圍類型功能的 LBA 範圍數目。

此欄位僅用於設定功能命令,而且會忽略 Get Features 命令。

LBA 範圍類型功能會指定屬於指定命名空間一部分之邏輯區塊配置 (LBA) 範圍的類型和屬性。 此功能會使用 NVME_CDW11_FEATURE_LBA_RANGE_TYPE 結構來指定 LBA 範圍的數目,以及 NVME_LBA_RANGET_TYPE_ENTRY 數據結構來指定類型和屬性資訊。

針對 LBA 範圍類型功能提交 Get Features 命令時,NVME_CDW11_FEATURE_LBA_RANGE_TYPE 結構的 NUM 欄位中指定的值會傳回完成佇列專案的DW0 欄位中,而 LBA 範圍類型NVME_LBA_RANGET_TYPE_ENTRY數據結構會在該命令的數據緩衝區中傳回。

Arbitration

指定 NVME_CDW11_FEATURE_ARBITRATION 結構,其中包含控制命令仲裁的值。

針對仲裁功能提交 Get Features 命令時,這個欄位中指定的結構會傳回該命令完成佇列專案的DW0 字段中。

VolatileWriteCache

指定 NVME_CDW11_FEATURE_VOLATILE_WRITE_CACHE 結構,其中包含控制控制器上變動性寫入快取的值。

針對動態寫入快取功能提交 Get Features 命令時,NVME_CDW11_FEATURE_VOLATILE_WRITE_CACHEWCE 欄位中指定的值會傳回該命令完成佇列專案的DW0 字段中。

AsyncEventConfig

指定包含異步事件組態功能參數 的NVME_CDW11_FEATURE_ASYNC_EVENT_CONFIG 結構,可控制觸發異步事件通知給主機的事件。

針對異步事件組態功能提交 Get Features 命令時,該命令的完成佇列輸入結構的 DW0 字段中會傳回 [NVME_CDW11_FEATURE_ASYNC_EVENT_CONFIG] 結構中指定的值。

PowerManagement

指定 NVME_CDW11_FEATURE_POWER_MANAGEMENT 結構,其中包含允許主機設定電源狀態的值。

提交 Power Management 功能的 [取得功能] 命令時,該命令的 [完成佇列] 專案的DW0 字段中會傳回NVME_CDW11_FEATURE_POWER_MANAGEMENT結構。

AutoPowerStateTransition

指定包含自發電源狀態轉換功能參數 的NVME_CDW11_FEATURE_AUTO_POWER_STATE_TRANSITION 結構,可設定自發電源狀態轉換的設定。

自發電源狀態轉換功能會指定 NVME_CDW11_FEATURE_AUTO_POWER_STATE_TRANSITION 數據結構和 自發電源狀態轉換輸入 數據結構中的屬性資訊。

針對自發電源狀態轉換功能提交 Get Features 命令時,會在完成佇列輸入DW0 欄位中傳回NVME_CDW11_FEATURE_AUTO_POWER_STATE_TRANSITION結構的 APSTE 欄位中指定的值,而該命令的數據緩衝區中會傳回NVME_AUTO_POWER_STATE_TRANSITION_ENTRY數據結構。

TemperatureThreshold

指定 NVME_CDW11_FEATURE_TEMPERATURE_THRESHOLD 結構,其中包含用來設定或擷取控制器溫度閾值的值。

ErrorRecovery

HostMemoryBuffer

指定 NVME_CDW11_FEATURE_HOST_MEMORY_BUFFER 結構,其中包含用來控制主機記憶體緩衝區的值。

主機記憶體緩衝區功能提供一種機制,讓主機配置一部分主機記憶體,讓控制器獨佔使用。 成功完成啟用主機記憶體緩衝區的 [設定功能] 命令之後,主機將不會寫入相關聯的主機記憶體區域、緩衝區大小或描述元清單,直到主機記憶體緩衝區停用為止。 成功完成停用主機記憶體緩衝區的 [設定功能] 命令之後,控制器將不會存取主機記憶體緩衝區中的任何數據,直到啟用主機記憶體緩衝區為止。

主機記憶體描述元清單是主機記憶體中實際連續的數據結構,描述主機記憶體緩衝區的位址和長度配對。 清單的界限和內容定義於下列欄位和結構中:

WriteAtomicityNormal

指定 NVME_CDW11_FEATURE_WRITE_ATOMICITY_NORMAL 結構,其中包含控制不可部分完成寫入單位一般 (AWUN 作業) 和命名空間不可部分完成寫入單位標準 (NAWUN) 參數的值,這些參數會定義控制器對不可部分完成作業的支援。

針對 Write Atomicity Normal Feature 提交 Get Features 命令時,該命令的完成佇列輸入結構的 DW0 字段中會傳回 [NVME_CDW11_FEATURE_WRITE_ATOMICITY_NORMAL 結構] 中指定的值。

NonOperationalPowerState

指定包含非操作電源狀態功能值的 NVME_CDW11_FEATURE_NON_OPERATIONAL_POWER_STATE 結構,指出是否針對非操作電源狀態啟用寬鬆模式。

IoCommandSetProfile

ErrorInjection

HostIdentifier

ReservationPersistence

ReservationNotificationMask

GetHostMetadata

SetHostMetadata

AsUlong

規格需求

需求
最低支援的用戶端 Windows 10
標頭 nvme.h

另請參閱