Автор работы: Пользователь скрыл имя, 26 Января 2012 в 11:23, курсовая работа
IEEE 1394 или Firewire - это последовательная высокоскоростная шина, предназначенная для обмена цифровой информацией между компьютером и другими электронными устройствами. Благодаря невысокой цене и большой скорости передачи данных эта шина становится новым стандартом шины ввода-вывода для персонального компьютера.
Введение 3
История возникновения 6
Основные сведения 7
Технические характеристики 7
Топология 9
Совместимость 10
Сеть на IEEE-1394 11
Сброс (reset) - происходит каждый раз, когда требуется. Причиной для сброса может стать, например, физическое изменение конфигурации сети (подключили новое устройство или отключили старое). Со сброса шины и начинается процесс инициализации сети. Конфигурация, сформировавшаяся при этом, остаётся действительной и неизменной до следующего сброса шины.
Идентификация дерева (Tree identification) - подключенные устройства выясняют, какие из них родительские, а какие дочерние, и формируют логическое дерево. Определяется корневое устройство для всего дерева.
Примечание: Первое, что определяет устройство после включения, это сколько подключенных портов оно имеет. Один (leaf) или несколько (branch). Затем определяется родительские (parent) и дочерние (child) устройства (какое к какому подключено). На основе этих данных строится дерево и определяется корневое устройство.
Самоидентификация
(Self identification) - каждое из устройств получает
свой собственный ID узла внутри дерева,
и выясняет на каких скоростях
могут работать его непосредственные
соседи. Топология полностью
Инициализация сети завершена, в действие вступает нормальный арбитраж - рабочий режим работы сети. Устройства обмениваются данными, а корневое устройство следит за тем, чтобы они друг другу не мешали. Происходит это так:
Устройство,
которое хочет начать передачу, вначале
посылает запрос своему родительскому
устройству. Родительское устройство,
получив запрос, запрещает передачу
всем остальным дочерним (в один
момент обрабатывается только один запрос)
и, в свою очередь, передаёт запрос дальше,
своему родительскому устройству, где
всё повторяется. В итоге запрос
доходит до корневого устройства,
которое, в свою очередь, разрешает
передачу тому устройству, чей запрос
пришёл первым. Всем остальным передача
запрещается. Таким образом, если два
устройства одновременно пошлют запрос
на передачу данных, то ответ будет
зависеть от того, чей запрос первым
достигнет корневого
Всё
это происходит на физическом уровне
(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%.
Первоначально появились чипы, которые способны работать только на 100 Мбитах (хотя спецификация позволяла и больше), но 200 и 400-мегабитные чипы не заставили себя долго ждать. Несмотря на такой кажущийся беспорядок, пользователи не должны испытывать ни малейших неудобств (это было одно из обязательных условий, которое ставилось перед разработчиками). Поэтому IEEE 1394 позволяет в одной сети использовать самые разные устройства одновременно. Причём, пользователю не придётся беспокоиться о том, что он может неправильно их подключить. Подключать можно что угодно, и в каких угодно сочетаниях, железки сами разберутся, кто с кем и на какой скорости может взаимодействовать.
Для работы на таких высоких скоростях потребовались соответствующие кабели. Кабель для IEEE 1394 весьма сложная система: данные передаются по двум витым парам, каждая из которых отдельно экранирована. Для пущей надёжности, дополнительно экранируется и весь кабель. Кроме двух сигнальных пар, в кабеле предусмотрены две питающие жилы, которые могут обеспечить любое внешнее устройство током силой до 1.5 А и напряжением до 40 V. В разрезе кабель выглядит так:
Провода питания рассчитаны на ток до 1,5 А при напряжении от 8 до 40 В, поддерживают работу всей шины, даже когда некоторые устройства выключены. Они также делают ненужными кабели питания во многих устройствах. Не так давно инженеры Sony разработали еще более тонкий четырехпроводный кабель, в котором отсутствуют провода питания.
Кабели и розетки для подключения периферийных устройств существуют в нескольких вариантах, в зависимости от требуемых параметров (это только ряд примеров):
Кабель на 6/6 проводов, поддержка скорости передачи до 400 Mbits/s. Напряжение питания до 40 V при токе до 1.5 А. Длина от 0.7 м до 4.5 м. | |
Кабель на 6/4 проводов, поддержка скорости передачи до 100 Mbits/s. Напряжение питания до 5 V при токе до 0.5 А. Длина от 1 м до 4.5 м. | |
Кабель на 4 провода, поддержка скорости передачи до 100 Mbits/s. Напряжение питания до 5 V при токе до 0.5 А. Длина от 1 м до 4.5 м. | |
Розетка на 4 провода, поддержка скорости передачи до 400 Mbits/s. Напряжение питания до 5 V при токе до 0.5 А. | |
Розетка на 6 проводов, поддержка скорости передачи до 400 Mbits/s. Напряжение питания до 40 V при токе до 1.5 А. | |
Розетка на 6 проводов, поддержка скорости передачи до 400 Mbits/s. Напряжение питания до 40 V при токе до 1.5 А. |
Основные характеристики шины:
Топология IEEE-1394 позволяет как древовидную, так и цепочечную архитектуру, а также комбинацию из того и другого. Поэтому легко строить любые варианты подключения различных устройств к шине. Стандарт предусматривает архитектурное разделение шины на 2 основных блока - кабельная часть и контроллер (контроллеры). Так как контроллеров может быть несколько, эту часть также называют объединительной (backplane - дословно задний план, кросс-плата и т.п.).
Адрес узла на "дереве" 16-ти разрядный, что позволяет адресовать до 64К узлов. К каждому узлу может быть подключено до 16-ти конечных устройств. На объединительной панели (backplane) может быть подключено до 63 узлов к одному мосту (bridge) шины. Так как под идентификатор номера шины (моста) отведено 10 разрядов, то общее количество узлов и составляет 64K.
Каждый узел обычно предусматривает подключение 3-х устройств, хотя собственно стандарт разрешает подключение до 27 устройств. Устройства могут быть подключены через стандартные кабели длиной до 4.5 метра.
Пример топологии IEEE-1394
Здесь и далее на рисунках под DV (Digital Video) устройствами понимаются устройства с интерфейсом IEEE-1394.
Физические
адреса (ID) устройствам назначаются
при подаче питания на контроллер
шины и устройства, подключенные к
ней, после общего сброса шины, а
также при "горячем" подключении
устройства к шине. Адреса присваиваются
в порядке последовательности обнаружения
и/или подключения устройств. Никакая
установка перемычек или
Стандарт
на кабельную часть
Благодаря применению размножителей, репитеров и т.п. устройств топология IEEE-1394 может быть достаточно сложной, хотя в 90% случаев ее применения наверняка столь сложная топология не потребуется.
Для удобства программирования и совместимости устройств на IEEE-1394 был разработан стандарт, названный Open Host Controller Interface (OHCI). Он предъявляет определенные требования к регистрам контроллера IEEE-1394 и их отображению в памяти. Кроме этого, OHCI совместимый контроллер должен удовлетворять требованиям по управлению энергопотреблением в соответствии со спецификацией ACPI.
Microsoft
в своих операционных системах
Windows 98 Second Edition и Windows 2000 поддерживает
только OHCI совместимые контроллеры
IEEE-1394. Все остальные контроллеры
(например, от Adaptec) должны сопровождаться
соответствующими драйверами и
совместимость таких устройств
с драйверами жестких дисков
операционной системы,
Шина IEEE 1394 может использоваться для:
Топология
Стандарт 1394 определяет
общую структуру шины, а также
протокол передачи данных и
разделения носителя. Древообразная
структура шины всегда имеет
"корневое" устройство, от которого
происходит ветвление к
Корневое устройство отвечает за определенные функции управления. Так, если это ПК, он может содержать мост между шинами 1394 и PCI и выполнять некоторые дополнительные функции по управлению шиной. Корневое устройство определяется во время инициализации и, будучи однажды выбранным, остается таковым на все время подключения к шине.
Сеть 1394 может включать до 63 узлов, каждый из которых имеет свой 6-разрядный физический идентификационный номер. Несколько сетей могут быть соединены между собой мостами. Максимальное количество соединенных шин в системе - 1023. При этом каждая шина идентифицируется отдельным 10-разрядным номером. Таким образом, 16-разрядный адрес позволяет иметь до 64449 узлов в системе. Поскольку разрядность адресов устройств 64 бита, а 16 из них используются для спецификации узлов и сетей, остается 48 бит для адресного пространства, максимальный размер которого 256 Терабайт (256х10244 байт) для каждого узла.