SSD с интерфейсом PCI Express: обзор и тестирование пяти моделей. NVMe-накопители в разных режимах работы интерфейса PCI Express: практическое исследование масштабируемости интерфейса в задачах передачи данных Что такое односторонние и двухсторонние SSD M

Если спросить, какой интерфейс следует использовать для твердотельного накопителя с поддержкой протокола NVMe, то любой человек (вообще знающий, что такое NVMe) ответит: конечно PCIe 3.0 x4! Правда, с обоснованием у него, скорее всего, возникнут сложности. В лучшем случае получим ответ, что такие накопители поддерживают PCIe 3.0 x4, а пропускная способность интерфейса имеет значение. Иметь-то имеет, однако все разговоры об этом начались только тогда, когда некоторым накопителям на некоторых операциях стало тесно в рамках «обычного» SATA. Но ведь между его 600 МБ/с и (столь же теоретическими) 4 ГБ/с интерфейса PCIe 3.0 x4 - просто пропасть, причем заполненная массой вариантов! А вдруг и одной линии PCIe 3.0 хватит, поскольку это уже в полтора раза больше SATA600? Масла в огонь подливают производители контроллеров, грозящиеся в бюджетной продукции перейти на PCIe 3.0 x2, а также тот факт, что у многих пользователей и такого-то нет. Точнее, теоретически есть, но высвободить их можно, лишь переконфигурировав систему или даже что-то в ней поменяв, чего делать не хочется. А вот купить топовый твердотельный накопитель - хочется, но есть опасения, что пользы от этого не будет совсем никакой (даже морального удовлетворения от результатов тестовых утилит).

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

PCI Express: существующие стандарты и их пропускная способность

Начнем с того, что́ представляет собой PCIe и с какой скоростью этот интерфейс работает. Часто его называют «шиной», что несколько неверно идеологически: как таковой шины, с которой соединены все устройства, нет. На деле имеется набор соединений «точка-точка» (похожий на многие другие последовательные интерфейсы) с контроллером в середине и присоединенными к нему устройствами (каждое из которых само по себе может быть и концентратором следующего уровня).

Первая версия PCI Express появилась почти 15 лет назад. Ориентация на использование внутри компьютера (нередко - и в пределах одной платы) позволила сделать стандарт скоростным: 2,5 гигатранзакции в секунду. Поскольку интерфейс последовательный и дуплексный, одна линия PCIe (x1; фактически атомарная единица) обеспечивает передачу данных на скоростях до 5 Гбит/с. Однако в каждом направлении - лишь половина от этого, т. е. 2,5 Гбит/с, причем это полная скорость интерфейса, а не «полезная»: для повышения надежности каждый байт кодируется 10 битами, так что теоретическая пропускная способность одной линии PCIe 1.x составляет примерно 250 МБ/с в каждую сторону. На практике нужно еще передавать служебную информацию, и в итоге правильнее говорить о ≈200 МБ/с передачи пользовательских данных. Что, впрочем, на тот момент времени не только покрывало потребности большинства устройств, но и обеспечивало солидный запас: достаточно вспомнить, что предшественница PCIe в сегменте массовых системных интерфейсов, а именно шина PCI, обеспечивала пропускную способность в 133 МБ/с. И даже если рассматривать не только массовую реализацию, но и все варианты PCI, то максимумом были 533 МБ/с, причем на всю шину, т. е. такая ПС делилась на все подключенные к ней устройства. Здесь же 250 МБ/с (поскольку и для PCI приводится обычно полная, а не полезная пропускная способность) на одну линию - в монопольном использовании. А для устройств, которым нужно больше, изначально была предусмотрена возможность агрегирования нескольких линий в единый интерфейс, по степеням двойки - от 2 до 32, т. е. предусмотренный стандартом вариант х32 в каждую сторону мог передавать уже до 8 ГБ/с. В персональных компьютерах х32 не использовался из-за сложности создания и разведения соответствующих контроллеров и устройств, так что максимумом стал вариант с 16 линиями. Использовался он (да и сейчас используется) в основном видеокартами, поскольку большинству устройств столько не требуется. Вообще, немалому их количеству и одной линии вполне достаточно, но некоторые применяют с успехом и х4, и х8: как раз по накопительной теме - RAID-контроллеры или SSD.

Время на месте не стояло, и около 10 лет назад появилась вторая версия PCIe. Улучшения касались не только скоростей, но и в этом отношении был сделан шаг вперед - интерфейс начал обеспечивать 5 гигатранзакций в секунду с сохранением той же схемы кодирования, т. е. пропускная способность удвоилась. И еще раз она удвоилась в 2010 году: PCIe 3.0 обеспечивает 8 (а не 10) гигатранзакций в секунду, но избыточность уменьшилась - теперь для кодирования 128 бит используется 130, а не 160, как ранее. В принципе, и версия PCIe 4.0 с очередным удвоением скоростей уже готова появиться на бумаге, но в ближайшее время в железе мы ее массово вряд ли увидим. На самом деле и PCIe 3.0 до сих пор в массе платформ используется совместно с PCIe 2.0, потому что и производительность последней для многих сфер применения просто... не нужна. А где нужна - работает старый добрый метод агрегации линий. Только каждая из них стала за прошедшие годы вчетверо быстрее, т. е. PCIe 3.0 х4 - это PCIe 1.0 x16, самый быстрый слот в компьютерах середины нулевых. Именно этот вариант поддерживают топовые контроллеры SSD, и именно его рекомендуется использовать. Понятно, что если такая возможность есть - много не мало. А если ее нет? Будут ли возникать какие-то проблемы, и если да, то какие? Вот с этим-то вопросом нам и предстоит разобраться.

Методика тестирования

Провести тесты с разными версиями стандарта PCIe несложно: практически все контроллеры позволяют использовать не только поддерживаемый ими, но и все более ранние. Вот с количеством линий - сложнее: нам хотелось непосредственно протестировать и варианты с одной-двумя линиями PCIe. Используемая нами обычно плата Asus H97-Pro Gamer на чипсете Intel H97 полного набора не поддерживает, но кроме «процессорного» слота х16 (который обычно и используется) на ней есть еще один, работающий в режимах PCIe 2.0 х2 или х4. Вот этой тройкой мы и воспользовались, добавив к ней еще и режим PCIe 2.0 «процессорного» слота, дабы оценить, есть ли разница. Все-таки в этом случае между процессором и SSD посторонних «посредников» нет, а вот при работе с «чипсетным» слотом - есть: собственно чипсет, фактически соединяющийся с процессором тем же PCIe 2.0 x4. Можно было добавить еще несколько режимов работы, но основную часть исследования мы все равно собирались провести на другой системе.

Дело в том, что мы решили воспользоваться случаем и заодно проверить одну «городскую легенду», а именно поверие о полезности использования топовых процессоров для тестирования накопителей. Вот и взяли восьмиядерный Core i7-5960X - родственника обычно применяемого в тестах Core i3-4170 (это Haswell и Haswell-E), но у которого ядер в четыре раза больше. Кроме того, обнаруженная в закромах плата Asus Sabertooth X99 нам сегодня полезна наличием слота PCIe x4, на деле способного работать как х1 или х2. В этой системе мы протестировали три варианта х4 (PCIe 1.0/2.0/3.0) от процессора и чипсетные PCIe 1.0 х1, PCIe 1.0 х2, PCIe 2.0 х1 и PCIe 2.0 х2 (во всех случаях чипсетные конфигурации отмечены на диаграммах значком (c) ). Есть ли смысл сейчас обращаться к первой версии PCIe, с учетом того, что вряд ли найдется хоть одна плата с поддержкой только этой версии стандарта, способная загрузиться с NVMe-устройства? С практической точки зрения - нет, а вот для проверки априори предполагаемого соотношения PCIe 1.1 х4 = PCIe 2.0 х2 и подобных оно нам пригодится. Если проверка покажет, что масштабируемость шины соответствует теории, значит, и неважно, что нам не удалось пока получить практически значимые способы подключения PCIe 3.0 x1/х2: первый будет идентичен как раз PCIe 1.1 х4 или PCIe 2.0 х2, а второй - PCIe 2.0 х4. А они у нас есть.

В плане ПО мы ограничились только Anvil’s Storage Utilities 1.1.0: разнообразные низкоуровневые характеристики накопителей она измеряет неплохо, а ничего другого нам и не нужно. Даже наоборот: любое влияние других компонентов системы является крайне нежелательным, так что низкоуровневая синтетика для наших целей безальтернативна.

В качестве «рабочего тела» мы использовали Patriot Hellfire емкостью 240 ГБ . Как было установлено при его тестировании, это не рекордсмен по производительности, но его скоростные характеристики вполне соответствуют результатам лучших SSD того же класса и той же емкости. Да и более медленные устройства на рынке уже есть, причем их будет становиться все больше. В принципе, можно будет повторить тесты и с чем-нибудь более быстрым, однако, как нам кажется, необходимости в этом нет - результаты предсказуемы. Но не станем забегать вперед, а посмотрим, что же у нас получилось.

Результаты тестов

Тестируя Hellfire, мы обратили внимание на то, что максимальную скорость на последовательных операциях из него можно «выжать» лишь многопоточной нагрузкой, так что это тоже надо принимать во внимание на будущее: теоретическая пропускная способность на то и теоретическая, что «реальные» данные, полученные в разных программах по разным сценариям, будут больше зависеть не от нее, а от этих самых программ и сценариев - в том случае, конечно, когда не помешают обстоятельства непреодолимой силы:) Как раз такие обстоятельства мы сейчас и наблюдаем: выше уже было сказано, что PCIe 1.x x1 - это ≈200 МБ/с, и именно это мы и видим. Две линии PCIe 1.x или одна PCIe 2.0 - вдвое быстрее, и именно это мы и видим. Четыре линии PCIe 1.x, две PCIe 2.0 или одна PCIe 3.0 - еще вдвое быстрее, что подтвердилось для первых двух вариантов, так что и третий вряд ли будет отличаться. То есть в принципе масштабируемость, как и предполагалось, идеальная: операции линейные, флэш с ними справляется хорошо, так что интерфейс имеет значение. Флэш перестает справляться хорошо на PCIe 2.0 x4 для записи (значит, подойдет и PCIe 3.0 x2). Чтение «может» больше, но последний шаг дает уже полутора-, а не двукратный (каким он потенциально должен быть) прирост. Также отметим, что заметной разницы между чипсетным и процессорным контроллером нет, да и между платформами тоже. Впрочем, LGA2011-3 немного впереди, но на самую малость.

Все ровно и красиво. Но шаблоны не рвет : максимум в этих тестах составляет лишь немногим больше 500 МБ/с, а это вполне по силам даже SATA600 или (в приложении к сегодняшнему тестированию) PCIe 1.0 х4 / PCIe 2.0 х2 / PCIe 3.0 х1 . Именно так: не стоит пугаться выпуску бюджетных контроллеров под PCIe х2 или наличию лишь такого количества линий (причем версии стандарта 2.0) в слотах М.2 на некоторых платах, когда больше-то и не нужно. Иногда и столько не нужно: максимальные результаты достигнуты при очереди в 16 команд, что для массового ПО не типично. Чаще встречается очередь с 1-4 командами, а для этого обойтись можно и одной линией самого первого PCIe и даже самым первым SATA. Впрочем, накладные расходы и прочее имеют место быть, так что быстрый интерфейс полезен. Однако излишне быстрый - разве что не вреден.

А еще в этом тесте по-разному ведут себя платформы, причем с единичной очередью команд - принципиально по-разному. «Беда» вовсе не в том, что много ядер - плохо. Они тут все равно не используются, разве что одно, и не настолько, чтоб вовсю развернулся буст-режим. Вот и имеем разницу где-то в 20% по частоте ядер и полтора раза по кэш-памяти - она в Haswell-E работает на более низкой частоте, а не синхронно с ядрами. В общем, топовая платформа может пригодиться разве что для вышибания максимума «йопсов» посредством максимально многопоточного режима с большой глубиной очереди команд. Жаль только, что с точки зрения практической работы это совсем уж сферическая синтетика в вакууме:)

На записи положение дел принципиально не изменилось - во всех смыслах. Но, что забавно, на обеих системах самым быстрым оказался режим PCIe 2.0 х4 в «процессорном» слоте. На обеих! И при многократных проверках/перепроверках. Тут уж поневоле задумаешься, нужны ли эти ваши новые стандарты или лучше вообще никуда не торопиться...

При работе с блоками разного размера теоретическая идиллия разбивается о то, что повышение скорости интерфейса все же имеет смысл. Результирующие цифры такие, что хватило бы пары линий PCIe 2.0, но реально в таком случае производительность ниже, чем у PCIe 3.0 х4, пусть и не в разы. И вообще тут бюджетная платформа топовую «забивает» в куда большей степени. А ведь как раз такого рода операции в основном в прикладном ПО и встречаются, т. е. эта диаграмма - наиболее приближенная к реальности. В итоге нет ничего удивительного, что никакого «вау-эффекта» толстые интерфейсы и модные протоколы не дают. Точнее, переходящему с механики - дадут, но ровно такой же, какой ему обеспечит любой твердотельный накопитель с любым интерфейсом.

Итого

Для облегчения восприятия картины по больнице в целом мы воспользовались выдаваемым программой баллом (суммарным - по чтению и записи), проведя его нормирование по «чипсетному» режиму PCIe 2.0 x4: на данный момент именно он является наиболее массово доступным, поскольку встречается даже на LGA1155 или платформах AMD без необходимости «обижать» видеокарту. Кроме того, он эквивалентен PCIe 3.0 x2, который готовятся освоить бюджетные контроллеры. Да и на новой платформе AMD АМ4, опять же, именно этот режим как раз можно получить без влияния на дискретную видеокарту.

Итак, что мы видим? Применение PCIe 3.0 x4 при наличии возможности является, безусловно, предпочтительным, но не необходимым: NVMe-накопителям среднего класса (в своем изначально топовом сегменте) он приносит буквально 10% дополнительной производительности. Да и то - за счет операций в общем-то не столь уж часто встречающихся на практике. Для чего же в данном случае реализован именно этот вариант? Во-первых, была такая возможность, а запас карман не тянет. Во-вторых, есть накопители и побыстрее, чем наш тестовый Patriot Hellfire. В-третьих, есть такие области деятельности, где «атипичные» для настольной системы нагрузки - как раз вполне типичные. Причем именно там наиболее критично быстродействие системы хранения данных или, по крайней мере, возможность сделать ее часть очень быстрой. Но к обычным персональным компьютерам это все не относится.

В них, как видим, и использование PCIe 2.0 x2 (или, соответственно, PCIe 3.0 х1) не приводит к драматическому снижению производительности - лишь на 15-20%. И это несмотря на то, что потенциальные возможности контроллера в этом случае мы ограничили в четыре раза! Для многих операций и такой пропускной способности достаточно. Вот одной линии PCIe 2.0 уже недостаточно, поэтому контроллерам имеет смысл поддерживать именно PCIe 3.0 - и в условиях жесткой нехватки линий в современной системе это будет работать неплохо. Кроме того, полезна ширина х4 - даже при отсутствии поддержки современных версий PCIe в системе она все равно позволит работать с нормальной скоростью (пусть и медленнее, чем могло бы потенциально), если найдется более-менее широкий слот.

В принципе, большое количество сценариев, в которых узким местом оказывается собственно флэш-память (да, это возможно и присуще не только механике), приводит к тому, что четыре линии третьей версии PCIe на этом накопителе обгоняют одну первой примерно в 3,5 раза - теоретическая же пропускная способность этих двух случаев различается в 16 раз. Из чего, разумеется, не следует, что нужно спешно бежать осваивать совсем медленные интерфейсы - их время ушло безвозвратно. Просто многие возможности быстрых интерфейсов могут быть реализованы лишь в будущем. Или в условиях, с которыми обычный пользователь обычного компьютера никогда в жизни непосредственно не столкнется (за исключением любителей меряться известно чем). Собственно, и всё.

Стандарт PCI Express является одной из основ современных компьютеров. Слоты PCI Express уже давно занимают прочное место на любой материнской плате декстопного компьютера, вытесняя другие стандарты, например, такие как PCI. Но даже стандарт PCI Express имеет свои разновидности и отличающийся друг от друга характер подключения. На новых материнских платах, начиная примерно с 2010 года, можно увидеть на одной материнской плате целую россыпь портов, обозначенных как PCIE или PCI-E , которые могут отличаться по количеству линий: одной x1 или нескольких x2, x4, x8, x12, x16 и x32.

Итак, давайте выясним почему такая путаница среди казалось бы простого периферийного порта PCI Express. И какое предназначение у каждого стандарта PCI Express x2, x4, x8, x12, x16 и x32?

Что такое шина PCI Express?

В далеких 2000-х, когда состоялся переход с устаревающего стандарта PCI (расш. - взаимосвязь периферийных компонентов) на PCI Express, у последнего было одно огромное преимущество: вместо последовательной шины, которой и была PCI, использовалась двухточечная шина доступа. Это означало, что каждый отдельный порт PCI и установленные в него карты, могли в полной мере использовать максимальную пропускную способность не мешая друг другу, как это происходило при подключении к PCI. В те времена количество периферийных устройств, вставляемых в карты расширения, было предостаточно. Сетевые карты, аудио карты, ТВ-тюнеры и так далее - все требовали достаточное количество ресурсов ПК. Но в отличие от стандарта PCI, использовавшего для передачи данных общую шину с подключением параллельно нескольких устройств, PCI Express, если рассматривать в общем, является пакетной сетью с топологией типа звезда.


PCI Express x16, PCI Express x1 и PCI на одной плате

С точки зрения непрофессионала, представьте свой настольный ПК в качестве небольшого магазина с одним, двумя продавцами. Старый стандарт PCI был как гастроном: все ожидали в одной очереди, чтобы их обслужили, испытывая проблемы со скоростью обслуживания с ограничением в лице одного продавца за прилавком. PCI-E больше похож на гипермаркет: каждый покупатель движется за продуктами по своему индивидуальному маршруту, а на кассе сразу несколько кассиров принимают заказ.

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

Также и с выделенными полосами передачи данных для каждой карты расширения или встроенными компонентами материнской платы.

Влияние количества линий на пропускную способность

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

PCI-E прошел множество изменений со времени своего создания. В настоящее время новые материнские платы обычно используют уже 3 версию стандарта, причем более быстрая 4 версия становится все более распространенной, а версия 5 ожидается в 2019 году. Но разные версии используют одни и те же физические соединения, и эти соединения могут быть выполнены в четырех основных размерах: x1, x4, x8 и x16. (x32-порты существуют, но крайне редко встречаются на материнских платах обычных компьютерах).

Различные физические размеры портов PCI-Express позволяют четко разделить их по количеству одновременных соединений с материнской платой: чем больше порт физически, тем больше максимальных подключений он способен передать на карту или обратно. Эти соединения еще называют линиями . Одну линию можно представить как дорожку, состоящею из двух сигнальных пар: одна для отправки данных, а другая для приема.

Различные версии стандарта PCI-E позволяют использовать разные скорости на каждой полосе. Но, вообще говоря, чем больше полос находится на одном PCI-E-порту, тем быстрее данные могут перетекать между периферийной и остальной частью компьютера.

Возвращаясь к нашей метафоре: если речь идёт об одном продавце в магазине, то полоса x1 и будет этим единственным продавцом, обслуживающим одного клиента. У магазина с 4-мя кассирами - уже 4 линии х4 . И так далее можно расписать кассиров по количеству линий, умножая на 2.


Различные карты PCI Express

Типы устройств, использующих PCI Express x2, x4, x8, x12, x16 и x32

Для версии PCI Express 3.0 общая максимальная скорость передачи данных составляет 8 ГТ/с, В реальности же скорость для версии PCI-E 3 чуть меньше одного гигабайта в секунду на одну полосу.

Таким образом, устройство, использующее порт PCI-E x1, например, маломощная звуковая карта или Wi-Fi-антенна смогут передавать данные с максимальной скоростью в 1 Гбит/с.

Карта, которая физически подходит в более крупный слот - x4 или x8 , например, карта расширения USB 3.0, сможет передавать данные в четыре или восемь раз быстрее соответственно.

Скорость передачи портов PCI-E x16 теоретически ограничивается максимальной полосой пропуская в размере около 15 Гбит/с. Этого более чем достаточно в 2017 года для всех современных графических видеокарт, разработанных NVIDIA и AMD.


Большинство дискретных видеокарт используют слот PCI-E x16

Протокол PCI Express 4.0 позволяет использовать уже 16 ГТ/с, а PCI Express 5.0 будет задействовать 32 ГТ/с.

Но в настоящее время не существует компонентов, которые смогли бы использовать такое количество полос с максимальной пропускной способностью. Современные топовые графические карты обычно используют x16 стандарта PCI Express 3.0. Нет смысла использовать те же полосы и для сетевой карты, которая на порту x16 будет использовать только одну линию, так как порт Ethernet способен передавать данные только до одного гигабита в секунду (что, около одной восьмой пропускной способности одной PCI-E полосы - помните: восемь бит в одном байте).

На рынке можно найти твердотельные накопители PCI-E, которые поддерживают порт x4, но они, похоже, скоро будут вытеснены быстро развивающимся новым стандартом M.2. для твердотельных накопителей, которые также могут использовать шину PCI-E. Высококачественные сетевые карты и оборудование для энтузиастов, такие как RAID-контроллеры, используют сочетание форматов x4 и x8.

Размеры портов и линий PCI-E могут различаться

Это одна из наиболее запутанных задач по PCI-E: порт может быть выполнен размером в форм-факторе x16, но иметь недостаточное количество полос для пропуска данных, например, всего например x4. Это связано с тем, что даже если PCI-E может нести на себе неограниченное количество отдельных соединений, все же существует практический предел пропускной способности полосы пропускания чипсета. Более дешевые материнские платы с более бюджетными чипсетами могут иметь только один слот x8, даже если этот слот может физически разместить карту форм-фактора x16.

Кроме того, материнские платы, ориентированные на геймеров, включают до четырех полных слотов PCI-E с x16 и столько же линий для максимальной пропускной способности.

Очевидно, это может вызывать проблемы. Если материнская плата имеет два слота размером x16, но один из них имеет только полосы x4, то подключение новой графической карты снизит производительность первой аж на 75%. Это, конечно, только теоретический результат. Архитектура материнских плат такова, что Вы не увидите резкого снижения производительности.

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

Иногда производители даже помечают на текстолите материнской платы рядом со слотом количество линий

Нужно знать, что более короткая карта x1 или x4 может физически вписаться в более длинный слот x8 или x16. Конфигурация контактов электрических контактов делает это возможным. Естественно, если карта физически больше, чем слот, то вставить ее не получится.

Поэтому помните, при покупке карт расширения или обновления текущих необходимо всегда помнить как размер слота PCI Express, так и количество необходимых полос.

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

Перед тем как углубиться в разновидности винчестеров, технологии их изготовления, типы памяти и контроллеры, необходимо сделать акцент на форм-факторе (размере). Каждое из устройств отличается по размерам, имеет свои разъемы подключения и используется совершенно по-разному. Если SSD в 2.5 дюйма не вызывает никаких вопросов, так как по размерам и расположению разъемов он схож с обычными жесткими дисками, то иные разновидности вызывают массу вопросов.

Сегодня мы поговорим о таких устройствах, как SSD M.2 накопители, что это такое, в чем их особенности и преимущества. Это относительно новый стандарт, который, по мнению многих специалистов, является революционным решением. Давайте более разберемся в этой теме и узнаем максимум информации.

Развитие SATA интерфейса

Интерфейс SATA стал хорошей заменой PATA, сменив широкий шлейф более компактным, тонким и удобным вариантом. Основной тенденцией его развития являлось стремление к компактности, и это вполне нормально. Даже для нового интерфейса потребовалась разновидность, позволяющая использовать его в мобильных устройствах и там, где предъявляются особенные требования к размерам комплектующих.

Таким образом, был создан mSATA – тот же интерфейс, только с более компактными размерами. Но он прожил недолго и ему на смену быстро пришел абсолютно новый — разъем M.2, который обладал еще большими возможностями. Не по ошибке в аббревиатуре нет слова SATA, так как новый вариант не относится к данному стандарту. Более подробно об этом мы поговорим дальше.

Единственное, что необходимо сказать — SSD диск M.2 подключается без кабелей питания и шлейфов, благодаря этому его использование становится максимально комфортным и позволяет быть компьютеру еще компактнее. Это является одним из его ключевых преимуществ.

Обзор интерфейса M.2

M.2 – это разъем на плате расширения, устанавливаемой в слот PCI-Express, или на самой материнской плате. Устанавливать в него можно не только SSD формата M.2, но прочие модули, в том числе Bluetooth и Wi-Fi. Сфера применения данного разъема достаточно широкая, что делает его невероятно удобным и полезным.


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

Однако если у вас довольно старая системная плата, и вы не хотите ее менять, например «GA-P75-D3» с отсутствующим слотом M2, но при этом у нее имеется PCI-E 3.0, на который установлена видеокарта и разъем PCIe x4. В данном случае на PCIe x4 можно установить ССД через специальный переходник, но его скорость будет немного ниже.

Абсолютно все SSD накопители М.2 обладают утапливаемым креплением в разъемах М.2. Данный форм-фактор обеспечивает максимальную производительность при минимальном потреблении ресурсов и рассчитан на технологическое усовершенствование винчестеров в будущем.


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

M-key и B-key

Существующие сегодня жесткие диски, в том числе твердотельные накопители, подключаются к шине SATA. Максимальная пропускная способность которой составляет 6 Гб/с, то есть примерно 550-600Мб/с. Для обычного накопителя такая скорость попросту недостижима, но SSD диски без каких-либо проблем могут развивать скорость гораздо большую. Только их установка абсолютно бессмысленна, если интерфейс не может «прокачать» данные с более высокой скоростью, чем та, на которую он сам рассчитан.

Ввиду этого появилась возможность использовать шину PCI-Express с большей пропускной способностью:

  1. PCI-Express 2.0. Имеет две линии (PCI-E 2.0 x2), характеризуется пропускной способностью до 8Гб/с, или около 800Мб/с.
  2. PCI-Express 3.0. Имеет четыре линии (PCI-E 3.0 x4), с пропускной способностью 32Гб/с, или примерно 3.2Гб/с.

Какой интерфейс применяется для подключения того или иного устройства определяет положение перемычки.


В настоящее время накопители ССД М.2 имеют такие варианты ключей:

  1. B key «Socket2» (включает поддержку PCI-E ×2, SATA, Audio, USB и прочих модулей).
  2. M key «Socket3» (включает поддержку PCI-E ×4 и SATA).

Например, берем материнскую плату с разъемом М.2 с М-ключом. То есть, применяется шина PCIe ×4. Можно ли установить в нее твердотельный накопитель с интерфейсом SATA? Это интересный вопрос, на который мы попытаемся найти ответ.

Необходимо открыть информацию о материнской плате и узнать, поддерживает она M.2 SATA или нет. Допустим, производитель говорит, что да. В этом случае покупается ССД диск, который изначально создан для PCIe ×4, и абсолютно никаких проблем при подключении возникнуть не должно.


Выбирая системную плату, в обязательном порядке обращайте свое внимание на то, поддерживается ли в М.2 шина SATA, чтобы можно было использовать любой винчестер.

Давайте резюмируем все выше сказанное и подведем итоги:

  1. М.2 – это попросту другой форм-фактор (разъем и размер) твердотельных дисков. Все материнские платы, которые оснащены данным слотом, используют шину PCI-E x4.
  2. Тип применяемой шины накопителем зависит от ключей. Обычно применяется шина PCI-Express (ключ M) или SATA (ключ M+B). Возможность подключения ССД с SATA интерфейсом должна быть обозначена в характеристиках материнской платы.

Спецификация размеров: 2260, 2280 и другие

Зачастую просматривая спецификацию материнской платы компьютера или ноутбука можно встретить такую строчку «1 x M.2 Socket 3, with M Key, type 2260/2280» — значит, что используется 1 слот M.2 c ключом типа M и размером 2260/2280. Первые две цифры «22» — означают ширину в «мм», вторые две цифры «60» — это длина. Поэтому если выбрать, скажем, Transcend TS128GMTS600, с длинной «60мм» и шириной «22мм», то с его установкой проблем не возникнет.

Но даже если взять Kingston SHPM2280P2/480G с типом «2280» и так как в характеристиках системной платы заявлена поддержка данного вида накопителей, то установить его не составит труда.

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

Технология NVMe

Старое поколение обычных магнитных и SSD дисков используют протокол AHCI, который был создан сравнительно давно и до сих пор поддерживается многими операционными системами. Но с появлением более современных и быстрых ССД, он не справляется со своей задачей и не может использовать все их возможности на максимум.

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


Чтобы носитель работал по данной технологии, он должен ее поддерживать, поэтому при выборе, обратите на это отдельно внимание, ровно также как и материнская плата (она должна быть с поддержкой стандарта UEFI).

Подведем итоги

После того как мы провели обзор SSD со стандартом M.2 можно сказать, что это самый компактный форм-фактор твердотельных устройств. И в случае его поддержки материнской платой, рекомендуется использовать именно его.


Давайте рассмотрим несколько , которые помогут вам сделать правильный выбор. Итак, в первую очередь при покупке следует обращать внимание на следующие моменты:

  1. Имеет ли системная плата необходимый слот M.2, и какой размер модулей она позволяет использовать (2260, 2280 и т.д).
  2. Тип ключа, который использует слот (M, B или B+M).
  3. Поддерживает ли материнская плата интерфейс SATA или PCI-E, и какая версия используется (например, PCIe 3.0 4x).
  4. Поддерживаются ли операционной системой, самим SSD диском и материнской платой протоколы AHCI или NVMe.

Ведь отвечая на вопрос, что лучше, SSD со стандартным разъемом или M.2, понятное дело, что следует выбрать второй вариант с поддержкой NVMe и установить его на PCIe 3.0×4.

Это позволит не только освободить больше места путем сокращения количества проводов, но и увеличит скорость передачи, быстродействие системы и ее производительность. Главное – он сделает работу за компьютером более комфортной, приятной и эффективной.

Подробный видео обзор

    Различные типы ключей помечаются на концевых контактах (позолоченных) SSD M.2 или рядом с ним, а также на разъеме M.2.

    На рисунке ниже представлены ключи SSD M.2 на SSD M.2 и совместимых разъемах M.2 с прорезями, позволяющими вставлять накопители в соответствующие разъемы:

    Следует учесть, что SSD M.2 с ключом B имеют другое количество концевых контактов (6) по сравнению с SSD M.2 с ключом M (5); такая асимметричная схема позволяет избежать ошибок размещения SSD M.2 с ключом B в разъем M, и наоборот.


    Что означают разные ключи?

    SSD M.2 с концевыми контактами ключа B могут поддерживать протокол SATA и/или PCIe в зависимости от устройства, однако ограничены скоростью PCIe x2 (1000МБ/с) на шине PCIe.

    SSD M.2 с концевыми контактами ключа M могут поддерживать протокол SATA и/или PCIe в зависимости от устройства и поддерживают скорость PCIe x4 (2000МБ/с) на шине PCIe, если хост-система также поддерживает режим x4.

    SSD M.2 с концевыми контактами ключа B+M могут поддерживать протокол SATA и/или PCIe в зависимости от устройства, однако ограничены скоростью x2 на шине PCIe.

    Подробнее

    Какие конфигурации M.2 и разъемов несовместимы?

    Ключ SSD M.2 Ключ B Ключ M
    Концевые контакты SSD SSD edge connector - B Key SSD edge connector - M Key
    Несовместимые разъемы Not Compatible Sockets - B Key Not Compatible Sockets - M Key

    В чем преимущества наличия ключа B+M на SSD M.2?

    Ключи B+M на SSD M.2 обеспечивают перекрестную совместимость с различными системными платами, а также поддержкой соответствующего протокола SSD (SATA или PCIe). Хост-разъемы некоторых системных плат могут быть рассчитаны на подключение только SSD с ключами M или только с ключами B. SSD с ключами B+M предназначены для устранения этой проблемы; однако подключение SSD M.2 в разъем не гарантирует его работы, это зависит от общего протокола между SSD M.2 и системной платой.


    Какие типы хост-разъемов SSD M.2 встречаются на системных платах?

    Хост-разъемы M.2 могут быть основаны на ключе B или на ключе M. Они могут поддерживать как протокол SATA, так и протокол PCIe. И наоборот, они могут поддерживать только один из двух протоколов.

    Если концевое контакты SSD имеют ключ B+M, они физически подходят к любому хост-разъему, однако необходимо изучить спецификацию системной платы/производителя системы, чтобы убедиться в совместимости протоколов.


    Как узнать, какой длины SSD M.2 поддерживает системная плата?

    Следует всегда изучать информацию производителя системной платы/системы для проверки поддерживаемых вариантов длины карт, однако большинство системных плат поддерживает 2260, 2280 и 22110. Многие системные платы имеют перемещаемый фиксирующий винт, позволяющий пользователю установить SSD M.2 2242, 2260, 2280 или даже 22100 . Объем пространства на системной плате ограничивает размер устанавливаемых в разъем и используемых SSD M.2.


    Что означает "socket 1, 2 или 3"?

    Различные типы разъемов являются частью спецификации и используются для поддержки специальных типов устройств в разъеме.

    Socket 1 предназначен для Wi-Fi, Bluetooth®, NFC и WI Gig

    Socket 2 предназначен для WWAN, SSD (кэш-память) и GNSS

    Socket 3 предназначен для SSD (SATA и PCIe, скорость до x4)


    Socket 2 поддерживает и WWAN, и SSD?

    Если в системе есть и не используется Socket 2 для поддержки карты WWAN, его можно использовать для SSD M.2 (обычно компактного форм-фактора, например 2242), если он имеет ключ B. SSD M.2 SATA можно вставить в совместимые разъемы WWAN, если системная плата поддерживает его. Обычно используются SSD M.2 2242 малой емкости для кэширования вместе с 2,5-дюймовым жестким диском. В любом случае следует изучить документацию по системе, чтобы проверить поддержку M.2.


    Возможно ли горячее подключение SSD M.2?

    Нет, SSD M.2 не предназначены для горячего подключения. Установка и удаление SSD M.2 допускается только при отключенном питании системы.


    Что такое односторонние и двухсторонние SSD M.2?

    Для некоторых встраиваемых систем с ограниченным пространством спецификации M.2 предусматривают различную толщину SSD M.2 – 3 односторонних версии (S1, S2 и S3) и 5 двухсторонних версий (D1, D2, D3, D4 и D5). Некоторые платформы могут иметь определенные требования вследствие ограничений пространства под разъемом M.2, см. рисунок ниже (собственность LSI).


    SSDM.2 Kingston соответствуют спецификациям двухсторонних M.2 и могут устанавливаться в большинство системных плат, совместимых с двухсторонними SSD M.2; обратитесь к своему торговому представителю, если вам требуются односторонние SSD для встраиваемых систем.


    Что планируется в будущем?

    SSD M.2 PCIe следующего поколения перейдут от использования старых драйверов AHCI, встроенных сейчас в операционные системы, к новой архитектуре, использующей новый хост-интерфейс Non-Volatile Memory Express (NVMe). NVMe с самого начала разрабатывался с поддержкой SSD на основе NAND (и, возможно, более новой энергонезависимой памяти) и обеспечивает еще более высокие уровни производительности. Предварительное производственное тестирование показывает, что его скорости в 4–6 раз выше, чем у современных SSD SATA 3.0.

    Ожидается, что его начнут внедрять в 2015 году в корпоративной сфере, а затем перенесут на клиентские системы. Поскольку промышленность подготавливает экосистему для выпуска SSD NVMe, во многих операционных системах уже существуют бета-версии драйверов.

В любом устройстве всегда найдется слабое звено – bottle neck (бутылочное горлышко), самый слабый компонент, который будет лимитировать производительность остальных частей. Долгое время в настольных компьютерах главными “тормозами перестройки” были жёсткие диски, и ни 7200, ни 10000, ни даже 15000 оборотов в минуту, не меняли ситуацию кардинально. С появлением твердотельных накопителей дело сдвинулось с мёртвой точки. Но прогресс не щадит и это быстрое решение. Интерфейс SATA не способен удовлетворить запросы пользователей, поэтому стали появляться новые стандарты и интерфейсы.


Есть два новых пути развития SSD с интерфейсом PCI-E: SATA Express и NVMe – о них следует разговаривать отдельно, да и в продаже их не часто встретишь. Поэтому пока попробуем разобраться с обычными, доступными в рознице накопителями с интерфейсами PCI Express и SATA 6 ГБит/с.

Начнём с плюсов и минусов обоих интерфейсов:

SATA-диски


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

Достоинства:

  • Доступность на рынке
  • Большое количество производителей
  • Возможность подключения к любым современным материнским платам
  • Демократичная цена
  • Доступны объемы от 64 Гб до 1 Тб

Недостатки:

  • Ограничение по скорости передачи данных - предел интерфейса - 600 МБ/с на один канал.
  • Необходимость работы с контроллерами AHCI, которые разрабатывались для классических жёстких дисков

PCI Express


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

Достоинства:

  • Высокая скорость передачи данных - пропускная способность одной линии шины ревизии 3.0 - 1 ГБ/с

Недостатки:

  • Высокая цена на рынке
  • Небольшой ассортимент брендов и моделей
  • Для некоторых моделей характерно падение производительности со временем (неработающий или не настроенный TRIM)
Немного поработав капитаном Очевидность, я хотел бы рассмотреть непосредственно те сценарии, которые пользователи проигрывают в голове, выбирая себе твердотельный накопитель SSD.

Потребительские сценарии

  • Обычные пользователи
    Откровенно говоря, большей части юзеров будет безразлично какой интерфейс имеет SSD-диск, более того, мало кто по настоящему почувствует разницу между SATA 3 ГБит/с и SATA 6 ГБит/с. При использовании только веб-браузеров, электронной почты, базовых офисных программ пользователь не увидит разницы и будет счастлив просто наличию SSD-диска в системе, так как программы будут загружаться очевидно быстрее, чем на HDD.
  • Продвинутые юзеры
    работающие с мультимедиа материалами, часто ищут способы увеличения производительности дисковой системы. Простой пример: буйно начал расти сегмент 4К-видео. Несжатый поток 4К (3840х2160, 12 бит, 24 кадра в секунду) потребует пропускной способности около 900 МБ/с. И даже если вы работаете со сжатыми потоками, то при одновременной обработке нескольких, обязательно упрётесь в потолок SATA 6 ГБит/с. RAID 0 спасёт ситуацию, но скорее всего в пике при построении RAID 0 на 4-х накопителях будет около 1,6 ГБ/с. PCI Express предлагает решение вопроса: каждая линия PCI-Express имеет пропускную способность до 1,0 ГБ/с (то есть в 1,6 раза больше, чем SATA) при почти таком же энергопотреблении – разумеется, грешно не пользоваться такими возможностями. И пусть цена на SSD PCI Express выше, любители работать с видео высокого разрешения просто обязаны смотреть именно на такой стандарт.
  • Геймеры
    Для настоящих хардкорщиков (а по мне так просто нетерпеливых людей), конечно же, нужен PCI Express. Огромные по размеру TitanFall или CoD:Ghosts будут грузится достаточно долго, я уж молчу про авиасимуляторы, “вес” которых доходит до сотен гигабайт. Для обычных же людей, которые любят Diablo III и прочие Bioshock Infinite, будет вполне достаточно топового SSD 6 ГБит/с.
  • Энтерпрайз-клиенты
    Ожидания клиента в этой сфере существенно выше, чем просто быстрая загрузка или обработка видеофайла. Чем крупнее сервер, тем больше к нему осуществляется обращений от пользователей и тут на первый план выходят IOPS. Для вышеперечисленных категорий людей обычная очередь к контроллеру составляет 3-5 запросов, в энтерпрайзе все измеряется сотнями. SSD прекрасно проявляют себя, когда нужно показывать высокую производительность на протяжении долгого времени, и если классических дисков потребуется несколько сотен, то высокопроизводительный SSD может справиться в одиночку.
При работе по интерфейсу SATA консьюмерские SSD достигают уровня производительности в 100,000 IOPS, в то время как топовые PCI-E накопители способны выдерживать нагрузку в 1,000,000 IOPS. При этом, как правило, они рассчитаны на работу с интерфейсом PCI-E 2.0, а значит переход на PCI-E 3.0 даст существенный прирост производительности в будущем.

Вместо вывода

Что можно сказать в итоге. Для розничных покупателей и геймеров можно и нужно выбирать среди SATA-дисков. Большинство офисных пользователей будут счастливы, если в их рабочих станциях поселятся быстрые и бесшумные накопители, но 90 процентов из них никогда даже не задумаются о том, какой интерфейс у диска и бывают ли они вообще разные. Геймерам же придётся сложнее, выбор большой, запутаться сложно, зачастую производитель недобросовестно завышает показатели чтения и записи. Следите за нашим блогом и мы расскажем, какая методика тестирования на самом деле правильная.

Для корпоративного рынка и людей, работающих с мультимедиа контентом – крайне рекомендованы накопители с интерфейсом PCI-Express. Обработка огромных растровых изображений или работа с 4К-видео с GoPro Hero4 – всё это потребует от системы хранения высокой производительности. Если ваша основная задача – производить контент – смело выбирайте диски PCI-Express. Энтерпрайз сегмент уже практически перешёл на контроллеры NVMe – о таких SSD будет отдельный пост – они заслуживают много внимания.

Теоретические раскладки обязательно надо проверять на практике. Поэтому следующий пост будет про практическое сравнение PCI-E SSD диска и SATA SSD (в том числе в режиме RAID 0).
С наступающим Новым Годом!