Обзор моста USB—PCIe JMicron JMS586A с поддержкой всех скоростных режимов USB 3.2 вплоть до Gen2×2

Как USB стал самым массовым интерфейсом и почему его универсальность теперь путает пользователей: изучаем историю и разбираемся с будущим

В 2017 году были утверждены спецификации USB 3.2, включающие в себя сверхскоростной режим Gen2×2 с пропускной способностью 2 ГБ/с (когда-то немыслимой даже для внутренних интерфейсов, не говоря уже о внешних), а пару лет назад его поддержка появилась и непосредственно в чипсетах системных плат, однако вала конечных устройств с его поддержкой на рынке не наблюдается. Что, впрочем, неудивительно. Во-первых, нужен он разве что для внешних SSD, причем не всяких, а исключительно дорогих и способных воспользоваться его преимуществами. Покупатели же предпочитают что подешевле и согласны ограничиваться более медленным Gen2 — всё равно доступную таковому скорость 1 ГБ/с надо еще суметь получить на практике. Во-вторых, конкретно этот режим в обязательную часть спецификаций USB4 не вошел: USB 3.2 Gen2×2 и USB4 Gen2×2 называются почти одинаково, имеют одинаковую пропускную способность и вообще очень похожи со стороны пользователя, но это абсолютно разные режимы, использующие, в частности, разные схемы кодирования информации и вообще несовместимые на электрическом уровне. Понятно, что реализация первого с учетом обязательной поддержки контроллерами USB 3.2 Gen2 проста, так что производителям ее проще сделать, чем нет, но такая ситуация оптимизма не добавляет. Заплатишь сегодня дороже за накопитель в расчете на долгую счастливую перспективу — а ее возьмут и отнимут. Жалко. Проще сразу не переплачивать — всё равно быстро получится. Тем более, пока в компьютерах активно используются жесткие диски и SATA SSD, даже скоростные возможности USB 3.2 Gen2 могут пропасть втуне: не обеспечат такие накопители достаточный для быстрых интерфейсов поток данных.

Исследование скоростных режимов USB 3.2 Gen1, Gen2 и Gen2×2 при помощи быстрого внешнего SSD на контроллере USB—NVMe ASMedia ASM2364

Однако подобные перспективы пугают не всех, так что соответствующие внешние SSD потихоньку продаются. И все они в основной массе использовали и используют контроллер ASMedia ASM2364. Он появился еще года три назад, причем без острой на то необходимости: на рынок решений с поддержкой Gen2 ASMedia вышла лишь второй, вот и решила застолбить себе местечко на пустой поляне Gen2×2 заранее. Благо сделать это было несложно: берем уже готовый ASM2362 и удваиваем ему блоки PCIe и USB. По сути, ×2-режимы USB3 представляют собой объединение двух одиночных каналов в единый интерфейс, вот в контроллер и добавили второй канал, идентичный первому. А число линий PCIe просто удвоили, поскольку двух для получения теоретических 20 Гбит/с немного не хватает. Четырех линий, правда, уже много, но промежуточных значений не бывает. А оставить две — так у кого-нибудь из конкурентов будет стимул обойти на повороте. В итоге конкуренции не получилось: рынок сам по себе всё еще небольшой, решений ASMedia всем достаточно, разрабатывать что-то аналогичное — затраты понятные, а отдача — не очень. Тем более, в условиях, когда перспективы разработки туманны: возможно, проще будет сразу на USB4 перейти, как только этот интерфейс шагнет в массы. Тогда увеличатся потребности производителей внешних накопителей в соответствующих мостах и выяснятся перспективы применений таких решений.

Но это не означает, что на современном рынке не осталось ниш, не охваченных ASMedia. И в JMicron эти самые альтернативные направления нащупали.

JMicron JMS586A и JMS596U: мы пойдем другим путем

Обзор моста Realtek RTL9210B, позволяющего подключать к USB3 Gen2 как NVMe-, так и SATA-накопители

Компания на рынке разнообразных мостов и контроллеров далеко не новичок, что позволяет ей годами успешно конкурировать с другими разработчиками. Достаточно вспомнить, что первым мостом USB—NVMe на рынке в начале 2018 года стал именно JMicron JMS583, до сих пор активно используемый огромным количеством мелких и крупных компаний как в разнообразных коробочках для самостоятельной сборки внешних SSD, так и в готовых продуктах. Причем продолжается это несмотря на появление того же ASMedia ASM2362, а также Realtek RTL9210 и RTL9210B. Последний — вообще очень серьезный конкурент, поскольку поддерживает и SATA-накопители, и NVMe, что позволяет выпускать на его базе универсальные коробочки, одну из которых мы уже изучали. А для любителей скорости, как уже сказано, сейчас есть ASMedia ASM2364 — совместимый с USB 3.2 Gen2 (максимумом для остальных перечисленных), однако позволяющий удвоить скорость при наличии порта USB 3.2 Gen2×2. В принципе, в конце мая анонсирован и Realtek RTL9220DP, где компания опять пошла своим путем, сохранив совместимость с SATA, однако реализовав два универсальных порта внутри и USB 3.2 Gen2×2 снаружи, но реальных продуктов на его базе нужно еще подождать.

USB-коробочки для NVMe-накопителей на чипах ASMedia ASM2362 и JMicron JMS583

Несмотря на все эти изменения рыночной конъюнктуры, JMicron JMS583 остается актуальным. А пять лет назад он тем более был актуален, и ему не мешали даже намного более высокие, чем сейчас, цены. Почему выход именно этого моста так важен? SATA-интерфейс лишь немногим быстрее древнего USB 3.0 (после пары переименований ставшего USB 3.2 Gen1), так что полноценная реализация скоростных возможностей даже Gen2 на его базе невозможна. Точнее, почти невозможна: первые Gen2-накопители представляли собой RAID0 из двух SATA SSD. Решение это, безусловно, кривое (даже если забыть о цене), так что годилось лишь как временное и/или демонстрационное. А маленькая «флэшка» со скоростями в гигабайт в секунду получается лишь при переходе на NVMe SSD. И JMS583 стал первым мостом с такой реализацией — остальные лишь последовали за ним. Так что компания неплохо заработала на эксклюзивности своего решения и посчитала возможным следующий шаг сделать немного нестандартным — даже неожиданным.

Так выглядят блок-схемы обеих модификаций JMS586. Похоже на другие мосты — больше всего на тот же ASM2364. Но есть нюанс: ASMedia объединила все четыре линии PCIe в один порт, а в решениях JMicron по спецификациям есть два независимых PCIe Gen3×2. Так что сразу можно предположить, что по пиковой скорости обмена данными с одиночным SSD эти решения будут уступать ASM2364 — но это мы обязательно проверим. Зато два независимых порта позволяют подключать к компьютеру сразу два SSD — и, например, клонировать информацию с одного на другой одной кнопкой. Такие док-станции в продаже уже появились — и в них используется JMS586U.

Форм-факторы, интерфейсы, протоколы... Раскрываем один из «бесячих вопросов» по выбору твердотельного накопителя

JMicron JMS586A тоже допускает подключение к компьютеру двух SSD — но лишь один из них может быть рассчитан на протокол NVMe, а второй должен поддерживать AHCI. Либо оба порта могут быть заведены на один разъем — с переключением между ними в зависимости от того, какой SSD будет установлен. Необходима поддержка протокола NVMe — используем первый порт. Потребовалась AHCI — второй. Всё равно оба реализованы поверх PCIe (SATA, как уже было сказано, в принципе поддерживает исключительно Realtek и больше никто), так что перекоммутировать линии можно практически на лету. Зачем это нужно сейчас, если, как мы недавно писали, стандарт PCIe/AHCI производители пробовали использовать лет этак 10 назад, да и то не слишком массово, и давно от него отказались? Есть некоторые нюансы, разрушающие простую и понятную картинку. С которыми мы разберемся, когда познакомимся с главным героем нашего тестирования.

M.2 NVMe Enclosure for Mac SSD

Дело в том, что PCIe/AHCI практически не оставил следов в мире ПК… Но есть еще Apple — и в компании 10 лет назад настолько хотели выделиться, что комплектовали многие маки именно такими SSD. Протокол NVMe на тот момент еще не был окончательно стандартизован, а более высокую пропускную способность, нежели давал SATA, получить хотелось — все-таки это конкурентное преимущество, которое можно красиво обыграть в рекламе. Да и на практике высокая пропускная способность могла потребоваться для работы, например, с тяжелыми форматами видео, типа Apple ProRes — так что всё одно к одному.

Во избежание коллизий накопители имели свой собственный формат (а не разработанный уже к тому моменту М.2) и свой собственный разъем 12+16. Сами SSD были заказаны у Toshiba — и, например, в MacBook Air устанавливались до самого 2017 года. В MacBook Pro, iMac и Mac Pro срок их жизни был короче, но в общей сложности на рынок вышли десятки миллионов компьютеров, многие из которых работают до сих пор. Затем в Apple тоже перешли на NVMe и внедрили поддержку протокола в новые версии MacOS. А спустя некоторое время энтузиасты определили, что в эти самые старые (но еще бодрые) маки можно устанавливать NVMe SSD при помощи копеечного пассивного переходника с 12+16 на стандартный М.2 M-key. И размеры все подошли — такой вот подарок судьбы. Если учесть, что цены за это время сильно снизились, то поменять в рабочей машинке SSD емкостью гигабайт этак 250 на терабайтник, да еще и более быстрый — дело полезное.

Возникает только вопрос: а куда потом старый SSD девать? Ответ: можно переделать во внешний, для чего нужна коробочка. Но коробочка нужна с разъемом 12+16 и поддержкой PCIe/AHCI — первое-то сделать несложно, а вот второе возможно только с одним мостом: JMicron JMS586A. Рынок? Еще бы!

А нам с того что? Всё просто: в комплект такого апгрейд-кита входит и тот самый переходник, а JMS586A поддерживает и PCIe/NVMe. Задумка производителя простая: человек купит такой набор и новый SSD, при помощи переходника поставит его в макбук, а старый SSD — в коробочку. Но ведь можно и новый SSD при помощи того же переходника установить в коробочку, а не в мак. Что мы и сделаем.

В первую очередь для удовлетворения любопытства, конечно. Блок-схема приведена выше, и согласно ей, ASMedia ASM2364 может работать немного быстрее. Да и подходящих коробочек на нем больше самых разных, причем и стоят они дешевле. Впрочем, разницу в скорости еще надо измерить, а более дешевые продукты на JMS586A тоже могут появиться. Либо эти заметно подешевеют — если окажется, что изначальный спрос оказался переоценен. Само по себе решение неплохое, хотя и не слишком отличающееся от большинства аналогов: металлический такой аккуратный брусочек размерами 115×40×16 мм и массой (собственной) 93,6 г. И оно точно быстрее, чем любые накопители, ограниченные интерфейсом USB 3.2 Gen2 или, тем более, основанные на SATA600. Повторимся: пока его сложно рассматривать как претендента на покупку. Но определить, насколько удачным у JMicron получилось новое семейство мостов, мы можем, и это главное.

Тестирование

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

Методика подробно описана в отдельной статье, в которой можно более подробно познакомиться с используемым программным и аппаратным обеспечением. Здесь же вкратце отметим, что мы используем тестовый стенд на базе процессора Intel Core i9-11900K и системной платы Asus ROG Maximus XIII Hero на чипсете Intel Z590, что обеспечивает полную поддержку всех скоростных режимов USB 3.2 вплоть до Gen2×2 включительно. И все их мы в свое время тестировали при помощи коробочки Orico M2PVC3-G20 на ASMedia ASM2364, установив в нее заведомо превосходящий ограничения интерфейсов WD Black SN850 2 ТБ. Сегодня возьмем его же, но уже в паре с описанной выше коробочкой на JMicron JMS586A, что позволит нам сравнить оба моста Gen2 и Gen2×2. А более медленные, как нам кажется, интереса уже не представляют — для них можно и чем-нибудь существенно более дешевым ограничиться.

Предельные скоростные характеристики

Низкоуровневые бенчмарки в целом и CrystalDiskMark 8.0.1 в частности давно уже пали жертвой в неравной борьбе с SLC-кэшированием — так что ничего, кроме самого кэша, протестировать и не могут. Однако сегодня нам это никак не помешает. Точнее, даже поможет — ведь мы сравниваем в первую очередь не разные носители данных, а интерфейсы доступа к ним. И тут как раз в первую очередь нужно определить — что последние в принципе могут, а на что лучше сразу не рассчитывать.

Последовательные операции (128К Q8T8), МБ/с
  Чтение Запись Смешанный режим
ASM2364 Gen2 985,5 962,8 987,6
ASM2364 Gen2×2 1742,9 1748,6 1732,7
JMS586A Gen2 968,8 974,3 853,5
JMS586A Gen2×2 1686,1 1736,6 1122,4

Пропускная способность USB-режимов оказалась несколько ниже теоретических максимумов, однако это можно исправить настройками программы — при переходе к блоку по 256К практика начинает соответствовать теории. Однако низкоуровневые тесты мы обычно для внешних накопителей и не используем — поэтому и режим тестирования не трогали: чтоб можно было сравнивать результаты с внутренними. А так в целом ничего неожиданного — кроме серьезного проигрыша JMS586A в смешанном режиме. Однако его можно списать и на нюансами взаимодействия CDM с USB-накопителями на некоторых мостах — всякое у него бывает. Лучше позднее проверить результаты другими программами.

Чтение 4К-блоками по произвольным адресам с разной глубиной очереди, IOPS
  Q1T1 Q4T1 Q4T4 Q4T8 Q32T8
ASM2364 Gen2 9983 28858 53103 53095 52540
ASM2364 Gen2×2 9990 30199 59169 59196 58293
JMS586A Gen2 9986 32592 54370 54159 54216
JMS586A Gen2×2 9991 33248 60048 59757 59823

Производительность на мелкоблочке слабо зависит от пропускной способности шины, однако на длинных очередях что-то можно соптимизировать и в этом случае. Однако мы уже отмечали, что задержки даже у старенькой пары SATA/AHCI ниже, чем обеспечивает USB/UASP — так что и ее рановато хоронить. Но при необходимости — второй вариант для использования пригоден. Больше можно получить при помощи Thunderbolt, возможно что-то добавят и родные режимы USB4, но практический потолок для «старых» версий — 60 kIOPS.

Запись 4К-блоками по произвольным адресам с разной глубиной очереди, IOPS
  Q1T1 Q4T1 Q4T4 Q4T8 Q32T8
ASM2364 Gen2 18733 34487 62920 62903 62481
ASM2364 Gen2×2 19819 46861 69501 69405 68992
JMS586A Gen2 19046 39967 62147 61995 61973
JMS586A Gen2×2 19728 44812 67535 67352 67341

При записи потолок приподнимается до 70 kIOPS — что немного. Однако реальные запросы операционных систем и прикладного ПО не превышают единиц тысяч операций в секунду, а жестких дисков им радикально не хватало лишь потому, что те, как правило, и одной сотни не тянут. Так что никаких противопоказаний к практическому применению нет. А оба моста ведут себя почти одинаково — не в них всё упирается.

Чтение по произвольным адресам блоками разного размера с единичной очередью, МБ/с
  16К 64К 256К
ASM2364 Gen2 40,9 98,3 269,9 460,0
ASM2364 Gen2×2 40,9 116,2 315,8 784,0
JMS586A Gen2 40,9 100,6 277,9 599,8
JMS586A Gen2×2 40,9 104,9 317,1 765,8

Да и вообще на практике, как не раз уже было отмечено, длинные очереди встречаются примерно никогда — зато большие блоки очень часто. И вот в этой практической дисциплине можно уже даже за уровень SATA-устройств выбраться. Пусть и не упереться в теоретическую пропускную способность USB. И мосты тут ведут себя немного по-разному, хотя однозначного лидера определить всё же невозможно.

Запись по произвольным адресам блоками разного размера с единичной очередью, МБ/с
  16К 64К 256К
ASM2364 Gen2 76,7 181,6 433,7 702,5
ASM2364 Gen2×2 81,2 250,3 641,2 1232,9
JMS586A Gen2 78,0 169,4 436,6 705,3
JMS586A Gen2×2 80,8 250,2 440,5 1016,2

Равно кк и при записи. В целом ASM2364 выглядит интереснее, но и JMS586A дожимает до гигабайта в секунду.

Чтение и запись по произвольным адресам блоками разного размера с единичной очередью, МБ/с
  16К 64К 256К
ASM2364 Gen2 47,0 112,9 298,6 522,8
ASM2364 Gen2×2 47,9 133,2 364,1 862,1
JMS586A Gen2 47,4 113,0 306,9 617,3
JMS586A Gen2×2 47,5 127,0 340,0 815,7

А в смешанном режиме дорожки двух мостов вообще расходятся: JMS586A быстрее в режиме Gen2, зато в ASM2364 лучше реализован Gen2×2. Так что можно сразу предположить, что нацелены они на немного разные сферы применения: JMicron большее внимание уделял режиму совместимости, а в ASMedia старались выжать максимум из самого перспективного (на момент разработки моста) интерфейса.

Работа с большими файлами

Чтение 32 ГБ данных (1 файл)
  МБ/с
ASM2364 Gen2 964,8
ASM2364 Gen2×2 1703,9
JMS586A Gen2 945,2
JMS586A Gen2×2 1480,5

Для внешних накопителей по-прежнему один из основных сценариев — просто уже не единственный. И тут предпочтительнее ASM2364 — и в режиме совместимости, и, особенно, в самом скоростном.

Чтение 32 ГБ данных (32 файла)
  МБ/с
ASM2364 Gen2 1004,6
ASM2364 Gen2×2 1964,3
JMS586A Gen2 1066,6
JMS586A Gen2×2 1854,1

Хотя связано это с тем, что слишком уж сложно достичь высоких скоростей в чисто последовательном режиме. При переходе к параллельному всё становится веселее. Также видна и несостоятельность гипотезы о максимум двух линиях PCIe на порт в JMS586A (появившаяся при изучении блок-схемы): он немного отстает от ASM2364, но за возможности «двухлинейного» режима явно вылазит.

Запись 32 ГБ данных (1 файл)
  МБ/с
ASM2364 Gen2 928,4
ASM2364 Gen2×2 1626,1
JMS586A Gen2 984,6
JMS586A Gen2×2 1524,5

Однопоточная же запись «внутри» SSD отлично распараллеливается, но к внешним интерфейсам это не относится. Поэтому «одиночный» режим утилизируется более-менее полностью с небольшим преимуществом JMS586A, а вот в «сдвоенном» оба не блещут — но немного лучше тут выглядит ASM2364.

Запись 32 ГБ данных (32 файла)
  МБ/с
ASM2364 Gen2 1022,2
ASM2364 Gen2×2 1905,4
JMS586A Gen2 1108,1
JMS586A Gen2×2 1897,0

Повторение пройденного. Хотя тут уже в режиме Gen2×2 разница между испытуемыми сокращается почти до нуля, а в остальном — ничего нового.

Чтение и запись 32 ГБ данных (последовательный доступ)
  МБ/с
ASM2364 Gen2 1040,6
ASM2364 Gen2×2 1850,9
JMS586A Gen2 1045,4
JMS586A Gen2×2 1725,5

А в этом тесте имеем примерный паритет в режиме Gen2 и небольшое преимущество ASM2364 в «скоростном». Для него результаты неплохо коррелируют с показанными CrystalDiskMark, у JMS586A же ничего похожего. Почему мы стараемся и не слишком полагаться на последнюю программу везде, где это возможно — для некоторых сценариев альтернатив нет, но ту же самую скорость чтения и записи файлов проверять лучше конкретно чтением и записью файлов. Так оно точнее, во всяком случае. Специфические же алгоритмы CDM иногда дают сбой.

Чтение и запись 32 ГБ данных (произвольный доступ)
  МБ/с
ASM2364 Gen2 644,3
ASM2364 Gen2×2 945,7
JMS586A Gen2 790,4
JMS586A Gen2×2 948,3

К счастью, для внешних накопителей такие сценарии редки — иначе бы их производителям сложно было бы продавать новые ускоренные интерфейсы. Да и вообще тут собственные (by design) тормоза USB обычно складываются с ограничениями SSD, так что каких-то рекордов производительности поставить невозможно. Но они и не нужны. А что нам тут интересно — в очередной раз JMS586A побыстрее во всё еще более массовом режиме Gen2.

Комплексное быстродействие

Краткое знакомство с новым тестовым пакетом PCMark 10 Storage

На данный момент лучшим комплексным бенчмарком для накопителей является PCMark 10 Storage, с кратким описанием которого можно познакомиться в нашем обзоре. Там же мы отметили, что не все три теста, включенных в набор, одинаково полезны — лучше всего оперировать «полным» Full System Drive, как раз включающим в себя практически все массовые сценарии: от загрузки операционной системы до банального копирования данных (внутреннего и «внешнего»). Остальные два — лишь его подмножества, причем на наш взгляд не слишком «интересные». А вот этот — полезен в том числе и точным измерением не только реальной пропускной способности при решении практических задач, но и возникающих при этом задержек. Усреднение этих метрик по сценариям с последующим приведением к единому числу, конечно, немного синтетично, но именно, что немного: более приближенных к реальности оценок «в целом», а не только в частных случаях, все равно на данный момент нет. Поэтому есть смысл ознакомиться с этой. Пусть она и немного избыточна для оценки внешних накопителей — все-таки пока еще даже для многих их владельцев идея использовать такой не вместе с, а иногда и вместо внутреннего кажется революционной. Однако, по нашему мнению, это как раз сценарии, в которых все преимущества этого класса устройств видны наиболее отчетливо. А для простого переноса файлов от компьютера к телевизору (бывает и такое) можно и внешним винчестером обойтись — оно еще и дешевле выйдет. Да и, кстати, тесты на копирование файлов большого размера входят как раз только в Full System Drive, но не в два других набора PCMark 10 Storage, так что и с этой стороны альтернатив нет.

PCMark 10 Storage Full System Drive
  Баллы
ASM2364 Gen2 1030
ASM2364 Gen2×2 1226
JMS586A Gen2 1030
JMS586A Gen2×2 1159

В режиме Gen2 производительность уперлась в скорость самого Gen2 у обоих мостов. Gen2×2 не в первый раз отдает пальму первенства ASM2364, но даже в этом случае прирост производительности сравнительно с Gen2 разочаровывает. Однако на практике оно и к лучшему — до сих пор продается куча компьютеров, где Gen2 — лучшее, что есть (и хорошо еще когда есть — а то и не такое бывает). Что бьет и по популярности самых современных USB-мостов, однако и тут всё снялось с мертвой точки — уже даже есть из чего выбирать.

Итого

Главное, чем интересно появление JMicron JMS586A и JMS586U — теперь ассортимент высокоскоростных мостов не ограничен одним предложением. Впрочем, рыночный расклад пока не меняется: у обеих модификаций есть свои эксклюзивные фишки, но они и денег стоят. Если кому-то реально нужна поддержка PCIe/AHCI или док-станция на два SSD — теперь такое возможно, так что доплату за такой эксклюзив даже и переплатой не назовешь. А остальным это просто незачем. Тем более, продукты на ASMedia ASM2364 не только стоят дешевле, но и работают иногда быстрее. Поэтому как таковая конкуренция на рынке «простых коробочек» и готовых внешних SSD пока не обострится. Разве что в JMicron сочтут, что все сливки с эксклюзивных особенностей контроллеров новой линейки уже сняты, и резко снизят цены на такие чипы до уровня старичка JMS583 — всё равно он уже слишком зажился. Вероятность этого явно увеличивается благодаря недавнему анонсу Realtek RTL9220DP, по функциональности частично пересекающегося с JMS586U: тоже можно подключить два SSD, но о копировании с одного на другой пока ничего не заявлено. Так что затишье в этом сегменте рынка в ближайшем будущем может кончиться. Но не прямо сейчас.

Что с того потребителям? Систем с поддержкой интерфейса USB 3.2 Gen2×2 с каждым днем в эксплуатации всё больше. Да, он по-прежнему есть не в каждом продаваемом компьютере, но во многих уже есть. Так что появляется всё больше стимулов использовать его. Ранее этому мешали цены, ведь старый добрый USB 3.2 Gen2 тоже быстрый, но намного дешевле. Однако этот период в скором времени может закончиться: прогресс тормозило наличие всего одного подходящего USB-моста на рынке. Теперь появились новые решения, на которые тем, кто апгрейдит старые макбуки с помощью коробочек, типа рассмотренной в обзоре, стоит обратить внимание уже сейчас — они позволят вдохнуть новую жизнь в «списываемый» SSD.

4 сентября 2023 Г.