Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
!Ответы по аппаратке.doc
Скачиваний:
2
Добавлен:
19.09.2019
Размер:
877.06 Кб
Скачать

21. Шина рсі. Протокол обміну по шині рсі.

Шина 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 (декабрь 1998 г.), которая уточняет и разъяс¬няет некоторые положения предшествующей версии 2.1. Данное описание осно¬вано на тексте стандарта «PCI Local Bus Specification. Revision 2.2» от 18.12.1998, опубликованном организацией PCI SIG (Special Interest Group).

Поначалу шина 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 (см. п. 12.5.10). Драйвер также может определить и номер запроса прерывания, который используется устройством.

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

В каждой транзакции (обмене по шине) участвуют два устройства — инициатор (initiator) обмена, он же мастер (master) или ведущее устройство, и целевое (target) устройство (ЦУ), оно же ведомое (slave). Шина PCI все транзакции трак¬тует как пакетные: каждая транзакция начинается фазой адреса, за которой мо¬жет следовать одна или несколько фаз данных.

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

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

изводится, когда ЦУ неспособно своевременно выдать или принять оче¬редную порцию данных пакета.

ш Отказ {Target-Abort) — сигнал STOP# вводится одновременно со снятием DEVSEL# (в предыдущих случаях во время появление сигнала STOP# сиг¬нал DEVSEL# был активен). После этого данные уже не передаются. Отказ вводится, когда ЦУ обнаруживает фатальную ошибку или иные условия, по которым оно уже никак не сможет обслужить данный запрос.

Использование трех типов прекращения вовсе не обязательно для всех ЦУ, однако любой мастер должен быть готов к завершению транзакций по любой из этих причин.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]