Первая спецификация наиболее популярной сегодня шины ввода-вывода PCI была предложена компанией Intel еще в 1991 г. Разработкой стандарта PCI занималась группа PCI Special Interest Group; в результате ее активной работы уже в мае 1993 г. появилась версия PCI 2.0. Главным конкурентом новой шины была тогда VESA Local Bus (VL-bus, или VLB), созданная Ассоциацией стандартов в области видеоэлектроники (Video Electronics Standards Association) и представлявшая собой 32-разрядное расширение классической ISA. Шина работала на частотах 33 МГц и выше, обеспечивая существенный прирост производительности по сравнению с ISA.

Поскольку VLB функционировала строго синхронно с процессором (точнее, с его системной шиной FSB), рост тактовой частоты процессора приводил к появлению проблем с периферией. Чем быстрее должна была работать периферия, тем дороже она оказывалась из-за трудностей производства высокоскоростных компонентов. Лишь немногие устройства VLB поддерживали частоты свыше 40 МГц. Кроме того, архитектура VLB была тесно связана с системной шиной 486-x процессоров и потому не смогла мигрировать на Pentium.

Шина PCI имеет несколько существенных преимуществ по сравнению с VLB. Прежде всего это независимая шина, изолированная от процессора, но сохранившая прямой доступ к системной памяти. Поэтому периферийные устройства стандарта PCI могут работать асинхронно с центральным процессором на частотах 25, 30 и 33 МГц. Таким образом, даже при увеличении частоты процессора частота шины PCI могла оставаться неизменной, как правило, составляя фиксированную долю частоты FSB. Кроме того, шина PCI поддерживает примерно вдвое больше слотов расширения и устройств, чем VLB, а при необходимости их число можно еще увеличить за счет добавления новых сегментов PCI.

Расширенные функции конфигурации и энергосбережения облегчили переход на PCI. В частности, технология Plug and Play позволила настраивать периферию автоматически, без ручных установок IRQ, DMA и адресов ввода-вывода. К тому же шина поддерживает разделяемые между несколькими устройствами IRQ и усовершенствованную систему прерываний. Наконец, режим захвата арбитража шиной PCI (PCI bus mastering) позволил устройствам получать контроль над ней и обмениваться данными напрямую, без участия процессора. В результате снизились задержки и нагрузка на центральный процессор.

Благодаря этим весомым преимуществам в середине 90-х годов PCI окончательно выиграла «войну шин», став доминирующим стандартом. Однако компьютерная индустрия не стоит на месте. С распространением в системах потребительского класса RAID-массивов, Gigabit Ethernet и других высокоскоростных устройств даже пропускной способности PCI (133 Мбайт/с) перестало хватать для одновременной работы всех устройств. Шина ввода-вывода снова стала узким местом вычислительной системы. Как следствие, появились новые технологии, призванные разрешить эту проблему.

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

PCI Express совместима с PCI на программном уровне, поэтому существующие ОС могут работать с ней практически без изменений. Кроме того, многие драйверы устройств PCI Express будут совместимы с имеющейся периферией для PCI.

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

Photo

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

Для видеоадаптеров будет предусмотрен слот PCI Express X16, аккумулирующий 16 одноканальных линков шины с пропускной способностью 4 Гбайт/с в каждую сторону. Он также способен вести передачу в обе стороны параллельно и независимо. Этим PCI Express X16 выгодно отличается от AGP 8X, обеспечивающей пиковую скорость 2,1 Гбайт/с только при передаче данных от системы к видеоадаптеру. При получении данных от видеоадаптера пропускная способность шины AGP 8X, как и AGP 1X, не может превышать 264 Мбайт/с. Подобная асимметричность ограничивает реалистичность в играх, поскольку генерируемые 3D-ускорителем эффекты (например, ураган или поток воды) не могут быть переданы процессору для внесения корректив в физическую модель мира.

По мере распространения PCI Express на ПК будут появляться принципиально новые графические приложения и функции. Неудивительно, что ведущие производители 3D-ускорителей уже разработали свои решения для нового интерфейса. Так, компания ATI подготовила к выпуску новые графические микросхемы для всех секторов рынка со встроенной полноценной поддержкой PCI Express, что позволит раскрыть потенциал нового интерфейса.