Вы находитесь на странице: 1из 14

1.

Шины
расширения

Шины расширения (Expansion Bus) предназначены для подключения различных


адаптеров периферийных устройств к системной плате. Интерфейсы шин
расширения PC ведут историю с 8-битной шины ISA. Ее открытость обеспечила
появление широкого спектра плат расширений, позволивших использовать PC в
различных сферах. С появлением АТ-286 шина была расширена (ISA-16) для
обеспечения возможности подключения большего числа карт расширения и ус-
корения обмена. Как альтернатива этой дешевой массовой шине была разработана
шина EISA, призванная сделать обмен еще более производительным и надежным. В
ней воплотились прогрессивные идеи автоматизации конфигурирования (прототип
РnР), позволяя устанавливать и ISA-адаптеры. Шина МСА, предложенная IBM, не
была поддержана производителями PC, так как ее спецификация была закрытой. С
появлением процессора 486 родилась высокоскоростная локальная шина VLB.
Однако она была лишь дополнением к слоту шины ISA/ EISA и использовалась в
основном для графических карт и дисковых контроллеров. Принципиальная
привязка к шине процессора 486 не обеспечила ей долголетия. Современная
скоростная шина PCI является стандартной для компьютеров с процессорами х86
всех поколений выше четвертого, используется в Power PC и других платформах.
Развитием шины PCI, нацеленным на дальнейшее ускорение обмена, явился порт
AGP, предназначенный для подключения графического адаптера. В отличие от
вышеперечисленных шин, являющихся средством подключения множества устройств,
порт AGP образует выделенный канал связи чипсета системной платы с одним
устройством, правда, в грядущей версии он тоже станет шиной. Развитием PCI
именно как шины является новая спецификация PCI-X.
В современных настольных компьютерах основной шиной расширения является
PCI; порт AGP присутствует практически повсеместно; шина ISA, несмотря [ на
рекомендации отойти от нее, сохраняется как средство подключения старых | карт
расширений. Шины MCA, EISA и VLB можно встретить лишь на старых
компьютерах, системные платы с ними уже не выпускаются, хотя карты расши-
рения (пожалуй, кроме VLB) еще в продаже встречаются.
В промышленных и встроенных компьютерах широко применяется шина ISA
как в традиционном слотовом варианте, так и в «бутербродном» варианте РС/104.
Также здесь применяется шина PCI в различных модификациях, включая Compact
PCI и PXI.
Шины расширения являются средствами подключения системного уровня: они
позволяют адаптерам и контроллерам непосредственно использовать системные
ресурсы PC — пространства памяти и ввода-вывода, прерывания, каналы прямого
доступа к памяти. Как следствие, изготовителям модулей расширения приходится
точно следовать протоколам шины, включая жесткие частотные и нагрузочные
параметры, а также временные диаграммы. Отклонения приводят к
несовместимости с некоторыми системными платами. Если при подключении к
внешним интерфейсам это ведет к неработоспособности только самого устройства,
то некорректное подключение к системной шине может блокировать работу всего
компьютера. Следует также учитывать ограниченность ресурсов PC. Самые
дефицитные из них — линии запросов прерываний; проблема прерываний, известная
по шине ISA, так и не была радикально решена с переходом на PCI. Другой дефицит
— каналы прямого доступа шины ISA, используемые и для прямого управления
шиной, — в шине PCI исчез. Доступное адресное пространство памяти и портов
ввода-вывода, в котором было тесновато абонентам шины ISA, в PCI существенно
расширено. Проблемы распределения ресурсов на ши-нах решаются по-разному, но
чаще всего применяется технология РпР. В табл. 1 дана характеристика стандартных
шин расширения PC.
Таблица 1. Характеристики шин расширения
Шина Пропускная Каналы Bus- ACFG2 Разряд- Разряд- Частота,
способность, DMA Master ность ность МГц
Мбайт/с1 данных адреса
ISA-8 4 3 - - 8 20 (1 Мбайт) 8
ISA-16 8 7 + - 16 24 (16 Мбайт) 8
LPC 6,7 7 + 8/16/32 32 (4 Гбайт) 33
EISA 33,3 7 + + 32 32 (4 Гбайт) 8,33
MCA-16 16 + + 16 24 (16 Мбайт) 10
MCA-32 20 + + 32 32 (4 Гбайт) 10
VLB 132 (+) 32/64 32 (4 Гбайт) 33-50 (66)
PCI 132/264 + 32/64 32 (4 Гбайт) 33 / 66
PCMCIA 10/20 + _ + 8/16 26 (64 Мбайт)
Card Bus 132 + + 32 32 (4 Гбайт) 33
' Указана максимальная пропускная способность. Реальная
примерно в два раза ниже за счет прерываний, регенерации и
протокольных процедур.

2
Поддержка автоматического конфигурирования. Для ISA PnP
является позднейшей надстройкой, реализуемой адаптерами и ПО.

Шины расширения обычных ПК конструктивно оформляются в виде щелевых


разъемов (слотов) на системной плате для установки плат адаптеров, для блокнотных
промышленных ПК применяют штырьковые разъемы.

1.1. Шина ISA

ISA Bus (Industry Standard Architecture) — шина расширения, применявшаяся с


первых моделей PC и ставшая промышленным стандартом. В компьютере XT
использовалась шина с разрядностью данных 8 бит и адреса — 20 бит. В компьютерах
AT ее расширили до 16 бит данных и 24 бит адреса. В таком виде она существует и
поныне. Конструктивно, как показано на рис.1, шина выполнена в виде двух щелевых
разъемов с шагом выводов 2,54 мм (0,1 дюйма). Подмножество ISA-8 использует
только 62-контактный слот (ряды А, В), в ISA-16 применяется дополнительный 36-
контактный слот (ряды С, D). Шина РС/104, разработанная для встраиваемых
контроллеров на базе PC, отличается от обычной ISA только конструктивно.

Шина ISA-8 может предоставить до 6 линий запросов прерываний, ISA-16 — 11.

Рис. 1. Слот ISA


Часть из них могут «отобрать» устройства системной платы или шина PCI.
Шина ISA-8 позволяет использовать до трех 8-битных каналов DMA. На 16-
битной шине доступны еще три 16-битных и один 8-битный канал.
В каждый момент времени шиной может управлять только одно устройство-
задатчик, обращающееся к ресурсам (портам или ячейкам памяти) устройств-
исполнителей. Основным задатчиком является контроллер шины, расположенный на
системной плате. Он формирует запросы к исполнителям по командам обращения к
памяти или вводу-выводу, выполняемым центральным процессором по сигналам
контроллера DMA и контроллера регенерации памяти. Задатчиком на некоторое
время может стать устройство, захватившее управление шиной через запрос по 16-
битному каналу DMA. Такой режим работы устройства называют прямым
управлением шиной (bus mastering). При этом канал DMA применяется для арбитража
шины, а адаптер bus-master формирует все адресные и управляющие сигналы шины,
не забывая передать управление шиной процессору не позднее, чем через 15 мкс
(чтобы не нарушить регенерацию памяти).

1.2. Шина РС/104

Шина РС/104, предназначенная для построения относительно несложных встраи-


ваемых контроллеров, логически эквивалентна ISA. В ее названии 104- число
контактов коннектора, на который выводятся сигналы шины ISA. От ISA шина
РС/104 отличается только типом коннектора и нагрузочными характеристиками
линий: поскольку протяженность линий значительно сократилась, сигнальные
цепи могут быть слаботочными. Контроллер с шиной РС/104 имеет разъем -
розетку. Плата расширения имеет вилку РС/104, которая вставляется в плату
контроллера. Кроме вилки на плате расширения может присутствовать и
розетка рС-104 (коннектор двусторонний), так что можно собрать «бутерброд»
из нескольких плат. Если плат более трех, то сверху «бутерброда»
устанавливают терминатор. Для фиксации плат стандартизовано расположение
крепежных отверстий. Платы скрепляются четырьмя несущими стоечками
высотой 0,6" (или длинными винтами с втулками).

1.3. Шина EISA

EISA Bus (Extended ISA) — стандартизованное расширение ISA до 32 бит. Кон-


структивное исполнение обеспечивает совместимость с ней ISA-адаптеров
(рис. 1.3). Узкие дополнительные контакты расширения (ряды Е, F, G, Н) рас-
положены между ламелями (контактными площадками) разъема ISA и ниже ла-
мелей А, В, С, D таким образом, что адаптер ISA, не имеющий дополнительных
ключевых прорезей в краевом разъеме, не достает до них. Установка карт EISA в
слоты ISA недопустима, поскольку ее цепи попадут на контакты ISA, в результа-
те системная плата окажется неработоспособной (к счастью, «без дыма»).

Контакты ISA
(ряды А, В, С, D)
Контакты EISA
(ряды Е, F, G, Н)

Рис. 1.3. Разъем шины EISA


Для режимов EISA используются дополнительные управляющие сигналы,
обеспечивающие более эффективные режимы передачи. В обычном (не пакетном)
режиме передачи за каждую пару тактов может быть передано до 32 бит (один такт
— на фазу адреса, один — на фазу данных). В пакетном режиме (Burst Mode) пакеты
данных пересылаются без указания текущего адреса внутри пакета. В пакете
очередные данные передаются в каждом такте шины, длина пакета достигает 1024
байт. Шина предусматривает более производительные режимы DMA, при которых
скорость обмена может достигать 33 Мбайт/с. Линии запросов прерываний допускают
разделяемое использование, причем сохраняется совместимость с ISA-картами: каждая
линия запроса может программироваться на чувствительность как по перепаду (как в
ISA), так и по низкому уровню. Шина допускает потребление каждой картой
расширения мощности до 45 Вт, но это не означает, что мощность блока питания
для 8 слотов должна быть более 360 Вт — полную мощность не потребляет ни один
из адаптеров.
Каждый слот (максимум — 8) и системная плата имеют селективное
разрешение адресации ввода-вывода и отдельные линии запроса и
подтверждения управления шиной. Арбитраж запросов выполняет
устройство ISP (Integrated System Peripheral). Приоритеты (в порядке
убывания): регенерация, DMA, CPU, Bus-Master. Обязательной при-
надлежностью системной платы с шиной EISA является энергонезависимая
память конфигурации NVRAM, в которой хранится информация об
устройствах EISA для каждого слота.
EISA — дорогая, но в свое время оправдывавшая себя архитектура, приме-
нявшаяся в основном на серверах, где требуется высокоэффективное расшире-
ние шины ввода-вывода. Перед шиной PCI у нее было преимущество в количе-
стве слотов (8 против 4).
Шина EISA позволяет устройствам работать как в режиме ISA, так и в новых
режимах EISA. Из сигналов ISA используются линии адреса/данных с расшире-
нием их до 32 бит, сигналы прерываний и прямого доступа к памяти и синхро-
низации. Для своих циклов обмена EISA использует собственный набор управ-
ляющих сигналов с обязательной синхронизацией по сигналу BCLK.

1.4. Конфигурирование интерфейсных карт ISA и EISA

Как было указано выше, всем устройствам-абонентам шин ISA и EISA должны
назначаться свои системные ресурсы — области адресов в пространствах памяти и
ввода-вывода, линии запросов прерываний и каналы прямого доступа к памяти,
причем устройства не должны конфликтовать по ресурсам. Иными словами, все
устройства, подключенные к шине, требуется должным образом сконфигурировать.
Под этим подразумевается бесконфликтная настройка их дешифраторов адресов
и коммутация сигналов запросов прерываний и пар сигналов для работы с канала-
ми DMA. Кроме того, выбранные аппаратные настройки должны быть сообщены
программному обеспечению, непосредственно взаимодействующему с устройства-
ми через порты, ячейки памяти, каналы DMA и контроллер прерываний.

Конфигурирование старых карт расширения выполняется переключением


джамперов, затем установленные параметры заносятся в конфигурационные
файлы.
Позже на картах ISA стали применять микросхемы энергонезависимой памяти
(как правило, NVRAM в ее разновидности EEPROM), хранящей настройки. С
такими картами поставляются утилиты настройки, позволяющие в диалоговом
режиме задать требуемые параметры. Отсюда их названия: программно-кон-
фигурируемые (Software Configured) или безджамперные (jumperless). В общем
это позволило облегчить конфигурирование — для смены настроек не нужно
вынимать карту и переставлять джамперы. Правда, пользователю все равно при-
ходится вникать в распределение системных ресурсов. Утилита может проверить
выбираемые установки на отсутствие конфликта. Однако конфликт может быть
не замечен или же ошибочно обнаружен там, где его нет. Некоторые программно-
конфигурируемые адаптеры все же имеют джамперы, что бывает полезно для
установки типовой настройки, устраняющей конфликты (например, наложение
областей памяти сетевого адаптера и видеопамяти).
Идеальными условиями для программного конфигурирования, и тем более
автоматического (без вмешательства пользователя) конфигурирования, является
изоляция карты от всех остальных. Тогда ПО конфигурирования сможет вести с
картой диалог, на который не влияет присутствие других устройств. Изоляция
карт при конфигурировании заложена в шины MCA, PCI и EISA, но в ISA такой
возможности нет. В EISA для каждого слота возможно программное селективное
управление сигналом AEN, что позволяет на время конфигурирования
разрешить дешифрацию адресов портов ввода-вывода только для выбранного
слота. В системе с шиной EISA имеется энергонезависимая память конфигу-
рирования слотов, с которой взаимодействуют диалоговые утилиты конфигури-
рования ECU (EISA Configuration Utility). Но машины с EISA были слишком
Дороги, и для массовых компьютеров с шиной ISA была разработана аппаратно-
программная спецификация автоматического конфигурирования ISA PnP, опи-
санная ниже. Для автоматического конфигурирования необходимо также
обеспечить единый метод двустороннего обмена конфигурационной
информацией между картой и конфигурационным ПО. Для этого были
расширены функции BIOS — появилась спецификация PnP BIOS. Полная под-
держка автоматического конфигурирования карт ISA требует наличия PnP BIOS,
карт и/или модулей ISA PnP на системной плате, а также ОС с поддержкой PnP
или же специализированного ПО.

12.5. Шина PCI

PCI (Peripheral Component Interconnect) local bus — шина соединения перифе-


рийных компонентов является основной шиной расширения современных ком-
пьютеров. Шина разрабатывалась в расчете на Pentium, но хорошо сочеталась и
с процессорами 486. Сейчас PCI является четко стандартизованной высокопро-
изводительной и надежной шиной расширения. Первая версия PCI 1.0 появи-
лась в 1992 году. В PCI 2.0 (1993 г.) введена спецификация коннекторов и карт
расширения. В версии 2.1 (1995 г.) введена частота 66 МГц. В настоящее время
действует спецификация PCI 2.2 ( «PCI Local Bus Specification. Revision 2.2» от
18.12.1998), опубликованная организацией PCI SIG (Special Interest Group),
которая уточняет и разъясняет некоторые положения предшествующей версии
2.1.
Поначалу шина PCI вводилась как пристройка (mezzanine bus) к системам с
основной шиной ISA, став позже центральной шиной: она соединяется с сис-
темной шиной процессора высокопроизводительным мостом («северным»), вхо-
дящим в состав чипсета. Остальные шины расширения ввода-вывода (ISA/EISA
или МСА), а также локальная ISA-подобная шина X-BUS и интерфейс LPC,
к которым подключаются микросхемы системной платы (ROM BIOS, контрол-
леры прерываний, клавиатуры, DMA, портов СОМ и LPT, НГМД и прочие «ме-
лочи»), подключаются к шине PCI через «южный» мост. В современных систем-
ных платах с хабовой архитектурой (см. п. 4.1) шину PCI отодвинули на пери-
ферию, не ущемляя ее в мощности канала связи с процессором и памятью, но
и не нагружая транзитным трафиком устройств других шин.
Шина является синхронной — фиксация всех сигналов выполняется по по-
ложительному перепаду (фронту) сигнала CLK. Номинальной частотой синхро-
низации считается 33 МГц, при необходимости частота может быть понижена
(на машинах с процессором 486 использовали частоты 20-33 МГц). Во многих
случаях частоту успешно разгоняют и до 41,5 МГц (половина типовой частоты
системной шины 83 МГц). Начиная с версии 2.1, допускается повышение часто-
ты до 66 МГц при согласии всех устройств на шине.
Номинальная разрядность шины данных — 32 бита, спецификация определя-
ет и расширение разрядности до 64 бит. При частоте шины 33 МГц теоретичес-
кая пропускная способность достигает 132 Мбайт/с для 32-битной шины
и 264 Мбайт/с для 64-битной; при частоте синхронизации 66 МГц — 264
и 528 Мбайт/с соответственно. Однако эти пиковые значения достигаются лишь
во время передачи пакета, а из-за протокольных накладных расходов реальная
средняя суммарная (для всех задатчиков) пропускная способность шины будет
ниже.
Слот PCI достаточен для подключения адаптера (в отличие от VLB), на
системной плате он может сосуществовать с любой из шин ввода-вывода (и да-
же с VLB).

С устройствами PCI процессор может взаимодействовать командами обра-


щения к памяти и портам ввода-вывода, адресованным к областям, выделенным
данному устройству при конфигурировании. Устройства могут вырабатывать за-
просы маскируемых и немаскируемых прерываний. Понятия каналов DMA для

шины PCI нет, но агент шины может сам выступать в роли задатчика, поддержи-
вая высокопроизводительный обмен с памятью (и не только), не занимая ресур-
сов центрального процессора. Таким образом, к примеру, может быть реализован
обмен в режиме DMA с устройствами IDE, подключенными к контролеру PCI
IDE (см. п. 13.1.9). Спецификация PCI требует перемещаемости всех занимае-
мых ресурсов в пределах доступного пространства адресации. Это позволяет обес-
печивать бесконфликтное распределение ресурсов для многих устройств (функ-
ций). Для управления устройствами рекомендуется вместо портов ввода-вывода
по возможности использовать ячейки памяти. Одно и то же функциональное
устройство может быть сконфигурировано по-разному, отображая свои регистры
либо на пространство памяти, либо на пространство ввода-вывода. Драйвер мо-
жет определить текущую настройку, прочитав содержимое регистра базового ад-
реса устройства, — признаком пространства ввода-вывода будет единичное зна-
чение бита 0 . Драйвер также может определить и номер запроса прерывания,
который используется устройством.

Шины, логические устройства и функции PCI


Для шины PCI принята иерархия понятий, идентифицирующих конкретное уст-
ройство. Эта иерархия требуется на этапе конфигурирования, когда производится
опрос присутствующих устройств и их потребностях в ресурсах (пространствах
памяти и ввода-вывода, а также запросах прерывания). В дальнейшей регулярной
работе устройства будут отзываться на обращения по назначенным им адресам,
доведенным до сведения связанных с ними модулей ПО.
Устройством PCI называется микросхема или карта расширения, использую-
щая для идентификации выделенную ей линию IDSEL. Устройство может быть
многофункциональным, то есть состоять из множества так называемых функций.
Каждой функции отводится конфигурационное пространство в 256 байт .
Номер функции (function number), к которой производится обращение в
конфигурационных транзакциях, передается по линиям AD[10:8] (младшие линии
требуются для адресации регистров внутри конфигурационного пространства).
Таким образом, устройство может содержать до 8 функций. Простые
(однофункциональные) устройства, в зависимости от реализации, могут отзы-
ваться либо на любой номер функции (игнорировать значение AD[10:8] в конфи-
гурационном цикле), либо только на номер функции 0. Многофункциональные
устройства должны отзываться только на конфигурационные циклы с номерами
функций, для которых имеется конфигурационное пространство. При этом фун-
кция с номером 0 должна быть обязательно, номера остальных функций назна-
чаются произвольно.
На одной шине PCI может присутствовать несколько устройств, каждое из
которых имеет свой номер устройства (device number). И, наконец, в системе
может присутствовать несколько шин PCI, каждая из которых имеет свой номер
шины (PCI bus number). Шины нумеруются последовательно; шина, подключен-
ная к главному мосту, имеет нулевой номер.

Протокол шины PCI


В каждой транзакции (обмене по шине) участвуют два устройства — инициатор
(initiator) обмена, он же мастер (master) или ведущее устройство, и целевое
(target) устройство (ЦУ), оно же ведомое (slave). Шина PCI все транзакции трак-
тует как пакетные: каждая транзакция начинается фазой адреса, за которой мо -
жет следовать одна или несколько фаз данных.
Электрический интерфейс, слоты и карты PCI
Для работы на шине PCI используются микросхемы КМОП (CMOS), причем
имеются две спецификации: с напряжением питания 5 или 3,3 В. Электрическая
спецификация рассчитана на два предельных варианта нагрузки одной шины: 2
устройства PCI на системной плате плюс 4 слота или 4 устройства и 2 слота. При
этом подразумевается, что одно устройство на каждую линию шины PCI дает
только единичную КМОП-нагрузку. В слоты могут устанавливаться карты,
также дающие только единичную нагрузку. Слоты PCI представляют собой
щелевые разъемы, имеющие контакты с шагом 0,05 дюйма. Слоты расположены
несколько дальше от задней панели, чем ISA/EISA или МСА.
Карты PCI могут предназначаться для уровня интерфейсных сигналов 5 В и 3,3
В, а также быть универсальными. Слоты PCI имеют уровни сигналов,
соответствующие питанию микросхем PCI-устройств системной платы: либо 5 В,
либо 3,3 В. Во избежание ошибочного подключения слоты имеют ключи,
определяющие номинал напряжения. Ключами являются пропущенные ряды
контактов 12, 13 и 50, 51. Для слота на 5 В ключ расположен на месте контактов
50, 51; для 3,3 В — 12, 13. На краевых разъемах карт PCI имеются ответные
прорези на месте контактов 50, 51 (5 В) и 12,13 (3,3 В); на универсальной карте
имеются оба ключа. Ключи не позволяют установить карту в слот с
неподходящим напряжением питания.
На системных платах чаще всего встречаются 32-битные слоты, заканчиваю-
щиеся контактами А62/В62; 64-битные слоты встречаются реже, они длиннее
и заканчиваются контактами А94/В94.
Тактовая частота шины определяется по возможностям чипсета и всех або-
нентов шины. Высокая частота 66 МГц может устанавливаться тактовым генера-
тором только при высоком уровне на линии M66EN. Таким образом, установка
любой карты, не поддерживающей 66 МГц (с заземленным контактом В49), при-
ведет к понижению частоты шины до 33 МГц.
На рис. 12.5 изображена 32-битная карта максимального размера (Long Card),
длина короткой платы (Short Card) — 175 мм, но многие карты имеют и меньшие
размеры

Рис. 1.5. Карта расширения для шины PCI

Small PCI (SPCI) — спецификация PCI в миниатюрном исполнении, прежде


называвшаяся SFF PCI (Small Form-Factor). Эта спецификация, предназначен-
ная в основном для портативных компьютеров логически совпадает с обычной
шиной PCI. Шина 32-битная, 64-битное расширение не предусматривается
и при частоте 33 МГц обеспечивается пропускная способность 132 Мбайт/с. Как
и на всех шинах PCI, здесь поддерживается прямое управление (bus
mastering).

PCI-X — спецификация шины с высокой пропускной способностью, достига-


ющей 1 Гбайт/с. Разработана с учетом совместимости шины со старыми устрой-
ствами и новыми устройствами с обычной шиной PCI, для чего при наличии в
системе хоть одного из «тихоходных» компонентов частота понижается до обыч-
ных 66 или 33 МГц.

Для устройств промышленного назначения в начале 1995 года был принят


стандарт Compact PCI. Шина Compact PCI (cPCI) разрабатывалась на основе
спецификации PCI 2.1. Этот стандарт принят организацией производителей про-
мышленных компьютеров PCIMG (PCI Industrial Computer Manufacturers Group).
Шина отличается большим количеством поддерживаемых слотов: 8 против 4.
Конструктивно платы Compact PCI представляют собой еврокарты высотой 3U
(100 х 160 мм) с одним коннектором (J1) или 6U (233 х 160 мм) с двумя кон-
некторами (J1 и J2). Коннекторы — 7-рядные штырьковые разъемы с шагом 2 мм
между контактами, на кросс-плате — вилка, на модулях — розетки.
На базе шины Compact PCI фирмой National Instruments разработана специ-
фикация PXI (PCI extensions for Instrumentation — расширение PCI для инстру-
ментальных систем) в тех же конструктивах. В шине PXI часть контактов, опре-
деленных в Compact PCI как свободные, предназначаются для дополнительных
шин. Модули PXI совместимы с шиной Compact PCI, и модули Compact PCI -
с шиной PXI. Однако все преимущества спецификации реализуются только при
установке модулей PXI в шину PXI.

Мосты PCI
Для соединения шины PCI с другими шинами и между собой применяются спе-
циальные аппаратные средства — мосты PCI (PCI Bridge). Главный мост (Host
Bridge) используется для подключения PCI к системной шине (системной памяти
и процессору), одноранговый мост (Peer-to-Peer Bridge) — для соединения
двух шин PCI.
Соединения нескольких шин PCI характерно для серверов — таким образом
увеличивают число подключаемых устройств. Мосты образуют иерархию шин,
на вершине которой находится главная шина с нулевым номером. Главный мост
чипсета системной платы может соединять центр (процессор и память) с не-
сколькими равноранговыми шинами PCI, из которых условно главной будет шина
с нулевым номером. Для подключения шин PCMCIA, CardBus, MCA, ISA/EISA,
X-Bus и LPC используются специальные мосты, входящие в чипсеты системных
плат или же являются отдельными устройствами PCI (микросхемами). Мосты
выполняют преобразование интерфейсов соединяемых ими шин, синхронизацию
и буферизацию обменов данных. Мосты (включая и мосты PCI-PCI) допускают
различие частот синхронизации на соединяемых ими шинах.

12.6. Магистральный интерфейс AGP

В настоящее время самой быстрой универсальной шиной расширения является


PCI, имеющая при тактовой частоте 66 МГц и разрядности 32 бит пиковую про-
пускную способность 264 Мбайт/с. Одним из главных потребителей пропуск-
ной способности шины является графический адаптер. По мере увеличения раз-
решения и глубины цвета требования к пропускной способности шины, связы-
вающей дисплейный адаптер с памятью и центральным процессором компьюте-
ра, повышаются. Одно из решений состоит в уменьшении потока графических
данных, передаваемых по шине. Для этого графические платы снабжают акселе-
раторами и увеличивают объем видеопамяти, которой пользуется акселератор
при выполнении построений. В результате поток данных в основном циркулирует
внутри графической карты, слабо нагружая внешнюю шину. Однако при трех-
мерных построениях акселератору становится тесно в ограниченном объеме ло-
кальной памяти графического адаптера, и его поток данных снова выплескивается
на внешнюю шину.
Фирма Intel на базе шины PCI 2.1 разработала стандарт подключения графи-
ческих адаптеров — AGP (Accelerated Graphic Port — ускоренный графический
порт). Первая версия стандарта вышла в 1996 году, в настоящее время действует
версия 2.0 (1998 г.), отличающаяся от первой в основном введением нового ре-
жима передачи 4х. В конце 2000 года Intel опубликовала черновик специфика-
ции AGP8X, которая рассматривается как отдельная спецификация, а не просто
развитие предыдущих.
Порт AGP представляет собой 32-разрядную шину с тактовой частотой 66 МГц,
большая часть сигналов позаимствована из шины PCI. Однако в отличие от PCI
порт AGP представляет собой двухточечный интерфейс, соединяющий графичес-
кий адаптер с памятью и системной шиной процессора напрямую логикой и кана-
лами данных чипсета системной платы, не пересекаясь с «узким местом» — ши-
ной PCI. Поначалу планировался переход на тактовую частоту 100 МГц, но и в
спецификации AGP 2.0, и в черновом варианте AGP8X фигурирует лишь одна
частота — 66,6 МГц (нынешний предел и для шины PCI).
«Ускоренность» порта обеспечивается следующими факторами:
конвейеризацией обращений к памяти;
удвоенной (2х) или учетверенной (4х) частотой передачи данных (относи-
тельно тактовой частоты порта);
демультиплексированием шин адреса и данных.
Идею конвейеризации обращений к памяти иллюстрирует рис. 1.6, где срав-
ниваются обращения к памяти PCI и AGP. В PCI во время реакции памяти на
запрос шина простаивает (но не свободна). Конвейерный доступ AGP
позволяет в это время передавать следующие запросы, а потом получить
поток ответов.

Рис. 1.6. Циклы обращения к памяти PCI и AGP


Удвоение и учетверение частоты передачи данных обеспечивает при
частоте 66 МГц пропускную способность до 533 (2х) и 1066 Мбайт/с (4х),
что для 32-битной шины несколько неожиданно. В этих режимах блоки данных
передаются как по фронту, так и по спаду стробирующего сигнала (как в ATA
Ultra DMA). Режимы 2х и 4х могут использоваться, лишь если их
поддерживает и графический адаптер, и системная плата.
Что касается большой пропускной способности AGP, то следует напомнить,
что в графических адаптерах с памятью WRAM или RDRAM внутренняя ско-
рость обмена данными акселератора с видеопамятью достигает 1,6 Гбайт/с, так
что акселератор на AGP имеет выигрыш только в объеме доступной памяти.
Конфигурирование устройств с интерфейсом AGP выполняется так же, как и
обычных устройств PCI, — через обращения к регистрам конфигурационного про-
странства. В процессе инициализации процедура POST только распределяет
системные ресурсы, но операции AGP оставляет запрещенными. Работу AGP
разрешает загруженная ОС, предварительно установив требуемые параметры
AGP: режим обмена, поддержку быстрой записи, адресации свыше 4 Гбайт,
способ подачи и допустимое число запросов. Для этого возможности устройств
считываются из регистра состояния AGP, а согласованные параметры
записываются в регистр команд AGP, расположенный в конфигурационном про-
странстве. Параметры настройки порта задаются через конфигурационные реги-
стры чипсета системной платы (главного моста).
Регистр состояния AGP сообщает свойства порта: допустимое число запросов
в очередях, поддержку внеполосной адресации, быстрой записи, адресации свы-
ше 4 Гбайт, режимы 1х, 2х, 4х. Регистр команд AGP служит для разрешения этих
свойств.
Графический адаптер с интерфейсом AGP может быть встроен в системную
плату, а может располагаться и на карте расширения, установленной в слот
AGP. Внешне карты с портом AGP похожи на PCI (рис. 1.7), но у них использу-
ется разъем повышенной плотности с «двухэтажным» (как у EISA) расположе-
нием ламелей. Сам разъем располагается дальше от задней кромки платы, чем
разъем PCI.
Рис. 1.7. Слоты AGP: а- 3,3 В; б- 1,5 В; в— универсальные
Порт AGP может использовать два возможных номинала питания интер-
фейсных схем: 3,3 В и 1,5 В.

1.8. Устаревшие шины PC

В этом разделе «помянем» шины PC, оставшиеся в прошлом веке, — МСА и


VLB. Шину ISA списывать рано — даже изживаемая из настольных ПК, она еще
послужит в простых инструментальных и промышленных компьютерах.

Шина МСА
MCA (MicroChannel Architecture) — микроканальная архитектура — была вве-
дена фирмой IBM для своих компьютеров PS/2, начиная с модели 50. Шина
МСА абсолютно несовместима с ISA/EISA. Состав управляющих сигналов, про-
токол и архитектура ориентированы на асинхронное функционирование шины и
процессора, что снимает проблемы согласования скоростей процессора и ПУ.
Архитектура позволяет эффективно и автоматически конфигурировать все уст-
ройства программным путем (в картах МСА нет ни одного переключателя). При
всей прогрессивности архитектуры МСА не пользовалась популярностью, в час-
тности, из-за своей закрытости и полной несовместимости с открытой архитек-
турой ISA. MCA находила применение в мощных файл-серверах, где требуется
высоконадежный производительный ввод-вывод. Однако сейчас ее практически
вытеснила шина PCI.
Локальная шина VLB
Шины ввода-вывода ISA, MCA, EISA имеют низкую производительность, обус-
ловленную их ролью в структуре PC. Одним из решений проблемы повышения
пропускной способности было применение локальной шины процессора 486 для
подключения периферии (контроллера дисков и графического адаптера). VLB
(VESA Local Bus) — стандартизованная 32-битная локальная шина, практичес-
ки представляющая собой набор сигналов системной шины процессора 486, вы-
веденных на дополнительные разъемы системной платы. Для процессоров Pen-
tium была принята спецификация 2.0, в которой разрядность шины данных уве-
личена до 64, но она распространения не получила.
VLB-слот является расширением системного слота шины ISA-16, EISA или
MCA, располагаясь позади него вблизи от процессора. Из-за ограниченной на-
грузочной способности шины процессора больше трех слотов VLB на системной
плате не устанавливают. Максимальная тактовая частота шины — 66 МГц, хотя
шина работает надежнее на частоте 33 МГц. Декларируется пиковая пропускная
способность 132 Мбайт/с (33 МГц х 4 байта), но она достигается только при па-
кетной передаче.
Жесткие требования к временным характеристикам процессорной шины при
большой нагрузке (со стороны микросхем внешнего кэша) могут привести к не-
устойчивой работе: все три VLB-слота работоспособны только на частоте 40 МГц.
При нагруженной системной плате на 50 МГц может работать только один слот.
Шина теоретически допускает применение активных (Bus-Master) адаптеров, но
арбитраж запросов возлагается на сами адаптеры. Разрешена установка не более
двух адаптеров Bus-Master, один из которых устанавливается в Masters-слот.
Встречаются системные платы, которые имеют встроенный графический и
дисковый адаптер с шиной VLB, но самих слотов VLB нет. Это означает, что на
плате установлены микросхемы указанных адаптеров для шины VLB. Такая не-
явная шина по производительности не уступает обычной, а с точки зрения на-
дежности и совместимости она даже лучше.

1.9. Шины и карты расширения б л о к н о т н ы х


ПК

Портативные и блокнотные ПК поначалу строились безо всяких попыток унифи-


кации и обеспечения взаимозаменяемости компонентов, но со временем ситуация
изменилась. Сейчас существует несколько основных интерфейсов и конструкти-
вов для устройств расширения, наиболее популярные приведены в табл. 5.
Первый стандарт на карты расширения назывался PCMCIA. Впоследствии
он был переименован в PC Card.
Для карт памяти (динамической, статической, постоянной и флэш-памяти)
существуют стандарты Miniature Card и SmartMedia Card, поддерживаемые ас-
социацией PCMCIA, а также MultiMedia Card и CompactFlash (CFA — Compact
Flash Association). Карта Miniature Card через переходный адаптер может уста-
навливаться в слот PC Card типа 2.
Таблица 5. Конструктивы и интерфейсы периферии портативных ПК
PC Card Small PC Compact Smart Miniature Multi
Card Flash Media Card Media
Card Card
Длина, мм 85,6 45,0 36,0 45,0 33,0 32,0
Ширина, мм 54,0 42,8 43,0 37,0 38,0 24,0
Высота, мм 3,3/5,0/ 3,3/5,0/ 3,3/5,0 0,76 3,5 1,4
10,5 10,5
Коннектор Штырь- Штырь- Штырь- Печатный Эластомер Печатный
ковый ковый ковый
Число контактов 68 68 50 22 60 7
Интерфейсы Память, Память, Память, Память Память Память
ввод- ввод- ввод- (Flash, (DRAM, (Flash,
вывод, вывод вывод ROM) Flash, ROM)
CardBus ROM)

1.9.1. Интерфейсы PCMCIA, PC Card и CardBus


В начале 90-х годов организация PCMCIA (Personal Computer Memory Card
International Association — международная ассоциация производителей карт па-
мяти для персональных компьютеров) начала работы по стандартизации шин
расширения блокнотных компьютеров, в первую очередь предназначенных для
расширения памяти. Первым появился стандарт PCMCIA Standard Release 1.0/
JEIDA 4.0 (июнь 1990 г.), в котором был описан 68-контактный интерфейс и два
типоразмера карт: Туре I и Туре II PC Card. Поначалу стандарт касался электри-
ческих и физических требований только для карт памяти. Был введен метафор-
мат информационной структуры карты CIS (Card Information Structure), в
которой описываются характеристики и возможности карты — ключевой
элемент взаимозаменяемости карт и обеспечения возможностей РпР.
Следующая версия PCMCIA 2.0 (1991 г.) для того же разъема определила
интерфейс операций ввода-вывода, двойное питание для карт памяти, а также
методики тестирования. В версии 2.01 была добавлена спецификация PC
CardATA, новый типоразмер Туре III, спецификация автоиндексируемой
массовой памяти AIMS (Auto-Indexing Mass Storage) и начальный вариант
сервисной спецификации (Card Services Specification). В версии 2.1 (1994 г.)
расширили спецификации сервисов карт и сокетов (Card and Socket Services
Specificaiton) и развили структуру CIS.
Стандарт PC Card (1995 г.) явился продолжением предыдущих, в нем
введены дополнительные требования для улучшения совместимости и новые
возможности: питание 3,3 В, поддержка DMA и 32-битного режима прямого
управления шиной CardBus.
В дальнейшем в стандарт были введены и другие дополнительные возмож-
ности.
Все карты PCMCIA и PC Card имеют 68-контактный разъем, назначение кон-
тактов у которого варьируется в зависимости от типа интерфейса карты. Тип
интерфейса «заказывается» картой при установке ее в слот, который, естествен-
но, должен поддерживать требуемый интерфейс. Интерфейс памяти
обеспечи-вает 8- и 16-битные обращения с минимальным временем цикла 100
не, что обеспечивает максимальную производительность 10 и 20 Мбайт/с
соответственно. Интерфейс ввода-вывода имеет минимальную длительность
цикла 255 нс, что соответствует 3,92/7,84 Мбайт/с для 8/16-битных обращений.
Интерфейс CardBus поддерживает практически такой же протокол обмена, что
и PCI, но с некоторыми упрощениями. Тактовая частота 33 МГц и разрядность
32 бита обеспечивают пиковую пропускную способность в пакетном цикле до
132 Мбайт/с, картам предоставляется возможность прямого управления шиной
(bus mastering). Здесь используется та же система автоматического
конфигурирования, что и в PCI (через регистры конфигурационного
пространства).
Различают четыре типа PC Card, у них у всех размер в плане 54 х 85,5 мм,
но разная толщина (меньшие адаптеры встают в большие гнезда):
PC Card Type I — 3,3 мм — карты памяти;
PC Card Type II — 5 мм — карты устройств ввода-вывода, модемы, адап-
теры локальных сетей;
PC Card Type III — 10,5 мм — дисковые устройства хранения;
PC Card Type IV — 16 мм.

В стандарте PC Card выпускают самые разнообразные устройства — память


устройства хранения, коммуникационные средства, интерфейсные порты, игро-
вые адаптеры, мультимедийные устройства и т. п., правда, все они существенно
дороже своих крупногабаритных аналогов. Через слот PC Card портативные
компьютеры могут подключаться к док-станциям, в которые может быть
установлена обычная периферия. Недостаточно строгое следование
производителей стандарту иногда приводит к проблемам совместимости.
Слоты PC Card подключаются к системной шине блокнотного ПК через
мост; для компьютеров с внутренней шиной PCI это будет мост PCI-PC Card. В
блокнотных ПК могут быть и слоты Small PCI , но они недоступны без
вскрытия корпуса и не допускают «горячей» замены устройств.
Настольный ПК можно снабдить слотами PC Card с помощью специальной
карты адаптера-моста, устанавливаемой в слот PCI или ISA. Сами слоты (1-2
штуки) оформляются в корпус 3" и выводятся на лицевую панель ПК, этот кор-
пус соединяется с картой расширения ленточным кабелем-шлейфом.

1.9.2. CompactFlash
Карты CompactFlash (рис. 1.9) представляют собой устройства хранения дан-
ных на флэш-памяти. Карты имеют размер 42,8 х 36,4 х 3,3 мм (4 мм с учетом
выступа) и 50-контактный разъем (розетка на карте, двухрядный штырьковый
разъем на слоте, назначение контактов см. в п. 13.1.1). Через переходник с 50- на
68-контактный разъем карты могут устанавливаться в слот PC Card Type II
или III. Объем памяти выпускаемых в настоящее время карт — 4-32 Мбайт, на-
пряжение питания — 5 или 3,3 В. Карты могут работать в одном из трех режи-
мов: карт памяти, карт ввода-вывода PC Card, чистого IDE (ATA). В первых
двух режимах карты работают с теми же интерфейсными сигналами, что и PC
Card. В режиме IDE электрический интерфейс и система команд полностью со-
вместимы со спецификацией АТА .

Рис. 1.9. Карты CompactFlash

1.9.3. SmartMedia Card


Карты флэш-памяти SmartMedia миниатюрного размера (45 х 37 х 0,76 мм)
предназначены для хранения данных в самых разнообразных устройствах —
PDA, фотокамерах, музыкальных инструментах и т. п., где они с успехом
заменяют дисковые устройства. Карты основаны на микросхемах флэш-памяти
с организацией запоминающих ячеек NAND (ячейки образуют логический
элемент И-НЕ). Этому типу флэш-памяти присуще быстрое чтение, запись и
стирание небольших блоков (256 или 512 байт), что удобно для записи
файлов. Правда, для этой памяти характерны довольно медленное чтение
произвольного байта и отсутствие возможности побайтной записи, но
приложениям этих карт такая возможность и не требуется, поскольку они
ориентированы на блочный обмен. Вид карт приведен на рис. 1.10. Карты на 5
В выпускаются объемом 16 и 32 Мбит (2 и 4 Мбайт). Карты на 3,3 В
выпускаются объемом 16, 32 или 64 Мбит (2, 4, 8 Мбайт). Для карт
SmartMedia выпускают простые переходные адаптеры на слот PC Card Type
II. Появились даже устройства FlashPath™ для считывания этих карт в
обычном дисководе(!) 1,44 Мбайт (см. п. 7.4).
Площадка защиты записи

а 6
Рис. 1.10. Карты SmartMedia: а— питание 5 В; б—
питание 3,3 В

Вам также может понравиться