Студопедия

КАТЕГОРИИ:

АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Построение сети на основе FireWire




Введение

История.

Началось все еще в далеком 1986 году, когда среди интерфейсов ввода-вывода царила некоторая неразбериха, и ни одно из существовавших решений не могло претендовать на звание универсального. Как раз тогда и возникла идея создать новую высокоскоростную последовательную шину, превосходящую по всем параметрам SCSI. Ведущую роль в разработке стандата сыграла Apple, которая дала ему имя FireWire, поэтому нет ничего удивительного в том, что она сразу же сделал ставку на использование этого стандарта в своих компьютерах (как обычно, Apple пошёл своим путём, и, пока пользователи PC заглядывали в рот Intel с недавно появившемся USB, сделал ставку на FireWire). Разработанный стандарт прекрасно подходил для передачи высококачественного видео, а пропускной способности вполне хватало для комфортной работы со всевозможными внешними дисковыми накопителями. Постепенно все больше производителей стало обращать внимание на перспективную шину и добавлять ее поддержку в свои устройства. Наконец, в 1995 году, после ряда доработок, шина была официально принята комитетом IEEE, в связи с чем получила свое второе наименование – IEEE 1394. В конце того же года на свет появились первые DV-камеры, оборудованные интерфейсом FireWire. Среди персональных компьютеров, как несложно догадаться, поддержка IEEE 1394 впервые появилась в операционной системе Mac OS, и лишь после этого шина перекочевала на PC.

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

В 2002 году было принято еще одно дополнение к стандарту FireWire. Оно получило название IEEE 1394b или FireWire 800. Вдвое более высокая скорость потребовала разъем другого типа. Теперь в нем уже используется 9 контактов. Но 800 Мбит/с для IEEE 1394b не предел. В тестовом режиме поддерживается передача на скорости до 3200 Мбит/с, но эта возможность будет раскрыта несколько позже. Также стало возможным использовать два типа кабеля: обычный и оптический. В первом случае максимальная длина составит 5 метров, а во втором — до 100 метров. Электрические характеристики обновленного стандарта не изменились.

FireWire S800T (IEEE 1394c-2006). Главное нововведение этого стандарта — поддержка возможности использования витой пары категории 5e, на конце которой разведены обычные коннекторы RJ-45. Первое нововведение потребовало и второго — автоматического определение подключенного кабеля. Кроме этого были внесены незначительные изменения и исправления в IEEE 1394b.

Компанией Apple на FireWire не было наложено категорических ограничений (таких, что их можно устанавливать только на "яблочные" системы), но Apple, как владелец патента на технологию, вполне законно хочет получать отчисления. Для производителей компьютеров установлена такса $0.25, а для производителей оборудования (камер, внешних HDD и т.д.) - $1-2.

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

1)Многофункциональность. Шина обеспечивает цифровую связь до 63 устройств без применения дополнительной аппаратуры (хабов). Устройства бытовой электроники — цифровые камкордеры (записывающие видеокамеры), камеры для видеоконференций, фотокамеры, приемники кабельного и спутникового телевидения, цифровые видеоплейеры (CD и DVD), акустические системы, цифровые музыкальные инструменты, а также периферийные устройства компьютеров (принтеры, сканеры, устройства дисковой памяти) и сами компьютеры могут объединяться в единую сеть.

2)Высокая скорость обмена и изохронные передачи. Шина позволяет даже на начальном уровне (S100) передавать одновременно два канала видео (30 кадров в секунду) широковещательного качества и стерео-аудиосигнал с качеством CD.

3)Низкая цена компонентов и кабеля.

Легкость установки и использования. FireWire расширяет технологию PnP. Система допускает динамическое (горячее) подключение и отключение устройств.

Устройства автоматически распознаются и конфигурируются при включении/отключении. Питание от шины (ток до 1,5 А) позволяет подключенным устройствам общаться с системой даже при отключении их питания. Управлять шиной и другими устройствами могут не только PC, но и другие «интеллектуальные» устройства бытовой электроники.

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

Основные достоинства шины FireWire:

1. цифровой интерфейс - позволяет передавать данные между цифровыми устройствами без потерь информации;

2. небольшой размер - тонкий кабель заменяет груду громоздких проводов;

3. простота в использовании - отсутствие терминаторов, идентификаторов устройств или предварительной установки ;

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

5. небольшая стоимость для конечных пользователей;

6. различная скорость передачи данных - 100, 200 и 400 Мбит/с;

7. гибкая топология - равноправие устройств, допускающее различные конфигурации;

8. высокая скорость - возможность обработки мультимедиа-сигнала в реальном времени;

9. открытая архитектура - отсутствие необходимости использования специального программного обеспечения.

Благодаря этому шина Firewire может использоваться с:

1. компьютерами;

2. аудио и видео мультимедийными устройствами;

3. принтерами и сканерами;

4. жесткими дисками, массивами RAID;

5. цифровыми видеокамерами и видеомагнитофонами.

 

Составляющие Firewire

 

Функциональная схема интерфейса Firewire показана на рисунке 1.

 

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

 

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

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

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

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

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

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

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

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

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

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

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

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

 

Инициализация сети

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

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

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

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

Tree Identification использует два арбитражных сигнала:

1. Parent notifY

2. Child notifY

­Сигнал Parent notifY подается путем установки ТРА состояние «0» а ТРВ в состояние «Z».

В отличие от этого Child notifY устанавливает ТРА в состояние "1".

Parent notify ­ служит для подачи узлом шины (устройством) соседнему узлу о том что он намерен считать соседний узел своим родительским.

Соответственно узел подает Child notify соседнему если он ранее получил от него сигнал Parent notifY и в результате переговоров с другими узлами у Hero нет сомнений что соседний узел следует считать своим дочерним узлом.

Рассмотрим подробнее всю процедуру, приводящую к инициализации топологии шины.

под "проинициализированной топологией" понимается такое состояние шины, когда:

1. Шина может быть представлена (возможно не единственным способом) как дерево с единственной вершиной

2. Из всех возможных вариантов один узел выбран в качестве вершины (Root node), узел выбранный в качестве вершины знает о своей роли в дереве

3. Каждый вершина знает к какому из его портов подключен его родительский узел (узел расположенный ближе к вершине дерева), к каким портам подключены дочерние узлы и какие порты свободны.

Каждый узел, который обнаруживает только один единственный подключенный к нему соседний узел подает ему сигнал Parent notify и начинает ожидать от Hero подтверждения в виде сигнала Child notifY. Поскольку используется аппаратный арбитраж, то если 2 узла собрались одновременно послать друг другу сигнал, один из них "захватит" шину раньше другого и соответственно его опередит. Если какой-­либо узел на шине обнаружит что все его соединенные с соседями порты кроме одного получили сигнал Parent notifY, то этот узел может послать на эти порты подтверждение Child notifY и устройства на этих портах станут его дочерними узлами.

узлы у которых остался единственный не идентифицированный таким способом подключенный порт, могут попытаться послать через него соседнему устройству сигнал Parent notify. В тот момент когда один из таких сигнал захочет послать Parent notifY возможно соседний узел захочет послать такой же сигнал навстречу. Но опять один из двух узлов окажется быстрее: когда два узла пытаются одновременно предъявить друг другу сигнал Parent notify, они пытаются установить уровни «0» для ТРА и «Z» для ТРВ (пары меняются в кабеле местами), в результате входные компараторы обоих узлов увидят сигнал «0» как ТРА на так и на ТРВ. Обнаружив это условие (называемое ROOT ­ CONTEND) оба узла могут случайным образом выбрать подождать ли им короткое время (около 0.25 микросекунд) или подождать чуть подольше (порядка 0.6 микросекунд) перед тем как повторить попытку. При следующей попытке условие может повториться, однако после нескольких ходов своеобразной "Русской рулетки" все же определится победитель.

Если в процессе tree identification в течении интервала времени более 167 микросекунд узлы не могут определить своих родителей ­ это означает что в топологии есть петли и в узлах, обнаруживших это условие обнаруживается флажок loop, тогда локальные приложения в этих узлах (будь те узлы видеокамерами или РС) могут сообщить пользователю о том, что шина не может быть сконфигурирована из за этих петель.

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

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

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

 

 

 

Физический уровень сети

Кабельная сеть IEEE 1394 собирается по простым правилам — все устройства соединяются друг с другом кабелями по любой топологии (древовидной, цепочечной, звездообразной). Каждое «полноразмерное» устройство (узел сети) обычно имеет три равноправных соединительных разъема. Некоторые малогабаритные устройства могут иметь только один разъем, что ограничивает возможные варианты их местоположения. Стандарт допускает и до 27 разъемов на одном устройстве, которое будет играть роль кабельного концентратора. Сеть может состоять из множества шин, соединенных мостами — специальными устройствами, осуществляющими передачу пакетов между шинами, фильтрацию трафика, а для соединения разнородных шин еще и необходимые преобразования интерфейсов. Допускается множество вариантов подключения устройств, но со следующими ограничениями:

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

2) длина сегмента стандартного кабеля не должна превышать 4,5 м;

3) суммарная длина кабеля не должна превышать 72 м (применение более качественного кабеля позволяет ослабить влияние этого ограничения);

4) топология не должна иметь петель, хотя в последующих ревизиях предполагается автоматическое исключение петель в «патологических» конфигурациях.

 

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

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

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

 

 

Как передаются данные?

После того, как разрешение на передачу данных получено и требуется начать передачу данных, в дело вступает канальный уровень. Именно он формирует пакеты и определяет - когда и сколько пакетов должно отсылаться. Передача данных начинается с запроса готовности к приему устройства, для которого предназначены данные, и, получив подтверждение готовности, начинает передачу. Данные идут пакетами, между которыми есть промежутки (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, и вызывает сброс всей шины.

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

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

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

Шина поддерживает динамическое реконфигурирование — возможность «горячего» подключения и отключения устройств. Когда устройство включается в сеть, оно широковещательно передает короткий асинхронный пакет самоидентификации. Все уже подключенные устройства, приняв такой пакет, фиксируют появление новичка и выполняют процедуру сброса шины. По сбросу производится определение структуры шины, каждому узлу назначается физический адрес и производится арбитраж мастера циклов, диспетчера изохронных ресурсов и контроллера шины (см. ниже). Через секунду после сброса все ресурсы становятся доступными для последующего использования, и каждое устройство имеет полное представление обо всех подключенных устройствах и их возможностях. Отключение устройства от шины также обнаруживается всеми устройствами. Благодаря наличию линий питания интерфейсная часть устройства может оставаться подключенной к шине даже при отключении питания функциональной части устройства.

Мастер циклов — устройство, посылающее каждые 125 мкс короткие широковещательные пакеты начала циклов. В каждом таком пакете мастер циклов передает значение 32-битного счетчика времени, инкрементируемого с частотой 24,576 МГц, для каждого узла, поддерживающего изохронный обмен. В каждом цикле сначала передается по одному пакету каждого активного изохронного канала, затем на некоторое время зазора шина находится в состоянии покоя. После этого зазора начинается часть цикла, отводящаяся для передачи асинхронных пакетов. Каждое устройство, нуждающееся в асинхронной передаче, в этой части цикла может передать по одному пакету. Устройство, не имеющее пакета для передачи, шину и не занимает. После того как все нуждающиеся устройства передадут по одному пакету, в оставшееся время до конца цикла устройства могут передать и дополнительные пакеты.

Диспетчер изохронных ресурсов — устройство, ведающее распределением номеров каналов и полосы шины для изохронных передач. Диспетчер требуется, когда на шине появляется хоть одно устройство, способное к изохронной передаче. Диспетчер выбирается посредством арбитража из числа устройств, поддерживающих изохронный обмен. После сброса устройства, нуждающиеся в изохронной передаче, запрашивают требуемую полосу. Полоса измеряется в специальных единицах распределения, число которых в 125-микросекундном цикле составляет 6144. Единица занимает около 20 не, что соответствует времени передачи одного квад-лета (quadlet, 32-битное слово) на частоте 1600 Мбит/с. Такой способ измерения полосы учитывает возможность совместной работы устройств с разными скоростями — в одном цикле соседние пакеты могут передаваться на разных скоростях. Как минимум 25 мкс цикла резервируется под асинхронный трафик, поэтому суммарная распределяемая полоса изохронного трафика составляет 4915 единиц. Для цифрового видео, например, требуется полоса 30 Мбит/с (25 Мбит/с на видеоданные и 3-4 Мбит/с на аудиоданные, синхронизацию и заголовки пакетов). В S100 устройства цифрового видео запрашивают около 1800 единиц, в S200 — около 900. Если требуемая полоса недоступна, диспетчер откажет устройству и не выделит ему номер канала. Устройство, не получившее канал, будет периодически повторять запрос. Когда изохронный обмен становится ненужным узлу, он должен освободить свою полосу и номер канала, чтобы этими ресурсами смогли воспользоваться другие устройства. Обмен управляющей информацией устройств с диспетчером производится асинхронными сообщениями.

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

IEEE 1394а (2000 г.)

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

Connection Hysteresis (debouncing). Как уже было описано выше, каждый раз при подключении или отключении нового устройства происходит сброс шины. Проблема в том, что, при подключении нового устройства, устойчивая электрическая связь образовывается не сразу, что приводило к целому циклу сбросов шины, пока всё не успокоится, и будет установлено устойчивое соединение. Для решения этой проблемы в 1394а появился time-out (время ожидания 1/3 секунды - пока не будет установлено устойчивое соединение или произойдет потеря контакта) на подключение/отключение нового устройства, что гарантирует только один сброс шины при каждом подключении/отключении.

Transmission Delay Calculation (PHY Pinging). В первой версии стандарта такой простой команды как ping вообще не было предусмотрено. Любое устройство должно было ответить не больше, чем через 144 наносекунды, в противном случае считалось, что оно недоступно. Именно это ограничение и определило максимальную длину кабеля в IEEE 1394 в 4.5 метра. Введение такой простой команды (одно устройство отсылает пакеты, другое отвечает, а время отклика замеряется) позволяет соседним устройствам точно знать, когда следует ждать ответа. Это дало возможность преодолеть ограничение в обязательные 144 наносекунды и использовать кабели большей длины.

Multi-Speed Packet Concatenation. Одной из причин, почему IEEE 1394 устройства разных производителей, выпущенные в соответствии с первой версией протокола, могли быть не совместимы друг с другом, это чёрная дыра в спецификации, связанная с сериями из нескольких пакетов. Сигнал, определяющий скорость, требовался только для первого пакета, но в серии могли присутствовать пакеты, передаваемые с другой скоростью. Для решения этого бага разные производители шли на ухищрения, что и приводило к несовместимости. В 1394а версии спецификации предусмотрен стандартный механизм решения этой проблемы - сигнал скорости добавляется в каждый пакет, передаваемый на скорости, отличной от предыдущего.

Port Disable (Per Port Software Disconnect). Возможность отключать IEEE 1394 порт программно - отключенный порт перестаёт реагировать на какой-либо трафик, и не мешает остальным устройствам. Это может оказаться весьма удобным, особенно в компьютерном окружении. Кроме того, для работы в компьютерной среде, в 1394а появились функции управления питанием (устройство может быть переведено в спячку и выведено из неё через IEEE 1394 интерфейс).

Arbitration Improvements (Fairness Optimization). Как уже говорилось, fairness interval это отрезок, во время которого одно устройство может выиграть шину только один раз. Даже если всё остальное время шина никому не нужна, оно вынуждено ждать начала следующего цикла, чтобы продолжить передачу. А потом ещё выжидать reset gap, самые длинные промежутки, предусмотренные стандартом. Поэтому, в версии 1394а протокола появилась возможность одному устройству запрашивать (и получать) право на передачу несколько раз (до 63) в течении одного fairness interval.

 

Кабель и порты

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

Кабель диаметром 6 мм содержит три витые пары проводников диаметром 0,87 мм. Одна из пар предназначена для питания внешней нагрузки (напряжение 8…30 В, потребляемый ток до 1,5 А), а две другие представляют собой раздельно экранированные пары сигнальных проводов. Все проводники с изолирующим заполнением заключены в экранирующую фольгу и оболочку из поливинилхлорида. Таким образом, кабель имеет сложную конструкцию и изготовить его самостоятельно вряд ли возможно.

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

1. 4pin (IEEE 1394a без питания) стоит на ноутбуках и видеокамерах. Два провода для передачи сигнала (информации) и два для приема.

2. 6pin (IEEE 1394a). Дополнительно два провода для питания.

3. 9pin (IEEE 1394b). Дополнительные провода для приёма и передачи информации

Пара проводов, предназначенная для питания внешних устройств, например сканера, не требуется при работе с цифровыми видеокамерами, обеспеченными собственным питанием. Для таких случаев применения Firewire разработаны однорядные 4-контактные разъемы и кабели, например — Sony iLink. Длина этого кабеля составляет 96 см.

 

Построение сети на основе FireWire

 

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

1. Кабель FireWire IEEE1394 4pins-4pins

2. Кабель FireWire IEEE1394 6pins-4pins

3. Кабель FireWire IEEE1394 6pins-6pins

Вид шнура выбирается в зависимости от того, какие разъемы FireWire стоят у вас - 4 или 6 контактные.

После этого надо назначить фиксированный IP адрес на это подключение, например 192.254.0.5 и 192.254.0.6 и сконфигурировать принадлежность подключённых компьютеров к одной рабочей группе. Главное достоинство такого подключения является его очень высокая скорость 400 мегабит в секунду. Главный недостаток совсем небольшая длинна, на которую можно протянуть FireWire сеть. Официальное максимальное расстояние связи 4.5 метров. Неофициальное макс. расстояние устойчивой связи до 10-15 метров. Однако если приобрести FireWire репитер, который усиливает сигнал сеть можно проложить на расстояние до 72-100 метров. Такая сеть уже легко может конкурировать с обычной ЛВС на витой паре.

Столь длинные IEEE 1394 кабели не продаются, поэтому придется их наращивать самому, при этом лучше всего использовать витую пару и пайку. Скорость связи по наращенному кабелю падает на 50-80 мегабит. IEEE 1394 сеть идеально подходит для объединения нескольких компьютеров в пределах одной квартиры, а с использование репитера позволяет строить сеть используя только интерфейс FireWire, так же если один из компьютеров подключён к ЛВС, то используя его в качестве роутера сеть FireWire можно объединить с обычной локальной сетью.

 

Будущее

 

В марте 2009 года был представлен проект, позволяющий использовать оптоволокно в качестве среды передачи в кабеле FireWire. Также планируется увеличение скорости передачи до 6,4 Гбит\с и использование дополнительных коннекторов.

 

 










Последнее изменение этой страницы: 2018-06-01; просмотров: 182.

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