Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпора ИПУ часть 2.doc
Скачиваний:
8
Добавлен:
29.08.2019
Размер:
3.7 Mб
Скачать

2.1.2. Сигналы, линии, шины (подмагистрали) интерфейса pci

Магистраль интерфейса PCI содержит следующие шины (подмагистрали) и линии, по которым передаются одноименные сигналы (см. рис.2.1):

линии синхронизации;

линии управления;

совмещенную 32- или 64-разрядную шину (подмагистраль) адреса/данных;

линии прерываний;

линии арбитража;

линии ошибок;

линии управления КЭШ;

линии интерфейса JTAG (встроенного контроля);

линии дополнительных сигналов (11 линий);

линии питания и «земли» (+3,3; +5; 0; –12; +12 В).

Многомагистальная PCI-система.

Понятие транзакции в PCI и типы транзакций.

Обмен информацией - транзакционный.

Транзакция (Transaction) - групповая операция на шине, состоящая из фазы адреса, нескольких фаз

данных и циклов ожидания (рис.2.3).

Основные типы транзакций:

запись/чтение памяти;

запись/ чтение устройств ввода/вывода;

запись/чтение пространства конфигурации устройства.

  1. Правила управления обменом информации в PCI (правила установки и сброса сигналов FRAME#, IRDY#, TRDY#). Правила выбора устройств в PCI (правила установки и сброса сигналов DEVSEL#. STOP#).

1)Интерфейс PCI находится в состоянии ожидания или свободен (IDLE), пока сигналы FRAME# и

IRDY# сброшены.

2)Первый такт после установления сигнала FRAME# является адресной фазой, в течение которой

передаются адрес и команда. Здесь и далее установлен означает, что сигнал принимает значение, соответствующее активному состоянию (низкому уровню).

3)Следующий такт является первым тактом первой фазы данных. В транзакции может быть несколько

фаз данных (вспомним пакетный режим обмена).

4) Обмен данными между устройством-инициатором и устройством-целью управляется сигналами:FRAME#, который устанавливается устройством-инициатором для индикации начала транзакции и сбрасывается устройством-инициатором для обозначения начала последней фазы обмена в данной

транзакции;

IRDY#, который изменяется устройством-инициатором для управления циклами ожидания;

TRDY#, который изменяется устройством-целью для управления циклами ожидания.

5). Данные передаются (происходит обмен данными между устройством-инициатором и устройством-

целью) на любом первом цикле после установления одновременно сигналов IRDY# и TRDY#.

6)Оба участника обмена могут вставлять в каждую фазу данных циклы ожидания посредством

сбрасывания сигналов IRDY# и (или) TRDY#.

7) Источник данных в фазе данных должен устанавливать сигнал готовности данных xRDY# только

после того, как данные для текущей фазы данных выставлены на линии A/D: сигнал IRDY# - при записи и сигнал TRDY# - при чтении.

8) Приемник данных в фазе данных может устанавливать сигнал готовности xRDY# на любом цикле текущей фазы данных по своему усмотрению.

9) Как только устройство-инициатор решает закончить транзакцию, оно перед выполнением

последней фазы данных сбрасывает сигнал FRAME#,

10). Ни одно устройство (ни устройство-инициатор, ни устройство-цель) не должно изменять

управляющие сигналы в фазе данных (сигналы IRDY# и TRDY# установлены) и не имеет права изменять

свои намерения в течение этой фазы данных.

11). Если устройство-инициатор установило сигнал IRDY#, то оно не должно изменять сигналы IRDY# и FRAME# вне зависимости от сигнала TRDY# до тех пор, пока текущая фаза данных не завершится.

12). Если устройство-цель установило сигнал TRDY# или сигнал STOP#, то оно не должно изменять

сигналы TRDY#, DEVSEL# и STOP# до тех пор, пока текущая фаза данных не завершится.

Правила выбора устройств в PCI (правила установки и сброса сигналов DEVSEL#, STOP#)

1. Одно из устройств-инициаторов, начиная транзакцию (сигнал FRAME# установлен именно этим

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

2. Все устройства-цели считывают и анализируют этот адрес. Одно из устройств-целей, дешифрируя адрес, выставляемый устройством-инициатором, определяет, что обращение происходит по адресу, принадлежащему адресному пространству данного устройства, и, учитывая свою готовность поддержать транзакцию, устанавливает сигнал DEVSEL# в течение первых трех тактов транзакции (рис.2.5).

3. Адрес для второй и последующих фаз данных вычисляется устройством-целью автоматически путем инкрементирования текущего адреса.

4. Устройство-мост PCI-PCI в многомагистральных PCI-системах всегда устанавливает сигнал DEVSEL# в течение четвертого такта транзакции (см. рис.2.5).

5. Если устройство-инициатор не обнаруживает установления сигнала DEVSEL# в течение первых

четырех тактов транзакции, оно завершает транзакцию по процедуре аварийного завершения.

6. Сигнал DEVSEL# должен быть установлен устройством-целью лишь после полной дешифрации

адреса.

7. Устройство-цель устанавливает сигналы TRDY#, STOP# и данные на линиях A/D (в случае чтения) лишь после установки сигнала DEVSEL# .

8. Во всех случаях, кроме одного, устройство-цель не должно сбрасывать сигнал DEVSEL# раньше, чем закончится последняя фаза данных транзакции, а именно, пока не будет сброшен сигнал TRDY# при выполнении последней фазы данных.

9. Исключительная ситуация - прерывание транзакции «сбоем устройства-цели». В этом случае сигнал DEVSEL# сбрасывается вместе с установкой сигнала STOP#.

  1. Варианты завершения транзакций в PCI. Временные диаграммы: транзакции чтение памяти при нормальном завершении; транзакции записи в память при нормальном завершении; завершения транзакции при сбросе сигнала GNT#; завершения транзакции по сигналу тайм-аут устройства-инициатора.

Возможны следующие варианты завершения транзакции:

нормальное;

по инициативе устройства-инициатора;

по инициативе устройства-цели.

В свою очередь завершение транзакции по инициативе устройства-инициатора может выполняться:

по тайм-ауту устройства-инициатора;

по сбросу сигнала GNT# от арбитра;

отказом устройства-инициатора (initiator-abort).

Завершение транзакции по инициативе устройства-цели может выполняться:

требованием перезапуска транзакции;

отказом устройства-цели (target-abort);

требованием повтора транзакции (retry).

1. Нормальное завершение -перед последней фазой данных сбрасывается сигнал FRAME# и устанавливается сигнал IRDY# (рис.2.6 и 2.7).

FRAME# и установка сигнала IRDY# сигнализируеют ему, что начата последняя фаза данных.

2. по сбросу сигнала GNT# от арбитра.на следующем такте сигнала CLK устройством-инициатором сбрасывается сигнал FRAME#, но так, чтобы нормально сначала устанавливается сигнал IRDY#, а затем сбрасывается сигнал FRAME# (рис.2.8,а).

3. по тайм-аутуустройства-инициатора. На следующем такте сигнала CLK устройством-инициатором сбрасывается сигнал FRAME#, но так, чтобы

нормально закончить последнюю текущую фазу данных, т.е. сначала устанавливается сигнал IRDY#, а затем сбрасывается сигнал FRAME# (рис.2.8,б).

4. отказом устройства-инициатора (initiator-abort).транзакция

начинается, как обычно, установкой сигнала FRAME# , команды на линиях C/BE#, адреса на линиях AD и,возможно, сигнала IRDY#. Если ни одно из устройств-целей не отвечает сигналом на линии DEVSEL# в течение четырех тактов сигнала CLK, то на пятом такте сигнала CLK устройство-инициатор аварийно завершает начатую транзакцию, не выполняя ни одного обмена, сбрасывая сигнал FRAME# и, возможно, сигнал IRDY#

5. перезапуска транзакции. В этом случае устройство-цель устанавливает сигнал STOP#. В ответ устройство-инициатор сбрасывает сигнал FRAME#, но так, чтобы завершить последнюю фазу данных, т.е. сбрасывается сигнал FRAME# и устанавливается сигнал IRDY#. Далее все зависит от устройства-цели. Если сигнал TRDY#

установлен, то обмен происходит. Если сигнал TRDY# не установлен, то обмена на последней фазе данных не будет. Устройство-инициатор, если оно намеревается, должно произвести повторную попытку выполнить

транзакцию, завершенную по инициативе устройства-цели. Повторная транзакция должна начинаться с адреса незавершенной фазы данных (рис.2.10).

6. отказом устройства-цели (target-abort). В этом случае устройство-цель одновременно с установкой сигнала STOP# сбрасывает сигнал DEVSEL# и сигнал TRDY#. В ответ устройство-инициатор на следующем такте сигнала CLK сбрасывает сигнал FRAME# и сигнал IRDY# (рис.2.11,а).

7. требованием повтора транзакции (retry) В этом случае транзакция начинается, как обычно, установкой сигнала FRAME#, команды на линиях C/BE#, адреса на линиях AD и,

возможно, сигнала готовности IRDY#. Устройство-цель, не устанавливая сигнал TRDY#, в течение первых четырех тактов сигнала CLK устанавливает одновременно сигналы DEVSEL# и STOP# С

задержкой на один такт сигнала CLK устройство-инициатор сбрасывает сигналы FRAME# и IRDY#, после чего с задержкой на один такт сигнала CLK устройство-цель сбрасывает сигналы DEVSEL# и STOP#.

Временная диаграмма транзакции чтение памяти при нормальном завершении.

  1. Временные диаграммы: завершения транзакции отказом устройства-инициатора; завершения транзакции требованием перезапуска транзакции; завершения транзакции отказом устройства-цели; завершения транзакции требованием повтора.

В случае завершения транзакции отказом устройства-инициатора транзакция начинается, как обычно, установкой сигнала FRAME# , команды на линиях C/BE#, адреса на линиях AD и возможно сигнала IRDY#. Если ни одно из устройств-целей не отвечает сигналом на линии DEVSEL# в течение четырех тактов сигнала CLK , то на пятом такте сигнала CLK устройство-инициатор аварийно завершает начатую транзакцию, не выполнив ни одного обмена, сбрасывая сигнал FRAME# и возможно сигнал IRDY#. Смотри рис. 2.1.8.

Завершение транзакции по инициативе устройства–цели, в частности, завершение транзакции требованием перезапуска транзакции.

В этом случае устройство–цель устанавливает сигнал STOP#, затем в ответ устройство–инициатор сбрасывает сигнал FRAME#, но так, чтобы завершить последнюю фазу передачи данных, т.е. сбрасывается сигнал FRAME# и устанавливается сигнал IRDY#. Далее все зависит от устройства–цели. Если сигнал TRDY# установлен, то обмен происходит. Если сигнал TRDY# не установлен, то обмена на последней фазе данных не будет. Устройство–инициатор, если оно намеривается, должно произвести повторную попытку доступа, завершенного по инициативе устройства–цели. Повторный доступ должен начинаться с адреса незавершенной фазы передачи данных. Смотри рис. 2.1.9.

перезапуска транзакции

Завершение транзакции по инициативе устройства–цели, в частности, - завершение транзакции отказом устройства-цели (target-abort). В этом случае устройство-цель одновременно с установкой сигнала STOP# сбрасывается сигнал DEVSEL# и сигнал TRDY#. В ответ устройство-инициатор на следующем такте сигнала CLK сбрасывает сигнал FRAME# и сигнал IRDY#.

Завершение транзакции по инициативе устройства–цели, в частности, завершение транзакции требованием повтора транзакции (retry).

Завершение транзакции требованием повтора используется устройством-целью, если оно не готово поддержать транзакцию в настоящий момент и требует повтора транзакции через некоторое время. В случае завершения транзакции требованием повтора транзакции последняя начинается, как обычно, установкой сигнала FRAME# , команды на линиях C/BE#, адреса на линиях AD и, возможно, сигнала IRDY#. Устройство-цель не устанавливая сигнал TRDY# устанавливает в течение первых четырех тактов сигнала CLK одновременно сигналы DEVSEL# и STOP#. С задержкой на один такт сигнала CLK устройство-инициатор сбрасывает сигналы FRAME# и IRDY#, после чего с задержкой на один такт сигнала CLK устройство-цель сбрасывает сигналы DEVSEL# и STOP#. Транзакция не выполняется, но устройство-цель, если оно поддерживает такой режим (например мост PCI-PCI) должно в своей внутренней буферной памяти сохранить всю информацию о начинаемой транзакции (тип команды, начальный адрес) с тем, что в последующем оно подготовит необходимые

данные для повторного выполнения этой транзакции в будущем.

Следует помнить, что несмотря на то, что завершение транзакции может инициироваться как устройством–инициатором, так и устройством–целью, устройство–инициатор всегда остается тем ведущим устройством, которое доводит транзакцию до завершения, соответствующего IDLE- состоянию (сигналы FRAME# и IRDY# сброшены)

Рис. 2.1.11. Завершение транзакции по инициативе устройства-цели