Устройство, которое использует сигнал SR, должно иметь в ре­гистре CSR#O биты 4, 5, 20 и 21 в соответствии с определением в табл. ХПЬ.

Если устройство имеет более, чем один источник SR, то каждо­му источнику должны быть присвоены биты в регистрах с селектив­ной установкой и сбросом, с CSR#20 по 3F в соответствии с реко­мендациями, содержащимися в п. 8.14. В этом случае биты регист­ра CSR#O должны обеспечивать общие управления и статус.

Установка бита источника SR при помощи операции ФАСТБАС должна вызывать тот же самый эффект, что установка этого бита самим устройством.Внешний сигнал на линию SR должен формироваться объеди­нением по «ИЛИ» всех источников SR, которые были разрешены (то есть у которых установлены их биты маскирования), объедине­нием по «И» /полученного результата с общим битом «разрешение» CSR#0<04>.

В любом устройстве, способном выставлять сигнал SR, должна быть реализована возможность проведения широкой операции, оп­ределенной как случай 5 в табл. III.

Отметим, что когда ВН = 1, устройства игнорируют состояние линии SR (см. п. 7.4).

ГЛАВА 10. СОЕДИНЕНИЕ СЕГМЕНТОВ

Когда мастер связан со слугой, то имеет место двунаправленный поток информации независимо от направления передачи данных. Это происходит благодаря взаимному подтверждению мастер/слу- га, которое имеет место во время адресного цикла и которое может возникать в каждом последующем цикле данных. Если и мастер, и слуга находятся в одном и том же сегменте, тогда магистраль сама обеспечивает среду для связи. Вследствие требований к скорости и электрической нагрузке, а также соображений, касающихся про­пускной способности и соперничества, существует практический предел для числа устройств, которые могут быть непосредственно подключены к сегменту. По этой причине с целью разрешения ма­стеру, находящемуся в одном сегменте, осуществлять связь со слу­гой, расположенным в другом независимом сегменте, предусмотре­но устройство, называемое соединителем сегментов (СС).

Мастеру нет необходимости знать, находится ли слуга, к кото­рому он обращается, в том же самом или в другом сегменте. Прото­колы связи для различных типов адресации (логической, широкой или географической) и различных режимов передачи данных (одно­кратного, блочного принудительного и с фиксированным адресом) должны отрабатываться соединителями сегментов прозрачно. Кро­ме того, СС должны также автоматически компенсировать возрос­шие задержки, вызванные их использованием.

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

- Порт СС, подключенный к сегменту, где находится действую­щий мастер, в течение данной операции ведет себя как слуга, а второй, порт этого СС, подключенный к другому сегменту, где на­ходятся слуги, ведет себя как мастер по отношению к указанным слугам (см. рис. 21).



Е

^Мастер I

сли операция должна пересечь ряд сегментов, тогда в каждом СС, через который проходит операция, порт, являющийся электри­чески более близким к действующему мастеру (порт ближней сто­роны), ведет себя как слуга, а порт, электрически более далекий от действующего мастера (порт да­льней стороны), ведет себя как мас­тер.

Сегмент А



С

Логика мастера

Порт дальней стороны

Логика слуги Соединитель сегментов

Рис. 21. Понятия ближней и дальней стороны для СС

Порт ближней I стороны

Сегмент В

спи га

лучись так, что мастер їй слу­га поменяются местами, тогда через те же самые СС должен быть про­ложен обратный маршрут. Это озна­чает, что роли ближней и дальней стороны каждого порта СС должны быть изменены на противополож­ные. Следовательно, каждый порт СС должен быть способен вести се­бя либо как слуга, либо как мастер. Именно такой двухсторонний тип СС обсуждается в настоящем до­кументе. Если поток операций всег­да имеет одно и то же направление, мог бы использоваться другой тип СС. Но два СС последнего типа не эквивалентны первому типу СС из-за различий в способе, с по­мощью которого должны разрешаться конфликты в использова­нии соединителя.
  1. Типы соединителей сегментов

В самом общем смысле СС отображает адрес от своей ближней стороны к дальней стороне. Были подробно проверены два спе­циальных алгоритма отображения с тем, чтобы могли быть детали­зированы спецификации для физически реализуемого СС общего назначения: (1) — случай без преобразования, при котором СС просто пропускает без изменения все поле адреба группы, за тем исключением, что он преобразует часть адресного поля в нули, как то требуется для географической й широкой адресации; (2) — слу­чай полного преобразования, при котором СС преобразует поле адреса группы. Одно особенно полезное преобразование изменяет поле адреса группы (N, N+ 1, N+2 и так далее) на 0, 1, 2 и так да­лее для своего сегмента дальней стороны, если это именно тот сег­мент, который адресуется, а в противном случае пропускает поле адреса группы без изменения. СС может быть спроектирован так, чтобы он воплощал в себе один или оба из этих алгоритмов; однако для большинства целей рекомендуется алгоритм без преобразова­ния. В приложении В описывается рекомендуемый СС типа S = l, который связывает крейт-сегмент с кабель-сегментом и может ра­ботать по любому алгоритму.СС с преобразованием и без преобразования могут сосущество­вать в системе (т. е. там, где некоторые сегменты адресуются с ис­пользованием полного логического адреса, а другие — с использо­ванием преобразованного адреса) при условии, что существует СС, который может выполнять пропускание с использованием преобра­зования в одном направлении и без преобразования в противопо­ложном направлении.

Алгоритм преобразования может оказаться полезным в системе, содержащей много идентичных сегментов, таких как процессоры обработки данных с высокой степенью параллелизма, поскольку он позволяет осуществлять внутренние присвоения адресов и, следо­вательно, иметь идентичные программы в вычислительных устрой­ствах, используемые в каждом сегменте. Более сложные алгорит­мы преобразования могут оказаться полезными в системах, ис­пользующих, например, управляемую адресом переменную мар­шрутизацию.

  1. Пропускание операций

Каждый порт СС контролирует поток операций в том сегменте, к которому он подключен, выискивая некий адрес в том наборе ад­ресов, которые ему было предписано пропустить. На распознанный адрес он отвечает путем выставления сигнала WT в сегменте ближ­ней стороны для того, чтобы учесть задержки, вносимые, когда опе­рация проходит через сегменты. (Интервал от момента получения сигнала AS (и), который указывает на присутствие правильного адреса, до момента выставления WT называется временем ответа СС при адресации. Теперь тайіміироваіние становится предметом от­ветственности СС, который далее принимает участие в арбитраже на право использования сегмента дальней стороны.

Если мастер, находящийся в сегменте ближней стороны, имеет системный уровень арбитража, то этот уровень используется, когда СС принимает участие в арбитраже на использование сегмента дальней стороны. Если мастер в сегменте ближней стороны имеет локальный уровень арбитража, в этом случае используется уровень арбитража дальней стороны СС. В результате, когда операции при­своен системный уровень арбитража либо действующим мастером, либо логикой дальней стороны СС, этот' уровень остается неизмен­ным при проведении арбитража на владение всеми дополнительны­ми сегментами, необходимыми для того, чтобы достичь слуги. Од­нако локальные уровни арбитража подлежат изменению от сегмен­та к сегменту. Во всех случаях используется тот протокол арбитра­жа (с гарантированным доступом или нет), который специфициро­ван для порта дальней стороны СС.

Когда получено владение сегментом дальней стороны, иниции­руется адресный цикл. При определенных обстоятельствах геогра­фический или широкий адреса должны быть модифицированы СС, прежде чем пропускать их в сегмент дальней стороны. При других

обстоятельствах, в зависимости от реализации, СС может преобра­зовывать, а может и не преобразовывать адреса. Информация, вы­ставляемая СС на линии AD, всегда сопровождается сигналом РЕ=1 (разрешение контроля по четности). Входящие данные, со­провождаемые сигналом РЕ=1, пропускаются без изменений, неза­висимо от того, обнаружена ошибка четности или нет. Для преобра­зуемого адреса значение РА вычисляется заново. СС подобно всем другим устройствам игнорирует адресную информацию, когда об­наружено, что она содержит ошибку четности.

Получение сигнала АК (и) логикой дальней стороны СС указы­вает, что слуга был достигнут. СС отвечает (за исключением случая широких операций) следующими действиями в своем порте ближ­ней стороны: он убирает сигнал WT, затем выставляет сигнал АК (и), который, когда он получен действующим мастером, завершает про­цесс установления связки с требуемым слугой. Циклы данных про­исходят аналогичным образом, используя сигналы WT, DS и DK, но с меньшими задержками, поскольку вовлеченные сегменты уже все, нацелены на данную операцию. Каждый соединитель Сегментов вводит в тайміирующие сигналы задержки, компенсирующие вре­мена разброса задержек, свойственные сегментам, которые он сое­диняет. Таким образом, удовлетворяется требование к таймиро- ванию системного характера.

  1. Разрешение конфликтов


О

использовании

Рис. 22. Конфликт при СС

бщее описание приоритетного арбитража приведено в разд. 6. На рис. 22 изображена обобщенная ситуация, где операция А пред­принимает попытку пройти из сегмента J в сегмент L через сегмент К, а операция В пыта­ется пройти из сегмента L в сегмент М также через сегмент К. В зависимости от соотно­шений таймирования может иметь место любая из следую­щих ситуаций.
  1. Операции А и В прини­мают участие в арбитраже за использование сегмента К, вы­игрывает операция В. 1

О

в арбитраже за использование сегмента К, которое уже выиграно операцией В.

3. Операция А получает право на управление сегментом К, опе-


перация А принимает на себя управление соединителем сегментов СС (J, К), но уже слишком поздно участвовать рация В управляет сегментом L, и обе эти операции предпринимают доступ к СС (К, L) •

Ситуация 1 и 2 представляет собой соперничество за использова­ние сегмента, где логика арбитража на магистрали разрешает кон­фликт путем предоставления обеим этим операциям возможности арбитража за использование магистрали, как это происходит в си­туации 1, или путем блокирования вмешательства со стороны опе­рации А, которая достигла сегмента К слишком поздно (т. е. после выставления сигнала AG (и), чтобы участвовать в уже прово­димом цикле арбитража.

Ситуация 3 является истинным конфликтом при использовании соединителя сегментов. В этом конфликте участвуют две операции, проводимые в пределах короткого отрезка времени, одна вслед за другой, и он должен быть разрешен при помощи вмешательства ло­гики разрешения конфликтов, имеющейся в СС. Этот процесс опре­делен в п. 10.7.3.

  1. Маршрутные таблицы

Каждый порт СС содержит схему распознавания адреса, кото­рая определяет, должен ли адрес быть пропущен к порту дальней стороны. Возможны различные реализации этой схемы. Схема, выбранная для системы ФАСТБАС, использует запоминаемые маршрутные таблицы. Маршрутная таблица представляет собой не­большой участок памяти, адресуемый самыми старшими разряда­ми ФАСТБАС-адреса; ее содержимое указывает, какие адреса должны пропускаться соединителем сегментов.

Одна маршрутная таблица еще не содержит маршрута, а скорее она содержит список адресов для пропускания. Именно наборы из всех маршрутных таблиц определяет те маршруты, которые исполь­зуются операциями. Дуплексные СС (единственный тип, подробно рассматриваемый здесь) содержит две маршрутные таблицы, по од­ной для каждого направления.

Структура маршрутной таблицы и, конечно, любая практичес­кая схема распознавания адреса накладывают некоторые ограниче­ния на присвоение адресов устройствам. Что касается системы- ФАСТБАС, конкретное ограничение заключается в том, что уст­ройства, которым присвоены одинаковые старшие адресные разря­ды должны все быть подключены к одному и тому же сегмен­ту. Число старших адресных разрядов, проверяемых СС для рас­познавания адреса, определяет максимально возможное в систе­ме количество сегментов или, более точно, количество групп адре­сов, которые могут быть выделены. Эта старшая часть адреса на­зывается адресом группы (GP), и ее ширина определяется инди­видуальной реализацией СС (см. гл. 4).

Сегменту может быть присвоено несколько адресов групп дл

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

Каждая запись в маршрутной таблице должна содержать дос­таточно информации для того, чтобы можно было выделить четыре состояния; Они перечислены ниже:

  1. Отключить адрес.

  2. Пропустить адрес.

  3. Пропустить адрес, адрес направлен к сегменту дальней сто­роны.

  4. Пропустить адрес, адрес направлен к сегменту дальней сто­роны, адрес группы является базовым адресом группы.

Метод, определенный для индикации этих состояний, включает использование трех битов: бита пропускания, бита — признака мес­та назначения и бита — признака базового адреса. Состояние 2 индицируется битом пропускания, состояние 3 — обоими битами, установленными в единицу (битом пропускания и битом — приз­наком места назначения), и состояние 4 — тремя битами, установ­ленными в единицу.