Лекции.ИНФО


Электрические характеристики линий ISA



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

Выходные каскады передатчиков магистральных сигналов УС должны выдавать ток низкого уровня не меньше 24 мА (это отно­сится ко всем типам выходных каскадов), а ток высокого уровня—не меньше 3 мА (для выходов с тремя состояниями и ТТЛ).

Входные каскады приемников магистральных сигналов должны потреблять входной ток низкого уровня не больше 0,8 мА, а входной ток высокого уровня — не больше 0,04 мА.

Кроме этого необходимо учитывать, что максимальная длина печатного проводника от контакта магистрального разъема до вывода микросхемы не должна превышать 65 миллиметров, а максимальная емкость относительно земли по каждому кон­такту магистрального разъема не должна быть больше 20 пФ.

К некоторым линиям магистрали подключены нагрузочные ре­зисторы, идущие на шину питания +5 В. К линиям IORD#, IOWR#, MemRD#, MemWR#, SMemRD#, SMemWR#, I/OСНК подключены резисторы 4,7 кОм, к линиям -I/OCS16#, MCS16#, REFRESH#, MASTER#, OWS# - 300 Ом, а к линии I/OСНRDY — 1 кОм. Кроме того к некоторым линиям магистра­ли подключены последовательные резисторы: к линиям IORD#, IOWR#, MemRD#, MemWR#, SMemRD#, SMemWR#, и Osc - рези­сторы номиналом 22 Ом, а к линии SYSCLK (Bclock) — 27 Ом.

 

Шина МСА

МСА (Micro Channel Architecture) — микроканальная архитектура — была введена в пику конкурентам фирмой IBM для своих компьютеров PS/2, начиная с модели 50. Шина МСА абсолютно несовместима с ISA/EISA и другими адаптерами. Состав управляющих сигналов, протокол и архитектура ориентированы на асинхронное функционирование шины и процессора, что снимает проблемы согласования скоростей процессора и периферийных устройств. Адаптеры МСА широко используют Bus-Mastering, все запросы идут через устройство САСР (Central Arbitration Control Point). Приоритеты (в порядке убывания): регенерация, DMA, Bus-Master, CPU (только по NMI он получает управление немедленно). Архитектура позволяет эффективно и автоматически конфигурировать все устройства программным путем (в МСА PS/2 нет ни одного переключателя).

Слоты МСА имеют контакты с шагом 0,05 дюйма, их состав на системной плате зависит от модели компьютера.

16-битный слот (рис. 2.30, а) использует контакты А1/В1-А45/В45 для 8-битных операций и А48/В48-А58/В58 для 16-битных. Пропущенные номера 46, 47 — ключ для всех слотов.

32-битный слот (рис. 2.30, б) имеет удлиненную вторую секцию с контактами А48/В48-А89/В89.

Перед контактами А1/В1 возможно одно из двух расширений за счет удлинения первой секции (рис. 2.30 б):

АМ1/ВМ1-АМ4/ВМ4 — для плат расширения памяти;

 

Рис. 2.30. Слоты МСА: а — 16-битный, б — 32-битный, в — 16-битный с расширением

 

AV1/BV1-AV10/BV10 — для плат видеоадаптеров, позволяет использовать общие цепи встроенного в системную плату VGA-адаптера, теоретически удешевляя расширение видеосистемы. По составу сигналов видеорасширение близко к разъему VGA Auxiliary Video Connector или VESA Feature Connector.

При всей прогрессивности архитектуры (относительно ISA) шина МСА не пользуется популярностью из-за узости круга производителей МСА-устройств и полной их несовместимости с массовыми ISA-системами. Однако МСА еще находит применение в мощных файл-серверах, где требуется обеспечение высоконадежного производительного ввода/вывода.

 

Локальная шина VLB

Шины ввода/вывода ISA, MCA, EISA имеют низкую производительность, обус­ловленную их местом в структуре PC. Современные приложения (особенно графические) требуют существенного повышения пропускной способности, которое могут обеспечить современные процессоры. Одним из решений проблемы по­вышения пропускной способности было применение в качестве шины подключения периферийных устройств локальной шины процессора 486. Шину процессора использовали как место подключения встроенной периферии сис­темной платы (контроллер дисков, графического адаптера).

VLB (VESA Local Bus) — стандартизованная 32-битная локальная шина, практически представляет собой сигналы локальной шины процессора 486, выведенные на дополнительные разъемы системной платы. Шина сильно ориентирована на 486 процессор, хотя возможно ее использование и с процессорами класса 386. Для процессоров Pentium была принята спецификация 2.0, в которой разрядность шины данных увеличена до 64, но распространения не получила. Аппаратные преобразователи шины новых процессоров в шину VLB, будучи искусственными «наростами» на шинной архитектуре, не прижились, и VLB дальнейшего развития не получила.

Конструктивно VLB-слот аналогичен 16-битному обычному МСА-слоту, но является расширением системного слота шины ISA-16, EISA или МСА, располагаясь позади него вблизи от процессора. Из-за ограниченной нагрузочной способности шины процессора больше трех слотов VLB на системной плате не устанавливают. Максимальная тактовая частота шины — 66 МГц, хотя надежнее шина работает на частоте 33 МГц. При этом декларируется пиковая пропускная способность 132 Мбайт/с (33 МГц´4 байта), но она достигается только внутри пакетного цикла во время передач данных. Реально в пакетном цикле передача 4´4 = 16 байт данных требует 5 тактов шины, так что даже в пакетном режиме пропускная способность составляет 105,6 Мбайт/с, а в обычном режиме (такт на фазу адреса и такт на фазу данных) — всего 66 Мбайт/с, хотя это и значительно больше, чем у ISA. Жесткие требо­вания к временным характеристикам процессорной шины при большой нагрузке (в том числе, и микросхемами внешнего кэша) могут привести к неустойчивой работе: все три VLB-слота могут использоваться только на частоте 40 МГц, при нагруженной системной плате на 50 МГц может работать только один слот. Шина в принципе допускает и применение активных (Bus-Master) адаптеров, но арбитраж запросов возлагается на сами адаптеры. Обычно шина допускает установку не более двух Bus-Master адаптеров, один из которых устанавливается в «Master»-слот.

Шину VLB обычно использовали для подключения графического адаптера и контроллера дисков. Иногда встречаются системные платы, у которых в описании указано, что они имеют встроенный графический и дисковый адаптер с шиной VLB, но самих слотов VLB нет. Это означает, что на плате установлены микросхемы указанных адаптеров, предназначенные для подключения к шине VLB. Такая неявная шина по производительности, естественно, не уступает шине с явными слотами. С точки зрения надежности и совместимости это даже лучше, поскольку проблемы совместимости карт и системных плат для шины VLB стоят особенно остро.

 

Шина РСI

PCI (Peripheral Component Interconnect) local bus — шина соединения периферийных компонентов. Называясь локальной, эта шина занимает особое место в современной РС-архитектуре (mezzanine bus), являясь мостом между системной шиной процессора (локальной шиной) и шиной ввода/вывода ISA/EISA или МСА. Эта шина разрабатывалась в расчете на Pentium-системы, но хорошо сочетается и с 486 процессорами, а также с процессорами серий, отличных от Intel x86. Шина PCI является четко стандартизованной высокопроизводительной и надежной шиной расширения ввода-вывода. В настоящее время действует спецификация PCI-2.1.

При частоте шины 20-33 МГц теоретическая максимальная скорость достигает 132/264 Мбайт/с для 32/64 бит.

Шина является синхронной — фиксация всех сигналов выполняется по поло­жительному перепаду (фронту) сигнала CLK. Версия 2.1 допускает частоту до 66 МГц при согласии всех абонентов шины. В каждой транзакции (обмене по шине) участвуют два устройства — инициатор обмена (Initiator или Master) и целевое устройство (Target или Slave).

Шина PCI все транзакции трактует как пакетные: каждая транзакция начинается фазой (циклом) адреса, за которой может следовать одна или несколько фаз данных. Для адреса и данных используются общие мультиплексированные линии AD. Четыре мультиплексированные линии С/ВЕ[3:0] используются для кодирования команд в фазе адреса и разрешения байт в фазе данных. В начале транзакции инициатор активизирует сигнал FRAME#, по шине AD передает целе­вой адрес, а по линиям С/ВЕ# информацию о типе транзакции (команде). Адресованное целевое устройство отзывается сигналом DEVSEL#, после чего инициатор может указать на свою готовность к обмену данными сигналом IRDY#. Когда к обмену данными будет готово и целевое устройство, оно установит сигнал TRDY#. Данные по шине AD могут передаваться только при одновременном наличии сигналов IRDY# и TRDY#. С помощью этих сигналов инициатор и целевое устройство согласуют свои скорости, вводя такты ожидания. На рис. 2.31 приведена временная диаграмма обмена, в которой и инициатор, и целевое устройство вводят такты ожидания. Если бы они оба ввели сигналы готовности в конце фазы адреса и не снимали их до конца обмена, то в каждом такте после фазы адреса передавались бы по 32 бита данных, что и обеспечило бы выход на предельную производительность обмена.

 

Рис. 2.31. Цикл обмена на шине PCI

 

Количество фаз (циклов) данных в пакете заранее не определено, но перед последним циклом инициатор обмена при введенном сигнале IRDY# снимает сигнал FRAME#. После последней фазы данных инициатор снимает сигнал IRDY# и шина переходит в состояние покоя (PCI Idle) — оба сигнала FRAME# и IRDY# находятся в пассивном состоянии. Максимальное количество циклов данных в пакете может быть неявно ограничено таймером, определяющим максимальное время, в течение которого инициатор может пользоваться шиной. Инициатор завершает транзакцию по одной из трех причин:

· Нормальное завершение выполняется по окончании обмена данными.

· Завершение по тайм-ауту (Time-out) происходит, когда во время транзакции у инициатора отбирают право на управление шиной (снятием сигнала GNT#) или когда истекает время, указанное в его таймере MLT (целевое устройство слишком медленное или начатая транзакция слишком длинная).

· Транзакция отвергается (Abort), когда в течение заданного времени ини­циатор не получает ответа целевого устройства (DEVSEL#).

Транзакция может быть прекращена и по инициативе целевого устройства, для этого оно может ввести сигнал STOP#. Возможны три основных типа прекращения:

· Отключение (Disconnect) — сигнал STOP# вводится во время активности TRDY#. В этом случае транзакция завершается после фазы данных.

· Отключение с повтором (Disconnect/Retry) — сигнал STOP# вводится при пассивном состоянии TRDY#, и последняя фаза данных отсутствует. Такое завершение является указанием инициатору на необходимость повтора транзакции.

· Отказ (Abort) — сигнал STOP# вводится одновременно со снятием DEVSEL# (в предыдущих случаях во время появление сигнала STOP# сигнал DEVSEL# был активен). В этом случае последняя фаза данных тоже отсутствует, но повтор не запрашивается.

Протокол квитирования обеспечивает надежность обмена — инициатор всегда получает информацию об отработке транзакции целевым устройством. Средством повышения надежности (достоверности) является применение контроля паритета: линии AD[31:0] и С/ВЕ#[3:0] и в фазе адреса, и в фазе данных защищены битом паритета PAR (количество единичных бит этих линий, включая PAR, должно быть четным). Действительное значение PAR появляется на шине с задержкой в один такт относительно линий АD и С/ВЕ#. При обнаружении ошибки целевым устройством со сдвигом еще на один такт вырабатывается сигнал PERR#. В подсчете паритета при передаче данных учитываются все байты, включая и недействительные (отмеченные высоким уровнем сигнала C/BE#i). Состояние бит и недействительных байт данных должно оставаться стабильным во время фазы данных.

Арбитражем запросов на использование шины занимается специальный функциональный узел, входящий в состав чипсета системной платы. Каждое устройство-инициатор имеет пару сигналов — REQ# для запроса на управление шиной и GNT# — подтверждение предоставления управления шиной. Схема приоритетов (фиксированный, циклический, комбинированный) определяется програм­мированием арбитра.

Каждое устройство — потенциальный инициатор обмена (PCI Master) имеет собственный программируемый таймер MLT (Master Latency Timer), определяющий максимальное количество тактов шины, допустимое для одной транзакции. Программированием его значения при конфигурировании устройств осуществляется распределение полосы пропускания шины между абонентами шины.

Каждое целевое устройство имеет инкрементный механизм слежения за длительностью циклов (Incremental Latency Mechanism), который не позволяет интервалу между соседними фазами данных в пакете превышать 8 тактов шины. Если целевое устройство не успевает работать в таком темпе, оно обязано останавливать транзакцию.

Адресация памяти, портов и конфигурационных регистров различна. Байты шины AD, несущие действительную информацию, выбираются сигналами С/ВЕ[3:0] в фазах данных (внутри пакета эти сигналы могут менять состояние). В циклах обращения к памяти адрес, выровненный по границе двойного слова, передается по линиям AD[31:2], линии AD[1:0] задают порядок чередования адресов в пакете:

· 00 — линейное инкрементирование;

· 01 — чередование адресов с учетом длины строки кэш-памяти ;

· lx — зарезервировано.

В циклах обращения к портам ввода/вывода для адресации любого байта используются все линии AD[31:0]. В циклах конфигурационной записи/считывания устройство выбирается индивидуальным сигналом IDSEL#, конфигурационные регистры выбираются двойными словами, используя линии AD[7:2], при этом AD[1:0]=00. Сигнал выборки IDSEL# воспринимается абонентом PCI только в фазе адреса, поэтому обычно в качестве него используют старшие биты адреса с позиционным кодированием адреса устройства.

Команды шины PCI определяются значениями бит С/ВЕ# в фазе адреса в соответствии с таблицей 2.4.

В команде подтверждение прерывания контроллер прерываний передает вектор прерывания по шине AD.

Специальный цикл декодируется содержимым линий AD[15:0] и используется для указания на отключение (Shutdown), останов (Halt) процессора или специфические функции процессора, связанные с кэшем и трассировкой. Этим состояниям соответствуют коды 0000, 0001 и 0002; коды 0003-FFFFh зарезервированы.

 

Таблица 2.4. Декодирование команд шины PCI

С/ВЕ[3:0] Тип команды
Interrupt Acknowledge — подтверждение прерывания
Special Cycle — специальный цикл
I/O Read — чтение порта ввода/вывода
I/O Write — запись в порт ввода/вывода
Резерв
Резерв
Memory Read — чтение памяти
Memory Write — запись в память
Резерв
Резерв
Configuration Read — конфигурационное считывание
Configuration Write — конфигурационная запись
Multiple Memory Read — множественное чтение памяти
Dual Address Cycle — двухадресный цикл
Memory-Read Line — чтение строки памяти
Memory Write and Invalidate — запись с инвалидацией

 

В командах чтения и записи ввода/вывода линии AD содержат адрес байта, причем декодированию подлежат и биты AD0 и AD1 (несмотря на то, что име­ются сигналы ВЕх#). Порты PCI могут быть 8- или 16-битными. Для адресации портов на шине PCI доступны все 32 бита адреса, но процессоры х86 могут использовать только младшие 16 бит. Кроме того, на адресное пространство PCI влияет и 10-битное декодирование адреса, принятое в традиционной шине ISA, в результате чего каждый адрес порта на шине ISA имеет 64 псевдонима, смещенных друг от друга на 1 К. Порты с адресами 0CF8 и 0CFC зарезервированы под регистры адреса и данных для доступа к конфигурационному пространству. Обращение к порту данных приведет к генерации шинного цикла конфигурационного чтения или записи по предварительно записанному адресу.

В командах чтения и записи памяти шина AD содержит адреса двойных слов, и линии AD0, AD1 не должны декодироваться — на конкретные байты указывают сигналы С/ВЕ[3:0]#.

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

Множественное чтение памяти используется для чтения больших блоков памяти без кэширования.

Двухадресный цикл применяется, когда физическая шина имеет всего 32 бита адреса, а требуется передача с 64-битной адресацией. В этом случае младшие 32 бита адреса передаются в цикле данного типа, а за ним следует обычный цикл, определяющий тип обмена и несущий старшие 32 бита адреса. Шина PCI допускает 64-битную адресацию и портов ввода/вывода, правда, для процессо­ров х86 это бесполезно, но есть и другие процессоры и платформы, использу­ющие PCI.

Чтение строки памяти используется для чтения более чем двух 32-битных блоков данных (обычно чтение до конца строки кэша). В таком случае этот цикл обеспечивает обмен, более эффективный, чем цепочка обычных пакетных чтений.

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

Слоты PCI с шагом 0,05 дюйма расположены несколько дальше от задней панели, чем ISA/EISA-MCA. В отличие от адаптеров остальных шин, компо­ненты карт PCI расположены на левой поверхности плат. По этой причине в PC-совместимых компьютерах крайний PCI-слот обычно разделяет использо­вание посадочного места адаптера с соседним ISA-слотом (Shared slot). Шина имеет версии с питанием 5 В, 3,3 В и универсальную (с переключением линий +V I/O с 5 В на 3,3 В). Ключами являются пропущенные ряды контактов 12, 13 и 50, 51. Для 5-В слота ключ расположен на месте контактов 50, 51; для 3-В — 12, 13; для универсального — два ключа: 12, 13 и 50, 51. Ключи не позволяют установить карту в слот с неподходящим напряжением питания. 32-битный слот заканчивается контактами А62/В62, 64-битный — А94/В94. Назначение вы­водов универсального разъема приведено в табл. 2.5, назначение сигналов — в табл. 2.6..

 

Таблица 2.5. Разъемы шины PCI

Ряд В № Ряд A Ряд В № Ряд A
-12B 1 TRST# GND/M66EN1 49 AD 9
TCK 2 +12 В GND/Ключ 5В 50 GND/Ключ 5 В
GND 3 TMS GND/Ключ 5В 51 GND/Ключ 5 В
TDO 4 TDI AD 8 52 C/BEO#
+5 В 5 +5 В AD 7 53 +3,3 В
+5 В 6 INTRA# +3,3 В 54 AD 6
INTRB# 7 INTRC# AD 5 55 AD 4
INTRD# 8 +5 В AD 3 56 GND
PRSNT 1# 9 Reserved GND 57 AD 2
Reserved 10 +V I/O AD 1 58 AD 0
PRSNT 2# 11 Reserved +VI/0 59 +V I/O
GND/Ключ 3,3 В 12 GND/Ключ 3,3 В ACK64# 60 REQ64#
GND/Ключ 3,3 В 13 GND/Ключ 3,3 В +5 В 61 +5 В
Reserved 14 Reserved +5 В 62 +5 В
GND 15 RST# Конец 32-битного разъема
Clock 16 +V I/O Reserved 63 GND
GND 17 GNT# GND 64 С/ВЕ7#
REQ# 18 GND С/ВЕ6# 65 С/ВЕ5#
+VI/0 19 Reserved С/ВЕ4# 66 +V I/O
AD 31 20 AD 30 GND 67 PAR64
AD 29 21 +3,3 В AD 63 68 AD 62
GND 22 AD 28 AD 61 69 GND
AD 27 23 AD 26 +VI/0 70 AD 60
AD 25 24 GND AD 59 71 AD 58
+3,3 В 25 AD 24 AD 57 72 GND
С/ВЕЗ# 26 IDSEL# GND 73 AD 56
AD 23 27 +3,3 В AD 55 74 AD 54
GND 28 AD 22 AD 53 75 +V I/O
AD 21 29 AD 20 GND 76 AD 52
AD 19 30 GND AD 51 77 AD 50
+3.3 В 31 AD 18 AD 49 78 GND
AD 17 32 AD 16 +VI/0 79 AD 48
С/ВЕ2# 33 +3,3 В AD 47 80 AD 46
GND 34 FRAME# AD 45 81 GND
IRDY# 35 GND GND 82 AD 44
+3,3 В 36 TRDY# AD 43 83 AD 42
DEVSEL# 37 GND AD 41 84 +V I/O
GND 38 STOP# GND 85 AD 40
LOCK# 39 +3,3 В AD 39 86 AD 38
PERR# 40 SDONE# AD 37 87 GND
+3,3 В 41 SBOFF# +VI/0 88 AD 36
SERR# 42 GND AD 35 89 AD 34
+3,3 В 43 PAR AD 33 90 GND
С/ВЕ1# 44 AD 15 GND 91 AD 32
AD 14 45 +3,3 В Reserved 92 Reserved
GND 46 AD 13 Reserved 93 GND
AD 12 47 AD 11 GND 94 Reserved
AD 10 48 GND Конец 64-битного разъема
         

1 Сигнал M66EN определен только начиная с PCI 2.1.

 

Таблица 2.6. Сигналы шины PCI

Сигнал Назначение
AD[31:0] Address/Data — мультиплексированная шина адреса/данных. Адрес передается в начале транзакции, в последующих тактах передаются данные
С/ВЕ[3:0]# Command/Byte Enable — команда/разрешение обращения к байтам. Команда, опре­деляющая тип очередного цикла шины (чтение/запись памяти, ввод/вывод или конфигурационное чтение-запись, подтверждение прерывания и другие), задается четырехбитным кодом в фазе адреса
FRAME# Кадр. Введением сигнала отмечается начало транзакции (фаза адреса), снятие сигнала указывает на то, что последующий цикл передачи данных является пос­ледним в транзакции
DEVSEL# Device Select — устройство выбрано (ответ целевого устройства на адресованную к нему транзакцию)
IRDY# Initiator Ready — готовность инициатора к обмену данными
TRDY# Target Ready — готовность целевого устройства к обмену данными
STOP# Запрос целевого устройства к инициатору на останов текущей транзакции
LOCK# Используется для установки, обслуживания и освобождения захвата ресурса на PCI
REQ[3:0]# Request — запрос от PCI-мастера на захват шины (для слотов 3:0)
GNT[3:0]# Grant — предоставление мастеру управления шиной
PAR Parity — общий бит паритета для линий AD[31:0] и С/ВЕ[ЗЮ]
PERR# ParityError — сигнал об ошибке паритета (от устройства, ее обнаружившего)
RST# Reset — сброс всех регистров в начальное состояние
IDSEL# Initialization Device Select — выбор устройства в циклах конфигурационного считы­вания и записи
SERR System Error — системная ошибка, активизируется любым устройством PCI и вызывает NMI
REQ64# Request 64 bit — запрос на 64-битный обмен
АСК64# Подтверждение 64-битного обмена
INTRA# INTRB# INTRC# INTRD# Interrupt А, В, С, D — линии запросов прерывания, циклически сдвигаются в слотах и направляются на доступные линии IRQ. Запрос по низкому уровню допускает разделяемое использование линий
CLK Clock — тактовая частота шины, должна лежать в пределах 20—33 МГц, в PCI 2.1 допустима до 66,6 МГц
M66EN 66MHzEnable — разрешение частоты синхронизации до 66 МГц, если все абоненты ее допускают
SDONE Snoop Done — сигнал завершенности цикла слежения для текущей транзакции. Низкий уровень указывает на незавершенность цикла слежения за когерентностью памяти и кэша. Необязательный сигнал, используется только абонентами шины с кэшируемой памятью
SBO# Snoop Backoff — попадание текущего обращения к памяти абонента шины в модифицированную строку кэша. Необязательный сигнал, используется только абонентами шины с кэшируемой памятью при алгоритме обратной записи (WB)
TCK Test Clock — синхронизация тестового интерфейса JTAG
TDI Test Data Input — входные данные тестового интерфейса JTAG
TDO Test Data Output — выходные данные тестового интерфейса JTAG
TMS Test Mode Select — выбор режима для тестового интерфейса JTAG
TRST Test Logic Reset — сброс тестовой логики

 

На одной шине PCI может быть не более четырех устройств (следовательно, и слотов). Для подключения шины PCI к другим шинам применяются специальные аппаратные средства — мосты шины PCI (PCI Bridge). Главный мост (Host Bridge) используется для подключения PCI к системной шине (шине процессора или процессоров). Одноранговый мост (Peer-to-Peer Bridge) используется для соединения двух шин PCI. Две и более шины PCI применяются в мощных серверных платформах — дополнительные шины PCI позволяют увеличить количество подключаемых устройств. Для подключения шин ISA/EISA используются специальные мосты, входящие в чипсеты большинства системных плат. Каждый мост программируется — ему указываются диапазоны адресов пространств памяти и ввода/вывода, отведенные абонентам его шин. Если адрес целевого устройства текущей транзакции на одной шине (стороне) моста относится к шине противоположной стороны, мост перенаправляет транзакцию на соответствующую шину и выполняет действия по согласованию протоколов этих шин. Таким образом, совокупность мостов, расположенных вокруг шины PCI, выполняет маршрутизацию (routing) обращений по всем связанным шинам. В общем случае считается, что устройство с конкретным адресом может присутствовать только на одной из шин данного компьютера, а на каком именно, «знают» запрограммированные мосты. Решать задачу маршрутизации призван и сигнал DEVSEL#, играющий важную роль в протоколе шины PCI. Обращения, не востребованные абонентами PCI, обычно перенаправляются на шину (E)ISA.

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

С мостами PCI/(E)ISA связано понятие VGA Palette Snooping, которое обеспечивает исключение из правила однозначной маршрутизации обращений. Графическая карта в компьютере с шиной PCI обычно устанавливается на шину PCI. На карте VGA имеются регистры палитр (Palette Registers), приписанные к пространству ввода/вывода. Если графическая система содержит еще и карту смешивания сигналов графического адаптера с сигналом «живого видео», перехватывая двоичную информацию о цвете текущего пиксела по шине VESA Feature Connector (снимаемую до регистра палитр), цветовая гамма будет определяться регистром палитр, размещенным на этой дополнительной карте. Именно здесь и возникает ситуация, когда операция записи в регистр палитр должна отрабатываться одновременно и в графическом адаптере (на шине PCI), и в карте видеорасширения, которая часто размещается на шине ISA. Для обеспечения этой возможности в BIOS Setup может присутствовать опция PCI VGA Palette Snoop. При ее разрешении запись в порты ввода/вывода по адресу регистра палитр будет вызывать транзакцию как на шине PCI, так и на шине (E)ISA, чтение же по этим адресам будет выполняться только на шине PCI. Реализация такой возможности может возлагаться на графическую карту PCI. Для этого она во время записи в регистр палитр данные фиксирует, но сигналы квитирования DEVSEL# и TRDY# не вырабатывает, в результате чего мост распространяет этот неопознанный запрос на шину (E)ISA. В иных реализациях мосту явно указывают на данное исключение, и он сам распространяет запись в регистры палитр на шину (E)ISA.

Автоконфигурирование устройств (выбор адресов, запросов прерываний) поддерживается средствами BIOS и ориентировано на технологию Plug and Play. Стандарт PCI определяет для каждого слота конфигурационное пространство размером до 256 восьмибитных регистров, не приписанных ни к пространству памяти, ни к пространству ввода/вывода. Доступ к ним осуществляется по специальным циклам шины Configuration Read и Configuration Write, вырабатываемым контроллером при обращении процессора к регистрам контроллера шины PCI, расположенным в его пространстве ввода/вывода. После аппаратного сброса (или по включении питания) устройства PCI не отвечают на обращения к пространству памяти и ввода/вывода, они доступны только для операций конфи­гурационного считывания и записи. В этих операциях устройства выбираются по индивидуальным сигналам IDSEL#, устройства сообщают о потребностях в ресурсах и возможных диапазонах их перемещения. После распределения ресурсов, выполняемого программой конфигурирования (во время POST), в устройства записываются параметры конфигурирования, и только после этого к ним становится возможным доступ по командам обращения к памяти и портам ввода/вывода.

Для ПЗУ расширения BIOS, установленных на картах PCI, принят стандарт, несколько отличающийся от традиционных дополнительных модулей ROM BIOS. Поскольку шина PCI используется не только для PC-совместимых компьютеров, в ПЗУ карты может храниться несколько модулей с различными программными кодами. Тип платформы (процессора) указывается в заголовке модуля и при инициализации BIOS компьютера активизирует лишь тот, который предназначен для данной платформы. Такой механизм позволяет, например, один и тот же графический адаптер устанавливать и в IBM PC, и в совсем на него не похожий компьютер Power PC.

В состав шины PCI введены сигналы для тестирования адаптеров по интерфейсу JTAG. На системной плате эти сигналы не всегда задействованы, но могут и организовывать логическую цепочку тестируемых адаптеров.

Шина PCI является второй (после ISA) по популярности применения. Некоторые фирмы для этой шины выпускают карты прототипы, но, конечно же, доукомплектовать их периферийным адаптером или устройством собственной разработки гораздо сложнее, чем карту ISA. Здесь сказываются и более сложные протоколы, включая конфигурирование, и более высокие частоты (частота шины ISA - 8 МГц, PCI - 33/66 МГц).

Слот PCI достаточен для подключения адаптера (в отличие от VLB), на системной плате он может сосуществовать с любой из шин ввода/вывода и даже с VLB (хотя в этом и нет необходимости). Иногда на системной плате позади разъема шины PCI одного из слотов имеется небольшой разъем Media Bus, на который выводятся сигналы обычной шины ISA. Он предназначен для обеспечения возможности размещения на графическом адаптере PCI недорогого чипсета звуковой карты, предназначенного для шины ISA.

Для устройств промышленного назначения в начале 1995 года был принят стандарт Compact PCI. Шина Compact PCI (cPCI) разрабатывалась на основе спецификации PCI версии 2.1. От обычной PCI эта шина отличается большим количеством поддерживаемых слотов для одной шины: 8 против 4. В связи с этим появились новые 4 пары сигналов запросов и предоставления управления шиной. Шина поддерживает 32-битные и 64-битные обмены (с индивидуальным разрешением байт). При частоте шины 33 МГц максимальная пропускная способность составляет 133 Мбайт/с для 32 бит и 266 Мбайт/с для 64 бит (в середине пакетного цикла). Возможна работа и на частоте 66 МГц, при этом производительность удваивается. Шина поддерживает спецификацию PnP — в ней работают все механизмы идентификации и автоконфигурирования, имеющиеся в PCI. Кроме того, в шине возможно применение географической адресации, при этом адрес модуля (на который он отзывается при программном обращении) определяется его положением в каркасе. Для этого на коннекторе J1 имеются контакты GA0...GA4, коммутацией которых на «землю» для каждого слота может быть задан его двоичный адрес. Географическая адресация позволяет переставлять однотипные модули, не заботясь о конфигурировании их адресов (хорошая альтернатива системе PnP — здесь модуль «встанет» всегда в одни и те же адреса, которые без физического вмешательства ничем не собьются). Конструктивно платы Compact PCI представляют собой еврокарты высотой 3U (100´160 мм) с одним коннектором (J1) или 6U (233´160 мм) с двумя коннекторами (J1 и J2). Коннекторы — 7-рядные штырьковые разъемы с шагом 2 мм между контактами, на кросс-плате — вилка, на модулях — розетки. Контакты коннекторов имеют разную длину: более длинные контакты цепей питания при установке модуля соединяются раньше, а при вынимании разъединяются позже, чем сигнальные. Такое решение закладывает основу для реализации возможности «горячей» замены модулей. Собственно шина использует только один коннектор (J1), причем в 32-битном варианте не полностью — часть контактов выделяются на использование по усмотрению пользователя. 64-битная шина ис­пользует коннектор полностью. Одно посадочное место на кросс-плате резервируется под контроллер шины, на который возлагаются функции арбитража и синхронизации. На его коннекторе шиной используется большее число контактов, чем на остальных. У больших плат коннектор J2 отдается на использование по усмотрению пользователя (разработчика), а между коннекторами J1 и J2 может устанавливаться 95-контактный коннектор J3. Конструкция коннекторов позволяет для J2 применять специфические модификации, в которых может, например, присутствовать разделяющий экран и механические ключи. В шине предусматривается наличие независимых источников питания +5В, +3,3В и ±12В.

На базе шины Compact PCI фирмой National Instruments разработана спецификация PXI (PCI extensions for Instrumentation — расширение PCI для инструментальных систем) в тех же конструктивах. В шине PXI часть контактов, определенных в Compact PCI как свободно используемые, предназначаются для дополнительных шин. Шина Trigger Bus (8 линий) звездообразно соединяет слот ее контроллера (первый после системного контроллера PCI) с остальными слотами. Эта шина позволяет осуществлять синхронизацию событий в разных модулях. Для прецизионной синхронизации имеется сигнал опорной частоты 10 МГц PXI_CLK, который звездообразно (с одинаковыми задержками распространения сигнала) разводится по слотам — такая точная синхронизация модулей зачастую требуется в измерительных системах. В PXI определены локальные шины, предназначенные для связи соседних пар слотов. Каждая локальная шина имеет 13 линий, которые могут использоваться как для цифровых, так и аналоговых (до 48 В) сигналов. Локальные шины объединяют смежные слоты попарно (исключая слот системного контроллера), образуя цепочку (Daisy chain). Кроме механических и электрических характеристик PXI определяет и программное обеспечение модулей: основной операционной системой принимается Windows NT/95, и модули должны поставляться с соответствующими драйверами. Это значи­тельно сэкономит время, необходимое для системной интеграции. Модули PXI совместимы с шиной Compact PCI, и наоборот — модули Compact PCI будут работать и в шине PXI. Однако все преимущества спецификации реализуются только при установке модулей PXI в шину PXI. Спецификация PXI как расширение Compact PCI сильно напоминает расширение VXI для шины VME.

 

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









Читайте также:

Последнее изменение этой страницы: 2016-03-22; Просмотров: 99;


lektsia.info 2017 год. Все права принадлежат их авторам! Главная