Что такое microsoft ieee 1394. Что он дает? Где он используется

Помощь 17.03.2019
Помощь

IEEE 1394

IEEE 1394 Interface
Тип Последовательная связь
История
Разработчик Apple Computer (сейчас Apple, Inc.)
Разработано 1995
Производитель Разнообразный
Произведено 1995–н.в
Спецификации
Длина 4.5 м максимально
Ширина 1
Подключение на ходу Да
Внешнее Да
Макс. напряжение 30 В
Макс. ток 1.5 A
Сигнал данных Да
Полоса пропускания 400–3200 Мбит /с (50–400 Мбайт/с)
Выводы 4, 6, 9

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

Различные компании продвигают стандарт под своими торговыми марками:

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

История

  • в 1986 году членами Комитета по Стандартам Микрокомпьютеров (Microcomputer Standards Committee) принято решение объединить существовавшие в то время различные варианты последовательной шины (Serial Bus)
  • в 1992 году разработкой интерфейса занялась Apple
  • в 1995 году принят стандарт IEEE 1394

Преимущества

  • Горячее подключение - возможность переконфигурировать шину без выключения компьютера
  • Различная скорость передачи данных - 100, 200 и 400 Мбит/с в стандарте IEEE 1394/1394a, дополнительно 800 и 1600 Мбит/с в стандарте IEEE 1394b и 3200 Мбит/с в спецификации S3200.
  • Гибкая топология - равноправие устройств, допускающее различные конфигурации (возможность «общения» устройств без компьютера)
  • Высокая скорость - возможность обработки мультимедиа-сигнала в реальном времени
  • Поддержка изохронного трафика
  • Поддержка атомарных операций - сравнение/обмен, атомарное увеличение (операции семейства LOCK - compare/swap, fetch/add и т. д.).
  • Открытая архитектура - отсутствие необходимости использования специального программного обеспечения
  • Наличие питания прямо на шине (маломощные устройства могут обходиться без собственных блоков питания). До полутора ампер и напряжение от 8 до 40 вольт.
  • Подключение до 63 устройств.

Шина IEEE 1394 может использоваться для:

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

Основные сведения

Кабель представляет собой 2 витые пары - А и B, распаянные как A к B, а на другой стороне кабеля как B к A. Также возможен необязательный проводник питания.

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

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

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

Операции шины делятся на асинхронные и изохронные.

Асинхронные операции - это запись/чтение 32-битного слова, блока слов, а также атомарные операции. Асинхронные операции используют 24-битные адреса в пределах каждого устройства и 16-битные номера устройств (поддержка межшинных мостов). Некоторые адреса зарезервированы под главнейшие управляющие регистры устройств. Асинхронные операции поддерживают двухфазное исполнение - запрос, промежуточный ответ, потом позже окончательный ответ.

Изохронные операции - это передача пакетов данных в ритме, строго приуроченном к ритму 8 КГц, задаваемому ведущим устройством шины путем инициации транзакций «запись в регистр текущего времени». Вместо адресов в изохронном трафике используются номера каналов от 0 до 31. Подтверждений не предусмотрено, изохронные операции есть одностороннее вещание.

Изохронные операции требует выделения изохронных ресурсов - номера канала и полосы пропускания. Это делается атомарной асинхронной транзакцией на некие стандартные адреса одного из устройств шины, избранного как «менеджер изохронных ресурсов».

Помимо кабельной реализации шины, в стандарте описана и наплатная (реализации неизвестны).

Использование

Сеть поверх 1394

Около 1998 г. содружество компаний, в том числе Microsoft, развивали идею обязательности 1394 для любого компьютера и использования 1394 внутри корпуса, а не только вне него. Существовали даже карты контроллеров с одним из разъемов, направленным внутрь корпуса. Также существовала идея Device Bay, то есть отсека для устройства со встроенным в отсек разъемом 1394 и поддержкой горячей замены.

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

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

MiniDV видеокамеры

Исторически первое использование шины. Используется и по сей день как средство захвата фильмов с MiniDV в файлы. Возможен и захват с камеры на камеру.

Видеосигнал, идущий по 1394, идет практически в том же формате, что и хранится на видеоленте. Это упрощает камеру, снижая требования к ней по наличию памяти.

Использование 1394 c miniDV положило конец проприетарным платам видеозахвата.

Отладчики

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

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

Организация устройств IEEE 1394

Устройства IEEE 1394 организованы по трехуровневой схеме - Transaction, Link и Physical, соответствующие трем нижним уровням модели OSI .

Transaction Layer - маршрутизация потоков данных с поддержкой асинхронного протокола записи-чтения.

Link Layer - формирует пакеты данных и обеспечивает их доставку.

Physical Layer - преобразование цифровой информации в аналоговую для передачи и наоборот, контроль уровня сигнала на шине, управление доступом к шине.

IEEE 1394a

В 2000 году был утверждён стандарт IEEE 1394а. Был проведён ряд усовершенствований, что повысило совместимость устройств.

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

IEEE 1394b

IEEE 1394c

Появившийся в 2006 году стандарт 1394c позволяет использовать кабель Cat 5e от Ethernet . Возможно использовать параллельно с Gigabit Ethernet , то есть использовать две логические и друг от друга не зависящие сети на одном кабеле. Максимальная заявленная длина - 100 м, Максимальная скорость соответствует S800 - 800 Мбит/с.

Разъёмы

Существуют четыре (до IEEE 1394c - три) вида разъёмов для FireWire:

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

См. также

Примечания

Ссылки

  • Интерфейс IEEE 1394 По материалам курса Kramer AV Academy - Архив журнала «625» № 7/2005 картинки, грамотно показаны как функциональные схемы, дерево узлов, схемы арбитража, так и разрез кабеля и смысл переходников.
  • 1394 Trade Association (англ.)
  • Рабочая группа IEEE p1394c (англ.)

Важность взаимодействия между различными компонентами и устройствами в компьютерной технике сложно переоценить. Без такого взаимодействия просто не было бы самой компьютерной техники. Но, с самого начала развития компьютеров каждый производитель решал (а кое-где и продолжает решать) эти проблемы по-своему. Как грибы после дождя росло количество всевозможных шин и разъёмов, по которым перегонялись данные, как внутри компьютера, так и снаружи. Но, если такое разнообразие решений внутри железной коробки шло (и идёт) во благо, стимулируя технический прогресс, то с периферией всё происходит наоборот. Море разных шин и разъёмов, которыми периферия может подключаться к компьютерам не выгодно никому - ни производителям самих компьютеров, ни производителям периферии. Стало ясно, что нужны универсальные шины. И они появились. К сожалению, общий беспорядок(когда каждый тянул одеяло на себя), не миновал и эту область. Поэтому, в середине девяностых годов, взглянув на заднюю стенку компьютера, можно было увидеть кучу разнообразных разъёмов: COM, LPT, VGA, PS/2 и некоторые другие. Каждый из этих разъёмов имел свои недостатки, требовал от разработчиков отдельной реализации и требовал свою долю отнюдь не безграничных компьютерных ресурсов. Необходимость действительно универсального разъёма назрела, и разработчики с энтузиазмом принялись за работу. Так, например, небезызвестная фирма Intel с середины девяностых годов начала агрессивно проталкивать на рынок своё детище - USB (Universal Serial Bus). По сравнению с существовавшими на то время разъёмами, USB стал подлинным прорывом, обеспечивая казалось бы, всё, о чём можно было мечтать. Но это только казалось:-) В тени шумихи вокруг USB тогда мало кто заметил рождение ещё одного формата, использующего последовательную шину (Serial Bus), который умел не меньше (а то и больше), чем его широко разрекламированный конкурент. Это IEEE 1394.

С чего всё начиналось

История IEEE 1394, теперь известного также как FireWire и как i-Link, началась ещё в 1986 году, когда члены Microcomputer Standards Committee (Комитет по Стандартам Микрокомпьютеров) захотели объединить существовавшие в то время различные варианты последовательной шины (Serial Bus). Новый проект был призван объединить существовавшие на то время наработки: IEEE 1014 VME, IEEE 1296 Multibus II, и IEEE 896 FutureBus+®. Задачей разработчиков стало создание универсального I/O (Input/Output) внешнего интерфейса, пригодного как для работы с мультимедиа, так и для работы с накопителями данных (Mass Storage Device), не говоря уже о более простых вещах - вроде принтеров, сканеров, и тому подобного. Результатом труда разработчиков стал окончательно утверждённый 12 декабря 1995 года 10 мегабайтный документ под названием 1394-1995.pdf, который описывал IEEE 1394. В названии стандарта нет никакого тайного смысла - просто это был 1394 по счёту стандарт, выпущенный комитетом. Интерфейс, который описывался в этом документе был воистину революционным. Он обеспечивал просто невероятные по тем временам скорости и удобство. Ведущую роль в разработке стандата сыграла, была Apple, которая дала ему имя FireWire, поэтому нет ничего удивительного в том, что она сразу же сделал ставку на использование этого стандарта в своих компьютерах (как обычно, Apple пошёл своим путём, и, пока пользователи PC заглядывали в рот Intel с недавно появившемся USB, сделал ставку на FireWire. Хотя и USB не был забыт. Настоящей лебединой песней для IEEE 1394 стало появление любительских DV камер. Ещё при их разработке стало ясно, что, кроме IEEE 1394 в качестве внешнего интерфейса для них ничего не подходит. Поэтому, Digital VCR Conference (DVC) приняла решение использовать IEEE 1394 как стандартный интерфейс для цифровых камер. Первой ласточкой стала Sony c DCR-VX1000 и DCR-VX700 цифровыми камерами, которые впервые имели IEEE 1394 выход. Но, вскоре за Sony подтянулись и другие производители. И сегодня IEEE 1394 практически монополизировал этот быстро развивающийся рынок. Сегодня любая, произведённая сегодня DV камера в обязательном порядке оснащается IEEE 1394 интерфейсом.

Свою лепту в развитие IEEE 1394 внесла и Texas Instruments, организовавшая массовое производство действительно дешёвых микросхем для реализации IEEE 1394 интерфейса, что сыграло огромную роль в бурном росте количества IEEE 1394 контролёров в персональных компьютерах.

Несмотря на такой успех нового стандарта (он оказался востребованным ещё до выхода окончательной спецификации), разработчики не стояли на месте. Уже в 2000 году вышла 1394a-2000 версия протокола, сразу же с энтузиазмом воспринятая производителями. А сегодня разрабатывается P1394b.

Что же такого хорошего в IEEE 1394?

Как уже говорилось, разработчики опирались на выпущенные ранее стандарты, и в IEEE 1394 вошло всё лучшее, что существовало на тот момент. Из главных особенностей IEEE 1394 можно отметить:

  • Последовательная шина вместо параллельного интерфейса позволила использовать кабеля малого диаметра и разъёмы малого размера.
  • Поддержка горячего подключения и отключения всего чего угодно.
  • Питание внешних устройств через IEEE 1394 кабель.
  • Высокая скорость
  • Возможность строить сети из различных устройств и самой различной конфигурации.
  • Простота конфигурации и широта возможностей. Через IEEE 1394 может работать самое различное оборудование, причём пользователю не придётся мучаться вопросом, как это всё правильно подключить.
  • Поддержка асинхронной и синхронной передачи данных.
На последнем пункте необходимо остановиться поподробнее.

Асинхронная передача . Asybnchronous, от греческого Asyn - другой и Chronous - время. Это означает, что данные обязательно будут доставлены в целости и сохранности, пусть и не всегда в срок. Получение каждого пакета проверяется и подтверждается, если пакет не дошёл, передача будет повторена заново.

Синхронная передача . Isochronous, от греческого Iso - тот же, такой же и Chronous - время. Это означает, что скорость и непрерывность потока важнее, чем сохранность данных. Если пакет пришёл с ошибкой, или не пришёл вообще, это даже не проверяется, не говоря уже о том, чтобы переслать пакет заново. Этот тип передачи отлично подходит для мультимедийных приложений, где потеря какой-либо части информации менее критична, чем большая задержка.

Как это всё работает?

IEEE 1394 делится на несколько уровней. Выглядит это так:

Внизу находится физический уровень (Physical Layer). Аппаратная составляющая, которая отвечает за перевод сигналов, полученных по кабелям в понятную компьютеру форму (и наоборот - за перевод данных в электрические сигналы, идущие по кабелям). Эта же часть отвечает за управление физическим каналом, т.е. определяет, должно устройство занимать канал прямо сейчас, или должно подождать. Кроме того, этот же уровень обеспечивает интерфейс для кабелей и разъёмов и отвечает за следующие процессы:

Интерфейс среды (Media Interface) - отвечает за состояние сигнала, передаваемого по кабелям.

Арбитраж (Arbitration) - различные IEEE 1394 устройства, включенные в сеть разбираются между собой, кто и в каком порядке может действовать.

Кодирование/Декодирование (Encode/Decode) - перевод данных в электрические сигналы, которые могут передаваться по кабелям и обратно.

Уровнем выше расположен уровень канала (Link Layer). Сюда доставляются уже готовые пакеты данных. Именно этот уровень отвечает за пересылку данных вверх и вниз, тут происходят следующие процессы:

Приёмник пакетов (Packet Receiver) - организует и отвечает за приём пакетов данных.

Передатчик пакетов (Packet Transmitter) - организует и отвечает за передачу пакетов данных.

Контроль циклов (Cycle Control) - пакеты передаются не поодиночке, а циклами. Здесь и осуществляется контроль над этими циклами.

Эти два уровня реализованы в "железе", т.е. выполняются аппаратно. Они полностью отвечают за формирование сигнала из данных, формирование данных из сигнала, и приём/передачу в нужное время и в нужное место. Поэтому, только этих двух уровней и хватает при синхронной передаче, когда никакого контроля над тем что передаётся и получается не требуется. При асинхронной передаче это не так, и там в действие вступает:

Сетевой уровень (Transaction Layer). На этом уровне происходит проверка полученных данных. Если всё нормально (ни один пакет не потерялся или не повредился), данные отправляются потребителю. Если обнаружена ошибка - возвращаемся на физический уровень и повторяем всё сначала, пока данные не будут получены без ошибок.

Все уровни (в том числе и первые два) контролируются firmware, и этот процесс называется менеджмент последовательной шины (Serial Bus management).

Такие процессы происходят в каждом IEEE 1394 устройстве, и два любых устройства образовывают между собой соединение типа точка-точка (point-to-point). Но, кроме этого, IEEE 1394 позволяет объединять множество таких устройств и соединений в одну логическую сеть. Для этого физический уровень (physical layer) позволяет иметь больше одного физического интерфейса на одном устройстве.

Рассмотрим подробнее, как разные устройства в одной логической сети разбираются, кто, когда, и что должен делать.

Инициализация сети происходит в несколько этапов:

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

Идентификация дерева (Tree identification) - подключенные устройства выясняют, какие из них родительские, а какие дочерние, и формируют логическое дерево. Определяется корневое устройство для всего дерева.

Примечание: Первое, что определяет устройство после включения, это сколько подключенных портов оно имеет. Один (leaf) или несколько (branch). Затем определяется родительские (parent) и дочерние (child) устройства (какое к какому подключено). На основе этих данных строится дерево и определяется корневое устройство.


Самоидентификация (Self identification) - каждое из устройств получает свой собственный ID узла внутри дерева, и выясняет на каких скоростях могут работать его непосредственные соседи. Топология полностью определена. Для адресации используются принципы, описанные в IEEE 1212. Это означает 64 битную прямую адресацию (48 бит на узел, остальные 16 используются дли идентификации шины), что позволяет организовать иерархическую адресацию для 63 узлов на 1023 шинах. Единственное ограничение - между двумя устройствами, которые хотят общаться между собой, должно быть не более 16 "хопов" (сегментов).

Инициализация сети завершена, в действие вступает нормальный арбитраж - рабочий режим работы сети. Устройства обмениваются данными, а корневое устройство следит за тем, чтобы они друг другу не мешали. Происходит это так:

Устройство, которое хочет начать передачу, вначале посылает запрос своему родительскому устройству. Родительское устройство, получив запрос, запрещает передачу всем остальным дочерним (в один момент обрабатывается только один запрос) и, в свою очередь, передаёт запрос дальше, своему родительскому устройству, где всё повторяется. В итоге запрос доходит до корневого устройства, которое, в свою очередь, разрешает передачу тому устройству, чей запрос пришёл первым. Всем остальным передача запрещается. Таким образом, если два устройства одновременно пошлют запрос на передачу данных, то ответ будет зависеть от того, чей запрос первым достигнет корневого устройства. Оно выигрывает арбитраж и получает право начать передачу. Проигравшее устройство. не получив разрешения на передачу, вынуждено ждать, пока выигравшее не освободит шину.


Всё это происходит на физическом уровне (physical layer). После того, как разрешение на передачу данных получено и требуется начать передачу данных, в дело вступает уровень канала (link layer). Как уже говорилось, именно он формирует пакеты и определяет - когда и сколько пакетов должно отсылаться. Передача данных начинается с запроса готовности к приему устройства, для которого предназначены данные, и, получив подтверждение готовности, начинает передачу. Данные идут пакетами, между которыми есть промежутки (gap). Типичный пакет данных 256 байт, или 2048 бит, из которых 160 бит приходится на заголовок. Таким образом, общая эффективность (сколько в пакете действительно данных, а не служебной информации) весьма высока и чем больше пакет, тем выше эффективность). В заголовок входит информация об отправителе, получателе и CRC. После пакета идёт небольшой промежуток, длиной меньше 0.75 msec (acknowledge gap), после чего получатель должен выслать 8-ми битовый блок данных, подтверждающий, что пакет получен в целости и сохранности (ack packet). Потом следует более длинный промежуток, длинной больше 1 msec, разделяющий пакеты (subaction gap). И так далее - пакет, acknowledge gap, подтверждающий байт (ack), subaction gap.

Для того, чтобы одно устройство, начав передавать данные, не заняло весь канал, не оставив соседям никаких шансов начать передачу, пока оно не закончит, введено понятие fairness interval. В течении одного fairness interval каждое устройство в шине получает одну возможность передать свои данные. После того как разрешение получено (арбитраж выигран), и порция данных передана, устройство должно ждать конца fairness interval и начала следующего цикла, прежде чем оно вновь получит возможность передать следующую порцию данных. Заканчивается fairness interval так называемым reset gap, который длиннее subaction gap, и вызывает сброс всей шины.

Для синхронной передачи используется несколько другая методика. Данные передаются "выстрелами", длина каждого 125 мsec. Таких выстрелов производится столько, сколько позволяет канал. Даже на одинарной (98.304 Mbit/sec) скорости за один такой цикл передаётся до 1000 байт. Чем выше скорость, тем больше данных успевает пройти. При этом, при синхроной передаче абсолютно не важно, получило принимающее устройство данные или нет. Пакеты просто идут один за другим, разделённые subaction gap, никаких ack packet никто не ждёт. Для того, чтобы принимающее устройство смогло разобраться, где синхронные, а где асинхронные данные, subaction gap при синхронной передаче короче. Это позволяет комбинировать в одном сеансе синхронные данные с асинхронными. Однако, в синхроном режиме одному устройству никогда не позволят захватить весь доступный канал. На синхроные данные может приходится не более 85% доступного канала, причём одно устройство не может занять больше 65%.

Как всё это выглядит?

IEEE 1394 позволяет передавать данные на скорости 98.304 Mbit/sec. Кроме этого, возможна передача в 2-x (196.608 Mbit/sec) и 4-x (393.216 Mbit/sec) режимах.

Первоначально появились чипы, которые способны работать только на 100 Мбитах (хотя спецификация позволяла и больше), но 200 и 400-мегабитные чипы не заставили себя долго ждать. Несмотря на такой кажущийся беспорядок, пользователи не должны испытывать ни малейших неудобств (это было одно из обязательных условий, которое ставилось перед разработчиками). Поэтому IEEE 1394 позволяет в одной сети использовать самые разные устройства одновременно. Причём, пользователю не придётся беспокоиться о том, что он может неправильно их подключить. Подключать можно что угодно, и в каких угодно сочетаниях, железки сами разберутся, кто с кем и на какой скорости может "разговаривать".

Для работы на таких высоких скоростях потребовались соответствующие кабели. Кабель для IEEE 1394 весьма сложная система, и спаять его самостоятельно (что возможно для USB) вряд ли возможно. Данные передаются по двум витым парам, каждая из которых отдельно экранирована. Для пущей надёжности, дополнительно экранируется и весь кабель. Кроме двух сигнальных пар, в кабеле предусмотрены две питающие жилы, которые могут обеспечить любое внешнее устройство током силой до 1.5 А и напряжением до 40 V. В разрезе кабель выглядит так:


Выбору разъёма, к которому должны подключаться IEEE 1394 устройства, было уделено самое пристальное внимание, ведь от разъёма в немалой степени зависит то, насколько удобно будет пользоваться новым интерфейсом. Разъём должен быть небольшим, но в то же время прочным, должен обеспечивать надёжное соединение, но в то же время легко соединяться-отсоединяться даже вслепую. Всем требованиям удовлетворил разъём, используемый в Nintendo GameBoy.

Как видно из фотографии, все контакты выведены в середину разъёма, а снаружи защищены толстым ободком из твёрдой пластмассы. Надёжность этой схемы доказана многими GameBoy, беспощадно растерзанными детьми разных возрастов.

Но даже такой продвинутый и удобный разъём не всех удовлетворил. В самом деле, зачем нам тянуть за собой две питающих жилы там, где подключенное устройство имеет собственное питание. Действительно незачем, решили разработчики и на свет появился новый, четырёхконтактный разъём. Этот новый разъём хоть и не обеспечивал такого надёжного соединения как традиционный шестиконтактный, зато позволял сэкономить место, что немаловажно на портативных устройствах. Кроме этого, кабель без двух дополнительных жил, ответственных за питание, можно сделать ещё тоньше и дешевле. Особо "по вкусу" четырёхконтактные разъёмы пришлись производителям компактных DV камер, и именно их можно увидеть на большинстве таких камер.

Производители материнских плат включают в свои последние решения поддержку обоих разъёмов:

Как это всё развивалось, и что мы имеем сегодня

Ничего идеального в мире нет, и IEEE 1394 не получился идеальным. Поэтому, выпустив первую версию стандарта в 1995 году, команда разработчиков не стала почивать на лаврах, а продолжила работу над следующими версиями стандарта. Так, уже в 2000 году вышла 1394а версия стандарта.

Высокопроизводительная последовательная шина (High Performance Serial Bus) IEEE 1394 — FireWire создавалась как более дешевая и удобная альтернатива параллельным шинам (SCSI) для соединения равноранговых устройств. Шина позволяет связать до 63 устройств без применения дополнительной аппаратуры (хабов). Устройства бытовой электроники — цифровые камкордеры (записывающие видеокамеры), камеры для видеоконференций, фотокамеры, приемники кабельного и спутникового телевидения, цифровые видеоплееры (CD и DVD), акустические системы, цифровые музыкальные инструменты, а также периферийные устройства компьютеров (принтеры, сканеры, устройства хранения данных) и сами компьютеры могут объединяться в единую сеть. Шина не требует управления со стороны компьютера. Шина поддерживает динамическое реконфигурирование — возможность «горячего» подключения и отключения устройств. События подключения/отключения вызывают сброс и реинициализацию: определение структуры шины (дерева), назначение физических адресов всем узлам и, если требуется, выборы мастера циклов, диспетчера изохронных ресурсов и контроллера шины. Через доли секунды после сброса все ресурсы становятся доступными для последующего использования, и каждое устройство имеет полное представление обо всех подключенных устройствах и их возможностях. Благодаря наличию линий питания, интерфейсная часть устройства может оставаться подключенной к шине даже при отключении питания функциональной части устройства.

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

Основные свойства шины FireWire перечислены далее:

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

  • асинхронные передачи без каких-либо требований к скорости и задержке доставки. Целостность данных контролируется CRC-кодом. По адресации различают две разновидности:
  1. направленная асинхронная передача адресуется конкретному узлу, гарантированную доставку обеспечивает механизм квитирования и повторов;
  2. широковещательная асинхронная передача адресуется всем узлам и выполняется без гарантии доставки (квитирование и повторы не применяются).
  • Изохронные передачи с гарантированной пропускной способностью. Целостность данных контролируется CRC-кодом, гарантии доставки нет — квитирование и повторы не применяются.

Направленные асинхронные передачи являются основой для выполнения асинхронных транзакций — логически завершенных обменов между парами узлов. Протокол шины позволяет узлам с помощью асинхронных транзакций обращаться к памяти (регистрам) друг друга в режиме прямого доступа (DMA). При этом они не нуждаются в памяти и процессорных ресурсах «третьих лиц».

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

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

Арбитражем занимается физический уровень каждого узла шины. Арбитраж выполняется распределенно иерархически: им занимаются все узлы, «верховным» арбитром является корневой узел (root node), автоматически выбираемый на этапе конфигурирования шины.

Физический уровень (PHY) предоставляет канальному уровню (LINK) следующие сервисы арбитража, перечисленные в порядке нарастания приоритетности:

  • справедливый арбитраж (fair arbitration service), используемый для передачи обычных асинхронных пакетов;
  • приоритетный арбитраж (priority arbitration service), используемый для передачи пакетов начала цикла и приоритетных асинхронных пакетов;
  • немедленный арбитраж (immediate arbitration service), используемый для передачи пакетов квитирования;
  • изохронный арбитраж (isochronous arbitration service), используемый для передачи изохронных пакетов.

Приоритет в арбитраже на шине IEEE 1394 определяется длительностью зазора арбитража (arbitration gap) — временем, в течение которого узел наблюдает покой шины перед началом передачи запроса арбитража. Чем меньше этот зазор, тем больше шансов у узла получить право на передачу. Исходная схема арбитража 1394 усовершенствовалась дважды: в 1394a были введены механизмы ускоренного арбитража, а в 1394b с его дуплексными соединениями был введен новый механизм — BOSS-арбитраж. Все усовершенствования направлены на снижение непродуктивных затрат времени.

Если на шине используются изохронные передачи, то все транзакции организуются в последовательность циклов — интервалов времени с номинальной длительностью 125 мкс. Начало каждого цикла отмечается широковещательным пакетом начала цикла (Cycle Start). Эти пакеты посылает узел, являющийся мастером циклов. Право на передачу этого пакета мастер получает через арбитраж, используя высокий приоритет. Организация циклов представлена на рисунке, где изображена работа двух изохронных каналов (Ch#J и Ch#K) и передача асинхронных пакетов A и B. После пакета начала цикла каждый узел, которому выделены изохронные каналы, имеет право передать по одному пакету для каждого канала (до прихода следующего пакета начала цикла). Для изохронных передач используется короткий зазор арбитража, так что асинхронные транзакции, использующие более длинный зазор, в изохронную часть цикла вклиниться не могут. После того как иссякнут изохронные пакеты данного цикла, выполняются асинхронные передачи, у которых для арбитража используются более длинные зазоры. Когда наступает пора посылки следующего пакета начала цикла, мастер цикла, дождавшись освобождения шины, снова получает право доступа (пользуясь своим приоритетом, обусловленным его положением в корне дерева) и посылает следующий пакет начала цикла. Таким образом, длительность цикла может отклоняться от номинального значения 125 мкс. Отклонения длительности цикла от номинального не страшны, поскольку пакет начала цикла несет значение системного времени точно на момент фактической передачи этого пакета.

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

Конфигурирование шины IEEE 1394 выполняется в различных ситуациях:

  • автоматически при изменении конфигурации — при подсоединении и отсоединении устройств, а также включении/выключении их PHY-уровня;
  • при обнаружении каким-либо узлом фатальной ошибки — «зависания» шины;
  • по инициативе какого-либо узла, желающего, например, изменить топологию (сменить корневой узел).

Конфигурирование состоит из трех последовательных этапов.

  1. Сброс (Bus Reset), с момента которого прекращается передача полезного трафика.
  2. Идентификация дерева (Tree Identification), во время которой узлы выстраиваются в иерархическую структуру.
  3. Самоидентификация узлов (Self Identification), во время которой узлы присваивают себе уникальные физические идентификаторы.

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

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

Свойства любого узла сконфигурированной шины наблюдаемы и управляемы через его архитектурные регистры и память конфигурации. Они доступны со стороны шины через асинхронные транзакции к определенным адресам. Архитектурные регистры определяют поведение узла на шине. Память конфигурации раскрывает «прикладную ценность» узла и обеспечивает его уникальную идентификацию, не зависящую от непостоянного физического идентификатора.

Шина IEEE 1394, обеспечивая равноранговые взаимодействия между узлами, нуждается в централизованном управлении некоторыми функциями. Управляющие функции могут брать на себя разные узлы шины; в зависимости от наличия реализации тех или иных функций различают следующие варианты шины IEEE 1394:

  • неуправляемая шина, нуждающаяся только в корневом узле (root), управляющем арбитражем. Корень, который становится «верховным арбитром», выбирается на этапе идентификации дерева. Первоначальный кандидат на эту «должность» выбирается исходя из топологии соединений, с возможным случайным розыгрышем этого права между двумя победителями предпоследнего тура. После завершения выборов корня производится самоидентификация (и назначение физических адресов) узлов, после чего шина становится готовой к асинхронным транзакциям между узлами. Впоследствии программным путем (через асинхронные сообщения по шине) возможно переназначение корня (с определением новой структуры дерева и адресов узлов);
  • частично управляемая шина, которая в дополнение к корню должна иметь узлы, выполняющие роль мастера циклов и диспетчера изохронных ресурсов. Их работа обеспечивает возможность использования шины для изохронных передач;
  • полностью управляемая шина, которая должна иметь узел-диспетчер шины, обеспечивающий дополнительные сервисы управления.

Мастер циклов

Мастер циклов (Cycle Master) отвечает за регулярную передачу пакетов начала цикла. Для этого он должен быть устройством с поддержкой изохронных обменов, иметь регистры CYCLE_TIME и BUS_TIME. В информационном блоке BUS_INFO_BLOCK его памяти конфигурации должен быть установлен бит cmc (Cycle Master Capable) — признак способности к исполнению этой роли. Текущим мастером циклов является узел, у которого в регистре состояния (STATE) установлен бит cmstr (Cycle Master). Все узлы, кроме корневого, во время идентификации дерева (после сброса) должны обнулить у себя этот бит; корневой узел должен сохранять значение, которое было до сброса.

Если выбранный корневой узел не способен быть мастером циклов, а требуются изохронные передачи, то из узлов, способных быть мастером (судя по биту cmc), выбирается новый кандидат на роль корня. Для этого посылается широковещательный PHY-пакет конфигурирования с идентификатором нового кандидата и установленным битом R. Этот узел установит у себя бит RHB, а остальные его сбросят, что и обеспечит выбор данного узла новым корнем во время идентификации, вызванной посылкой этого пакета.

Мастер циклов является источником системного времени; для этого он имеет регистры CYCLE_TIME и BUS_TIME. Текущее значение регистра CYCLE_TIME передается мастером циклов в пакетах начала цикла. Сброс на шине (в любой форме) на значения этих регистров не влияет.

Регистр CYCLE_TIME (32 бита, рис. а) состоит из трех полей, соответствующих значениям трех счетчиков, соединенных каскадно:

  • cycle_offset — 12-битный счетчик по модулю 3072 (максимальное значение 3071, после него обнуляется), считающий импульсы с частотой 24,576 МГц. Период этого счетчика соответствует номинальной длительности цикла — 125 мкс;
  • cycle_count — 13-битный счетчик по модулю 8000, считающий циклы. Период этого счетчика — 1 с;
  • second_count — 7-битный счетчик, считающий секунды; период счета — 128 с.

Регистр BUS_TIME (32 бита, рис. б) содержит значение системного времени в секундах. Его младшие 7 бит (second_count_lo) отображают поле second_count предыдущего регистра. Остальные 25 бит (second_count_hi) отсчитывают 128-секундные интервалы. Период счетчика составляет 232 = 4 294 967 296 с (около 136 лет).

Нашел разъем IEEE 1394 :). На протяжении многих лет я даже не задумывался о том, для чего он нужен. Большинство других пользователей, я уверен, что даже при наличии этого разъема, никогда не обращали на него внимания. А ведь в быту этот разъем очень полезен.

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

Чаще этот обмен осуществляется между кассетной видеокамерой и ПК . Другими словами этот разъем поможет перевести данные с miniDV-кассеты в ваш компьютер. Такие разъемы бывают не только на ноутбуках но и на стационарных компьютерах. Поэтому перед тем как задуматься о покупке платы с данным разъемом нужно тщательно просмотреть ваш ПК на наличие данного разъема. У меня вот как оказалось на ноутбуке есть такой разъем.
Я думаю что не у меня одного дома завалялась какая нибудь кассетная видеокамера и кассеты к ней, с интересным видео:)
Обычно подобное копирование кассеты занимает ровно столько по времени, сколько на ней есть. То есть к примеру на кассете есть видео продолжительностью 40 минут, вот примерно столько и будет копироваться данная информация на компьютер.
Кроме самого разъема, камеры и кассеты, вам так же понадобится кабель, с одной стороны которого шестиконтактный разъем, а на другом - четырехконтактный. Такой кабель нужен для подключения камеры к плате на стационарном компьютере. Если же вы хотите подключить камеру к ноутбуку то здесь разъемы на обеих устройствах совершенно одинаковые — 4х4 pin.

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

Технические подробности

Уже почти 20 лет назад, фирма Sony показала свои первые промышленные модели mini-DV видеокамер DCR-XV700 и DCR-XV1000, и именно в них можно было встретить интерфейс IEEE 1394. После этого разъем стал своего рода стандартом для любой видеокамеры. Конечно разработан интерфейс был гораздо раньше.
Изначально высокоскоростной последовательный интерфейс IEEE 1394 разрабатывался компанией Apple как скоростной вариант SCSI. Чуть позже в Apple решили открыть стандарт и призвать к сотрудничеству заинтересованные фирмы. В следствии чего в 1990 году вышло техническое описание этой шины в виде стандарта IEEE 1394, который расшифровывается как Institute of Electrical and Electronic Engineers 1394(стандарт института инженеров по электротехнике и электронике 1394) .
Скорость передачи данных — 100, 200, 400 Мбит/c, при этом длина провода должна не превышать 4,5 метра. Максимальное количество устройств — 63. IEEE 1394 похож на USB тем, что может без выключения переконфигурировать аппаратные средства компьютера.
Чуть выше я говорил о том что существует несколько видов кабелей(проводов) и разъемов:

  • шестиконтактный разъем IEEE 1394, позволяет не только передавать данные но и подавать на подключаемое устройство питание, общий ток при этом не более 1,5А, а напряжение от 8 до 40 вольт. Именно поэтому, выше я рекомендовал отключать устройство при подключении к ПК.
  • четырехконтактный разъем IEEE 1394, дает возможность только передавать данные, при это нужно не забыть позаботиться о внешнем источнике питания

Разные компании называют этот стандарт по разному:

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

Поэтому можно встретить различные описания этого разъема в интернете. Но все они работают под единым стандартом IEEE 1394.
Существуют различные вариации данного стандарта, в следствии чего варьируется и скорость передачи данных:

  • IEEE 1394/1394a — 100, 200 и 400 Мбит/с
  • IEEE 1394b — 100, 200, 400, 800 и 1600 Мбит/с
  • S3200 — 100, 200, 400, 800, 1600 и 3200 Мбит/с

Высокая скорость интерфейса передачи данных позволяет обрабатывать различные мультимедийные данные в реальном времени.
Устройства не требующие большой мощности для питания, могут использоваться с интерфейсом без дополнительного блока питания. И это возможно благодаря питанию на самой шине.
Горячее подключение - возможность переконфигурировать шину без выключения компьютера.
Из за гибкой топологии, устройства достаточно равноправны и могут подключаться друг к другу, даже без помощи компьютера.
Топология IEEE-1394 позволяет как древовидную, так и цепочечную архитектуру, а также комбинацию из того и другого. По стандарту, разделить шину архитектурно, можно двумя основными блоками — контроллер(контроллеры) и кабельная часть. Из за того что контроллер может быть не один, часть с контроллерами часто называют объединительной(backplane). Адрес узла на «дереве» 16-ти разрядный, что позволяет адресовать до 64К узлов. По 16 конечных устройств на каждый узел. К одному мосту шины (bridge) на backplane панели может быть подключено до 63 узлов. Так как под идентификатор номера шины (моста) отведено 10 разрядов, то общее количество узлов и составляет 64K.
Стандарт разрешат подключение до 27 устройств, но каждый узел может подключить 3 устройства. ID (физический адрес) назначается устройству при: горячее подключение устройства к шине, общий сброс шины, подача питания на контроллер шины и подключенного устройства. Адреса выдаются в порядке обнаружения устройства. Переключение перемычек как на HDD при этом не требуется. Если применять размножители и репитеры то можно выстроить достаточно сложную топологию IEEE 1394 . В большинстве случаев такая сложная топология попросту не нужна.
IEEE 1394 может использоваться как для создания компьютерной сети, так и для подключения различных мультимедийных(аудио,видео) устройств. Можно даже подключить принтер или сканер к примеру. На самом деле вариантов гораздо больше. Но так вышло что наибольшую популярность получил данный способ подключения, именно при подключении видеокамер. Об этом я говорил выше.
Теоретически длина кабеля может достигать 224 метра. Стандарт говорит о следующих цифрах:

  • IEEE 1394a — 4.5 м
  • IEEE 1394b — 100 м

Главной особенностью данного интерфейса является — гарантированная полоса пропуская. Что очень важно при работе с аудио и видеоматериалом. То есть не зависимо от подключенных устройств и их нагрузки на шину, всегда можно организовать так называемый «коридор» между компьютером и видеокамерой.
Кабель представляет из себя следующее: экранированная оболочка, 2 витые пары для передачи сигналов шины и 2 провода питания. Разъемы IEEE 1394 можно разделить на два типа. Первый тип отдает питание устройству(6-и контактный разъем), а второй соответственно не отдает(4-х контактный разъем).
При составлении материлов брал информацию от сюда:

Внешний вид современного персонального компьютера радует глаз. Серенькие китайские «тазики» давно канули в Лету. Фирмы-производители корпусов соревнуются, предлагая покупателю ультрасовременный дизайн на любой вкус, но если посмотреть на заднюю стенку «системника», создается впечатление, что за последние 10-15 лет ничего не изменилось: та же путаница кабелей, множество разъемов самых разных форм и размеров…

В декабре 1995 года был утверждён стандарт под названием IEEE-1394 (IEEE – Institute of Electrical and Electronic Engineers, 1394 – порядковый номер стандарта). Новый стандарт сулил фантастические по тем временам скорости обмена и удобство подключения оборудования.

Такое положение дел – следствие идеологической ошибки, допущенной на самых ранних этапах развития персоналок. Тогда никому и в голову не приходила идея о необходимости создания единого программно-аппаратного интерфейса для связи ПК с периферийным оборудованием. Для клавиатуры использовали разъем DIN, для принтера – LPT, для мыши – COM, причем разъемы COM существовали в двух конструктивах. Потом для подключения мыши и клавиатуры стали использовать разъемы mini-DIN (PS/2), свои разъемы устанавливались на звуковых картах для джойстиков и на SCSI-контроллерах. Словом, подключение периферийного оборудования к ПК стало для пользователей причиной изрядной головной боли, а для производителей периферии сложившаяся ситуация грозила падением объема продаж и снижением доходов. Со всей остротой встал вопрос о создании единого программно-аппаратного интерфейса для подключения к ПК любого периферийного оборудования.

В середине 90-х годов фирма Intel объявила о создании USB – Universal Serial Bus и начала активно продвигать свою разработку на рынок, однако первой была все-таки не она.

Для цифровых видеокамер IEEE-1394 оказался единственно возможным внешним интерфейсом.

Еще в 1986 году Комитет по стандартам микрокомпьютеров поставил перед своими специалистами задачу по созданию универсального I/O (Input/Output) внешнего интерфейса, пригодного как для работы с мультимедиа, так и для работы с накопителями данных и другой периферией вроде принтеров и сканеров. В результате почти десятилетней работы в декабре 1995 года был утверждён стандарт под названием IEEE-1394 (IEEE – Institute of Electrical and Electronic Engineers, 1394 – порядковый номер стандарта). Новый стандарт сулил фантастические по тем временам скорости обмена и удобство подключения оборудования. Пожалуй, главный вклад в разработку нового стандарта внесла американская фирма Apple, которая традиционно считается законодателем мод в области ПК. Вскоре Apple зарегистрировала товарный знак «FireWire» и начала использовать новый стандарт в своих компьютерах. В апреле 1997 года поддержка FireWire впервые появилась в составе операционной системы Mac OS, а массовое появление периферии с интерфейсом FireWire началось в 1999 году, когда он стал стандартным компонентом всех профессиональных компьютеров Power Macintosh G3 и G4, а с осени – потребительских систем iMac DV.

Распространению FireWire в значительной степени способствовало то обстоятельство, что для цифровых видеокамер IEEE-1394 оказался единственно возможным внешним интерфейсом, и было принято решение использовать IEEE-1394 как стандартный интерфейс для них. Первыми цифровыми камерами с FireWire были модели DCR-VX1000 и DCR-VX700 фирмы Sony, но вскоре, оценив преимущества нового интерфейса, его стали использовать и другие производители. В настоящее время все современные цифровые видеокамеры имеют интерфейс IEEE-1394.

Что представляет собой FireWire

FireWire – это по сути высокоскоростная последовательная шина, обеспечивающая «горячее» подключение до 63 устройств с полной поддержкой принципа Plug-and-Play. Передача данных осуществляется по тонкому и гибкому кабелю длиной до 4,5 метров со скоростью 50 МБ/с (400 Мбит/с).


Интерфейс IEEE-1394 условно разбит на три уровня: физический уровень, уровень компоновки данных и уровень обработки.

Главными особенностями IEEE-1394 являются:

  • Высокая скорость передачи данных;
  • Поддержка «горячего» («fire», то есть без отключения питания и/или перезагрузки операционной системы) подключения периферийного оборудования;
  • Возможность питания подключаемых устройств от блока питания компьютера через IEEE-1394 кабель;
  • Возможность строить сети различной конфигурации из самых разных устройств. Это означает, что оборудование с интерфейсом IEEE-1394 можно соединять не только с ПК, но и друг с другом, причем конфигурирование сети выполняется автоматически;
  • Использование последовательной шины вместо параллельного интерфейса. Благодаря этому стало возможным использовать тонкие (диаметром всего лишь 6 мм) кабели и миниатюрные разъемы;
  • Поддержка асинхронной и синхронной передачи данных. Синхронная передача данных, как правило, применяется в мультимедийных приложениях, где временные задержки недопустимы, а асинхронная – при передаче файлов, где потеря даже одного пакета является критичной.

Интерфейс IEEE-1394 условно разбит на три уровня: физический уровень, уровень компоновки данных и уровень обработки (см. рис 1).


Рис. 1 Функциональная схема интерфейса IEEE 1394

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

Уровень компоновки данных с помощью приемника и передатчика пакетов, а также устройства управления циклом обеспечивает пересылку данных по сети FireWire-устройств.

Физический уровень и уровень компоновки данных являются аппаратными (Hardware) и представляют собой специализированные микросхемы.

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

Если к ПК подключено более одного FireWire-устройства, автоматически создается логическая сеть

Если к ПК подключено более одного FireWire-устройства, автоматически создается логическая сеть по следующему алгоритму.

При подключении или отключении какого-либо FireWire-устройства происходит инициализация сети, которая начинается со сброса шины. Затем по определенному алгоритму строится логическое дерево и определяется корневой узел сети. Одно из устройств будет являться родительским, а остальные – дочерними, причем для каждого порта строится свое дерево. На этапе самоидентификации каждое устройство получает свой идентификационный номер (ID) в пределах дерева. Одновременно определяются скорости передачи информации, которые может обеспечить каждое устройство.


Рис. 2. Дерево узлов IEEE 1394

После окончания инициализации сеть переходит в рабочий режим. Арбитраж работы в сети осуществляет родительское устройство. Дочернее устройство, пославшее запрос на канал первым, выигрывает арбитраж и получает доступ к каналу. Одновременно остальным дочерним устройствам доступ к нему запрещается. Для того чтобы какое-нибудь одно устройство монопольно не захватило канал, введены специальные интервалы равнодоступности (fairness interval). В течение одного интервала каждое устройство получает однократную возможность передачи данных. После передачи порции данных доступ устройства к шине блокируется. Чтобы вновь получить доступ к шине, ему необходимо дождаться конца интервала равнодоступности и начала следующего цикла.

По сигналу разрешения начинается работа на уровне компоновки, где формируются пакеты данных по 512 байт с интервалами между ними, и определяется их адресация. 160 бит в каждом пакете занимает заголовок, куда входит информация об отправителе и получателе пакетов, а также о циклическом коде CRC исправления ошибок. Передача данных начинается по получению ответа о готовности запрашиваемого устройства к приему информации.

В течение времени до 0,75 мс после отправки каждого пакета данных ожидается получение подтверждения об их получении в виде байтовой посылки. Далее следует интервал > 1 мс, разделяющий пакеты, и т. д.

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

Синхронная передача данных применяется, как уже говорилось, в мультимедийных приложениях, когда приоритетом является минимум задержки на получение информации по сравнению с возможной потерей или ошибками какой-то ее части. В этом режиме данные передаются пакетами длительностью по 125 мс, т.е. чем выше скорость, тем больше данных может быть передано за это время. Пакеты следуют друг за другом, не ожидая байтов подтверждения получения. Для идентификации пакетов синхронной и асинхронной передачи промежуток между ними в первом случае короче, чем во втором. Это позволяет комбинировать и различать синхронные и асинхронные данные в каждом сеансе. На синхронные данные выделено до 85% канала передачи, из которых устройство может занимать не более 65%.

Интерфейсом IEEE1394 допускается одновременная передача информации на разных скоростях от разных устройств, причем способности их общения на какой-либо из скоростей определяются автоматически.

Интерфейсом IEEE1394 допускается одновременная передача информации на разных скоростях от разных устройств, причем способности их общения на какой-либо из скоростей определяются автоматически. Это делает интерфейс весьма дружественным, так как пользователю не нужно заботиться о правильности подключения устройств.

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

Кабели и разъемы

Поскольку скорость передачи информации весьма высока, для IEEE-1394 используют специальные кабели (см. рис. 3). Диаметр такого кабеля равен 6 мм, он содержит три витые пары проводников диаметром 0,87 мм, одна из которых типа 22 AWG предназначена для питания напряжением от 8 до 30 В и током до 1,5 А внешней нагрузки, а две другие – раздельно экранированные пары сигнальных проводов типа 28 AWG. Все шесть жил кабеля закрыты общим плетеным металлическим экраном и защищены изоляцией из ПВХ.


Рис. 3. Разрез кабеля FireWire

После долгих поисков удалось подобрать прочный и компактный разъем, который можно подключать вслепую. Его взяли от игровой приставки Nintendo GameBoy. По конструкции разъем напоминает отечественный разъем типа РША: силовые и сигнальные контакты размещены по центру и защищены прочным прямоугольным пластмассовым кожухом, два угла которого скошены, чтобы исключить неправильное подключение (рис. 4, 5).

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

Для устройств, не использующих питание по кабелю FireWire, в частности для цифровых видеокамер, предусмотрели облегченный четырехжильный кабель с миниатюрным разъемом. Длина такого кабеля равна 96 см. Как правило, материнские платы компьютеров, поддерживающие FireWire, имеют в комплекте планку с обоими типами разъемов (рис. 6).


Рис. 6. Кабель IEEE 1394 i-Link

IEEE 1394a

При переносе FireWire с «Маков» на платформу РС появились неприятные проблемы, связанные с совместимостью «железа». Поэтому в 2000 году была принята новая редакция стандарта – IEEE 1394a. Стандарт стал более четким, в него были внесены усовершенствования, улучшившие производительность. В частности, было введено время ожидания 1/3 секунды на сброс шины до окончания переходного процесса подключения или отключения устройств. Без этого иногда возникал не один, а целая серия сбросов шины по подключению нового устройства.

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

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

  • Повторные байты подтверждения получения не ожидаются, после первого обнаружения такого байта передача продолжается без остановок;
  • Введена возможность неоднократного запроса на передачу от одного устройства в одном цикле, если другим устройствам шина не нужна;
  • Уменьшено время на сброс шины. В IEEE 1394 передающее устройство не обнаруживает сигнал сброса, пока не закончится передача текущего пакета данных. Поэтому сигнал сброса поддерживался в течение времени, большего, чем максимальное время передачи одного пакета. Если же сигнал сброса формируется по признаку выигрыша устройством арбитража, в этом нет необходимости, и в IEEE 1394a сброс шины выполняется по завершению передачи этого устройства;
  • Предусмотрены возможности прикрепления пакетов информации к уже передающимся пакетам, за счет чего достигается экономия на времени арбитража.

IEEE 1394b

Эта версия стандарта, принятая в 2002 году, рассчитана на последовательную шину с увеличенной до 800 Мб/с и 1,6 Гб/с пропускной способностью. В перспективе пропускная способность может возрасти и до 3,2 Гб/с. Основой интерфейса IEEE 1394b является кодирование 8В10В в соответствии с алгоритмами, применяемыми в оборудовании для гигабайтных сетей и в оптоволоконных линиях связи. Введено измерение времени отклика, что позволило работать со стеклянными оптоволоконными кабелями длиной до 100 метров. При использовании пластикового оптоволокна максимальная длина кабеля уменьшается до 50 метров, а пропускная способность до 200 Мб/с. Изменились и разъемы: теперь это 9-контактные двухрядные разъемы. Вид разъемов на кабельном переходнике 9↔4 контактов показан на рисунке 7.


Рис. 7. Кабельный переходник IEEE 1394

Этот переходник и ему аналогичный 9↔6 контактов обеспечивает кабельную совместимость шины IEEE 1394b с предшествующими версиями IEEE 1394. В новом стандарте предусмотрено два режима передачи данных: β‑режим, когда общаются устройства, поддерживающие IEEE 1394b, и режим обратной совместимости, при котором возможно подключение к шине устройств IEEE 1394a и максимальная скорость автоматически уменьшается до 400 Мб/с.

Из других особенностей IEEE 1394b следует отметить новый способ арбитража. Если в предшествующих стандартах функцию арбитража выполняло корневое устройство, то теперь такую функцию выполняет любое устройство, постоянно посылающее сигналы запроса на передачу. Новый метод арбитража называется Bus Owner/Supervisor/Selector (BOSS). Его логическая схема показана на рисунке 8, а принцип работы заключается в следующем.


Рис. 8. Арбитраж BOSS IEEE 1394b

В новом стандарте предусмотрено два режима передачи данных: β-режим, когда общаются устройства, поддерживающие IEEE 1394b, и режим обратной совместимости, при котором возможно подключение к шине устройств IEEE 1394a и максимальная скорость автоматически уменьшается до 400 Мб/с.

Устройство, готовое к передаче данных, постоянно посылает сигналы запроса, но передача данных блокируется, пока на соответствующей шине присутствуют сигналы, передаваемые другим устройством. Как только последние прекращаются, по этой шине начинают передаваться сигналы ждущего устройства, в свою очередь блокирующего режимы передачи других устройств. Очевидно, что для работы системы арбитража BOSS шина данных должна быть двунаправленной. Поэтому такой арбитраж работает только в среде IEEE 1394b. Если в нее входит хотя бы одно другое устройство, для арбитража применяется ранее рассмотренный метод.

USB 2.0 и IEEE 1394а

Все современные компьютеры оснащены портами USB 2.0, которые являются быстродействующей версией получивших массовое распространение портов USB 1.1. Основная сфера применения USB 2.0 осталась прежней. Это подключение периферийных устройств типа мышей, цифровых фотокамер, картридеров и других устройств, не требующих гарантированно постоянной пропускной способности.

Все современные компьютеры оснащены портами USB 2.0, которые являются быстродействующей версией получивших массовое распространение портов USB 1.1. Основная сфера применения USB 2.0 осталась прежней. Это подключение периферийных устройств типа мышей, цифровых фотокамер, картридеров и других устройств, не требующих гарантированно постоянной пропускной способности. USB 2.0, как и USB 1.1, использует 4-х контактные разъемы, полностью совместимые между собой. Единственное отличие в подключении USB 2.0 и USB 1.1 заключается в том, что новый стандарт требует экранированных кабелей. Теоретическая скорость по USB 2.0 составляет 480 Мб/с, максимальная передаваемая мощность на питание внешних устройств – 2,5 Вт. Общение устройств стандарта USB 2.0 происходит по схеме Master/Slave, т. е. все потоки данных управляются компьютером, что замедляет работу интерфейса. Длина кабеля для соединения двух устройств по шине USB 2.0 не должна превышать 5 метров. Преимуществами USB 2.0 является большая распространенность, совместимость с USB 1.1 и дешевизна.

Теоретическая скорость по USB 2.0 составляет 480 Мб/с, максимальная передаваемая мощность на питание внешних устройств – 2,5 Вт.


Преимуществами USB 2.0 является большая распространенность, совместимость с USB 1.1 и дешевизна.

С продвижением USB 2.0 на рынке стали появляться устройства, например, внешние жесткие диски со сдвоенным интерфейсом или одни и те же модели с разными интерфейсами. Казалось бы, по USB 2.0 они должны работать быстрее, чем по IEEE 1394a, но на практике, при прочих равных условиях производительность по FireWire 400 получается лучше, причем почти без проблем с «горячим» подключением. Вероятно, новая версия USB будет работать стабильней, но и IEEE 1394a к тому времени несколько устареет и будет заменяться на IEEE 1394b. Кроме того, архитектура USB 2.0 по гибкости несопоставима с IEEE 1394, особенно при работе с мультимедийной аппаратурой.

Таким образом, шина USB 2.0 эффективна для компьютерной периферии, низкоскоростной и со средними требованиями к пропускной способности. Она дешева и достаточно производительна для большинства задач. Шина FireWire гораздо гибче и отлично подходит для работы с мультимедиа. Цифровые видеокамеры и телевизоры, DVD-проигрыватели и игровые приставки – все это при наличии портов FireWire легко соединить между собой, причем не обязательно вокруг компьютера.



Рекомендуем почитать

Наверх