Организация магистрали в цифровой вычислительной машине, страница 5

5)  Количество фаз данных в транзакции заранее не определено. Перед последним тактом обмена инициатор снимает сигнал FRAME#, что является сигналом окончания транзакции.

6)  По окончании последнего такта оба устройства должны снять свои сигналы готовности, после чего транзакция считается завершенной

Транзакция может быть завершена и по инициативе целевого устройства – для этого на шине PCI имеется сингнал STOP#.

Особенность временных диаграмм на магистрали PCI – протокол квитирования – инициатор всегда получает информацию об отработке транзакции целевым устройством благодаря наличию сигналов DEVSEL#  и TRDY#  от целевого устройства.

Из изложенного должно быть ясно, что при длинном пакете и при отстутствии тактов ожидания скорость обмена стремится к величине «одно слово за такт», что при 32-разрядном обмене и при частоте 33 МГц дает 33*4=132 Мбайт/с, а при 64-разрядной шине данных и при частоте 66 МГц – 66*8=528 Мбайт/с.

Контроль достоверности передачи

Для контроля используется дополнительная линия четности PAR, которая защищает сигналы AD (32 линии) и C/BE# (4 линии). Сигнал на линии четности формируется таким образом, чтобы общее количество единичных битов на контролируемых линиях (включая и линию четности PAR) было бы четным. При сбое на одной из линий, четность нарушается, что бызывает появление активного уровня на линии магистрали PERR#.

Управление магистралью

Любое устройство, подключенное к магистрали PCI может быть Bus-Master-ом. Но оно должно выполнять все требования режимов и временных диаграмм, поэтому оно должно включать в свой состав сложную схемотехнику управления. См далее раздел «Что должно быть в ВНУ для подключения».

Связь магистрали PCI с другими магистралями в системе

(См. ранее цит. кн М.Гук, стр.445)

Данная магистраль PCI связана в системе с другими магистралями. Для этого применяются специальные узлы, называемые «мостами шины PCI» (PCI Bridge).

Главный мост (Host Bridge) – связывает PCI с магистралью процессора

Одноранговый мост (Peer-To-Peer Bridge) – для связи между собой двух или боле магистралей PCI

Специальный мост – для связи PCI с магистралью ISA, которая есть в большинстве современных системных плат, чтобы можно было использовать «старые» платы расширения (они кроме того, проще и дешевле).

«Мосты» программируются при инициализации и конфигурировании системы и «знают», какие адреса и запросы к какой магистрали относятся.

Автоконфигурирование устройств

Системные ресурсы, такие как порты ввода/вывода и линии запроса прерывания, на магистрали PCI распределяются автоматически. После системного сброса устройства, установленные на магистраль PCI не отвечают на обращения в адресное пространство памяти или ввода/вывода. Доступ к устройству возможен только через порты ввода/вывода контроллера PCI. Через эти порты системное ПО, записанное в BIOS системной платы с магистралью PCI после системного сброса: а) обращается к так называемому «конфигурационному пространству» каждого периферийного устройства, б) получает от него информацию о потребных ресурсах (адресах портов, запросах прерывания), в) производит распределение ресурсов, г) записывает параметры конфигурации в каждое из устройств. Только после этого к устройствам становится возможным доступ через порты ввода/вывода или через участки адресного пространства памяти.

Использование модулей стандарта PCI на других платформах

Поскольку PCI стандартизована и используется на разных платформах (в частности на Power PC), можно одну и ту же периферийную плату PCI использовать в разных компьютерах. Это поддерживается в BIOS многих периферийных плат – там есть несколько программных модулей, предназначенных для работы в разных компьютерах.

Поддержка обмена по прерываниям

Количество входов запроса

Оно определяется структурой магистрали PCI, на которой не может быть более 4 устройств. Магистраль имеет 4 радиальных входа запросов прерывания INTRA#, INTRB#, INTRC#, INTRD#,. Эти входы перенаправляются на стандартные запросы IRQn. Соответствие перенаправления выбирается при автоконфигурации после включения или «холодного» рестарта системы.

Еще одна хорошая особенность запросов прерываний магистрали PCI – активный уровень сигналов запроса – низкий. Это позволяет использовать один вход запроса несколькими устройствами с объединением сигналов запроса по «монтажному ИЛИ»

Свободные ресурсы в данной конфигурации.

На магистрали PCI распределение ресурсов выведено из-под опеки программиста или пользователя, и делается BIOS-ом автоматически во время инициализации

Поддержка прямого доступа к памяти

В спецификации PCI предусматривается возможность наличия в системе нескольких устройств-инициаторов. Каждое из таких устройств соединено парой сигналов REQ# (Request – запрос на управление магистралью) и GNT# (Grant – предоставление магистрали). Каждое устройство – инициатор должно иметь собственный программируемый таймер MLT (Master Latency Timer), определяющий максимально допустимое количество тактов в одной тразакции. При инициализации устройств на шине PCI можно задать этот параметр индивидуально для каждого устройства и тем самым задать распределение пропускной способности магистрали между абонентами. В компьютере с системной платой, имеющей магистраль PCI это делает программа POST при инициализации системы.

Конструктивное исполнение и возможности питания устройств

Разъем магистрали PCI – двухрядный и использует 62 пары контактов в 32-разрядном варианте или 94 пары в 64-разрядном. На разъеме имеются следующие напряжения питания: +5В, +3,3В, +12В, -12В.

Разновидности магистралей типа PCI

Для устройств промышленного назначения в 1995 году был принят стандарт Compact PCI. (См. МГ стр.446).

Что должно быть в ВНУ для подключения

Что (какая схемотехника) должно содержаться в периферийном устройстве, чтобы оно могло быть подключено к магистрали и обеспечивать обмен (при разных режимах, в частности по прерыванию и по ПДП).

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

На рисунке далее изображена структура подобного устройства фирмы Altera, выполненного на базе БИС Flex-логики. В ней можно выделить три функциональных части:

1)  Блок конфигурационных регистров (64 байта)

2)  Интерфейс целевого устройства

3)  Встроенный контроллер поддержки прямого доступа к памяти, включающий буферное ОЗУ объемом 64 байта (16 четырехбайтовых слов), а также интерфейсную управляющую логику, поддерживающую взаимодействие с периферийным устройством.

Включение данной БИС в состав периферийного устройства в полной мере решает вопрос его подключения к магистрали PCI.


Сопряжение с шиной PCI