Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Применение шины USB




Хост

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

Управляющие посылки (control transfers) используются для конфигурирования устройств во время их подключения и для управления устройствами в процес­се работы. Протокол обеспечивает гарантированную доставку данных.

Передачи массивов данных (bulk data transfers) — это передачи без обязательств по задержке доставки и скорости передачи. Передачи массивов могут занимать всю полосу пропускания шины. Приоритет этих передач самый низкий, они могут приостанавливаться при большой загрузке шины. При случайной ошибке - выполняется повтор. Передачи массивов используются для обмена данны­ми с принтерами, сканерами, устройствами хранения и т. п.

Прерывания (interrupt) — короткие передачи, которые имеют спонтанный ха­рактер. Предел времени обслуживания устанавливается в диапазоне 10-255 мс для низкой, 1-255 мс для полной скорости, для высокой скорости - 125 мкс. При случайных ошибках обмена выполняется повтор. Прерывания используются, при вводе символов с клавиатуры или для передачи сообщения о перемещении мыши.

Изохронные передачи (isochronous transfers) — непрерывные передачи в реаль­ном времени, занимающие предварительно согласованную часть пропускной способности шины с гарантированным временем задержки доставки. Позволя­ют на полной скорости организовать канал с полосой 1,023 Мбайт/с (или два по 0,5 Мбайт/с), заняв 70 % доступной полосы (остаток можно заполнить и менее емкими каналами). На высокой скорости конечная точка может полу­чить канал до 24 Мбайт/с (192 Мбит/с). В случае обнаружения ошибки изо­хронные данные не повторяются — недействительные пакеты игнорируются.

Изохронные передачи нужны для потоковых устройств: видеокамер, цифро­вых аудиоустройств (колонки USB, микрофон), устройств воспроизведения и записи аудио- и видеоданных (CD и DVD). Видеопоток (без компрессии) шина
USB способна передавать только на высокой скорости.

У каждой шины USB должен быть один (и только один!) хост — компьютер с кон­троллером USB.

Хост делится на три основных уровня.

Интерфейс шины USB обеспечивает физический интерфейс и протокол шины.
Интерфейс шины реализуется хост-контроллером, имеющим встроенный
корне­вой хаб, обеспечивающий точки физического подключения к шине (гнезда USB типа «А»). Хост-контроллер отвечает за генерацию (микро) кадров. На аппарат­ном уровне хост-контроллер обменивается информацией с основной памятью компьютера, используя прямое управление шиной (bus-mastering) с целью минимизации нагрузки на центральный процессор.

Система USB, используя хост-контроллер(ы), транслирует клиентское «виде­ние» обмена данными с устройствами в транзакции, выполняемые с реальны­ми устройствами шины. Система отвечает и за распределение ресурсов USB —полосы пропускания и мощности источников питания (для устройств, пита­ющихся от шины). Система состоит из трех основных частей:

1) Драйвер хост-контроллера — HCD (Host Controller Driver) — модуль, при­вязанный к конкретной модели контроллера, обеспечивающий абстрагиро­вание драйвера USB и позволяющий в одну систему включать несколько разнотипных контроллеров.

2) Драйвер USB — USBD (USB Driver) — обеспечивает основной интерфейс (USBDI) между клиентами и устройствами USB. Интерфейс HCDI (Host Controller Driver Interface) между USBD и HCD спецификацией USB не регламентируется. Он определяется разработчиками ОС и должен поддержи­ваться разработчиками хост-контроллеров,

Кроме того, USBD отвечает за некоторое абстрактное пред­ставление устройства USB клиенту, которое позволяет выполнять конфи­гурирование и управление состоянием устройств (включая и стандартное
управление). Реализация интерфейса USBDI
определяется операционной системой.

3) Программное обеспечение хоста реализует функции, необходимые для функ­ционирования системы USB в целом: обнаружение подключения и отключе­ния устройств, (загрузка требуемых драйверов), нумерацию устройств, распределение по­лосы пропускания и потребляемой мощности и т. п.

Клиенты USB — программные элементы (приложения или системные компо­ненты), взаимодействующие с устройствами USB. Клиенты могут взаимодей­ствовать с любыми устройствами, подключенными к системе USB. Однако система USB изолирует клиентов от непосредственного обмена с какими-либо портами (в пространстве ввода-вывода) или ячейками памяти, представляющими интерфейсную часть контроллера USB.

 

Уровни хоста имеют следующие возможности:

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

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

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

♦ сбор статистики активности и состояний устройств;

♦ управление электрическим интерфейсом между хост-контроллером и устрой­ствами USB, включая управление электропитанием.

Хост-контроллер является аппаратным посредником между устройствами USB и хостом. Программная часть хоста в полном объеме реализуется операционной системой.

USB поддерживает динамическое подключение и отключение устройств. Нуме­рация (перенумерация) устройств шины идет постоянно, отслеживая изменения физической топологии.

Все устройства подключаются через порты хабов. Хабы определяют подключение и отключение устройств к своим портам и сообщают состояние портов при запро­се от контроллера. Хост разрешает работу порта и адресуется к устройству через канал управления.

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

Хост создает канал управления (control pipe) с этим устройством, используя назначенный адрес и нулевой номер точки назначения.

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

Когда устройство отключается, хаб автоматически запрещает соответствующий порт и сообщает об отключении контроллеру, который удаляет сведения о дан­ном устройстве из всех структур данных. Если отключается хаб, процесс удале­ния выполняется для всех подключенных к нему устройств. Если отключается функция, уведомление посылается заинтересованному ПО.

 

Благодаря своей универсальности и способности эффективно передавать разнород­ный трафик, шина USB применяется для подключения к PC самых разнообразных устройств. Она должна заменить традиционные порты СОМ и LPT, шины АТА и SCSI.

Удобна возможность подключения/отключения устройств на ходу и их использование сразу, без перезагрузки ОС. Удобна и возможность подключения большого количества (до 127) устройств к одной шине, (при наличии хабов). Хост-контроллер интегрирован в большинство современных системных плат. Выпускаются и карты расширения с контроллерами USB (обычно для шины PCI). Но применение USB сдерживается недостаточ­ной активностью разработчиков ПО (производителей оборудования). Для того чтобы система USB работала, необходимо, чтобы были загружены драйверы хост-контроллера.




Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 372; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.017 сек.