Содержание | Шины


Шины персональных компьютеров



Компоненты внутри РС взаимодействуют друг с другом различными способами. Большинство внутренних компонентов, включая процессор, кэш, память, карты расширения и запоминающие устройства взаимодействуют друг с другом с помощью одной или нескольких шин (buses).


Шина в компьютерах представляет собой канал, по которому передается информация между двумя или несколькими устройствами (обычно шина, соединяющая только два устройства, называется портом - port). Шина обычно имеет точки доступа, или места, к которым может подключиться устройство для превращения себя в часть шины, а устройства на шине могут посылать информацию другим устройствам и принимать информацию от других устройств. Понятие шины является довольно общим как для "внутренности" РС, так и для внешнего мира. Например, телефонное соединение в доме можно считать шиной: информация передается по проводникам в доме и можно подключиться к "шине", установив телефонную розетку, подключив к ней телефон и подняв трубку телефона. Все телефоны на шине могут разделять (share) информацию, т.е. речь.

Этот материал посвящен шинам современных РС. Вначале обсуждаются шины и их характеристики, а затем подробно рассматриваются наиболее распространенные в мире РС шины ввода-вывода (Input/Output bus), называемые также шинами расширения (expansion buses).

Функции и характеристики шин


Шины РС являются основными "трактами" данных на материнской плате. Главной из них является системная шина (system bus), которая соединяет процессор и основную память RAM. Раньше эта шина называлась локальной, а в современных РС называется передней шиной (Front Side Bus - FSB). Характеристики системной шины определяются процессором; современная системная шина имеет ширину 64 бита и работает на частоте 66, 100 или 133 МГц. Сигналы такой высокой частоты создают электрические помехи и ставят другие проблемы. Следовательно, частоту необходимо снизить, чтобы данные достигали карт расширения (expansion card), или адаптеров (adapters), и других более удаленных компонентов.


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

В 1987 г. разработчики компании Compaq решили отделить системную шину от шины ввода-вывода с тем, чтобы они могли работать с различной скоростью. С тех пор такая многошинная архитектура стала промышленным стандартом. Более того, современные РС имеют несколько шин ввода-вывода.

Иерархия шин




В РС имеется иерархическая организация различных шин. Большинство современных РС имеет, как минимум, четыре шины. Иерархия шин объясняется тем, что каждая шина все больше отдаляется от процессора; каждая шина подключается к находящемуся выше ее уровню, объединяя различные компоненты РС. Каждая шина обычно медленнее шины, находящейся выше ее (по очевидной причине - процессор является наиболее быстрым устройством в РС):

  • Шина внутреннего кэша: Это самая быстрая шина, которая соединяет процессор и внутренний L1-кэш.
  • Системная шина: Это системная шина второго уровня, которая соединяет подсистему памяти с чипсетом и процессором. В некоторых системах шины процессора и памяти представляют собой одно и то же. Эта шина до 1998 г. работала со скоростью (частотой синхронизации) 66 МГц, а затем она была повышена до 100 МГц и даже 133 МГц. В процессорах Pentium II и выше реализована архитектура с двойной независимой шиной (Dual Independent Bus - DIB) - единственная системная шина заменена на две независимые шины. Одна из них предназначена для доступа к основной памяти и называется передней шиной (frontside bus), а вторая - для доступа к L2-кэшу и называется задней шиной (backside bus). Наличие двух шин повышает производительность РС, так как процессор может одновременно получать данные с обеих шин. В материнских платах и чипсетах пятого поколения L2-кэш подключен к стандартной шине памяти. Отметим, что системную шину называют также основной шиной (main bus), шиной процессора (processor bus), шиной памяти (memory bus) и даже локальной шиной (local bus).
  • Локальная шина ввода-вывода: Эта быстродействующая шина ввода-вывода используется для подключения быстрых периферийных устройств к памяти, чипсету и процессору. Такую шину используют видеокарты, дисковые накопители и сетевые интерфейсы. Наиболее распространенными локальными шинами ввода-вывода являются VESA Local Bus (VLB) и шина Peripheral Component Interconnect (PCI).
  • Стандартная шина ввода-вывода: К рассмотренным трем шинам подключается "заслуженная" стандартная шина ввода-вывода, которая применяется для медленных периферийных устройств (мышь, модем, звуковые карты и др.), а также для совместимости со старыми устройствами. Почти во всех современных РС такой шиной является шина ISA (Industry Standard Architecture - стандартная промышленная архитектура).
  • Универсальная последовательная шина (Universal Serial Bus - USB), позволяющая подключать до 127 медленных периферийных устройств с использованием хаба (hub) или шлейфного соединения (daisy-chaining) устройств.
  • Скоростная последовательная шина IEEE 1394 (FireWire), предназначенная для подключения к РС цифровых камер, принтеров, телевизоров и других устройств, требующих исключительно высокой пропускной способности.

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

В новых РС есть дополнительная "шина", которая специально предназначена только для графического взаимодействия. Фактически это не шина, а порт - ускоренный графический порт (Accelerated Graphics Port - AGP). Различие между шиной и портом заключается в том, что шина обычно рассчитана на разделение носителя несколькими устройствами, а порт предназначен только для двух устройств.


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

Шины адреса и данных


Каждая шина состоит из двух разных частей: шина данных (data bus) и шина адреса (address bus). Говоря о шине, большинство людей понимает именно шину данных; по линиям этой шины передаются собственно данные. Шина адреса представляет собой набор линий, сигналы на которых определяют, куда передавать или откуда принимать данные.

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

Ширина шины


Шина - это канал, по которому "течет" информация. Чем шире шина, тем больше информации может "течь" по каналу. Первая шина ISA в IBM PC имела ширину 8 битов; используемая сейчас универсальная шина ISA имеет ширину 16. Другие шины ввода-вывода, включая VLB и PCI, имеют ширину 32 бита. Ширина системной шины в РС с процессорами Pentium составляет 64 бита.

Ширину шины адреса можно определять независимо от ширины шины данных. Ширина шины адреса показывает, сколько ячеек памяти можно адресовать при передаче данных. В современных РС ширина шины адреса составляет 36 битов, что обеспечивает адресацию памяти емкостью 64 ГБ.

Скорость (быстродействие) шины


Скорость шины (bus speed) показывает, сколько битов информации можно передавать по каждому проводнику шины в секунду. Большинство шин передают по одному проводнику один бит в такте синхронизации, хотя новые шины, например AGP, могут передавать два бита данных в такте синхронизации, что удваивает производительность. В старой шине ISA для передачи одного бита требуются два такта синхронизации, что снижает производительность вдвое.

Ширина полосы пропускания шины


Шина

Ширина (битов)

Скорость (МГц)

Пропускная способность (МБ/с)

8-битовая ISA

8

8.3

7.9

16-битовая ISA

16

8.3

15.9

EISA

32

8.3

31.8

VLB

32

33

127.2

PCI

32

33

127.2

64-битовая PCI 2.1

64

66

508.6

AGP

32

66

254.3

AGP (режим x2)

32

66x2

508.6

AGP (режим x4)

32

66x4

1017.3


Ширина полосы пропускания (bandwidth) называется также пропускной способностью (throughput) и показывает общий объем данных, который можно передать по шине за данную единицу времени. В таблице приведены теоретические пропускные способности современных шин ввода-вывода. Фактически шины не достигают теоретического показателя из-за служебных потерь на выполнение команд и других факторов. Большинство шин может работать с различной скоростью; в следующей таблице приведены наиболее типичные значения.

Сделаем замечание относительно четырех последних строк. Теоретически шину PCI можно расширить до 64 битов и скорости 66 МГц. Однако по причинам совместимости почти все шины PCI и устройства на шине рассчитаны только на 33 МГц и 32 бита. AGP опирается на теоретический стандарт и работает на 66 МГц, но сохраняет ширину 32 бита. AGP имеет дополнительные режимы x2 и x4, которые позволяют порту выполнять передачи данных два или четыре раза в такте синхронизации, что увеличивает эффективную скорость шины до 133 или 266 МГц.

Интерфейс шин


В системе с несколькими шинами чипсет должен обеспечить схемы для объединения шин и взаимодействия устройства на одной шине с устройством на другой шине. Такие схемы называются мостом (bridge) (отметим, что мостом называется также сетевое устройство для соединения двух разнотипных сетей). Наиболее распространен мост PCI-ISA, который является компонентом системного чипсета для РС с процессорами Pentium. Шина PCI также имеет мост к системной шине.

Мастеринг шины



В шинах с большой пропускной способностью каждую секунду по каналу передается огромный объем информации. Обычно для управления этими передачами требуется процессор. Фактически процессор действует как "посредник" и, как это часто бывает в реальном мире, намного эффективнее убрать посредника и прямо выполнять передачи. Для этого разработаны устройства, которые могут управлять шиной и действовать самостоятельно, т.е. передавать данные непосредственно в системную память RAM; такие устройства называются ведущими шины (bus masters). Теоретически процессор одновременно с передачами данных по шине может выполнять и другую работу; на практике ситуация усложняется несколькими факторами. Для правильной реализации мастеринга шины (bus mastering) необходим арбитраж запросов шины, который обеспечивается чипсетом. Мастеринг шины называется также "first party" DMA, так как работой управляет устройство, выполняющее передачу.

Сейчас мастеринг шины реализован на шине PCI; добавлена также поддержка для жестких дисков IDE/ATA реализации мастеринга шины на PCI при определенных условиях.

Принцип локальной шины


Начало 90-х годов характеризуется переходом от текстовых приложений к графическим и ростом популярности операционной системы Windows. А это привело к огромному увеличению объема информации, который должен передаваться между процессором, памятью, видео и жесткими дисками. Стандартный экран монохроматического (черно-белого) текста содержит всего 4000 байтов информации (2000 для кодов символов и 2000 для экранных атрибутов), а стандартный 256-цветный экран Windows требует более 300 000 байтов! Более того, современная разрешающая способность 1600x1200 при 16 млн цветов требует 5.8 млн байтов информации на экран!

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

Решение было найдено в разработке новой более быстрой шины, которая должна была дополнить шину ISA и применяться специально для таких быстродействующих устройств как видеокарты. Эта шина должна была размещаться на (или вблизи) намного более быстрой шины памяти и работать примерно с внешней скоростью процессора, чтобы передавать данные намного быстрее стандартной шины ISA. При размещении таких устройств вблизи ("локально") процессора появилась локальная шина. Первой локальной шиной была VESA Local Bus (VLB), а современной локальной шиной в большинстве РС является шина Peripheral Component Interconnect (PCI).

Системная шина


Системная шина (system bus) соединяет процессор с основной памятью RAM и, возможно, с L2-кэшем. Она является центральной шиной компьютера и остальные шины "ответвляются" от нее. Системная шина реализована как набор проводников на материнской плате и должна соответствовать конкретному типу процессора. Именно процессор определяет характеристики системной шины. Вместе с тем, чем быстрее системная шина, тем быстрее должны быть остальные электронные компоненты РС.

Старые ЦП Ширина шиныСкорость шины
80888 битов4.77 МГц
808616 битов8 МГц
80286-1216 битов12 МГц
80386SX-1616 битов16 МГц
80386DX-2532 бита25 МГц

Рассмотрим системные шины РС с процессорами нескольких поколений. В процессорах первого, второго и третьего поколений частота системной шины определялась рабочей частотой процессора. По мере повышения скорости процессора увеличивалась и скорость системной шины. Одновременно увеличивалось и адресное пространство: в процессорах 8088/8086 оно составляло 1 МБ (20-битовый адрес), в процессоре 80286 адресное пространство увеличено до 16 МБ (24-битовый адрес), а начиная с процессора 80386 адресное пространство составляет 4 ГБ (32-битовый адрес).

Семейство 80486Ширина шиныСкорость шины
80486SX-2532 бита25 МГц
80486DX-3332 бита33 МГц
80486DX2-5032 бита25 МГц
80486DX-5032 бита50 МГц
80486DX2-6632 бита33 МГц
80486DX4-10032 бита40 МГц
5X86-13332 бита33 МГц

Как видно из таблицы для процессоров четвертого поколения, скорость системной шины вначале соответствовала рабочей частоте процессора. Однако технологические достижения позволяли повышать частоту процессора, а соответствие скорости системной шины требовало повышения быстродействия внешних компонентов, в основном, системной памяти, что было сопряжено со значительными трудностями и стоимостными ограничениями. Поэтому в процессоре 80486DX2-50 было впервые использовано удвоение частоты (clock doubling): процессор работал с внутренней частотой синхронизации 50 МГц, а внешняя скорость системной шины составляла 25 МГц, т.е. только половину рабочей частоты процессора. Этот прием значительно повышает производительность компьютера, особенно благодаря наличию внутреннего L1-кэша, который удовлетворяет большинство обращений процессора к системной памяти. С тех пор умножение частоты (clock multiplying) стало стандартным способом повышения производительности компьютера и применяется во всех современных процессорах, причем множитель частоты доведен до 8, 10 и более.

Семейство PentiumШирина шиныСкорость шины
Intel P6064 бита60 Мгц
Intel P10064 бита66 МГц
Cyrix 6X86 P133+64 бита55 МГц
AMD K5-13364 бита66 МГц
Intel P15064 бита60 Мгц
Intel P16664 бита66 МГц
Cyrix 6X86 P166+64 бита66 МГц
Pentium Pro 20064 бита66 МГц
Cyrix 6X86 P200+64 бита75 МГц
Pentium II64 бита66 Мгц

Продолжительное время системные шины РС с процессорами пятого поколения работали со скоростью 60 МГц и 66 МГц. Значительным шагом вперед стало увеличение ширины данных до 64 битов и расширение адресного пространства до 64 ГБ (36-битовый адрес).

Скорость системной шины была повышена до 100 МГц в 1998 г. благодаря освоению производства микросхем PC100 SDRAM. Микросхемы памяти RDRAM позволяют еще более повысить скорость системной шины. Однако переход от 66 МГц к 100 МГц оказал значительное влияние на процессоры и материнские платы с Socket 7. В модулях Pentium II до 70-80% трафика (передач информации) осуществляется внутри нового картриджа SEC (Single Edge Cartridge), в котором находятся процессор и оба кэша L1-кэш и L2-кэш. Этот картридж работает со своей скоростью, независящей от скорости системной шины.

ПроцессорЧипсетСкорость
шины
Скорость ЦП
Intel Pentium II82440BX
82440GX
100 МГц 350,400,450 МГц
AMD K6-2Via MVP3,
ALi Aladdin V
100 МГц 250,300,400 МГц
Intel Pentium II Xeon82450NX100 МГц450,500 МГц
Intel Pentium IIIi815
i820
133 МГц600,667+ МГц
AMD AthlonVIA KT133200 МГц600 - 1000 МГц

Чипсеты i820 и i815, разработанные для процессора Pentium III, рассчитаны на системную шину 133 МГц. Наконец, в процессоре AMD Athlon введены значительные изменения в архитектуру и понятие системной шины оказалось ненужным. Этот процессор может работать с различными типами RAM на максимальной частоте 200 МГц.

Типы шин ввода-вывода


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


В следующей таблице приведены суммарные сведения о различных шинах ввода-вывода, которые применяются в современных РС:

ШинаГодШиринаСкорость Макс. пропускная
способность
PC и XT1980-828 битовСинхронная: 4.77-6 МГц 4-6 МБ/с
ISA (AT)198416 битовСинхронная: 8-10 МГц 8 МБ/с
MCA198732 битаАсинхронная: 10.33 МГц 40 МБ/с
EISA (для серверов)198832 битаСинхронная: макс. 8 МГц32 МБ/с
VLB, для 486199332 битаСинхронная: 33-50 МГц 100-160 МБ/с
PCI199332/64 битаАсинхронная: 33 МГц 132 МБ/с
USB1996Последовательная  1.2 МБ/с
FireWire (IEEE1394)1999Последовательная  80 МБ/с
USB 2.02001Последовательная 12-40 МБ/с

Старые шины


Новые современные шина PCI и порт AGP "родились" из старых шин, которые до сих пор можно встретить в РС. Более того, самая старая шина ISA до сих пор используется даже в новейших РС. Далее мы рассмотрим несколько подробнее старые шины РС.

Шина Industry Standard Architecture (ISA)


Это самая распространенная и действительно стандартная шина для РС, которая используется даже в новейших компьютерах несмотря на то, что практически не изменилась с момента своего расширения до 16 битов в 1984 г. Конечно, сейчас она дополнена более быстрыми шинами, но "выживает" благодаря наличию огромной базы периферийного оборудования, рассчитанного на этот стандарт. Кроме того, имеется много устройств, для которых скорости ISA более чем достаточно, например для модемов. По мнению некоторых экспертов до "умирания" шины ISA пройдет не менее 5-6 лет.

Выбор ширины и скорости шины ISA определился процессорами, с которыми она работала в первых РС. Оригинальная шина ISA в IBM PC имела ширину 8 битов, соответствуя 8 битам внешней шины данных процессора 8088, и работала на частоте 4.77 МГц, что также соответствует скорости процессора 8088. В 1984 г. появился компьютер IBM AT с процессором 80286 и ширина шины была удвоена до 16 битов, как у внешней шины данных процессора 80286. Одновременно была повышена до 8 МГц скорость шины, что также соответствовало скорости процессора. Теоретически пропускная способность шины составляет 8 МБ/с, но практически она не превышает 1-2 МБ/с.

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


Впоследствии процессоры AT стали быстрее, а затем была увеличена и их шина данных, но теперь требование совместимости с существующими устройствами заставило производителей придерживаться стандарта и шина ISA с того времени практически не изменилась. Шина ISA обеспечивает достаточную пропускную способность для медленных устройств и наверняка гарантирует совместимость почти с каждым выпущенным РС.

Многие карты расширения, даже современные, до сих пор являются 8-битовыми (об этом можно узнать по разъему карты - 8-битовые карты используют только первую часть разъема ISA, а 16-битовые карты используют обе части). Для этих карт невысокая пропускная способность шины ISA не играет роли. Однако доступ к прерываниям от IRQ 9 до IRQ 15 обеспечивается через проводники в 16-битовой части разъемов шины. Именно поэтому большинство модемов нельзя подключить к IRQ с большими номерами. Линии IRQ между устройствами ISA нельзя разделять.

Документ The PC99 System Design Guide, подготовленный компаниями Intel и Microsoft, категорически требует удаления слотов шины ISA с материнских плат, поэтому можно ожидать, что дни этой "заслуженной" шины сочтены.

Шина MicroChannel Architecture (MCA)


Эта шина стала попыткой компании IBM сделать шину ISA "больше и лучше". При появлении в середине 80-х годов процессора 80386DX с 32-битовой шиной данных компания IBM решила разработать шину, соответствующую такой ширине шины данных. Шина MCA имела ширину 32 бита и имела несколько преимуществ по сравнению с шиной ISA.

Шина MCA имела несколько прекрасных возможностей с учетом того, что она появилась в 1987 г., т.е. за семь лет до появления шины PCI с аналогичными возможностями. В некоторых отношениях шина МСА просто опередила свое время:

  • Ширина 32 бита: Шина имела ширину 32 бита, как и локальные шины VESA и PCI. Ее пропускная способность была намного выше по сравнению с шиной ISA.
  • Мастеринг шины: Шина MCA эффективно поддерживала адаптеры с мастерингом шины, включая правильный арбитраж шины.
  • Технология Plug and Play (PnP): Шина MCA автоматически конфигурировала карты адаптеров, поэтому перемычки стали ненужными. Это произошло за 8 лет до того, как Windows 95 превратила технологию PnP в общепринятую для РС.

Шина MCA имела огромные потенциальные возможности. К сожалению, компания IBM приняла два таких решения, которые не способствовали распространению этой шины. Во-первых, шина МСА была несовместимой с шиной ISA, т.е. карты ISA вообще не работали в РС с шиной МСА, а компьютерный рынок очень чувствителен к проблеме обратной совместимости. Во-вторых, компания IBM решила сделать шину МСА своей собственностью, не продавая лицензию на ее применение.

Эти два фактора совместно с более высокой стоимостью систем с шиной МСА привели к забвению шины МСА. Поскольку компьютеры PS/2 больше не выпускаются, шина МСА "умерла" для рынка РС, хотя компания IBM до сих пор использует ее в своих серверах RISC 6000 UNIX. История с шиной МСА является одним из классических примеров того, как в мире компьютеров нетехнические вопросы часто доминируют над техническими.

Шина Extended Industry Standard Architecture (EISA)


Эта шина никогда не стала таким стандартом, каким является шина ISA, и не получила широкого распространения. Фактически она была ответом компании Compaq на шину МСА и привела к аналогичным результатам.

Компания Compaq при разработке шины EISA избежала двух важнейших ошибок компании IBM. Во-первых, шина EISA была совместимой с шиной ISA и, во-вторых, было разрешено использовать ее всем производителям РС. В общем, шина EISA имела значительные технические преимущества над шиной ISA, но рынок ее не воспринял. Основные особенности шины EISA:

  • Совместимость с шиной ISA: Карты ISA могли работать в слотах EISA.
  • Ширина шины 32 бита: Ширина шины увеличена до 32 битов.
  • Мастеринг шины: Шина EISA эффективно поддерживала адаптеры с мастерингом шины, включая правильный арбитраж шины.
  • Технология Plug and Play (PnP): Шина EISA автоматически конфигурировала карты адаптеров аналогично стандарту PnP современных систем.

Системы на базе EISA сейчас иногда встречаются в сетевых файловых серверах, а в настольных РС она не применяется из-за более высокой стоимости и отсутствию широкого выбора адаптеров. Наконец, пропускная способность ее значительно уступает локальным шинам VESA Local Bus и PCI. Практически шина сейчас EISA близка к "умиранию".

Шина VESA Local Bus (VLB)


Первая довольно популярная локальная шина VESA Local Bus (VL-Bus или VLB) появилась в 1992 г. Аббревиатура VESA означает Video Electronics Standards Association, а эта ассоциация была создана в конце 80-х годов для решения проблем видеосистем в РС. Основной причиной разработки шины VLB было улучшение производительности видеосистем РС.

Шина VLB представляет собой 32-битовую шину, которая является прямым расширением шины памяти процессора 486. Слот шины VLB - это 16-битовый слот ISA с добавленными в конце третьим и четвертым разъемами. Шина VLB обычно работает на частоте 33 МГц, хотя в некоторых системах возможна и большая скорость. Поскольку она является расширением шины ISA, карту ISA можно использовать в слоте VLB, но имеет смысл вначале занять обычные слоты ISA и оставить небольшое число слотов VLB для карт VLB, которые, конечно, не работают в слотах ISA. Применение видеокарты VLB и контроллера ввода-вывода значительно повышает производительность системы по сравнению с системой, имеющей только одну шину ISA.

Несмотря на то, что шина VLB была очень популярна в РС с процессором 486, появление в 1994 г. процессора Pentium и его локальной шины PCI привело к к постепенному "забвению" шины VLB. Одной из причин этого стали усилия фирмы Intel по продвижению шины PCI, но было и несколько технических проблем, связанных с реализацией VLB. Во-первых, конструкция шины очень сильно "привязана" к процессору 486, а переход к Pentium вызвал проблемы совместимости и другие проблемы. Во-вторых, сама шина имела технические недостатки: небольшое число карт на шине (часто две или даже одна), проблемы синхронизации при использовании нескольких карт и отсутствие поддержки мастеринга шины и технологии Plug and Play.

Сейчас шина VLB считается устаревшей и даже в последних материнских платах с процессором 486 используется шина PCI, а с процессорами Pentium - только PCI. Однако РС с шиной VLB недороги и их иногда можно еще встретить.

Шина Peripheral Component Interconnect (PCI)


Наиболее популярная сейчас шина ввода-вывода взаимодействия периферийных компонентов (Peripheral Component Interconnect - PCI) разработана фирмой Intel в 1993 г. Она ориентировалась на системы пятого и шестого поколений, но применялась и в последнем поколении материнских плат с процессором 486.


Как и шина VESA Local Bus, шина PCI имеет ширину 32 бита и обычно работает на частоте 33 МГц. Главное преимущество PCI над шиной VESA Local Bus кроется в чипсете, который управляет шиной. Шиной PCI управляют специальные схемы в чипсете, а шина VLB была, в основном, просто расширением шины процессора 486. Шина PCI в этом отношении не "привязана" к процессору 486 и ее чипсет обеспечивает правильные управление шиной и арбитраж шины, позволяя PCI делать намного больше, чем могла шина VLB. Шина PCI также применяется и вне платформы РС, обеспечивая универсальность и сокращая стоимость разработки систем.


В современных РС шина PCI действует как внутренняя шина, которая подключается к каналом EIDE на материнской плате, и как внешняя шина расширения, которая имеет 3-4 слота расширения для PCI-адаптеров.

Шина PCI соединяется с системной шиной через специальный "мост" (bridge) и работает на фиксированной частоте независимо от частоты синхронизации процессора. Она ограничена пятью слотами расширения, но каждый из них можно заменить двумя устройствами, встроенными в материнскую плату. Процессор может также поддерживать несколько микросхем мостов. Шина PCI более строго специфицирована по сравнению с шиной VL-Bus и предоставляет несколько дополнительных возможностей. В частности, она поддерживает карты, имеющие напряжение питания +3.3 В и 5 В, с помощью специальных ключей, которые не позволяют вставить карту в неподходящий слот. Далее функционирование шины PCI рассмотрено более подробно.

Производительность шины PCI


Шина PCI фактически имеет наибольшую производительность среди общих шин ввода-вывода в современных РС. Это объясняется несколькими факторами:

  • Пакетный режим (burst mode): Шина PCI может передавать информацию в пакетном режиме, когда после начальной адресации можно подряд передавать несколько наборов данных. Этот режим похож на пакетизацию кэша (cache bursting).
  • Мастеринг шины: Шина PCI поддерживает полный мастеринг, что способствует повышению производительности.
  • Опции высокой полосы пропускания: Версия 2.1 спецификации шины PCI допускает расширение до 64 битов и 66 МГц, что повышает текущую производительность в четыре раза. На практике 64-битовая шина PCI пока в РС не реализована (хотя уже применяется в некоторых серверах) и скорость сейчас ограничена 33 МГц, в основном, из-за проблем совместимости. Некоторое время придется ограничиваться 32 битами и 33 МГц. Однако благодаря AGP в несколько измененной форме будет реализована и более высокая производительность.

Скорость шины PCI в зависимости от чипсета и материнской платы можно установить как синхронную или асинхронную. При синхронной настройке (используемой в большинстве РС) шина PCI работает с половинной скоростью шины памяти; поскольку шина памяти обычно работает на 50, 60 или 66 МГц, шина PCI работает на частоте 25, 30 или 33 МГц. При асинхронной настройке скорость шины PCI можно задавать независимо от скорости шины памяти. Этим обычно управляют с помощью перемычек на материнской плате или параметрами BIOS. "Разгон" (overclocking) системной шины в РС, который использует синхронную шину PCI, вызовет "разгон" и периферийных устройств PCI, часто вызывая проблемы неустойчивой работы системы.

В первоначальной реализации шина PCI работала на частоте 33 МГц, а последующая спецификация PCI 2.1 определила частоту 66 МГц, что соответствует пропускной способности 266 МБ/с. Шину PCI можно конфигурировать на ширину данных 32 и 64 бита и допускается применять 32- и 64-битовые карты, а также разделять прерывания, что удобно в высокопроизводительных системах, в которых не хватает линий IRQ. С середины 1995 г. все скоростные устройства РС взаимодействуют друг с другом по шине PCI. Чаще всего она применяется для контроллеров жестких дисков и графических контроллеров, которые монтируются непосредственно на материнской плате или на картах расширения в слотах шины PCI.

Слоты расширения шины PCI



Шина PCI допускает больше слотов расширения, чем шина VLB, не вызывая технических проблем. Большинство систем с PCI поддерживают 3 или 4 слота PCI, а некоторые и значительно больше.

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

Шина PCI допускает большее разнообразие карт расширения по сравнению с шиной VLB. Чаще всего встречаются видеокарты, хост-адаптеры SCSI и скоростные сетевые карты. (Жесткие диски также работают на шине PCI, но они обычно подключаются непосредственно к материнской плате.) Однако отметим, что шина PCI не реализует некоторые функции, например последовательные и параллельные порты должны оставаться на шине ISA. К счастью, даже сейчас шина ISA остается более чем достаточной для этих устройств.

Внутренние прерывания шины PCI


Шина PCI использует свою внутреннюю систему прерываний для обработки запросов от карт на шине. Эти прерывания часто называются "#A", "#B", "#C" и "#D", чтобы избежать путаницы с обычно пронумерованными системными IRQ, хотя иногда они называются также от "#1" до "#4". Эти уровни прерываний обычно невидимы пользователю за исключением экрана настройки BIOS для PCI, где их можно использовать для управления работой карт PCI.

Эти прерывания, если они требуются картам в слотах, отображаются на обычные прерывания, чаще всего на IRQ9 - IRQ12. Слоты PCI в большинстве систем можно отобразить на большинство четыре обычных IRQs. В системах, имеющих больше четырех слотов PCI или имеющих четыре слота и контроллер USB (который использует PCI), два или больше устройств PCI разделяют IRQ.

Мастеринг шины PCI


Напомним, что мастеринг шины (bus mastering) представляет собой способность устройств на шине PCI (отличающихся, конечно, от системного чипсета) брать на себя управление шиной и непосредственно выполнять передачи. Шина PCI стала первой шиной шиной, которая привела к популярности мастеринга шины (наверное, потому что операционная система и программы смогли использовать его преимущества).

Шина PCI поддерживает полный мастеринг шины и обеспечивает средства арбитража шины через системный чипсет. Конструкция PCI допускает одновременный мастеринг шины нескольких устройств, а схема арбитража гарантирует, что ни одно устройство на шине (включая процессор!) не заблокирует никакое другое устройство. Однако разрешается одному устройству использовать полную пропускную способность шины, если другие устройства ничего не передают. Другими словами, шина PCI действует как крохотная локальная сеть внутри компьютера, в которой несколько устройств могут взаимодействовать друг с другом, разделяя коммуникационный канал, и которой управляет чипсет.

Технология Plug and Play для шины PCI


Шина PCI является частью стандарта Plug and Play (PnP), разработанного компаниями Intel, Microsoft и многими другими. Системы с шиной PCI первыми популяризировали применение PnP. Схемы чипсета PCI управляют идентификацией карт и совместно с операционной системой и BIOS автоматически производят распределение ресурсов для совместимых карт.

Шина PCI постоянно совершенствуется и разработками руководит Группа PCI Special Interest Group, в которую входят компании Intel, IBM, Apple и др. Результатом этих разработок стало повышение частоты шины до 66 МГц и расширение данных до 64 битов. Однако создаются и альтернативные варианты, например ускоренный графический порт (AGP) и скоростная последовательная шина FireWire (IEEE 1394). Фактически AGP представляет собой шину PCI 66 МГц (версия 2.1), в которую введены некоторые усовершенствования, ориентированные на графические системы.

Еще одной инициативой является шина PCI-X, называемая также "Project One" и "Future I/O". Компании IBM, Mylex, 3Com, Adaptec, Hewlett-Packard и Compaq хотят разработать специальную высокоскоростную серверную версию шины PCI. Эта шина будет иметь пропускную способность 1 ГБ/с (64 бита, 133 МГц). Компании Intel и Dell Computer не участвуют в этом проекте.

Компании Dell Computer, Hitachi, NEC, Siemens, Sun Microsystems и Intel в ответ на Project One выступили с инициативой разработки шины Next-Generation I/O (NGIO), ориентированной на новую архитектуру ввода-вывода для серверов.

В августе 1999 г. семь лидирующих компаний (Compaq, Dell, Hewlett-Packard, IBM, Intel, Microsoft, Sun Microsystems) объявили о намерении объединить лучшие идеи шин Future I/O и Next Generation I/O. Новая открытая архитектура ввода-вывода для серверов должна обеспечить пропускную способность до 6 ГБ/с. Ожидается, что новый стандарт NGIO будет принят в конце 2001 г.

Ускоренный графический порт


Необходимость повышения полосы пропускания между процессором и видеосистемой вначале привела к разработке в РС локальной шины ввода-вывода, начиная с VESA Local Bus и кончая современной шиной PCI. Эта тенденция продолжается, причем требование повышенной полосы пропускания для видео уже не удовлетворяет даже шина PCI с ее стандартной пропускной способностью 132 МБ/с. Трехмерная графика (3D graphics) позволяет моделировать на экране виртуальные и реальные миры с мельчайшими деталями. Отображение текстур и скрывание объектов требуют огромных объемов данных и видеокарта должна иметь быстрый доступ к этим данным, чтобы поддержать высокую частоту регенерации.

Трафик на шине PCI становится очень напряженным в современных РС, когда видео, жесткие диски и другие периферийные устройства конкурируют между собой за единственную полосу пропускания ввода-вывода. Чтобы предотвратить насыщение шины PCI видеоинформацией, фирма Intel разработала новый интерфейс специально для видеосистемы, который называется ускоренный графический порт (Accelerated Graphics Port - AGP).


Порт AGP разработан в ответ на требование все большей производительности для видео. По мере использования программами и компьютерами таких областей, как трехмерная акселерация и воспроизведение видеофильмов (full-motion video playback), процессор и видео-чипсет должны обрабатывать все больше и больше информации. В таких приложения шина PCI достигла своего предела тем более, что ее используют еще и жесткие диски и другие периферийные устройства.

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

  • Стоимость: Видеопамять дороже обычной памяти RAM.
  • Ограниченная емкость: Емкость памяти на видеокарте ограничена: если разместить на карте 6 МБ и для буфера кадра требуется 4 МБ, то для обработки остается всего 2 МБ. Эту память расширить непросто и ее нельзя использовать для чего-то другого, если видеообработка не нужна.

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

Идея реализации AGP довольно проста: создать быстрый специализированный интерфейс между видео-чипсетом и системным процессором. Интерфейс реализуется только между этими двумя устройствами, что обеспечивает три основных преимущества: проще реализовать порт, проще повысить скорость AGP и можно ввести в интерфейс специфические для видео усовершенствования. AGP-чипсет действует как посредник между процессором, L2-кэшем Pentium II, системной памятью, видеокартой и шиной PCI, реализуя так называемый счетверенный порт (Quad Port).

AGP считается портом, а не шиной, так как он объединяет только два устройства (процессор и видеокарту) и не допускает расширения. Одно из главных достоинств AGP состоит в том, что он изолирует видеосистему от остальных компонентов РС, исключая конкуренцию за полосу пропускания. Поскольку видеокарта удаляется с шины PCI, остальные устройства могут работать быстрее. Для AGP на материнской плате предусмотрен специальный сокет, который похож на сокет шины PCI, но размещается в другом месте платы. На следующем рисунке сверху видны два сокета шины ISA (черные), затем два сокета шины PCI (белые) и сокет ADP (коричневый).


AGP появился в конце 1997 г. и первой его поддержал чипсет 440LX Pentium II. Уже в следующем году появились AGP-чипсеты других компаний. Подробнее об AGP см. сайт http://developer.intel.com/technology/agp/.

Интерфейс AGP


Интерфейс AGP во многих отношениях похож на шину PCI. Сам слот имеет такие же физические форму и размеры, но смещен от края материнской платы дальше, чем слоты PCI. Спецификация AGP фактически опирается на спецификацию PCI 2.1, которая допускает скорость 66 МГц, но эта скорость не реализована в РС. Материнские платы AGP имеют один слот расширения для видеокарты AGP и на один слот PCI меньше, а в остальном похожи на материнские платы PCI.

Ширина, скорость и полоса пропускания шины


Шина AGP имеет ширину 32 бита, как и шина PCI, но вместо работы с половинной скоростью шины памяти, как это делает PCI, она работает с полной скоростью. Например, на стандартной материнской плате Pentium II шина AGP работает на 66 МГц вместо 33 МГц шины PCI. Это сразу же удваивает полосу пропускания порта - вместо предела в 132 МБ/с для PCI порт AGP имеет в режиме наименьшей скорости полосу 264 МБ/с. Кроме того, он не разделяет полосу с другими устройствами шины PCI.

В дополнение к удвоению скорости шины в AGP определен режим 2X, в котором используются специальные сигналы, позволяющие передавать через порт вдвое больше данных при одной и той же частоте синхронизации. В этом режиме информация передается по нарастающему и спадающему фронтам сигнала синхронизации. Если шина PCI передает данные только по одному фронту, AGP передает данные по обоим фронтам. В результате производительность еще удваивается и теоретически доходит до 528 МБ/с. Планируется также реализовать режим 4X, в котором в каждом такте синхронизации осуществляются четыре передачи, что повысит производительность до 1056 МБ/с.

Конечно, все это впечатляет и для видеокарты ширина полосы в 1 ГБ/с очень хорошая, но возникает одна проблема: в современном РС имеется несколько шин. Напомним, что в процессорах класса Pentium ширина шины данных 64 бита и она работает на 66 МГц, что обеспечивает теоретическую пропускную способность 524 МБ/с, поэтому полоса в 1 ГБ/с не дает значительного выигрыша, если не повысить скорость шины данных сверх 66 МГц. В новых материнских платах скорость системной шины повышена до 100 МГц, что увеличивает пропускную способность до 800 МБ/с, но и этого недостаточно для того, чтобы оправдать передачи режима 4X.

Кроме того, процессор должен обращаться к системной памяти, а не только к видеосистеме. Если вся системная полоса 524 МБ/с занята видео через AGP, что же остается делать процессору? В этом случае переход к системной скорости 100 МГц даст определенный выигрыш.

Видео-конвейеризация порта AGP


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

Доступ AGP к системной памяти


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

Отметим, что AGP не относится к унифицированной архитектуре памяти (Unified Memory Architecture - UMA). В этой архитектуре вся память видеокарты, включая и буфер кадра, берется из основной системной памяти. В AGP буфер кадра остается на видеокарте, где он и размещается. Буфер кадра является наиболее важным компонентом видеопамяти и требует наивысшей производительности, поэтому целесообразнее оставить его на видеокарте и использовать для него VRAM.

AGP разрешает видеопроцессору обращаться к системной памяти для решения других задач, требующих памяти, например текстурирования и других операций трехмерной графики. Эта память не столь критична, как буфер кадра, что позволяет удешевить видеокарты за счет уменьшения емкости памяти VRAM. Обращение к системной памяти называется прямым выполнением из памяти (DIrect Memory Execute - DIME). Специальное устройство, называемое таблицей переотображения графической апертуры (Graphics Aperture Remapping Table - GART), оперирует адресами RAM таким образом, что их можно распределить в системной памяти небольшими блоками, а не одной большой секции, и предоставляет их видеокарте как бы частью видеопамяти. Наглядное представление о функциях AGP дает следующий рисунок:


Требования AGP


Чтобы использовать в системе AGP, необходимо выполнить несколько требований:

  • Наличие видеокарты AGP: Это требование вполне очевидно.
  • Наличие материнской платы с чипсетом AGP: Разумеется, чипсет на материнской плате должен поддерживать AGP.
  • Поддержка операционной системы: Операционная система должна поддерживать новый интерфейс с помощью своих внутренних драйверов и процедур.
  • Поддержка драйверов: Конечно, видеокарте требуются специальные драйверы, чтобы поддерживать AGP и использовать его специальные возможности, например режим 3X.

Новые последовательные шины


Уже 20 лет многие периферийные устройства подключаются к тем же параллельным и последовательным портам, которые появились в первом РС, и за исключением стандарта Plug and Play "технология ввода-вывода" с 1081 г. мало изменилась. Однако к концу 90-х годов прошлого века пользователи все сильнее стали ощущать ограничения стандартных параллельных и последовательных портов:

  • Пропускная способность: Последовательные порты имеют максимальную пропускную способность 115.2 Кб/с, а параллельные порты (в зависимости от типа) около 500 Кб/с. Однако для таких устройств, как цифровые видеокамеры требуется значительно более высокая пропускная способность.
  • Простота использования: Подключать устройства к старым портам очень неудобно, особенно через переходные разъемы параллельных портов. Кроме того, все порты расположены сзади РС.
  • Аппаратные ресурсы: Для каждого порта требуется своя линия IRQ. РС имеет всего 16 линий IRQ, большинство из которых уже занято. Некоторые РС для подключения новых устройств имеют всего пять свободных линий IRQ.
  • Ограниченное число портов: Многие РС имеют два последовательных порта СОМ и один параллельный порт LPT. Допускается добавить больше портов но за счет использования ценных линий IRQ.

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

Универсальная последовательная шина



Разработанный компаниями Compaq, Digital, IBM, Intel, Microsoft, NEC и Northern Telecom стандарт универсальной последовательной шины (Universal Serial Bus - USB) предоставляет новый разъем для подключения всех распространенных устройств ввода-вывода, устраняя множество современных портов и разъемов.

Шина USB допускает подключение до 127 устройств с помощью шлейфного соединения (daisy-chaining) или использования USB-хаба (USB hub). Сам хаб, или концентратор, имеет несколько сокетов и вставляется в РС или другое устройство. К каждому USB-хабу можно подключить семь периферийных устройств. Среди них может быть и второй хаб, к которому можно подключить еще семь периферийных устройств, и т.д. Вместе с сигналами данных шина USB передает и напряжение питания +5 В, поэтому небольшие устройства, например ручные сканеры, могут не иметь собственного блока питания.

Устройства подключаются непосредственно в 4-контактный сокет (розетку) на РС или хабе в виде прямоугольного сокета Типа А. Все кабели, которые постоянно подключены к устройству, имеют вилку Типа А. Устройства, которые используют отдельный кабель, имеют квадратный сокет Типа В, а кабель, который подключает их, имеет вилку Типа А или Типа В.


Шина USB снимает ограничения скорости последовательных портов на базе UART. Она работает со скоростью 12 Мб/с, что соответствует сетевым технологиям Ethernet и Token Ring и обеспечивает достаточную пропускную способность для всех современных периферийных устройств. Например, пропускной способности шины USB достаточно для поддержки таких устройств, как внешние накопители CD-ROM и ленточные накопители, а также интерфейсов ISDN обычных телефонов. Ее также достаточно для передачи сигналов цифрового звука непосредственно в динамики, оснащенные цифро-аналоговыми преобразователя, что устраняет необходимость иметь звуковую карту. Однако шина USB не предназначена заменить сети. Чтобы получить приемлемо низкую стоимость, расстояние между устройствами ограничено 5 м. Для медленных устройств типа клавиатуры и мыши можно установить скорость передачи данных 1.5 Мб/с, экономя пропускную способность для более быстрых устройств.


Шина USB полностью поддерживает технологию Plug and Play. Она устраняет необходимость установки карт расширения внутри РС и последующего реконфигурирования системы. Шина позволяет подключать, конфигурировать, использовать и при необходимости отключать периферийные устройства в то время, когда РС и другие устройства работают. Не нужно инсталлировать драйверы, выбирать последовательные и параллельные порты, а также определять линии IRQ, DMA-каналы и адреса ввода-вывода. Все это достигается путем управления периферийными устройствами с помощью хост-контроллера на материнской плате или на карте PCI. Хост-контроллер и подчиненные контроллеры в хабах управляют периферийными устройствами, снижая нагрузку на процессор и повышая общую производительность системы. Самим хост-контроллером управляет системное программное обеспечение в составе операционной системы.

Данные передаются по двунаправленному каналу, которым управляют хост-контроллер и подчиненные контроллеры хабов. Улучшенный мастеринг шины позволяет постоянно зарезервировать для конкретных периферийных устройств части общей пропускной способности; такой способ называется изохронной передачей данных (isochronous data transfer). Интерфейс шины USB содержит два основных модуля: машину последовательного интерфейса (Serial Interface Engine - SIE), отвечающую за протокол шины, и корневой хаб (Root Hub), используемый для расширения числа портов шины USB.

Шина USB выделяет каждому порту 500 мА. Благодаря этому маломощные устройства, которые обычно требуют отдельный преобразователь переменного тока (AC adapter), можно питать через кабель - USB позволяет РС автоматически определять требуемую мощность и доставлять ее в устройство. Хабы допускают полное питание от шины USB (bus powered), но могут иметь свой преобразователь переменного тока. Хабы с собственным питанием, предоставляющие 500 мА на порт, обеспечивают максимальную гибкость для будущих устройств. Хабы с переключением портов изолируют все порты друг от друга, поэтому одно "закороченное" не нарушает работу других.


Шина USB обещает создание РС с единственным портом USB вместо современных четырех или пяти различных разъемов. К нему можно подключить одно большое мощное устройство, например монитор или принтер, которое будет действовать как хаб, обеспечивая подключение других меньших устройств, например мыши, клавиатуры, модема, сканера, цифровой камеры и т.д. Однако для этого потребуется разработка специальных драйверов устройств. Однако у такой конфигурации РС имеются недостатки. Некоторые специалисты считают, что архитектура USB довольно сложная, а необходимость поддержки многих разнотипных периферийных устройств требует разработки целого набора протоколов. Другие полагают, что принцип хаба просто смещает стоимость и сложность с системного блока в клавиатуру или монитор. Но главным препятствием успеху USB является стандарт IEEE 1394 FireWire.

Шина IEEE 1394 FireWire


Этот стандарт быстродействующей периферийной шины разработан компаниями Apple Computer, Texas Instruments и Sony. Он разрабатывался как дополнение шины USB, а не как альтернатива ей, поскольку в одной системе могут использоваться обе шины, аналогично современным параллельным и последовательным портам. Однако крупные производители цифровых камер и принтеров заинтересованы в шине IEEE 1394 больше, чем в шине USB, потому что для цифровых камер лучше подходит сокет 1394, а не порт USB.

Шина IEEE 1394 (обычно называемая FireWire - "Огненный провод") во многом похожа на шину USB, также являясь последовательной шиной с горячей заменой, но намного быстрее. В IEEE 1394 есть два уровня интерфейса: один для шины на материнской плате компьютера и второй для интерфейса типа "точка-точка" между периферийным устройством и компьютером по последовательному кабелю. Простой мост объединяет эти два уровня. Интерфейс шины поддерживает скорости передачи данных в 12.5, 25 или 50 МБ/с, а интерфейс кабеля - 100, 200 и 400 Мб/с, что намного больше скорости шины USB - 1.5 МБ/с или 12 Мб/с. Спецификация 1394b определяет другие способы кодирования и передачи данных, что позволяет повысить скорость до 800 Мб/с, 1.6 Гб/с и более. Такая высокая скорость позволяет применять IEEE 1394 для подключения к РС цифровых камер, принтеров, телевизоров, сетевых карт и внешних запоминающих устройств.


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


Шина IEEE 1394 рассчитана на 6-проводный кабель длиной до 4.5 м, который содержит две пары проводников для передачи данных и одну пару для питания устройства. Каждая сигнальная пара экранирована и весь кабель также экранирован. Кабель допускает напряжение от 8 В до 400 В и ток до 1.5 А и сохраняет физическую непрерывность устройства, когда устройство выключено или неисправно (что очень важно для последовательной топологии). Кабель обеспечивает питание для подключенных к шине устройств. По мере совершенствования стандарта ожидается, что шина обеспечит большие расстояния без повторителей и еще большую пропускную способность.


Основой любого соединения IEEE 1394 служит микросхема физического уровня и коммуникационного уровня, причем для устройства необходимы две микросхемы. Физический интерфейс (PHY) одного устройства соединяется с PHY другого устройства. Он содержит схемы, необходимые для выполнения функций арбитража и инициализации. Коммуникационный интерфейс соединяет PHY, а также внутренние схемы устройства. Он передает и принимает пакеты в формате IEEE 1394 и поддерживает асинхронные или изохронные передачи данных. Возможность поддержки асинхронных и изохронных форматов в одном и том же интерфейсе допускает работу на шине некритичных ко времени приложений, например сканеров или принтеров, а также приложений реального времени, например видео и звук. Все микросхемы физического уровня используют одну и ту же технологию, а микросхемы коммуникационного уровня специфичны для каждого устройства. Такой подход позволяет шине IEEE 1394 действовать как система "узел-узел" (peer-peer) в отличие от подхода клиент-сервер в шине USB. В результате системе IEEE 1394 не требуется ни обслуживающий хост, ни РС.

Асинхронная передача является традиционным способом передач данных между компьютерами и периферийными устройствами. Здесь данные передаются в одном направлении и сопровождаются последующим подтверждением источнику. В асинхронной передаче данных упор сделан на доставку, а не на производительность. Передача данных гарантирована и поддерживаются повторные передачи (retries). Изохронная передача данных обеспечивает поток данных с предопределенной скоростью, поэтому приложение может обрабатывать их с учетом временных соотношений. Это особенно важно для критичных во времени мультимедийных данных, когда доставка точно во времени (just-in-time delivery) устраняет необходимость в дорогом буферировании. Изохронные передачи данных работают по принципу широкого вещания (broadcast), когда одно или несколько устройств могут "прослушивать" (listen) передаваемые данные. По шине IEEE 1394 можно одновременно передавать несколько каналов (до 63) изохронных данных. Так как изохронные передачи могут занимать максимум 80% пропускной способности шины, остается достаточная полоса пропускания и для дополнительных асинхронных передач.


Масштабируемая архитектура шины IEEE 1394 и гибкая топология делают ее идеальной для подключения высокоскоростных устройств: от компьютеров и жестких дисков до цифрового аудио- и видеооборудования. Устройства можно подключать в виде шлейфной или древовидной топологии. Рисунок слева показывает две отдельные рабочие области, соединенные мостом шины IEEE 1394. Рабочая область #1 состоит из видеокамеры, РС и видеомагнитофона, которые все соединены через IEEE 1394. РС также подключен к физически удаленному принтеру через повторитель 1394, который увеличивает расстояние между устройствами, усиливая сигналы шины. На шине IEEE 1394 допускается до 16 "скачков" (hops) между любыми двумя устройствами. Размножитель (splitter) 1394 используется между мостом и принтером, чтобы предоставить еще один порт для подключения моста шины IEEE 1394. Размножители обеспечивают для пользователей большую гибкость топологии.

Рабочая область #2 содержит на сегменте шины 1394 только РС и принтер, а также соединение с мостом шины. Мост изолирует трафик данных внутри каждой рабочей области. Мосты шины IEEE 1394 допускают передавать выбранные данные из одного сегмента шины в другой. Поэтому PC #2 может запросить изображения от видеомагнитофона в рабочей области #1. Так как кабель шины передает и питание сигнальный интерфейс PHY всегда с питанием и данные передаются даже в том в том случае, если PC #1 выключен.

Каждый сегмент шины IEEE 1394 допускает подключение до 63 устройств. Сейчас каждое устройство может находиться на расстоянии до 4.5 м; большие расстояния возможны как с повторителями, так и без них. Усовершенствования кабелей позволят разносить устройства на большие расстояния. С помощью мостов можно объединять более 1000 сегментов, что обеспечивает значительный потенциал для расширения. Еще одно достоинство состоит в возможности выполнять транзакции с разными скоростями по одному носителю для устройства. Например, некоторые устройства могут работать со скоростью 100 Мб/с, а другие - со скоростями 200 Мб/с и 400 Мб/с. Разрешается горячая замена (подключение или отключение устройств) на шине даже тогда, когда шина полностью работает. Автоматически распознаются изменения в топологии шины. Благодаря этому становятся ненужными коммутаторы адресов и другие вмешательства пользователя для реконфигурирования шины.

Благодаря технологии передачи пакетов шину IEEE 1394 можно организовать так, как если бы между устройствами распределено пространство памяти, или как будто устройства находятся в слотах на материнской плате. Адрес устройства состоит из 64 битов, причем 10 битов отводятся для идентификатора сети, 6 битов для идентификатора узла и 48 битов для адресов памяти. В результате можно адресовать 1023 сети из 63 узлов, причем каждый имеет память 281 ТБ. Адресация памяти, а не каналов, считает ресурсы регистрами или памятью, к которым можно обратиться с помощью транзакций процессор-память. Все это обеспечивает простую сетевую организацию; например, цифровая камера может легко передать изображения прямо в цифровой принтер без компьютера-посредника. Шина IEEE 1394 показывает, что РС теряет свою доминирующую роль по объединению среды и его можно считать очень интеллектуальным узлом.

Необходимость использования двух микросхем вместо одной делает периферийные устройства для шины IEEE 1394 более дорогими по сравнению с устройствами для SCSI, IDE или USB, поэтому она не годится для медленных устройств. Однако ее достоинства для высокоскоростных приложений, например цифрового видеоредактирования, превращает шину IEEE 1394 в основной интерфейс для бытовой электроники.

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

Спецификация USB 2.0


В разработке этой спецификации, ориентированной на поддержку высокоскоростных периферийных устройств, принимали участие компании Compaq, Hewlett-Packard, Intel, Lucent, Microsoft, NEC и Philips. В феврале 1999 г. было объявлено о повышении существующей производительности в 10 - 20 раз, а в сентябре 1999 г. по результатам инженерных исследований оценки были повышены до 30 - 40 раз по сравнению с USB 1.1. Высказывались опасения, что при такой производительности шина USB навсегда "похоронит" шину IEEE 1394. Однако по общему мнению эти две шины ориентируются на различные применения. Цель USB 2.0 состоит в том, чтобы обеспечить поддержку всех современных и будущих популярных периферийных устройств РС, а шина IEEE 1394 ориентирована на подключение бытовых аудио- и видео-устройств, например цифровых видеомагнитофонов, DVD и цифровых телевизоров.

Согласно USB 2.0 пропускная способность повышается с 12 Мб/с до 360-480 Мб/с. Ожидается, что шина USB 2.0 будет совместима с USB 1.1, что обеспечит пользователям безболезненный переход к новой шине. Для нее будут разработаны новые скоростные периферийные устройства, которые расширят диапазон применений РС. Скорости 12 Мб/с вполне достаточно для таких устройств, как телефоны, цифровые камеры, клавиатура, мышь, цифровые джойстики, ленточные накопители, накопители на гибком диске, цифровые динамики, сканеры и принтеры. Повышенная пропускная способность USB 2.0 расширит функциональность периферийных устройств, обеспечивая поддержку камер с высокой разрешающей способностью для видеоконференций, а также скоростных сканеров и принтеров следующего поколения.

Существующие периферийные устройства для USB будут без изменений работать в системе с шиной USB 2.0. Таким устройствам, как клавиатура и мышь, не требуется повышенная пропускная способность USB 2.0 и они будут работать как устройства USB 1.1. Повышенная пропускная способность USB 2.0 расширит диапазон периферийных устройств, которые можно будет подключать к РС, а также позволит большему числу USB-устройств разделять имеющуюся пропускную способность шины вплоть до архитектурных пределов шины USB. Обратная совместимость USB 2.0 с USB 1.1 может стать решающим преимуществом в борьбе с шиной IEEE 1394 за интерфейс потребительских приборов.

Стандарт DeviceBay


DeviceBay представляет собой новый стандарт, который разработан вслед за стандартами шин IEEE 1394 и USB. Эти шины допускают подключение и отключение устройств "на лету", т.е. в процессе работы РС. Такая возможность горячей замены (hot swap, hot plug) потребовала нового специального соединения между устройствами и ответом на это требование стал стандарт DeviceBay. Он стандартизует отсеки, в которые можно вставлять жесткие диски, накопители CD-ROM и другие устройства. Монтажная рама устанавливается без инструментов и в процессе работы РС. Если стандарт DeviceBay получит широкое распространение, он покончит с плоскими кабелями внутри корпуса РС. Весь РС можно оформить в виде модульной конструкции, в которой все модули подключаются к шинам USB или FireWire как устройства DeviceBay. При этом устройство можно будет свободно перемещать между РС и другими домашними приборами.

Стандарт DeviceBay рассчитан на подключение таких устройств, как накопители Zip, накопители CD-ROM, ленточные накопители, модемы, жесткие диски, считыватели PC-карт и др.






Наверх