USB-порт | это... Что такое USB-порт? (original) (raw)
Основные сведения
Кабель USB состоит из 4 проводников - 2 проводника питания и 2 проводника данных в витой паре, и заземленной оплетки/экрана.
Кабели USB ориентированы, т.е. имеют физически разные наконечники "к устройству" и "к хосту". Возможна реализация USB устройства без кабеля, со встроенным в корпус наконечником "к хосту". Возможно и неразъемное встраивание кабеля в устройство, как в мышь (стандарт запрещает это для устройств full и high speed, но производители его нарушают). Существуют (хотя и запрещены стандартом) и пассивные USB удлинители, имеющие разъемы "от хоста" и "к хосту".
Шина строго ориентирована, имеет понятие "главное устройство" (хост, он же USB контроллер, обычно встроен в микросхему южного моста на материнской плате) и "периферийные устройства". Шина имеет древовидную топологию, посколько периферийным устройством может быть разветвитель (hub), в свою очередь имеющий несколько нисходящих разъемов "от хоста". Разветвитель есть сложное электронное устройство, пассивных разветвителей не бывает.
Соединение 2 компьютеров - или 2 периферийных устройств - пассивным USB кабелем невозможно. Существуют активные USB кабели для соединения 2 компьютеров, но они включают в себя сложную электронику, эмулирующую Ethernet адаптер, и требуют установки драйверов с обоих сторон.
Устройства могут быть запитаны от шины, но могут и требовать внешний источник питания. Поддерживается и "спячка" устройств и разветвителей по команде с шины со снятием основного питания при сохранении дежурного питания и пробуждением по команде с шины.
USB поддерживает "горячее" подключение и отключение устройств.
На логическом уровне устройство USB поддерживает транзакции приема и передачи данных. Каждый пакет каждой транзакции содержит в себе номер оконечной точки (endpoint) на устройстве. При подключении устройства драйверы в ядре ОС читают с устройства список оконечных точек и создают управляющие структуры данных для общения с каждой оконечной точкой устройства. Совокупность оконечной точки и структур данных в ядре ОС называется каналом (pipe).
Оконечные точки, а значит, и каналы, относятся к одному и 4 классов - поточный (bulk), управляющий (control), изохронный (isoch) и прерывание (interrupt). Низкоскоростные устройства, такие, как мышь, не могут иметь изохронные и поточные каналы.
Управляющий канал предназначен для обмена с устройством короткими пакетами "вопрос-ответ". Любое устройство имеет управляющий канал 0, который позволяет программному обеспечению ОС прочитать краткую информацию об устройстве, в т.ч. коды производителя и модели, используемые для выбора драйвера, и список других оконечных точек.
Канал прерывания позволяет доставлять короткие пакеты и в том, и в другом направлении, без получения на них ответа/подтверждения, но с гарантией времени доставки - пакет будет доставлен не позже, чем через N миллисекунд. Например, используется в устройствах ввода человеком (клавиатуры/мыши/джойстики).
Изохронный канал позволяет доставлять пакеты без гарантии доставки и без ответов/подтверждений, но с гарантированной скоростью доставки в N пакетов на один период шины (1 КГц у low и full speed, 8 КГц у high speed). Используется для передачи аудио и видео информации.
Поточный канал дает гарантию доставки каждого пакета, поддерживает автоматический временный приостанов передачи данных по нежеланию устройства (переполнение или опустошение буфера), но не дает гарантий скорости и задержки доставки. Используется, например, в принтерах и сканерах.
Время шины делится на периоды, в начале периода контроллер передает всей шине пакет "начало периода". Далее в течение периода передаются пакеты прерываний, потом изохронные в требуемом количестве, в оставшееся время в периоде передаются управляющие пакеты и в последнюю очередь поточные.
Активной стороной шины всегда является контроллер, передача пакета данных от устройства к контроллеру реализована как короткий вопрос контроллера и длинный, содержащий данные, ответ устройства. Расписание движения пакетов для каждого периода шины создается совместным усилием аппаратурые контроллера и ПО драйвера, для этого многие контроллеры используют крайне сложный DMA со сложной DMA-программой, формируемой драйвером.
Размер пакета для оконечной точки есть вшитая в таблицу оконечных точек устройства константа, изменению не подлежит. Он выбирается разрабочиком устройства из числа тех, что поддерживаются стандартом USB (степени двойки).
Версии спецификации
Предварительные версии
- USB 0.7: спецификация выпущена в ноябре 1994 года.
- USB 0.8: спецификация выпущена в декабре 1994 года.
- USB 0.9: спецификация выпущена в апреле 1995 года.
- USB 0.99: спецификация выпущена в августе 1995 года.
- USB 1.0 Release Candidate: спецификация выпущена в ноябре 1995 года.
USB 1.0
Спецификация выпущена в ноябре 1995 года.
Технические характеристики:
- два режима передачи данных:
- режим с высокой пропускной способностью (Full-Speed) — 12 Мбит/с
- режим с низкой пропускной способностью (Low-Speed) — 1,5 Мбит/с
- максимальная длина кабеля для режима с высокой пропускной способностью — 5 м [1]
- максимальная длина кабеля для режима с низкой пропускной способностью — 3 м [1]
- максимальное количество подключённых устройств (включая размножители) — 127
- возможно подключение устройств, работающих в режимах с различной пропускной способностью к одному контроллеру USB
- напряжение питания для периферийных устройств — 5 В
- максимальный ток, потребляемый периферийным устройством — 500 мА
USB 1.1
Спецификация выпущена в сентябре 1998 года. Исправлены проблемы и ошибки, обнаруженные в версии 1.0. Первая версия, получившая массовое распространение.
USB 2.0
Логотип USB 2.0 High Speed
Спецификация выпущена в апреле 2000 года.
USB 2.0 отличается от USB 1.1 введением режима Hi-speed.
Для устройств USB 2.0 регламентировано три режима работы:
- Low-speed, 10—1500 Кбит/c (используется для интерактивных устройств: клавиатуры, мыши, джойстики)
- Full-speed, 0,5—12 Мбит/с (аудио-, видеоустройства)
- Hi-speed, 25—480 Мбит/с (видеоустройства, устройства хранения информации)
Последующие модификации
Последующие модификации к спецификации USB публикуются в рамках Извещений об инженерных изменениях (англ. Engineering Change Notices — ECN). Самые важные из модификаций ECN представлены в наборе спецификаций USB 2.0 (англ. USB 2.0 specification package, доступном на сайте USB Implementers Forum.
- 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: извещение выпущено в октябре 2003 года.
- 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
USB OTG (аббр. от On-The-Go) — дальнейшее расширение спецификации USB 2.0, предназначенное для лёгкого соединения периферийных USB-устройств друг с другом без необходимости подключения к ПК. Например, цифровой фотоаппарат можно подключать к фотопринтеру напрямую, если они оба поддерживают стандарт USB OTG. К моделям КПК и коммуникаторов, поддерживающих USB OTG, можно подключать некоторые USB-устройства. Обычно это флэш-накопители, цифровые фотоаппараты, клавиатуры, мыши и другие устройства, не требующие дополнительных драйверов. Этот стандарт возник из-за резко возросшей в последнее время необходимости надёжного соединения различных USB-устройств без использования ПК. В данной спецификации устройства обходятся без персонального компьютера, то есть выступают как одноранговые приёмопередатчики (на самом деле только создаётся такое ощущение). В действительности же устройства определяют, какое из них будет мастер-устройством, а какое — подчиняемым. Одноранговый интерфейс USB существовать не может.
USB Wireless
Логотип USB wireless
USB wireless — технология USB (официальная спецификация доступна с мая 2005 года). Позволяет организовать беспроводную связь с высокой скоростью передачи информации (до 480 Мбит/с на расстоянии 3 метра и до 110 Мбит/с на расстоянии 10 метров).
23 июля 2007 года USB Implementers Forum (USB-IF) объявила о сертификации шести первых потребительских продуктов с поддержкой Wireless USB. [2]
USB 3.0
USB 3.0 находится на финальных стадиях разработки. Созданием USB 3.0 занимаются компании: Microsoft, Texas Instruments, NXP Semiconductors. В спецификации USB 3.0 разъёмы и кабели обновлённого стандарта будут физически и функционально совместимы с USB 2.0. Кабель USB 2.0 содержит в себе четыре линии — пару для приёма/передачи данных, одну — для питания и ещё одну — для заземления. В дополнение к ним USB 3.0 добавляет пять новых линий (в результате чего кабель стал гораздо толще), однако новые контакты расположены параллельно по отношению к старым на другом контактном ряду. Теперь можно будет с лёгкостью определить принадлежность кабеля к той или иной версии стандарта, просто взглянув на его разъём. Спецификация USB 3.0 повышает максимальную скорость передачи информации до 4,8 Гбит/с — что на порядок больше 480 Мбит/с, которые может обеспечить USB 2.0. USB 3.0 может похвастаться не только более высокой скоростью передачи информации, но и увеличенной силой тока с 500 мА до 900 мА. Отныне пользователь сможет не только подпитывать от одного хаба гораздо большее количество устройств, но и само аппаратное обеспечение, ранее поставлявшееся с отдельными блоками питания, избавится от них.
Финальная спецификация USB 3.0 появилась в 2008 году, а оборудование, поддерживающее новую спецификацию, появится в 2009—2010 годах.
Фирмой анонсирована предварительная версия программной модели контроллера USB 3.0.
Кабели и разъёмы USB 1.0 и 2.0
USB Тип В
USB Тип А
Спецификация 1.0 регламентировала два типа разъёмов: A — на стороне контроллера или концентратора USB и B — на стороне периферийного устройства. Впоследствии были разработаны миниатюрные разъёмы для применения USB в переносных и мобильных устройствах, получившие название Mini-USB. Новая версия миниатюрных разъёмов, называемых Micro-USB, была представлена USB Implementers Forum 4 января 2007 года.
Размеры разъёмов: USB Тип A — 4x12 мм, USB Тип B — 7x8 мм, USB mini A и USB mini B — 2x7 мм.
Micro USB Тип B
Mini USB Тип A (слева) и Mini USB Тип B (справа)
Существуют также разъёмы типа Mini-AB и Micro-AB с которыми соединяются соответствующие коннекторы как типа A, так и типа B.
В отличие от многих других стандартных типов разъёмов, для USB характерны долговечность и механическая прочность.
Сигналы USB передаются по двум проводам четырёхпроводного кабеля.
Размещение проводников
Номер контакта | Обозначение | Цвет провода |
---|---|---|
1 | V BUS | красный |
2 | D− | белый |
3 | D+ | зелёный |
4 | GND | чёрный |
Здесь GND — цепь «корпуса» для питания периферийных устройств, VBus — +5 В, так же для цепей питания. Данные передаются по проводам D+ и D− дифференциально (состояния 0 и 1 (в терминологии официальной документации diff0 и diff1 соответственно) определяются по разности потенциалов межу линиями более 0,2 В и при условии, что на одной из линий (D− в случае diff0 и D+ при diff1) потенциал относительно GND выше 2,8 В.[3] Дифференциальный способ передачи является основным, но не единственным (например, при инициализации устройство сообщает хосту о режиме, поддерживаемом устройством (Full-Speed или Low-Speed), подтягиванием одной из линий данных к V_BUS через резистор 1.5 кОм (D− для режима Low-Speed и D+ для режима Full-Speed, устройства, работающие в режиме Hi-Speed, ведут себя на этой стадии как устройства в режиме Full-Speed). Так же иногда вокруг провода присутствует волокнистая обмотка для защиты от физических повреждений.[4].
Коннектор USB 3.0 тип B
Коннектор USB 3.0 тип А
Кабели и разъёмы USB 3.0
Недостатки USB
Хотя пиковая пропускная способность USB 2.0 составляет 480 Мбит/с (60 Мбайт/с), на практике обеспечить пропускную способность, близкую к пиковой, не удаётся. Это объясняется достаточно большими задержками шины USB между запросом на передачу данных и собственно началом передачи. Например, шина FireWire хотя и обладает меньшей пиковой пропускной способностью 400 Мбит/с, что на 80 Мбит/с меньше, чем у USB 2.0, в реальности позволяет обеспечить бо́льшую пропускную способность для обмена данными с жёсткими дисками и другими устройствами хранения информации.
USB и FireWire/1394
Протокол USB storage, представляющий собой метод передачи команд
См. также
Источники
- ↑ 1 2 http://docs.info.apple.com/article.html?artnum=31116
- ↑ terralab.ru Wireless USB: первые шаги
- ↑ Гук М. Аппаратные средства IBM PC.-СПб:Питер,2000.-С.-708-723.-ISBN 5-88782-290-2
- ↑ Агуров П. В. Интерфейс USB. Практика использования и программирования.-СПб:БХВ-Петербург,2004.-576 с.-ISBN 5-94157-202-6
Ссылки
- USB Implementers Forum, Inc.
- USB 3.0 — уже в разработке
- USB 3.0. Новые подробности
- Фотографии разъёмов USB 3.0
- USB News (нем.)
- Распайка разъёма USB 1.1 и 2.0
- List of USB ID’s (Vendors, devices and interfaces) (англ.)
Литература
- Скотт Мюллер. Модернизация и ремонт ПК (глава 15 — Последовательный, параллельный и другие интерфейсы ввода/вывода — USB) = Upgrading and Repairing PCs. — 17 изд. — М.: «Вильямс», 2007. — С. 1016—1026. — ISBN 0-7897-3404-4
Микроконтроллеры | |||
---|---|---|---|
Архитектура | 8-bit MCS-51 • MCS-48 • AVR • Z8 • H8 • COP8 • 68HC08 • 68HC11 16-bit PIC24 • MAXQ • Nios • 68HC12 • 68HC16 32-bit ARM • PIC32MX • 683XX • M32R • | ||
Производители | Analog Devices • Fujitsu • Holtek • Infineon • MicroChip • Maxim • Parallax • Texas Instruments • Zilog | ||
Компоненты | Регистр • Прерывание • CPU • SRAM • Флеш-память • кварцевый резонатор • кварцевый генератор • RC-генератор • Корпус | ||
Периферия | Таймер • АЦП • ЦАП • Компаратор • ШИМ контроллер • Счётчик • LCD • Датчик температуры • Watchdog Timer | ||
Интерфейс | CAN • UART • USB • SPI • I²C • ОС | μClinux • BeRTOS • ChibiOS/RT • RTEMS • Unison • MicroC/OS-II • Программирование | Программатор • Ассемблер • MPLAB • AVR Studio • MCStudio |