Универсальные последовательные периферийные шины. Универсальная последовательная шина


Лекция 11 Универсальная последовательная шина USB

Лекция 11. Универсальная последовательная шина USB.

Толковый словарь по вычислительным системам определяет понятие интерфейс (interface) как границу раздела двух систем, устройств или программ; элементы соединения и вспомогательные схемы управления, используемые для соединения устройств. Мы же поговорим о интерфейсах, позволяющих подключать к персональным (и не только) компьютерам разнообразные периферийные устройства и их контроллеры. По способу передачи информации интерфейсы подразделяются на параллельные и последовательные. В параллельном интерфейсе все биты передаваемого слова (обычно байта) выставляются и передаются по соответствующим параллельно идущим проводам одновременно. В PC традиционно используется параллельный интерфейс Centronics, реализуемый LPT-портами. В последовательном же интерфейсе биты передаются друг за другом, обычно по одной линии. СОМ порты PC обеспечивают последовательный интерфейс в соответствии со стандартом RS-232C. При рассмотрении интерфейсов важным параметром является пропускная способность.

В архитектуре современных компьютеров все большее значение приобретают внешние шины, служащие для подключения различных устройств. Сегодня это могут быть, например, внешние жесткие диски, CD-, DVD-устройства, сканеры, принтеры, цифровые камеры и прочее.

Широко используемый последовательный интерфейс синхронной и асинхронной передачи данных.

2.Шина USB.Общая характеристика.

USB (Universal Serial Bus — универсальная последовательная шина) является промышленным стандартом расширения архитектуры PC, ориентированным на интеграцию с телефонией и устройствами бытовой электроники. Версия 1.0 была опубликована в январе 1996 года. Архитектура USB определяется следующими критериями:

  • Легко реализуемое расширение периферии PC.

  • Дешевое решение, поддерживающее скорость передачи до 12 Mбит/с.

  • Полная поддержка в реальном времени передачи аудио и (сжатых) видеоданных.

  • Гибкость протокола смешанной передачи изохронных данных и асинхронных сообщений.

  • Интеграция с выпускаемыми устройствами.

  • Доступность в PC всех конфигураций и размеров.

  • Обеспечение стандартного интерфейса, способного быстро завоевать рынок.

  • Создание новых классов устройств, расширяющих PC.

  • С точки зрения конечного пользователя, привлекательны следующие черты USB:

  • Простота кабельной системы и подключений.

  • Скрытие подробностей электрического подключения от конечного пользователя.

  • Самоидентифицирующиеся ПУ, автоматическая связь устройств с драйверами и конфигурирование.

  • Возможность динамического подключения и конфигурирования ПУ.

С середины 1996 года выпускаются PC со встроенным контроллером USB, реализуемым чипсетом. Уже появились модемы, клавиатуры, сканеры, динамики и другие устройства ввода/вывода с поддержкой USB, а также мониторов с USB-адаптерами - они играют роль концентраторов для подключения других устройств.

Структура USB

USB обеспечивает одновременный обмен данными между хост-компьютером и множеством периферийных устройств (ПУ). Распределение пропускной способности шины между ПУ планируется хостом и реализуется им с помощью посылки маркеров. Шина позволяет подключать, конфигурировать, использовать и отключать устройства во время работы хоста и самих устройств.

Ниже приводится авторский вариант перевода терминов из спецификации "Universal Serial Bus Specification", опубликованной Compaq, DEC, IBM, Intel, Microsoft, NEC и Northern Telecom. Более подробную и оперативную информацию можно найти по адресу:

Устройства (Device) USB могут являться хабами, функциями или их комбинацией. Хаб (Hub) обеспечивает дополнительные точки подключения устройств к шине. Функции (Function) USB предоставляют системе дополнительные возможности, например подключение к ISDN, цифровой джойстик, акустические колонки с цифровым интерфейсом и т. п. Устройство USB должно иметь интерфейс USB, обеспечивающий полную поддержку протокола USB, выполнение стандартных операций (конфигурирование и сброс) и предоставление информации, описывающей устройство. Многие устройства, подключаемые к USB, имеют в своем составе и хаб, и функции. Работой всей системы USB управляет хост-контроллер (Host Controller), являющийся программно-аппаратной подсистемой хост-компьютера.

Физическое соединение устройств осуществляется по топологии многоярусной звезды. Центром каждой звезды является хаб, каждый кабельный сегмент соединяет две точки - хаб с другим хабом или с функцией. В системе имеется один (и только один) хост-контроллер, расположенный в вершине пирамиды устройств и хабов. Хост-контроллер интегрируется с корневым хабом (Root Hub), обеспечивающим одну или несколько точек подключения - портов. Контроллер USB, входящий в состав чипсетов, обычно имеет встроенный двухпортовый хаб. Логически устройство, подключенное к любому хабу USB и сконфигурированное (см. ниже), может рассматриваться как непосредственно подключенное к хост-контроллеру.

Функции представляют собой устройства, способные передавать или принимать данные или управляющую информацию по шине. Типично функции представляют собой отдельные ПУ с кабелем, подключаемым к порту хаба. Физически в одном корпусе может быть несколько функций со встроенным хабом, обеспечивающим их подключение к одному порту. Эти комбинированные устройства для хоста являются хабами с постоянно подключенными устройствами-функциями.

Каждая функция предоставляет конфигурационную информацию, описывающую возможности ПУ и требования к ресурсам. Перед использованием функция должна быть сконфигурирована хостом - ей должна быть выделена полоса в канале и выбраны опции конфигурации.

Примерами функций являются:

  • Указатели - мышь, планшет, световое перо.

  • Устройства ввода - клавиатура или сканер.

  • Устройство вывода - принтер, звуковые колонки (цифровые).

  • Телефонный адаптер ISDN.

Хаб - ключевой элемент системы РпР в архитектуре USB. Хаб является кабельным концентратором. Точки подключения называются портами хаба. Каждый хаб преобразует одну точку подключения в их множество. Архитектура допускает соединение нескольких хабов.

У каждого хаба имеется один восходящий порт (Upstream Port), предназначенный для подключения к хосту или хабу верхнего уровня. Остальные порты являются нисходящими (Downstream Ports), предназначенными для подключения функций или хабов нижнего уровня. Хаб может распознать подключение устройств к портам или отключение от них и управлять подачей питания на их сегменты. Каждый из портов может быть разрешен или запрещен и сконфигурирован на полную или ограниченную скорость обмена. Хаб обеспечивает изоляцию сегментов с низкой скоростью от высокоскоростных.

Хабы могут управлять подачей питания на нисходящие порты; предусматривается установка ограничения на ток, потребляемый каждым портом.

Система USB разделяется на три уровня с определенными правилами взаимодействия. Устройство USB содержит интерфейсную часть, часть устройства и функциональную часть. Хост тоже делится на три части - интерфейсную, системную и ПО устройства. Каждая часть отвечает только за определенный круг задач, логическое и реальное взаимодействие между ними иллюстрирует рис. 7.1.

В рассматриваемую структуру входят следующие элементы:

  • Физическое устройство USB - устройство на шине, выполняющее функции, интересующие конечного пользователя.

  • Client SW - ПО, соответствующее конкретному устройству, исполняемое на хост-компьютере. Может являться составной частью ОС или специальным продуктом.

  • USB System SW - системная поддержка USB, независимая от конкретных устройств и клиентского ПО.

  • USB Host Controller - аппаратные и программные средства для подключения устройств USB к хост-компьютеру.

3.Физический интерфейс

Стандарт USB определяет электрические и механические спецификации шины. Информационные сигналы и питающее напряжение 5 В передаются по четырехпроводному кабелю. Используется дифференциальный способ передачи сигналов D+ и D- по двум проводам. Уровни сигналов передатчиков в статическом режиме должны быть ниже 0,3 В (низкий уровень) или выше 2,8 В (высокий уровень). Приемники выдерживают входное напряжение в пределах - 0,5...+3,8 В. Передатчики должны уметь переходить в высокоимпедансное состояние для двунаправленной полудуплексной передачи по одной паре проводов.

Передача по двум проводам в USB не ограничивается дифференциальными сигналами. Кроме дифференциального приемника каждое устройство имеет линейные приемники сигналов D+ и D-, а передатчики этих линий управляются индивидуально. Это позволяет различать более двух состояний линии, используемых для организации аппаратного интерфейса. Состояния Diff0 и Diff1 определяются по разности потенциалов на линиях D+ и D- более 200 мВ при условии, что на одной из них потенциал выше порога срабатывания VSE. Состояние, при котором на обоих входах D+ и D- присутствует низкий уровень, называется линейным нулем (SEO - Single-Ended Zero). Интерфейс определяет следующие состояния:

  • Data J State и Data К State - состояния передаваемого бита (или просто J и К), определяются через состояния Diff0 и Diff1.

  • Idle State - пауза на шине.

  • Resume State - сигнал "пробуждения" для вывода устройства из "спящего" режима.

  • Start of Packet (SOP) - начало пакета (переход из Idle State в К).

  • End of Packet (EOP) - конец пакета.

  • Disconnect - устройство отключено от порта.

  • Connect - устройство подключено к порту.

  • Reset - сброс устройства.

Состояния определяются сочетаниями дифференциальных и линейных сигналов; для полной и низкой скоростей состояния DiffO и Diff1 имеют противоположное назначение.В декодировании состояний Disconnect, Connect и Reset учитывается время нахождения линий (более 2,5 мс) в определенных состояниях.

Шина имеет два режима передачи. Полная скорость передачи сигналов USB составляет 12 Мбит/с, низкая - 1,5 Мбит/с. Для полной скорости используется экранированная витая пара с импедансом 90 Ом и длиной сегмента до 5 м, для низкой - невитой неэкранированньгй кабель до 3 м. Низкоскоростные кабели и устройства дешевле высокоскоростных. Одна и та же система может одновременно использовать оба режима; переключение для устройств осуществляется прозрачно.

Низкая скорость предназначена для работы с небольшим количеством ПУ, не требующих высокой скорости. Скорость, используемая устройством, подключенным к конкретному порту, определяется хабом по уровням сигналов

на линиях D+ и D-, смещаемых нагрузочными резисторами R2 приемопередатчиков (см. рис. 7.2 и 7.3)

Сигналы синхронизации кодируются вместе с данными по методу NRZI (Non Return to Zero Invert), его работу иллюстрирует рис. 7.4. Каждому пакету предшествует поле синхронизации SYNC, позволяющее приемнику настроиться на частоту передатчика. Кабель также имеет линии VBus и GND для передачи питающего напряжения 5 В к устройствам.

Сечение проводников выбирается в соответствии с длиной сегмента для обеспечения гарантированного уровня сигнала и питающего напряжения. Стандарт определяет два типа разъемов (см. табл. 7.1 и рис. 7.5).

Разъемы типа "А" применяются для подключения к хабам (Upstream Connector). Вилки устанавливаются на кабелях, не отсоединяемых от устройств (например, клавиатура, мышь и т. п.). Гнезда устанавливаются на нисходящих портах (Downstream Port) хабов. Разъемы типа "В" (Downstream Connector) устанавливаются на устройствах, от которых соединительный кабель может отсоединяться (принтеры и сканеры). Ответная часть (вилка) устанавливается на соединительном кабеле, противоположный конец которого имеет вилку типа "А".

Разъемы типов "А" и "В" различаются механически (рис. 7.5), что исключает недопустимые петлевые соединения портов хабов. Четырехконтактные разъемы имеют ключи, исключающие неправильное присоединение. Конструкция разъемов обеспечивает позднее соединение и раннее отсоединение сигнальных цепей по сравнению с питающими. Для распознавания разъема USB на корпусе устройства ставится стандартное символическое обозначение.

Рис. 7.5. Гнезда USB: а - типа "А", б - типа "В", в - символическое обозначение

Питание устройств USB возможно от кабеля (Bus-Powered Devices) или от собственного блока питания (Self-Powered Devices). Хост обеспечивает питанием непосредственно подключенные к нему ПУ. Каждый хаб, в свою очередь, обеспечивает питание устройств, подключенных к его нисходящим портам. При некоторых ограничениях топологии допускается применение хабов, питающихся от шины. На рис. 7.6 приведен пример схемы соединения устройств USB.

Здесь клавиатура, перо и мышь могут питаться от шины.

USB поддерживает как однонаправленные, так и двунаправленные режимы связи. Передача данных производится между ПО хоста и конечной точкой устройства. Устройство может иметь несколько конечных точек, связь с каждой из них (канал) устанавливается независимо.

Архитектура USB допускает четыре базовых типа передачи данных:

  • Управляющие посылки (Control Transfers), используемые для конфигурирования во время подключения и в процессе работы для управления устройствами. Протокол обеспечивает гарантированную доставку данных. Длина поля данных управляющей посылки не превышает 64 байт на полной скорости и 8 байт на низкой.

  • Сплошные передачи (Bulk Data Transfers) сравнительно больших пакетов без жестких требований ко времени доставки. Передачи занимают всю свободную полосу пропускания шины. Пакеты имеют поле данных размером 8, 16, 32 или 64 байт. Приоритет этих передач самый низкий, они могут приостанавливаться при большой загрузке шины. Допускаются только на полной скорости передачи.

  • Прерывания (Interrupt) - короткие (до 64 байт на полной скорости, до 8 байт на низкой) передачи типа вводимых символов или координат. Прерывания имеют спонтанный характер и должны обслуживаться не медленнее, чем того требует устройство. Предел времени обслуживания устанавливается в диапазоне 1-255 мс для полной скорости и 10-255 мс - для низкой.

  • Изохронные передачи (Isochronous Transfers) - непрерывные передачи в реальном времени, занимающие предварительно согласованную часть пропускной способности шины и имеющие заданную задержку доставки. В случае обнаружения ошибки изохронные данные передаются без повтора - недействительные пакеты игнорируются. Пример - цифровая передача голоса. Пропускная способность определяется требованиями к качеству передачи, а задержка доставки может быть критичной, например, при реализации телеконференций.

Полоса пропускания шины делится между всеми установленными каналами. Выделенная полоса закрепляется за каналом, и если установление нового канала требует такой полосы, которая не вписывается в уже существующее распределение, запрос на выделение канала отвергается.

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

Изохронные передачи классифицируются по способу синхронизации конечных точек - источников или получателей данных - с системой: различают асинхронный, синхронный и адаптивный классы устройств, каждому из которых соответствует свой тип канала USB.

Протокол

Все обмены (транзакции) по USB состоят из трех пакетов. Каждая транзакция планируется и начинается по инициативе контроллера, который посылает пакет-аркер (Token Packet). Он описывает тип и направление передачи, адрес ус-тройства USB и номер конечной точки. В каждой транзакции возможен обмен только между адресуемым устройством (его конечной точкой) и хостом. Адресуемое маркером устройство распознает свой адрес и готовится к обмену. Источник данных (определенный маркером) передает пакет данных (или уведомление об отсутствии данных, предназначенных для передачи). После успешного приема пакета приемник данных посылает пакет подтверждения (Handshake Packet).

Планирование транзакций обеспечивает управление поточными каналами. На аппаратном уровне использование отказа от транзакции (NAck) при недопустимой интенсивности передачи предохраняет буферы от переполнения сверху и снизу. Маркеры отвергнутых транзакций повторно передаются в свободное для шины время. Управление потоками позволяет гибко планировать обслуживание одновременных разнородных потоков данных.

Устойчивость к ошибкам обеспечивают следующие свойства USB:

  • Высокое качество сигналов, достигаемое благодаря дифференциальным приемникам/передатчикам и экранированным кабелям.

  • Защита полей управления и данных CRC-кодами.

  • Обнаружение подключения и отключения устройств и конфигурирование ресурсов на системном уровне.

  • Самовосстановление протокола с тайм-аутом при потере пакетов.

  • Управление потоком для обеспечения изохронности и управления аппаратными буферами.

  • Независимость функций от неудачных обменов с другими функциями.

Для обнаружения ошибок передачи каждый пакет имеет контрольные поля CRC-кодов, позволяющие обнаруживать все одиночные и двойные битовые ошибки. Аппаратные средства обнаруживают ошибки передачи, а контроллер автоматически производит трехкратную попытку передачи. Если повторы безуспешны, сообщение об ошибке передается клиентскому ПО.

Устройства USB - функции и хабы

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

Конфигурирование устройств, выполняемое хостом, является необходимым для их использования. Для конфигурирования обычно используется информация, считанная из самого устройства. Устройство может иметь множество интерфейсов, каждому из которых соответствует собственная конечная точка, представляющая хосту функцию устройства. Интерфейс в конфигурации может иметь альтернативные наборы характеристик; смена наборов поддерживается протоколом. Для поддержки адаптивных драйверов дескрипторы устройств и интерфейсов имеют поля класса, подкласса и протокола.

Передача данных возможна посредством одного из четырех типов передач (см. выше). Для конечных точек, допускающих разные типы передач, после конфигурирования доступен только один из них.

Управление энергопотреблением является весьма развитой функцией USB. Для устройств, питающихся от шины, мощность ограничена. Любое устройство при подключении не должно потреблять от шины ток, превышающий 100 мА. Рабочий ток (не более 500 мА) заявляется в конфигурации, и если хаб не сможет обеспечить устройству заявленный ток, оно не конфигурируется и, следовательно, не может быть использовано.

Устройство USB должно поддерживать приостановку (Suspended Mode), в котором его потребляемый ток не превышает 500 мкА. Устройство должно автоматически приостанавливаться при прекращении активности шины.

Возможность удаленного пробуждения (Remote Wakeup) позволяет приостановленному устройству подать сигнал хосткомпьютеру, который тоже может находиться в приостановленном состоянии. Возможность удаленного пробуждения описывается в конфигурации устройства. При конфигурировании эта функция может быть запрещена.

Хаб в USB выполняет коммутацию сигналов и выдачу питающего напряжения, а также отслеживает состояние подключенных к нему устройств, уведомляя хост об изменениях. Хаб состоит из двух частей - контроллера (Hub Controller) и повторителя (Hub Repeater). Повтори Повторитель представляет собой управляемый ключ, соединяющий выходной порт со входным. Он имеет средства поддержки сброса и приостановки передачи сигналов. Контроллер содержит регистры для взаимодействия с хостом. Доступ к регистрам осуществляется по специфическим командам обращения к хабу. Команды позволяют конфигурировать хаб, управлять нисходящими портами и наблюдать их состояние.

Нисходящие (Downstream) порты хабов могут находиться в следующих состояниях:

  • Powered (питание отключено) - на порт не подается питание (возможно только для хабов, коммутирующих питание). Выходные буферы переводятся в высокоимпедансное состояние, входные сигналы игнорируются.

  • Disconnected (отсоединен) - порт не передает сигналы ни в одном направлении, но способен обнаружить подключение устройства (по отсутствию состояния SEO в течение 2,5 мкс). Тогда порт переходит в состояние Disabled, а по уровням входных сигналов {DiffO или Diff1 в состоянии Idle) он определяет скорость подключенного устройства.

  • Disabled (запрещен) - порт передает только сигнал сброса (по команде от контроллера), сигналы от порта (кроме обнаружения отключения) не воспринимаются. По обнаружении отключения (2,5 мкс состояния SEO) порт переходит в состояние Disconnect, а если отключение обнаружено "спящим" хабом, контроллеру будет послан сигнал Resume.

  • Enabled (разрешен) - порт передает сигналы в обоих направлениях. По команде контроллера или по обнаружении ошибки кадра порт переходит в состояние Disabled, а по обнаружении отключения - в состояние Disconnect.

  • Suspended (приостановлен) - порт передает сигнал перевода в состояние останова ("спящий" режим). Если хаб находится в активном состоянии, сигналы через порт не пропускаются ни в одном направлении. Однако "спящий" хаб воспринимает сигналы смены состояния незапрещенных портов, подавая "пробуждающие" сигналы от активизировавшегося устройства даже через цепочку "спящих" хабов. Состояние каждого порта идентифицируется контроллером хаба с помощью отдельных регистров. Имеется общий регистр, биты которого отражают факт изменения состояния каждого порта (фиксируемый во время EOF). Это позволяет хост-контроллеру быстро узнать состояние хаба, а в случае обнаружения изменений специальными транзакциями уточнить состояние.

textarchive.ru

Лекция 14. Универсальная последовательная шина usb.

Толковый словарь по вычислительным системам определяет понятие интерфейс (interface) как границу раздела двух систем, устройств или программ; элементы соединения и вспомогательные схемы управления, используемые для соединения устройств. Мы же поговорим о интерфейсах, позволяющих подключать к персональным (и не только) компьютерам разнообразные периферийные устройства и их контроллеры. По способу передачи информации интерфейсы подразделяются на параллельные и последовательные. В параллельном интерфейсе все биты передаваемого слова (обычно байта) выставляются и передаются по соответствующим параллельно идущим проводам одновременно. В PC традиционно используется параллельный интерфейс Centronics, реализуемый LPT-портами. В последовательном же интерфейсе биты передаются друг за другом, обычно по одной линии. СОМ порты PC обеспечивают последовательный интерфейс в соответствии со стандартом RS-232C. При рассмотрении интерфейсов важным параметром является пропускная способность.

В архитектуре современных компьютеров все большее значение приобретают внешние шины, служащие для подключения различных устройств. Сегодня это могут быть, например, внешние жесткие диски, CD-, DVD-устройства, сканеры, принтеры, цифровые камеры и прочее.

Широко используемый последовательный интерфейс синхронной и асинхронной передачи данных.

2.Шина usb.Общая характеристика.

USB (Universal Serial Bus — универсальная последовательная шина) является промышленным стандартом расширения архитектуры PC, ориентированным на интеграцию с телефонией и устройствами бытовой электроники. Версия 1.0 была опубликована в январе 1996 года. Архитектура USB определяется следующими критериями:

  • Легко реализуемое расширение периферии PC.

  • Дешевое решение, поддерживающее скорость передачи до 12 Mбит/с.

  • Полная поддержка в реальном времени передачи аудио и (сжатых) видеоданных.

  • Гибкость протокола смешанной передачи изохронных данных и асинхронных сообщений.

  • Интеграция с выпускаемыми устройствами.

  • Доступность в PC всех конфигураций и размеров.

  • Обеспечение стандартного интерфейса, способного быстро завоевать рынок.

  • Создание новых классов устройств, расширяющих PC.

  • С точки зрения конечного пользователя, привлекательны следующие черты USB:

  • Простота кабельной системы и подключений.

  • Скрытие подробностей электрического подключения от конечного пользователя.

  • Самоидентифицирующиеся ПУ, автоматическая связь устройств с драйверами и конфигурирование.

  • Возможность динамического подключения и конфигурирования ПУ.

С середины 1996 года выпускаются PC со встроенным контроллером USB, реализуемым чипсетом. Уже появились модемы, клавиатуры, сканеры, динамики и другие устройства ввода/вывода с поддержкой USB, а также мониторов с USB-адаптерами - они играют роль концентраторов для подключения других устройств.

Структура usb

USB обеспечивает одновременный обмен данными между хост-компьютером и множеством периферийных устройств (ПУ). Распределение пропускной способности шины между ПУ планируется хостом и реализуется им с помощью посылки маркеров. Шина позволяет подключать, конфигурировать, использовать и отключать устройства во время работы хоста и самих устройств.

Ниже приводится авторский вариант перевода терминов из спецификации "Universal Serial Bus Specification", опубликованной Compaq, DEC, IBM, Intel, Microsoft, NEC и Northern Telecom. Более подробную и оперативную информацию можно найти по адресу:

Устройства (Device) USB могут являться хабами, функциями или их комбинацией. Хаб (Hub) обеспечивает дополнительные точки подключения устройств к шине. Функции (Function) USB предоставляют системе дополнительные возможности, например подключение к ISDN, цифровой джойстик, акустические колонки с цифровым интерфейсом и т. п. Устройство USB должно иметь интерфейс USB, обеспечивающий полную поддержку протокола USB, выполнение стандартных операций (конфигурирование и сброс) и предоставление информации, описывающей устройство. Многие устройства, подключаемые к USB, имеют в своем составе и хаб, и функции. Работой всей системы USB управляет хост-контроллер (Host Controller), являющийся программно-аппаратной подсистемой хост-компьютера.

Физическое соединение устройств осуществляется по топологии многоярусной звезды. Центром каждой звезды является хаб, каждый кабельный сегмент соединяет две точки - хаб с другим хабом или с функцией. В системе имеется один (и только один) хост-контроллер, расположенный в вершине пирамиды устройств и хабов. Хост-контроллер интегрируется с корневым хабом (Root Hub), обеспечивающим одну или несколько точек подключения - портов. Контроллер USB, входящий в состав чипсетов, обычно имеет встроенный двухпортовый хаб. Логически устройство, подключенное к любому хабу USB и сконфигурированное (см. ниже), может рассматриваться как непосредственно подключенное к хост-контроллеру.

Функции представляют собой устройства, способные передавать или принимать данные или управляющую информацию по шине. Типично функции представляют собой отдельные ПУ с кабелем, подключаемым к порту хаба. Физически в одном корпусе может быть несколько функций со встроенным хабом, обеспечивающим их подключение к одному порту. Эти комбинированные устройства для хоста являются хабами с постоянно подключенными устройствами-функциями.

Каждая функция предоставляет конфигурационную информацию, описывающую возможности ПУ и требования к ресурсам. Перед использованием функция должна быть сконфигурирована хостом - ей должна быть выделена полоса в канале и выбраны опции конфигурации.

Примерами функций являются:

  • Указатели - мышь, планшет, световое перо.

  • Устройства ввода - клавиатура или сканер.

  • Устройство вывода - принтер, звуковые колонки (цифровые).

  • Телефонный адаптер ISDN.

Хаб - ключевой элемент системы РпР в архитектуре USB. Хаб является кабельным концентратором. Точки подключения называются портами хаба. Каждый хаб преобразует одну точку подключения в их множество. Архитектура допускает соединение нескольких хабов.

У каждого хаба имеется один восходящий порт (Upstream Port), предназначенный для подключения к хосту или хабу верхнего уровня. Остальные порты являются нисходящими (Downstream Ports), предназначенными для подключения функций или хабов нижнего уровня. Хаб может распознать подключение устройств к портам или отключение от них и управлять подачей питания на их сегменты. Каждый из портов может быть разрешен или запрещен и сконфигурирован на полную или ограниченную скорость обмена. Хаб обеспечивает изоляцию сегментов с низкой скоростью от высокоскоростных.

Хабы могут управлять подачей питания на нисходящие порты; предусматривается установка ограничения на ток, потребляемый каждым портом.

Система USB разделяется на три уровня с определенными правилами взаимодействия. Устройство USB содержит интерфейсную часть, часть устройства и функциональную часть. Хост тоже делится на три части - интерфейсную, системную и ПО устройства. Каждая часть отвечает только за определенный круг задач, логическое и реальное взаимодействие между ними иллюстрирует рис. 7.1.

В рассматриваемую структуру входят следующие элементы:

  • Физическое устройство USB - устройство на шине, выполняющее функции, интересующие конечного пользователя.

  • Client SW - ПО, соответствующее конкретному устройству, исполняемое на хост-компьютере. Может являться составной частью ОС или специальным продуктом.

  • USB System SW - системная поддержка USB, независимая от конкретных устройств и клиентского ПО.

  • USB Host Controller - аппаратные и программные средства для подключения устройств USB к хост-компьютеру.

studfiles.net

Универсальная последовательная шина Википедия

Логотип USB

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

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

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

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

Содержание

  • 1 История
  • 2 Основные сведения
  • 3 Версии спецификации
    • 3.1 Список спецификаций
    • 3.2 Предварительные версии
    • 3.3 USB 1.0
    • 3.4 USB 1.1
    • 3.5 USB 2.0
      • 3.5.1 Последующие модификации
      • 3.5.2 USB OTG
    • 3.6 USB 3.0
    • 3.7 USB 3.1
    • 3.8 USB 3.2
    • 3.9 Inter-Chip USB
    • 3.10 Wireless USB
    • 3.11 Media Agnostic USB
  • 4 Кабели и разъёмы USB
    • 4.1 Кабели и разъёмы USB 1.x и 2.0
    • 4.2 Кабели и разъёмы USB 3.0 и их совместимость с USB 2.0
      • 4.2.1 Изображения разъёмов USB 3.0
      • 4.2.2 Расположение выводов соединителей USB 3.0 типа A
      • 4.2.3 Расположение выводов соединителей USB 3.0 Powered-B
      • 4.2.4 USB Type-C
      • 4.2.5 Оптические кабели USB 3.0
  • 5 Метод связи
    • 5.1 Физический уровень
    • 5.2 Структура пакетов
      • 5.2.1 Адрес
      • 5.2.2 Endpoint
      • 5.2.3 Временны́е фреймы
    • 5.3 Принципы обмена данными
      • 5.3.1 Control, Interrupt, Bulk, Isochronous
    • 5.4 Инициализация устройств
    • 5.5 Отладка и сертификация
  • 6 Plug and Play
    • 6.1 Стандартные классы устройств
  • 7 Электропитание
    • 7.1 USB Battery Charging
    • 7.2 USB Power Delivery
      • 7.2.1 USB PD Rev.1
      • 7.2.2 USB PD Rev.2
      • 7.2.3 USB PD Rev.3

ru-wiki.ru

универсальная последовательная шина — с русского

См. также в других словарях:

  • универсальная последовательная шина — (МСЭ Т Н.610, МСЭ Т Н.611). [http://www.iks media.ru/glossary/index.html?glossid=2400324] Тематики электросвязь, основные понятия EN universal serial busUSB …   Справочник технического переводчика

  • Универсальная последовательная шина — Символ USB USB (англ. Universal Serial Bus  универсальная последовательная шина) последовательный интерфейс передачи данных для среднескоростных и низкоскоростных периферийных устройств. Разработка спецификаций на шину USB производится в рамках… …   Википедия

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

  • порт — 3.32 порт (port): Конечная точка соединения. Примечание В контексте Интернет протокола порт представляет собой конечную точку логического канала TCP или UDP соединения. Протоколы приложений на основе TCP или UDP обычно имеют назначенные по… …   Словарь-справочник терминов нормативно-технической документации

  • порт связи — 3.6 порт связи: Место соединения, в котором осуществляется передача речи, данных и сигналов, обеспечивающих взаимосвязь широко разветвленных систем посредством подключения ОИТ к многопользовательским телекоммуникационным сетям (например,… …   Словарь-справочник терминов нормативно-технической документации

  • Список компьютерных интерфейсов — В этом списке приводятся названия и краткие описания интерфейсов компьютеров. К интерфейсам относятся: порты, шины, сетевые интерфейсы. ISA (Industry Standard Architecture  Архитектура промышленного стандарта), другое название AT Bus. Шина… …   Википедия

  • USB — Символ USB USB (ю эс би, англ. Universal Serial Bus  «универсальная последовательная шина»)  последовательный интерфейс передачи данных для среднескоростных и низкоскоростных периферийных …   Википедия

  • USB-порт — Символ USB USB (англ. Universal Serial Bus  универсальная последовательная шина) последовательный интерфейс передачи данных для среднескоростных и низкоскоростных периферийных устройств. Разработка спецификаций на шину USB производится в рамках… …   Википедия

  • USB 2.0 — Символ USB USB (англ. Universal Serial Bus  универсальная последовательная шина) последовательный интерфейс передачи данных для среднескоростных и низкоскоростных периферийных устройств. Разработка спецификаций на шину USB производится в рамках… …   Википедия

  • Universal Serial Bus — Символ USB USB (англ. Universal Serial Bus  универсальная последовательная шина) последовательный интерфейс передачи данных для среднескоростных и низкоскоростных периферийных устройств. Разработка спецификаций на шину USB производится в рамках… …   Википедия

  • USB Implementers Forum — (рус. Форум по внедрению USB, сокр. USB IF)  некоммерческая организация, продвигающая и поддерживающая USB (Universal Serial Bus, рус. универсальная последовательная шина). Её основными видами деятельности являются продвижение и стимуляция… …   Википедия

translate.academic.ru

Универсальная последовательная шина USB » СтудИзба

·                    Лекция 14. Универсальная последовательная шина USB.

Толковый словарь по вычислительным системам определяет понятие интерфейс (interface) как границу раздела двух систем, устройств или программ; элементы соединения и вспомогательные схемы управления, используемые для соединения устройств. Мы же поговорим о интерфейсах, позволяющих подключать к персональным (и не только) компьютерам разнообразные периферийные устройства и их контроллеры. По способу передачи информации интерфейсы подразделяются на параллельные и последовательные. В параллельном интерфейсе все биты передаваемого слова (обычно байта) выставляются и передаются по соответствующим параллельно идущим проводам одновременно. В PC традиционно используется параллельный интерфейс Centronics, реализуемый LPT-портами. В последовательном же интерфейсе биты передаются друг за другом, обычно по одной линии. СОМ порты PC обеспечивают последовательный интерфейс в соответствии со стандартом RS-232C. При рассмотрении интерфейсов важным параметром является пропускная способность.

В архитектуре современных компьютеров все большее значение приобретают внешние шины, служащие для подключения различных устройств. Сегодня это могут быть, например, внешние жесткие диски, CD-, DVD-устройства, сканеры, принтеры, цифровые камеры и прочее.

Широко используемый последовательный интерфейс синхронной и асинхронной передачи данных.

2.Шина USB.Общая характеристика.

USB (Universal Serial Bus — универсальная последовательная шина) является промышленным стандартом расширения архитектуры PC, ориентированным на интеграцию с телефонией и устройствами бытовой электроники. Версия 1.0 была опубликована в январе 1996 года. Архитектура USB определяется следующими критериями:

Ø    Легко реализуемое расширение периферии PC.

Ø    Дешевое решение, поддерживающее скорость передачи до 12 Mбит/с.

Ø    Полная поддержка в реальном времени передачи аудио и (сжатых) видеоданных.

Ø   Гибкость протокола смешанной передачи изохронных данных и асинхронных сообщений.

Ø    Интеграция с выпускаемыми устройствами.

Ø    Доступность в PC всех конфигураций и размеров.

Ø    Обеспечение стандартного интерфейса, способного быстро завоевать рынок.

Ø    Создание новых классов устройств, расширяющих PC.

Ø    С точки зрения конечного пользователя, привлекательны следующие черты USB:

Ø    Простота кабельной системы и подключений.

Ø    Скрытие подробностей электрического подключения от конечного пользователя.

Ø   Самоидентифицирующиеся ПУ, автоматическая связь устройств с драйверами и конфигурирование.

Ø   Возможность динамического подключения и конфигурирования ПУ.

С середины 1996 года выпускаются PC со встроенным контроллером USB, реализуемым чипсетом. Уже появились модемы, клавиатуры, сканеры, динамики и другие устройства ввода/вывода с поддержкой USB, а также мониторов с USB-адаптерами - они играют роль концентраторов для подключения других устройств.

Структура USB

USB обеспечивает одновременный обмен данными между хост-компьютером и множеством периферийных устройств (ПУ). Распределение пропускной способности шины между ПУ планируется хостом и реализуется им с помощью посылки маркеров. Шина позволяет подключать, конфигурировать, использовать и отключать устройства во время работы хоста и самих устройств.

Ниже приводится авторский вариант перевода терминов из спецификации "Universal Serial Bus Specification", опубликованной Compaq, DEC, IBM, Intel, Microsoft, NEC и Northern Telecom. Более подробную и оперативную информацию можно найти по адресу:

Устройства (Device) USB могут являться хабами, функциями или их комбинацией. Хаб (Hub) обеспечивает дополнительные точки подключения устройств к шине. Функции (Function) USB предоставляют системе дополнительные возможности, например подключение к ISDN, цифровой джойстик, акустические колонки с цифровым интерфейсом и т. п. Устройство USB должно иметь интерфейс USB, обеспечивающий полную поддержку протокола USB, выполнение стандартных операций (конфигурирование и сброс) и предоставление информации, описывающей устройство. Многие устройства, подключаемые к USB, имеют в своем составе и хаб, и функции. Работой всей системы USB управляет хост-контроллер (Host Controller), являющийся программно-аппаратной подсистемой хост-компьютера.

Физическое соединение устройств осуществляется по топологии многоярусной звезды. Центром каждой звезды является хаб, каждый кабельный сегмент соединяет две точки - хаб с другим хабом или с функцией. В системе имеется один (и только один) хост-контроллер, расположенный в вершине пирамиды устройств и хабов. Хост-контроллер интегрируется с корневым хабом (Root Hub), обеспечивающим одну или несколько точек подключения - портов. Контроллер USB, входящий в состав чипсетов, обычно имеет встроенный двухпортовый хаб. Логически устройство, подключенное к любому хабу USB и сконфигурированное (см. ниже), может рассматриваться как непосредственно подключенное к хост-контроллеру.

Функции представляют собой устройства, способные передавать или принимать данные или управляющую информацию по шине. Типично функции представляют собой отдельные ПУ с кабелем, подключаемым к порту хаба. Физически в одном корпусе может быть несколько функций со встроенным хабом, обеспечивающим их подключение к одному порту. Эти комбинированные устройства для хоста являются хабами с постоянно подключенными устройствами-функциями.

Каждая функция предоставляет конфигурационную информацию, описывающую возможности ПУ и требования к ресурсам. Перед использованием функция должна быть сконфигурирована хостом - ей должна быть выделена полоса в канале и выбраны опции конфигурации.

Примерами функций являются:

Ø  Указатели - мышь, планшет, световое перо.

Ø  Устройства ввода - клавиатура или сканер.

Ø  Устройство вывода - принтер, звуковые колонки (цифровые).

Ø  Телефонный адаптер ISDN.

Хаб - ключевой элемент системы РпР в архитектуре USB. Хаб является кабельным концентратором. Точки подключения называются портами хаба. Каждый хаб преобразует одну точку подключения в их множество. Архитектура допускает соединение нескольких хабов.

У каждого хаба имеется один восходящий порт (Upstream Port), предназначенный для подключения к хосту или хабу верхнего уровня. Остальные порты являются нисходящими (Downstream Ports), предназначенными для подключения функций или хабов нижнего уровня. Хаб может распознать подключение устройств к портам или отключение от них и управлять подачей питания на их сегменты. Каждый из портов может быть разрешен или запрещен и сконфигурирован на полную или ограниченную скорость обмена. Хаб обеспечивает изоляцию сегментов с низкой скоростью от высокоскоростных.

Хабы могут управлять подачей питания на нисходящие порты; предусматривается установка ограничения на ток, потребляемый каждым портом.

Система USB разделяется на три уровня с определенными правилами взаимодействия. Устройство USB содержит интерфейсную часть, часть устройства и функциональную часть. Хост тоже делится на три части - интерфейсную, системную и ПО устройства. Каждая часть отвечает только за определенный круг задач, логическое и реальное взаимодействие между ними иллюстрирует рис. 7.1.

В рассматриваемую структуру входят следующие элементы:

Ø  Физическое устройство USB - устройство на шине, выполняющее функции, интересующие конечного пользователя.

Ø  Client SW - ПО, соответствующее конкретному устройству, исполняемое на хост-компьютере. Может являться составной частью ОС или специальным продуктом.

Ø  USB System SW - системная поддержка USB, независимая от конкретных устройств и клиентского ПО.

Ø  USB Host Controller - аппаратные и программные средства для подключения устройств USB к хост-компьютеру.

3.Физический интерфейс

Стандарт USB определяет электрические и механические спецификации шины. Информационные сигналы и питающее напряжение 5 В передаются по четырехпроводному кабелю. Используется дифференциальный способ передачи сигналов D+ и D- по двум проводам. Уровни сигналов передатчиков в статическом режиме должны быть ниже 0,3 В (низкий уровень) или выше 2,8 В (высокий уровень). Приемники выдерживают входное напряжение в пределах - 0,5...+3,8 В. Передатчики должны уметь переходить в высокоимпедансное состояние для двунаправленной полудуплексной передачи по одной паре проводов.

Передача по двум проводам в USB не ограничивается дифференциальными сигналами. Кроме дифференциального приемника каждое устройство имеет линейные приемники сигналов D+ и D-, а передатчики этих линий управляются индивидуально. Это позволяет различать более двух состояний линии, используемых для организации аппаратного интерфейса. Состояния Diff0 и Diff1 определяются по разности потенциалов на линиях D+ и D- более 200 мВ при условии, что на одной из них потенциал выше порога срабатывания VSE. Состояние, при котором на обоих входах D+ и D- присутствует низкий уровень, называется линейным нулем (SEO - Single-Ended Zero). Интерфейс определяет следующие состояния:

Ø   Data J State и Data К State - состояния передаваемого бита (или просто J и К), определяются через состояния Diff0 и Diff1.

Ø   Idle State - пауза на шине.

Ø   Resume State - сигнал "пробуждения" для вывода устройства из "спящего" режима.

Ø   Start of Packet (SOP) - начало пакета (переход из Idle State в К).

Ø   End of Packet (EOP) - конец пакета.

Ø   Disconnect - устройство отключено от порта.

Ø   Connect - устройство подключено к порту.

Ø   Reset - сброс устройства.

Состояния определяются сочетаниями дифференциальных и линейных сигналов; для полной и низкой скоростей состояния DiffO и Diff1 имеют противоположное назначение.В декодировании состояний Disconnect, Connect и Reset учитывается время нахождения линий (более 2,5 мс) в определенных состояниях.

Шина имеет два режима передачи. Полная скорость передачи сигналов USB составляет 12 Мбит/с, низкая - 1,5 Мбит/с. Для полной скорости используется экранированная витая пара с импедансом 90 Ом и длиной сегмента до 5 м, для низкой - невитой неэкранированньгй кабель до 3 м. Низкоскоростные кабели и устройства дешевле высокоскоростных. Одна и та же система может одновременно использовать оба режима; переключение для устройств осуществляется прозрачно.

Низкая скорость предназначена для работы с небольшим количеством ПУ, не требующих высокой скорости. Скорость, используемая устройством, подключенным к конкретному порту, определяется хабом по уровням сигналов

на линиях D+ и D-, смещаемых нагрузочными резисторами R2 приемопередатчиков (см. рис. 7.2 и 7.3)

Сигналы синхронизации кодируются вместе с данными по методу NRZI (Non Return to Zero Invert), его работу иллюстрирует рис. 7.4. Каждому пакету предшествует поле синхронизации SYNC, позволяющее приемнику настроиться на частоту передатчика. Кабель также имеет линии VBus и GND для передачи питающего напряжения 5 В к устройствам.

Сечение проводников выбирается в соответствии с длиной сегмента для обеспечения гарантированного уровня сигнала и питающего напряжения. Стандарт определяет два типа разъемов (см. табл. 7.1 и рис. 7.5).

Разъемы типа "А" применяются для подключения к хабам (Upstream Connector). Вилки устанавливаются на кабелях, не отсоединяемых от устройств (например, клавиатура, мышь и т. п.). Гнезда устанавливаются на нисходящих портах (Downstream Port) хабов. Разъемы типа "В" (Downstream Connector) устанавливаются на устройствах, от которых соединительный кабель может отсоединяться (принтеры и сканеры). Ответная часть (вилка) устанавливается на соединительном кабеле, противоположный конец которого имеет вилку типа "А".

Разъемы типов "А" и "В" различаются механически (рис. 7.5), что исключает недопустимые петлевые соединения портов хабов. Четырехконтактные разъемы имеют ключи, исключающие неправильное присоединение. Конструкция разъемов обеспечивает позднее соединение и раннее отсоединение сигнальных цепей по сравнению с питающими. Для распознавания разъема USB на корпусе устройства ставится стандартное символическое обозначение.

Рис. 7.5. Гнезда USB: а - типа "А",  б - типа "В", в - символическое обозначение

Питание устройств USB возможно от кабеля (Bus-Powered Devices) или от собственного блока питания (Self-Powered Devices). Хост обеспечивает питанием непосредственно подключенные к нему ПУ. Каждый хаб, в свою очередь, обеспечивает питание устройств, подключенных к его нисходящим портам. При некоторых ограничениях топологии допускается применение хабов, питающихся от шины. На рис. 7.6 приведен пример схемы соединения устройств USB.

 Здесь клавиатура, перо и мышь могут питаться от шины.

 

 

USB поддерживает как однонаправленные, так и двунаправленные режимы связи. Передача данных производится между ПО хоста и конечной точкой устройства. Устройство может иметь несколько конечных точек, связь с каждой из них (канал) устанавливается независимо.

Архитектура USB допускает четыре базовых типа передачи данных:

Ø    Управляющие посылки (Control Transfers), используемые для конфигурирования во время подключения и в процессе работы для управления устройствами. Протокол обеспечивает гарантированную доставку данных. Длина поля данных управляющей посылки не превышает 64 байт на полной скорости и 8 байт на низкой.

Ø    Сплошные передачи (Bulk Data Transfers) сравнительно больших пакетов без жестких требований ко времени доставки. Передачи занимают всю свободную полосу пропускания шины. Пакеты имеют поле данных размером 8, 16, 32 или 64 байт. Приоритет этих передач самый низкий, они могут приостанавливаться при большой загрузке шины. Допускаются только на полной скорости передачи.

Ø    Прерывания (Interrupt) - короткие (до 64 байт на полной скорости, до 8 байт на низкой) передачи типа вводимых символов или координат. Прерывания имеют спонтанный характер и должны обслуживаться не медленнее, чем того требует устройство. Предел времени обслуживания устанавливается в диапазоне 1-255 мс для полной скорости и 10-255 мс - для низкой.

Ø    Изохронные передачи (Isochronous Transfers) - непрерывные передачи в реальном времени, занимающие предварительно согласованную часть пропускной способности шины и имеющие заданную задержку доставки. В случае обнаружения ошибки изохронные данные передаются без повтора - недействительные пакеты игнорируются. Пример - цифровая передача голоса. Пропускная способность определяется требованиями к качеству передачи, а задержка доставки может быть критичной, например, при реализации телеконференций.

Полоса пропускания шины делится между всеми установленными каналами. Выделенная полоса закрепляется за каналом, и если установление нового канала требует такой полосы, которая не вписывается в уже существующее распределение, запрос на выделение канала отвергается.

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

Изохронные передачи классифицируются по способу синхронизации конечных точек - источников или получателей данных - с системой: различают асинхронный, синхронный и адаптивный классы устройств, каждому из которых соответствует свой тип канала USB.

Протокол

Все обмены (транзакции) по USB состоят из трех пакетов. Каждая транзакция планируется и начинается по инициативе контроллера, который посылает пакет-аркер (Token Packet). Он описывает тип и направление передачи, адрес ус-тройства USB и номер конечной точки. В каждой транзакции возможен обмен только между адресуемым устройством (его конечной точкой) и хостом. Адресуемое маркером устройство распознает свой адрес и готовится к обмену. Источник данных (определенный маркером) передает пакет данных (или уведомление об отсутствии данных, предназначенных для передачи). После успешного приема пакета приемник данных посылает пакет подтверждения (Handshake Packet).

Планирование транзакций обеспечивает управление поточными каналами. На аппаратном уровне использование отказа от транзакции (NAck) при недопустимой интенсивности передачи предохраняет буферы от переполнения сверху и снизу. Маркеры отвергнутых транзакций повторно передаются в свободное для шины время. Управление потоками позволяет гибко планировать обслуживание одновременных разнородных потоков данных.

Устойчивость к ошибкам обеспечивают следующие свойства USB:

Ø    Высокое качество сигналов, достигаемое благодаря дифференциальным приемникам/передатчикам и экранированным кабелям.

Ø    Защита полей управления и данных CRC-кодами.

Ø    Обнаружение подключения и отключения устройств и конфигурирование ресурсов на системном уровне.

Ø    Самовосстановление протокола с тайм-аутом при потере пакетов.

Ø    Управление потоком для обеспечения изохронности и управления аппаратными буферами.

Ø    Независимость функций от неудачных обменов с другими функциями.

Для обнаружения ошибок передачи каждый пакет имеет контрольные поля CRC-кодов, позволяющие обнаруживать все одиночные и двойные битовые ошибки. Аппаратные средства обнаруживают ошибки передачи, а контроллер автоматически производит трехкратную попытку передачи. Если повторы безуспешны, сообщение об ошибке передается клиентскому ПО.

Устройства USB - функции и хабы

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

Конфигурирование устройств, выполняемое хостом, является необходимым для их использования. Для конфигурирования обычно используется информация, считанная из самого устройства. Устройство может иметь множество интерфейсов, каждому из которых соответствует собственная конечная точка, представляющая хосту функцию устройства. Интерфейс в конфигурации может иметь альтернативные наборы характеристик; смена наборов поддерживается протоколом. Для поддержки адаптивных драйверов дескрипторы устройств и интерфейсов имеют поля класса, подкласса и протокола.

Передача данных возможна посредством одного из четырех типов передач (см. выше). Для конечных точек, допускающих разные типы передач, после конфигурирования доступен только один из них.

Управление энергопотреблением является весьма развитой функцией USB. Для устройств, питающихся от шины, мощность ограничена. Любое устройство при подключении не должно потреблять от шины ток, превышающий 100 мА. Рабочий ток (не более 500 мА) заявляется в конфигурации, и если хаб не сможет обеспечить устройству заявленный ток, оно не конфигурируется и, следовательно, не может быть использовано.

Устройство USB должно поддерживать приостановку (Suspended Mode), в котором его потребляемый ток не превышает 500 мкА. Устройство должно автоматически приостанавливаться при прекращении активности шины.

Возможность удаленного пробуждения (Remote Wakeup) позволяет приостановленному устройству подать сигнал хосткомпьютеру, который тоже может находиться в приостановленном состоянии. Возможность удаленного пробуждения описывается в конфигурации устройства. При конфигурировании эта функция может быть запрещена.

Хаб в USB выполняет коммутацию сигналов и выдачу питающего напряжения, а также отслеживает состояние подключенных к нему устройств, уведомляя хост об изменениях. Хаб состоит из двух частей - контроллера (Hub Controller) и повторителя (Hub Repeater). Повтори Повторитель представляет собой управляемый ключ, соединяющий выходной порт со входным. Он имеет средства поддержки сброса и приостановки передачи сигналов. Контроллер содержит регистры для взаимодействия с хостом. Доступ к регистрам осуществляется по специфическим командам обращения к хабу. Команды позволяют конфигурировать хаб, управлять нисходящими портами и наблюдать их состояние.

Нисходящие (Downstream) порты хабов могут находиться в следующих состояниях:

Ø  Powered (питание отключено) - на порт не подается питание (возможно только для хабов, коммутирующих питание). Выходные буферы переводятся в высокоимпедансное состояние, входные сигналы игнорируются.

Ø  Disconnected (отсоединен) - порт не передает сигналы ни в одном направлении, но способен обнаружить подключение устройства (по отсутствию состояния SEO в течение 2,5 мкс). Тогда порт переходит в состояние Disabled, а по уровням входных сигналов {DiffO или Diff1 в состоянии Idle) он определяет скорость подключенного устройства.

Ø   Disabled (запрещен) - порт передает только сигнал сброса (по команде от контроллера), сигналы от порта (кроме обнаружения отключения) не воспринимаются. По обнаружении отключения (2,5 мкс состояния SEO) порт переходит в состояние Disconnect, а если отключение обнаружено "спящим" хабом, контроллеру будет послан сигнал Resume.

Ø   Enabled (разрешен) - порт передает сигналы в обоих направлениях. По команде контроллера или по обнаружении ошибки кадра порт переходит в состояние Disabled, а по обнаружении отключения - в состояние Disconnect.

Ø  Suspended (приостановлен) - порт передает сигнал перевода в состояние останова ("спящий" режим). Если хаб находится в активном состоянии, сигналы через порт не пропускаются ни в одном направлении. Однако "спящий" хаб воспринимает сигналы смены состояния незапрещенных портов, подавая "пробуждающие" сигналы от активизировавшегося устройства даже через цепочку "спящих" хабов. Состояние каждого порта идентифицируется контроллером хаба с помощью отдельных регистров. Имеется общий регистр, биты которого отражают факт изменения состояния каждого порта (фиксируемый во время EOF). Это позволяет хост-контроллеру быстро узнать состояние хаба, а в случае обнаружения изменений специальными транзакциями уточнить состояние.

Хост-контроллер

Хост-компьютер общается с устройствами через контроллер. Хост имеет следующие обязанности:

Ø  обнаружение подключения и отсоединения устройств USB;

Ø  манипулирование потоком управления между устройствами и хостом;

Ø  управление потоками данных;

Ø  сбор статистики;

Ø  обеспечение энергосбережения подключенными ПУ.

Ø  Системное ПО контроллера управляет взаимодействием между устройствами и их ПО, функционирующим на хост-компьютере, для согласования:

Ø  нумерации и конфигурации устройств;

Ø  изохронных передач данных;

Ø  асинхронных передач данных;

Ø  управления энергопотреблением;

Ø  информации об управлении устройствами и шиной.

 

 

studizba.com

Универсальные последовательные периферийные шины

USB (Universal Serial Bus) ‑ новая универсальная последовательная шина. Она появилась в 1995 году и призвана заменить такие устаревшие интерфейсы, как RS-232 (СОМ-порт) и параллельный интерфейс IEEE 1284 (LPT-порт), то есть прийти на смену последовательным и параллельным клавиатурным и «мышиным» портам ‑ все устройства подключаются к одному разъему, допускающему установку многочисленных устройств с легкостью технологии Plug and Play.

Технология Plug and Play ‑ «включай и работай» ‑ позволяет производить «горячую» замену, т.е. замену устройств без необходимости выключения и перезагрузки компьютера. После физического подсоединения устройства правильно опознаются и автоматически конфигурируются: USB самостоятельно определяет, что именно подключили к компьютеру, какой драйвер и ресурсы понадобятся устройству, после чего все это выделяет без вмешательства пользователя. Для адекватной работы шины необходима операционная система, которая корректно с ней работает. К шине USB можно одновременно подключить до 127 устройств, практически любых: мониторы, принтеры, сканеры, клавиатуры и т. д. Каждое устройство, подключенное на первом уровне, может работать в качестве коммутатора ‑ то есть к нему, при наличии соответствующих разъемов, могут подключаться еще несколько устройств. Обмен по интерфейсу ‑ пакетный, скорость обмена ‑ 12 Мбит/с. В 2001 году появилась следующая спецификация интерфейса USB 2.0 (начальный стандарт теперь называется USB 1.1), обеспечивающая пропускную способность 480 Мбит/с. Поддерживается также дополнительный подканал со скоростью обмена данными в 1,5 Мбит/с для медленных устройств (клавиатуры, мыши, модема).

IEEE 1394 (Institute of Electrical and Electronic Engineers 1394 ‑ стандарт Института инженеров по электротехнике и электронике 1394) ‑ новый и перспективный последовательный интерфейс, предназначенный для подключения внутренних компонентов компьютера и внешних устройств. IEEE 1394 известен также под именем FireWire ‑ «огненный провод» (хотя это название ‑ собственность Apple и на компьютерах других производителей не применяется, как и цифровой интерфейс iLink компании Sony, также объединенный в стандарте IEEE 1394). Цифровой последовательный интерфейс FireWire характеризуется высокой надежностью и качеством передачи данных, его протокол поддерживает гарантированную передачу критичной по времени информации, обеспечивая прохождение видео- и аудиосигналов в реальном масштабе времени без заметных искажений. При помощи шины FireWire можно подсоединить друг к другу огромное количество различных устройств по технологии Plug and Play и практически в любой конфигурации, чем она выгодно отличается от названных ранее трудно конфигурируемых шин типа SCSI. К одному контроллеру возможно подключение до 63 устройств на один порт с помощью единого шестижильного кабеля. Пропускная способность интерфейса составляет 100-400 Мбит/с, а в будущем ожидается даже 1600 Мбит/с. Этот интерфейс будет использоваться для подключения жестких дисков, дисководов CD-ROM и DVD-ROM, а также высокоскоростных внешних устройств, таких как цифровые видеокамеры, видеомагнитофоны и т. д.

PCMCIA (Personal Computer Memory Card International Association ‑ ассоциация производителей плат памяти для персональных компьютеров) ‑ внешняя шина компьютеров класса ноутбуков. Другое название модуля PCMCIA ‑ PC Card. Шина имеет разрядность 16/26 (данные/адрес, адресное пространство ‑ 64 Мбайт), поддерживает автоконфигурирование, возможно подключение и отключение устройств в процессе работы компьютера. Конструктив ‑ миниатюрный 68-контактный разъем. Контакты питания сделаны более длинными, что позволяет вставлять и вынимать карту при включенном питании компьютера.

В конце 2000 года группа компаний Working Group (Intel, IBM, Maxtor, Quantum, Seagate и др.) анонсировала новый чрезвычайно эффективный последовательный интерфейс Serial ATA, обеспечивающий пропускную способность 1500 Мбит/с по 8-жильному кабелю (вместо 80-жильного, используемого параллельным АТА).

studfiles.net

Универсальная последовательная шина USB.

21 век - век программных уровней (протоколов) в последовательных интерфейсах! Если посмотреть на стандарты последовательных интерфейсов прошлого века, то они в основном описывали физические уровни, программные уровни оставались на волю разработчика. Сегодня ситуация изменилась, и описание программных уровней занимают почти весь стандарт.Когда начинают сравнивать последовательные интерфейсы разных лет, то всегда делают ошибку: сравнивая физический уровень одного интерфейса с программным уровнем другого интерфейса. Аналогично можно сравнивать операционную систему с материнской платой компьютера, и при этом "умно" говорить, что из них лучше.Если вспомнить интерфейс RS-232, то можно заметить:"Интерфейс RS-232-C был разработан для простого применения, однозначно определяемого по его названию: «Интерфейс между терминальным оборудованием и связным оборудованием с обменом по последовательному двоичному коду». Чаще всего используется в промышленном и узкоспециальном оборудовании, встраиваемых устройствах. Иногда присутствует на современных персональных компьютерах". 1996г. - разработана спецификация нового универсального порта ПК USB 1.0. Характеристики USB:

Кабель: 5 проводов

Каналы данных: 1 (полудуплекс)

Количество сервисных сигналов: 9 (зависимые)

Состояний линии связи: 4

Тип обмена: асинхронный одноточечный

Скорость обмена: до 12 Mb/s

Длина пакета: 4...1030 байт

Дальность связи: 5 m

Какие потребности привели в 1996 г. к появлению нового порта?

1. Универсальность - нет. Универсальность падает в последовательности RS232-COM port-USB

2. Дальность связи - нет. Дальность падает в последовательности RS485-RS232-COM port-USB

3. Скорость обмена - да. Формально падает: USB-COM порт-RS232. (Потенциально: COM порт не уступает USB)

4. Надежность - нет. Надежность падает в последовательности: COM порт-RS232-USB.

5. Энтропия - да. Энтропия падает в последовательности USB-COM порт-RS232

Под энтропией интерфейса понимается количество переданной информации на одну аппаратную ячейку (ключ) физической структуры. Более простое определение "увеличения энтропии", это - стремление разработчика вложить больше функциональных возможностей в более простое устройство. То есть, свести к минимуму отношения взаимообратных функций: простоты и функциональности. Физический уровень интерфейса USB сделан проще COM порта и тем более, проще интерфейса RS-232."USB был разработан для простого применения". Функциональность USB в основном увеличивается за счет программного уровня интерфейса, которая не требует аппаратных затрат. При этом замечу, что COM порт и RS-232 не регламентируют программный уровень протокола.Поэтому RS-232 совместно с многочисленными модемами типа: RS-485, Bell-202, V.92 и др. использовались для создания различных интерфейсов путем добавления программного уровня. Например: ModBus, ProfiBus, HART и многие др.К примеру, ModBus представляет многоточечный пакетный интерфейс связи, где целостность пакета, как и в USB, проверяется контрольной суммой пакета. При передаче пакета ModBus через RS232-RS485 каждый байт пакета дополнительно аппаратно проверяется на ошибку интерфейсом RS-232. То есть, мы получим двойную проверку: программную ModBus и аппаратную RS232. Понятно, что для пользователя бытового ПК это ненужно, но для управления ядерным реактором не помешает.Кроме того, надежность СОМ порта уникальна, он может работать без ПО и без ОС (чего не скажешь про USB). COM порт будет принимать и передавать данные, даже если "убить" микропроцессор.

 

Сведения по спецификациям USB

Историческая справка.

В 1994 году несколько ведущих компаний в области производства персональных компьютеров и программного обеспечения решили разработать новый универсальный порт компьютера. Новая операционная система Windows 95, разработанная Microsoft, была ориентирована на использования аудио и видео устройств. Работа таких устройств с СОМ и LPT портом вызывала известные трудности. Обычно для таких устройств изготовляли персональную ISA или PCI карту для подключения их к компьютеру.Семь ведущих компаний вошли в первоначальный состав разработчиков спецификации нового компьютерного порта: Compaq, Digital Equipment Corporation (DEC), IBM, Intel, Microsoft, NEC , Northern Telecom.

В январе 1996 года была выпущена спецификация USB v.1.0, и началась практическая реализация порта USB.В 1996 году работа велась в трёх направлениях:

1.Фирма Intel взялась за разработку хоста (корневого хаба), который она решила встроить в микросхему i82371FB (акселератор шин PCI, ISA, IDE). Данная микросхема входила в состав набора микросхем i430FX "Triton" (ChipSet) для создания материнских плат на базе микропроцессора Pentium и поддерживала шину PCI/ISA. Позже микросхемы этого типа (шинные акселераторы), входящие в состав набора ChipSet стали называть микросхемами ICH (Input/Output Chip Hub) или "южным мостом"- South Bridge. Компания Intel поддерживает этот стандарт во всех своих наборах микросхем системной логики.

В мае 1996 года Intel выпустила микросхему i82371SB, которая была аналогом i82371FB и содержала в своем составе два корневых хаба usb. Данная микросхема могла поддерживать два порта USB v.1.0. Микросхема i82371SB впервые вошла в набор i430VX "Triton". Таким образом, у производителей материнских плат появилась возможность с мая 1996 года выпускать платы с usb портами.

2. Microsoft начал дорабатывать свою ОС Windows 95 и в октябре 1996 года выпустил ОС Windows 95b, в которой впервые появилась поддержка USB портов.

3. Фирмы производители микроэлектроники начали разрабатывать микросхемы для создания устройств USB. Например, фирма Philips начала в 1996 году разработку серии микросхем с наименованием PDIUSB, которая должна была включать в себя все необходимые компоненты для устройств и хабов USB.

1996...1999 гг можно назвать "тёмными годами" USB. В это время уже выпускались ПК с портами USB, к которым нечего было подключать. Поэтому специалисты по компьютерным технологиям прозвали эту шину: (Useless serial bus -бесполезная последовательная шина). Выпускавшиеся в эти года USB манипуляторы типа мышь, клавиатура, джойстик проигрывали по качеству работы манипуляторам, работавшим по порту PS/2 и Game Port. Кроме того эти манипуляторы не работали в MS-DOS.Многие специалисты считали, что у этого порта нет перспектив.Ситуация изменилась в 1999 году в связи с разработкой первого USB флеш-накопителя.Израильская фирма M-Systems Ltd. в 1999 году выпустила первую usb-флешку объёмом 8Мб, которая называлась DiskOnKey.Колоссальная популярность USB-накопителей дала огромный толчок к дальнейшему развитию шины USB.В первую очередь нужна была скорость обмена информации с Flash носителями.В 2000 году разрабатывается спецификация USB 2.0 с поддержкой скорости 480 Mb/s (в 40 раз больше чем в USB 1.0). Спецификация USB 2.0 стала стандартом последовательной шины компьютеров и различных устройств.В USB реализована возможность подключения большого количества периферийных устройств к ПК. Шина USB позволяет одновременно использовать до 127 устройств, причем такие периферийные устройства, как монитор или клавиатура, могут предоставлять дополнительные разъемы и выступать в качестве концентраторов USB.

Вместо клубка проводов, торчащих из задней стенки корпуса ПК, которые вечно путаются, собирают пыль и просто мешают работать с появлением USB наступил порядок.

При подключении устройств к USB не нужно устанавливать платы в разъемы системной платы и реконфигурировать систему (исчезла пресловутая шина ISA). Экономно используются такие важные системные ресурсы, как запросы прерывания (IRQ). Т.е. вместо конфликтов прерываний, адресов доступа к памяти и прочих неприятностей, связанных с особенностями устаревшей архитектуры ПК, при использовании USB система автоматически выполнит настройку оборудования, сразу после физического подключения, без перезагрузки или установки, т.е. достаточно просто присоединить кабель – и устройство готово к работе.

Кабели, разъемы, концентраторы и периферийные устройства, поддерживающие USB, можно определить по значку, показанному на рис. 18. Обратите внимание на символ плюса, добавленный ко второму значку – он означает стандарт USB 2.0 (высокоскоростной стандарт).

Рис. 18. Логотип устройств USB

 

Что же скрывается за многообещающей аббревиатурой? То, что данные передаются последовательно и что она универсальна.

Сигналы передаются по двум проводам четырехжильного кабеля, два оставшихся используются для подачи электропитания (5 В постоянного тока) в устройства.

Система построена по топологии “звезда”. Это значит, что в ПК на системной плате установлен корневой концентратор, к которому подключаются концентраторы и устройства. Концентраторы тоже считаются устройствами и могут подключаться цепочками см. рис. 19.

Рис. 19. В ПК может использоваться несколько концентраторов USB для подключения различных периферийных устройств, причем любое устройство можно подсоединить к любому концентратору.

 

Каждая точка подключения именуется портом. Большинство концентраторов имеют четыре или восемь портов. Кроме предоставления дополнительных портов для подключения периферийных устройств, концентратор занимается распределением энергии. Он динамически распознает подключенное периферийное устройство и после инсталляции предоставляет ему по меньшей мере 0,5 Вт.

Для повышения надежности передачи данных рекомендуется использовать концентратор с собственным блоком питания.

Новому подключенному концентратору присваивается уникальный адрес. Устройства можно масштабировать до пяти уровней в глубину. Концентратор выступает в роли двунаправленного ретранслятора и транслирует сигналы USB как во входном (к ПК), так и в нисходящем (к устройству) потоках. Концентратор USB 1.1 поддерживает как высокоскоростную передачу данных (12 Мбит/с), так и низкоскоростную (1,5 Мбит/с).

Максимальная длина кабеля между двумя работающими на скорости (12 Мбит/c) устройствами или устройством и концентратором – пять метров. В кабеле используется экранированная витая пара (толщина провода – 20). Максимальная длина кабеля для низкоскоростных устройств (1,5 Мбит/с) при использовании нескрученной пары проводов – 3м. Причем эти расстояния уменьшаются, если используется более тонкий провод (см.

табл. 4.

Структура физического уровня USB 1.1 приведена на рис. 20.

 

Рассмотрим структуру физического уровня USB 1.1:

Таблица 4.

Толщина Удельное сопротивление, Ом/м Длина (макс.), м
0,232 0,81
0,145 1,31
0,091 2,08
0,057 3,33
0,036 5,0

 

Общая структура физического уровня.

Физический уровень USB 1.1. состоит из двух драйверов и физической среды (кабеля) между ними.

Драйверы физического уровня не симметричны, то есть имеют разную структуру.

Физическая среда одноточечная и односторонняя (полудуплекс).

Существует два типа драйвера:

Downstream (внизпередающий)- этот драйвер всегда ведущий, то есть только он определяет кто, когда и сколько будет передавать данных в линию связи. Драйверы этого типа всегда генерируют информационный сигнал в направлении от хоста. В сети эти драйверы установлены на хосте или внизпередающем порту хаба.

Upstream (вверхпередающий) - это драйвер всегда ведомый. Он всегда генерирует информационный сигнал в направлении хоста. Время и порядок его работы определяет ведущий драйвер (Downstream). Эти драйвера устанавливаются в устройствах и верхпередающих портах хаба.

Драйвер Upstream может быть одного из двух видов:

Upstreeam Full Speed - для работы на скорости 12 Mb/s

Upstream Low Speed - для работы на скорости 1,5 Mb/s

Так как драйверы не симметричны, связь в физическом уровне USB 1.1 возможна только между драйверами разного типа, то есть только между Downstream и Upstreeam.

Соответственно не симметричен и кабель для подключения, со стороны Downstream он имеет разъём серии A, а со стороны Upstream разъём серии B.

Драйвера и кабели RS232 и RS485 симметричны, поэтому ПК можно соединять между собой через COM порты. Соединить два ПК через USB порты не возможно. Этот факт конечно, ухудшает универсальность порта, но позволяет упростить аппаратную часть, так как односторонние драйвера аппаратно более просты. Кроме того односторонняя реализации упрощает программный уровень, так как параллельные процессы в ПК трудно реализуемы.

Устройство драйверов.

Как видно из рис. 20 драйвера USB состоят из: контроллера, кодера, декодера, генератора, дифференциального и линейных приёмников, подтягивающих резисторов и источника питания.

Контроллер драйвера.

Контроллер соединяет генерирующую и приёмную часть драйвера через системную шину с программным уровнем хоста, концентратора или устройства. Так как весь передаваемый пакет может быть сформирован программным уровнем, то аппаратная реализации контроллера не сложна.

 

Рис. 20. Структура физического уровня USB 1.1

 

Кодер NRZI.

Пакет кодируется методом NRZI с помощью JK-триггера. Алгоритм NRZI кодирования довольно прост, при передачи нуля генератор должен изменить полярность сигнальной линии на противоположную, при передачи единицы оставить полярность сигнала прежней (т.е. ничего не менять). Кодеры для Full Speed и Low Speed отличаются выходным сигналом (противоположны). NRZI кодирование позволяет сократить число синхробитов вставляемых в пакет данных.

Декодер.

Преобразует NRZI закодированные данные к начальному виду и выделяет синхросигнал из принимаемых данных.

Генератор.

Генератор устроен аналогично генератору RS485.

Генератор передает в линию связи дифференциальные нули и единицы.

Когда генератор не передает данные, он отключен от линии связи сигналом OE и не влияет на её работу.

Генератор может замыкать линию связи на общий провод сигналом SEO. Это используется для сброса шины.

stydopedia.ru