Последовательные интерфейсы USB и FireWire

USB (англ. «Universal Serial Bus» – универсальная последовательная шина) является промышленным стандартом расширения архитектуры IBM PC, ориентированным на интеграцию с телефонией и устройствами бытовой электроники. Спецификация USB 2.0 предусматривает радикальный рост пропускной способности шины. Первоначально (в версиях 1.0 и 1.1) шина обеспечивала две скорости передачи информации: полную скорость (англ. «Full Speed», FS), 12 Мбит/с и низкую скорость (англ. «Low Speed», LS) 1,5 Мбит/с. В версии 2.0 определена еще и высокая скорость (англ. «High Speed», HS) 480 Мбит/с, что позволяет существенно расширить круг устройств, подключаемых к шине. В одной и той же системе могут присутствовать и одновременно работать устройства со всеми тремя скоростями. Шина позволяет с использованием промежуточных хабов соединять устройства, удаленные от компьютера на расстояние до 30 м.

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

– хост отвечает за конфигурирование всех устройств;

– хост управляет всеми обменами (транзакциями) на шине;

– обмен информацией возможен только между хостом (его памятью) и устройствами – однорангового взаимодействия устройств шина USB не позволяет.

USB предполагает наличие следующих аппаратных составляющих:

– периферийные устройства USB – выполняют полезные функции;

– хост-контроллер обеспечивает связь шины с ядром компьютера. Хост котроллер объединяется с корневым хабом, организующим точки подключения устройств USB;

– хабы USB обеспечивают дополнительые точки подключения устройств;

– кабели USB соединяют устройства с хабами.

Ниже перечислены компоненты программной части USB:

– клиентское программное обеспечение (ПО) – это драйверы устройств USB, обеспечивающие доступ к устройствам со стороны прикладного ПО. Драйверы взаимодействуют с устройствами только через программный интерфейс с общим драйвером USB;

– драйвер USB – управляет всеми устройствами USB системы, их нумерацией, конфигурированием, предоставлением служб, распределением пропускной способности шины, мощности питания, и т.п.

– драйвер хост-контроллера преобразует запросы ввода-вывода в структуры данных, размещенные в коммуникационной области оперативной памяти, и обращается к регистрам хост-контроллера.

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

Кабель USB содержит две пары проводов: одну для сигнальных цепей (D+ и D-) и одну для схемной «земли» (GND) и питания +5 В (Vbus). Допустимая длина сегмента (кабеля от устройства до хаба) – до 5 м. Ограничения на длину сегмента диктуются затуханием сигнала и вносимыми задержками.

Физически интерфейс USB может быть организован с использованием пяти различных типов разъемов, в зависимости от области применения.

Высокопроизводительная последовательная шина (англ. «high performance serial bus») IEEE 1394 – FireWire создавалась как более дешевая и удобная альтернатива параллельным шинам (SCSI) для соединения равноранговых устройств. Шина без дополнительной аппаратуры (хабов) обеспечивает связь до 63 устройств. Устройства бытовой электроники – цифровые записывающие видеокамеры, камеры для видеоконференций, фотокамеры, приемники кабельного и спутникового телевидения, цифровые видеоплееры (CD и DVD), акустические системы, цифровые музыкальные инструменты, а также периферийные устройства компьютеров (принтеры, сканеры, устройства дисковой памяти) – и сами компьютеры могут объединяться в единую сеть. Шина не требует управления со стороны компьютера. Шина поддерживает динамическое реконфигурирование – возможность «горячего» подключения и отключения устройств.

Шина позиционируется как основа «домашней сети», объединяющей всю бытовую и компьютерную технику в комплекс. Эта сеть является одноранговой, чем существенно отличается от USB.

Стандарт IEEE 1394 описывает шину с последовательным интерфейсом, по которой информация передается пакетами. Источник пакетов должен получить право передачи пакета, используя механизм арбитража, в котором задействуются все устройства, подключенные к шине. Арбитраж предоставляет узлам право доступа в соответствии с запрошенным типом передачи. Для асинхронных транзакций арбитраж обеспечивает справедливое распределение полосы пропускания для каждого канала. Коллизии в исправной шине отсутствуют. Арбитраж в IEEE 1394 основан на прослушивании шины и определении зазора – покоя шины.

Устройства, подключаемые к шине, имеют один или несколько портов IEEE 1394, объединенных внутренним повторителем. Устройства соединяются друг с другом кабелями (сегментами), при этом допускается большая свобода выбора топологии физических соединений. Стандарт накладывает на топологию следующие ограничения:

– на шине может быть не более 63 узлов;

– между любой парой узлов может быть не более 16 кабельных сегментов;

– длина сегмента стандартного кабеля не должна превышать 4,5 м (в IEEE 1394b для ряда типов кабелей допустима длина до 100 м);

– суммарная длина кабеля не должна превышать 72 м;

– топология не должна иметь петель.

При этом логическая топология для передачи данных остается шинной – пакеты распространяются от источника ко всем узлам шины. Логическая топология для арбитража – древовидная иерархическая, «верховный арбитр» – корневой узел.

В первом варианте физического интерфейса (IEEE 1394 и 1394a) каждое кабельное соединение состоит из двух пар сигнальных электрических проводов и дополнительной пары проводов для подачи питания. Обе сигнальные пары используются для двунаправленной передачи сигналов, дифференциальных и линейных.

Разъемы, используемые в кабельной шине IEEE 1394, специально разработаны для обеспечения «горячего» подключения-отключения. Контакты цепей «земли» и питания длиннее других – они при подключении соединяются раньше, а при отключении разъединяются позже остальных. На портах устанавливаются гнезда, на кабелях – вилки. Экранирующий кожух применяется как дополнительный контакт. Миниатюрные 9-контактные разъемы имеют две различные модификации.

Стандартный 6-проводной кабель 1394 содержит две экранированные витые пары для передачи сигналов (TPA и TPB). Все эти провода помещаются в общий экран. Сигнальные пары проводников соединяются перекрестно.

Для питания узлов постоянным током в кабелях IEEE 1394 предусмотрена отдельная пара проводов – VG (GND) и VP (+) с напряжением 8– 40 В при токе до 1,5 А. Узлы могут быть источниками, потребителями питания или не пользоваться питанием от шины; их отношение к питанию сообщается в пакете самоидентификации.

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

Шина IEEE 1394 поддерживает два типа передач данных:

– асинхронные передачи без каких-либо требований к скорости и задержке доставки. Целостность данных контролируется CRC-кодом, гарантированную доставку обеспечивает механизм квитирования и повторов;

– изохронные передачи с гарантированной пропускной способностью, но без обеспечения надежной доставки. Изохронные передачи ведутся широковещательно и адресуются через номер канала, передаваемый в каждом пакете. На шине может быть организовано до 64 изохронных каналов, передачи всех каналов «слышат» все устройства шины, но из всех пакетов принимают только данные интересующих их каналов. Целостность данных контролируется CRC-кодом, но квитирование и повторы не применяются.

Вопросы для подготовки

1. Укажите наиболее важные и часто используемые внешние интерфейсы ПЭВМ IBM PC. Для чего они применяются?

2. Опишите организацию и программную модель LPT-порта.

3. Опишите принципы организации последовательных интерфейсов RS-232, RS-422, RS 485. Какова область применения каждого из них?

4. Укажите область применения интерфейсов USB и FireWire, а также перспективы их развития.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: