Разъем M.2 (NGFF) — что это? Разбираемся, что к чему!

Samsung 950Pro

Разъем M.2 (ранее известный как Next Generation Form Factor и NGFF) — это спецификация входящая в состав стандарта SATA 3.2 для компьютерных устройств и их разъемов, утвержденная международной организацией Serial ATA International Organization (SATA-IO) для планшетов и тонких компьютеров. Создана для замены уже устаревших форматов SATA, mSATA и Mini PCI-E. Ключевым новшеством M.2 (NGFF) стала поддержка передачи данных по линии PCI Express 3.0 с совокупной теоретической пропускной способностью до 32 Гбит/с. Что почти в 6 раз больше чем позволял стандарт SATA 3.0.

Интерфейс Максимальная теоретическая пропускная способность Максимальная реальная пропускная способность (оценка)
SATA III 6 Гбит/с (750 Мбайт/с) 600 Мбайт/с
PCIe 2.0 x2 8 Гбит/с (1 Гбайт/с) 800 Мбайт/с
PCIe 2.0 x4 16 Гбит/с (2 Гбайт/с) 1,6 Гбайт/с
PCIe 3.0 x4 32 Гбит/с (4 Гбайт/с) 3,2 Гбайт/с

Карты расширения M.2 могут предоставлять различные функции, например: Wi-Fi, Bluetooth, спутниковая навигация, NFC-радиосвязь, цифровое радио, Wireless Gigabit Alliance (WiGig), Wireless WAN(WWAN) и другие. В виде модулей M.2 часто изготавливают быстрые и компактные твердотельные флеш-накопители (SSD).

Применение нового формата устройств позволил использовать режим минимального энергопотребления DevSleep, механизм управления питанием Transitional Energy Reporting, механизм Hybrid Information (повышающий эффективность кэширования данных в гибридных накопителях) и Rebuild Assist (функция, которая ускоряет процесс восстановления данных в массивах RAID).

Форм-фактор и ключи.

Если проще, M.2 представляет собой мобильную разновидность протокола SATA Express, описанного в спецификации SATA 3.2 для планшетов и тонких компьютеров. Этот интерфейс может быть совместим с устройствами, работающими по протоколам SATA, PCI Express, USB 3.0, I2C и другими. M.2 поддерживает до четырёх линий PCI Express 3.0, в то время как разъёмы SATA Express передают данные лишь по двум линиям PCI Express 2.0. Платы имеют 4 варианта ширины (12, 16, 22 и 30 миллиметров) и 8 вариантов длины (16, 26, 30, 38, 42, 60, 80 и 110 миллиметров).

Помимо длины и ширины устройств подключаемых к M.2, описаны стандарты толщины компонентов на плате. Также, одностороннее и двухстороннее исполнение монтажа (Single Sided и Double Sided), разделенное на еще 8 типов. Для более удобного понимания, ниже приведу таблицу:

Толщина компонентов на плате устройства подключаемого к M.2 (размеры указаны в миллиметрах).

Тип Сверху Снизу
S1 1.20 Не допускаются
S2 1.35 Не допускаются
S3 1.50 Не допускаются
D1 1.20 1.35
D2 1.35 1.35
D3 1.50 1.35
D4 1.50 0.70
D5 1.50 1.50

Для указания типа M.2 — устройства маркируются кодом по схеме WWLL-HH-K-K или WWLL-HH-K, где WW и LL — размеры модуля в ширину и длину в миллиметрах. В HH кодируется, является ли модуль односторонним или двухсторонним, а также максимальная допустимая высота (толщина) размещённых на нём компонентов, например «D2». Часть K-K обозначает ключевые разрезы если модуль использует лишь один ключ, используется одна буква K. Если используется K-K, то модуль имеет 2 ключа.

Диаграмма с подробной расшифровкой всех значений маркировки с указанием величин.

Номенклатура модуля M.2

По состоянию на 2018 год, наиболее популярными размерами определены: ширина 22 мм, длина 80 или 60 мм (M.2-2280 и M.2-2260), реже 42 мм. Многие ранние M.2 накопители и материнские платы использовали интерфейс SATA, для них наиболее популярны ключи B (SATA и PCIe x2). Современные же материнские платы реализуют в разъеме M.2 PCI Express 3.0 x4 и соответствующий ключ M (SATA и PCIe x4). Устройства разработанные под использование в разъемах с ключом M, электрически не совместимы с разъемом B, и наоборот, без явного на то указания. Хотя не редко, как показывает практика физически совместимы (если перевернуть). Для подключения карт расширения, например WiFi, используются модули размера 1630 и 2230 и ключи A или E.

M.2 — плата должна не только подходить по размеру, но и иметь совместимое со слотом расположение ключей. Ключи ограничивают механическую совместимость между различными разъёмами и платами форм-фактора M.2 и препятствует неправильной установке накопителей в слоте.

Собственно перед покупкой платы расширения необходимо уточнить у производителя тип разъема и совместимые размеры (по длине, ширине, толщине, одностороннее и двухстороннее исполнение).

В крайнем случае посчитать контакты разъема и сравнить с рисунком ниже.

контакты m.2

Что такое Socket 1, Socket 2, Socket 3 в применении к M.2 (NGFF) устройствам?

Действительно, встречается понятие сокет и для M.2 устройств. Думаю создание групп разъемов M.2 на Socket 1,2,3 для упрощенного разделения не совместимых между собой устройств. Формально разделяя все виды устройств на 3 простых для понимания типа.

Принцип деления наглядно показан в следующей таблице:

Socket 1

Обычно, модули связи (WIFi адаптеры, Bluetooth, NFC и прочее)

Socket 2

Для компактных 3G/4G модемов M.2, но возможно появление другого оборудования

Socket 2

Для M.2 SSD и другого оборудования с универсальным ключом B+M

Socket 3

Для M.2 SSD и другого оборудования с ключом М и универсальным ключом B+M

Разберем пример на основе реальных интернет-магазинов:

SSD диск SAMSUNG M.2 860 EVO 250 Гб M.2 2280 SATA III (MZ-N6E250BW)

860 Evo

Из описания видно — перед нами SSD Samsung с емкостью 250Gb, разработанный для использования в разъеме M.2. Далее идет маркировка 2280 указывающая физический размер — 22 мм в ширину, 80 мм в длину. Про толщину и одностороннее или двухстороннее исполнение — ни слова. В данном случае придется уточнять из других источников, либо производителя накопителя. После указания маркировки размера написано — SATA III. Что это означает? Это означает что накопитель использует логический интерфейс SATA III. То есть, перед нами все тот же классический накопитель SATA, но выполненный под размеры и разъем M.2. Скоростные преимущества PCI Express здесь не использованы.

Все, описание продавца на этом исчерпаны. Чего нам еще не хватает? Нам не хватает явного указания типа ключа разъема, это пускай останется на совести продавца. Но мы визуально видим 2 прорези, это означает возможность использования данного накопителя в составе материнских плат с разъемом типа B и типа M. Это визуальная оценка, опять повторюсь — необходимо уточнить у производителя.

SSD диск Samsung 960 EVO M.2 250 Гб M.2 PCI-E TLC MZ-V6E250BW

960 evo

Здесь мы видим SSD Samsung 960 EVO тоже на разъем M.2. Вообще без указания маркировки физических размеров и типа, предположительно тоже 2280 (всегда необходимо уточнять из других источников). Далее указаны PCI-E и TLC, что это означает? Это означает что устройство использует логический интерфейс PCI Express (какой 2.0 или 3.0 не ясно, и сколько линий 2x-4x — тоже не известно). TLC — тип устройства микросхем памяти. На этом интернет-магазин счел описание достаточным. Думаю гарантийка ему потом скажет об обратном…

Но визуально мы видим на этом изображении одну прорезь в разъеме M.2 (предположительно соответствующая ключу M). И тут необходимо быть осторожным, устройство может подойти физически в разъем B. И вернее всего, сожжет плату и устройство. Поэтому необходимо точно знать какого типа установлен разъем на плате и какого приобретается.

Реализации логического интерфейса и набора команд.

Для плат расширения M.2 доступно три варианта реализации логического интерфейса и набора команд, по аналогии со стандартом SATA Express:

Legacy SATA
Используется для SSD с SATA интерфейсом, драйвером AHCI и скоростями до 6.0 Гбит/с

SATA Express с использованием AHCI
Используется для SSD с интерфейсом PCI Express и драйвером AHCI (для совместимости с большим количеством операционных систем). Из-за использования AHCI производительность может быть несколько ниже оптимальной (получаемой с NVMe), так как AHCI был разработан для взаимодействия с более медленными накопителями с медленным последовательным доступом (например, НЖМД), а не для SSD с быстрым случайным доступом.

SATA Express с использованием NVMe
Используется для SSD с интерфейсом PCI Express и высокопроизводительным драйвером NVMe, созданным для работы с быстрыми флеш-накопителями. NVMe был разработан с учётом низких задержек и параллелизма SSD с интерфейсом PCI Express. NVMe лучше использует параллелизм в управляющем компьютере и программном обеспечении, требует меньше стадий при передаче данных, предоставляет более глубокую очередь команд и более эффективную обработку прерываний.

Что такое NVMe?

NVM Express (NVMe, NVMHCI — от англ. Non-Volatile Memory Host Controller Interface Specification). Логический интерфейс NVM Express был разработан с нуля, основные цели — получение низких задержек и эффективное использование высокого параллелизма твердотельных накопителей за счёт применения нового набора команд и механизма обработки очередей, оптимизированного для работы с современными многоядерными процессорами.

Протокол NVMe ускоряет операции I/O за счёт отказа от стека команд SAS (SCSI). NVMe SSD подключаются прямо в шину PCIe. Приложения получают резкий прирост производительности от смещения I/O-активности с SAS/SATA SSD и HDD на NVMe SSD. Запоминающие устройства нового типа хранения энергонезависимы (non-volatile) и задержка при доступе к ним существенно ниже – на уровне задержек оперативной (volatile) памяти.

Контроллер NVMe демонстрирует все преимущества SSD: очень низкие задержки доступа и огромная глубина очереди по операциям чтения и записи. Чрезвычайно низкая латентность устройств хранения существенно снижает вероятность блокировок таблиц данных при их обновлениях. Это критично для многопользовательских баз данных со сложными и взаимосвязанными таблицами.

Очень важно: в UEFI BIOS материнской платы должен содержаться NVMe-драйвер для загрузки ОС с соответствующего накопителя.

NGFF и NVME отличия?

Очень много в сети запросов на этот вопрос. Что такое NGFF и в чем отличие от NVME. Ответ прост, NGFF это второе название аппаратного интерфейса M2, непосредственно самого разъема на системной плате. NGFF = M2, это одно и тоже .

Тогда что такое NVME? А NVME это — NVM Express (NVMe, NVMHCI — от англ. Non-Volatile Memory Host Controller Interface Specification). Это . Логический. интерфейс NVM Express был разработан с нуля, основные цели — получение низких задержек и эффективное использование высокого параллелизма твердотельных накопителей за счёт применения нового набора команд и механизма обработки очередей, оптимизированного для работы с современными многоядерными процессорами.

Протокол NVMe ускоряет операции I/O за счёт отказа от стека команд SAS (SCSI). NVMe SSD подключаются прямо в шину PCIe. Приложения получают резкий прирост производительности от смещения I/O-активности с SAS/SATA SSD и HDD на NVMe SSD.

Что это означает? Это означает что NGFF (M2) это физический разъем на плате, а NVME это . Логический. режим работы накопителя напрямую с шиной PCI Express и процессором минуя ограничения SATA/ATA/SAS. Разумеется такой режим работы должны поддерживать и накопитель, и системная плата (это надо проверить перед покупкой). Иначе, такой накопитель работать не будет. Если накопитель имеет разъем NGFF (M2) но не поддерживает режим NVME, то скорее всего он работает в режиме SATA\ATA\SAS\USB устройства.

Наиболее часто встречаются накопители:
-NGFF(M2) с NVME — это наиболее быстрые и современные устройства;
-NGFF(M2) с SATA — это накопители которые работают как SATA устройства.

Заключение.

В заключении становятся очевидными преимущества принятые стандартом SATA 3.2. Появление новых спецификаций и разъемов расширит выбор совместимых карт расширения, как для ноутбуков, так и для стационарных компьютеров. Также увеличит общую производительность вычислительных систем от ноутбука — до сервера.

Сам по себе интерфейс таит в себе большое количество ловушек как для простого пользователя, так и для профессионала. Возможно это связано с его новизной, а может и некоторой сыростью.

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

Распиновка типовых разъемов M.2.

M.2 с ключом B (1x SATA, 2x PCIe)

Pin
Number
Pin
Name
Description
1 CONFIG_3 Defines module type
2 3.3 V Supply pin, 3.3 V
3 GND Ground
4 3.3 V Supply pin, 3.3 V
5 N/C
6-8 N/A
9 N/C
10 DAS/DSS Device Activity Signal / Disable Staggered Spinup
11 N/C
12-19 removed Mechanical notch B
20 N/A
21 CONFIG_0 Defines module type
22-26 N/A
27 GND Ground
28 N/A
29 PERn1 PCIe Lane 1 Rx
30 N/A
31 PERp1 PCIe Lane 1 Rx
32 N/A
33 GND Ground
34 N/A
35 PETn1 PCIe Lane 1 Tx
36 N/A
37 PETp1 PCIe Lane 1 Tx
38 DEVSLP Device Sleep, input. If driven high the host is informing the
SSD to enter a low power state.
39 GND Ground
40 N/A
41 SATA-B+/PERn0 Host receiver differential signal pair. If in PCIe mode PCIe Lane 0 Rx
42 N/A
43 SATA-B-/PERp0 Host receiver differential signal pair. If in PCIe mode PCIe Lane 0 Rx
44 N/A
45 GND Ground
46 N/A
47 SATA-A-/PETn0 Host transmitter differential signal pair. If in PCIe mode PCIe Lane 0 Tx
48 N/A
49 SATA-A+/PETp0 Host transmitter differential signal pair. If in PCIe mode PCIe Lane 0 Tx
50 PERST# PCIe reset
51 GND Ground
52 CLKREQ# Reference clock request signal
53 REFCLKN PCIe Reference Clock signals (100 MHz)
54 PEWAKE# PCIe WAKE# Open Drain with pull up on platform. Active Low.
55 REFCLKP PCIe Reference Clock signals (100 MHz)
56 MFG1 Manufacturing pin. Use determined by vendor.
57 GND Ground
58 MFG2 Manufacturing pin. Use determined by vendor.
59-66 removed Mechanical notch M
67 N/A
68 SUSCLK 32.768 kHz clock supply input provided by the Platform chipset
69 CONFIG_1 Defines module type
70 3.3 V Supply pin, 3.3 V
71 GND Ground
72 3.3 V Supply pin, 3.3 V
73 GND Ground
74 3.3 V Supply pin, 3.3 V
75 CONFIG_2 Defines module type

M.2 с ключом M (1x SATA, 1x, 2x, or 4x PCIe)

Pin
Number
Pin
Name
Description
1 CONFIG_3 Defines module type
2 3.3 V Supply pin, 3.3 V
3 GND Ground
4 3.3 V Supply pin, 3.3 V
5 PERn3 PCIe Lane 3 Rx
6 N/A
7 PERp3 PCIe Lane 3 Rx
8 N/A
9 GND Ground
10 DAS/DSS Device Activity Signal / Disable Staggered Spinup
11 PETn3 PCIe Lane 3 Tx
12 3.3 V Supply pin, 3.3 V
13 PETp3 PCIe Lane 3 Tx
14 3.3 V Supply pin, 3.3 V
15 GND Ground
16 3.3V Supply pin, 3.3 V
17 PERn2 PCIe Lane 2 Rx
18 3.3 V Supply pin, 3.3 V
19 PERp2 PCIe Lane 2 Rx
20 N/A
21 CONFIG_0 Defines module type
22 N/A
23 PETn2 PCIe Lane 2 Tx
24 N/A
25 PETp2 PCIe Lane 2 Tx
26 N/A
27 GND Ground
28 N/A
29 PERn1 PCIe Lane 1 Rx
30 N/A
31 PERp1 PCIe Lane 1 Rx
32 N/A
33 GND Ground
34 N/A
35 PETn1 PCIe Lane 1 Tx
36 N/A
37 PETp1 PCIe Lane 1 Tx
38 DEVSLP Device Sleep, input. If driven high the host is informing the
SSD to enter a low power state.
39 GND Ground
40 N/A
41 SATA-B+/PERn0 Host receiver differential signal pair. If in PCIe mode PCIe Lane 0 Rx
42 N/A
43 SATA-B-/PERp0 Host receiver differential signal pair. If in PCIe mode PCIe Lane 0 Rx
44 N/A
45 GND Ground
46 N/A
47 SATA-A-/PETn0 Host transmitter differential signal pair. If in PCIe mode PCIe Lane 0 Tx
48 N/A
49 SATA-A+/PETp0 Host transmitter differential signal pair. If in PCIe mode PCIe Lane 0 Tx
50 PERST# PCIe reset
51 GND Ground
52 CLKREQ# Reference clock request signal
53 REFCLKN PCIe Reference Clock signals (100 MHz)
54 PEWAKE# PCIe WAKE# Open Drain with pull up on platform. Active Low.
55 REFCLKP PCIe Reference Clock signals (100 MHz)
56 MFG1 Manufacturing pin. Use determined by vendor.
57 GND Ground
58 MFG2 Manufacturing pin. Use determined by vendor.
59-66 removed Mechanical notch M
67 N/A
68 SUSCLK 32.768 kHz clock supply input provided by the Platform chipset
69 CONFIG_1 Defines module type
70 3.3 V Supply pin, 3.3 V
71 GND Ground
72 3.3 V Supply pin, 3.3 V
73 GND Ground
74 3.3 V Supply pin, 3.3 V
75 CONFIG_2 Defines module type

M.2 с ключом A (PCIe ×2, USB 2.0, I2C and DP ×4) и E (PCIe ×2, USB 2.0, I2C, SDIO, UART and PCM).


Источник: novoselovvlad.ru