Реклама:

Таненбаум Э.- Архитектура компьютера. стр.177

снабжены встроенными сетевыми концентраторами для дополнительных устройств. Например, монитор может содержать два хаба для правой и левой колонок.

Шина USB представляет собой ряд каналов между корневым хабом и устройствами ввода-вывода. Каждое устройство может разбить свой канал максимум на 16 подканалов для различных типов данных (например, аудио и видео). В каждом канале или подканале данные перемещаются от корневого хаба к устройству и обратно. Между двумя устройствами ввода-вывода обмена информацией не происходит.

Ровно через каждую миллисекунду (±0,05 мс) корневой хаб передает новый кадр, чтобы синхронизировать все устройства во времени. Кадр состоит из пакетов, первый из которых передается от хаба к устройству. Следующие пакеты кадра могут передаваться в том же направлении, а могут и в противоположном (от устройства к хабу). На рис. 3.55 показаны четыре последовательных кадра.

Таненбаум Э.- Архитектура компьютера.

Рис. 3.55. Корневой хаб шины USB передает кадры каждую миллисекунду

В кадрах 0 и 2 не происходит никаких действий, поэтому в них содержится только пакет SOF (Start of Frame — начало кадра). Этот пакет всегда посылается всем устройствам. Кадр 1 — упорядоченный запрос (например, сканеру посылается запрос на передачу битов сканированного им изображения). Кадр 3 состоит из данных, передаваемых какому-нибудь устройству (например, принтеру).

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

без требований, характерных для устройств реального времени. Наконец, кадры последнего типа нужны потому, что шина USB не поддерживает прерываний. Например, чтобы не вызывать прерывание всякий раз, когда нажимается клавиша, операционная система может вызывать прерывания каждые 50 мс и «собирать» все задержанные данные о нажатии клавиш.

Кадр состоит из одного или нескольких пакетов. Пакеты могут посылаться в обоих направлениях. Существует четыре типа пакетов: маркеры, пакеты данных, пакеты квитирования и специальные пакеты. Маркеры передаются от концентратора к устройству и предназначены для управления системой. Пакеты SOF, IN и OUT на рис. 3.55 — маркеры. Пакет SOF (Start of Frame — начало кадра) является первым в любом кадре, он идентифицирует начало кадра. Если никаких действий выполнять не нужно, пакет SOF — единственный в кадре. Пакет IN — это запрос. Этот пакет требует, чтобы устройство выдало определенные данные. Поля в пакете IN содержат информацию о том, какой именно канал запрашивается, и по этой информации устройство определяет, какие именно данные выдавать (если оно манипулирует несколькими потоками данных). Пакет OUT объявляет, что далее последует передача данных для устройства. Последний тип маркера, SETUP (он не показан на рисунке), используется при конфигурировании.


⇐ Предыдущая страница| |Следующая страница ⇒