Дмитрий Заруцкий
Carpe diem, quam minimum credula postero!

Почему USB никогда не заменит полностью другие интерфейсы

Почему USB никогда не заменит полностью другие интерфейсы
© The Standard daily

Не так давно исполнилось 25 лет с момента выхода первой предварительной версии протокола USB. За эти четверть века он сумел превратиться в универсальный стандарт, используемый повсеместно. Компьютеры, ноутбуки, смартфоны, аксессуары для них, носимая электроника – все это если не соединяется друг с другом по USB-кабелю, то хотя бы заряжается от него.

За 25 лет сменилось три мажорных версии стандарта, а скорость обмена данными выросла с 1,5 Мбит/с до 20 Гбит/с, то есть в 13 тысяч раз! Но, тем не менее, единой шиной передачи данных USB до сих пор не стал, и в будущем не станет. И на это есть ряд весомых причин.

Последовательный режим передачи

Шина USB является последовательной, то есть передает данные по одному каналу, в виде непрерывного потока нулей и единиц. В один момент времени она может передавать только один бит (1 или 0), поэтому максимальная скорость связи зависит от частоты передачи сигналов устройством.

Частота, в свою очередь, не может наращиваться бесконечно. Во-первых, сигналы должны быть достаточно мощными, чтобы не затухать от сопротивления провода и разъемов. Если не наращивать мощность сигнала – нужно наращивать чувствительность приема, что делает оборудование более уязвимым к влиянию помех.

Увеличить скорость, и вместе с тем сохранить устойчивость к шуму, можно путем увеличения числа жил. Это в итоге и было сделано при переходе с USB 2.0 до 3.0 (жил в кабеле стало 9, вместо 4). Но и эта возможность не безгранична, когда-то (причем, относительно скоро) последующее усиление линий связи сделает невозможным или непрактичным существование USB в современном виде.

Сравнение разъемов USB 3.0 и 2.0 © Wix.com
Сравнение разъемов USB 3.0 и 2.0 © Wix.com

Трудность масштабирования

При нехватке пропускной способности одной линии – ее можно компенсировать использованием нескольких каналов параллельно. Если приводить наглядный пример, то это выглядит как добавление новых полос по бокам трассы, которая не справляется с потоком транспорта. Вдвое больше полос – вдвое больше машин.

Такое масштабирование широко используется в электронике. Протокол PCI-Express хоть и является последовательным, но поддерживает масштабирование путем увеличения числа линий. Но, сравнив разъемы PCI-E x1 (1 линия) и x16 (16 линий) можно понять, почему для USB, ориентированного на быстрое подключение оборудования, такой вариант не подходит.

Сравнение разъемов PCI-E x16 и x1 © COMMELL
Сравнение разъемов PCI-E x16 и x1 © COMMELL

Каждая линия требует выделенных для нее жил, а это значит, что увеличение скорости вчетверо потребует использовать почти вчетверо больше жил и контактов. Реализовать это, сохранив обратную совместимость со старыми разъемами и кабелями, невозможно.

Благодаря внедрению USB Type C, который ради симметричности использует двойной набор линий (24 контакта, из которых 18 – это по паре каждой из линий USB 3.0 Type A, плюс 6 дополнительных), инженеры смогли реализовать параллельное использование двух линий (подобие MIMO 2x2).

Распиновка USB Type C © Wikipedia
Распиновка USB Type C © Wikipedia

Новый стандарт носит версию 3.2. В 2019 должны появиться первые устройства с поддержкой связи 20 Гбит/с, но на этом текущий предел разъема будет исчерпан. Провернуть данный трюк еще раз, добавив к 24 проводам несколько новых, будет трудно. Их-то и 20 трудно поместить, из-за чего одинаковые внешне кабели могут быть очень разными внутри.

Чрезмерная универсальность

Как бы это странно ни звучало, но главной помехой на пути становления USB в качестве единого стандарта является его излишняя универсальность. Этот протокол пригоден для очень многого, а клиенты ждут от него кучи возможностей. Инженеры стеснены этими требованиями, им некуда отступать.

Если убрать обратную совместимость со старым оборудованием или изменить протокол в угоду высоким скоростям, лишив его части одних возможностей в пользу другим – народ не поймет. Да и конечная цель универсиализации не будет достигнута: USB станет быстрее, в чем-то удобнее, но и менее универсальным.

Решение проблем

Находясь «между двух огней» (с одной стороны, надо улучшать, но с другой – жертвовать ничем нельзя), разработчики USB вынуждены маневрировать. Наиболее эффективным обходным маневром стало добавление поддержки так называемых «Alternate Mode».

Добавив специальные служебные линии (именно из-за них у USB Type C не 14, 16 или 18 контактов, а 24), по которым передаются некоторые управляющие сигналы, разработчики получили возможность приспособить разъем USB для использования иных протоколов.

По сути, USB Alternate Mode – это «костыль», так как в альтернативном режиме только используются контакты USB, но обработкой сигналов занимается другой контроллер. Прямого отношения к шине USB такая связь не имеет, так как поток данных хоть и идет через единый разъем, но на другом конце его принимает контроллер HDMI/DisplayPort (при передаче картинки) или PCI-Express (подключение по Thunderbolt).

Apple MacBook оснащен портами USB с поддержкой Thuderbolt © Digital Trends
Apple MacBook оснащен портами USB с поддержкой Thuderbolt © Digital Trends

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

А что в итоге?

Переход на использование USB Type C, который завершится в ближайшие пару-тройку лет, предопределяет судьбу USB. В будущем этот стандарт так и не станет единым протоколом для подключения электронных устройств. PCI-Express, протоколы передачи изображения (как HDMI или DP), никуда не уйдут потому, что они лучше в своих задачах.

Но если говорить о USB как о физическом разъеме (а не протоколе связи) – его перспективы выглядят радужно. USB Type C, в который изначально заложена универсальность, имеет все шансы стать единым видом штекера и для клавиатур/мышек/флешек, и для мониторов, и для проводной связи двух устройств, и для их зарядки. Однако использовать он, по-прежнему, будет не только протокол USB, но и другие стандарты связи.