Что такое контроллер NVMe?

Что такое контроллер NVMe?

Этот вопрос может показаться тривиальным, но это не так. Взгляните наэтотизображение. Вы можете увидеть диспетчер устройств Windows, в котором перечислены контроллеры NVMe. Я ожидал увидеть диски NVMe, но не контроллеры.

Для меня это не имеет смысла, потому что NVMe — это только программный протокол. Диски NVMe используют PCIe. Насколько мне известно, они подключены к PCIe напрямую. Между ними нет контроллера хранения.

Например, при использовании SATA на материнской плате есть контроллер SATA AHCI, подключенный к PCIe, который преобразует PCIe в физический SATA. К этому контроллеру может быть подключено несколько дисков.

Но как уже было сказано, NVMe отличается от SATA, поскольку это всего лишь программный протокол. Физического NVMe нет.

Значит, контроллер NVMe должен быть виртуальным и находиться на диске.

Но зачем вообще нужен контроллер, если он находится на диске и к нему всегда может быть подключен только один диск? Почему диспетчер устройств показывает два устройства, хотя это логическое и физическое одно?

Может ли кто-нибудь объяснить, что такое контроллер NVMe и для чего он нужен?

решение1

Из Википедии НВМ Экспресс:

NVM Express (NVMe) илиИнтерфейс контроллера хоста энергонезависимой памятиСпецификация (NVMHCIS) — это открытая спецификация интерфейса логического устройства для доступа к энергонезависимым носителям данных компьютера, обычно подключаемым через шину PCI Express (PCIe). Аббревиатура NVM означает энергонезависимую память, которая часто является флэш-памятью NAND, которая поставляется в нескольких физических форм-факторах, включая твердотельные накопители (SSD), карты расширения PCIe и карты M.2, преемники карт mSATA. NVM Express, как интерфейс логического устройства, был разработан для использования низкой задержки и внутреннего параллелизма твердотельных устройств хранения данных.

Архитектурно,логика для NVMe физически хранится внутри чипа контроллера NVMe и выполняется имкоторый физически совмещен с носителем данных, обычно SSD. Изменения версии для NVMe, например, с 1.3 на 1.4, встроены в носитель данных и не влияют на компоненты, совместимые с PCIe, такие как материнские платы и процессоры.

Компьютер видит контроллер, который находится на диске, а контроллер затем показывает диск компьютеру. Сам диск не имеет протокола и может общаться только через свой чип контроллера NVMe.

Связанный контент