загрузка...
 
Интерфейс быстрой передачи данных FireWire
Повернутись до змісту

Интерфейс быстрой передачи данных FireWire

Влияние Microsoft и Intel на компьютерную индустрию огромно, но все же не безгранично. Поэтому одновременно с USB- компанией Apple при участии других компаний, включая Sony и Texas Instruments, разрабатывался альтернативный последовательный интерфейс. Созданный в 1963 году Институт инженеров по электротехнике и радиоэлектронике (Institute of Electrical and Electronics Engineers — IEEE) занимается систематизацией и классификацией различных стандартов и технологий. Поэтому, хотя разработанная компанией Apple Computers технология быстрой передачи данных имеет фирменное название FireWire, которое в 2002 году было закреплено IEEE в качестве официального, но в каталоге IEEE этот стандарт имеет название IEEE Standard 1394. В свою очередь,  разработчики компании Sony назвали его i.LINK.

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

 

Стандарт IEEE 1394, или FireWire, рассчитан на передачу больших объемов информации с очень высокой скоростью, т.е. для подключения внешних высокоскоростных устройств к компьютеру. Это делает его весьма привлекательным, например, для владельцев цифровых видеокамер, желающих заниматься редактированием отснятого видеоматериала на своих компьютерах. Кроме того, переносные жесткие диски, внешние дисководы компакт-дисков и дисков DVD и прочие подобные устройства, подключаемые через порт FireWire, работают намного быстрее тех, которые подключаются через обычный порт USB (однако стандарт USB 2.0 имеет большее быстродействие, чем стандарт FireWire, поэтому со временем он может занять лидирующее положение на рынке.)

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

Обладая очень высокими характеристиками и возможностями, эта шина первоначально, из-за лицензионной политики компании-разработчика Apple, не получила особого распространения, и лишь с появлением портативных видеокамер стандартов MiniDV и Digital8 IEEE 1394 получил широкое признание.

Благодаря громадной на момент своего появления пропускной способности (до 400 Мбит/с) и поддержке изохронного режима FireWire, с самого начала нашел применение в компьютерной периферии и цифровых устройствах, использующих мощные потоки данных. Им начали оснащать внешние винчестеры, CD- и DVD-рекордеры, сканеры и принтеры, видеокамеры. Sony дала этому интерфейсу фирменное название iLink и наметила применять его для соединения всех своих цифровых аудио- и видеоустройств. В то же время FireWire не стал прямым конкурентом USB. Так, в компьютерах Apple прижились обе технологии.

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

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

По сравнению с популярной шиной USB 1.1 шина FireWire имеет следующие основные преимущества:

сокращение числа проводников делает соединение более надежным;

увеличение максимальной скорости передачи с 12 Мбит/c (USB 1.1) до 400Мбит/c (возможны варианты 100 и 200 Мбит/c). В ближайшем будущем планируется ввести поддержку скоростей 800 и 1600 Мбит/с;

возможность питания внешних устройств от шины 1.25A/12В (FireWire) против максимальных 500 мА/5В (USB);

на одном канале может находиться до 63 устройств, причем длина кабеля может достигать 4,5 метров;

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

одноранговая шина FireWire не требует управления, устройства общаются по принципу peer-to-peer.

FireWire радикально отличается от USB по топологии, он построен по принципу гирляндной цепи (daisy chain), состоящей из последовательно соединенных одноранговых устройств. Эта топология позволяет создавать не только линейные, но и древовидные схемы подключения. Из-за ограничения на время ожидания ответного сигнала, установленного спецификацией IEEE 1394, длина кабеля не превышает 4,5 м. Между любыми двумя устройствами не должно быть больше 16 транзитных участков.

Стандарт IEEE 1394 поддерживает как асинхронный, так и синхронный протоколы передачи данных и предоставляет гораздо больше возможностей, чем технология Plug&Play. Например, каждое устройство может быть подключено,/отключено в любой момент времени, даже во время непосредственной передачи данных, при этом шина автоматически переконфигурируется и происходит новое назначение адресов.

Каждый узел (устройство) в сети FireWire при инициализации получает 6-битный идентификационный номер (адрес узла). В каждой отдельной сети может присутствовать до 63 узлов. Кроме того, сети, идентифицируемые собственным 10-битным номером, допускается соединять между собой мостами, максимальное их число — 1023. Применение 16-битных адресов узлов позволяет объединить шиной FireWire до 64449 узлов, а общее адресное пространство FireWire составляет 264 адреса (используются 64-битные адреса), как и в случае с USB, на практике же число устройств ограничивается пропускной способностью интерфейса.

Функционально FireWire очень близок USB: поддерживаются «горячее» подключение и отключение устройств, асинхронный и изохронный режимы передачи данных, технология Plug-and-Play, подача питания на устройства через интерфейс. Номинальная скорость передачи данных составляет 100 Мбит/с (в восемь раз больше, чем у USB 1.0), но уже первая спецификация предусматривала удвоенную и учетверенную скорости, то есть 200 и 400Мбит/с соответственно.

Для подключения периферийных устройств в IEEE 1394 используется два типа разъемов – 6- и 4- контактные. В отличие от USB, где применение различных типов разъемов обусловлено различным типом устройств, в IEEE 1394 в случае, когда нет необходимости в питании устройства, используется 4-контактный малогабаритный разъем, такого типа разъемы чаще всего используются в видеокамерах. Если же устройство необходимо питать от шины, то используется более крупный 6-контактный разъем. Большинство компьютерных устройств рассчитано именно на последний тип разъемов.

Если посмотреть на заднюю стенку компьютера, то там можно увидеть множество разъемов: последовательный порт для модема, принтерный порт для принтера, разъемы для клавиатуры, мыши и монитора, SCSI-интерфейс, предназначенный для подключения внешних носителей информации и сканеров, разъемы для подключения аудио- и MIDI- устройств, а также для устройств захвата и работы с видеоизображениями. Интерфейс IEEE 1394 призван избавить пользователей от этого неудобного разнообразия и к тому же имеет полностью цифровой интерфейс. Таким образом, данные с компакт-дисков и цифровых магнитофонов смогут передаваться без искажений, потому что в настоящее время эти данные сначала конвертируются в аналоговый сигнал, а затем обратно оцифровываются устройством-получателем сигнала. Кабельное телевидение, радиовещание и видео- CD передают данные также в цифровом формате.

Стандарт поддерживает пропускную способность шины на уровнях 100, 200 и 400 Мбит/с. В зависимости от возможностей подключенных устройств одна пара устройств может обмениваться сигналами на скорости 100Мбит/с, в то время как другая на той же шине - на скорости 400 Мбит/с. Такие высокие показатели пропускной способности последовательной шины практически исключают необходимость использования параллельных шин, основной задачей которых станет передача потоков данных, например, несжатых видеосигналов, внутри компьютера.

Таким образом, FireWire удовлетворяет всем вышеперечисленным требованиям, включая:

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

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

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

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

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

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

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

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

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

Благодаря этому, шина IEEE 1394 может использоваться с: компьютерами, аудио- и видеомультимедийными устройствами, принтерами и сканерами, жесткими дисками, массивами RAID, цифровыми видеокамерами и видеомагнитофонами.

Устройства IEEE 1394 имеют 3 уровня – Transaction, Link и Physical, соответствующие трем нижним уровням модели OSI. Связь между шиной PCI и Transaction Layer осуществляет Bus Manager. Он назначает вид устройств на шине, номера и типы логических каналов, обнаруживает ошибки. Сам Transaction Layer поддерживает асинхронный протокол записи-чтения и маршрутизацию потоков данных. Link Layer отвечает за формирование и доставку пакетов данных. Physical Layer содержит преобразователи цифровой информации в аналоговую для передачи и обратно, контролирует уровень сигнала на шине, управляет доступом к шине.

Данные передаются кадрами длиной по 125мкс каждый. В кадре находится временные слоты для каналов. Каждый канал может занимать один или несколько временных слотов. Для передачи данных устройство-передатчик просит предоставить синхронный канал требуемой пропускной способности. Если в передаваемом кадре есть требуемое количество временных слотов для данного канала, оно получает утвердительный ответ и канал организуется.

Кабель FireWire состоит из шести проводни ков

 

В кабеле присутствуют 3 пары проводников – две отдельно экранированные витые пары (желтый и синий, красный и зеленый), служащие для передачи данных, два провода, по которым подается питание на подключенные устройства (коричневый и белый проводники), имеется еще общий экран. Последняя пара проводников в некоторых модификациях шины может отсутствовать.

 

Провода питания рассчитаны на ток до 1,5 А при напряжении от 8 до 40 В, поддерживают работу всей шины, даже когда некоторые устройства выключены. Они также делают ненужными кабели питания во многих устройствах. Толщина круглого кабеля обычно не превышает 6 мм.

На разъеме присутствует ключ для предотвращения неправильного присоединения.

Не так давно для применения в портативной технике инженеры Sony разработали еще более тонкий четырехпроводной кабель, в котором отсутствуют провода питания. Соответственно появились более миниатюрные 4-контактные разъемы - этот так называемый AV-разъем будет связывать небольшие устройства, как "листья" с "ветками" 1394. Гнездо разъема имеет небольшие размеры. Ширина его составляет 1/10 ширины гнезда разъема SCSI, у него всего шесть контактов (у SCSI - 25 или 50 разъемов).

К тому же кабель 1394 тонкий - приблизительно в три раза тоньше, чем кабель SCSI. Секрет тут прост - ведь это последовательная шина. Все данные посылаются последовательно, а не параллельно по разным проводам, как это делает шина SCSI.

Стандарт 1394 определяет общую структуру шины, а также протокол передачи данных и разделения носителя. Древообразная структура шины всегда имеет "корневое" устройство, от которого происходит ветвление к логическим "узлам", находящимся в других физических устройствах.  Корневое устройство отвечает за определенные функции управления. Так, если это ПК, он может содержать мост между шинами 1394 и PCI и выполнять некоторые дополнительные функции по управлению шиной. Корневое устройство определяется во время инициализации и, будучи однажды выбранным, остается таковым на все время подключения к шине.

Сеть 1394 может включать до 63 узлов, каждый из которых имеет свой 6-разрядный физический идентификационный номер. Несколько сетей могут быть соединены между собой мостами. Максимальное количество соединенных шин в системе - 1023. При этом каждая шина идентифицируется отдельным 10-разрядным номером. Таким образом, 16-разрядный адрес позволяет иметь до 64449 узлов в системе. Поскольку разрядность адресов устройств 64 бита, а 16 из них используются для спецификации узлов и сетей, остается 48 битов для адресного пространства, максимальный размер которого 256 Терабайтов (256х10244 байта) для каждого узла.

Устройства могут подключаться к любому доступному порту (на каждом устройстве обычно 1 - 3 порта). Шина допускает "горячее" подключение - соединение или разъединение при включенном питании. Нет также необходимости в каких-либо адресных переключателях, поскольку отсутствуют электронные адреса. Каждый раз, когда узел добавляется или изымается из сети, топология шины автоматически переконфигурируется в соответствии с шинным протоколом.

Однако есть несколько ограничений:

между любыми двумя узлами может существовать не больше 16 сетевых сегментов;

в результате соединения устройств не должны образовываться петли;

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

Интерфейс позволяет осуществлять два типа передачи данных: синхронный и асинхронный. При асинхронном методе получатель подтверждает получение данных, а синхронная передача гарантирует доставку данных в необходимом объеме, что особенно важно для мультимедийных приложений.

Протокол IEEE 1394 реализует три нижних уровня эталонной модели Международной организации по стандартизации OSI: физический, канальный и сетевой. Кроме того, существует "менеджер шины", которому доступны все три уровня. На физическом уровне обеспечивается электрическое и механическое соединение с коннектором, на других уровнях - соединение с прикладной программой.

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

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

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

В случае синхронной передачи отправитель просит предоставить синхронный канал, имеющий полосу частот, соответствующую его потребностям. Идентификатор синхронного канала передается вместе с данными пакета. Получатель проверяет идентификатор канала и принимает только те данные, которые имеют определенный идентификатор. Количество каналов и полоса частот для каждого зависят от приложения пользователя. Может быть организовано до 64 синхронных каналов.

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

Но все-таки главным в деле продвижения новой шины к потребителю является ее поддержка производителями программного обеспечения, и здесь дела у FireWire идут более чем хорошо, так как все версии Windows, начиная с 98SE, имеют в своем составе качественные драйвера для этой шины. Да и с поддержкой производителей "железа" дело постепенно налаживается, так компания SiS уже выпустила первый чипсет SiS745 с интегрированным контроллером IEEE 1394, что является пока первой, но очень много значащей, ласточкой.

Работы над усовершенствованием стандарта FireWire не прекращались. В 2000 г. вышла спецификация IEEE 1394a, изменения в которой коснулись физической и логической организации интерфейса. Характеристики остались прежними. Из наиболее существенных для пользователя изменений следует упомянуть о появившейся возможности перевода устройств в режим экономного энергопотребления (как это сделано в USB) и о введении команды PHY Ping для измерения задержки при прохождении сигнала между устройствами. Последняя заменяет существовавшее в первой версии жестко заданное максимальное время на прохождение сигнала, равное 144 нс. В результате устройства, поддерживающие IEEE 1394a, можно соединять кабелем длиннее 4,5 м.

Более существенные изменения будут, когда будет закончена спецификация IEEE 1394b. Она направлена на общую модификацию интерфейса, в том числе с целью многократного повышения его производительности. Изменения должны коснуться всего, в том числе кабелей и разъемов. Как ожидается, в IEEE 1394b будут обеспечены скорости передачи данных 800, 1600 и, не исключено, 3200 Мбит/с; максимальная длина кабеля составит 50, 70 и даже 100 м. Если в первоначальном стандарте FireWire применялись обычные медные витые пары, то в будущем для достижения максимальных скоростей и дистанций решено использовать оптоволоконную технологию. Пластмассовое оптоволокно будет применяться в кабелях длиной до 50 м, стеклянное — до 100 м.

В связи с массовым внедрением интерфейса Serial ATA ожидается, что он не только заменит устаревающий интерфейс IDE, но и способен потеснить и FireWire, и USB 2.0. Так, скорость передачи данных у Serial ATA может достигать 150 Мбайт/с, что превосходит оба вышеупомянутых интерфейса. И это только в первой редакции, в последующем планируется ее сначала удвоить, а потом и учетверить. Топология подключаемых устройств типа "звезда" позволяет безболезненно вывести один - два разъема для подключения внешних устройств, да и максимальной длинны кабеля 1 метр вполне может хватить для комфортной работы с такими устройствами. А выгода от замены множества разнокалиберных интерфейсов одним универсальным очевидна.

Стандарт единой архитектуры PCI-Express

Шина PCI Express первоначально стала известная как шина ввода/вывода третьего поколения (3rd Generation I/O, 3GIO), призванная заменить шину PCI и взять на себя задачу по связи компонентов внутри компьютера на ближайшие десять лет.

Шина была разработана с учётом применения на множестве сегментов рынка, в роли единой архитектуры ввода/вывода для настольных ПК, мобильных решений, серверов, устройств связи, рабочих станций и встроенных устройств (оригинальная спецификация разрабатывалась только для сегмента настольных ПК). Одними из первых устройств, которые стали массово выпускаться для PCI-Express, стали видеоадаптеры.

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

Базовая спецификация PCI-Express была утверждена в 2002 году. Ее разработка проводится организацией PCI-SIG при активной поддержке Intel и ряда других ведущих компаний компьютерной отрасли. Сейчас именно Intel продвигает этот стандарт. Поддерживать новую технологию будут как чипсет Intel Grantsdale, так и новая версия Microsoft Windows , названная Longhorn.

Разработчики посчитали, что для видеоадаптера, с запасом на будущее, подойдет 164-контактный разъём PCI-Express x16. Эффективная пропускная способность PCI-Express x16 заметно выше таковой у AGP 8X: 3200 Мбайт/с против примерно 2000 Мбайт/с у AGP 8X. Однако даже самые современные видеоакселераторы пока не могут загрузить шину PCI-Express x16 работой полностью. По правде говоря, даже возможности AGP 8X пока что не исчерпаны полностью. Нагрузка на шину сглаживается также и за счет того, что для современных видеокарт с 256 Мбайтами памяти на борту из-за большого буфера не требуется частая подкачка данных в память. Да и разработчики приложений, прежде всего игр, видимо, стараются писать программы так, чтобы не нагружать видеокарту потоком информации более, чем доступно AGP 8X. Надо полагать, что ситуация коренным образом изменится лишь в перспективе, с появлением более мощных видеоакселераторов и новых приложений.

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

Для подключения графических карт практически везде используется версия PCI-Express x16. Теоретическая пропускная способность такой шины составляет до 4000 Мбайт/с независимо в обеих направлениях (максимальная пропускная способность AGP 8x - 2133 Мбайт/с, причем, лишь в одном направлении). Вполне очевидно, что новая шина с большим запасом перекрывает возможности современных графических процессоров и в перспективе может послужить дополнительным стимулом к их совершенствованию.

В настоящее время шину PCI-Express x16 поддерживают такие новейшие наборы системной логики как i925X и i915G корпорации Intel, но похоже в ближайшее время к ним присоединятся и модели других производителей. Крупнейшие фирмы-разработчики графических процессоров, ATI Technologies и NVidia, уже выпускают чипы с поддержкой новой шины. Однако, если в распоряжении NVidia имеется запатентованная микросхема-"мост" AGP-PCI-Express, обеспечивающая возможность работы всех производимых ею графических процессоров как с шиной AGP, так и с шиной PCI-Express, то компания ATI выпускает отдельные модификации чипов с "родной" или встроенной поддержкой той или иной шины. Так, в настоящее время производятся модификации процессоров Radeon X600 и X800 как для шины AGP 8x, так и для шины PCI-Express x16.

Новейшие чипы среднего класса Radeon X700 пока выпускаются только в варианте для шины PCI-Express, что свидетельствует о том, что в ATI делают ставку именно на этот перспективный интерфейс.

ATI оценивает долю PCI-Express чипов в общем объеме выпуска своей продукции в 2004 года в 40%. XGI - заявила о намерении представить два PCI-Express чипа - XG45 и XG47.

 

В отличие от старых параллельных шин PCI, AGP, ISA, принцип передачи данных PCI-Express является последовательным. PCI-Express работает по принципу "точка-точка", то есть одна шина в чистом виде может объединять только два устройства (когда устройства не разделяют общую шину). Поэтому в её архитектуре предусматривается свитч, распределяющий сигналы между всеми устройствами PCI-Express. Это принципиальное отличие от PCI, где на общую шину включаются все устройства.

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

За счёт последовательной передачи данных удается достичь огромных тактовых частот, на два порядка превышающих рабочие частоты старых параллельных шин. Сейчас PCI-Express работает на частоте 2,5ГГц, хотя в перспективе она может быть легко масштабирована, лимитом здесь считается 10ГГц. Уже при частоте 2,5ГГц достигается скорость передачи данных 250Мбайт/с независимо в каждую сторону (полный дуплекс). Из этого потока нужно вычесть потери на избыточное кодирование по схеме "8/10", применяемое в PCI-Express, и будет получена эффективная скорость передачи данных на уровне 200Мбайт/с на одну линию передачи.

Варианты масштабирования PCI-Express

Тип разъёма

(число линий)

Число контактов в разъёме

Эффективная пропускная способность (в одну сторону), Мбайт/с

PCI-Express x1

36

200

PCI-Express x4

64

800

PCI-Express x8

98

1600

PCI-Express x16

164

3200

PCI-Express x32

294

6400

Разработчики уделили внимание проблеме масштабируемости производительности. Они отошли от принципа единого разъёма – в шине PCI-Express изначально предусмотрена возможность наращивания независимых линий передачи данных. Линия передачи PCI-Express х1 (одна линия) имеет весьма скромные показатели – эффективная пропускная способность до 200Мбайт/с. Но за счет добавления стандартных секций в разъёме, пропускная способность может быть легко наращена до 6400 Мбайт/с – PCI-Express x32 (32 линии). Предаваемые данные поровну распределяются между линиями по принципу: n-й байт на n-ю линию. При всём этом линии передачи данных в разъёме PCI-Express остаются независимыми, работают в асинхронном режиме. Ко всему достигается обратная совместимость: в многоканальные разъёмы PCI-Express можно вставлять платы расширения, рассчитанные на меньшее число каналов.

Организация PCI-SIG приняла решение вдвое увеличить пропускную способность нового поколения PCI-Express. Максимальная скорость передачи данных вскоре достигнет 5Гбайт/с. Ожидается, что спецификация на новое поколение PCI-Express будет принята уже в 2005 году, а первая продукция на основе новой шины появится на рынке начиная с 2007 года.

Предполагается, что в новом поколении PCI-Express будет реализована возможность автоматического снижения скорости с 5Мбайт/с до стандартных сейчас 2,5Мбайт/с, в тех случаях, когда это необходимо. Таким образом, можно надеяться на простую обратную совместимость следующего поколения шины PCI-Express. Следует также отметить – помимо скорости 5Мбайт/с рассматривались варианты 6Мбайт/с и 6,25Мбайт/с.

Среди других преимуществ следует отметить:

возможность эффективно работать с различными структурами данных;

низкое энергопотребление и поддержку функций энергосбережения;

качество стратегий обслуживания;

поддержку "горячей замены" и "горячей установки" устройств;

обеспечение целостности данных и обнаружение ошибок на нескольких уровнях;

изохронную передачу данных;

узловую передачу при использовании чипов-мостов и одноранговую передачу с помощью коммутаторов;

многоуровневую технологию с поддержкой пакетной коммутации.

 

На самом деле PCI Express представляет собой целый аппаратный комплекс, затрагивающий северный/южный мост, коммутатор и конечные устройства. Новым термином здесь является коммутатор (switch). Он заменяет шину с множественными подключениями коммутируемой технологией. Коммутатор обеспечивает одноранговую связь между различными конечными устройствами, то есть предотвращает попадание излишнего трафика к мосту.

На рисунке представлены варианты применения PCI Express на всём спектре платформ: настольные и мобильные ПК, серверы и рабочие станции, а также сетевые системы связи.

 

В наше время важен и экономический эффект. Последовательная шина требует меньше проводников на печатной плате, таким образом, высвобождается место, упрощается дизайн, уменьшаются электрические наводки. Каждая линия передачи данных состоит из двух дифференциальных контактных пар, для чего необходимо только четыре контакта. Уровню логической "1" сигнала PCI-Express соответствует напряжение 0,8 В. Для PCI-Express предусмотрена автономная система энергосбережения: питание от разъёма должно отключаться при отсутствии активности в промежутке определённого времен. Кроме того, при условии поддержки со стороны карты расширения, PCI-Express позволяет производить горячую замену устройств.

Архитектура PCI Express состоит из нескольких уровней, что облегчает кросс-платформенный дизайн

:

 

Physical Layer - физический уровень, расположенный в самом низу. Основной физический принцип связи PCI Express заключается в использовании двух дифференциальных сигналов с низким напряжением для приёма и для передачи. Встраивание сигнала данных с помощью схемы кодирования 8/10b позволяет достичь высоких скоростей передачи. Изначальная пропускная способность составляет 2,5 Гбит/с в каждом направлении, причём по мере развития кремниевых технологий скорость передачи будет расти. Возможно достижение пропускной способности 10 Гбит/с в обоих направлениях

 

Одна из наиболее впечатляющих функций PCI Express заключается в возможности масштабирования скорости, используя несколько линий передачи. Физический уровень поддерживает ширину шины X1, X2, X4, X8, X12, X16 и X32 линий. Передача по нескольким линиям прозрачна для остальных слоёв.

Data Link Layer - канальный уровень гарантирует надёжную передачу и целостность данных для каждого пакета, переданного по связи PCI Express. Помимо использования нумерации пакетов и контрольной суммы CRC канальный уровень применяет протокол управления потоком с разрешениями на передачу, который передаёт данные только в случае готовности буфера приёма на принимающей стороне. В результате этого число повторов пакетов снижается, что позволяет более эффективно использовать пропускную способность шины. Ошибочные пакеты передаются повторно

 

Transaction Layer - уровень транзакций создаёт пакеты и передаёт информацию от программного уровня на канальный уровень в виде отдельных транзакций. Каждый пакет имеет уникальный идентификатор, также уровень поддерживает 32-битную или расширенную 64-битную адресацию памяти. Дополнительные функции включают "no-snoop", "relaxed ordering" и установку приоритетов, что позволяет осуществлять маршрутизацию и задавать качество обслуживания QOS.

Более того, уровень транзакций знаком с четырьмя адресными пространствами: память, пространство ввода/вывода, конфигурационное пространство (три этих пространства уже существовали в спецификации PCI) и новое пространство сообщений Message Space. Последнее позволяет заменить сигналы боковой полосы частот (side-band) в спецификации PCI 2.2 и убрать все "специальные циклы" старого формата. Сюда относятся прерывания, запросы управления энергосбережением и сброс.

Software Layer - программный уровень отвечает за программную совместимость. Процесс инициализации и работы с устройствами шины остался неизменным по сравнению с PCI, что позволяет существующим операционным системам поддерживать PCI Express без всяких изменений. Устройства нумеруются таким образом, чтобы операционная система смогла обнаружить их и выделить необходимые ресурсы, в то время как работа с шиной построена на модели PCI загрузка-сохранение с разделяемой памятью. Впрочем, нам ещё предстоит увидеть, будет ли требоваться модификация на самом деле, поскольку "поддержка PCI Express" заявлена как одна из функций следующей операционной системы Microsoft с кодовым названием Longhorn. Тонкий намёк, что предыдущие операционные системы могут и не поддерживать PCI Express.

Изначальные реализации шины будут сосуществовать с наследственными слотами PCI. На рисунке разъём находится сразу позади слота PCI в задней части материнской платы, что позволяет устанавливать как обычную карту PCI, так и карту PCI Express.

 

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

Разъём PCI-Express делится ключом на две части. Первая часть (та, что ближе к задней стенке корпуса) одинакова для всех разъёмов и предназначена для питания карты. Сюда подводятся напряжения 3,3 В и 12 В. Спецификацией предусматривается подводка мощности 60 Вт. По другую сторону от ключа расположены контакты секций линий передачи данных: от одной до тридцати двух. Соответственно количеству линий передачи меняется длина разъёма. Самые короткие разъёмы PCI-Express x1, длина PCI-Express x16 примерно равняется размеру обыч ного PCI слота.

 

Перспективная шина PCI-Express используется, в основном, для видеокарт, но постепенно начинают ее использовать устройства, которым уже не хватает возможностей морально устаревшей шины PCI:

сетевые контроллеры Gigabit Ethernet;

RAID-контроллеры массивов жёстких дисков;

карты для кодирования HDTV-потока в реальном времени;

имеются сведения, что с помощью PCI-Express шины можно будет установить связь между южным и северным мостами чипсета.

Тайваньская компания Pro link объявила о выпуске популярного бытового устройства – "первого в мире" ТВ-тюнера PixelView® PlayTV PCX600 для шины PCI-Express, поддерживающего одновременный показ двух каналов, с поддержкой NTSC, PAL, SECAM вместе со всеми субформатами, а также видео и стерео-аудиовходами в композитном и S-Video форматах плюс оптический вход S/PDIF. Количество устройств с поддержкой шины PCI-Express будет только расти.

SCSI интерфейс малых компьютерных систем

История интерфейса SCSI (Small Computer System Interface) для малой компьютерной системы начинается в 80-х годах, когда появились его первые варианты на базе системного интерфейса Sugart Associates (Sugart Associates System Interface, SASI). Целью его разработки было создание интеллектуальной, независимой от устройства шины для подключения периферии к ПК и рабочим станциям.

В те времена основным периферийным устройством для мини-компьютеров был жесткий диск, поэтому SCSI пришлось испытать жесткую конкуренцию с более распространенной технологией для дисков со сходными возможностями под названием «усовершенствованная архитектура небольших устройств» (Enhanced Small Device Architecture, ESDI). Однако достигнутое в следующем поколении, SCSI-2, повышение производительности позволило ему одержать победу в конкурентной борьбе c ESDI.

В связи с активным развитием компьютерных технологий и приложений у SCSI появились новые соперники. Как известно (закон Мура), скорость доступа к диску удваивается каждые два года, а это требует соответствующего увеличения скорости шины, к тому же для нормального обслуживания подключенных устройств она должна быть приблизительно в четыре раза выше, чем у диска. Это привело к усовершенствованию интерфейса и появлению многочисленных его разновидностей — Fast, Wide, Ultra, Ultra2 и их комбинаций. Но и их возможностей уже становится недостаточно для некоторых приложений, поэтому отвечающий за разработку стандарта комитет T10 приступил к выработке радикально новой спецификации SCSI-3.

SCSI-1. Стандарт на SCSI (SCSI-2 еще не было, поэтому цифра «1» не добавлялась) был принят Американским национальным институтом стандартов ANSI (American National Standard Institute) в 1986 году. Он определял два режима передачи — асинхронный и синхронный — и позволял иметь до 8 устройств на одной шине общей протяженностью 6 м с параллельной передачей данных. Каждое из устройств могло адресовать до 8 подсистем — так называемых логических единиц (Logical Unit, LU).

SCSI-1 имел максимальную скорость передачи в 5 Мбайт/с в синхронном режиме, однако реальная пропускная способность была намного ниже из-за накладных расходов со стороны самого устройства SCSI, главного адаптера шины, оборудования хоста, драйвера ввода/вывода и операционной системы. Кроме того, собственно передача данных занимала лишь часть времени при выполнении команды, а передача команд осуществлялась в асинхронном режиме. В результате влияния всех факторов общие накладные расходы могли достигать 90%. К тому же практически все ранние реализации использовали асинхронный режим, для которого пиковая скорость равнялась 1, в лучшем случае 2 Мбайт/с.

Устройства подключались в цепочку друг за другом. Первое устройство подключалось к интерфейсу SCSI на главном компьютере, второе — к первому и т. д. Первое и последнее устройства в цепочке должны были быть терминированы. На всех остальных устройствах терминирование необходимо было отключить. Устройства идентифицировались посредством задаваемого с помощью перемычек (jumper) или переключателей ID (от 0 до 7), при этом адаптеру шины на хосте присваивался, как правило, ID=7 как дающий наивысший приоритет при доступе к шине.

 

Стандарт не обязывал использовать какой-то определенный тип соединителей (коннекторов), а лишь описывал назначение контактов. Наибольшее распространение получили соединители D-Ribbon типа Centronics для ПК, а также DB-25 для Macintosh. Терминирование было преимущественно пассивное, активное же или регулируемое терминирование применялось лишь отдельными производителями.

К сожалению, первоначальный стандарт оказался недостаточно детальным и допускал различную трактовку со стороны производителей. Это привело к проблемам совместимости между различными реализациями. Появившийся практически одновременно со стандартом общий набор команд (Common Standard Set, CCS) был призван ликвидировать неоднозначности в трактовке, но все же он опоздал с появлением и вошел уже в SCSI-2.

Арбитраж шины и обмен данными между устройствами происходит по следующему алгоритму:

Адаптер шины на ПК проверяет статус шины — «занята» или «свободна».

Если шина свободна, то ПК передает по информационным линиям (data lines) свой идентификационный код. (При арбитраже шины каждое устройство передает бит по соответствующей его идентификатору линии, отсюда ограничение на число подключаемых устройств — оно не может превышать ширину шины; в случае SCSI-1 это восемь битов.)

Если одновременно с ПК еще какое-либо устройство стремится получить контроль над шиной, то приоритет получает устройство с наибольшим идентификатором. (В случае, если ширина шины больше 8 битов, в частности 16, как в SCSI-2, то устройства с идентификаторами от 0 до 7 имеют более высокий приоритет, чем устройства с номерами от 8 до 15. Это сделано для того, чтобы 8-битные устройства можно было подключать к широкой шине.) Таким образом, механизм арбитража не обеспечивает «честного» доступа к шине и не позволяет предотвратить занятие шины одним устройством.

Поэтому адаптеру SCSI на главном ПК присваивается ID=7, чтобы хост всегда мог получить контроль над шиной, когда это ему необходимо; а периферийным устройствам идентификаторы присваиваются, начиная с нуля, при этом более медленным устройствам, таким, как ленточные накопители, рекомендуется предоставлять более высокий приоритет, нежели более быстрым устройствам, например жестким дискам, чтобы последние не захватывали шину.

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

Выбранное устройство берет на себя контроль за обменом данными до его завершения:

1)для начала оно запрашивает у инициатора, какую команду следует выполнить;

2) в ответ ПК просит прочитать логические блоки в указанном интервале.

Хост ничего не знает и не обязан знать о физической организации диска — числе поверхностей, цилиндров и секторов. С помощью SCSI-команды для дисков Read Capacity («Узнать емкость») он может запросить диск об его емкости, выраженной в количестве логических блоков, и о размере блока, например 512 байтов на блок.

Диск подтверждает получение команды и преобразует номера логических блоков в номера секторов, находит и считывает эти сектора, осуществляет исправление ошибок и передает данные байт за байтом, при этом в случае асинхронной передачи он ожидает подтверждения приема каждого байта, в результате, как уже упоминалось, реальная скорость обмена данными для SCSI-1 не превышает 2 Мбайт/с. При синхронной же передаче стороны обмениваются данными с заранее заданной скоростью, например 3,33; 4 или 5 Мбит/с, при этом вовсе не обязательно, чтобы все устройства на шине могли осуществлять синхронную передачу — достаточно, чтобы она поддерживалась двумя взаимодействующими устройствами.

После завершения передачи диск просит сообщить о статусе. Если все нормально и данные не надо передавать повторно, то диск отправляет сообщение о завершении выполнения команды. Таким образом, шина может находиться в одном из следующих состояний (фаз):

BUS FREE (шина свободна).

SELECTION (выбор).

COMMAND (передача команд).

DATA (передача данных).

STATUS (передача статуса).

MESSAGE (передача сообщения).

ARBITRATION (арбитраж).

RESELECTION (повторный выбор).

Группа состояний с COMMAND по MESSAGE соответствует процедуре передачи информации. Арбитраж и повторный выбор осуществляются только в случае конкуренции за шину одновременно нескольких устройств.

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

SCSI же способен выполнять высокоуровневые команды, например запрашивать тип подключенного к шине устройства с помощью команды Inquiry. Таким образом, помимо спецификации физических характеристик шины (тип соединителя, уровни напряжения, назначение контактов и т. д.) стандарт для каждого типа периферии (жесткий диск, CD-ROM и т. д.) определяет поддерживаемые команды и соответствующие им ответы (порядка 12 для каждого вида периферии). Стандартные команды SCSI-1 сгруппированы в группы команд в соответствии с шестью типами поддерживаемых устройств:

Тип устройства

Название

Типичная функция

1

Случайный доступ для чтения/записи (жесткий диск)

Адреса логических блоков, и длина записываемого

2

Последовательный доступ (ленточный накопитель)

Чтение следующей записи

3

Принтер

Контроль компоновки страницы

4

Процессор

Отправка и прием

5

WORM (записывающий CD-ROM)

Большой размер, съемный

6

Случайный доступ только для чтения

Адреса логических блоков, длина считываемого блока

При запросе целевым устройством команды, как в примере с обращением ПК к диску, инициатор отвечает отправкой 6 байтов командной информации. Эти байты служат для задания команды и идентификации устройства. Все вместе они называются блоком описания команды (Command Descriptor Block, CDB). Первый байт (точнее, байт за номером 0) определяет тип команды или операционный код (opcode). Некоторые наиболее распространенные коды имеют следующие значения (в шестнадцатеричном представлении):

00               тестовое устройство готово;

03               форматирование;

08               чтение;

0А               запись;

0B               поиск.

Значение оставшихся байтов зависит от конкретного операционного кода. Например, в случае команды Write (код 0A) они имеют следующий смысл:

байт 0        операционный код 0А;

байт 1        номер логического устройства в битах 5 и 6,

биты с 1 по 4 задают адрес логического блока;

байт 2        адрес логического блока;

байт 3        адрес логического блока;

байт 4        биты со 2 по 5 задают длину передачи;

байт 5        бит 1 — флаг; биты 6 и 7 назначаются производителем.

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

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

Терминирование бывает двух типов: пассивное и активное. При пассивном терминировании нагрузочное сопротивление на 220 Ом подключается к источнику мощностью 4,25-5,25 В (так называемому «оконечному питанию»), а сопротивление на 330 Ом — к земле. Поэтому любые колебания напряжения в источнике оконечного питания приводят к флуктуациям напряжения на сигнальных линиях. Иногда это может привести к ошибкам при передаче данных.

При активном терминировании сопротивление на 110 Ом на каждой сигнальной линии подключается к регулятору напряжения с выходным напряжением 2,85 В (входное напряжение регулятор получает от источника оконечного питания). Благодаря тому, что напряжение поддерживается на постоянном уровне, активное терминирование менее подвержено флуктуациям и шумам.

По способу реализации терминирование может быть внутренним или внешним. При внутреннем терминировании оно блокируется или активизируется электронным образом с помощью перемычек или переключателей. При внешнем терминировании терминирующий блок вставляется в свободный разъем SCSI. Он обычно представляет собой однорядный блок резисторов (Single In-Line Package, SIP).

Во многих современных устройствах терминирование включается автоматически, если прибор оказывается крайним в цепочке.

Для обеспечения нечувствительности к помехам внешние кабели SCSI не только используют витые пары, но и организованы в виде трех концентрических слоев. Центральный (внутренний) слой содержит три пары: Request («Запрос»), Acknowledge («Подтверждение») и Ground («Земля»). Средний (промежуточный) слой служит для передачи управляющих сигналов. Третий (внешний) слой предназначен для передачи данных и информации о четности. В среднем слое пары скручены в противоположном направлении по сравнению с прилежащими к нему внешним и внутренним слоями для уменьшения емкостной связи между слоями. Размещение жил для передачи управляющих сигналов в среднем слое обеспечивает отсутствие интерференции между данными и сигналами Request/Acknowledge.

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

 

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

разъемы других стандартов



загрузка...