Новые возможности “старого” USB или USB On-the-Go
Любопытное прошлое
USB (Universal Serial Bus — универсальная последовательная шина) появилась не так давно (версия первого утвержденного варианта стандарта датирована 15 января 1996 года). В разработке стандарта приняли участие такие лидеры компьютерной и телекоммуникационной промышленности, как Microsoft, Intel, DEC, IBM, NEC, Northen Telecom и Compaq.
Основная цель стандарта, поставленная перед его разработчиками — обеспечить пользователям реальную возможность работы в режиме Plug&Play с периферийными устройствами. Это означает, что должно быть предусмотрено подключение устройства к работающему компьютеру, автоматическое распознавание его немедленно после подключения и последующей установки соответствующих драйверов (если это необходимо). Кроме того, желательно обеспечить подачу питания для маломощных устройств с самой шины. Скорость шины должна быть достаточной для подавляющего большинства низкоскоростных периферийных устройств. При этом контроллер USB занимает только одно прерывание независимо от количества подключенных к шине устройств.
Практически все поставленные задачи были решены в стандарте USB 1.1, и уже весной 1997 года появились компьютеры, оборудованные разъемами для подключения USB-устройств. Однако периферия с подключением по USB стала реальностью лишь спустя год, в середине 1998-го. По мере развития стандарт USB получил широкую популярность и количество устройств, использующих USB, стало быстро расти.
В настоящее время USB активно используется многими производителями компьютерной периферии. Рассмотрим некоторые характеристики USB 1.1
- Высокая максимальная скорость обмена — до 12 Мбит/с.
- Максимальная длина кабеля — 4,5 м.
- Максимальное количество подключенных устройств (включая концентраторы) — до 127.
- Возможно подключение устройств с различными скоростями обмена.
- Не требуется использование дополнительных устройств и терминаторов.
- По шине может подаваться напряжение питания 5 В для периферийных устройств.
- Максимальный ток потребления на одно устройство — 500 мА.
Топология сети USB изображена на рис. 1.
Как легко заметить, сеть USB построена по схеме многоуровневой «звезды». В сети есть одно управляющее устройство (HOST-контроллер), конечные устройства (DEVICE), а также концентраторы (HUB). Задача HOST-контроллера состоит в управлении сетью. Он заведует подключением и регистрацией устройств в сети, а также контролирует потоки данных. Только HOST-контроллер может обращаться к устройствам и управлять ими. Взаимодействие двух устройств в сети между собой напрямую невозможно.
Задача концентратора (HUB) состоит в распределении и направлении потоков данных от различных устройств. Концентратор транслирует сигнал в направлении от HOST-контроллера к устройствам (downstream), то есть в данном случае является повторителем (repeater). При передаче сигнала в обратном направлении (от устройства к HOST-контроллеру) концентратор является «маршрутизатором». Кроме того, концентратор позволяет управлять питанием портов USB.
И, наконец, конечные устройства. В качестве конечного устройства может быть любое устройство, оборудованное шиной USB: от таких простых, как мышь и клавиатура, до принтеров, сканеров, PDA и мобильных телефонов. При подключении к шине устройство автоматически распознается и получаетуникальный идентификатор. Устройства поддерживают расширенное управление питанием — если устройство не используется некоторое время, оно переходит в режим пониженного потребления (ток потребления при этом составляет менее 500 мкА).
Следует отметить, что в своем развитии стандарт USB подчеркнул общую тенденцию к увеличению пропускной способности интерфейса. Скорости в 12 Мбит/c оказалось уже недостаточно для некоторых приложений, связанных с высокоскоростным обменом данными и обработкой видеоизображения. Это послужило толчком к появлению стандарта USB 2.0, впервые представленного в рамках Конференции разработчиков оборудования для Windows (Windows Hardware Engineering Conference — WinHEC), которая прошла в апреле 2000 года в Новом Орлеане. Стандарт явился результатом работы USB 2.0 Promoter Group, в которую вошло несколько крупнейших корпораций отрасли персональных компьютеров, в том числе Compaq Computer, NEC и Philips Consumer Electronics.
При разработке USB 2.0 группе требовалось решить две основные задачи: во-первых, необходимо было сохранить совместимость со старым стандартом, во-вторых, следовало добиться скорости в 10-20 раз превышающей скорость, которую обеспечивает существующий стандарт (USB 1.1). Первую задачу группа выполнила: современные ПК, периферийные устройства и кабели, поддерживающие USB, смогут бесконфликтно работать с новым стандартом. Что касается второй цели, то тут результат превзошел самые смелые ожидания: скорость возросла в 40 раз! Это хорошо видно если сравнить стандарты USB 1.1 и USB 2.0, что сделано в табл. 1.
Хост — контроллер USB 1.1 | Хост — контроллер USB 2.0 | |||||
Без концентратора | USB 1.1 концентратор | USB 2.0 концентратор | Без концентратора | USB 1.1 концентратор | USB 2.0 концентратор | |
Низкоскоростное USB 1.1 устройство | 1,5 Мб/с | 1,5 Мб/с | 1,5 Мб/с | 1,5 Мб/с | 1,5 Мб/с | 1,5 Мб/с |
Высокоскоростное USB 1.1 устройство | 12 Мб/с | 12 Мб/с | 12 Мб/с | 12 Мб/с | 12 Мб/с | 12 Мб/с |
Высокоскоростное USB 2.0 устройство | 12 Мб/с | 12 Мб/с | 12 Мб/с | 480 Мб/с | 12 Мб/с | 480 Мб/с |
Достойное настоящее
С появлением стандарта USB 2.0 далеко не все проблемы, стоящие перед разработчиками различных электронных устройств, нашли свое решение. Большим недостатком USB являлось то, что устройства, подключенные к одной шине, не могли работать друг с другом напрямую. Связь была возможна только при участии HOST-контроллера, который, как правило, установлен на материнской плате персонального компьютера. Таким образом, в некоторых случаях компьютер оказывается «третьим лишним». Например, у вас есть карманный компьютер и принтер, подключенные к вашему настольному компьютеру при помощи USB и вы хотите распечатать файл, находящийся в памяти карманного компьютера. Очевидно, что для этого необходимо скопировать файл на настольный компьютер, а уже затем его распечатать. А нельзя ли это сделать напрямую, то есть подключить карманный компьютер непосредственно к принтеру при помощи USB-соединителя и распечатать файл? Оказывается, это возможно! В декабре 2001 года отраслевой консорциум Universal Serial Bus Implementers Forum, созданный с целью дальнейшего развития стандарта USB, выпустил дополнение к этому стандарту: USB On-The-Go (сокращенно OTG). Это дополнение позволило соединять устройства не через ПК, а непосредственно друг с другом. Например, музыкальные файлы можно переписать с МР3-плеера прямо на другой плеер, а цифровую камеру подключить прямо к принтеру.
С появлением USB On-The-Go возможности применения универсальной последовательной шины значительно возросли. Множество самых разных устройств теперь может взаимодействовать друг с другом без посредничества персонального компьютера. Некоторые комбинации из устройств, использующих непосредственное USB-соединение, приведены в табл. 2.
Управляющее устройство | Управляемое устройство | Применение |
Мобильный телефон | Мобильный телефон | Обмен контактной информацией (Vcard) |
Цифровая камера | Передача изображений | |
MP3 проигрыватель | Обмен звуковыми файлами | |
Хранилище информации | Обмен информацией | |
Карманный компьютер | Обмен контактной информацией (Vcard) | |
Цифровая камера | Цифровая камера | Обмен изображениями |
Мобильный телефон | Передача изображений | |
Принтер | Печать изображений | |
Хранилище информации | Сохранение изображений | |
Принтер | Цифровая камера | Печать изображений |
Сканер | Печать отсканированных изображений | |
Хранилище информации | Печать сохраненных изображений | |
МР3 проигрыватель | МР3 проигрыватель | Обмен звуковыми файлами |
Хранилище информации | Хранение звуковых файлов | |
Осциллограф | Принтер | Печать изображений с экрана осциллографа |
Карманный компьютер | Карманный компьютер | Обмен информацией |
Принтер | Распечатка файлов | |
Мобильный телефон | Обмен файлами | |
МР3 проигрыватель | Обмен звуковыми файлами | |
Сканер | Сканирование изображений | |
Хранилище информации | Обмен информацией | |
GPS-приемник | Получение координат | |
Цифровая камера | Копирование изображений | |
Осциллограф | Управление осциллографом | |
Клавиатура | Подключение устройства ввода информации |
После принятия дополнения USB On-The-Go многие производители электронных компонентов начали разработку соответствующих микросхем. Однако первым в этой области по праву может считаться Philips Semiconductors. Созданный им один из первых OTG-совместимых USB-контроллеров ISP 1161 стал своего рода катализатором, ускорившим процесс внедрения технологии OTG в реально существующие устройства.
Немаловажно отметить, что демонстрационная плата ISP 1161 была использована группой разработчиков стандарта OTG для проверки соответствия устройств других производителей требованиям этого стандарта.
Подробнее о реализации OTG от Philips можно прочитать на сайте компании по адресу:
http://www.semiconductors.philips.com/news/infocus/usb_otg/. В настоящее время у Philips Semiconductors есть целая линейка микросхем USB, перекрывающая все возможные применения. Это хорошо видно, если взглянуть на табл. 3.
Тип прибора | P / N | Применения в компьютерной технике | Применения в бытовой электронике | Телекоммуникационные применения |
USB 1.1 Трансивер |
— P11A — ISP1107 — ISP1105/6 |
Принтер, карманный компьютер | Цифровая камера, цифровой спутниковый тюнер | Модем, ADSL — маршрутизатор, сотовая связь |
USB 1.1 Устройство |
— D12 — ISP1181 |
Карманный компьютер,принтер, USB-диск | Цифровой музыкальный проигрыватель, цифровое ТВ, цифровой спутниковый тюнер | DECT, сотовая связь |
USB 1.1 Host/Device контроллер | — ISP1161 | Принтер, хранилище информации, карманный компьютер | Цифровая камера, цифровой музыкальный проигрыватель, цифровой спутниковый тюнер | Модем, маршрутизатор, домашняя информационная сеть |
USB 1.1 Концентратор |
— ISP1122A — ISP1123 |
USB концентратор, монитор,устройство для считывания смарт-карт | Игровая консоль, цифровой спутниковый тюнер | Модем, коммуникационный терминал |
USB 2.0 Трансивер | — ISP1501 | Внешнее хранилище информации, сканер, принтер, цифровая камера | Цифровая камера | |
USB 2.0 Устройство | — ISP1581 | Внешнее хранилище информации, сканер, принтер | Цифровой спутниковый тюнер | |
USB 2.0 Host контроллер | — ISP1561 | Материнская плата ПК, PCI-карта | ||
USB 2.0 Концентратор | — ISP1521 | Высокоскоростной концентратор | Игровая консоль, цифровой спутниковый тюнер |
Архитектура OTG принесла в стандарт USB много новшеств. При работе в режиме OTG устройства также как и в «обыкновенном» USB сохраняют роли «ведущего» и «ведомого», однако в таком соединении участвуют только эти два устройства. Вообще режим OTG поддерживает только соединения типа «точка — точка». Причем устройство, которое в режиме OTG играло роль «ведущего» в стандартном режиме становится обыкновенным «ведомым» USB-устройством. Это продемонстрировано на рисунках 2 и 3, где карманный компьютер, поддерживающий технологию OTG, сначала выступает в роли «ведущего» по отношению к принтеру, а затем при подключении к настольному компьютеру становится стандартным «ведомым» USB-устройством. Согласно спецификации USB On-The-Go различают 2 класса OTG устройств:
- Устройства, выполняющие двойную роль (могут быть как «ведомыми» так и «ведущими»)
- Только периферийные («ведомые») устройства.
Для первых характерно использование USB-соединителей типа «mini AB», поддержка протокола HNP (Host Negotiation Protocol), возможность питать шину током до 8 мА, а также инициализировать сессию связи («ведомое» устройство) или принимать запрос на установление сессии («ведущее» устройство) согласно протоколу SPR (Session Request Protocol).
Для вторых характерно использование USB-соединителей типа «mini B» или штекера типа «mini A» на кабеле, который идет к устройству. «Ведомые» устройства, в отличие от «ведущих», могут только инициализировать сессию связи. Также ведомое устройство может потреблять ток от шины USB не более 8 мА.
Здесь уместно рассказать о соединителях, используемых в устройствах OTG, тем более что выше уже упоминались некоторые из них. Вернемся немного назад к обыкновенному USB. Для соединения USB-устройств использовались соединители типа «A» прямоугольной формы (этот соединитель вставляется в компьютер) и соединители типа «В» квадратной формы (обычно вставляется в USB устройство). Схема такого соединения приведена на рис. 4.
К сожалению, использовать эту схему соединения в стандарте OTG полностью не удалось. Ведь для того, чтобы устройство могло быть «ведомым» и «ведущим» пришлось бы устанавливать сразу два соединителя (см. рис. 5).
Подобная проблема была решена просто и эффективно: конструкторы разработали единый материнский разъем «mini AB», устанавливаемый на устройство, поддерживающее стандарт OTG, а соединительный кабель на одном конце армирован разъемом типа «mini A», а на другом — «mini B». Конструкция подключения устроена таким образом, что находящееся на одном его конце OTG-устройство определяет, что оно играет роль «ведущего», а другое устройство, находящееся на противоположном конце кабеля, определяет что оно «ведомое». Это достигается при помощи одного дополнительного контакта в разъеме. На одном конце кабеля этот контакт соединен с землей и подает на вход устройства уровень логического ноля (режим «ведущего устройства»), а на другом конце кабеля соответствующий контакт соединен через резистор с +5 В и подает на вход другого устройства уровень логической единицы (режим «ведомого»). Это продемонстрировано на рис. 6
.
Таким образом, соединительный кабель определяет, в каких режимах будут работать подключенные к его концам устройства.
Для смены ролей «ведущего» и «ведомого» достаточно подключить кабель наоборот. Иллюстрация подобного случая приведена на рис. 7.
Для справедливости следует отметить, что устройства могут поменять режимы своей работы и при неизменном подключении кабеля (что допустимо в рамках HNP). Происходит это следующим образом (обозначения приведены согласно рис. 8): устройство [А] («ведущее») выставляет флаг «HNP Enable» устройству [В]. Затем устройство [A] освобождает шину. Обнаружив это, устройство [B] становится «ведущим». После этого устройство [A] подключает свой нагрузочный резистор на +5 В, индицируя, что готово исполнять роль «ведомого». Далее устройство [B] определяет устройство [A] как «ведомое», перезапускает его, присваивает ему идентификатор и использует. Типы кабелей и разъемов, используемых при OTG-соединении, приведены на рис. 9 и 10.
Для соединения устройств, поддерживающих OTG, с устройствами, оснащенными обыкновенными USB-разъемами, разработаны специальные переходники.
Заманчивое будущее
Несомненно, стандарт USB ожидают большие перспективы. Внедрение технологии OTG позволит значительно увеличить количество различных USB-устройств и расширить предоставляемые ими возможности. Наличие интерфейса USB является требованием к современным периферийным устройствам. USB все более широко используется в разработках для промышленных применений.
В то же время, для высокоскоростной передачи данных все более широко начинает использоваться стандарт IEEE-1394, имеющий скорость передачи данных 400 Мбит/с.
Основная сфера использования на сегодняшний день: интеграция между собой современной цифровой аудио-видеотехники, современных устройств хранения данных и компьютеров для их обработки. Также Philips Semiconductors разрабатывает решения для беспроводного IEEE-1394, используя патентованную технологию широкополосного ортогонального частотно разнесенного мультиплексирования (W-OFDM) в диапазоне 2,4 ГГц.