Организации шины IEEE 1394 – FireWire

Информация - Компьютеры, программирование

Другие материалы по предмету Компьютеры, программирование

одят известные I/O интерфейсы. IEEE 1394 может предоставить интерфейс с верхним слоем нового параллельного стандарта для порта, IEEE 1284. Хотя скорости передачи IEEE 1284 4 - 32 Мбит/с ниже по быстродействию, чем 1394, 1284 находит применение при работе с принтерами, так как нужна обратная совместимость с существующим параллельным интерфейсом Centronics. Устройства IEEE 1394 с различными скоростями передачи могут соединяться друг с другом, обеспечивая обратную совместимость с устройствами меньшего быстродействия.

Стандартные соединения шины осуществляются через 6-проводный кабель, содержащий две отдельные экранированные скрученные пары для передачи данных, два провода для подвода питания, и общий экран. Скрученные пары используются для передачи и приема данных. Силовые провода служат для подачи напряжения (8 - 40) В, при токе до 1.5 А. Для гальванической изоляции применяются трансформаторы, которые могут работать при разности потенциалов до 500 В, или конденсаторы, обеспечивающие изоляцию при напряжениях до 60В относительно земли.

В 2004 году был утвержден стандарт IEEE 1394.1, который позволяет расширить число подключаемых устройств до 64449.

В 2005 году принята версия стандарта IEEE 1394c, которая позволяет использовать кабель категории 5е (Ethernet). При этом появилась возможность использовать параллельно IEEE 1394c и GigaEthernet на одном кабеле. Максимальная заявленная длина сегмента - 100 м, Максимальная скорость соответствует S800 - 800 Мбит/с.

 

3. Протокол IEEE 1394

 

Протокол 1394 реализуется на трех уровнях (рисунок 3).

Уровень транзакций (Transaction Layer) преобразует пакеты в данные, предоставляемые приложениям, и наоборот. Он реализует протокол запросов-ответов, соответствующий стандарту ISO/IEC 13213:1994 (ANSI/IEEE 1212, редакции 1994 г.) архитектуры регистров управления и состояния CSR (Control and Status Register) для микрокомпьютерных шин (чтение, запись, блокировка). Это облегчает связь шины 1394 со стандартными параллельными шинами.

Уровень связи (Link Layer) из данных физического уровня формирует пакеты и выполняет обратные преобразования. Он обеспечивает обмен узлов датаграммами с подтверждениями. Уровень отвечает за передачу пакетов и управление изохронными передачами.

 

Рисунок 3 - Трехуровневая структура FireWire

 

Физический уровень (Physical Layer) вырабатывает и принимает сигналы шины. Он обеспечивает инициализацию и арбитраж, предполагая, что в любой момент времени работает только один передатчик. Уровень передает потоки данных и уровни сигналов последовательной шины вышестоящему уровню. Между этими уровнями возможна гальваническая развязка, при которой микросхемы физического уровня питаются от шины. Гальваническая развязка необходима для предотвращения паразитных контуров общего провода, которые могут появиться через провода защитного заземления блоков питания.

Аппаратная часть FireWire обычно состоит из двух специализированных микросхем - трансиверов физического уровня PHY Transceiver и моста связи с шиной LINK Chip. Связь между ними возможна, например, по интерфейсу IBM-Apple LINK-PHY. Микросхемы уровня связи выполняют все функции своего уровня и часть функций уровня транзакций; остальная часть уровня транзакций выполняется программно.

Для передачи асинхронных сообщений используется 64-битная адресация регистров устройств 1394. В адресе выделяется 16 бит для адресации узлов сети: 6-битное поле идентификатора узла допускает до 63 устройств в каждой шине; 10-битное поле идентификатора шины допускает использование в системе до 1023 шин разного типа (включая внутренние), соединенных мостами. Протокол шины позволяет обращаться к памяти (регистрам) устройств в режиме DMA. В адресном пространстве каждого устройства имеются конфигурационные регистры, в которых содержится вся информация, необходимая для взаимодействия с ним других устройств. Данные передаются пакетами, в начале каждого пакета передаются биты состояния арбитража. Устройство может передавать данные только после успешного прохождения арбитража. Имеются два основных типа передач данных - изохронный, ради которого и строилась шина, и асинхронный. Изохронные передачи обеспечивают гарантированную полосу пропускания и время задержки, асинхронные передачи обеспечивают гарантированную доставку.

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

Изохронные передачи ведутся широковещательно. В сети может быть организовано до 64 изохронных каналов, и каждый пакет изохронной передачи, кроме собственно данных, несет номер канала. Целостность данных контролируется CRC-кодом. Изохронные передачи всех каналов "слышат" все устройства шины, но из всех пакетов принимают только данные интересующих их каналов. Устройство-источник изохронных данных (камера, приемник, проигрыватель) на этапе конфигурирования получает номер и параметры выделенного ему канала.

Шина поддерживает динамическое реконфигурирование - возможность "горячего" подключения и отключения устройств. Когда устройство включается в сеть, оно широковещатель?/p>