共用方式為


NVME_COMPLETION_QUEUE_HEAD_DOORBELL union (nvme.h)

定義門鈴緩存器,以更新完成佇列 y 的前端項目指標。

y 的值相當於佇列標識碼,這是在建立佇列時指派給佇列的 16 位標識碼值,這個值表示主機軟體已處理的完成佇列專案。

完成佇列 y Head Doorbell (CQyHDBL) 的位移為: (1000h + ((2y + 1) * (4 << CAP.DSTRD)))

其中 CAP.DSTRDNVME_CONTROLLER_CAPABILITIESDSTRD 欄位的值。

語法

typedef union {
  struct {
    ULONG CQH : 16;
    ULONG Reserved0 : 16;
  } DUMMYSTRUCTNAME;
  ULONG  AsUlong;
} NVME_COMPLETION_QUEUE_HEAD_DOORBELL, *PNVME_COMPLETION_QUEUE_HEAD_DOORBELL;

成員

DUMMYSTRUCTNAME

DUMMYSTRUCTNAME.CQH

讀取/寫入欄位,表示完成佇列前端項目指標的新值。

此值會覆寫任何先前提供的完成佇列前端 (CQH) 值。 最後一個 CQH 寫入與目前的 CQH 專案指標寫入之間的差異,表示現在可供完成佇列中的控制器重複使用的項目數。

注意

完成佇列變換必須考慮。

DUMMYSTRUCTNAME.Reserved0

唯讀保留欄位。

AsUlong

備註

主機不應該讀取門鈴緩存器。 如果讀取門鈴緩存器,傳回的值就是廠商專屬的值。 寫入不存在的完成佇列前端門鈴有未定義的結果。

主機軟體應該繼續處理完成佇列中的完成佇列專案,而不論任何提交佇列中是否有可用的專案。

規格需求

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