Устройство, которое использует сигнал 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) — случай без преобразования, при котором СС просто пропускает без изменения все поле адреба группы, за тем исключением, что он преобразует часть адресного поля в нули, как то требуется для географической й широкой адресации; (2) — случай полного преобразования, при котором СС преобразует поле адреса группы. Одно особенно полезное преобразование изменяет поле адреса группы (N, N+ 1, N+2 и так далее) на 0, 1, 2 и так далее для своего сегмента дальней стороны, если это именно тот сегмент, который адресуется, а в противном случае пропускает поле адреса группы без изменения. СС может быть спроектирован так, чтобы он воплощал в себе один или оба из этих алгоритмов; однако для большинства целей рекомендуется алгоритм без преобразования. В приложении В описывается рекомендуемый СС типа S = l, который связывает крейт-сегмент с кабель-сегментом и может работать по любому алгоритму.СС с преобразованием и без преобразования могут сосуществовать в системе (т. е. там, где некоторые сегменты адресуются с использованием полного логического адреса, а другие — с использованием преобразованного адреса) при условии, что существует СС, который может выполнять пропускание с использованием преобразования в одном направлении и без преобразования в противоположном направлении.
Алгоритм преобразования может оказаться полезным в системе, содержащей много идентичных сегментов, таких как процессоры обработки данных с высокой степенью параллелизма, поскольку он позволяет осуществлять внутренние присвоения адресов и, следовательно, иметь идентичные программы в вычислительных устройствах, используемые в каждом сегменте. Более сложные алгоритмы преобразования могут оказаться полезными в системах, использующих, например, управляемую адресом переменную маршрутизацию.
Пропускание операций
Каждый порт СС контролирует поток операций в том сегменте, к которому он подключен, выискивая некий адрес в том наборе адресов, которые ему было предписано пропустить. На распознанный адрес он отвечает путем выставления сигнала WT в сегменте ближней стороны для того, чтобы учесть задержки, вносимые, когда операция проходит через сегменты. (Интервал от момента получения сигнала AS (и), который указывает на присутствие правильного адреса, до момента выставления WT называется временем ответа СС при адресации. Теперь тайіміироваіние становится предметом ответственности СС, который далее принимает участие в арбитраже на право использования сегмента дальней стороны.
Если мастер, находящийся в сегменте ближней стороны, имеет системный уровень арбитража, то этот уровень используется, когда СС принимает участие в арбитраже на использование сегмента дальней стороны. Если мастер в сегменте ближней стороны имеет локальный уровень арбитража, в этом случае используется уровень арбитража дальней стороны СС. В результате, когда операции присвоен системный уровень арбитража либо действующим мастером, либо логикой дальней стороны СС, этот' уровень остается неизменным при проведении арбитража на владение всеми дополнительными сегментами, необходимыми для того, чтобы достичь слуги. Однако локальные уровни арбитража подлежат изменению от сегмента к сегменту. Во всех случаях используется тот протокол арбитража (с гарантированным доступом или нет), который специфицирован для порта дальней стороны СС.
Когда получено владение сегментом дальней стороны, инициируется адресный цикл. При определенных обстоятельствах географический или широкий адреса должны быть модифицированы СС, прежде чем пропускать их в сегмент дальней стороны. При других
обстоятельствах, в зависимости от реализации, СС может преобразовывать, а может и не преобразовывать адреса. Информация, выставляемая СС на линии AD, всегда сопровождается сигналом РЕ=1 (разрешение контроля по четности). Входящие данные, сопровождаемые сигналом РЕ=1, пропускаются без изменений, независимо от того, обнаружена ошибка четности или нет. Для преобразуемого адреса значение РА вычисляется заново. СС подобно всем другим устройствам игнорирует адресную информацию, когда обнаружено, что она содержит ошибку четности.
Получение сигнала АК (и) логикой дальней стороны СС указывает, что слуга был достигнут. СС отвечает (за исключением случая широких операций) следующими действиями в своем порте ближней стороны: он убирает сигнал WT, затем выставляет сигнал АК (и), который, когда он получен действующим мастером, завершает процесс установления связки с требуемым слугой. Циклы данных происходят аналогичным образом, используя сигналы WT, DS и DK, но с меньшими задержками, поскольку вовлеченные сегменты уже все, нацелены на данную операцию. Каждый соединитель Сегментов вводит в тайміирующие сигналы задержки, компенсирующие времена разброса задержек, свойственные сегментам, которые он соединяет. Таким образом, удовлетворяется требование к таймиро- ванию системного характера.
Разрешение конфликтов
О
использовании
Рис. 22. Конфликт при СС
бщее описание приоритетного арбитража приведено в разд. 6. На рис. 22 изображена обобщенная ситуация, где операция А предпринимает попытку пройти из сегмента J в сегмент L через сегмент К, а операция В пытается пройти из сегмента L в сегмент М также через сегмент К. В зависимости от соотношений таймирования может иметь место любая из следующих ситуаций.Операции А и В принимают участие в арбитраже за использование сегмента К, выигрывает операция В. 1
О
в арбитраже за использование сегмента К, которое уже выиграно операцией В.
3. Операция А получает право на управление сегментом К, опе-
Ситуация 1 и 2 представляет собой соперничество за использование сегмента, где логика арбитража на магистрали разрешает конфликт путем предоставления обеим этим операциям возможности арбитража за использование магистрали, как это происходит в ситуации 1, или путем блокирования вмешательства со стороны операции А, которая достигла сегмента К слишком поздно (т. е. после выставления сигнала AG (и), чтобы участвовать в уже проводимом цикле арбитража.
Ситуация 3 является истинным конфликтом при использовании соединителя сегментов. В этом конфликте участвуют две операции, проводимые в пределах короткого отрезка времени, одна вслед за другой, и он должен быть разрешен при помощи вмешательства логики разрешения конфликтов, имеющейся в СС. Этот процесс определен в п. 10.7.3.
Маршрутные таблицы
Каждый порт СС содержит схему распознавания адреса, которая определяет, должен ли адрес быть пропущен к порту дальней стороны. Возможны различные реализации этой схемы. Схема, выбранная для системы ФАСТБАС, использует запоминаемые маршрутные таблицы. Маршрутная таблица представляет собой небольшой участок памяти, адресуемый самыми старшими разрядами ФАСТБАС-адреса; ее содержимое указывает, какие адреса должны пропускаться соединителем сегментов.
Одна маршрутная таблица еще не содержит маршрута, а скорее она содержит список адресов для пропускания. Именно наборы из всех маршрутных таблиц определяет те маршруты, которые используются операциями. Дуплексные СС (единственный тип, подробно рассматриваемый здесь) содержит две маршрутные таблицы, по одной для каждого направления.
Структура маршрутной таблицы и, конечно, любая практическая схема распознавания адреса накладывают некоторые ограничения на присвоение адресов устройствам. Что касается системы- ФАСТБАС, конкретное ограничение заключается в том, что устройства, которым присвоены одинаковые старшие адресные разряды должны все быть подключены к одному и тому же сегменту. Число старших адресных разрядов, проверяемых СС для распознавания адреса, определяет максимально возможное в системе количество сегментов или, более точно, количество групп адресов, которые могут быть выделены. Эта старшая часть адреса называется адресом группы (GP), и ее ширина определяется индивидуальной реализацией СС (см. гл. 4).
Сегменту может быть присвоено несколько адресов групп дл
ятого, чтобы дать ему возможность содержать ряд устройств, каждое из которых требует больших объемов адресного пространства. Один адрес из набора адресов групп, обычно самый низкий, назначается в качестве базового адреса группы для географической адресации.
Каждая запись в маршрутной таблице должна содержать достаточно информации для того, чтобы можно было выделить четыре состояния; Они перечислены ниже:
Отключить адрес.
Пропустить адрес.
Пропустить адрес, адрес направлен к сегменту дальней стороны.
Пропустить адрес, адрес направлен к сегменту дальней стороны, адрес группы является базовым адресом группы.
Метод, определенный для индикации этих состояний, включает использование трех битов: бита пропускания, бита — признака места назначения и бита — признака базового адреса. Состояние 2 индицируется битом пропускания, состояние 3 — обоими битами, установленными в единицу (битом пропускания и битом — признаком места назначения), и состояние 4 — тремя битами, установленными в единицу.