- •Цели создания usb Шины
- •Таксономия областей применения
- •Технические характеристики
- •Концентраторы
- •Функции
- •Электрические параметры
- •Механические параметры
- •Разводка питания
- •Управление питанием
- •Протокол Шины
- •Распределение пропускной способности usb шины
- •Уровень Протокола Порядок Следования Бит
- •Поле sync
- •Форматы Поля Пакета
- •Поле Идентификатора Пакета
- •Поля адреса
- •Поле адреса
- •Поле Конечной Точки
- •Поле Номера Кадра
- •Поле Данных
- •Циклический Контроль по Избыточности
- •Crc маркеров
- •Пакеты Начала Кадра
- •Пакеты Данных
- •Пакеты Квитирования
- •Ответы Квитирования
- •Ответ Функции на Входные(in) Транзакции
- •Ответ Хоста на in Транзакции
- •Ответ Функции на out Транзакцию
- •Ответ Функции на Транзакцию setup
- •Форматы Транзакции
- •Bulk Транзакции
- •Передачи Управления
- •Сообщение Результатов Состояния(Reporting Status Results)
- •Транзакции Прерывания
- •Изохронные(iso)Транзакции
- •Помехоустойчивость
- •Обнаружение ошибок
- •Обработка ошибок
- •Синхронизация Переключения Данных и Повторная Передача
- •Инициализация Маркером setup
- •Успешные Транзакции Данных
- •Данные Разрушены или Не Приняты
- •Разрушенное Квитирование ack
Введение
Шина USB (Universal Serial Bus - универсальная последовательная шина) появилась по компьютерным меркам довольно давно - версия первого утвержденного варианта стандарта появилась 15 января 1996 года. Разработка стандарта была инициировна весьма авторитетными фирмами - Intel, DEC, IBM, NEC, Northen Telecom и Compaq.
Основная цель стандарта, поставленная перед его разработчиками - создать реальную возможность пользователям работать в режиме Plug&Play с периферийными устройствами. Это означает, что должно быть предусмотрено подключение устройства к работающему компьютеру, автоматическое распознавание его немедленно после подключения и последующей установки соответствующих драйверов. Кроме этого, желательно питание маломощных устройств подавать с самой шины. Скорость шины должна быть достаточной для подавляющего большинства периферийных устройств. Попутно решается историческая проблема нехватки ресурсов на внутренних шинах IBM PC совместимого компьютера - контроллер USB занимает только одно прерывание независимо от количества подключенных к шине устройств.
Цели создания usb Шины
USB Шина разработана, как расширение промышленного стандарта к архитектуре PC в интересах политики Computer TelephonyIntegration(CTI), потребителя и производительности приложений. Следующие критерии использовались для определения архитектуры USB Шины:
Легкость в использовании для расширения периферийных устройств PC
Дешевизна и поддержка скорости передачи до 12 МБ
Полная поддержка для передачи в реальном масштабе времени голоса, звука, и сжатого видео
Гибкий протокол для смешанного режима - изохронные передачи данных и асинхронная передача сообщений
Поддержка различных конфигураций и конструктивов PC
Обеспечение стандартного интерфейса способного к быстрому распространению в изделиях
Обеспечение возможности создания новых классов устройств, которые увеличат возможности PC
Таксономия областей применения
Технические характеристики
Возможности USB следуют из ее технических характеристик:
Высоко - скоростной обмен (full-speed signaling bit rate) - 12 Mb/s
Максимальная длина кабеля для высокой скорости обмена - 5 m
Низко - скоростной обмен (low-speed signaling bit rate) - 1.5 Mb/s
Максимальная длина кабеля для низкой скорости обмена - 3 m
Максимальное количество подключенных устройств (включая хабы) - 127
Возможность подключения устройств с различными скоростями обмена
Отсутствие необходимости в установке пользователем дополнительных элементов, таких как терминаторы для SCSI
Напряжение питания для периферийных устройств - 5 V
Максимальный ток потребления на одно устройство - 500 mA
Поэтому целесообразно подключать к USB практически любые периферийные устройства, кроме цифровых видеокамер и высокоскоростных жестких дисков. Особенно удобен этот интерфейс для подключения часто подключаемых/отключаемых приборов, таких как цифровые фотокамеры. Конструкция разъемов для USB рассчитана на многократное сочленение/расчленение.
Возможность использования только двух скоростей обмена данными ограничивает применяемость шины, но существенно уменьшает количество линий интерфейса и упрощает аппаратную реализацию.
Питание непосредственно от USB возможно только для устройств с малым потреблением, таких как клавиатуры, мыши, джойстики и т.п.
Описание Системы USB
Система USB описана тремя областями определения:
соединения USB
устройства USB
хост USB
Соединения USB - это способы, которыми устройства USB соединяются и связываются с хостом. Сюда входят:
Топология шины: модель соединения между устройствами USB и хостом.
Взаимодействие между уровнями: это задачи USB, которые выполняются на каждом уровне в системе.
Потоковые модели: способ, которым данные перемещаются в системе по USB между передатчиком и приемником
Планирование USB: USB обеспечивает общедоступную систему связей. Доступ при этом планируется для поддержания изохронных передач данных.
Топология Шины
USB Шина соединяет устройства USB с хостом USB. На физическом уровне топология USB представляется в виде многоуровневой звезды. В центре каждой звезды находится концентратор(hub). Каждый сегмент провода - двухточечное соединение между хостом и концентратором или функцией, или концентратором, соединенным с другим концентратором или функцией.
Рисунок 1 иллюстрирует топологию USB.
Рисунок 1. Топология Шины
Хост USB : Аппаратное и Программное обеспечение
Может быть только один хост в любой USB системе. Интерфейс USB в главной компьютерной системе упоминается как хост контроллер. Хост контроллер может быть выполнен в комбинации аппаратных средств, программируемого оборудования, или программного обеспечения. Корневой концентратор(root hub) интегрирован внутрь хост-системы, чтобы обеспечивать одну или большее количество точек подключения.
Хост USB взаимодействует с устройствами USB через хост-контроллер. Хост ответственен за следующее:
Обнаружение присоединения и удаления устройств USB
Управление потоком управления между хостом и устройствами USB
Управление потоком данных между хостом и устройствами USB
Сбор статистики о состоянии и активности
Обеспечение подачи ограниченного количества мощности на присоединенные устройства USB
Программное обеспечение системы USB на хосте управляет взаимодействиями между устройствами USB и хост-основанным программным обеспечением устройства. Имеются пять областей взаимодействия между программным обеспечением системы USB и программным обеспечением устройства, они следующие:
Перенумерация Устройств и конфигурация
Изохронные передачи данных
Асинхронные передачи данных
Управление питанием
Информация об управлении устройствами и шиной
Устройства USB:
Концентраторы, которые обеспечивают дополнительное присоединение узлов (points) USB
Функции, которые обеспечивают возможности системы; например, ISDN соединение, цифровой джойстик или колонки