SuperSpeedPlus: особенности реализации

SuperSpeedPlus: особенности реализации

Компании ASUS удалось опередить всех, представив на чипе ASM1142 решения с интерфейсом USB 3.1 для шины PCI Express x2. В опубли­ко­ван­ном пресс-релизе го­во­рит­ся о том, что поддержка плат расширения станет возможной после об­нов­ле­ния UEFI BIOS и драйверов. Почему так, ведь до сих пор ус­та­нов­ка плат рас­ши­ре­ния про­ис­хо­ди­ла без по­доб­ных про­це­дур? За разъ­яс­не­ни­я­ми да­вай­те об­ра­тим­ся к до­ку­мен­та­ции на контроллер ASMedia ASM1142, которая не­смот­ря на кон­фи­ден­ци­аль­ный ста­тус, ока­за­лась в ши­ро­ком доступе.

Зарядка от USB: по 2 ампера на порт

Как следует из документа «ASM1142 Data Sheet», USB 3.1 контроллер от ASMedia прямо не де­кла­ри­ру­ет за­ряд­ку под­клю­чен­ных устройств повышенными токами  (так называемая Battery Charging Specification). Вместо этого ис­поль­зу­ет­ся тер­мин Battery Charge Control. Известно также, каждый порт контроллера, оснащенный сигнальной линией Over­cur­rent Input (OCI), обеспечивает до 900 мА для питания USB-устройств. Большего выжать из до­ку­мен­та­ции нам не уда­лось. Но кро­ме указанного выше даташита, в нашем распоряжении оказались также референсные схемы для раз­ра­бот­чи­ков сис­тем­ных плат и плат расширения. Обратимся к ним:

Схема подключения контроллера ASMedia ASM1142 на плате адаптера ASUS для работы в режиме SuperSpeedPlus по USB 3.1
Рис 1. Схема подключения контроллера ASMedia ASM1142 для работы в режиме SuperSpeedPlus по USB 3.1

Заявленная схемотехника гарантирует подачу в режиме зарядки токов до 2 А на каждый порт. О методике управления узлом Port Power Switch в документации умалчивается. Напомним,  что проверка Battery Charging Specification сводится к подаче напряжений на линии Data+ Data- с помощью резисторного делителя и анализа ответной реакции контроллера. Если бы управление выполнялось только аппаратно, процесс зарядки внешних устройств обходился бы без участия BIOS и драйверов. Но в силу того, что процесс контролируется известной утилитой Ai Carger+ , без программирования регистров контроллера ASM1142 не обойтись.

Черный ход для UEFI BIOS

Листая страницы документации на контроллер ASM1142 нельзя пройти мимо сигнала SMI, который дает возможность реализовать Sideband-канал (по-русски это лучше переводить как «черный ход») между USB-контроллером и UEFI BIOS. Далеко не все контроллеры, не являющиеся частью чипсета, имеют такую возможность. Одно из применений SMI в данном контексте — USB Legacy Support и эмуляция несуществующих устройств, в частности порта клавиатуры 60h и т.п.

Контроллер USB 3.1 Asmedia ASM1142 обеспечивает обмен данными в режиме SuperSpeedPlus
Рис 2. Контроллер USB 3.1 Asmedia ASM1142 обеспечивает обмен данными в режиме SuperSpeedPlus

Раннее такая возможность считалась прерогативой USB-контроллеров в составе системной логики. Платы расширения не позволяли использовать «черный ход» между контроллером и BIOS. В итоге, функциональность USB-адаптеров заметно уступала встроенным решениям. Теперь дело за разработчиками платформ — использовать эту возможность или нет.

Проблема которую взялся решить ASUS в том, что линию SMI можно подключить только к контроллеру ASM1142, установленному на системной плате. Если чип установлен на PCIe-карте, то использовать сигнал SMI напрямую не получится — такой линии нет в слоте PCI Express. Остается только передавать SMI-запрос как PCIe-сообщение по шине. Для этого нужный драйверы и поддержка со стороны UEFI BIOS.

Рекомендуется для чтения