다음을 통해 공유


NVME_CONTROLLER_CAPABILITIES 공용 구조체(nvme.h)

소프트웨어를 호스트하는 컨트롤러의 기본 기능을 지정하는 읽기 전용 값을 포함합니다.

이 구조체는 NVME_CONTROLLER_REGISTERS 구조체의 CAP(컨트롤러 기능) 필드에 사용됩니다.

구문

typedef union {
  struct {
    ULONGLONG MQES : 16;
    ULONGLONG CQR : 1;
    ULONGLONG AMS_WeightedRoundRobinWithUrgent : 1;
    ULONGLONG AMS_VendorSpecific : 1;
    ULONGLONG Reserved0 : 5;
    ULONGLONG TO : 8;
    ULONGLONG DSTRD : 4;
    ULONGLONG NSSRS : 1;
    ULONGLONG CSS_NVM : 1;
    ULONGLONG CSS_Reserved0 : 1;
    ULONGLONG CSS_Reserved1 : 1;
    ULONGLONG CSS_Reserved2 : 1;
    ULONGLONG CSS_Reserved3 : 1;
    ULONGLONG CSS_Reserved4 : 1;
    ULONGLONG CSS_MultipleIo : 1;
    ULONGLONG CSS_AdminOnly : 1;
    ULONGLONG Reserved2 : 3;
    ULONGLONG MPSMIN : 4;
    ULONGLONG MPSMAX : 4;
    ULONGLONG Reserved3 : 8;
  } DUMMYSTRUCTNAME;
  ULONGLONG AsUlonglong;
} NVME_CONTROLLER_CAPABILITIES, *PNVME_CONTROLLER_CAPABILITIES;

멤버

DUMMYSTRUCTNAME

DUMMYSTRUCTNAME.MQES

컨트롤러에서 지원하는 최대 개별 큐 크기를 나타냅니다.

이 값은 호스트 소프트웨어가 만드는 각 I/O 제출 큐 및 I/O 완료 큐에 적용됩니다.

0의 기반 값입니다. 최소값은 두 개의 큐 항목을 나타내는 입니다 1h.

DUMMYSTRUCTNAME.CQR

컨트롤러에서 I/O 제출 큐 및 I/O 완료 큐가 물리적으로 연속되어야 하는지 여부를 나타냅니다.

이 필드를 로 1설정하면 컨트롤러에서 I/O 제출 큐 및 I/O 완료 큐가 물리적으로 연속되어야 합니다. 이 필드가 로 0지워지면 컨트롤러는 물리적으로 연속되지 않은 I/O 제출 큐 및 I/O 완료 큐를 지원합니다.

이 필드를 로 1설정하면 I/O 제출 큐 만들기 및 I/O 완료 큐 만들기 명령의 실제 연속 비트(PC 필드)가 로 설정1됩니다.

DUMMYSTRUCTNAME.AMS_WeightedRoundRobinWithUrgent

긴급 우선 순위 클래스 중재 메커니즘이 있는 가중 라운드 로빈이 컨트롤러에서 지원되는지 여부를 나타냅니다.

이 필드를 로 1설정하면 긴급 우선 순위 클래스 중재 메커니즘이 있는 가중 라운드 로빈이 지원됩니다.

AMS_WeightedRoundRobinWithUrgentAMS_VendorSpecific 필드는 컨트롤러에서 지원하는 선택적 중재 메커니즘을 나타냅니다. 모든 컨트롤러가 이 중재 메커니즘을 지원해야 하므로 라운드 로빈 중재 메커니즘이 나열되지 않습니다.

DUMMYSTRUCTNAME.AMS_VendorSpecific

공급업체별 중재 메커니즘이 컨트롤러에서 지원되는지 여부를 나타냅니다.

이 필드를 로 1설정하면 공급업체별 중재 메커니즘이 지원됩니다.

DUMMYSTRUCTNAME.Reserved0

예약 필드(비트 19~23)입니다.

DUMMYSTRUCTNAME.TO

호스트 소프트웨어가 컨트롤러 상태준비(RDY) 값이 전환될 때까지 대기하는 최악의 경우를 나타냅니다.

  • 0 NVME_CONTROLLER_CONFIGURATION 1EN 값이 에서 로 전환된 후 로 01또는
  • 1 NVME_CONTROLLER_CONFIGURATION 0EN 값이 에서 로 전환된 후 로 10전환합니다.

이 최악의 경우 갑작스러운 종료 또는 새 펌웨어 이미지 활성화와 같은 이벤트 후에 발생할 수 있습니다. 일반적인 시간은 훨씬 짧을 것으로 예상됩니다.

이 필드의 값은 500밀리초 단위입니다.

DUMMYSTRUCTNAME.DSTRD

초인종 레지스터 간의 보폭 을 나타냅니다.

제출 큐완료 큐 초인종 레지스터의 크기는 32비트입니다. stride는 바이트 단위로 (2 ^ (2 + DSTRD)) 지정됩니다.

값은 0h 4바이트의 보폭을 나타내며, 초인종 레지스터는 각 레지스터 사이에 예약된 공간 없이 압축됩니다.

DUMMYSTRUCTNAME.NSSRS

컨트롤러가 NVME_NVM_SUBSYSTEM_RESET 구조에 정의된 NVM 하위 시스템 재설정 기능을 지원하는지 여부를 나타냅니다.

이 필드를 로 1설정하면 컨트롤러는 NVM 하위 시스템 다시 설정 기능을 지원합니다. 이 필드는 로 0지워집니다. 컨트롤러는 NVM 하위 시스템 재설정 기능을 지원하지 않습니다.

DUMMYSTRUCTNAME.CSS_NVM

이 필드는 NVM 명령 집합이 컨트롤러에서 지원되는지 여부를 나타냅니다. 하나 이상의 명령 집합이 지원되어야 합니다.

이 필드를 로 1설정하면 NVM 명령 집합이 지원됩니다.

CSS_Reserved6 필드를 통한 CSS_Reserved0 다른 I/O 명령 집합용으로 1예약됩니다. 이러한 필드 중 하나의 값이 로 설정된 경우 해당 I/O 명령 집합이 지원됩니다.

DUMMYSTRUCTNAME.CSS_Reserved0

DUMMYSTRUCTNAME.CSS_Reserved1

DUMMYSTRUCTNAME.CSS_Reserved2

DUMMYSTRUCTNAME.CSS_Reserved3

DUMMYSTRUCTNAME.CSS_Reserved4

DUMMYSTRUCTNAME.CSS_MultipleIo

DUMMYSTRUCTNAME.CSS_AdminOnly

DUMMYSTRUCTNAME.Reserved2

DUMMYSTRUCTNAME.MPSMIN

컨트롤러가 지원하는 최소 호스트 메모리 페이지 크기를 나타냅니다.

최소 메모리 페이지 크기는 입니다 (2 ^ (12 + MPSMIN)).

호스트는 이 값보다 작은 NVME_CONTROLLER_CONFIGURATIONMPS 필드에 메모리 페이지 크기를 구성하지 않습니다.

DUMMYSTRUCTNAME.MPSMAX

컨트롤러에서 지원하는 최대 호스트 메모리 페이지 크기를 나타냅니다.

최대 메모리 페이지 크기는 입니다 (2 ^ (12 + MPSMAX)).

호스트는 이 값보다 큰 NVME_CONTROLLER_CONFIGURATIONMPS 필드에 메모리 페이지 크기를 구성하지 않습니다.

DUMMYSTRUCTNAME.Reserved3

AsUlonglong

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 10
머리글 nvme.h

추가 정보