USB Type-C разделяет обязанности

USB Type-C разделяет обязанности

USB HCI — контроллер уни­вер­саль­ной по­сле­до­ва­тель­ной шины — тра­ди­ци­он­но ре­а­ли­зу­ет­ся в со­с­та­ве сис­тем­ной ло­ги­ки ком­пью­тер­ной плат­фор­мы. При этом, на каж­дом эта­пе раз­ви­тия USB не­из­беж­ная инер­ци­он­ность про­из­во­дителей чип­сетов да­ет воз­мож­ность про­я­вить се­бя по­став­щи­кам дис­кретных ре­ше­ний. Оче­ред­ное до­ка­за­тель­ст­во — на­бор ком­по­нен­тов от Lat­ti­ce Se­mi­­con­­duc­­tor для ин­тер­фей­са USB Type-C.

Постановка задачи

Невольно вспоминая некогда популярную фразу про коммунизм, советскую власть и электрификацию всей стра­ны, ак­цен­ти­ру­ем внимание на том, что USB Type-C, как множество технологий, является своеобразной суммой двух под­мно­жеств: классического и расширенного.

Расположение сигнальных цепей разъема USB Type-C
Рис 1. Расположение сигнальных цепей разъема USB Type-C

Классическая функциональность определяется спецификацией универсальной последовательной шины и ре­али­зу­ет­ся контроллерами xHCI (eXtensible Host Controller Interface) и xDCI (eXtensible Device Controller Interface) для ра­бо­ты уст­рой­ст­ва в роли хоста и периферийного девайса соответственно. В составе набора сигналов Type-C (Рис 1), при­сут­ст­ву­ют це­пи примерно соответствующие двум разъемам Type-A. Это двунаправленные линии данных USB 2.0 High Spe­ed (D+, D-), однонаправленные встречно включенные линии данных USB3.1 Super Speed (TX+, TX-, RX+, RX-), це­пи пи­та­ния (Vbus) и общий провод (GND).

В этом контексте под расширенной будем понимать такую функциональность, которая выходит за рамки USB-спе­ци­фи­ка­ции. Для ее поддержки требуются дискретные компоненты, дополняющие возможности системной ло­ги­ки. В пер­вую очередь, сюда относится интерфейс Configuration Channel, представленный сигналами CC1/CC2, обес­пе­чи­ва­ю­щий обмен специальными сообщениями между подключенными устройствами, независимо от пе­ре­да­чи дан­ных по USB, а также идентификацию маркированных кабелей.

Поддержка Power Delivery Specification, в частности, управление напряжением питания (Vbus) в рамках от 5 до 20V и током нагрузки до 5A, в рамках дискретно-аналоговой модели, становится возможной благодаря дву­на­прав­лен­но­му обмену сообщениями между источником и потребителем по линиям Configuration Channel. Обес­пе­че­ние Al­ter­na­te Mo­de или альтернативных режимов, коммутация Super Speed цепей порта с целью пе­ре­дачи по ним трафика, от­лич­но­го от USB (например, Display Port или PCI Express), также находится под конт­ро­лем кон­фи­гу­ра­ци­он­но­го ин­тер­фей­са.

Своеобразным «подарком» разработчикам периферии от законодателей стандарта стали линии Sideband Usage (кон­так­ты SBU1, SBU2 на Рис 1), назначение которых вправе определить производитель конкретного устройства.

Дискретные решения на марше

Зарядные устройства являются простейшим примером. Центральный процессор и системная логика в клас­си­че­ском понимании здесь отсутствуют. Схема состоит из следующих компонентов.

Пример реализации зарядного устройства
Рис 2. Пример реализации зарядного устройства

Микроконтроллер Cable Detect / Power Delivery manager, управляет идентификацией подключений, запросов по­тре­би­те­лей зарядной мощности и возможностей кабелей. Его операции базируются на передаче и приеме инфор­ма­ции по кон­фи­гу­ра­ци­он­но­му каналу с использованием схемы сопряжения с линией CD/PD PHY. Достигнутые до­го­во­рен­нос­ти по передаче зарядной мощности реализует программируемый источник напряжения VBUS Power Cont­rol.

Пример реализации USB Type-C порта в составе смартфона или планшета
Рис 3. Пример реализации USB Type-C порта в составе смартфона или планшета

По сравнению с ранее рассмотренной схемой, здесь добавляется новый участник SS Switch (Super Speed Switch), ком­му­ти­ру­ю­щий сигналы USB3.1 с целью передачи по ним видео трафика в рамках реализации альтернативной фун­к­ци­о­наль­нос­ти. Интеллектуальное управление делегируется процессору мобильного устройства (здесь AP — это Ap­pli­ca­tion Pro­cessor, не путать со значением того же термина в контексте симметричной мультипроцессорности).

Передача мощности от источника к потребителю переводится под контроль ОС, работающей на хост-системе. Здесь кроется принципиальное отличие данного примера от зарядного устройства или Power-банка, а также об­основание недавних инициатив Google, связанных со стандартизацией.

Пример реализации USB Type-C порта в составе ноутбука
Рис 4. Пример реализации USB Type-C порта в составе ноутбука

В этом примере ноутбук, или «продвинутый» планшет, как полнофункциональная вычислительная платформа, со­дер­жит центральный процессор и системную логику в виде раздельных компонентов. Embedded Controller (EC) ос­во­бо­ж­да­ет центральный процессор (CPU) от низкоуровневых операций управления цепями питания, сохраняя при этом воз­мож­ность для мониторинга и вмешательства со стороны ОС и драйверов. В частности, Billboard device обес­пе­чи­ва­ет уни­фи­ка­цию процедур обработки аппаратных ошибок, формируя канал передачи статусной ин­фор­ма­ции между Con­fi­gu­ra­tion Channel и USB 2.0, делая эту информацию доступной для системного программного обеспечения.

Выводы

Итак, поддержка нового интерфейса универсальной последовательной шины, реализованного на базе разъема USB Type-C, немыслима без специализированных микросхем, расширяющих возможности системной логики. Инер­ци­он­ность разработчиков чипсетов понятна, ведь чем сложнее устройство, тем больше времени потребует его мо­дер­ни­за­ция.

Есть и другая причина, обусловившая разделение обязанностей, сложившееся в элементной базе. Отделив си­ло­вые и интерфейсные цепи от кристаллов южного моста (Platform Controller Hub, PCH), разработчик повышает на­дежность устройства.

Этот тезис главным образом касается коммутации высоких напряжений и больших токов, определенных Power De­livery Specification. Коммутация мощности до 100 ватт (20 вольт, 5 ампер) внутри кристалла PCH либо однокрис­таль­ной System-on-Chip (SoC) системы, шаг, мягко говоря, неразумный, а потому у производителей «силовой об­вяз­ки» ос­та­ет­ся возможность заработать на новом разъеме.

С другой стороны, мультиплексоры, коммутирующие маломощные информационные сигналы USB интерфейса, име­ют больше шансов со временем стать частью системной логики или микросхем SoC, ведь объекты коммутации (кон­т­рол­лер USB и видеоадаптер) уже входят в их состав.