Таймирующая последовательность „

в мастере Последовательность в слуге

  1. Подает сигналы на управляющие (и информационные) линии

  2. Ожидает в течение времени раз­броса задержек, характерного дія дан­ного сегмента

  3. Выдает таймирующий сигнал стро­бирования


  1. Опознает таймирующий сигнал подтверждения

  2. Ожидает в течение времени разбро­са задержек, характерного для данного сегмента


  1. Опознает таймирующий сигнал стробирования

  2. Компенсирует внутренние за­держки

  3. Осуществляет выборку с управ­ляющих (и информационных) линий

  4. Выполняет внутренние ответные действия

  5. Выставляет сигналы на статус­ных (и информационных) линиях, а также выдает таймирующий сигнал подтверждения

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


  1. Компенсирует внутренние задержки

  2. Опознает сигналы на статусных (и информационных) линиях

  3. Выполняет внутренние ответные действия

  4. Конец последовательности



Этот раздел начинается с общих требований к таймированию для сигналов, генерируемых мастерами и слугами. Далее спе­цифицируются первичные адресные циклы и циклы данных. В заключение специфицируется использование некоторых специаль- 72

ных линий, которые могут оказывать влияние на операции ФАСТ- БАС.

  1. Общие требования к таймированию взаимодействия мае* тер/слуга

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

Никакие конкретные времена в этом разделе не упоминаются. Наоборот, спецификации приводятся >в терминах времен разбро­са задержек, времен ответных действий и так далее. Рекомен­дуемые значения этих времен для конкретных реализаций приведе­ны в приложении А.

  1. Требования к таймированию сигналов мастера

  1. Информация должна быть выставлена на линии AD, РЕ, РА, PD и MS мастером только после выполнения условия AK=EG = 0 в течение времени большего, чем минимальный проме­жуток между импульсами (см. п. 2.3 и табл. АП).

  2. Управляющая информация на линиях RD, MS и, если тре­буется, на линиях AD, РА, РЕ должна выставляться раньше, чем выдается сигнал AS (и) или DS(t), на время разброса задержек.

  3. Подача сигнала EG мастером должна производиться в то же самое время, что и выставление адресной информации.

  4. Во время циклов передачи первичного адреса или записи данных мастер должен поддерживать сигналы на линиях MS, AD, РА и РЕ до тех пор, пока он не получит сигнал АК(п) или DK(t) ооочіветіственіно и примет информацию с линий SS, либо до тех пор, пока не выйдет за пределы установленного лимита времени.

  5. Во время цикла чтения данных мастер должен поддерживать сигналы на линиях MS и RD до тех пор, пока он не получит сиг­нал DK(t) и не примет информацию с линий SS, AD, РА и РЕ, ли­бо до тех пор, пока не выйдет за пределы лимита времени.

  6. Мастер после получения сигналов подтверждения АК(и) или DK(t) от слуги должен, при выполнении условия WT = 0, обеспе­чить время разброса задержек перед приемом данных с линии SS или, при условии RD = 1, также с линией AD, РА и РЕ.Мастер должен генерировать строб адреса AS(d), если опе­рация ФАСТБАС, инициированная стробом адреса AS (и), дол­жна быть завершена. Мастер должен прекратить подачу всех сиг­налов на магистраль по крайней мере на время разброса задержек раньше, чем поступит AS(d) (кроме строба данных DS, который может быть удален одновременно с AS(d)).

  7. Мастер должен поддерживать сигнал AS(d) в течение време­ни (минимального промежутка между импульсами, см. табл. АН), достаточного для того, чтобы очередной слуга, к которо­му будет осуществляться обращение,-видел сигнал AS(d) прежде, чем поступит следующий сигнал AS (и).

  8. Если мастер в течение лимита времени адресных ответных действий не получает сигнал АК(и) (см. п. 5.1.3 и приложение А) после подачи сигнала AS (и), мастер должен выставить сигнал AS(d) в течение по крайней мере минимального времени спада им­пульса до начала новой операции.

  9. Если ответ AK(d) на сигнал AS(d) не получен в течение лимита времени адресных ответных действий мастера, он должен констатировать ошибку.

  10. Если ответ DK(t) на сигнал DS(t) не получен в течение ли­мита времени ответных действий мастера для данных (см. прило­жение А), мастер должен констатировать ошибку.

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

За исключением принудительных передач, мастер должен ожи­дать ответ на каждый таймирующий фронт, который он генери­рует. В момент каждого такого таймирующего фронта мастер должен запускать таймер ответных действий (см. приложение А). Этот таймер должен быть «брошен, когда поступает подтверж­дение на данный таймирующий переход или когда мастер об­наруживает появление сигнала на линии WT (ожидание). Такие таймеры должны управляться при помощи регистра управления и бЗстояний CSR = 9, как это специфицировано в разд. 8.

В мастере лимиты на время ответных действий основываются на времени реакции слуги на таймирующий фронт и максималь­ном времени распространения сигнала для той магистрали, к ко­торой непосредственно подключен данный мастер.

Таймер другого типа, долгий таймер, нужен мастерам для предотвращения мертвых связок. Этот таймер управляем регист­ром CSR-9<04> (см. п. 8.12) и игнорирует сигнал WT. Он может быть сброшен и запущен в любой момент, например, ког­да мастер выставляет AR или AS. Лимит времени может быть из­менен в-любой момент в соответствии с изменяющимися обстоя­тельствами. Окончание срока не должно влиять на цикл магист­рали, если не выставлены AS=1 и АК = 0 (лимит времени на мерт­вую связку в течение адресного цикла). Лимит должен быть дос­таточным для того, чтобы обеспечить окончание нормальных операций без обрыва, и не слишком большим, чтобы состояния мертвых связок не приводили к бесполезной трате ресурсов сис­темы. Заметим, что мертвые связки могут быть следствием пов­торных неудач при попытках получения управления нужными ре­сурсами, и поэтому обнаружение мертвых связок более важно, чем обнаружение падения активности в работе магистрали. Долгий таймер может быть полезен как средство в определе­нии степени удовлетвоіріительного inponpecica в достижении целей в конкретных применениях.

Как слуги, так и соединители сегментов выдают сигнал WT(u), когда они оказываются не в состоянии выполнить ответные дейст­вия немедленно, но предполагают, что смогут сделать это че­рез короткое время. Мастер должен содержать таймер ожида­ния, который запускается по получении сигнала WT(u), а сбра­сывается и запрещается, когда сигнал «ожидание» находится в состоянии WT = 0. Такой таймер ожидания предохраняет масте­ра от неопределенно долгого ожидания прихода сигнала WT(d), который требуется для продолжения данного цикла. Если исте­кает лимит времени таймера ожидания, мастер завершает данную операцию, убирая все сигналы.

Мастер должен иметь долгий таймер. Долгий таймер и таймер ожидания, если снимается, должны управляться при помощи регистра CSR#9, как установлено в гл. 8.

  1. Требования к таймированию сигналов слуги

При получении сигнала AS (и) слуга должен предполагать, что данные на линиях AD, RE, РА, RD и MS действительны для пер­вичного адресного цикла. Эти данные перестают считаться дейст­вительными в тот момент, когда слуга генерирует сигнал АК(и) или получает сигналы АК(и) или AS(d).

Присоединенный слуга (см. п. 5.2.2) должен ответить на сиг­нал AS (и) сигналом АК(п) в пределах времени ответа от слуги (см. приложение А). Слуга должен ответить на сигнал DS(t) в пределах времени ответа на прием данных (см. приложение А) либо выставить сигнал WT=1 до тех пор, пока он не подаст сиг­нал DK(t).

Если в течение первичного адресного цикла присоединенный слуга выставляет SS, сигналы на линии SS (статус слуги) долж­ны быть поданы не позднее, чем сигнал AK(u), и поддерживаться до тех пор, пока не будет изменено состояние линий MS и RD, ли­бо пока не будет получен сигнал DS(u) или AS(d).

Присоединенный слуга, поддерживающий условия АК.= 1, в ответ на сигнал AS(d) должен подать сигнал WT = 0, если он это­го еще не делает. Когда слуга определяет, что WT = 0, он дол­жен удалить с магистрали все сигналы в течение времени ответных адресных действий слуги и затем выдать AK(d).

Присоединенный слуга по получении DS(t) должен принять, что действительные данные находятся на линиях MS и RD и, если подходит, также на линиях AD, РА и РЕ. Данные на этих линиях должны считаться действительными до тех пор, пока слуга не вы­работает сигнал DK(t) или не получит сигнал DS(t) или AS(d) (см. подпункты 4 и 5 п. 5.1.1).

Присоединенный слуга должен выставить SS и, если RD—1, также AD и на выбор РА и РЕ или ТР не позднее чем DK(t) и должен поддерживать эти сигналы до тех пор, пока состояние ли­ний MS и RD не изменится или будет получен сигнал DS(t) или AS(d).

Ответ слуги АК(п) или DK(t) должен означать, что слуга бу­дет отвечать на немедленно следующий сигнал DS(t). Ответ слуги AK(d) должен означать, что он находится в состоянии, в кото­ром он будет правильно отвечать на сигнал AS (и).

Слуга должен выдать SS = 6 в ответ на DS(t) для любой не­выполнимой операции. Слуга должен выдать SS в ответ на сиг­нал AS (и) в соответствии с табл. VI. В ответ на AS(d) слуга дол­жен выдать SS = 0. (Например, если нереализованный код MS со­провождает сигнал DS(d) после единичной передачи, устройство должно вернуть ответ SS = 6).

Если слуга должен поддерживать АК=1 в течение большего промежутка времени, чем время адресных ответных действий слу­ги после получения сигнала AS(d), слуга должен выставить WT=1. Мастер., видя, что АК=1, WT = 0, по истечении лимита вре­мени адресных ответных действий мастера, рассматривает это как ошибку.

  1. Использование линии ожидания (WT)

Все операции ФАСТБАС, за исключением принудительных пе­редач, являются асинхронными. Если требуется, таймирующие сигналы могут быть запрещены при помощи линии WT (ожидание). Линия WT используется, когда взаимодействие мастер/слуга про­исходит через соединитель сегментов.

В течение принудительной передачи слуга должен игнорировать WT=1.

Сигнал WT должен следующим образом использоваться для за­держки таймирующих ответных действий в сегментах ФАСТБАС:

  1. При получении управляющего сигнала WT=1 действующий мастер должен сбросить и запретить .свой активный таймер от­ветных действий (адресного цикла или цикла данных). Мастер мо­жет выполнить внутренние ответные действия на таймирующие сиг­налы AG, АК и DK, но не должен изменять состояние таймирую­щих сигналов AS и DS.

  2. Если в мастере имеется таймер ожидания, управляемый при помощи регистра CSR-9, он должен быть запущен при получении сигналу WT (и).

  3. При получении управляющего сигнала WT=1 слуга может внутренне ответить на таймирующие сигналы AS и DS, но не дол­жен изменять состояние таймирующих сигналов АК 'или DK.

  4. Как для мастера, так и слуги, а также для вспомогательной логики операция ФАСТБАС должна возобновиться, когда получен управляющий сигнал WT = 0.

  5. При получении сигнала WT (d) действующий мастер должен перезапустить соответствующий ситуации таймер ответных дейст­вий (адресного цикла или цикла данных).

  6. При получении управляющего сигнала WT=1 контролер таймирования арбитража (см. п. 7.1) должен запретить свой тай­мер GK (и) (подтверждение разрешения).

  7. При получении сигнала WT (d) контроллер таймирования арбитража должен перезапустить свой таймер ответных действий GK (и).

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

  1. Первичные адресные циклы

Первичный адресный цикл операции ФАСТБАС устанавливае. связь между мастером и одним или более слугами. Слуги остаютсг присоединенными к мастеру и отвечают на циклы данных до те: пор, пока мастер не разорвет связку.

Первичный адресный цикл начинается после того, как мастер получил право на владение магистралью и выставил на магистралі сигнал GK—1. Мастер затем выставляет сигнал RD = 0, а такж( подает сигналы на линии MS, AD и, возможно, на линии РА, РЕ г EG. Затем подается строб адреса AS, и слуги, получающие сиг налы AS=1, EG = 0, сравнивают, в зависимости от состояния лини? MS, либо свои логические адреса, либо широкие адреса с адре сом, полученным по линиям AD. Слуги, получающие сигналь АК=0, AS=1 и EG=1, сравнивают адрес, поступивший по лини ям AD, со своим географическим адресом. Если была затребован; связь с единственным слугой, то слуга, который распознает по сланный адрес, возвращает действующему мастеру сигнал АК (и) указывающий, что этот слуга теперь становится присоединенныь к мастеру. Если был указан широкий адрес, ответный сигнал АК(и' генерируется вспомогательной логикой, и этот сигнал, когда он по лучен действующим мастером, служит признаком того, что широки/ адрес распространился через указанные части системы. В теченш остальной части операции действующий мастер поддерживает AS = = 1, а присоединенный слуга (или вспомогательная логика) под держивает АК=1. Мастер завершает операцию, подавая AS = 0, ; слуга или вспомогательная логика отвечают сигналом АК=0. Ког да сигналы AS = AK=0 в течение достаточного промежутка време ни, мастер может инициировать новый первичный адресный цикл если он сохранил свое право на владение магистралью, продолжа; подавать сигнал GK=1.