PCI (Peripheral Component Interconnect bus) – была разработана универсальная локальная шина для связи ЦП с быстрыми периферийными устройствами. Стандарт локальной шины обеспечивает подключение периферийных устройств, требующих высокоскоростного обмена данными, непосредственно к шине процессора. Такими устройствами могут быть, например, графический адаптер или контроллер жесткого диска. Именно PCI с 1994 года стала наиболее широко использоваться в большинстве компьютерных системах, IBM– совместимых системах – совместимых с шиной ISA. В шине PCI для передачи данных используется так называемый метод рукопожатия. Он заключается в том, что в системе определяются два устройства: инициатор (Initiator) и мишень (Target). Когда инициатор готов к передаче, он выставляет данные на линии данных и подтверждает их сигналом Initiator Ready, при этом мишень записывает данные в свои регистры и подает сигналом Target Ready, таким образом подтверждая, что данные записаны. Причем остановка всех сигналов, а так же запись/чтение данных производится строго по тактовым импульсам шины, сигналом CLK, равному 33 МГц, что устраняет эффект “гонки сигналов” .
Протоколы шин PCI и ISA достаточно разные. Как же уживаются PCI и ISA в одной системе? Дело в том, что основной шиной в системе является PCI. А ISA – дополнительной и эмулируется с помощью специальной микросхемы – моста IBC (ISA Bridge Controller), включающий в себя набор устройств, необходимой для полной поддержки стандарта ISA.
Хотя производители ISA/PCI системных плат гарантируют 100-процентную совместимость версии шин ISA, установленной на этих платах, с ранее разработанным стандартом ISA, на практике так бывает не всегда. Вот несколько проблем, с которыми пришлось столкнутся некоторым пользователям:
1. Платам расширения ISA доступны не все системные прерывания. Это связано с тем, что одно из резервных прерываний всегда занято IBC, а часть других прерываний может быть зарезервирована для использования устройствами PCI. Определить, какие же резервные прерывания заняты PCI, довольно трудно, так как в документации к системным платам конфигурированию PCI и ISA, как правило, посвящают всего несколько строк. Это может привести к неоправданным потерям времени при установке в компьютер дополнительных устройств (внутренний модем, сетевая карта, звуковая или видеоплата, сканер и т.д.), использующих резервные прерывания, или к невозможности такой установке вообще.
2. На некоторых системных платах PCI/ISA шина ISA имитируется не полностью. Например была исследована материнская плата MB-8433UUD с набором микросхем UMC, которая отказывалась работать с ISA-платами расширения, имеющими управляющую программу в ROM (например с видеоконтроллером). Как выяснилось, причина заключалась в отсутствии сигналов чтения из памяти (/MEMR) на шине, из-за чего при инициализации система просто игнорировала данные платы. Во всем остальном шина в общем соответствовала стандарту. Платы же без ROM поддерживались системой и нормально работали. Эксперимент проводился на нескольких однотипных системах платах и показал одинаковый результат.
3. Клавиатурный контроллер, содержавшийся в IBC поддерживает не все клавиатуры. Большинство клавиатур работает нормально, небольшая часть периодически зависает, а некоторые вообще отказываются работать.
Из всего выше сказанного следует, что ISA/PCI-системные платы – сложные устройства, содержащие две значительно отличающиеся друг от друга системные шины, равноправно использующие системные ресурсы компьютера.
Шина PCI
16 Мар, 2009