Стандарты

USB

USB (Universal Serial Bus — «универсальная последовательная шина») — последовательный интерфейс для подключения периферийных устройств к вычислительной технике. Получил широчайшее распространение и фактически стал основным интерфейсом подключения периферии к бытовой цифровой технике.

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

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

  • Унификацию разъемов и кабелей
  • Нормирование энергопотребления
  • Протоколы обмена данными
  • Унификацию функциональности и драйверов устройств

USB 1.0

Спецификация выпущена 15 января 1996 года.

Технические характеристики:

  • два режима работы:
    • режим с низкой пропускной способностью (Low-Speed) — 1,5 Мбит/с
    • режим с высокой пропускной способностью (Full-Speed) — 12 Мбит/с
  • максимальная длина кабеля (без экрана) для режима Low-Speed — 3 м
  • максимальная длина кабеля (в экране) для режима Full-Speed — 5 м
  • максимальное количество подключённых устройств (включая размножители) — 127
  • возможно подключение «разноскоростных» периферийных устройств к одному контроллеру USB
  • напряжение питания для периферийных устройств — 5 В
  • максимальный ток, потребляемый периферийным устройством — 500 мА

USB 1.1

Спецификация выпущена в сентябре 1998 года. Исправлены проблемы и ошибки, обнаруженные в версии 1.0. Первая версия, получившая массовое распространение.

USB 2.0

Спецификация выпущена в апреле 2000 года.

USB 2.0 отличается от USB 1.1 введением режима High-speed (пометка на логотипе — «HI-SPEED»).

Для устройств USB 2.0 регламентировано три режима работы:

  • Low-speed, 10—1500 Кбит/c (клавиатуры, мыши, джойстики, геймпады)
  • Full-speed, 0,5—12 Мбит/с (аудио-, видеоустройства)
  • High-speed, 25—480 Мбит/с (видеоустройства, устройства хранения информации)

Последующие модификации

Последующие модификации к спецификации USB публикуются в рамках Извещений об инженерных изменениях (Engineering Change Notices — ECN). Самые важные из модификаций ECN представлены в наборе спецификаций USB 2.0 (USB 2.0 specification package)

  • Mini-B Connector ECN: извещение выпущено в октябре 2000 года.
  • Errata, начиная с декабря 2000: извещение выпущено в декабре 2000 года.
  • Pull-up/Pull-down Resistors ECN: извещение выпущено в мае 2002 года.
  • Errata, начиная с мая 2002: извещение выпущено в мае 2002 года.
  • Interface Associations ECN: извещение выпущено в мае 2003 года.
    • Были добавлены новые стандарты, позволяющие ассоциировать множество интерфейсов с одной функцией устройства.
  • Rounded Chamfer ECN: извещение выпущено в октябре 2002 года.
  • Unicode ECN: извещение выпущено в феврале 2005 года.
    • Данное ECN специфицирует, что строки закодированы с использованием UTF-16LE.
  • Inter-Chip USB Supplement: извещение выпущено в марте 2006 года.
  • On-The-Go Supplement 1.3: извещение выпущено в декабре 2006 года.
    • USB On-The-Go делает возможным связь двух USB-устройств друг с другом без отдельного USB-хоста. На практике одно из устройств играет роль хоста для другого.

USB OTG

USB OTG (On-The-Go) — дальнейшее расширение спецификации USB 2.0, предназначенное для лёгкого соединения периферийных USB-устройств друг с другом без необходимости подключения к ПК.

Например, цифровой фотоаппарат можно подключать к фотопринтеру напрямую, если они оба поддерживают стандарт USB OTG. К моделям КПК и коммуникаторов, поддерживающих USB OTG, можно подключать некоторые USB-устройства. Обычно это флеш-накопители, цифровые фотоаппараты, клавиатуры, мыши и другие устройства, не требующие дополнительных драйверов. Этот стандарт возник из-за резко возросшей в последнее время необходимости надёжного соединения различных устройств без использования ПК.

При подключении через USB OTG ранг устройства (ведущий или ведомый) определяется наличием или, соответственно, отсутствием перемычки между контактами 4 (ID) и 5 (Ground) в штекере соединительного кабеля. В USB OTG кабеле такая перемычка устанавливается на стороне ведущего (Тип А) устройства.

USB 3.0

Окончательная спецификация USB 3.0 появилась в 2008 году. Созданием USB 3.0 занимались компании Intel, Microsoft, Hewlett-Packard, Texas Instruments, NEC и NXP Semiconductors.

Спецификация USB 3.0 повышает максимальную скорость передачи информации до 5 Гбит/с — что на порядок больше 480 Мбит/с, которые может обеспечить USB 2.0. Таким образом, скорость передачи возрастает с 60 Мбайт/с (30 Мбайт/с эффективных) до 600 Мбайт/с.

Версия 3.0 отличается не только более высокой скоростью передачи информации, но и увеличенной силой тока с 500 мА до 900 мА. Таким образом, от одного порта можно запитывать большее количество устройств.

В спецификации USB 3.0 разъёмы и кабели обновлённого стандарта физически и функционально совместимы с USB 2.0, причём для однозначной идентификации разъёмы USB 3.0 принято изготавливать из пластика синего цвета (у некоторых производителей - красного цвета). Кабель USB 2.0 содержит в себе четыре линии — пару для приёма/передачи данных, плюс и ноль питания, разъём "A" имеет 4 контакта. Для передачи высокоскоростных SuperSpeed сигналов в USB 3.0 добавлено ещё четыре линии связи (две витые пары) и один контакт сигнальной земли (GND_DRAIN), в результате чего кабель стал гораздо толще. Новые контакты в разъёмах USB 3.0 расположены отдельно от старых в другом контактном ряду.

В октябре 2009 года появилась информация (от EE Times со ссылкой на сотрудника одной из крупнейших компаний по производству персональных компьютеров), что корпорация Intel решила повременить с внедрением поддержки USB 3.0 в свои чипсеты до 2011 года. Это решение привело к тому, что до 2011 года данный стандарт не стал массовым, так как пользователю было недостаточно просто купить материнскую плату, был необходим дополнительный адаптер.

Хост-контроллер USB 3.0 (xHCI) обеспечивает аппаратную поддержку потоков для команд, статусов, входящих и исходящих данных, что позволяет более полно использовать пропускную способность USB-шины. Потоки были добавлены к протоколу USB 3.0 SuperSpeed для поддержки UASP.

Linux поддерживает USB 3.0, начиная с версии ядра 2.6.31.

В Windows 8 и 10 интерфейс USB 3.0 поддерживается без установки дополнительных драйверов.

После выхода стандарта USB 3.1, организация USB-IF объявила, что разъемы USB 3.0 со скоростью до 5 Гбит/с (SuperSpeed), теперь будут классифицироваться как USB 3.1 Gen 1. А новые разъемы USB 3.1 со скоростью до 10 Гбит/с (SuperSpeed USB 10Gbps) как USB 3.1 Gen 2

USB 3.1

31 июля 2013 года USB 3.0 Promoter Group объявила о принятии спецификации следующего интерфейса, USB 3.1, скорость передачи которого может достигать 10 Гбит/с. Компактный разъём USB Type-C, используемый с данной версией, является симметричным, позволяя вставлять кабель любой стороной, как это ранее сделала Apple в разъёмах Lightning.

Пользователи получили возможность передавать данные со скоростью до 10 Гбит/с. Новый стандарт также позволяет в отдельных случаях передавать мощность до 100 Вт.

В USB 3.1 входит два стандарта:

  • SuperSpeed USB (USB 3.1 Gen 1) со скоростью до 5 Гбит/с, такой же как и USB 3.0.
  • SuperSpeed USB 10Gbps (USB 3.1 Gen 2) со скоростью до 10 Гбит/с, удвоенная USB 3.0.

В USB 3.1 Gen 2 помимо увеличения скорости до 10 Гбит/с, были снижены издержки кодирования до 3% переходом на схему кодирования 128b/132b.

Стандарт USB 3.1 обратно совместим с USB 3.0 и USB 2.0.

На практике первая реализация USB 3.1 в виде IP-блока от Synopsys показала в декабре 2013 года эффективную скорость передачи 7.2 Гбит/с (900 мегабайт в секунду).

Wireless USB

Wireless USB — технология USB (официальная спецификация доступна с мая 2005 года), позволяющая организовать беспроводную связь с высокой скоростью передачи информации (до 480 Мбит/с на расстоянии 3 метров и до 110 Мбит/с на расстоянии 10 метров).

23 июля 2007 года USB-IF объявила о сертификации шести первых потребительских продуктов с поддержкой Wireless USB.

Media Agnostic USB

В 2013 году была представлена спецификация MA-USB, позволяющая инкапсуляцию USB протокола в существующие каналы связы, включая WiFi и WiGig

Plug and Play

Разработчики спецификации USB уделили внимание вопросу автоматического определения функциональности USB устройств, чтобы избавить пользователя от рутинных действий при подключении USB устройств. Для этого в стандарте предусмотрено два механизма:

  • Устройство сообщает хосту свои атрибуты, куда входит идентификатор разработчика устройства (VID) и идентификатор изделия (PID). На основании этих идентификаторов хост (компьютер) ищет методы работы с этим устройством (обычно это выражается в требовании установить драйвера, поставляемые разработчиком устройства).
  • Устройство сообщает хосту идентификатор стандартизованного класса устройств. В рамках концепции USB разработан ряд спецификаций стандартных классов устройств, в рамках которых унифицирована работа с устройствами определенной функциональности. Например, широко известны устройства класса Human Interface Device, HID (это мышки, клавиатуры, игровые манипуляторы и т.п.) и устройства Mass Storage (флешки, дисководы). Для популярных классов устройств в компьютерах имеются готовые драйвера, поэтому подключение таких устройств происходит незаметно для пользователя.

Помимо стандартных решений USB, некоторые компании и энтузиасты предлагают иные решения. Например, в среде Windows популярны предустановленные драйвера WinUSB с доступным стороннему разработчику API.