- •Глава 27. Интерфейс usb 2.0
- •27.1. Общая характеристика и структура интерфейса usb
- •27.2. Физический интерфейс
- •27.3. Модель передачи данных
- •27.4. Типы передачи данных
- •27.5. Протокол Фазы транзакций. Признаки и идентификаторы пакетов
- •Передача данных
- •Передача данных от хост-контроллера к устройству
- •Обработка ошибочных ситуаций
- •27.6. Системное конфигурирование
- •Передача данных от пу хост-контроллеру
- •Устройства интерфейса usb - функции и концентраторы
- •Хост-контроллер
- •27.7. Интерфейс usb otg
- •27.8. Интерфейс usb Wireless
- •27.9. Контрольные вопросы
27.2. Физический интерфейс
Информационные сигналы и питающее напряжение 5В передаются по кабелю из 4-х проводников. Используется дифференциальный способ передачи сигналов D+ и D- по двум проводам. Уровни сигналов передатчиков в статическом режиме должны быть ниже 0,3В (низкий уровень) или выше 2,8В (высокий уровень).
В стандартах USB 1.0 и USB 2.0 для обеспечения: полной скорости передачи используется экранированная витая пара с импедансом 90 Ом и длиной сегмента до 5м; низкой скорости передачи – не витой неэкранированный кабель длиной сегмента до 3м. Низкоскоростные кабели и устройства дешевле высокоскоростных. Одна и та же система может одновременно использовать оба режима; переключение для периферийных устройств осуществляется прозрачно.
Стандарты USB 1.0 и USB 2.0 определяют два типа разъемов ( табл. 27.1 и рис. 27.2).
Таблица 27.1
Контакт |
Цепь |
Контакт |
Цепь |
1 |
VBus |
3 |
D+ |
2 |
D- |
4 |
GND |
Рис. 27.2. Гнезда USB: а - типа "А", б - типа "В", в - символическое обозначение
Разъемы типа "А" применяются для подключения к концентраторам (Upstream Connector). Вилки устанавливаются на кабелях, не отсоединяемых от периферийных устройств (например, клавиатура, мышь и т. п.). Гнезда устанавливаются на нисходящих портах (Downstream Port) концентраторов.
Разъемы типа "В" (Downstream Connector) устанавливаются на периферийных устройствах, от которых соединительный кабель может отсоединяться (принтеры и сканеры). Ответная часть (вилка) устанавливается на соединительном кабеле, противоположный конец которого имеет вилку типа "А".
Разъемы типов "А" и "В" различаются механически, что исключает недопустимые петлевые соединения портов концентраторов. Четырехконтактные разъемы имеют ключи, исключающие неправильное присоединение. Конструкция разъемов обеспечивает позднее соединение и раннее отсоединение сигнальных цепей по сравнению с цепями питания. Для распознавания разъема USB на корпусе устройства ставится стандартное символическое обозначение.
Питание устройств USB возможно от кабеля или от собственного блока питания. Центральная часть системы USB (хост-контроллер) обеспечивает питанием непосредственно подключенные к нему ПУ. Каждый концентратор, в свою очередь, обеспечивает питание устройств, подключенных к его нисходящим портам. При некоторых ограничениях топологии допускается применение концентраторов, питающихся от интерфейса.
27.3. Модель передачи данных
Каждое устройство интерфейса USB представляет собой набор независимых конечных точек (Endpoint), с которыми хост-контроллер обменивается информацией. Конечные точки (функции в периферийном устройстве) описываются следующими параметрами:
требуемой частотой доступа к интерфейсу и допустимыми задержками обслуживания;
требуемой полосой пропускания канала;
номером конечной точки;
требованиями к обработке ошибок;
максимальными размерами передаваемых и принимаемых пакетов;
типом обмена;
направлением обмена (для сплошного и изохронного обменов).
Каждое устройство с интерфейсом USB обязательно имеет конечную точку с номером 0, используемую для инициализации, общего управления и опроса его состояния. Эта конечная точка всегда сконфигурирована при включении питания и подключении устройства к интерфейсу. Она поддерживает передачи типа "управление".
Кроме нулевой конечной точки, периферийные устройства-функции могут иметь конечные точки, реализующие полезный обмен данными. Низкоскоростные устройства могут иметь до двух дополнительных конечных точек, полноскоростные - до 16 конечных точек ввода и 16 конечных точек вывода (протокольное ограничение). Конечные точки не могут быть использованы до их конфигурирования (установления согласованного с ними канала).
Каналом (Pipe) в интерфейсе USB называется модель передачи данных между центральной частью системы USB (хост-контроллером) и конечной точкой (Endpoint) устройства.
Имеются два типа каналов: потоки (Stream) и сообщения (Message).
Поток доставляет данные от одного конца канала к другому, он всегда однонаправленный. Один и тот же номер конечной точки может использоваться для двух поточных каналов - ввода и вывода.
Поток может реализовывать следующие типы обмена: сплошной, изохронный и прерывания. Доставка всегда идет в порядке "первым вошел - первым вышел" (FIFO). С точки зрения интерфейса USB, данные потока не структурированы.
Сообщения имеют формат, определенный спецификацией интерфейса USB. Хост-контроллер посылает запрос к конечной точке, после которого передается (принимается) пакет сообщения, за которым следует пакет с информацией состояния конечной точки. Последующее сообщение нормально не может быть послано до обработки предыдущего, но при отработке ошибок возможен сброс не обслуженных сообщений. Двухсторонний обмен сообщениями адресуется к одной и той же конечной точке. Для доставки управляющих сообщений (команд) используется только обмен типа "управление".
С каналами связаны характеристики, соответствующие конечной точке (полоса пропускания, тип сервиса, размер буфера и т.п.). Каналы организуются при конфигурировании периферийных устройств. Для каждого включенного периферийного устройства существует канал управляющих сообщений, по которому передается информация конфигурирования, управления и состояния.
