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

17 Мар 2015

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. Известно также, каждый порт контроллера, оснащенный сигнальной линией Overcurrent 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.

 

 

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