IEEE 1394 (FireWire, i-Link)

IEEE 1394 (FireWire, i-Link) представляет собой последовательную высокоскоростную шину для обмена информацией между ПК и прочими устройствами.

Каждый крупный производитель имеет собственный стандарт:

  • Apple — FireWire
  • Sony — i.LINK
  • Yamaha — mLAN
  • TI — Lynx
  • Creative — SB1394

История

Интерфейс IEEE 1394 был разработан в конце 80-х годов (в начале 90-х компания Apple создала свою платформу FireWare), он является стандартом интерфейса для высокоскоростных коммуникаций и изохронной передачи данных в режиме реального времени. Интерфейс 1394 очень сопоставим с USB, нередко эти технологии рассматриваются вместе, хотя USB имеет и большую долю рынка. Компания Apple впервые включила FireWire в некоторые свои модели компьютеров только в 1999 году, а с 2000 года большинство компьютеров Apple оснащалось FireWire-портами. IEEE 1394 изменил паралелльный SCSI во многих приложениях, в силу более низкой стоимости внедрения и простоты, а также более гибкой кабельной системы.

IEEE 1394 это High-Definition Audio-Video Network Alliance (HANA) стандарт подключения для A/V (audio/visual) компонента комуникации. FireWire также доступен в беспроводной связи, оптической и коаксиальной, с использованием изохронных протоколов.

FireWire - это название высокоскоростной серийной шины от компании Apple. Apple инициировали разработку данной шины в 1986 году, она велась специальной рабочей группой, которая в значительной степени финансировалась компанией Apple, хотя у них были и другие партнеры по поддержке этой группы, в частности, Texas Instruments, Sony, Digital Equipment Corporation, IBM и INMOS/SGS Thomson.

На 2007 год, IEEE 1394 является композитом четырех документов: оригинального IEEE Std. 1394-1995, исправленного IEEE Std. 1394a (2000), IEEE Std. 1394b (2002) исправленного, и исправленного IEEE Std. 1394c (2006). 12 июня 2008 года, все эти поправки, а также некоторые технические обновления, были включены в заменяющий все предыдущие стандарт IEEE Std. 1394.

Конкуренты из Sony тоже не сидели на месте и создали продукт под названием "i.LINK". Он является аналогом FireWire, но имеет меньший разъем и только четыре сигнальных проводника. Это в дальнейшем использовалось в 1394a, порт часто маркируется пометками типа "S100" или "S400" - для обозначения скорости Мбит/с.

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

Тесты показывают, что устойчивость скорости передачи данных у FireWire выше, чем у USB 2.0, но ниже, чем у USB 3.0.

Однако, основной барьер в широком распространении FireWire по мировому рынку ИТ состоит в том, что он более высокозатратен в сравнении с USB-интерфейсом, что является определяющим фактором в пользовательском выборе. На рынке компьютерной периферии себестоимость является основным барьером к успеху.

Основа

Кабель IEEE 1394 - это две витые пары (А и B), имеющие распайку типа A к B на одной стороне, и на другой стороне - типа B к A. Не исключается и проводник питания, хотя он и не обязателен.

Устройство может иметь до 4 разъемов, одна топология может включать в себя до 64 устройств, максимальная длина пути топологии — 16. Топология имеет древовидную структуру, отсутствуют замкнутые петли.

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

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

Применение

Довольно распространенными стандартами являются RFC 2734 — это IP поверх 1394, а также RFC 3146 — IPv6 поверх 1394. Эти стандарты поддерживались операционными системами Windows XP и Windows Server 2003. Windows Vista уже не поддерживала этот стандарт, но существует реализация сетевого стека в альтернативных драйверах, выпущенных компанией Unibrain. IEEE 1394 поддерживается многими операционными системами семейства UNIX.

Данный стандарт не осуществляет эмуляцию Ethernet над 1394, он применяет другой протокол ARP, но при этом эмуляция Ethernet над 1394 была включена во FreeBSD.

Устройства

Cтандарт SBP-2 предполагает использование SCSI поверх 1394, он в большинстве своем, применяется с целью подключения внешних жестких дисков к ПК, его корпус содержит чип моста 1394-ATA. Скорость передачи данных достигает показателя 27 Мб/с, что несущественно превышает скорость USB 2.0 (22 Мб/с) Однако эти показатели не могут сравниться с характеристиками USB 3.0.

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

По сути, 1394 предлагался как альтернативный вариант ATA (вместо текущего SATA). Но эти идеи так и не получили реализации, поскольку лицензионная политика Apple требовала выплат за каждый чип контроллера.

IEEE 1394 активно используется и сегодня как средство захвата фильмов с MiniDV. Возможен захват как в файлы, так и с камеры на камеру. Формат при этом практически сохраняется. Это значительно упрощает систему, снижая требования по наличию памяти. С тех пор, как 1394 начал применяться в miniDV, это положило конец проприетарным платам видеозахвата.

Особенности

Контроллеры 1394 облалдают одним уникальным свойством. Это возможность читать/писать произвольные адреса памяти со стороны шины, причем, не задействуя при этом процессор и ПО. Это связано с широким набором асинхронных транзакций и со структурой адресации.

Чтение/редактирование памяти посредством 1394 без применения процессора послужили причиной внедрения 1394 в двухмашинный отладчик ядра Windows (WinDbg). Это позволило существенно увеличить скорость процессов, в сравнении с последовательным портом, однако, данная функция требует наличия операционной системы не ниже Windows XP, причем с обеих сторон. Такая же возможность применяется в отладчиках и других операционных систем (firescope, например).

Схемы организации устройств IEEE 1394

Организованы с использованием 3-уровневой схемы: Transaction, Link и Physical. Эти уровни соответствуют трем нижним уровням модели OSI.

  • Transaction Layer — маршрутизация потоков данных с поддержкой асинхронного протокола записи-чтения.
  • Link Layer — формирование пакетов данных, обеспечение их доставки.
  • Physical Layer — преобразование цифровой информации в аналоговую (и наоборот) в целях передачи, контроль уровня сигнала на шине, управление доступом.
  • Bus Manager обеспечивает связь между шиной PCI и Transaction Layer, он назначает вид устройств, номера и типы логических каналов на шине. Кроме того, он обнаруживает ошибки.

Информация передается кадрами в125 мкс длиной. Кадр содержит временные слоты для каналов. Доступно два режима работы (синхронный и асинхронный). На каждый канал приходится один или несколько временных слотов. Передача данных осуществляется благодаря устройству-передатчику, которое делает запрос на открытие синхронного канала необходимой пропускной способности. Если передаваемый кадр обладает требуемым количеством временных слотов для данного канала, поступает утвердительный ответ и канал становится доступным.

Версии FireWire

IEEE 1394

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

Скорость передачи данных — 98,304, 196,608 и 393,216 Мбит/с. Их округляют до 100, 200 и 400 Мбит/с, соответственно. Длина кабеля достигает 4,5 м.

IEEE 1394a

В 2000 году был утвержден стандарт IEEE 1394а. Был проведен ряд усовершенствований, что повысило совместимость устройств. Было введено время ожидания 1/3 секунды на сброс шины, пока не закончится переходный процесс установки надежного подсоединения или отсоединения устройства.

IEEE 1394b

Cтандарт IEEE 1394 был представлен в 2002 году. Своим появлением он ознаменовал появление и новых скоростей: S800 — 800 Мбит/с и S1600 — 1600 Мбит/с. Устройства, соответственно, имеют обозначение FireWire 800 и FireWire 1600, в зависимости от максимальной скорости.

Также претерпели изменения и используемые кабели с разъемами. Для достижения максимальных скоростей на максимальных расстояниях предусмотрено использование оптики (пластмасса — длина до 50 метров, стекло— длина до 100 метров). Несмотря на то, что разъемы изменились, стандарты сохранили свою совместимость, что позволяет использовать переходники.

12 декабря 2007 года была представлена версия S3200, обладающая максимальной скоростью 3,2 Гбит/с. Данный режим обозначается «beta mode» (схема кодирования 8B10B). Максимальная длина кабеля составляет 100 метров.

IEEE 1394.1

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

IEEE 1394c

Стандарт 1394c появился в 2006 году. Он позволяет применять кабель Cat 5e от Ethernet. Также возможно его использование параллельно с Gigabit Ethernet, объединение двух логических и друг от друга независящих сетей в один кабель. Максимальная длина — 100 м. Максимальная скорость S800 — 800 Мбит/с.

Разъемы FireWare

Существуют четыре вида разъемов для FireWire:

  • 4pin (IEEE 1394a без питания) устанавливается на ноутбуках и видеокамерах. Витая пара для передачи сигнала и вторая витая пара - для приема.
  • 6pin (IEEE 1394a) имеет дополнительно два провода для питания.
  • 9pin (IEEE 1394b) имеет дополнительно два контакта для экранов витых пар. Один дополнительный контакт для резерва.
  • RJ-45 (IEEE 1394c).

Достоинства

  • Возможность перестройки конфигурации шины без выключения компьютера;
  • Вариации скорости передачи данных — 100, 200 и 400 Мбит/с в стандарте IEEE 1394/1394a, дополнительно 800 и 1600 Мбит/с в стандарте IEEE 1394b и 3200 Мбит/с в спецификации S3200;
  • Равноправие устройств, с различными конфигурациями (взаимосвязь устройств без участия компьютера);
  • Возможность обработки мультимедиа-сигнала в реальном времени;
  • Поддержка изохронного трафика;
  • Поддержка атомарных операций;
  • Нет необходимости использовать специальное программное обеспечение;
  • Питание имеется прямо на шине;
  • Возможность подключения до 63 устройств.

Где применяется шина IEEE 1394?

  • При создании компьютерной сети;
  • При подключении аудио/видео мультимедийных устройств;
  • При подключении принтеров и сканеров;
  • При подключении жёстких дисков, массивов RAID.
#