6 октября 2011 г. - nmetau.edu.ua · спецификацией USB v.1.1 , равно...

Preview:

Citation preview

USB

Universal serial bus

1Кафедра информационных технологий и системНациональная металлургическая академия Украины

6 октября 2011 г.

Лекция 9

USB

USB (Universal Serial Bus) - универсальная последовательнаяшина. Универсальный порт для подключения различныхустройств и организации обмена между ними. Описание USBсостоит из ряда спецификаций, которые разрабатываютсягруппой компаний в рамках некоммерческой организацииUSB Implementers Forum . Основной целью даннойразработки было создания универсального порта ПК дляподключения потоковых устройств. Спецификация USB 2.0является на сегодняшний день основнымкоммуникационным портом персональных компьютеров.USB представляет открытый протокол связи (нетлицензионного сбора), что способствовало егораспространению и популярности во всём мире.

Лекция 9

USB

Характиристики USB:Кабель: 5 проводовКаналы данных: 1 (полудуплекс)Количество сервисных сигналов: 9(зависимые)Состояний линии связи: 4Тип обмена: асинхронный одноточечныйСкорость обмена: до 12 Mb/sДлина пакета: 4...1030 байтДальность связи: 5 m

Лекция 9

USB

Физический уровень интерфейса USB сделан проще COMпорта и тем более, проще интерфейса RS-232. USB былразработан для простого применения. ФункциональностьUSB в основном увеличивается за счет программного уровняинтерфейса, которая не требует аппаратных затрат.

Лекция 9

USB

Расширение функциональности компьютера. На тотмомент для подключения внешних периферийныхустройств к персональному компьютеру использовалосьнесколько ”традиционных” (англ. legacy) интерфейсов(PS/2, последовательный порт, параллельный порт, портдля подключения джойстика, SCSI), и с появлениемновых внешних устройств разрабатывали и новыйразъём. Предполагалось, что USB заменит их все изаодно подхлестнёт разработку нетрадиционныхустройств.Подключить к компьютеру мобильный телефон. В товремя поднимались на ноги компьютерные сети,телефоны переходили на цифровую передачу голоса, ини один из имеющихся интерфейсов не годился дляпередачи с телефона на компьютер как речи, так иданных.

Лекция 9

USB

Простота для пользователя. Старые интерфейсы(например, COM- и LPT-порты) были крайне простыдля разработчика, но не давали настоящего ”plug andplay”. Требовались новые механизмы взаимодействиякомпьютера с низко- и среднескоростными внешнимиустройствами – возможно, более сложные дляконструкторов, но надёжные, дружественные ипригодные к ”горячему” подключению.

Лекция 9

USB

Лекция 9

USB

Кабель с разными разъёмами не позволяет соединятьдрайвера Upstream с Upstream и Downstream с Downstream.Это обусловлено несимметричностью интерфейса USB 1.1Максимальная длина кабеля для режима LS(LowSpeed)равна 3 м.Максимальная длина кабеля для режима FS(FullSpeed)равна 5 м.Сигналы D- и D+ в кабеле (FS) передаются по витой паре сволновым сопротивлением 90 Ом.В кабеле (LS) витая пара не применяется.

Лекция 9

USB

На физическом уровне сеть USB v.1.1 представляеттопологию многоярусной звезды (на самом деле дерево).Максимальное количество ярусов, предусмотренноеспецификацией USB v.1.1 , равно четырем. Отсюда,максимальный радиус сети равен 20 метрам. Максимальноеколичество точек (хабов и функций) сети равно 127.

Лекция 9

USB

Лекция 9

USB

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

Лекция 9

USB

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

Лекция 9

USB

На логическом уровне устройство USB поддерживаеттранзакции приема и передачи данных. Каждый пакеткаждой транзакции содержит в себе номер оконечной точки(endpoint) на устройстве. При подключении устройствадрайверы в ядре ОС читают с устройства список оконечныхточек и создают управляющие структуры данных дляобщения с каждой оконечной точкой устройства.Совокупность оконечной точки и структур данных в ядреОС называется каналом (pipe).

Лекция 9

USB

Оконечные точки, а значит, и каналы, относятся к одному из4 классов – поточный (bulk), управляющий (control),изохронный (isoch) и прерывание (interrupt).Низкоскоростные устройства, такие, как мышь, не могутиметь изохронные и поточные каналы.

Лекция 9

USB

Управляющий канал предназначен для обмена сустройством короткими пакетами ”вопрос-ответ”. Любоеустройство имеет управляющий канал 0, который позволяетпрограммному обеспечению ОС прочитать краткуюинформацию об устройстве, в том числе коды производителяи модели, используемые для выбора драйвера, и списокдругих оконечных точек.

Лекция 9

USB

Канал прерывания позволяет доставлять короткие пакеты ив том, и в другом направлении, без получения на нихответа/подтверждения, но с гарантией времени доставки –пакет будет доставлен не позже, чем через N миллисекунд.Например, используется в устройствах ввода(клавиатуры/мыши/джойстики).

Лекция 9

USB

Изохронный канал позволяет доставлять пакеты безгарантии доставки и без ответов/подтверждений, но сгарантированной скоростью доставки в N пакетов на одинпериод шины (1 КГц у low и full speed, 8 КГц у high speed).Используется для передачи аудио- и видеоинформации.

Лекция 9

USB

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

Лекция 9

USB

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

Лекция 9

USB

Активной стороной шины всегда является контроллер,передача пакета данных от устройства к контроллеруреализована как короткий вопрос контроллера и длинный,содержащий данные, ответ устройства. Расписание движенияпакетов для каждого периода шины создается совместнымусилием аппаратуры контроллера и ПО драйвера, для этогомногие контроллеры используют крайне сложный DMA сосложной DMA-программой, формируемой драйвером.

Лекция 9

USB

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

Лекция 9

USB

USB 1.0 спецификация выпущена 15 января 1996 года.Технические характеристики:

два режима передачи данных:режим с высокой пропускной способностью (Full-Speed)– 12 Мбит/срежим с низкой пропускной способностью (Low-Speed) –1,5 Мбит/с

максимальная длина кабеля для режима с высокойпропускной способностью – 5 ммаксимальное количество подключённых устройств(включая размножители) – 127возможно подключение устройств, работающих врежимах с различной пропускной способностью кодному контроллеру USBнапряжение питания для периферийных устройств - 5 Вмаксимальный ток, потребляемый периферийнымустройством - 500 мА

Лекция 9

USB

USB 2.0 спецификация выпущена в апреле 2000 года.USB 2.0 отличается от USB 1.1 введением режима Hi-speed.Для устройств USB 2.0 регламентировано три режимаработы:

Low-speed, 10–1500 Кбит/c (используется дляинтерактивных устройств: клавиатуры, мыши,джойстики)Full-speed, 0,5–12 Мбит/с (аудио-, видеоустройства)Hi-speed, 25–480 Мбит/с (видеоустройства, устройствахранения информации)

Лекция 9

USB

Хотя пиковая пропускная способность USB 2.0 составляет480 Мбит/с (60 Мбайт/с), на практике обеспечитьпропускную способность, близкую к пиковой, не удаётся( 33,5 Мбайт/сек на практике). Это объясняется достаточнобольшими задержками шины USB между запросом напередачу данных и собственно началом передачи. Например,шина FireWire(400), хотя и обладает меньшей пиковойпропускной способностью 400 Мбит/с, что на 80 Мбит/с (10Мбайт/с) меньше, чем у USB 2.0, в реальности позволяетобеспечить бо”льшую пропускную способность для обменаданными с жёсткими дисками и другими устройствамихранения информации. В связи с этим разнообразныемобильные накопители уже давно ”упираются” внедостаточную практическую пропускную способность USB2.0.

Лекция 9

USB

Окончательная спецификация USB 3.0 появилась в 2008году. Созданием USB 3.0 занимались компании Intel,Microsoft, Hewlett-Packard, Texas Instruments, NEC и NXPSemiconductors. В спецификации USB 3.0 разъёмы и кабелиобновлённого стандарта физически и функциональносовместимы с USB 2.0. Кабель USB 2.0 содержит в себечетыре линии – пару для приёма/передачи данных, плюс иноль питания. В дополнение к ним USB 3.0 добавляет ещечетыре линии связи (две витых пары), в результате чегокабель стал гораздо толще. Hовые контакты в разъемах USB3.0 расположены отдельно от старых на другом контактномряду

Лекция 9

USB

Спецификация USB 3.0 повышает максимальную скоростьпередачи информации до 4,8 Гбит/с – что на порядокбольше 480 Мбит/с, которые может обеспечить USB 2.0.Версия 3.0 может похвастаться не только более высокойскоростью передачи информации, но и увеличенной силойтока с 500 мА до 900 мА. Отныне пользователь может нетолько подпитывать от одного хаба большее количествоустройств, но и сами устройства во многих случаях смогутизбавиться от отдельных блоков питания.

Лекция 9

USB

Thunderbolt (ранее известный как Light Peak) (англ.thunderbolt – удар молнии) – перспективный интерфейс дляподключения периферийных устройств к компьютеру,разработанный корпорацией Intel и представленный нарынке компанией Apple. Позиционируется как заменасуществующих проводных интерфейсов, таких как USB,SCSI, SATA и FireWire.

Лекция 9

USB

Изначально планировалось, что передача данных будетосуществляться только по оптическому волокну, однако вдальнейшем стало известно, что многие устройства будутиспользовать обычные медные провода.[2]В первом поколении устройств заявлена дуплексная скоростьпередачи данных 10 Гбит/с на расстояния до 100 метров.

Лекция 9

USB

В отличие от RS-232 и аналогичных последовательныхинтерфейсов, где формат посылаемых данных не имеетчетко организованной структуры, для USB шиныразграничены различные слои протоколов. Пусть эти словане пугают Вас пока Вы не ознакомились полностью со всейструктурой пакета. Как только Вы поймете что происходитна шине, то вы разберетесь, что Вас затронут протоколылишь верхнего уровня, всё канальное кодирование,детектирование событий и ошибок возьмет на себя USBконтроллер.

Лекция 9

USB

Каждая USB транзакция состоит из следующих частей:Признак пакета (Заголовок определяющий что далеебудет следовать)Пакет данных (Опционально)Пакет статуса транзакции (Используется дляподтверждения нормального завершения транзакции иобеспечения коррекции ошибок при передаче)

Лекция 9

USB

USB пакет состоит из следующих полей:Поле синхронизации (Sync Field)Все пакеты должны начинаться с поля синхронизации. Полесинхронизации имеет размер 8 бит для низкоскоростных иполноскоростных устройств или 32 бита длявысокоскоростных устройств и используется дляподсинхронизации тактового генератора, встроенного в USBконтроллер. Последние два бита поля синхронизацииявляются маркером, который используется дляидентификации конца области синхронизации и начала PIDполя.

Лекция 9

USB

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

Лекция 9

USB

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

Лекция 9

USB

Поле адреса устройства (Addr Field) Поле адресаиспользуется для идентификации к какому устройствунаправлен текущий пакет. Размерность поля - 7 бит, чтопозволяет адресовать 127 уникальных USB устройств. Послесброса или включения питания, адрес устройстваустанавливается по умолчанию в 0 и должен бытьзапрограммирован ХОСТом в ходе процесса энумерации.Адрес 0 (заданный по умолчанию) зарезервирован для вновьподключаемых устройств и не может быть назначен длянормальной работы.

Лекция 9

USB

Поле адреса конечной точки (Endpoint Field) Поле адресаконечной точки имеет размерность 4 бита и позволяетразмещать в устройстве до 16 конечных точек. Все функциидолжны поддерживать одну управляющую ’0’ конечнуюточку. Низкоскоростные устройства поддерживают толькотри канала передачи: управляющий канал, связанный снулевой конечной точкой и два дополнительных канала (двеInterrupt конечные точки). Полноскоростные устройстваподдерживают максимум до 16 конечных точек.

Лекция 9

USB

Поле адреса конечной точки (Endpoint Field) Поле адресаконечной точки имеет размерность 4 бита и позволяетразмещать в устройстве до 16 конечных точек. Все функциидолжны поддерживать одну управляющую ’0’ конечнуюточку. Низкоскоростные устройства поддерживают толькотри канала передачи: управляющий канал, связанный снулевой конечной точкой и два дополнительных канала (двеInterrupt конечные точки). Полноскоростные устройстваподдерживают максимум до 16 конечных точек.

Лекция 9

USB

Поле адреса конечной точки (Endpoint Field) Поле адресаконечной точки имеет размерность 4 бита и позволяетразмещать в устройстве до 16 конечных точек. Все функциидолжны поддерживать одну управляющую ’0’ конечнуюточку. Низкоскоростные устройства поддерживают толькотри канала передачи: управляющий канал, связанный снулевой конечной точкой и два дополнительных канала (двеInterrupt конечные точки). Полноскоростные устройстваподдерживают максимум до 16 конечных точек.

Лекция 9

USB

Поле адреса конечной точки (Endpoint Field) Поле адресаконечной точки имеет размерность 4 бита и позволяетразмещать в устройстве до 16 конечных точек. Все функциидолжны поддерживать одну управляющую ’0’ конечнуюточку. Низкоскоростные устройства поддерживают толькотри канала передачи: управляющий канал, связанный снулевой конечной точкой и два дополнительных канала (двеInterrupt конечные точки). Полноскоростные устройстваподдерживают максимум до 16 конечных точек.

Лекция 9

USB

E

Лекция 9

Recommended