Загрузка...

Шина PCI


Шина PCI – набор сигнальных линий, непосредственно соединяющих интерфейсные выводы группы устройств. В системе может присутствовать несколько шин PCI, соединенных мостами PCI. Мосты электрически отделяют интерфейсные сигналы одной шины от другой, соединяя их логически. Главный мост соединяет главную шину с ядром системы – процессором и памятью. Каждая шина имеет свой номер. Главная шина имеет нулевой номер, далее нумерация идет последовательно.

В каждой транзакции (обмене по шине) участвуют два устройства – инициатор обмена, он же ведущее (мастер) устройство и целевое устройство, оно же ведомое (slave). Шина PCI все транзакции трактует как пакетные: каждая транзакция начинается фазой адреса, за которой может следовать одна или несколько фаз данных. Состав и назначение интерфейсных сигналов приведены в таблице 5.

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

Сигнал

Назначение

AD [31:0]

Мультиплексорная шина адреса/данных. В начале транзакции передается адрес, в последующих тактах – данные.

C/BE[3:0]#

команда/разрешение обращения к байтам

FRAME#

Кадр. Введением сигнала отмечается начало транзакции, снятие сигнала указывает на последний цикл передачи данных в транзакции.

DEVSEL#

Устройство выбрано.

IRDY#

Готовность ведущего устройства к обмену.

TRDY#

Готовность целевого устройства к обмену данными

STOP#

Запрос целевого устройства на остановку текущей транзакции

LOCK#

Сигнал захвата шины для обеспечения целостного выполнения операции.

REQ#

Запрос от ведущего устройства на захват шины.

GNT#

Предоставление ведущему устройству управления шиной.

PAR

Общий бит паритета

PERR#

Сигнал об ошибке паритета

PME#

Сигнал о событиях, вызывающих изменение режимов потребления.

CLKRUN#

Шина работает на номинальной частоте синхронизации

PRSNT [2;1]

Индикатор присутствия платы, кодируемый запрос потребления мощности.

RST#

Сброс всех регистров в начальное состояние

IDSEL

Выбор устройства в циклах конфигурационного считывания и записи

SERR#

Системная ошибка

REQ64#

Запрос на 64-битный обмен.

АСК64#

Подтверждение 64-битного обмена

INTA, INTB

Линии запросов прерываний.

CLK

Тактовая частота шины.

SDONE

Сигнал завершенности цикла слежения для текущей транзакции

SBO#

Попадание текущего обращения к памяти абонента шины в модифицированную строку кэша.

TCK

Синхронизация тестового интерфейса JTAG

TDI

Входные данные тестового интерфейса JTAG

TDO

Выходные данные тестового интерфейса JTAG

TMS

Выбор режима для тестового интерфейса JTAG

TRST

Сброс тестовой логики

В каждый момент времени шиной может управлять только одно ведущее устройство, получившее на это право от арбитра. Каждое ведущее устройство имеет пару сигналов – REQ# для запроса и управления шиной и GNT# для подтверждения предоставления управления шиной. Арбитражем запросов на использование шины занимается специальный узел, входящий в чипсет системной платы. Схема приоритетов (фиксированный, циклический, комбинированный) определяется программирование арбитра. Для адреса и данных используются общие мультиплексированные линии AD. Четыре мультиплексированные линии C/BE[3:0]# обеспечивает кодирование команд в фазе адреса и разрешения байт в фазе данных. В начале транзакции ведущее устройство активизирует сигнал FRAME#, по шине AD передает целевой адрес, а по линии C/BE# – информацию о типе транзакции. Адресованное устройство отвечает сигналом DEVSEL#. Ведущее устройство указывает на свою готовность к обмену данными сигналом IRDY#. Когда к обмену данными будет готово целевое устройство, оно установит сигнал ТRDY#. Данные по шине AD передаются только при одновременном наличии сигналов IRDY# и ТRDY#. С помощью этих сигналов ведущее устройство и целевое согласуют свои скорости, вводя такты ожидания.

Шина PCI

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

Шина позволяет уменьшать мощность, потребляемую устройствами, ценой снижения производительности, применяя пошаговое переключение линий AD и PAR. Здесь возможны два варианта.

1. Плавный шаг – начало формирования сигналов слаботочными формирователями за несколько тактов до введения сигнала-квалификатора действительной информации. За эти несколько тактов сигналы дойдут до требуемого значения при меньшем токе.

2. Дискретный шаг – нормальные формирователи срабатывают не все сразу, а группами побайтно, в каждом такте по группе. При этом снижаются броски тока, поскольку одновременно переключается меньше формирователей.

Протокол квитирования обеспечивает надежность обмена – ведущее устройство всегда получает информацию об отработке транзакции целевого устройства. Средством повышения надежности является применение контроля паритета. При обнаружении ошибки целевого устройства вырабатывается сигнал PERR#. В подсчете паритета при передаче данных учитываются все байты, включая и недействительные. Состояние бит, даже в недействительных байтах данных, должно оставаться стабильным. Каждая транзакция на шине должна быть завершена планово или прекращена, при этом шина должна перейти в состояние покоя.

Загрузка...