USB
Вступление В 1995 стало понятно, что COM-порты не могут обеспечить - достаточную скорость обмена, у них отсутствует возможность "горячего" подключения устройств, есть ограничение на количество подключенных устройств к одному порту. Поэтому была разработана универсальная последовательная шина - USB (Universal Serial Bus), предложенная консорциумом компаний во главе с Intel. Однако до появления Windows 98 участники производства выжидали: производители комплектующих, пока компания Microsoft напишет качественные драйверы под Windows, а они, в свою очередь, реального появления достаточного количества оборудования. .
История развития Историю USB отсчитывают с ноября 1994 года, когда была разработана версия 0. 7, но фактическим началом победоносного шествия шины принято считать январь 1996, когда была опубликована спецификация USB 1. 0. Массовый выпуск устройств с интерфейсом USB начался с выходом версии 1. 1 (1998 год). 2002 год ознаменовался демонстрацией первых серийных образцов, высокоскоростной шины USB 2. 0(до 450 Мбит/с ).
В настоящий момент анонсирован выход сразу двух новых вариантов USB: USB 3. 0. Новый интерфейс, спецификации которого обнародовала Intel совместно с другими, лидирующими в компьютерной отрасли компаниями. Он позволяет передавать данные со скоростью до 5 Гбит/сек. Это почти в 10 раз быстрее теоретически достижимой скорости для интерфейса USB 2. 0. При этом USB 3. 0 обратно совместим с существующими USB 2. 0 и более ранними версиями. Кроме того, использование нового интерфейса позволит снизить энергозатраты при передаче данных. Одна из главных целей разработчиков – уравнять скорость передачи данных со скоростью чтения информации с чипов флэш-памяти. С этой целью будут использоваться новые кабели на базе оптоволокна до 2 м длиной.
- Wireless USB 1. 1. Это новый стандарт. Авторы беспроводной концепции USB обещают скорость обмена данными между устройствами "по воздуху" от 53, 3 до 480 Мбит/с на расстояниях до 10 метров. В следующих версиях стандарта Wireless USB планируется преодолеть психологический барьер 1 Гбит/с. Главные особенности технологии, такие как работа на малых расстояниях (до нескольких сантиметров) и автоматическая настройка связи между устройствами, позволяют использовать её для бесконтактной идентификации и коммуникации различных портативных и стационарных электронных устройств.
Общая характеристика ►USB( Universal Serial Bus - универсальная последовательная шина) является промышленным стандартом расширения архитектуры РС, ориентированным на интеграцию с телефонией и устройствами бытовой электроники. ° Простота кабельной системы подключений. ° Изоляция подробностей электрических подключений от пользователя.
►Основные привлекательные черты USB (с точки зрения конечного пользователя): ° Самоидентифицирующаяся периферия, автоматическая связь устройств с драйверами и конфигурирование. ° Возможность динамического подключения и реконфигурирования периферии.
► Основные привлекательные черты USB (с точки зрения реализации): ° Легко реализуемое расширение периферии. ° Дешевое решение, поддерживающее скорость передачи до 450 Мбит/с – в версии 2. 0. ° Полна поддержка в реальном времени передачи аудио и сжатых видео данных. ° Интеграция в технологию выпускаемых устройств. ° Доступность в РС всех конфигураций и размеров. ° Открытие новых классов устройств, расширяющих РС.
Топология Такой иконой официально обозначается шина USB на задних стенках компьютеров, а также на всех разъемах USB. Эта икона на самом деле правильно отображает идею топологии USB. Топология USB практически не отличается от топологии обычной локальной сети на витой паре, обычно называемой "звездой". Даже терминология похожа - размножители шины также называются HUB'ами.
Условно дерево подключения USB устройств к компьютеру можно изобразить так Вместо любого из устройств может также стоять HUB. Основное отличие от топологии обычной локальной сети - компьютер (или host устройство) может быть только один. HUB может быть как отдельным устройством с собственным блоком питания, так и встроенным в периферийное устройство.
Логически устройство подключенной к любому хабу и сконфигурированное может рассматриваться как подключенное напрямую к хост-контроллеру.
USB обеспечивает обмен данными между хосткомпьютером и множеством одновременно доступных периферийных устройств. Распределение пропускной способности шины между подключенными устройствами планируется хостом и реализуется им с помощью посылки маркеров. Шина позволяет подключать, конфигурировать, использовать и отключать устройства во время работы хоста и самих устройств - динамическое ("горячее") подключение и отключение.
Устройство USB должно иметь интерфейс USB, обеспечивающий поддержку протокола USB, выполнение стандартных операций(конфигурирование и сброс) и стандартное представление информации, описывающей устройство. Многие устройства, подключаемые к USB, имеют в своем составе хабы. Работой всей системы USB управляет хостконтроллер. являющийся программно-аппаратной подсистемой хост-компьютера.
Физическое соединение устройств осуществляется по топологии многоярусной звезды. Центром каждой звезды является хаб, каждый кабельный сегмент соединяет две точки - хаб с другим хабом или хаб с функцией. В системе USB имеется только один хост-контроллер, расположенный в вершине пирамиды устройств и хабов USB. Хост-контроллер интегрируется с корневым хабом( root hub), обеспечивающим одну или несколько точек подключения портов. Контроллер USB, входящий в состав чипсетов многих современных системных плат обычно имеет двухпортовый хаб.
"Функции" представляют собой устройства USB, способные принимать или передавать данные или управляющую информацию по шине. Физически в одном корпусе может быть несколько "функций" со встроенным хабом обеспечивающим их подключение к одному порту.
Каждая "функция" предоставляет конфигурационную информацию, описывающую его возможности и требования к ресурсам. Перед использованием функция должна быть сконфигурирована хостом - ей должна быть выделена полоса в канале выбраны специфические опции конфигурации.
Хаб - ключевой элемент системы Plugand-Play в архитектуре USB. Хаб является кабельным концентратором, точки подключения называются портами хаба. Каждый хаб преобразует одну точку подключения в их множество. Архитектура подразумевает возможность соединения нескольких хабов.
У каждого хаба имеется один восходящий порт( upstream port), предназначенный для подключения к хосту и ли к хабу верхнего уровня. Остальные порты являются нисходящими (downstream) и предназначены для подключения функций и хабов нижнего уровня. Хаб может распознать подключение или отклю-чение устройств к этим портам и управлять подачей питания на их сегменты. Каждый из этих портов индивидуально может быть разрешен или запрещен и сконфигурирован на полную или ограниченную скорость обмена.
Система USB разделяется на три уровня с определенными правилами взаимодействия. Устройство USB делится на интерфейсную часть, часть устройства и функциональную часть. Хост тоже делится на три части интерфейсную, системную и ПО устройства. Каждая часть отвечает только за определенный круг задач.
Кабели и разъёмы Сигналы USB передаются по 4 -х схематично показанному на рисунке ниже: проводному кабелю, GND - цепь "корпуса" для питания периферийных устройств, VBus - +5 V также для цепей питания. Шина D+ предназначена для передачи данных по шине, а шина D- для приема данных. Кабель для поддержки полной скорости шины (full-speed) выполняется как витая пара, защищается экраном и может также использоваться для работы в режиме минимальной скорости (lowspeed). Кабель для работы только на минимальной скорости (например, для подключения мыши) может быть любым и неэкранированным.
Разъемы, используемые для подключения периферийных устройств, показаны на рисунке ниже.
USB разъемы имеют следующую нумерацию контактов:
Модель передачи данных С точки зрения данных, каждое устройство USB представляет собой совокупность независимых конечных точек, с которыми хост-контроллер может обмениваться информацией. Конечные точки описываются следующими параметрами: ° Требуемая частота доступа к шине и допустимые задержки обслуживания. ° Требуемая полоса пропускания канала. ° Номер точки. ° Требования к обработке ошибок. ° Максимальные размеры передаваемых и принимаемых пакетов. ° Направление обмена.
Модель передачи данных Каждое устройство обязательно имеет конечную точку с номером 0, используемую для инициализации и общего управления логическим устройством, а так же опроса его состояния. Эта точка всегда сконфигурирована при включении питания и подключении устройства к шине и поддерживает передачи типа "управление".
Типы передачи данных В архитектуре USB существуют четыре типа передаваемых данных: 1. Управляющие посылки (Control transfers)используются для конфигурирования во время подключения и в процессе работы для управления устройствами. Протокол обеспечивает гарантированную доставку данных. Длина поля данных управляющей посылки не превышает 64 байт для полной скорости и 8 байт для низкой.
2. Сплошные передачи (Bulk Data Transfer) сравнительно больших пакетов без жестких требований ко времени доставки. Приоритет этих передач самый низкий, они могут приостановиться при большой загрузке шины. Допускаются только на полной скорости передачи. 3. Прерывания (Interrupts) - короткие (до 64 байт на полной скорости и до 8 на низкой ) передачи типа вводимых символов или координат. Прерывания имеют спонтанный характер и должны обслуживаться не медленнее чем того требует устройство.
4. Изохронные передачи - непрерывные передачи в реальном времени, занимающие предварительно согласованную часть пропускной способности шины и имеющие заданную задержку доставки. В случае обнаружения ошибки изохронные данные передаются без повтора - недействительные пакеты просто игнорируются. Полоса пропускания шины делится между всеми установленными каналами. Изохронные передачи классифицируются по способу синхронизации конечных точек с системой: различают асинхронный, синхронный и адаптивный классы устройств, каждому из которых соответствует свой тип канала USB.