«Сеть занята» — SS = 1. Этот ответ должен выдаваться, если СС не может получить доступ к сегменту дальней стороны из-за наличия конфликтующих операций в этом сегменте. СС, распознавший адрес, который нужно пропустить, но еще не стал зарезервированным (ом. н. 10.7.6), должен выдать упомянутый ответ, если он получает от сегмента, ближней стороны GK=0, в то вре- : мя как AS=1. Биты в CSR#0 не изменяются. (Мастер предпринимает такое действие, когда он прекращает ожидать установления соединения).
«Сбой в сети» — SS = 2. Этот ответ должен быть выдан СС по . истечении лимита на время ответов СС при адресации. Он также должен быть выдан, если СС обнаруживает в процессе разрешения конфликта недопустимые уровни арбитража. Этот ответ встречается во время операции прослеживания маршрута (см. табл. XVIIb и п. J.1 приложения J). ‘ ;
«Сеть ликвидирована» — SS = 3. Этот ответ должен быть выдан, если СС не может получить владение магистралью дальней стороны вследствие того, что там протекает операция с более высоким приоритетом.
«Сбой в цикле передачи данных» — SS = 7. Этот ответ должен выдаваться только во время широкой операции по истечении лимита на время ответов СС в цикле данных. Сигнал DK(t) не был получен СС и, по всей вероятности, произошел сбой при передаче данных.
После выдачи во время адресного цикла ненулевого ответа по линиям «Статус слуги» СС должен оставаться присоединенным в качестве слуги в сегменте ближней стороны и далее должен функционировать так, как будто во время адресного цикла был правильно осуществлен доступ к области адресов его CSR ближней стороны.
Выдача ответа «Сеть занята» запускается сигналом от мастера по линии GK. Это позволяет мастеру экстренно прекратить выполнение операции, если ему кажется, что она потребовала слишком много времени для установления соединения, и затем определить, насколько далеко данная операция продвинулась по системе, и даже определить предпринятый маршрут. Мастера не должны ожидать неопределенно долго, даже если они наблюдают WT=1, в противном случае могут возникать зависания. Однако, если работа таймеров с диагностическими целями запрещена, мастер не должен контролировать лимит времени. Если возникают тупиковые ситуации, они должны сбрасываться сигналом RB.
Мастер, которому требуется информация о причине отрицательного ответа, может продолжать выставлять AS=1 и, выполняя вторичные адресные циклы, сопровождаемые циклами передачи данных, получить доступ к CSR-регистрам того СС, который выдал отрицательный ответ. Местоположение этого СС может быть определено с помощью его регистров географического адреса ближней и дальней стороны. Дополнительная диагностическая информация содержится в регистре CSR#0.
Ответ «Сбой в цикле передаічи данных» SS = 7 используется чаще, чем ответ SS=6 (данные не приняты или не переданы), несмотря на то, что маловероятно, что все присоединенные слуги приняли или передали данные. Некоторые из слуг могут в это же время подавать по линиям «Статус слуги» другие ненулевые коды, ■откуда следует выбор кода SS=7. СС, который выставляет ответ «Сбой в цикле данных», не предпринимает никаких указанных выше специальных действий, которые следуют за ненулевым ответом по линиям SS во время адресного цикла.
Модификация географических и широких адресов
Все СС, включая соединители без преобразования, выполняют два типа модификации адресов. Первый из них позволяет слугам, расположенным в неинициализированном сегменте, быть географически адресуемым мастером, расположенным в другом сегменте. Второй тип реализует ряд особенностей широкой адресации.
СС должен выставить EG=1 в сегменте дальней стороны, если в момент прихода сигнала AS (и) имеет место MS 1=0, все разряды адреса, поступившего на ближнюю сторону, от AD<08> вплоть до начала поля адреса группы равны нулю, и для адреса, который необходимо пропустить, соответствующая запись в маршрутной таблице содержит установленные биты пропускания, места назначения и базового адреса.
СС должен выставить сигнал EG = 0 в сегменте дальней стороны, если на сегменте дальней стороны AS=AK=0.
Когда СС пропускает широкий адрес (MS1 = 1), для которого его сегмент дальней стороны является сегментом места назначения, этот соединитель должен установить AD<OO> = 1 (локальный бит) и, если AD<O1>==1 (глобальный бит), он также должен обнулить линии AD<31:08>, когда пропускается указанный адрес.
Пропускание операции
О СС говорят, что он зарезервирован, если он получил владение-сегментом дальней стороны и выставляет в этом сегменте GK=1.
Зарезервированный СС должен пропускать только:
сигнал AR от дальней — к ближней стороне;
запрос на обслуживание SR из дальней в ближнюю сторону, если установлено CSR#0<04>;
сигналы AL<05:00> от ближней к дальней стороне, если есть сигнал AL<O5> = 1 на ближней стороне.
Зарезервированный СС называется активным, если он распознал адрес, который он должен пропустить (см. п. 10.7.1).
Порт ближней стороны активного СС должен действовать как слуга, а его порт дальней стороны — как мастер. Использование магистралей обоих портов должно быть таким как определено в разд. 5.
В дополнение к сигналам, пропускаемым зарезервированным СС, активный СС должен пропускать все управляющие (У), асинхронные (А) й информационные (И) сигналы, которые специфицированы в табл. 1, за исключением сигналов EG, RB, ВН, которые никогда не пропускаются.
Активный СС должен пропускать сигналы AS и DS от ближней к дальней стороне.
Активный СС должен пропускать сигнал WT из своей дальней стороны в ближнюю сторону.
Во время адресных циклов сигналы AD<31:00> должны модифицироваться, как определено в пп. 10.5.6 и 10.7.5.
Во время адресных циклов и циклов данных сигналы РА и РЕ должны модифицироваться, как определено в п. 10.7.7.
Активный СС должен, после приема на своей ближней стороне сигналов AS(t) или DS(t), связанных с подтвержденной передачей данных, выставить WT=1 на сегменте ближней стороны.
Активный СС должен, после приема сигналов AK(t) или DK(t) на своем дальнем сегменте, гарантировать, что он выставляет сигнал WT = 0 на сегменте ближней стороны до выставления соответствующих сигналов AK(t) или DK(t) на сегменте своей ближней стороны.
Активный СС, который пропускает AS (d) на сегмент дальней стороны и не получает AK(d), должен установить WT=0 на сегменте ближней стороны после истечения лимита времени.
После принятия DS(t) на своей ближней стороне в ходе принудительных передач активный СС не должен выставлять WT—1 на сегменте ближней стороны в ответ на получение таймирующих фронтов.
В случае операций, не являющимися широкими
Активный СС должен после получения фронта AK(t) или DK(t) на сегменте дальней стороны гарантировать, что выставляет WT=0 на сегменте ближней стороны до пропускания полученного фронта на сегмент ближней стороны.
Если после прохождения AS (и) на сегменте дальней стороны СС не получает в ответ АК(и) из дальней стороны в пределах соответствующего лимита времени (см. приложение А), то он должен выставить WT=0, SS = 2 и создать АК(и) на. сегменте” ближней стороны и AS=0 — на сегменте дальней стороны. СС должен перестать быть активным и стать слугой на своей ближней стороне.
Если после прохождения DS(t) на сегмент дальней стороны СС не получает в ответ DK(t) из дальней стороны в пределах соответствующего лимита времени (см. приложение А), то он должен выставить WT=0 на сегменте ближней стороны и продолжать быть активным.В случае широких операций
Активный СС не должен пропускать сигналы АК или DK в свой сегмент ближней стороны.
СС должен пропустить широкую операцию, если запись в маршрутной таблице, соответствующая ее полю адреса группы GP, указывает, что данная операция должна быть пропущена, а также что либо GP не равно нулю, либо GP=0 и AD<O1> = 1.
Если после прохождения AS (и) в сегмент дальней стороны СС не получает в ответ АК(и) из дальней стороны в пределах соответствующего лимита времени (см. приложение А), то он должен выставить WT=0, SS=2 на сегменте ближней стороны и AS = 0 — на сегменте дальней стороны. СС должен перестать быть активным и стать слугой на своей ближней стороне.
Если после прохождения DS(t) в сегмент дальней стороны СС не получает в ответ DK(t) из дальней стороны в пределах соответствующего лимита времени (см. приложение А), то он должен выставить WT=0 и SS—7 на сегменте ближней стороны и продолжать быть активным.
Таймирующий сигнал GK(d) должен подаваться в сегмент дальней стороны, только когда этот сигнал получен портом ближней стороны. 1
СС Должен перестать быть активным в момент времени, когда в сегменте дальней стороны сигналы AS=AK=0, и перестает быть зарезервированным, когда в сегменте ближней стороны сигнал GK=0.
Табл. XIX суммирует ответы СС на различные адреса. Колонки «В» указывают значения битов пропускания и места назначения в той записи маршрутной таблицы СС, которая соответствует данной величине полн адреса группы, поступающего в порт ближней стороны, и коду на линиях MS.
Таблица XIX
Ответные действия соединителя сегментов на адреса
MSI при AS(u) |
AD<31:03> |
Вх. марш, табл. |
AD<00>, L |
AD<01>, G |
П римеча- ние |
|||||||
Ближ. |
Дал ьн. |
Проп. |
Назн. |
"Ближ. |
Да льн. |
Ближ. |
Дальн. |
|||||
0 |
0 |
X |
X |
. |
—. |
1 |
||||||
0 |
>0 |
— |
0 |
X |
— • |
—• |
— |
— - |
1 |
|||
0 |
>Q |
ВхМТ |
1 |
0 |
—— |
— |
— |
— |
2 |
|||
0 |
>0 |
ВхМТ |
1 |
1 |
— |
— |
— |
|
3 , |
|||
1 |
0 |
— |
0 |
X |
- X |
—. |
X |
— |
1 |
Продолжение табл. XIX
MSI при AS(u) |
AD<31 : 08> |
Вх. марш, табл. |
AD<00>, L |
AD<01>, G |
Примечание- |
||||||
Ближ. |
Дальн. |
Проп. |
Назн. |
Ближ. |
Дальн. |
Ближ. |
Дальн. |
||||
1 |
0 |
|
1 |
X |
X |
|
0 - |
1 |
|||
1 |
0 |
0 |
1 |
X |
X |
1 |
1 |
1 |
4 |
||
1 |
>0 |
к— |
0 |
X |
X |
— |
X |
— |
1 |
||
1 |
>ю |
ВхМТ |
1 |
0 |
X |
ЬБл |
X |
ОБл |
5 |
||
1 |
>0 |
О |
1 |
1 |
X |
1 |
X |
ОБл |
' 5 |
Примечания:
Символы означают:
X — результат не зависит от данного условия;
знак «—» — элемент не имеет смысла;
>0 — ненулевое поле адреса группы;
0 — поле адреса группы равно нулю;
ЬБл — повторяет локальный бит, получаемый портом ближней стороны;
ОБл •<— повторяет глобальный бит, получаемый портом ближней стороны;
- Ближ. — значение, получаемое портом ближней стороны;
Дальн. — значение, выставляемое в сегмент дальней стороны;
Проп. — значение бита пропускания;
Назн. — значение бита назначения;
ВхМТ — используется соответствующий вход маршрутной таблицы.
Цифры означают:
— не пропускает; 2 — проходящий адрес; 3 — адрес относится к сегменту дальней стороны; 4 — пропускает глобальную широкую операцию; 5 — пропускает, см. табл. II; 6 — для генерации EG см. п. 10.7.5.
Использование ■и формирование СС с и г- нала «четность» ..
Если сигнал РЕ=1, логика слуги, принадлежащая СС, должна проверять информацию на линиях AD по признаку четности.
Если в момент AS (и) в адресе обнаружена ошибка четности, СС должен игнорировать этот адрес. Если обнаружена ошибка четности во время цикла данных, эти данные и сигналы РА, РЕ должны быть пропущены без изменения, а также должен быть установлен бит CSR#O<14> = 1.
Адреса и данные, выставляемые СС, всегда должны сопровождаться сигналом РЕ=1 и соответствующим значением РА.
Ответные действия СС на сигнал RB
В дополнение к ответным действиям, определенным для устройств, когда они получают обобщенный сигнал RB=1 и ВН=0, СС, не выставляющие сигнал RB, должны отвечать следующим образом.
Пропускание операций в обоих направлениях должно быть запрещено.
Сигнал RB не должен непосредственно пропускаться от ближней стороны к дальней стороне.
Требования к таймированию
Логика мастера, содержащаяся в порте дальней стороны СС, должна использовать критерии таймирования, свойственные сегменту дальней стороны.