На главную | База 1 | База 2 | База 3

ГОСУДАРСТВЕННЫЙ СТАНДАРТ СОЮЗА ССР

ФАСТБАС

МОДУЛЬНАЯ БЫСТРОДЕЙСТВУЮЩАЯ СИСТЕМА
СБОРА ДАННЫХ

ГОСТ 34.340-91
(МЭК 935-90)

КОМИТЕТ СТАНДАРТИЗАЦИИ И МЕТРОЛОГИИ СССР

Москва

СОДЕРЖАНИЕ

Предисловие. 4

Предисловие научного редактора русского текста. 4

Введение. 9

Глава 1. Назначение, область применения и вводный обзор. 10

1.1. Назначение и область применения. 10

1.2. Введение и общие сведения. 10

1.2.1. ФАСТБАС-операции. 13

1.2.2. Соединители сегментов СС.. 16

1.2.3. Регистры управления и статуса. 17

1.2.4. Географическая адресация. 17

1.2.5. Передача блока и принудительная передача блока. 18

1.2.6. Операции с фиксированным адресом и заблокированным арбитражем.. 19

1.2.7. Сканирование редких данных. 20

1.2.8. Широкие операции. 20

1.2.9. Арбитраж владения магистралью.. 21

1.2.10. Прерывания. 22

1.2.11. Таймирование. 22

1.2.12. Инициализация. 23

1.2.13. Средства диагностики. 23

Глава 2. Условия, определения, сокращения и символы.. 24

2.1. Интерпретация настоящего стандарта. 24

2.2. Обозначения и условия логических сигналов. 24

2.3. Определения. 25

2.4. Буквенные обозначения. 31

2.5. Символы.. 32

Глава 3. Сигналы, сигнальные линии и штырьки разъемов. 33

3.1. Типы сигнальных линий. 33

3.2. Обозначения характера сигналов. 33

3.3. Краткое описание сигналов, линий и штырьков. 34

3.3.1. AS - строб адреса (Т, мастер) 34

3.3.2. АК - подтверждение приема адреса (Т, слуга или вспомогательная логика ВЛ) 34

3.3.3. EG - разрешение географической адресации (УТ, мастер или ВЛ) 34

3.3.4. MS - выбор режима передачи (У, мастер) 34

3.3.5. AD - адрес/данные (И, мастер или слуга) 34

3.3.6. SS - состояние слуги (И, слуга) 35

3.3.7. DS - строб данных (Т, мастер) 35

3.3.8. DK - подтверждение приема данных (Т, слуга или ВЛ) 35

3.3.9. RD - чтение (У, мастер) 35

3.3.10. РЕ - разрешение контроля по четности (И, мастер или слуга) 35

3.3.11. РА - четность (И, мастер или слуга) 35

3.3.12. WT - ожидание (А, любое устройство) 35

3.3.13. AR - запрос на арбитраж (А, мастер) 35

3.3.14. AG - разрешение на арбитраж (ТА, вспомогательная логика) 35

3.3.15. AL - уровень арбитража (ИА, мастер) 35

3.3.16. GК - подтверждение приема разрешения на арбитраж (ТА, мастер) 36

3.3.17. AI - запрет запроса на арбитраж (УА, вспомогательная логика) 36

3.3.18. SR - запрос на обслуживание (А, мастер или слуга) 36

3.3.19. RB - сброс магистрали (А, мастер или мастер через СС) 36

3.3.20. ВН - магистраль остановлена (У, вспомогательная логика) 36

3.3.21. GA - географический адрес (Ф, запаянная кодирующая схема) 36

3.3.22. ТР - Т-штырьки (И, слуга) 36

3.3.23. DL, DR - цепная связь (И, мастер или слуга) 36

3.3.24. ТХ, RX - линии Последовательной сети (А, мастер или слуга) 37

3.3.25. TR - согласованные линии ограниченного применения. 37

3.3.26. UR - несогласованные линии ограниченного применения. 37

3.3.27. Другие линии и штырьки. 37

3.4. Нагрузка линий. 37

3.4.1. Допустимые пределы токов и напряжений для сигнальных линий и F-штырьков. 37

Глава 4. ФАСТБАС-операции. Адресация. 37

4.1. Логическая адресация. 38

4.2. Географическая адресация. 40

4.3. Широкая адресация. 41

4.3.1. Как мастер управляет широкой операцией. 42

4.3.2. Ответ слуги на широкие операции. 44

4.4. Вторичная адресация. 45

4.5. Операция сканирования редких данных и узорного выбора устройств. 46

Глава 5. Операция ФАСТБАС. Таймирование, последовательности и ответные действия. 47

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

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

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

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

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

5.2.1. Последовательность действий мастера для формирования сигнала AS. 52

5.2.2. Ответные действия слуги на сигнал AS (u) 53

5.2.3. Ответные действия мастера на сигнал АК(u) 55

5.3. Операции. 56

5.3.1. Последовательность действий мастера для формирования сигнала DS. 57

5.3.2. Ответные действия слуги на сигнал DS (t). 59

5.3.3. Обсуждение ответов по линиям «статус слуги». 59

5.3.4. Реакция мастера на DK (t) 62

5.4. Использование линии «сброс магистрали» (RB) 63

5.4.1. Формирование сигнала RB мастером.. 63

5.4.2. Ответныe действия слуги на сигнал RB.. 63

5.5. Ответные действия устройства на включение питания. 63

Глава 6. Арбитраж в магистрали. 63

6.1. Использование линий магистрали в процессе арбитража. 64

6.2. Процесс арбитража. 66

6.3. Правила арбитража. 69

6.3.1. Формирование мастером сигнала AR и пропускание соединителем сегментов сигнала АR.. 69

6.3.2. Установка и снятие сигнала AI схемой УТА.. 70

6.3.3. Установка и снятие сигнала AG схемой УТА.. 70

6.3.4. Установка и снятие сигнала AL мастером.. 70

6.3.5. Установка и снятие сигнала GK мастером.. 71

6.4. Арбитраж системного уровня. 72

Глава 7. Вспомогательная логика в сегменте. 73

7.1. Управление таймированием арбитража (УТА) 73

7.1.1. Формирование сигнала AI схемой УТА.. 73

7.1.2. Формирование сигнала AG схемой УТА.. 73

7.2. Управление географической адресацией. 74

7.3. Формирование системного подтверждения при широкой операции. 75

7.4. Управление «работа/останов» и сигнал «магистраль остановлена». 76

7.5. Согласователи. 77

7.6. Вспомогательная логика для крейт-сегментов. 77

7.7. Вспомогательная логика для кабель-сегментов. 78

Глава 8. Область адресов регистров управления и состояний. 78

8.1. Функции селективной установки и сброса. 79

8.2. Распределение области адресов нормальных CSR-регистров. 80

8.3. CSR-регистр 0. 81

8.3.1. Идентификаторы устройств и их распределение. 81

8.3.2. Распределение битов управления и статуса. 82

8.4. CSR-регистр 1. 84

8.5. CSR-регистр 2. 85

8.6. CSR-регистр 3. 87

8.7. CSR-регистр 4. 87

8.8. CSR-регистр 5. 88

8.9. CSR-регистр 6. 88

8.10. CSR-регистр 7. 88

8.11. CSR-регистр 8. 88

8.12. CSR-регистр 9. 88

8.13. CSR-регистры с Ah no Fh. 89

8.14. CSR-регистры с 20h no 3Fh. 89

8.15. CSR-регистры с 70h no 81h. 89

8.16. CSR-регистры с AOh пo AFh, с BOh пo BFh и COh и CFh. 90

8.17. CSR-регистры с 8000 0000h пo BFFF FFFFh, параметрическая область. 90

8.18. Сброс битов CSR-регистров. 92

Глава 9. Прерывания. 92

9.1. Операция прерывания. 93

9.2. Линия «запрос на обслуживание». 94

Глава 10. Соединение сегментов. 95

10.1. Типы соединителей сегментов. 96

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

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

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

10.5. Регистры управления и состояний в СС.. 100

10.5.1. Регистр CSR# 0 - идентификатор, статус и управление. 100

10.5.2. CSR# 1 - уровень арбитража дальней стороны.. 102

10.5.3. CSR# 8 - уровень арбитража ближней стороны.. 102

10.5.4. CSR# 9 - управление таймерами. 103

10.5.5. СSR# 40h - адрес маршрутной таблицы.. 103

10.5.6. CSR# 41h - данные маршрутной таблицы.. 103

10.5.7. CSR# 42h - географический адрес ближней стороны.. 103

10.5.8. CSR# 43h - географический адрес дальней стороны.. 104

10.5.9. Результаты различных действий над битами CSR-регистров в СС.. 104

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

10.6.1. Информация о пропускании, месте назначения и базовом адресе. 104

10.6.2. Правила формирования. 105

10.7. Действия соединителей сегментов. 105

10.7.1. Распознавание адреса. 105

10.7.2. Участие соединителя сегментов в арбитраже. 106

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

10.7.4. Отрицательные ответы.. 107

10.7.5. Модификация географических и широких адресов. 108

10.7.6. Пропускание операции. 108

10.7.7. Использование и формирование СС сигнала «четность». 110

10.7.8. Ответные действия СС на сигнал RB.. 110

10.7.9. Требования к таймированию.. 110

10.8. Регистр базового адреса. 111

Глава 11. Блочные и принудительные передачи. 111

11.1. Завершение блочных и принудительных передач. 112

11.2. Увеличение внутреннего адреса при блочной передаче. 113

11.3. Устройства типа ПВПВ и ошибки при передаче данных. 113

Глава 12. Характеристики сигналов. 114

12.1. Уровни сигналов. 114

Глава 13. Модули. 115

13.1. Печатная плата модуля. 115

13.1.1. Площадка заземления для разряда статических зарядов. 116

13.1.2. Ребра жесткости. 116

13.2. Разъемы.. 116

13.2.1. Сегментный разъем.. 116

13.2.2. Вспомогательный разъем модуля. 117

13.2.3. Разъемы других типов. 124

13.2.4. Обозначения контактов сегментного и вспомогательного разъемов. 124

13.3. Рабочие температуры и рассеяние тепла. 124

13.3.1. Температурные режимы микросхем и модулей. 124

13.3.2. Энергорассеяние. 125

13.3.3. Охлаждение. 126

13.4. Передняя панель. 126

13.5. Индикаторы режимов работы модуля. 127

13.6. Обозначения используемых источников питания. 127

13.7. Переходные процессы.. 127

Глава 14. Крейты.. 127

14.1. Конструкция крейта. 127

14.2. Задняя плата крейта. 127

14.2.1. Сегментный разъем крейта и примыкающий монтаж.. 128

14.2.2. Вспомогательный разъем крейта. 131

14.2.3. Направляющие разъемов. 132

14.2.4. Требования к проводникам на задней плате. 132

14.2.5. Другие элементы задней платы.. 132

14.3. Охлаждение. 132

14.4. Блок переключения работа/останов. 133

14.5. Печатные платы, устанавливаемые с тыльной стороны задней платы.. 133

14.6. Маркировка крейтов. 134

14.7. Контакты для разряда статических зарядов. 134

Глава 15. Питание. 135

Глава 16. Кабель сегмент. 135

16.1. Сигналы в кабель-сегменте. 135

16.2. Разъемы кабель-сегментов и назначения контактов. 136

Приложение А Требования к оборудованию при различных вариантах его реализации. 138

А.1. Реализация на элементах ЭСЛ.. 138

А.1.1. Уровни сигналов и условия соединения элементов ЭСЛ.. 138

А.1.2. Длительности сигналов при использовании микросхем ЭСЛ.. 140

А.1.3. Выдержка. 140

А.1.4. Время срабатывания. 140

А.1.5. Согласователи. 140

А.1.6. Требования к токам генератора сигнала GA.. 140

А.1.7. Разница в температурах корпусов микросхем.. 140

А.1.8. Распределение модулей вдоль крейт-сегментов. 140

Приложение В Соединения через разъемы передней панели при использовании элементов ЭСЛ.. 142

В.1. Амплитуды и логические уровни сигналов. 142

В.2. Кабели. 142

В.3. Разъемы.. 142

В.4. Формирователи, приемники и согласователи. 142

Приложение С Реализация кабель-сегментов. 143

С.1. Электрические характеристики кабель-сегмента. 145

С.2. Реализация кабель-сегмента на элементах ЭСЛ.. 146

Приложение D Примеры построения логических цепей мастера. 146

D.1. Цепи арбитража в мастере. 146

Приложение Е Соединитель сегментов системы фастбас типа S-1. 147

Е.1. Общая характеристика соединителей сегментов типа S-1. 147

Е.1.1. Тип соединителя. 147

Е.1.2. Конструктивное исполнение. 147

Е.1.3. Кабель-сегмент. 148

Е.1.4. Поле адреса группы.. 148

Е.1.5. Маршрутная таблица. 148

Е.1.6. CSR# 0- идентификатор, статус и управление. 148

Е.2. Устройство передней панели. 148

Приложение F Конструкция модулей. 149

F.1. Типовые варианты конструкции модулей. 149

приложение G Примеры построения крейтов типа А.. 149

G.1. Крейт типа А.. 150

G.1.1. Конструкция крейта типа А.. 150

G.1.2. Задняя панель крейта типа А.. 150

G.2. Пример построения крейта типа А.. 150

G.3. Средства для монтажа схемных плат за задней платой. 150

Приложение H Примеры построения крейтов и модулей типа W... 154

Н.1. Крейт типа W... 154

Н.1.1. Конструкция крейта типа W... 154

Н.1.2. Пример построения крейта типа W... 155

Н.2. Построение модулей для крейта типа W... 155

Приложение I Типовые источники питания. 157

I.1. Источник питания с высоким к.п.д. 157

I.1.1. Общая характеристика. 157

I.1.2. Коэффициент полезного действия. 157

I.1.3. Диапазон температур окружающего воздуха. 157

I.1.4. Напряжение сети. 158

I.1.5. Выходные напряжения. 158

I.1.6. Дистанционные измерения. 158

I.1.7. Отклонения и стабильность питания. 158

I.1.8. Температурный коэффициент. 158

I.1.10. Время восстановления и перерегулирования при включении и отключении. 159

I.1.11. Токовые и электромагнитные наводки. 159

I.1.12. Выходные клеммы. 159

I.1.13. Органы настройки напряжений. 159

I.1.14. Средства защиты.. 159

I.1.15. Средства контроля. 160

I.1.16. Задание предельных напряжений. 160

I.1.17. Внешнее управление срабатыванием разъединителя. 160

I.1.18. Включаемая сетевая розетка. 160

I.1.19. Передняя панель. 160

I.1.20. Установка в корпус. 160

I.1.21. Охлаждение. 160

I.2. Источник питания с пониженным уровнем шумов. 161

I.2.1. Общая характеристика. 161

I.2.2. Коэффициент полезного действия. 161

I.2.3. Диапазон температур окружающего воздуха. 161

I.2.4. Напряжение сети. 161

I.2.5. Выходные напряжения. 161

I.2.6. Дистанционные измерения. 161

I.2.7. Отклонения и стабильность питания. 161

I.2.8. Температурный коэффициент. 161

I.2.9. Шум и пульсация. 161

I.2.10. Время восстановления и перерегулирования при включении и отключении. 161

I.2.11. Токовые и электромагнитные наводки. 161

I.2.12. Выходные клеммы. 161

I.2.13. Органы настройки напряжений. 161

I.2.14. Средства защиты.. 161

I.2.15. Средства контроля. 161

I.2.16. Задание предельных напряжений. 161

I.2.17. Внешнее управление срабатыванием разделителя. 161

I.2.18. Включаемая сетевая розетка. 161

I.2.19. Передняя панель. 161

I.2.20. Установка в корпус. 161

I.2.21. Охлаждение. 161

Приложение J Процедуры обработки ненулевого статуса. 161

J.1. Ошибки при выполнении адресного цикла. 162

J.1.1. Превышение лимита времени при передаче адреса. 162

J.1.2. Ошибка по четности при передаче адреса. 162

J.1.3. SS-1 при передаче адреса «магистраль занята». 162

J.1.4. SS-2 при передаче адреса «неисправность магистрали». 162

J.1.5. SS-3 при передаче адреса «магистраль не принимает». 162

J.1.6. Ответы СС с кодами SS-1, SS-2 или SS-3 «общее описание». 162

J.1.7. Прослеживание маршрута, пройденного операцией. 163

J.1.8. SS = 4 при передаче адреса «зарезервированный код». 163

J.1.9. SS = 5 при передаче адреса «зарезервированный код». 163

J.1.10. SS = 6 при передаче адреса «зарезервированный код». 163

J.1.11. SS = 7 при передаче адреса «несуществующий IA» (принят) 163

J.2. Превышение лимита времени при передаче данных. 163

J.3. Ответы на запросы статуса слуги. 164

J.3.1. SS = 0 - исправная работа. 164

J.3.2. SS = 1 - занят. 164

J.3.3. SS = 2 - конец блока. 164

J.3.4. SS = 3 - определяется пользователем.. 164

J.3.5. SS = 4 - зарезервирован. 164

J.3.6. SS = 5 - зарезервирован. 164

J.3.7. SS = 6 - ошибочные данные (забракованы) 164

J.3.8. SS = 7 - ошибочные данные (приняты) 164

J.4. Реакция хозяина на сообщения об ошибках. 165

J.5. Ошибки при обмене данными со стеками ПВПВ и портами ввода/вывода. 165

J.5.1. Введение. 165

J.5.2. Ошибки при операциях чтения. 166

J.5.3. Ошибки при операциях записи. 166

Приложение К Компоненты.. 167

К.1. Разъемы.. 167

К.1.1. Разъемы модуля. 167

К.1.2. Сегментные и вспомогательные разъемы для крейта. 167

Приложение L Требования к конструкции и системе. 168

L.1. Внутренние соединения в системе питания. 168

L.2. Конструкция печатной платы.. 168

L.2.1. Материал для изготовления платы.. 168

L.2.2. Процедура пайки. 168

L.3. Конструкция задней панели крейта. 168

L.3.1. Защитное покрытие задней панели. 168

L.3.2. Штырьки сегментного разъема. 168

Приложение А.2 Реализация при ттл-уровнях сигналов на платах модулей и при бтл-уровнях в магистрали крейт-сегмент - система расширенный ФАСТБАС (РФБ) 180

А.2.2. Введение. 180

А.2.3. Состав системы Расширенный ФАСТБАС и ее характеристики. 181

А.2.4. Основное назначение подсистем ФАСТБАС.. 183

А.2.5. Особенности конструкции модулей и крейтов. 183

А.2.6. Регистры управления и состояний CSR.. 185

А.2.7. Соединители сегментов. 189

А.2.8. Питание. 195

ПРЕДИСЛОВИЕ

1. Официальные решения или соглашения МЭК по техническим вопросам, подготовленные техническими комитетами, в которых представлены все заинтересованные национальные комитеты, выражают с возможной точностью международную согласованную точку зрения по рассматриваемым вопросам.

2. Решения представляют собой рекомендации для международного пользования и в этом виде принимаются национальными комитетами.

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

4. МЭК не дает каких-либо критериев обозначения соответствия оборудования рекомендациям МЭК и не несет ответственности в случае заявления, что оно соответствует требованиям хотя бы одной из них.

ПРЕДИСЛОВИЕ НАУЧНОГО РЕДАКТОРА РУССКОГО ТЕКСТА

Техническое задание на разработку системы Фастбас было сформулировано группой ядерных электронщиков, работающих в ведущих институтах США, к июлю 1977 г. Разработку стандарта финансировало Министерство энергетики. Разработчики собирались для обсуждения промежуточных результатов и возникающих проблем не реже чем раз в квартал в течение пяти лет. К 1980 г. появилась первая версия стандарта, затем ежеквартально выпускались обновленные версии. Специалисты европейских институтов, объединенные комитетом European Standards on Nuclear Electronics (ESONE), анализировали версии и предлагали свои рекомендации. К ноябрю 1982 г. разработка была завершена - комитет Nuclear Instruments Modules (NIM) объявил о принятии стандарта.

Началась разработка аппаратуры в стандарте Фастбас. Наиболее значительные результаты публиковал и публикует журнал «IЕEE Transactions on Nuclear Science».

На основе накопившегося опыта стандарт Фастбас был уточнен и в 1986 г. стал национальным стандартом США ANSI/IEEE Std 960-1986. В сентябре 1983 г. стандарт был представлен в Технический комитет № 45 Международной электротехнической комиссии, а в январе 1987 г. ТК 45 принял решение о публикации стандарта Фастбас в качестве стандарта МЭК-935, он вышел в свет в июне 1990 г. Настоящий стандарт является аутентичным переводом стандарта.

В Приложении А.1 в качестве примера описана реализация логического протокола Фастбас на быстродействующих ЭСЛ-элементах. Большая плата модуля размером (366,7×400) мм позволяет разместить большое число ЭСЛ-микросхем и рассеять мощность до 75 Вт на каждый модуль единичной ширины. Этот вариант реализации нацелен на создание наиболее быстродействующей стационарной аппаратуры.

В гл. 12 оговорена возможность реализации протокола на элементах любого типа. Учитывая это, группа специалистов (С.Г. Басиладзе, В.В. Кипаренко, О.А. Никольский, В.Н. Тресоруков и К.Э. Эрглис) предложила реализовать протокол Фастбас на экономичных ТТЛ- и КМОП-микросхемах при БТЛ-уровнях сигналов в магистрали. Более высокая степень интеграции микросхем и малое потребление энергии позволили уменьшить размеры модулей и крейтов, обеспечивая возможность применения аппаратуры в цехах и на бортах. Было предложено также дополнить стандарт выборкой байтов данных и модификацией длины адресного слова. Расширение стандарта Фастбас описано в приложении А.2, которое подготовил К. Эрглис при участии С. Басиладзе.

Весной 1987 г. проект настоящего стандарта (в виде перевода проекта стандарта МЭК с дополнением А.2) был разослан в 30 предприятий разных ведомств. Из 23 ответивших предприятий 12 высказались за использование расширенного стандарта Фастбас в качестве основы Единой системы магистрально-модульной многопроцессорной информационно-измерительно-управляющей аппаратуры (ЕС МММИИУА), а остальные предприятия предложили использовать другие стандарты.

Следует особо отметить две характеристики стандарта Фастбас: точное определение функций каждого бита в стандартизованных регистрах управления и состояний (гл. 8) и описание логического протокола соединителей сегментов (гл. 10).

Стандартизация функций битов РУС позволила создать второй стандарт Фастбас - Fastbus Standard Routines (IEEE Std 1177-1989 или МЭК-1052 (апрель 1991 г.), который определяет специализированный макроассемблер для программирования операций на магистралях Фастбас. Этот стандарт в переводе на русский язык также целесообразно издать в качестве Государственного стандарта.

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

Об организации разработки стандартов Фастбас можно судить по списку участников, которым открываются национальные стандарты. Перевод на русский язык выполнили К.Э. Эрглис, А.Д. Росляков и А.В. Шалаев.

В совокупности стандарты Фастбас определяют 5 уровней модели открытых систем, при этом программирование является единым как для передач между модулями внутри крейта, так и для передач между крейтами в локальной сети Фастбас произвольной формы. Комплекс из трех стандартов Фастбас обеспечит возможность создания наиболее эффективных систем МММИИУА разной мощности и назначения при минимальных стоимостях разработки, программирования, производства и эксплуатации.

ВВЕДЕНИЕ

Настоящий стандарт подготовлен Техническим комитетом 45 «Ядерное приборостроение» МЭК. Текст стандарта основан на следующих документах:

По правилу шести месяцев

Отчет о голосовании

45 (ЦБ) 182

45 (ЦБ) 186, 186А

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

В стандарте имеются ссылки на следующие Публикации МЭК:

113-7-(1981) (ГОСТ 2.743-82) Диаграммы, чертежи, таблицы. Часть 7. Подготовка логических диаграмм.

169-10 (1983)* Радиочастотные соединители. Часть 10. Радиочастотные коаксиальные соединители с внутренним диаметром внешнего проводника 3 мм (0,12 дюйма) с зажимным сочленением. Волновое сопротивление 50 Ом (тип SMB).

* Данная Публикация МЭК находится в фонде стандартов ТК 22 (НПО «Персей»)

297-1 (1982) (ГОСТ 28601.1-90) Конструкции несущие серии 482,6 мм (19 дюймов). Часть 1. Панели и стойки.

516 (1975) (ГОСТ 27080-86) Модульная система приборов для обработки данных. Система КАМАК.

547 (1976)* Вставной модуль и стандартный 19-дюймовый каркас для размещения модулей по стандарту NIM (для ядерного приборостроения).

* Данная Публикация МЭК находится в фонде стандартов ТК 22 (НПО «Персей»)

ГОСУДАРСТВЕННЫЙ СТАНДАРТ СОЮЗА ССР

ФАСТБАС

Модульная быстродействующая система сбора данных

Fastbus. Modular high speed data acquisition system

ГОСТ
34.340-91

(МЭК 935)

Дата введения 01.07.92

ГЛАВА 1. НАЗНАЧЕНИЕ, ОБЛАСТЬ ПРИМЕНЕНИЯ И ВВОДНЫЙ ОБЗОР

Данный раздел включает назначение и область применения данного стандарта, а также вводный обзор.

1.1. Назначение и область применения

Настоящий стандарт определяет магистрально-модульную систему для сбора данных, их обработки и управления.

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

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

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

Положения стандарта являются рекомендуемыми. При применении стандарта обязательными являются требования, заключённые в рамку.

1.2. Введение и общие сведения

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

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

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

Модульные системы отличаются методами связи устройств, образующих систему. Должны быть стандартизованы механические, электрические и логические соединения. Электрические соединения осуществляются набором сигнальных линий, которому дано название СЕГМЕНТ. ФАСТБАС-УСТРОЙСТВА могут быть соединены просто при помощи КАБЕЛЬ-СЕГМЕНТОВ, однако такая компоновка может повлечь за собой снижение скорости. В локальных устройствах необходимые свойства достигаются объединением нескольких МОДУЛЕЙ в КРЕЙТЕ, чтобы использовать общую магистраль, располагаемую на задней панели (рис. 1). Эта магистраль, называемая КРЕЙТ-СЕГМЕНТОМ или СЕГМЕНТОМ, как и КАБЕЛЬ-СЕГМЕНТ, образует логический блок системы ФАСТБАС.

Используя ФАСТБАС-протокол, СЕГМЕНТ работает как автономная магистраль, связывающая один или более УСТРОЙСТВ-МАСТЕРОВ с рядом УСТРОЙСТВ-СЛУГ. При выполнении всех операций на магистрали устанавливается соотношение между МАСТЕРОМ и СЛУГОЙ, при котором инициатором должен быть МАСТЕР, а отвечающим - СЛУГА. МАСТЕР способен запрашивать и получать управление сегментом, к которому он присоединен, чтобы связываться со СЛУГОЙ. Если связь устанавливается с другим МАСТЕРОМ, то на время операции отвечающий МАСТЕР действует как СЛУГА. СЛУГА не может получить право владения магистралью, но может сделать запрос на обслуживание тому МАСТЕРУ на том же СЕГМЕНТЕ, который способен начать процедуру обслуживания запроса. МАСТЕРА располагают более разнообразным механизмом прерываний, благодаря которому они могут овладеть магистралью и записать сообщение о прерывании в устройство обслуживания прерываний.

1 - крейт; 2 - соединение сегмента с другими сегментами, интерфейсом процессора и т.п.; 3 - к модулю соединителю сегментов; 4 - вставные модули: мастер, слуга, соединитель сегментов, специального назначения; 5 - крейт-сегмент (магистраль на задней плате); 6 - разъемы крейт-сегмента; 7 - вспомогательные разъемы крейта

Рис. 1. Основные элементы системы ФАСТБАС

При нескольких МАСТЕРАХ в СЕГМЕНТЕ должны быть предусмотрены средства для урегулирования одновременных запросов на пользование магистралью. Каждому МАСТЕРУ присвоен Уровень арбитража, который он использует во время Циклов арбитража. В ответ на таймирующие сигналы, получаемые от управления таймированием арбитража, которое принадлежит СЕГМЕНТУ, схема в каждом МАСТЕРЕ определяет, какому из претендующих МАСТЕРОВ будет отдано владение магистралью. Процедура арбитража обычно не вызывает потерь времени, поскольку следующий МАСТЕР может быть определен до того, как действующий МАСТЕР закончит свою операцию.

Несколько МАСТЕРОВ, расположенных в одном СЕГМЕНТЕ, используют общую магистраль. С точки зрения МАСТЕРА соревнование за право владения магистралью может снизить ее пропускную способность из-за потерь времени на ожидание. Поскольку СЕГМЕНТЫ работают независимо, распределение МАСТЕРОВ по нескольким СЕГМЕНТАМ может смягчить проблему соревнования и увеличить пропускную способность благодаря тому, что информация, нужная каждому МАСТЕРУ, может быть локализована в его СЕГМЕНТЕ.

1 - процессор-хозяин; 2 - интерфейс процессора; 3 - согласователь; 4 - кабель-сегмент; 5 - соединитель сегментов; 6 - мастер; 7 - крейт-сегмент (согласованный); 8 - слуги

Рис. 2. Пример топологии системы ФАСТБАС

МАСТЕР в данном СЕГМЕНТЕ должен также быть способным быстро связываться со СЛУГОЙ, расположенным в другом СЕГМЕНТЕ. Эта способность обеспечивается СОЕДИНИТЕЛЯМИ СЕГМЕНТОВ (СС), которые временно связывают независимые СЕГМЕНТЫ (рис. 2).

Все СЕГМЕНТЫ, выполняющие операцию, должны быть в то же время доступны для проведения межсегментной операции. Механизм арбитража, наряду с соответствующими схемами в каждом соединителе СЕГМЕНТОВ СС, обеспечивает разрешение проблем соревнования за магистраль для МАСТЕРОВ, находящихся как в данном, так и в других СЕГМЕНТАХ. Поскольку данный СЕГМЕНТ может быть связан с любым из ряда различных СЕГМЕНТОВ, могут быть реализованы такие конфигурации систем, в которых пути передачи информации оптимизированы с уменьшением затрат времени.

Среда, через которую сообщаются два СС, расположенные в разных СЕГМЕНТАХ, не стандартизована, это позволяет выбирать канал связи, наиболее подходящий для данного применения. Для таких соединений возможно использовать КАБЕЛЬ-СЕГМЕНТОВ совместно с эффективными средствами, стандартизованными в приложении Е. С КАБЕЛЬ-СЕГМЕНТОМ, кроме СС, могут быть соединены и другие устройства. Такие устройства также следуют ФАСТБАС-протоколу, имеют переключателе для кодирования входного адреса при ГЕОГРАФИЧЕСКОЙ АДРЕСАЦИИ и должны быть снабжены питанием.

Другие технические приемы связи СЕГМЕНТОВ включают использование БУФЕРИРОВАННЫХ МЕЖСОЕДИНЕНИЙ и РАСШИРИТЕЛЕЙ СЕГМЕНТОВ. БУФЕРИРОВАННОЕ МЕЖСОЕДИНЕНИЕ представляет собой устройство, которое хранит в памяти и продвигает операции ФАСТБАС, разрушая таким образом синхронизм между мастером и слугой. Концепция РАСШИРЕННОГО СЕГМЕНТА позволяет нескольким СЕГМЕНТАМ пользоваться одним АДРЕСОМ ГРУППЫ. Такое коллективное пользование достигается применением РАСШИРИТЕЛЕЙ СЕГМЕНТА, простота которых в сравнении с СОЕДИНИТЕЛЯМИ СЕГМЕНТОВ достигается за счет некоторого снижения гибкости в топологии системы и операциях для членов РАСШИРЕННОГО СЕГМЕНТА.

В большинстве случаев, если не всегда, МАСТЕРА должны иметь некоторые способности процессоров. При проектировании систем ФАСТБАС возникает также нужда в присоединении к системе больших и малых ЭВМ. Такое соединение выполняется при помощи ИНТЕРФЕЙСА-ПРОЦЕССОРА, который создает внешнему процессору доступ к ФАСТБАС-системе через КАБЕЛЬ или КРЕЙТ-СЕГМЕНТ (рис. 2). Системные требования диктуют необходимость иметь в каждой системе один процессор с полной информацией о структуре системы. В частности, он должен иметь доступ к любому СЕГМЕНТУ системы и знать, как СЕГМЕНТЫ соединены друг с другом. Этот процессор, названный ПРОЦЕССОРОМ-ХОЗЯИНОМ, инициирует систему, сообщая каждой стороне каждого СС, какие операции он должен передать в следующий СЕГМЕНТ. Используя ГЕОГРАФИЧЕСКУЮ АДРЕСАЦИЮ, ПРОЦЕССОР-ХОЗЯИН может выяснить местоположение и тип каждого УСТРОЙСТВА в системе и, если нужно, присвоить ЛОГИЧЕСКИЕ АДРЕСА УСТРОЙСТВАМ. ЛОГИЧЕСКИЕ АДРЕСА позволяют УСТРОЙСТВУ использовать поле ВНУТРЕННИХ АДРЕСОВ, приспособленное для нужд и независимое от положения УСТРОЙСТВА внутри СЕГМЕНТА.

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

·      Скорость ограничена только задержками распространения сигнала в среде и задержками алогических схемах, скорость обычно лучше чем 10 МГц при элементах ЭСЛ.

·      Большие поля адресов и данных (32 бита);

·      Сегментированная магистраль, допускающая параллельную работу сегментов;

·      Способность к соединениям во всем объеме системы;

·      Передача блоков данных с подтверждением или принудительная передача;

·      Единый протокол во всем объеме системы;

·      Наличие механизмов прерываний и арбитража.

1.2.1. ФАСТБАС-операции

ФАСТБАС-операции, описанные в гл. 5, выполняются при помощи многолинейной магистрали, назначение линий и сигналов в которой показано в табл. I. КАБЕЛЬ-СЕГМЕНТ состоит из 60 линий, указанных в верхней части списка. КРЕЙТ-СЕГМЕНТ содержит дополнительно другие линии, а также линии питания. Сигналы классифицированы в таблице в соответствии с применением:

Т - таймирование в циклах адреса и передачи данных;

У - управление в циклах адреса и передачи данных;

И - информация в циклах адреса и передачи данных;

А - асинхронный - таймирование не связано непосредственно с передачами информации;

ТА - таймирование арбитража;

ИА - информация о состоянии линий арбитража;

УА - управление арбитражем;

П - последовательные данные, их таймирование не зависит от работы параллельной магистрали;

Ф - фиксированная информация;

С - специальное назначение.

Большинство ФАСТБАС-операций начинается с запроса МАСТЕРА и предоставления ему владения магистралью. Затем МАСТЕР выбирает СЛУГУ первичным адресным циклом, сопровождая его любым числом циклов передачи данных, после этого магистраль освобождается.

Первичный адресный цикл начинает МАСТЕР, выставляя адрес СЛУГИ на 32 линии AD-адрес / данные и выдавая затем сигнал AS-строб адреса. Выставление адресного слова определяет путь (если нужно - через СОЕДИНИТЕЛИ-СЕГМЕНТОВ) между МАСТЕРОМ и СЛУГОЙ. Когда СЛУГА узнает свой адрес, он отвечает сигналом АК-подтверждение приема адреса. Протокол требует, чтобы сигналы AS и АК оставались на линиях до полного завершения операции.

Связка AS/AK побуждает все другие устройства не замечать работу магистрали, позволяя связавшейся паре выполнять любой понятный им протокол, пока не разорвана связь AS/AK. Для наиболее употребительных операций определены стандартные протоколы, чтобы облегчить разработку совместных УСТРОЙСТВ.

Таблица I

Сигналы ФАСТБАС

Обозначение

Название сигнала

Применение

Число

Примечание

AS

Строб адреса

Т

1

 

Для адресации и извещения о статусе соединения

АК

Подтверждение приема адреса

Т

1

 

EG

Разрешение географической адресации

У

1

 

MS

Выбор режима передачи

У

3

RD

Чтение

У

1

AD

Адрес/данные

И

32

Для данных и управления передачей данных

PA

Четкость

И

1

РЕ

Разрешение контроля по четкости

И

1

SS

Статус СЛУГИ

И

3

DS

Строб данных

т

1

DK

Подтверждение приема данных

т

1

WT

Ожидание

А

1

 

 

 

SR

Запрос на обслуживание

А

1

 

 

 

RB

Сброс магистрали

А

1

 

 

 

BH

Магистраль остановлена

У

1

 

 

 

AG

Разрешение на арбитраж

ТА

1

 

Для арбитража магистрали

AL

Уровень арбитража

ИА

6

 

AR

Запрос на арбитраж

А

1

 

AI

Запрет запроса на арбитраж

УА

1

 

GK

Подтверждение приема разрешения на арбитраж

ТА

1

 

 

60

 

 

 

ТХ

Передающая последовательная линия

П

1

 

RX

Приемная последовательная линия

п

1

Для протокола последовательной сети ФАСТБАС

GA

Штырьки географического адреса* (кодирование позиции, не соединены линиями)

ф

 

 

 

ТР

ТР-штырек* (не соединен с линией)

с

1

 

 

DL

Цепная связь налево

с

3

 

 

DR

Цепная связь направо

с

3

 

Только на крейт-сегменте

TR

Согласованная линия ограниченного применения

с

8

 

 

UR

Несогласованная линия ограниченного применения

с

2

 

 

FP

FP-штырьки (без линии, свободное использование)

 

4

 

 

R

Зарезервированы

 

5

 

 

* Вместо штырьков GA и ТР на КАБЕЛЬ-СЕГМЕНТЕ применяются переключатели-регистры.

По получении подтверждения АК от СЛУГИ МАСТЕР снимает код адреса с линий AD и использует эти линии для передачи данных в последующих циклах. После того, как связка AS/AK между МАСТЕРОМ и СЛУГОЙ установлена, МАСТЕР может начать операцию чтения выдачей сигналов на линию чтения (RD) и линию строб данных (DS), как показано на рис. 3. СЛУГА отвечает выставлением данных на линиях AD и выдачей сигнала DK - подтверждение приема данных. Этот сигнал использует МАСТЕР, чтобы взять данные.

При операции записи МАСТЕР выставляет данные на линиях AD и сопровождает это выставление сигналом DS - строб данных. СЛУГА отвечает выдачей DK - подтверждение приема данных. Операция отличается тем, что МАСТЕР снимает с магистрали все свои сигналы, включая AS. СЛУГА, обнаружив удаление AS, снимает свои сигналы, включая АК.

Поскольку циклы адреса и передачи данных легко различимы, МАСТЕР использует три линии выбора режима (MS <2:0>) как для модификации значения адресной информации, так и для того, чтобы независимо задать тип передачи данных. В первичном адресном цикле могут быть указаны одиночные данные, вторичный адрес, а также передача блока данных с подтверждением или принудительная передача - без подтверждения.

Подобным образом, три линии информации о статусе СЛУГИ (SS <2:0>) используют для индикации успешных циклов адреса и передачи данных или для сообщения о причинах неудачи. Трудности адресации могут возникать в СОЕДИНИТЕЛЯХ-СЕГМЕНТОВ из-за того, что они иногда не отвечают МАСТЕРУ, вследствие неисправности схемы или не могут получить доступ к СЕГМЕНТУ, присоединенному к дальней стороне и занятому, или СС заблокированы операцией с более высоким приоритетом. Зависание в магистрали, вызванное адресацией к несуществующему устройству в СЕГМЕНТЕ назначения, устраняется таймерами в МАСТЕРЕ или в том соединителе СС, который выдал адрес в СЕГМЕНТ назначения.

1 - адрес; 2 - данные

Рис. 3. Основная операция чтения с подтверждением (с точки зрения мастера)

В течение цикла передачи данных СЛУГА, в дополнение к способности показать, что он не может больше принимать данные или не имеет больше данных для передачи, может также сообщать, что в настоящий момент он занят или обнаружил ошибку одного из нескольких классов.

При передаче данных ФАСТБАС может быть применен контроль четности и должны быть обеспечены рекомендованные технические приемы для устранения ошибок. При операциях записи СЛУГИ обычно реагируют на ошибки передачи игнорированием правильных данных и сигнализируют МАСТЕРУ о том, что произошла ошибка. МАСТЕР может затем повторить операцию. Устранение ошибок при операциях считывания является более сложным. СЛУГА обычно бывает не осведомлен об ошибке и может прирастить свой внутренний указатель адреса или иметь доступ к регистру типа «Первый вошел - первый вышел» или к регистру с очисткой после чтения, следовательно, данные могут быть не доступны для повторной передачи. Для поддержки устранения ошибок при считывании может быть введен в работу ЗАЩИТНЫЙ БУФЕР.

ЗАЩИТНЫЙ БУФЕР всегда содержит копию последних данных, переданных СЛУГЕ или от СЛУГИ. Следовательно, путем введения подходящего ЗАЩИТНОГО БУФЕРА МАСТЕР может повторно обратиться к данным после ошибки в считывании.

1.2.2. Соединители сегментов СС

СОЕДИНИТЕЛЬ СЕГМЕНТОВ управляет деятельностью двух СЕГМЕНТОВ, которые он соединяет, ожидая появление адреса, который числится в списке адресов, запрограммированных для узнавания. На узнанный адрес, поступивший от одного из СЕГМЕНТОВ на ближнюю сторону, СС реагирует запросом на использование другого СЕГМЕНТА, присоединенного к дальней стороне, и выставлением данного адреса на этот СЕГМЕНТ после овладения его магистралью. Два СЕГМЕНТА остаются связанными друг с другом до тех пор, пока we закончится операция. Адрес, выставленный на дальней стороне, может, в свою очередь, быть узнан другим СОЕДИНИТЕЛЕМ СЕГМЕНТОВ и передан следующему СЕГМЕНТУ. В зависимости от потребителей данной операции может быть связано произвольное число СЕГМЕНТОВ. Адрес содержит всю информацию, необходимую для того, чтобы соответствующие СС образовали правильные соединения.

Для того, чтобы в адресе удобно располагалась информация о маршруте сообщения, полное адресное поле, доступное в системе, разделено между СЕГМЕНТАМИ таким образом, что старшие разряды кода адреса определяют адрес СЕГМЕНТА. Эта старшая часть адреса называется полем АДРЕСА ГРУППЫ (GP). СЕГМЕНТУ могут быть присвоены одно или несколько значений GP, если расположенные в нем устройства требуют большого объема адресации. УСТРОЙСТВА в СЕГМЕНТЕ различаются АДРЕСОМ МОДУЛЯ, который примыкает к полю GP и может включать несколько младших разрядов из поля GP. Комбинация из полей АДРЕСА ГРУППЫ и АДРЕСА МОДУЛЯ образует АДРЕС УСТРОЙСТВА, который служит для определения УСТРОЙСТВА в любом месте системы. Остающиеся младшие разряды адреса или ПОЛЕ ВНУТРЕННЕГО АДРЕСА служат для определения части УСТРОЙСТВА или его функций. Благодаря возможности проведения специального цикла передачи данных, называемого вторичным адресным циклом, число различных адресуемых частей или функций внутри устройства не ограничено числом, которое может быть выражено полем внутреннего адреса.

В простых СОЕДИНИТЕЛЯХ СЕГМЕНТОВ старшие разряды адреса используют для адресации к внутренней памяти, которая содержит таблицу адресов, подлежащих передаче. Во время инициации системы в память каждого СС вводится маршрутная таблица, необходимая для направления всех разрешенных операций.

Эта схема не создает ограничений на конфигурации связей между СЕГМЕНТАМИ. Например, они могут быть соединены в древовидную структуру с большой ЭВМ при стволе и устройствами для сбора данных на концах ветвей. Если между двумя СЕГМЕНТАМИ, расположенными в разных концах системы, требуется обеспечить большой поток информации, который мог бы загрузить промежуточные СЕГМЕНТЫ, целесообразно использовать КАБЕЛЬ-СЕГМЕНТ, чтобы обойти промежуточные СЕГМЕНТЫ. При таком добавлении не требуется изменять адреса УСТРОЙСТВ, достаточно задать в СС новые маршрутные таблицы, чтобы освободить промежуточные СЕГМЕНТЫ от излишних передач. По этой схеме могут быть реализованы древовидные, звездообразные, кольцевые и другие структуры.

Когда МАСТЕР начинает ФАСТБАС-операцию, он всегда запускает внутренний таймер ответных действий на время, достаточное для работы в данном СЕГМЕНТЕ. Если операцию нужно провести через один или более соединителей сегментов, МАСТЕР должен быть осведомлен о дополнительных задержках, которые встретятся, прежде чем будет получен ответ. Каждый СС, передающий операцию, выставляет сигнал ожидание WT в СЕГМЕНТ, из которого пришла операция, и запускает таймер на время, подходящее для СЕГМЕНТА, которому операция передается. Сигнал WT заставляет любого МАСТЕРА (а СС действует как МАСТЕР в том СЕГМЕНТЕ, в который он передает операцию) остановить свои таймер. Этот таймер запускается снова при снятии сигнала WT. Таким образом, операция проходит весь свой путь через систему без превышения лимитов времени, за исключением, разумеется, тех случаев, когда попадается СЕГМЕНТ, который не дает нормального подтверждения или не выставляет сигнал WT. В каждом МАСТЕРЕ имеется удлиняемый таймер, обнаруживающий тупиковые ситуации, которые могут возникать, например, при конфликтных запросах. После превышения лимита времени МАСТЕР ждет в течение случайного времени выдержки, прежде чем снова пытаться выполнить операцию.

1.2.3. Регистры управления и статуса

Область адресов некоторых регистров и функций в УСТРОЙСТВАХ желательно отделить от области нормальных регистров данных, чтобы предусмотреть защиту от случайного доступа и при этом не прерывать размещение областей адресов нормальных данных. Например, требуется чтобы два УСТРОЙСТВА памяти имели адресные области, расположенные рядом в адресном пространстве, чтобы их можно было использовать как одну большую память. Однако эти УСТРОЙСТВА могут содержать управляющие и статусные регистры, предназначенные для защиты памяти или обнаружения, или исправления ошибок, причем эти регистры также должны быть доступны. Более того, желательно, чтобы УСТРОЙСТВА имели основные статусные и информационные регистры в стандартном размещении, чтобы они были прямо доступны для программы со стандартными подпрограммами.

Для выполнения этих требований был использован метод выбора области адресов регистров управления и статуса (CSR) в первичном адресном цикле соответствующим кодированием линий MS. Во вторичном адресном цикле в области адресов CSR выбирается регистр, а затем в цикле передачи данных происходит передача к регистру или от него. Вторичная адресация предусматривает использование внутри УСТРОЙСТВА полного 32-разрядного адреса; такое адресное пространство достаточно для удобных стандартных размещений без опасения нехватки адресов. В предназначенных CSR-регистрах определены стандартные места для всех обычных управляющих и статусных битов. Рекомендуется встраивать в УСТРОЙСТВО регистр-идентификатор, уникальный для УСТРОЙСТВА данного типа и применяемый при инициализации систем. Биты идентификатора входят в статусный регистр 0, благодаря этому даже простые УСТРОЙСТВА без адресных дешифратов могут правильно реагировать на вызов, причем это достигается малым увеличением стоимости.

1.2.4. Географическая адресация

Наиболее общей формой адресацией к УСТРОЙСТВУ является логическая адресация, при которой адрес УСТРОЙСТВА не зависит от его физического положения в системе. Однако система ФАСТБАС имеет и ГЕОГРАФИЧЕСКУЮ АДРЕСАЦИЮ, при которой УСТРОЙСТВО выбирается по номеру в его физической позиции в СЕГМЕНТЕ, благодаря этому всегда возможно найти УСТРОЙСТВО с целью записи или проверки. ГЕОГРАФИЧЕСКАЯ АДРЕСАЦИЯ должна применяться для инициализации систем, в которых адресные регистры устанавливаются программно. Когда на такую систему подают питание, регистры, которые будут содержать информацию об АДРЕСЕ УСТРОЙСТВА, устанавливаются случайным образом. ГЕОГРАФИЧЕСКАЯ АДРЕСАЦИЯ используется для выбора УСТРОЙСТВА с целью загрузить их адресные регистры надлежащим содержимым. Первые 256 адресов в каждом СЕГМЕНТЕ зарезервированы для специальных целей, а первые 32 из них используются для ГЕОГРАФИЧЕСКОЙ АДРЕСАЦИИ. В КРЕЙТ-СЕГМЕНТЕ на каждой позиции модуля имеется сегментный раздел, в котором 5 штырьков кодированы (GA4 - GA0). Кодированное число 0 обозначает крайнюю правую позицию, если смотреть на крейт со стороны передней панели. Кодированное число возрастает на единицу при перемещении на одну позицию влево. Когда на магистрали выставлен ГЕОГРАФИЧЕСКИЙ АДРЕС (от 0 до 31), управляющая линия EG - разрешение географической адресации - возбуждена или вспомогательной логикой сегмента, или действующим МАСТЕРОМ. Когда во время первичного адресного цикла выдан сигнал EG, УСТРОЙСТВА сопоставляют код на своих штырьках с кодом пяти младших адресных битов на AD-линиях и отвечают, если обнаруживают совпадение кодов. Все УСТРОЙСТВА должны иметь эту способность, в то время как ЛОГИЧЕСКАЯ АДРЕСАЦИЯ не является обязательной.

Механизм ГЕОГРАФИЧЕСКОЙ АДРЕСАЦИИ может быть использован для доступа к управляющим информационным регистрам в неинициированных УСТРОЙСТВАХ, благодаря этому процедуры инициации могут выполняться автоматически. Обычные схемы узнавания логического адреса в устройстве не задействованы до тех пор, пока не выполнена инициализация.

1 - адрес; 2 - данные

Рис. 4. Передача блока с записями (с точки зрения мастера)

УСТРОЙСТВА, присоединяемые к КАБЕЛЬ-СЕГМЕНТУ, должны иметь переключаемые регистры для ручного задания и хранения ГЕОГРАФИЧЕСКОГО АДРЕСА.

1.2.5. Передача блока и принудительная передача блока

Операция передачи блока состоит из адресного цикла и любого числа циклов передачи данных одного типа - или все циклы чтения, или запись. Соединение между МАСТЕРОМ и СЛУГОЙ выполняется, как описано выше - с полным подтверждением как в начале, так и в конце операции. Скорость увеличена использованием обоих фронтов в паре сигналов строб данных и подтверждением приема данных DS/DK, при этом все же предусмотрена полная защита передачи данных благодаря подтверждениям. На рис. 4 показана передача блока с записями.

Возможна передача блока без подтверждений в циклах передачи данных. Такая принудительная передача блока допустима между УСТРОЙСТВАМИ, которые могут работать с одинаковой скоростью передачи данных. Например, в случае записи после первоначального подтверждения в адресном цикле с установлением связки AS/AK, МАСТЕР просто выставляет слова данных и выдает фронты DS с подходящей скоростью. Ответы DK как средство таймирования игнорируются, но их следует использовать для подсчета числа переданных слов с целью контроля. При такой работе сигнал DS становится строб-сигналом, который использует СЛУГА, чтобы находить слова данных в синхронной передаче. В случае чтения МАСТЕР выдает DS в качестве тактовых импульсов, которые СЛУГА использует для определения скорости передачи и сопровождает данные сигналом DK, который МАСТЕР воспринимает как строб данных.

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

В большинстве случаев в операциях желательно использовать полные подтверждения. В цикле передачи данных подтверждение позволяет обоим партнерам сделать, если нужно, паузу и досрочно закончить операцию (например, в случае переполнения буфера) при точном знании количества успешно переданных слов. В операциях без подтверждений в цикле передачи данных от МАСТЕРА требуется знание способности СЛУГИ и полосы пропускания всего пути, чтобы выбрать приемлемую тактовую частоту сигнала DS. Если есть запасы времени, лучше использовать более надежный режим работы с подтверждениями.

Если во время передачи блока МАСТЕР обнаруживает (через линию AR запроса на арбитраж), что другие УСТРОЙСТВА запрашивают магистраль, он может освободить магистраль и позднее возобновить передачу блока.

1.2.6. Операции с фиксированным адресом и заблокированным арбитражем

Описанные выше операции могут быть обобщены, если допустить поток данных в обратном направлении. Операции с фиксированным адресом содержит первичный адресный цикл, сопровождаемый любым числом вторичных адресных циклов и/или циклов передачи данных. Например, в течение цикла чтение-модификация-запись МАСТЕР выставляет адрес, читает данные, изменяет направление передачи на AD-линиях, снимая сигнал RD, и записывает модифицированные данные обратно в память СЛУГИ (см. рис. 5). Такая операция не может быть прервана каким-либо другим процессором, поскольку она все время скреплена связкой AS/AK и другое устройство не может попользовать магистраль. Образуется род неразделимой операции, необходимой в многопроцессорных системах для координации использования общих ресурсов.

1 - адрес; 2 - чтение; 3 - запись

Рис. 5. Операция с фиксированным адресом: чтение-модификация-запись. (с точки зрения мастера)

Непрерываемые операции могут быть расширены и далее, если МАСТЕР и СЛУГА согласятся о значении каждого цикла в магистрали, например, если адресный цикл, где связались МАСТЕР и СЛУГА, может сопровождаться вторичным адресным циклом, за которым следует еще один цикл передачи данных.

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

Еще более общий вид операций в магистрали называется операцией с заблокированным арбитражем, при которой один МАСТЕР выполняет последовательность операций, направленных к нескольким различным ПЕРВИЧНЫМ АДРЕСАМ, при этом работа МАСТЕРА не может быть прервана никаким другим МАСТЕРОМ, поскольку действующий МАСТЕР не позволяет проводить арбитраж. Это может быть очень полезно для таймирования работы группы СЛУГ, используемых несколькими процессорами: последовательность операции может быть проведена без помех со стороны других процессоров. Этот механизм действует даже в случае, когда СЛУГИ находятся в разных СЕГМЕНТАХ, поскольку СОЕДИНИТЕЛЬ СЕГМЕНТОВ сделан так, что сохраняет любое соединение до тех пор, пока МАСТЕР не освободит магистраль для арбитража.

1.2.7. Сканирование редких данных

Во многих экспериментах не все УСТРОЙСТВА получают данные при каждом событии. Механизм сканирования редких данных позволяет быстро определить УСТРОЙСТВА, содержащие ценные данные. Для этого используются ТР-штырьки, не соединенные линиями магистрали и расположенные по одному на каждой позиции задней панели. ТР-штырек в позиции п присоединен к линии п адрес/данные. МАСТЕР, желающий начать сканирование редких данных, подает команду ШИРОКОЙ ОПЕРАЦИИ всем УСТРОЙСТВАМ СЕГМЕНТА, приглашая тех, кто имеет данные, выдать сигнал на свой ТР-штырек. Последующее чтение сигналов на AD-линиях показывает, какие именно УСТРОЙСТВА следует опросить для получения данных. Такая возможность может быть реализована и на КАБЕЛЕ-СЕГМЕНТЕ: достаточно подключить сигнал о наличии данных в УСТРОЙСТВЕ к выводу на соответствующую линию AD.

1.2.8. Широкие операции

При ШИРОКОЙ ОПЕРАЦИИ МАСТЕР может соединиться с более чем одним СЛУГОЙ во время одного первичного адресного цикла. ШИРОКАЯ ОПЕРАЦИЯ может быть использована в различных целях, например, для синхронизации УСТРОЙСТВ или для установки на нуль ряда счетчиков. Поскольку могут быть задействованы несколько СЛУГ, не возможны имеющие смысл подтверждения между МАСТЕРОМ и СЛУГОЙ. Однако системное подтверждение, получаемое от вспомогательной логики на каждом СЕГМЕНТЕ на любом пути, информирует МАСТЕРА, что его команда прошла к каждому из тех СЕГМЕНТОВ, к которым была адресована. МАСТЕР выставляет наряду с адресом также и код на линиях MS, чтобы показать, что выставлен ШИРОКИЙ АДРЕС. Специфический код в поле адресов указывает, является ли ШИРОКАЯ ОПЕРАЦИЯ ЛОКАЛЬНОЙ (только лишь в одном СЕГМЕНТЕ) или ГЛОБАЛЬНОЙ либо ко всем СЕГМЕНТАМ в сети, охватываемой информацией, хранимой в СОЕДИНИТЕЛЯХ СЕГМЕНТОВ, либо ко всем СЕГМЕНТАМ, расположенным в сети за определенным СЕГМЕНТОМ. В дополнение к возможности выбора СЕГМЕНТОВ при ШИРОКОЙ ОПЕРАЦИИ, поле адресов может быть использовано для выбора УСТРОЙСТВ заданного класса в достигаемых СЕГМЕНТАХ или для выбора функций, подлежащих выполнению.

В число определенных стандартом функций входят сканирование редких данных, выставление УСТРОЙСТВАМИ сигнала на ТР-штырек (безусловное или только при выдаче SR-запроса на обслуживание) и адресация МАСТЕРОМ по сигналам на ТР-штырьках в следующем цикле.

Записи в маршрутных таблицах (в СОЕДИНИТЕЛЯХ СЕГМЕНТОВ), соответствующие АДРЕСУ ГРУППЫ, равному нулю, используют для прокладки глобальной ШИРОКОЙ АДРЕСАЦИИ, ШИРОКУЮ АДРЕСАЦИЮ могут узнать и передать несколько СОЕДИНИТЕЛЕЙ СЕГМЕНТОВ, поскольку не требуется возвращать индивидуальные подтверждения. Структура, образуемая распространяющимся сигналом ШИРОКОЙ АДРЕСАЦИИ, должна быть простой древовидной структурой без пересечений. Это требование следует обеспечивать программой инициализации.

После того, как ШИРОКИЙ АДРЕС успешно прошел через всю систему, вспомогательная логика совместно с СОЕДИНИТЕЛЯМИ СЕГМЕНТОВ генерирует сигнал СИСТЕМНОГО ПОДТВЕРЖДЕНИЯ. Последующие циклы передачи данных могут использовать СИСТЕМНЫЕ ПОДТВЕРЖДЕНИЯ. Таким образом, при помощи ШИРОКОЙ АДРЕСАЦИИ могут быть выполнены стандартные операции записи или чтения любого вида сразу в группе УСТРОЙСТВ.

ШИРОКАЯ АДРЕСАЦИЯ может отнимать некоторое время, так как приходится ожидать завершения конфликтов при использовании СЕГМЕНТОВ. Однако, когда соединения в системе завершены, скорость выполнения циклов передачи данных ограничена только СИСТЕМНЫМ ПОДТВЕРЖДЕНИЕМ и временами распространения сигналов.

1.2.9. Арбитраж владения магистралью

Одной из наиболее важных характеристик многопроцессорной системы является метод предоставления управления СЕГМЕНТОМ различным МАСТЕРАМ, которые могут одновременно претендовать на владение магистралью. Схема, помогающая выполнению этой задачи, имеется в каждом независимом СЕГМЕНТЕ и называется управлением таймирования арбитража (УТА).

Для арбитража приоритетов в СЕГМЕНТЕ предназначены 10 магистральных линий. Каждому МАСТЕРУ присвоен уровень арбитража в виде кода из 6 битов. МАСТЕРА, желающие владеть магистралью, возбуждают линию AR - запрос на арбитраж. Если линия GK (подтверждение приема (разрешения на арбитраж) не возбуждена, УТА начинает цикл арбитража, выставляя сигнал AG - разрешение на арбитраж. Запрашивающие МАСТЕРА отвечают выставлением своих уровней арбитража на 6 линий уровня арбитража AL <5:0>. На каждой линии бит «0» поглощается битом «1». Каждый запрашивающий непрерывно сравнивает свой уровень арбитража с кодом на AL-линиях бит за битом, начиная со старшего бита. Если запрашивающий обнаруживает на магистрали бит «1», который сам он не выставил, он снимает с магистрали все свои биты меньшей значимости. Спустя время, определяемое УТА, на AL-линиях остается лишь код наивысшего заявленного уровня арбитража, в результате каждый из соревнующихся знает, выиграл он или проиграл. Если управление таймированием арбитража видит, что магистраль полностью свободна (AS = AK=WT = GK = 0), оно прекращает выдачу АС, а выигравший МАСТЕР отвечает выставлением GK и вступает во владение магистралью. МАСТЕР продолжает держать сигнал GK до тех пор, пока не решит позволить следующий цикл арбитража. МАСТЕР снимает сигналы GK обычно после последнего адресного цикла в своей серии операций, позволяя следующему МАСТЕРУ быть выбранным до того, как сам действующий МАСТЕР закончит свои циклы передачи данных.

В описанной схеме арбитража возможны два сходных протокола. В одном из них запросы на арбитраж делаются безотносительно к присутствию любых других запросов, а это ведет к возможности того, что МАСТЕРА с низким приоритетом могут не получать владение магистралью в течение неограниченно долгих периодов времени. В другом протоколе гарантированного доступа запросы на арбитраж делаются только при условии, что на линии AI (запрет запроса на арбитраж) находится логический «0». В начале цикла арбитража управление таймированием арбитража возбуждает линию AI и снимает сигнал только тогда, когда удовлетворены все запросы. В результате все запросы на арбитраж, заявленные к данному моменту времени, удовлетворяются, прежде чем может быть сделан новый запрос. МАСТЕРА могут использовать любой из протоколов и работать при этом в одном и том же сегменте, поскольку протоколы отличаются только условиями на выставление сигнала AR.

Из 64 возможных кодов приоритета код 0 не используется, так как его легко спутать с отсутствием кодов в неработающей в данный момент магистрали. Коды от 1 до 31 предназначены для использования внутри сегмента. Коды от 32 до 63 служат в качестве «системных» приоритетов, единственных для каждой из частей связанной системы. Локальные приоритеты 1 - 31 внутри данного СЕГМЕНТА должны быть единственными для каждого УСТРОЙСТВА, т.е. два УСТРОЙСТВА не должны иметь одинаковых приоритетов, однако в любом СЕГМЕНТЕ можно использовать приоритеты, уже назначенные в других СЕГМЕНТАХ. Когда СОЕДИНИТЕЛЬ СЕГМЕНТОВ соединяет МАСТЕРА с другим СЕГМЕНТОМ, уровень, используемый для арбитража во втором СЕГМЕНТЕ, обычно должен быть уровнем, присвоенным СОЕДИНИТЕЛЮ СЕГМЕНТОВ, а не уровнем действующего МАСТЕРА. Однако, если действующий МАСТЕР использовал один из системных приоритетов, СС передаст этот приоритет во второй СЕГМЕНТ, который будет освобожден для работы, поскольку системные приоритеты единственны на маршруте. Системные приоритеты могут быть полезны для предотвращения нежелательных задержек при важных ШИРОКИХ АДРЕСАЦИЯХ и могут помочь передавать важные сообщения, которые в иных условиях могли бы приостанавливаться вследствие борьбы приоритетов при прокладке пути через систему.

Прерывание текущей операции возможно, благодаря этому МАСТЕР имеет возможность удерживать магистраль, сколько он хочет. Если МАСТЕР видит сигнал AR = 1 когда AS = AK = 1, то он знает, что другие МАСТЕРА в системе заблокированы текущей операцией. Действующему МАСТЕРУ следует нормально освободить магистраль в течение приемлемого времени, чтобы позволить другим МАСТЕРАМ получить владение магистралью. Программированием следует разрешать МАСТЕРУ либо запрашивать лишь один цикл арбитража, либо задерживаться на случайное время выдержки, прежде чем снова запрашивать магистраль. Общим разрешением проблемы соревнования и тупиковых ситуаций является отказ от попытки запроса с последующим ее возобновлением после случайной выдержки времени.

1.2.10. Прерывания

Прерывание - это запрос от УСТРОЙСТВА к процессору для обслуживания или внимания. Поскольку прерывания могут пересекать границы СЕГМЕНТА и поскольку они должны нести информацию, они выполняются нормальными ФАСТБАС-операциями.

Прерывающие устройства адресуются к области управляющего регистра в интерфейсе процессора, чувствительной к прерываниям, и записывают в регистры свой собственный адрес и, возможно, другую информацию. В результате процессор имеет всю информацию, необходимую для последующего выбора и обслуживания УСТРОЙСТВА, выдавшего прерывание.

В некоторых системах большое число простых УСТРОЙСТВ, не способных ни владеть магистралью, ни выполнять операцию записи прерывания, могут нуждаться в обслуживании по запросам. Такие УСТРОЙСТВА могут возбуждать линию SR - запрос на обслуживание, за этой линией может наблюдать специально выделенное УСТРОЙСТВО обработки запросов (УОЗ). Это УСТРОЙСТВО может получить владение магистралью и найти запросившего при помощи ТР-штырьков или другими способами. УОЗ может затем само выполнить необходимое обслуживание или послать сообщение нормального прерывания по просьбе запросившего какому-нибудь другому процессору. СОЕДИНИТЕЛИ СЕГМЕНТОВ могут быть запрограммированы на пропускание запросов SR от одного СЕГМЕНТА к другому.

1.2.11. Таймирование

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

а) задержки сигналов, обеспечивающие правильное взаимное таймирование и достаточную длительность сигналов, чтобы они были узнаваемы;

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

Используемый в необходимых случаях сигнал WT (ожидание) блокирует последующие таймирующие сигналы в магистрали, а также устанавливает в исходное состояние таймер ответных действий в МАСТЕРАХ. Сигнал WT может быть использован для «замораживания» состояния магистрали в целях диагностики и, в дополнение, как часть протокола, межсегментного таймирования, при котором превышение лимита времени нужно определять только для местных, а не глобальных условий.

1.2.12. Инициализация

При включении питания все УСТРОЙСТВА приводятся в пассивное состояние и откликаются лишь на ГЕОГРАФИЧЕСКУЮ АДРЕСАЦИЮ. Следовательно, перед использованием их необходимо инициализировать. Инициализация состоит в выполнении ряда операций, некоторые из которых, такие как правильная установка ЛОГИЧЕСКИХ АДРЕСОВ и загрузка маршрутных таблиц в СОЕДИНИТЕЛЕ СЕГМЕНТОВ, требуют общих знаний о всей системе и ее структуре, в то время как другие, тaкие как установка коэффициента усиления усилителя или установка счетчиков на нуль, являются специфическими для каждого УСТРОЙСТВА или группы УСТРОЙСТВ.

Для каждой системы ФАСТБАС один процессор, ХОЗЯИН, содержит полное описание системы, к которой он присоединен. Система ФАСТБАС должна быть построена таким образом, чтобы ХОЗЯИН имел доступ к каждому входящему в нее УСТРОЙСТВУ. ХОЗЯИН, знающий структуру системы, может инициализировать маршрутные таблицы в СОЕДИНИТЕЛЯХ СЕГМЕНТОВ с помощью стандартных алгоритмов, гарантируя, что правила, касающиеся маршрутов, и дерево ШИРОКИХ ОПЕРАЦИЙ, а также любые ограничения на совместимость, наложенные пользователем, соблюдаются. Программа ХОЗЯИНА для инициализации также назначает уровни арбитража для МАСТЕРА и ЛОГИЧЕСКИЕ АДРЕСА для УСТРОЙСТВ, которым они необходимы, и выполняет специальные операции данного УСТРОЙСТВА.

Процесс инициализации продолжается методично. В начале инициализируются все СОЕДИНИТЕЛИ СЕГМЕНТОВ, начиная с тех, которые находятся на том же СЕГМЕНТЕ, что и ХОЗЯИН, а затем и за его пределами. Для каждого СС ХОЗЯИН вначале обращается к ближней стороне и загружает маршрутную таблицу и уровень арбитража для операций до дальней стороны.

Затем разрешаются операции по направлению к дальней стороне, и ХОЗЯИН загружает маршрутную таблицу, а также уровень арбитража на дальней стороне, и, наконец, отпирает СС для операций в обратном направлении, а именно обратных по отношению к ХОЗЯИНУ. Это продолжается до тех пор, пока все СС не инициализируются. Затем инициализируются СЛУГИ и МАСТЕРА. Дееспособность МАСТЕРА создается в последнюю очередь, чтобы исключить возможность для МАСТЕРА попытаться войти в еще неинициализированные части системы.

Всю топологическую информацию системы ФАСТБАС также, как и данные, специфичные для инициализации каждого УСТРОЙСТВА, лучше всего содержать в базе данных, управляемой ХОЗЯИНОМ. После инициализации системы может возникнуть необходимость обратиться к этой базе данных в случае каких-либо проблем с системой или УСТРОЙСТВОМ. Например, УСТРОЙСТВА, получившие сигнал RB (оброс магистрали) требуют по крайней мере повторного «оживления», а замененные УСТРОЙСТВА-инициализации. Централизация требуемой информации и действий упрощает управление системой.

1.2.13. Средства диагностики

Благодаря тому, что все ФАСТБАС-сигналы появляются на каждой позиции КРЕЙТ-СЕГМЕНТА, в крейт можно вставить УСТРОЙСТВО, которое будет контролировать всю работу магистрали. Возможно сконструировать такие УСТРОЙСТВА, которые будут реагировать на операции определенных типов. В таком УСТРОЙСТВЕ можно запомнить историю циклов, прошедших в магистрали, для их последующего вызова и анализа.

УСТРОЙСТВО, способное выдавать сигнал WT, является простым, но мощным средством диагностики. Сигнал ожидания, помимо сброса и запрета работы таймера ответных действий в МАСТЕРАХ, запрещает любые изменения состояния 6 таймирующих сигналов: AG, GK AS, AK, DS и DK, эффективно останавливая всю работу магистрали ФАСТБАС. Благодаря этому, применяя простое испытательное оборудование, можно обследовать состояние магистрали после каждого таймирующего фронта путем снятия и повторной выдачи сигнала ожидания WT.

ГЛАВА 2. УСЛОВИЯ, ОПРЕДЕЛЕНИЯ, СОКРАЩЕНИЯ И СИМВОЛЫ

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

2.1. Интерпретация настоящего стандарта

Пункты и абзацы стандарта со словом «должен» являются обязательными

Пункты, заключенные в рамку, являются обязательными.

Определения, относящиеся к рекомендуемой или предпочтительной практике, содержат слово «следует». Такие определения рекомендуется выполнить, если нет серьезных причин против их выполнения. Примеры или допустимые варианты обычно содержат слово «может» и оставляют свободу выбора разработчику или пользователю.

В тексте обычно применяется десятичное счисление. Если тип счисления не ясен из контекста, к двоичным числам добавляется буква b (например 00100b), а к шестнадцатиричным - буква h (например, 1A3F5h).

Чтобы соответствовать настоящему стандарту, выполняемые устройства или системы должны удовлетворять обязательным требованиям этого стандарта.

Не- ФАСТБАС-оборудование, которое не противоречит в своем действии характеристикам ФАСТБАС, определенным в этом стандарте, рассматривается как совместимое с системой ФАСТБАС.

Ни одна из частей этого стандарта не исключает использование оборудования, которое совместимо в упомянутом смысле, если даже оно не полностью соответствует стандарту.

Ни лицензий, ни других разрешений не требуется, чтобы использовать настоящий стандарт.

2.2. Обозначения и условия логических сигналов

В настоящем стандарте использованы следующие обозначения для регистров и разрядов в регистрах.

<номер бита высшего порядка : номер бита низшего порядка>

Выражение XX = N означает, что на линиях, обозначенных XX, выставлен код со значением N.

Принята положительная логика, т.е. сигнал с высоким значением обозначает логическую 1, а с низким значением - 0. Это отражается в обозначении сигнала, т.е.:

АК при высоком сигнале изображает логическую 1;

АК* при высоком сигнале изображает логический 0, иначе говоря АК* активен при низком значении.

Если ФАСТБАС реализован в ЭСЛ-логике, сигнал «Подтверждение приема адреса» можно обозначать АК, однако в системе с ТТЛ-логикой обозначение будет АК*. В логических схемах сигналы, магистрали обычно проставляют в прямоугольнике (см. рисунок).

Обычно применяемые логические графические символы соответствуют Публикации МЭК 113-7 (ГОСТ 2.743). Рекомендуется использование положительных логических символов. Применение этих символов к линиям межсоединений обычно приводит к неотрицательным выходам, соединенным с неотрицательными входами.

Следующие параметры показывают обозначения линий и сигналов:

SS все SS-линии и SS-сигналы;

SS0 SS-линия или сигнал с весом 1;

SS1 SS-линия или сигнал с весом 2;

SS2 SS-линия или сигнал с весом 4;

SS = 2 значение кода на группе SS-линий или сигналов;

SS <2:0> SS2, SS1, SS0;

SS1 = 1 логическое состояние линий SS1 или сигнала.

2.3. Определения

Адрес

Address

Синоним первичного адреса

Адрес группы

Group Address

Старшие разряды, расположенные слева и определяющие адресное поле устройств в ФАСТБАС-адресе, которые используются для идентификации сегмента, содержащего устройство. Данному сегменту могут быть приписаны несколько адресов группы. См. базовый адрес группы.

Адрес модуля (MA)

Module Address (MA)

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

Адрес следующей передачи

Next Transfer Address (NTA)

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

Адрес устройства (АУ)

Device Address (DA)

Идентифицирующее число разрядностью (32-m) битов, присвоенное ФАСТБАС-устройству и сопоставляемое с адресным кодом на магистрали во время цикла первичной адресации при ФАСТБАС-операции. Адрес устройства образуется из полей адреса группы и адреса модуля. Остающиеся т младших разрядов относятся к полю внутреннего адреса.

Адресный цикл

Address Cycle

Синоним первичного адресного цикла.

Базовый адрес группы

Base Group Address

Значение адреса группы GP, которое используется для географической адресации сегменту. Нормально наинизший GP, присвоенный сегменту.

Ближняя сторона (соединителей сегментов СС или БСС)

Near Side (of an SI or BI)

Проход в СС или БСС, который электрически ближе к действующему мастеру.

Буферизированный соединитель сегментов (БСС)

Buffered Interconnect BI

Устройство, которое обеспечивает соединение сегментов таким образом, что ФАСТБАС-протокол в одном сегменте не синхронизирован с протоколом в другом сегменте.

Слуга Slave

Устройство, которое отвечает мастеру в соответствии с ФАСТБАС-протоколом.

Мастер

Master

Устройство, которое способно заявлять операцию и управлять ею в сегменте в соответствии с

Владение магистралью

Mastership

ФАСТБАС-протоколом. Мастер владеет магистралью, когда - получил право управлять сегментом и выдал сигнал GK или AS.

Время разброса задержек

Skew Time

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

Вспомогательная логика (ВЛ)

Ancillary Logic (ANC)

Логическая схема, присутствующая в каждом сегменте, но не являющаяся частью какого-либо устройства. Операции арбитража, географической адресации, системного подтверждения и управление работой / остановом выполняются вспомогательной логикой, которая может также содержать терминаторы сегмента.

Вспомогательный разъем модуля (ВРМ)

Module Auxiliary Connector

Стандартный разъем, который монтируется над сегментным разъемом модуля на печатной плате модуля.

Вторичный адрес

Secondary Address

Адрес, используемый внутри устройства. Он определяется во вторичном адресном цикле установкой NTA-регистра устройства после первичного адресного цикла.

Вторичный адресный цикл

Secondary Address Cycle

Цикл данных, в котором мастер использует линии AD адрес/данные для загрузки вторичного адреса в NTA-регистр устройства.

Выдержка

Retry Period

Интервал времени, в течение которого мастер, не получив ответа, ожидает, прежде чем снова начать операцию. Этот интервал должен быть случайным, чтобы избежать зависаний в системе.

Географический адрес (ГА) Geografical Address (QA)

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

Дальняя сторона (соединителей сегментов)

Far Side (of an SI or BI)

Проход в соединителях СС или БСС, который электрически более удален от действующего мастера.

Дополнительная плата модуля

Module Supplementary Board

Любая плата в ФАСТБАС-модуле, не имеющая прямого соединения с крейт-сегментом.

Древовидная структура

Tree Structure

Комплекс соединенных сегментов без контуров (пересечений связей).

ESONE

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

Задняя плата

Backplane

Кросс-плата со схемой (обычно печатной) в тыльной части крейта, которая через свои разъемы присоединяет модули и образует крейт-сегмент.

Зарезервировано

Reserved

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

Защитный буфер

Protective Buffer

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

Интерфейс процессора (ИП)

Processor Interface

Интерфейсное устройство между внешним процессором и ФАСТБАС-сегментом.

Кабель-сегмент

Cable Segment

KAMAK

CAMAC

ФАСТБАС-сегмент, состоящий из кабеля с соответствующими разъемами для присоединения устройств. Международная стандартизованная модульная приборная и цифровая интерфейсная система, определенная стандартом IEEE Std 583 и соответствующая документам EUR 4100 и IEC 516.

Крейт

Crate (FASTBUS CRATE)

Каркас для ФАСТБАС-модулей, объединяемых крейтом-сегментом.

Крейт-сегмент

Crate Segment

ФАСТБАС-сегмент, который состоит из задней платы, укрепленной на ФАСТБАС-крейте и имеющей разъемы для присоединения множества ФАСТБАС-модулей к магистрали.

Лимит времени ожидания

Wait Timeout Period

Время, в течение которого мастер ждет после получения сигнала WT, прежде чем прекратить соединение.

Логический адрес

Logical Address

Первичный адрес из 32 битов, состоящий из адреса устройства и внутреннего адреса. Не зависит от положения устройства в сегменте.

Маршрутная таблица

Route Table

Список адресов групп, распознаваемых соединителем сегментов для пропускания операций к сегменту, соединенному с дальней стороной.

Минимальный промежуток между импульсами

Minimum Pulse Down Timt

Чтобы любое устройство могло обнаружить состояние «0» сигнала между двумя сигналами «1», состояние «0» должно длиться не менее времени заднего фронта импульса, которое зависит от характеристик магистрали.

Модуль

Module

Любое ФАСТБАС-устройство, которое может быть помещено в ФАСТБАС-крейт, присоединено к крейт-сегменту и соответствует обязательным требованиям этого стандарта к модулю.

NIM

1. Комитет, действующий под покровительством Министерства энергетики США и связанный с Национальным бюро стандартов. Комитет выпустил стандарты на приборную систему NIM, одобрил применение системы КАМАК, сотрудничает с комитетом ESONE в развитии и распространении КАМАК.

2. Стандартизованная модульная приборная система, состоящая из модулей NIM и бинов (крейтов) NIM, определенная докладом TID-20893 Министерства энергетики США.

Нулевая операция

Null Operation

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

Область адресов данных

Data Space

См. область адресов регистров управления и состояний.

Область адресов регистров управления и состояний

CSR Space

Циклом первичного адреса при помощи кода на управляющих линиях MS (выбор режима) может быть определена одна из двух раздельных адресных областей в устройстве: область адресов регистров и состояний, а также область адресов данных. Область CSR содержит регистры для управления устройством и регистры для информации о состоянии устройства. Их размещение и применение определяются стандартом ФАСТБАС.

Операция

Operation

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

Операция прерывания

Interrupt Operation

ФАСТБАС-операция записи в устройство, обслуживающее прерывания, извещающая, что запрашивающий требует внимания.

Операция с фиксированным адресом

Address Locked Operation

Операция, направленная к одному первичному адресу, содержащая сочетание циклов чтения и записи; может также включать передачу блока.

Очистка цикла

Cleanup Data Cycle

Цикл данных, который не сопровождается передачей данных, а предназначен только для выключения драйверов слуги: AD (адрес/данные), РА (четность) и РЕ (разрешение контроля по четности).

Первичный адрес

Primary Address

Адрес, присвоенный устройству, посредством которого мастер способен установить связь с устройством или с подразделением устройства. Типы первичного адреса: логический, географический и широкий.

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

Primary Address Cycle

Часть ФАСТБАС-операции, в которой мастер адресуется к слуге через линии AD адрес/данные. Тип адреса определяется сигналами на управляющих линиях ЕС и MS. Цикл начинается сигналом на линии AS строб адреса и заканчивается, когда мастер получает сигнал подтверждения приема адреса на линии АК. Во время первичного адресного цикла могут быть переданы логический, географический и широкий адреса.

Передача блока

Block Transfe

Часть ФАСТБАС-операции, при которой мастер либо посылает данные присоединенному слуге, либо получает от него данные при каждом фронте сигнала DS строб данных. Слуга подтверждает прием или посылает данные при каждом фронте сигнала DK.

Передача блока, принудительная

Pipelined Transfer

Часть ФАСТБАС-операции, при которой мастер или посылает данные присоединенному слуге, или вынуждает его выдавать данные на. каждом фронте сигнала DS строб данных. Слуга подтверждает прием или передачу данных при помощи каждого фронта сигнала DK-подтверждение приема данных. Мастер не ожидает подтверждения от слуги и выдает следующий фронт сигнала DS в своем темпе.

Переключатель работа / останов (ПРО)

Run/Halt Switch (RH)

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

Печатная плата модуля (ППМ)

Module Circuit Board

Печатная плата, служащая основой для схемной части ФАСТБАС-модуля.

Подготовленный мастер

Pending Master

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

Подтверждение

Handshake

Взаимосвязанный обмен сигналами между мастером и слугой с подтверждением передачи информации.

Позиция

Position, Slot

Позиция модуля в крейте. Номер позиции соответствует географическому адресу.

Поле внутренних адресов

(IA) Internal Address Field

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

Последовательность завершения

Termination Sequence

Процесс, с помощью которого связка AS/AK разрушается.

Превышение лимита времени

Timeout

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

Присоединенный слуга

Attached Slave

Присоединенный слуга - это такой слуга, который в предыдущем первичном адресном цикле узнал свой адрес, тип адреса и в результате будет участвовать в последующем цикле передачи данных.

Протокол гарантированного доступа

Assured Access Protocol

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

Процессор-хозяин (ПХ)

Host Processor (HP)

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

Регистр управления и состояний

Control and Status Register (CSR)

Регистр, используемый для управления операцией устройства и/или записи статуса операции. Он доступен при обращении к отдельной области адресов регистров управления и статуса ФАСТБАС-устройства. Регистр CSR-0, обязательный для всех устройств, содержит код идентификации устройства, заданный его производителем, ряд битов статуса устройства, а также некоторые биты, определяемые производителем.

Режим прослеживания ошибки на маршруте

Route Tracing Mode

Режим операции соединителя сегментов, в которой вырабатывается реакция на диагностику ошибки вместо нормального прохождения операции.

Расширенный сегмент

Extended Segment

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

Расширитель сегмента

Segment Extender (SE)

Устройство для соединения двух сегментов с целью формирования расширенного сегмента или его части.

Сегмент

Segment

Определенное средство для передачи информации, функционирующее в соответствии с ФАСТБАС-протоколом, к которому могут быть присоединены ФАСТБАС-устройства. Сегмент способен работать автономно и сообщаться с другими сегментами через соединители сегментов (СС).

Сегментный разъем модуля Module Segment Connector

Стандартный разъем, который монтируется на ФАСТБАС-модуле и сочленяется с сегментным разъемом крейта.

Серия операций с заблокированным арбитражем

Arbitration Lokeed Sequence

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

Сканирование редких данных (СРД)

Sparse Data Scan (SDS)

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

Системное подтверждение

System Handshake

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

Соединенная система

Connected System

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

Соединитель

Interconnect

См. соединитель сегментов и буферизованный соединитель сегментов.

Соединитель сегментов (СС)

Segment Interconnect (SI)

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

Соединитель сегментов активный

Active Segment Interconnect

Соединитель сегментов является активным, когда он выдает сигнал AS=1 в сегмент, присоединенный к дальней стороне.

Соединитель сегментов завладевший

Reserved Segment Interconnect

Соединитель сегментов является завладевшим, если он завладел магистралью сегмента, присоединенного к дальней стороне, и выдал сигнал GK= 1 в этот сегмент.

Таймер ответных действий

Response Timer

Таймер внутри слуги или соединителя сегментов, предназначенный для прекращения операции, которая не закончилась в течение заданного достаточного интервала времени.

Узорный выбор устройств

Pattern Select

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

Управление географической адресацией (УГА)

Geografical Address Control (ПАС)

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

Управление таймированием арбитража (УТА)

Arbitration Timing Control (АТС)

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

Устройство

Device

Любое устройство, способное к присоединению к сегменту и соответствующее обязательным требованиям ФАСТБАС-протокола.

Устройство обработки запросов (УОЗ)

Service Request Handler (SRH)

Мастер, назначенный для наблюдения за линией SR запросов на обслуживание в сегменте или в группе сегментов. Если SR=1, MOЗ запрашивает владение магистралью и после его получения определяет, какой модуль или какие модули выдали SR=1, либо опросом, либо при помощи широкой операции. Затем МОЗ может сам обслужить поступившие запросы или послать прерывание другим устройствам по поручению модулей, выдавших SR. Сигнал SR обычно выдается только теми модулями, которые мало способны к владению магистралью.

Устройство обслуживания прерываний (УОП)

Interrupt Service Device (ISO)

Процессор или другое устройство, которое может отвечать на операцию прерывания.

ФАСТБАС

FASTBUS

Стандартизованная быстродействующая магистрально-модульная многопроцессорная информационно-измерительно-управляющая система, определяемая настоящим стандартом.

ФАСТБАС-протокол

FASTBUS Protocol

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

Цепная связь

Daisy Chain

Соединение на задней панели между соседними позициями, которое позволяет передавать информацию между соседними модулями независимо от ФАСТБАС-протокола.

Цикл арбитража

Arbitration Cycle

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

Цикл записи (запись)

Write Cycle (Write)

Цикл, при котором поток данных направлен от мастера к слуге (слугам).

Цикл данных Data Cycle

Часть ФАСТБАС-операции, в которой мастер или посылает данные к присоединенному слуге, или получает данные от него. Цикл начинается с выдачи мастером фронта сигнала DS-строб данных и оканчивается с получением от слуги фронта сигнала DK-подтверждение приема данных.

Цикл считывания (чтение)

Read Cycle (Read)

Цикл, в котором поток данных направляется от слуги (слуг) к мастеру.

Четность (для ФАСТБАС)

Parity (for Fastbus)

Добавленный к ФАСТБАС-слову бит, значение которого выбирается так, чтобы сделать общее число битов «1» (включая бит четности) нечетным. Он применяется для проверки ошибок, поскольку прием четного числа битов «1» свидетельствует об ошибке в передаче.

Широкая операция

Broadcast (Broadcast Operation)

Операция, направленная к одному или нескольким слугам в одном или нескольких сегментах.

Широкая операция глобальная

Global Broadcast

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

Широкая операция, линейная

Linear Broadcast

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

Широкая операция, локальная

Local Broadcast

Широкая операция в пределах только лишь действующего сегмента.

Широкая операция с устройствами заданного класса

Device Class Broadcast

Избирательная широкая операция, определяемая регистром CSR-7. В последующих циклах отвечает лишь устройство заранее назначенного класса.

Широкий адрес

Broadcast Address

Первичный адрес, выставляемый мастером при широкой операции.

2.4. Буквенные обозначения

В оригинале

В переводе

(русские подчеркнуты)

A

Asynchronous (Type of Line)

А

Асинхронный (тип линии)

AD

Address/Data

АД

Адрес/данные

AG

Arbitration Grant

AG

Разрешение на арбитраж

AI

Arbitration Request Inhibit

AI

Запрет запроса на арбитраж

AK

Address Acknowledge

АК

Подтверждение приема адреса

AL

Arbitration Level

AL

Уровень арбитража

ANC

Ancillary Logic

ВЛ

Вспомогательная логика

AR

Arbitration Request

AR

Запрос на арбитраж

AS

Address Sync

AS

Строб адреса

АТС

Arbitration Timing Control

УТА

Управление таймированием арбитража

BH

Bus Halted

ВН

Магистраль остановлена

BI

Buffered Interconnect

БСС

Буферизированный соединитель сегментов

BK

Busy Acknowledge

ВК

Подтверждение занятости магистрали

С

Clear Bit

С

Бит сброса

С

Control (Type of Line)

У

Управление (тип линии)

CA

Control for Arbitration Bus (Type of Line)

УА

Управление арбитражем (тип линии)

CSR

Control And Status Register of Line)

CSR

Регистр управления и статуса

CT

Control and Timing (Type of Line)

УТ

Управление и таймирование (тип линии)

DA

Device Address

DA

Адрес устройства

DAR

Daisy Chain A Return

DAR

Обратный провод цепной связи А

DBR

Daisy Chain В Return

DBR

Обратный провод цепной связи

DK

Data Acknowledge

ВDK

Подтверждение приема данных

DLA

Daisy Chain A Out Left

DLA

Выход цепной связи А налево

DLB

Daisy Chain В In Left

DLB

Вход цепной связи В слева

DRA

Daisy Chain A In Right

DRA

Вход цепной связи А справа

DRB

Daisy Chain В Out Right

DRB

Выход цепной связи В направо

DS

Data Sync

DS

Строб данных

ECL

Emitter- Coupled Logic

ЭСЛ

Эмиттерная логика

E

Enable Geografical

EG

Разрешение географической адресации

F

Fixed Information (Type of Pins)

ф

Фиксированная информация (тип штырьков)

F

(Pins) Free Pins

F

Свободные штырьки

FBP

FASTBUS Protocol

ФП

ФАСТБАС-протокол

FIFO

First In, First Out

ПВПВ

Первым вошел, первым вышел

G

Global Bit

G

Бит глобальности

GA

Geografical Address

GA

Географический адрес

GAC

Geografical Address Control

УГА

Управление географической адресацией

GK

Grant Acknowledge

GK

Подтверждение приема разрешения на арбитраж

GP

Group Address

GP

Адрес группы

GP

Group Address Field

GP

Поле адреса группы

I

Information

И

Информация (тип линии)

IA

Internal Address

IA

Внутренний адрес

IA

Information for Arbitration Bus (Type of Line)

ИА

Информация о линиях арбитража (тип линии)

ID

Device Identification

ИУ

Идентификатор устройства

IDC

Insulation Displacement Connector

РСИ

Разъем со смещаемой изоляцией

ISO

Interrupt ServiceDevice

УОП

Устройство обслуживания прерываний

L

Local Bit

L

Локальный бит

LED

Light Emitting Diode

СД

Светодиод

LSB

Least Significant Bit

МР

Младший разряд

M

Master

М

Мастер

MA

Module Address

МА

Адрес модуля

MAC

Module AuxiliaryConnector

ВРМ

Вспомогательный разъем модуля

MCB

Module Circuit Board

ППМ

Печатная плата модуля

MS

Mode Select

MS

Выбор режима передачи

MSB

Most Signifacant Bit

СР

Старший разряд

MSC

Module SegmentConnector

СРМ

Сегментный разъем модуля

NTA

Next Transter Address

NTA

Адрес следующей передачи

PA

Parity

РА

Четность

PE

Parity Enable

РЕ

Разрешение контроля по четности

PI

Processor Interface

ИП

Интерфейс процессора

PROM

Programmable Read-Only Memory

ППЗУ

Программируемое постоянное запоминающее устройство

R

Read

R

Чтение

R

Reserved Line

R

Зарезервированная линия

RB

Reset Bus

RB

Сброс магистрали

RD

Read Line

RD

Линия чтения

RH

Run/Halt Switch

ПРО

Переключатель работы/ останов

RX

Receive Serial Line

RX

Приемная последовательная линия

S

Slave

С

Слуга

S

Set Bit

S

Бит установки

S

Serial Data, Timing Independent of Parallel Bus (Type of Line)

П

Последовательные данные, таймирование которых не зависит от параллельной магистрали (тип линии)

SDS

Sparce Data Scan

СРД

Сканирование редких данных

SHL

System Handshake Logic

ЛСП

Логика системного подтверждения

SI

Segment Interconnect

СС

Соединитель сегментов

SR

Service Request

SR

Запрос на обслуживание

SRH

Service Request Handler

МОЗ

Модуль обработки запросов

SS

Slave Status

SS

Состояние слуги

Т

Timing (Type of Line)

Т

Таймирование (тип линии)

ТА

Timing for Arbitration Bus (Type of Line)

ТА

Таймирование арбитража (тип линии)

TP

Т Pin

ТР

Штырек для выдачи запроса на линию AD

TR

Terminated Restricted Use Line

TR

Согласованная линия ограниченного применения

TTL

Transistor-Transistor Logic

ТТЛ

Транзистор-транзисторная логика

TX

Transmit Serial Line

ТХ

Передающая последовательная линия

UR

Unterminated Restricted Use Line

UR

Несогласованная линия ограниченного применения

W

Write

W

Запись

WT

Wait

WT

Ожидание

2.5. Символы

ГЛАВА 3. СИГНАЛЫ, СИГНАЛЬНЫЕ ЛИНИИ И ШТЫРЬКИ РАЗЪЕМОВ

Эта глава содержит разъяснения терминологии, используемой при описании сигналов, сигнальных линий и штырьков, а также краткую характеристику их применения.

3.1. Типы сигнальных линий

Сигналы, используемые в системе ФАСТБАС, могут быть классифицированы следующим образом.

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

Управление       -    уровень этих сигналов определяется в моменты фронтов таймирующих сигналов для последующего установления типа операции. Действие управляющих линий зависит от момента появления фронтов импульсов.

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

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

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

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

3.2. Обозначения характера сигналов

Сигналы обозначаются следующим образом: если XX - сигнал на магистрали, то на логических диаграммах ВХХ используется для обозначения буферированного привходящего сигнала и IXX - для генерированного внутри выходящего сигнала магистрали. Состояние или изменение состояния сигнала XX показывается следующим способом:

XX (u) - переход от 0 к 1 (up);

X (d) - переход от 1 к 0 (down);

XX (t) - переход от одного уровня к другому (toggle - коленчатый изгиб);

ХХ= 1 - сигнал выставлен;

ХХ = 0 - сигнал не выставлен.

3.3. Краткое описание сигналов, линий и штырьков

В дополнение к имени сигнала каждый подзаголовок в этой главе содержит, в скобках, указания на применение сигнала в соответствии с определением, данным в таблице, и на возможные источники сигнала. Каждый сигнал воплощается магистральной линией как в крейт-сегменте, так и в кабель-сегменте, если в описании не оговорено иное.

Сигнальные линии ФАСТБАС и штырьки разъемов, описанные в п. 3.3, должны быть выполнены в ФАСТБАС-сегментах и должны использоваться в соответствии с обязательными требованиями, описанными в настоящем стандарте.

3.3.1. AS - строб адреса (Т, мастер)

Таймирующий сигнал AS выдается после установления сигналов на линиях AD адрес/данные и MS выбор режима передачи, возбуждаемых мастером после получения права владения магистралью. По получении этого сигнала слуги сопоставляют адрес и его тип с адресом и типом, которые были встроены или запрограммированы в cлуге. Слуги, не признавшие адрес, не предпринимают дальнейших действий до следующего сигнала AS (u), когда они снова будут выполнять сопоставление адресов.

3.3.2. АК - подтверждение приема адреса (Т, слуга или вспомогательная логика ВЛ)

Таймирующий сигнал АК выдается слугой после признания своего географического или логического адреса в первичном адресном цикле. Получение сигнала АК действующим мастером показывает, в соответствии с состоянием линий MS <2:0>, что выполнено соединение либо с одним слугой, либо широкое соединение с несколькими слугами. В первом случае АК выдает слуга, во втором случае подтверждение АК выдает вспомогательная логика ВЛ.

3.3.3. EG - разрешение географической адресации (УТ, мастер или ВЛ)

Управляющий сигнал EG выдается мастером или вспомогательной логикой. По получении этого сигнала слуги сопоставляют свой географический адрес с адресом, кодированным на младших линиях AD. Географический адрес вводится в модуль через сегментный разъем с кодированными штырьками, а в устройстве, подключенном к кабель-сегменту, - задается при помощи механически переключаемого регистра.

3.3.4. MS - выбор режима передачи (У, мастер)

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

3.3.5. AD - адрес/данные (И, мастер или слуга)

Тридцать две информационные линии AD предназначены для передачи информации во время ФАСТБАС-операции. Сигналы AD выдаются мастером в циклах записи и слугой в циклах чтения. Линии обозначаются AD <31:00>, где AD31 - старший разряд.

3.3.6. SS - состояние слуги (И, слуга)

В первичном адресном цикле три информационных сигнала SS выдаются или соединителем сегментов, или слугой, чтобы отобразить состояние соединений в сети сегментов или состояние соединений с устройством. В цикле передачи данных эти сигналы выдаются присоединенным слугой, чтобы показать состояние слуги. В обоих случаях сигнал SS = 0 показывает, что цикл был успешным.

3.3.7. DS - строб данных (Т, мастер)

Таймирующий сигнал DS выдает мастер, чтобы начать цикл передачи данных. По получении этого сигнала, присоединенные слуги используют сигнал RD, чтобы определить, выставлять ли данные на линии AD при RD = 1 - чтении или принимать данные при RD = 0 - записи. Подобным образом расшифровываются сигналы MS <2:0>, чтобы определить режим операций. Прежде чем выдать DS, мастер должен выждать время установления сигналов на управляющих и информационных линиях.

3.3.8. DK - подтверждение приема данных (Т, слуга или ВЛ)

Единственный присоединенный слуга всегда выдает таймирующий сигнал DK в ответ на DS. При широкой операции DK выдается в системном подтверждении (см. гл. 7). Значение MS во время первичной адресации определяет, какой будет источник DK.

3.3.9. RD - чтение (У, мастер)

Мастер выдает RD, чтобы указать присоединенному слуге направление потока данных на линиях AD, РЕ и РА. В адресном цикле и при записи в цикле передачи данных RD = 0, при этом мастер выдает AD, РЕ и РА, при чтении RD = 1 в цикле передачи данных, причем упомянутые линии возбуждает слуга.

3.3.10. РЕ - разрешение контроля по четности (И, мастер или слуга)

Информационный сигнал РЕ выдается устройством, чтобы показать что генерирован сигнал нечетности для АD-линий. Линия РЕ может быть возбуждена мастером в адресном цикле и в циклах записи, а также слугой в циклах чтения. Выдача РЕ не гарантирует, что будет происходить проверка четности.

3.3.11. РА - четность (И, мастер или слуга)

Сигнал РА выдают мастер или слуга если они выдают РЕ. Если в слове AD <31:00> имеется четное число битов, установленных в логическую 1, то РА устанавливается в логическую 1.

3.3.12. WT - ожидание (А, любое устройство)

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

3.3.13. AR - запрос на арбитраж (А, мастер)

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

3.3.14. AG - разрешение на арбитраж (ТА, вспомогательная логика)

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

3.3.15. AL - уровень арбитража (ИА, мастер)

Линии AL <05:00> уровня арбитража возбуждаются мастерами, участвующими в цикле арбитража. Возбуждение линии отображают приоритет мастера в своем сегменте или системе. Правила выдачи сигналов AL детально описаны в гл. 6.

3.3.16. GК - подтверждение приема разрешения на арбитраж (ТА, мастер)

Сигнал GK выдает мастер, который участвовал в арбитраже и выиграл самый последний цикл арбитража. До тех пор, пока мастер не выдал сигнал GK, он называется подготовленным мастером. Действующий мастер - это такой мастер, который выдал GK или AS. Правила выдачи GK даны в гл. 6.

3.3.17. AI - запрет запроса на арбитраж (УА, вспомогательная логика)

Управление таймированием арбитража (УТА) выдает AI, чтобы показать наличие неудовлетворенных запросов после цикла арбитража. Мастера, работающие в протоколе гарантированного доступа, не будут выдавать запрос AR и таким образом воздержатся от участия в последующих циклах арбитража, пока все мастера, выставляющие AR, не получат владение магистралью и не завершат свои операции.

3.3.18. SR - запрос на обслуживание (А, мастер или слуга)

Устройство, которое нуждается в обслуживании, может в любой момент выдать сигнал SR. Мастер, назначенный для наблюдения за линией SR, получив владение магистралью, может предпринять необходимые действия.

3.3.19. RB - сброс магистрали (А, мастер или мастер через СС)

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

3.3.20. ВН - магистраль остановлена (У, вспомогательная логика)

Сигнал ВН выдается только логикой работа/останов в управлении таймированием арбитража, когда логика обнаруживает запрос на останов от переключателя работа/останов. Этот сигнал, генерированный совместно с АК, указывает на неактивное состояние остановленного сегмента, позволяя всем устройствам, расположенным в сегменте, защитить себя от спонтанных сигналов, которые могут быть генерированы в магистрали вследствие разных причин. Сигнал ВН особо предназначен для защиты против ложного сигнала RB.

3.3.21. GA - географический адрес (Ф, запаянная кодирующая схема)

Пять штырьков GA двоично кодированы на разъеме в каждой позиции в крейте-сегменте, причем код однозначно выражает номер позиции модуля. GA = 00 представляет крайнюю правую позицию, если смотреть на крейт спереди. Когда выдан сигнал EG, все устройства в сегменте сопоставляют код своих штырьков с кодом на пяти младших линиях AD, чтобы определить, не адресованы ли они географически. Каждое устройство в кабель-сегменте имеет регистр из пяти переключателей, которые используются для географической адресации вместо штырьков GA.

3.3.22. ТР - Т-штырьки (И, слуга)

В каждой позиции разъем имеет Т-штырек, соединенный с одной из AD-линий. В позиции 00 Т-штырек соединен с линией AD00 и т.д. Эти штырьки используются для индикации присутствия данных в модуле в ответ на начало сканирования редких данных или для выбора узора битов, показывающего источники сигнала SR в сегменте. Эти штырьки могут быть также использованы для выбора устройства.

3.3.23. DL, DR - цепная связь (И, мастер или слуга)

В крейт-сегменте предусмотрены две независимые цепные связи А и В, чтобы обеспечить возможность передачи сообщений между соседними модулями. В каждой позиции модулей звено обеих цепей имеет соединения с прилегающим разъемом в позиции слева (DLA и DLB) и с разъемом справа (DRA и DRB). Каждая цепь имеет обратный провод (DAR и DBR). Цепь А используется для передачи информации справа налево, цепь В для передачи слева направо, (см. табл. XX и рис. 33).

Использование цепных связей ФАСТБАС не должно мешать использованию ФАСТБАС-протокола.

Использование цепных связей не определяется настоящим стандартом.

В позициях без модулей цепные связи разорваны. Это должно быть учтено при подготовке крейт-сегмента для использования цепных связей.

3.3.24. ТХ, RX - линии Последовательной сети (А, мастер или слуга)

В крейт-сегменте линии Последовательной сети обеспечивают любому модулю удобный доступ к Последовательной сети ФАСТБАС. Применяются эти линии в соответствии с протоколом Последовательной сети ФАСТБАС. Соединение между последовательными линиями одного крейт-сегмента и Последовательной сетью ФАСТБАС может быть выполнено при помощи интерфейса в модуле или на задней кросс-плате крейт-сегмента.

3.3.25. TR - согласованные линии ограниченного применения

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

TR-линии не следует использовать взамен операций в соответствии со стандартным протоколом.

TR-линии следует согласовывать в соответствии с указаниями гл. 7.5.

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

3.3.26. UR - несогласованные линии ограниченного применения

Применение UR-линий ограничено аналоговыми сигналами в специальных системах. Пределы напряжений и токов определены в п. 3.4.1.

3.3.27. Другие линии и штырьки

В крейте имеются резервные линии, линии для подвода питания, а также четыре FP-штырька для свободного использования, не соединенные линиями. Они стандартизованы в гл. 13. Допустимые напряжения для этих FP-штырьков определены в п. 3.4.1.

3.4. Нагрузка линий

Устройство должно иметь передающую и приемную схемы пропускания или их эквивалент с целью нагрузки для четырех линий таймирования магистрали AS, DS, АК и DК.

Реализацию на конкретных элементах (ЭСЛ, ТТЛ и т.п.) см. в приложении А.

3.4.1. Допустимые пределы токов и напряжений для сигнальных линий и F-штырьков

Напряжение на несогласованных линиях UR ограниченного применения и на F-штырьках не должно превышать 15 В. Ток через сигнальные линии не должен превышать 100 мА.

ГЛАВА 4. ФАСТБАС-ОПЕРАЦИИ. АДРЕСАЦИЯ

ФАСТБАС-операция имеет три четко различимые фазы. В течение первой фазы, первичного адресного цикла, мастер, овладевший магистралью, устанавливает соединение с одним или несколькими слугами. Состояние линий MS выбора режима во время первичного адресного цикла совместно с информацией на АD-линиях используется каждым слугой, чтобы определить, следует ли ему присоединяться к мастеру. Во время следующей фазы передачи данных присоединенные слуги реагируют на циклы, начинаемые мастером. В циклах передачи данных слуги определяют характер информации на AD-линиях по сигналам на трех линиях MS. Специальным типом данных является вторичный адрес, который присоединенные слуги используют для выбора различных регистров или функций, не нуждаясь в первичных адресных циклах. Циклы передачи данных продолжаются до заключающей последовательности фронтов, при которой мастер сообщает присоединенному слуге (или слугам), что следует разорвать связку.

Система ФАСТБАС состоит из ряда автономных сегментов, которые могут быть связаны на время межсегментных операций. Устройства, принадлежащие одному сегменту, должны быть отличимы от устройств другого сегмента. Подобным образом устройства внутри одного сегмента должны быть отличимы друг от друга. Эти различия выявляются во время первичного адресного цикла, который выполняется по трем различным, но совместимым схемам адресации: географической, логической и широкой. Географической адресацией используются адреса, определяемые позицией устройства. Эта адресация должна быть использована для инициализации систем. Логическая адресация является общей схемой адресации, для обеспечения которой каждому устройству при инициализации присваивается область 32-разрядных адресов, на которые устройство будет реагировать во время первичных адресных циклов. При географической и логической адресации к мастеру присоединяется лишь единственный слуга. При широкой адресации к одному мастеру могут присоединиться много слуг. Используемая техника адресации позволяет каждому сегменту обнаруживать широкую адресацию, а каждому слуге в выбранном сегменте присоединяться к действующему мастеру.

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

В системе ФАСТБАС для первичного адреса используются 32 разряда. Старшие биты первичного адреса определяют сегмент. Именно это поле адреса группы GP используется каждым соединителем сегментов, чтобы определить, следует ли передавать первичный адрес в другой сегмент. Поле GP имеет ширину (п битов на рис. 6), которая зависит от требований конкретной системы. Ширина поля адреса группы может изменяться от сегмента к сегменту в соединенной системе, однако рекомендуется, чтобы ширина GP в конкретной системе была фиксирована.

4.1. Логическая адресация

При логической адресации биты, смежные полю GP адреса группы, используются для выбора конкретного устройства внутри сегмента. Комбинация из этого поля МА адреса модуля и поля GP называется полем DA адресов устройства. Границы между полями GP и МЛ определяются нечетко в том смысле, что несколько различных нолей GP могут быть выделены устройствам в одном и том же сегменте. Поскольку в первичном адресном цикле слуги всегда исследуют все 32 адресных бита, поле адреса модуля МА конкретного устройства может включать некоторые из младших битов поля GP, используемого соединителем сегментов.

Номера групп в каждом сегменте следует располагать подряд, причем их можно использовать лишь один раз в пределах сообщающихся частей системы. В системах с преобразующими соединителями сегментов (см. п. 10.1) это означает, что, если в сегменте использованы п преобразуемых групп от GP (0) до GP (п-1), то эти группы не могут быть использованы где-нибудь в другом месте в любом системном контексте, однако их можно использовать местно в других сегментах.

Рис. 6. Формат логического адреса

Во время первичного адресного цикла при обращении к области адресов данных регистр внутри устройства выбирается кодом, определяемым полем IA внутренних адресов. После того, как это поле выделено для устройства, все остающиеся из 32 битов образуют поле DA адресов устройств. Комбинация из адреса устройства и внутреннего адреса образует логический адрес. Устройства с широким полем IA (т битов на рис. 6) имеют соответственно более узкое поле DA и наоборот. Поле IA может быть даже нулевой ширины. Рекомендуется, чтобы наименьший внутренний адрес, применяемый в устройстве был адрес 0. Внутренний адрес используется при выборе слуги, чтобы иметь возможность выявить внутренние адреса во время адресного цикла.

Число регистров данных, идентифицируемых в устройстве, не ограничено числом, допускаемым полем внутренних адресов. Большие адресные пространства для каждого устройства обеспечиваются вторичными адресными циклами. Кроме того, во время первичного адресного цикла код на линиях MS выбора режима показывает, какая из областей должна быть выбрана - область адресов данных или область CSR - область регистров управления и состояний. Поскольку область адресов выбирается в первичном адресном цикле, во вторичном адресном цикле могут быть изменены лишь адреса внутри предварительно выбранной адресной области. В то время, как регистры в области адресов данных могут быть размещены любым способом в соответствии с полем IA, выбранным для устройства, расположение и применение регистров в области CSR стандартизовано (см. гл. 8).

Все пригодные для записи регистры как в области адресов данных, так и в области CSR следует делать пригодными для чтения.

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

Один из CSR-регистров предназначен для логического адреса устройства. Этот регистр содержит адрес устройства, который сопоставляется с адресом на AD-линиях во время первичных адресных циклов при выборе либо области адресов данных, либо области адресов CSR. Если во время первичного адресного цикла адрес устройства совпадает с адресом на AD-линиях, то слуга присоединяется к мастеру. Логически адресуемым устройствам в результате инициализации должны быть присвоены логические адреса.

Каждое логически адресуемое устройство должно иметь свой логический адрес, определенный регистром CSR-3, пригодным для записи и чтения. Этот регистр должен быть доступен для географической адресации и загружен в процессе инициализации системы до того, как будут задействованы схемы узнавания адреса устройства. Устройство не должно реагировать на логическую адресацию, если не задействованы эти схемы.

Поле DA логического адреса должно быть размещено вплотную к левой стороне поля IA внутренних адресов данных и должно простираться до старшего разряда адреса включительно.

Если в устройстве используется только область адресов CSR, ноле DA должно быть шириной в 32 разряда адреса.

В устройствах, которые имеют как поле адресов данных, так и поле адресов CSR, ширина поля DA должна быть определена требованиями к полю адресов данных.

Поле DA состоит из двух частей; поля GP адресов групп, которое должно занимать самую левую часть DA и должно определять сегменты, и примыкающего к GP поля МА адреса модуля, которое должно определять устройство в сегменте. Сегмент должен быть обеспечен достаточным числом адресов групп, чтобы охватить все имеющиеся устройства. Максимальная ширина поля GP не должна превосходить 24 разрядов.

Значение GP-0 не должно быть использовано для логической адресации ни в одном из сегментов.

Для выбора устройства при логической адресации устройство должно полностью декодировать свое поле DA (см. п. 5.2.2).

Адреса от 0 до 255 включ. в базовой группе любого сегмента не должны быть использованы для логической адресации.

4.2. Географическая адресация

В каждом сегменте первые 32 логических адреса зарезервированы для позиционной адресации устройств, следующие 192 - для позиционной адресации устройств, находящихся на расширенных сегментах, а остальные 32 - для специальных целей. Эти зарезервированные первые 256 логических адреса на каждом сегменте называются географическими адресами. Существуют два возможных формата географического адреса (рис. 7). В первом формате, относящемся к сегменту, все старшие 24 разряда нулевые, младшие 8 разрядов содержат то, что называется полем географического адреса (GA). Второй формат, позволяющий географическому адресу доходить до устройства в другом сегменте, имеет ненулевое поле адреса группы GP и нули во всех разрядах промежутка между полями GP и GA. Вспомогательная логика каждого сегмента исследует все первичные адреса. Если оказывается, что первичный адрес имеет одну из двух указанных форм, где GP соответствует адресу, присвоенному сегменту, в котором находится вспомогательная логика, тогда вспомогательная логика выдает сигнал EG, если этот сигнал уже не выдан мастером или соединителем сегментов. Обнаружив EG = 1 и RD = 0, слуги сравнивают AD <04:00> со своей физической позицией, закодированной на разъеме, a AD <07:05> сравнивают с нулем. Если устанавливается соответствие, слуга присоединяется к мастеру, после чего могут быть начаты нормальные циклы передачи данных, включая вторичные адресные циклы.

Рис. 7. Форматы географических адресов

Географическая адресация позволяет слуге декодировать меньшее число линий благодаря декодированию адресов, выполненному той частью вспомогательной логики, которая генерирует сигнал EG, или мастером, или соединителем сегментов.

В каждом сегменте адреса от 0 до 31 базовой группы должны быть выделены для географической адресации, которая отображает физическую позицию в сегменте, адреса от 32 до 254 должны быть зарезервированы, а адрес 255 должен быть адресом генератора сигнала ЕС) (см. п. 7.2).

В крейте-сегменте на каждом сегментном разъеме 5 штырьков GA <04:00> должны быть кодированы номером позиции. Эти штырьки должны использовать слуги с целью выяснения, не адресованы ли они географически. В крейт-сегменте код штырьков ноль должен определять крайнюю правую позицию модуля, если смотреть на крейт спереди. Значение кода должно возрастать на единицу при переходе влево на каждую соседнюю позицию.

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

Все устройства должны отвечать на географическую адресацию в любой момент времени.

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

Если модуль реагирует на несколько адресов GA, каждой GA должен соответствовать логически независимый узел в модуле.

На рис. 8 показана одна из схем выбора слуги при географической адресации. Модули кратной ширины, реагирующие более чем на один GA, не должны иметь узлов, доступных более чем одним путем.

4.3. Широкая адресация

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

Рис. 8. Выбор слуги при помощи географической адресации

Широкий адрес применяется в двух случаях. В первом случае он служит для определения зоны действия широкой операции: направлена ли она к определенному сегменту, ко всем сегментам сети, управляемой посредством информации, содержащейся в соединителях сегментов, или ко всем сегментам, расположенным после определенного сегмента, включая этот сегмент. Во втором случае широкий адрес служит для выбора в управляемом сегменте либо функции, подлежащей исполнению, либо устройств заранее заданного класса. Определены следующие функции: сканирование редких данных, безусловное выставление сигналов на ТР-штырьки, выставление ТР-сигналов при наличии запроса SR и адресация к устройству посредством выдачи сигнала ТР мастером. Устройства, включенные в кабель-сегмент, вместо сигнала ТР используют непосредственно AD-линию, номер которой соответствует установленному географическому адресу устройства. Коды восьми функций предоставлены разработчику для специальных применений. В зависимости от потребности код класса устройства вводят при его изготовлении или во время инициализации системы.

Рис. 9. Формат широкого адреса

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

4.3.1. Как мастер управляет широкой операцией

На рис. 9 показан формат широкого адреса. Если в 24 старших разрядах адреса пули, а бит глобальности G(AD <01> единица, широкий адрес является глобальным и операция распространяется на все сегменты, достигаемые широкой адресацией. В каждом соединителе сегментов в маршрутной таблице зарезервирован бит пропускания, соответствующий GP-полю с нулями при пропускании глобальных широких операций. Картина распространения широкого адреса должна иметь простую древовидную структуру без пересечений (см. п. 10.6.2). Это правило должно быть обеспечено во время инициализации системы.

Если в поле GP нули и бит глобальности тоже нуль, широкая операция ограничена тем сегментом, в котором находится действующий мастер. Любой СС, передающий глобальный широкий адрес с нулями в поле GP, обеспечивает установку бита локальности L(AD <00>) = 1 при выставлении широкого адреса в сегмент, присоединенный к дальней стороне, независимо от значения бита L в сегменте ближней стороны.

Слуги в сегменте, получившем широкий адрес, реагируют на широкую операцию лишь при условии L = 1. Соединители сегментов не исследуют бит локальности, когда определяют, пропускать или не пропускать широкий адрес.

Если нули не во всех разрядах поля GP, то широкая операция не является глобальной и маршрут ведет к определенному сегменту. Биты глобальности и локальности, зафиксированные действующим мастером, определяют сегменты, в которых должна выполняться широкая операция. Если G = L = 0, к широкой операции чувствителен лишь сегмент, определенный полем GP; если же G = 0 и L= 1, то реагируют все сегменты, расположенные на пути широкого адреса к определенному сегменту. Если G = l, широкий адрес распространяется точно также, как при G = 0, и действует точно в тех же сегментах (определяемые битом L), пока он не достигнет того СС, который должен передать широкий адрес определенному сегменту. При таких условиях этот СС выставляет L = 1 и нули в поле GP для своего дальнего сегмента. Таким образом, начиная с определенного момента, широкая операция продолжается глобально.

Указанные правила в табличной форме представлены в табл. II, которая является обязательной частью спецификаций, данной в п. 10.7.1. Для дальнейшего разъяснения хода широкой операции в таблице есть ссылки на рис. 10.

Для широкой адресации индивидуальные подтверждения не выдаются, поэтому несколько СС, присоединенных к данному сегменту, могут опознавать и передавать глобальный широкий адрес. Каждый СС, обнаруживающий широкий адрес, который следует передать дальше, выставляет сигнал WT = 1 в сегмент ближней стороны и пытается завладеть магистралью сегмента дальней стороны. Если в такой попытке возникает какая-либо ошибка, СС генерирует соответствующий ответ на линиях SS (состояние мастера) и сигнал WT = 0 с выдачей его в сегмент ближней стороны, при этом СС не выдает сигнал АК = 1. Если попытка была успешной, СС продолжает поддерживать WT = 1 на своей ближней стороне до тех пор, пока на дальней стороне не получит WТ = 0, и либо АК (u), либо DK (t). После этого СС выставляет WT = 0 в сегмент ближней стороны, то не пропускает ни AK (u), ни DK (t). Один из этих сигналов в соответствии со случаем выдает вспомогательная логика, которая в крейте-сегменте должна чувствовать, что WT = 0 по крайней мере в течение времени, равному двум задержкам в магистрали. Таким способом формируется системное подтверждение и передается действующему мастеру, начавшему операцию.

* Этот СС не должен пропускать широкую операцию между сегментами Е и С, если какие-либо другие СС соединяют С и Е в широкой операции.

Рис. 10. Пример маршрута широкой операции

Таблица II

Управление мастером широкой операцией

GP поле

С бит

L бит

Места выполнения широкой операции

Сегменты на рис. 10

0

0

0

Операции нет

-

0

0

1

Только в локальном сегменте

А

0

1

0

В сегментах (под) дерево широкой операции ниже локального сегмента

Все, за исключением А

0

1

1

В локальном сегменте и в сегментах (под) дерево ниже локального сегмента

Все

N*

0

0

Только в сегменте N

N

N*

0

1

В локальном сегменте, в сегментах на пути к сегменту N и в сегменте N

А, В, N

N*

1

0

В сегменте N и в сегментах (под) дерево ниже N

N, С

N*

1

1

В локальном сегменте, в сегментах на пути к сегменту N, в сегменте N и в сегментах (под) дерево ниже N

А, В, С, N

* N - не равно нулю.

Требования выделения древовидной структуры для выполнения глобальной широкой операции, означают, что в системе в каждом данном случае операции допустимо единственное дерево широкой операции и единственный сегмент, ведущий широкую адресацию по всей системе. Глобальные широкие операции из любого сегмента к сегментам, расположенным ниже по дереву, могут выполняться без затруднений. Однако широкая операция с установленным битом глобальности, направленная выше начавшего сегмента, может привести к затруднениям вследствие возможности самоблокировки такой широкой операции. Это происходит, когда СС ожидает освобождение сегмента, которое не может наступить, поскольку сегмент занят другой частью широкой операции. Например, в системе, показанной на рис. 10, глобальная широкая операция к сегменту В и его поддереву может быть начата только из сегментов А, В или Р. Аналогичная широкая операция к сегменту N (чье поддерево состоит только из сегмента С) может быть начата из любого сегмента, кроме С.

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

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

4.3.2. Ответ слуги на широкие операции

Биты AD <07:02> широкого адреса, показанные на рис. 9, используются в качестве поля функций слуги. Во время адресной фазы широкой операции слуги исследуют только AD <00> и AD <07:02>, все другие биты AD игнорируются. AD <00> - бит локальности L должен быть равен единице, если слуга должен выполнить операцию. Если L = 1, слуга исследует поле функции, чтобы определить, какое действие ему следует производить в последующих циклах передачи данных. В табл. III описаны эти действия. Слуги, отвечающие на широкую операцию, не выдают сигнала подтверждения АК (u) или DK (t). Заметим, что во всех случаях, указанных в табл. III, слуги игнорируют бит глобальности G (AD <01>), а бит локальности (AD <00>) должен быть равен 1.

Таблица III

Кодирование функций в ответе слуги на широкую операцию

Случаи

AD биты

Описание

7

6

5

4

3

2

1

Игнорированы

0

0

Общая широкая передача. Все устройства отвечают на последующие циклы данных

2

N

0

1

Отвечают на последующие циклы данных только устройства класса N (см. п. 8.10, CSR-7)

3

X* 0

1

0

Сканирование редких данных: устройства отвечают выставлением ТР** во время следующего цикла чтения, если имеются данные Узорный выбор устройств: устройства, обнаруживающие сигнал ТР** во время непосредственно следующего цикла записи данных, являются выбранными и отвечают на последующие циклы чтения и записи

X* 1

1

0

Сканирование, доступное для устройства: если устройства не имеют данных или готовы к использованию, они отвечают выставлением сигнала ТР**. Узорный выбор устройства тот же, что и в случае 3

4

0

1

1

Устройства отвечают выставлением сигнала ТР** во время следующего цикла чтения

5

1

1

1

Если выставлен запрос на обслуживание SR, то выставляет ТР** в следующем цикле чтения.

6

2

1

1

Если CSR-0 <05> = 1 (см. табл. XIIb), то устройства отвечают выставлением сигнала ТР** во время следующего цикла чтения

7

3 - 7

1

1

Зарезервировано

8

8 - F

1

1

Определяются производителем устройства

* Разряды 5-7 используются для адресации к определенному сегменту на расширенном сегменте. Для того, чтобы ответить, слуги требуют, чтобы эти биты были равны нулю. Модули, разработанные до 1 июля 1986 г., которые отвечают случаю 3, не нуждаются в декодировании битов 4 - 7 и, следовательно, не нуждаются в ответе, отличном от случаев 3 и 3а.

** Устройство, присоединенное к кабель-сегменту, в отличие от присоединенного к крейт-сегменту, вместо ТР-штырька использует AD-линию, номер которой соответствует географическому адресу устройства, установленному при помощи переключателя.

Широкий адрес должен быть определен сигналом MS1 = 1 во время первичного адресного цикла и иметь формат, представленный на рис. 9.

Слуги должны отвечать на широкий адрес только в случае, когда AD <00> = 1, и в соответствии с указаниями, данными в табл. III.

Интерпретируя широкий адрес, слуги должны игнорировать AD <31:08> и AD <01>.

Если во время адресной части широкой операции имеет место АD <03> = AD <02> = 1, то в следующем цикле передачи данных должно выполняться MS = 0.

После завершения одного из широких первичных адресных циклов, определенных в табл. III, мастер может во время последующей связки AS/AK действовать следующим образом.

Случаи 1 и 2. Разрешается любая последовательность вторичных адресных циклов и циклов данных. Характеристики состояний те же, что и не для широких операций.

Остальные случаи. Если во время адресной части широкой операции имело место равенство AD <03> - 1, то следующим циклом должен быть цикл данных при MS = 0. Если первый цикл является циклом считывания данных, за ним при MS = 0 может последовать цикл записи данных, который также имеет специальное значение. Устройства, все еще присоединенные к мастеру после завершения этого цикла записи, реагируют на последующие циклы данных обычным путем. Если цикл записи данных, непосредственно следующий за первым циклом считывания данных, не должен иметь особого значения, MS не должен равняться нулю.

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

Слуги, присоединенные к мастерам во время адресного цикла, могут выдавать сигналы SS состояния слуг в ответ на циклы данных тем же способом и с теми же целями, которые обычны для циклов данных при нешироких операциях. Системное подтверждение позволяет мастеру, выполняющему широкую операцию, при получении сигнала DK (t) или АК (u) полагать, что условия на линиях SS правильны, за исключением случая принудительной передачи блока. При широком чтении считываемые данные верны также в момент перехода DK (t). Однако не существует механизма, гарантирующего проверку данных по четности при широком чтении.

Если мастер, выполняющий широкую операцию, видит не нулевой ответ SS в момент DK (t), то он не имеет средств определить, какой из присоединенных слуг правильно выполняет циклы данных и какой выполняет неправильно. Известно только лишь, что кто-то работает неправильно. Чтобы продолжить выполнение задачи, можно пренебречь ошибкой, если это допустимо, или повторить широкую операцию, или, на худой конец, запустить всю систему снова.

Вследствие указанных трудностей, слугам при широких операциях в системах ФАСТБАС не следует выставлять ответы SS, кроме как в критических ситуациях управления. Рекомендуется такие операции разделять на два этапа. Первый является проверочным, поэтому если действительно требуется выставить ответ «SS не равно 0», то это нужно делать в первом цикле. На втором этапе происходит исполнение команды. В случае затруднений мастер может остановить операцию после первого этапа и предпринять корректирующие действия до каких-либо существенных действий со стороны присоединенных слуг.

4.4. Вторичная адресация

Как было описано ранее (например, в п. 4.1), вторичный адресный цикл можно рассматривать как цикл данных, в котором определяется новый адрес внутри пространства в устройстве (или в устройствах), присоединенном во время первичного адресного цикла, независимо от его типа - логического, географического или широкого. Для осуществления вторичной адресации, с учетом того, что передача адресов и данных в магистрали происходит мультиплексно, но во многих устройствах необходимо хранить адресную информацию в NTA-регистре адреса следующей передачи.

Все устройства, которые имеют более одного CSR-регистра или более одного регистра в области данных, должны иметь регистр NTA и декодировать все 32 AD-бита во время вторичного адресного цикла записи, чтобы определить, какой ответ SS следует выдать и тип последующей операции устройства.

Если имеется регистр NTA, то он должен:

загружаться информацией о внутреннем адресе IA в младших битах и нулями в остальных только тогда, когда устройство узнало свой адрес и выдало MS = 0 (см. табл. V);

загружаться соответствующей AD-информацией во время вторичного адресного цикла записи (см. п. 5.3.1);

передавать и АD-линии информацию во время вторичного адресного цикла чтения (см. п. 5.3.1);

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

Эти правила позволяют мастерам географически адресовать слуг и считывать обратно предыдущее содержание NTA-регистра. Заметим также, что нет необходимости делать NTA-регистр шириной и 32 разряда. Регистр может содержать одиночные биты, указывающие достоверность многобитовых полей внутри вторичного адреса шириной в 32 бита. NTA-регистр загружается всегда, вне зависимости от достоверности вторичного адреса. Если вторичный адрес не верный, то возвращается SS = 7.

Простая или принудительная передача блока не должна модифицировать NTA-регистр, если для наблюдения за передачей данных имеются другие средства, например, память «первый вошел, первый вышел» или счетчики-указатели, как регистр CSR = 40 в соединителе сегментов.

4.5. Операция сканирования редких данных и узорного выбора устройств

Операция сканирования редких данных (СРД), случай 3 в табл. III, позволяет мастеру быстро определять, какие из многочисленных устройств содержат ценные данные, и для получения данных ограничиться опросом именно этих устройств. Сканирование редких данных может быть выполнено следующим образом. Операция может начаться с широкого адресного цикла при AD <04:02> =2. В следующем цикле чтения модули, имеющие данные, выставляют сигналы ТР на АD-линии. Затем мастер заканчивает широкую операцию удалением AS, а после этого географически адресуется к тем модулям, которые имеют данные. Данные могут быть считаны при помощи передач блоков. Если требуется очистить модули и установить их в исходное состояние, мастер может начать другую широкую операцию, на этот раз направленную к пространству регистров управления и состояний. Затем при помощи цикла записи данных и ранее полученного ТР-узора выбирается первоначальная группа модулей. Вторичным адресным циклом с последующими циклами записи данных выбирают и модификации нужных регистров.

Узорный выбор устройств выполняется во время первого цикла записи данных, следующего за широким адресным циклом с АD <03> = 1 и AD <02> = 0. Может быть также промежуточный цикл чтения данных при MS = 0. Цикл чтения, следующий после узорного выбора, не предусматривает чтение узора редких данных, как при СРД, а является обычным циклом чтения при широкой операции. Узорный выбор устройств не может быть изменен без выполнения нового широкого адресного цикла.

Первый цикл чтения, который дает узор редких данных, не препятствует узорному выбору во время примыкающего цикла записи данных. Это возможно, например, путем выполнения широкой адресации при MS = 4 и AD <04:02> = 2, чтения узора редких данных, демаскированием, быть может, битов некоторых модулей, записи узора (с выполнением узорного выбора), записи вторичного адреса для выбора CSR-регистра во всех выбранных модулях, а затем записи данных, чтобы вызвать в этих модулях ответное действие.

Отметим, что процесс присоединения к мастеру во время выполнения широкого адресного цикла не влияет ни на какие внутренние указатели в слуге. Следовательно, существует возможность конструирования устройств, которые выставляют сигнал ТР в зависимости от содержания регистра, указанного регистром NTA. Для осуществления этой возможности выполняется широкий адресный цикл (случай 1 или 2) с целью отбора интересующих устройств, затем следует цикл записи данных вторичного адреса для установки указателя в NTA каждого слуги. Мастер завершает цикл передачи широкого адреса (случай 3), сохраняя GK = 1, для повторного отбора устройств, за которым следует цикл чтения данных при MS = 0 для опроса этих устройств.

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

ГЛАВА 5. ОПЕРАЦИЯ ФАСТБАС. ТАЙМИРОВАНИЕ, ПОСЛЕДОВАТЕЛЬНОСТИ И ОТВЕТНЫЕ ДЕЙСТВИЯ

Операция ФАСТБАС содержит обмен информацией между мастером и одним или более слугами. Мастер осуществляет полное управление операцией. Слуги только отвечают на запросы мастеров. Мастер инициирует цикл магистрали (т.е. делает запрос), выставляя сперва сигналы на управляющих линиях («выбор режима» и «чтение»), а также на информационных линиях («адрес/данные», «четность» и «разрешение контроля по четности») и затем, после соответствующей задержки, выставляя синхронизирующий сигнал. В зависимости от типа запроса выбранный слуга или вспомогательная логика отвечают при помощи выставления подтверждающего сигнала, а также, если это требуется, слуга выставляет данные на линии «адрес/данные». Статус текущего цикла сообщается по линиям «состояния слуги», сигналы на которые подаются соединителями сегментов или слугами в случае первичного адресного цикла и слугами в случае цикла данных. В табл. IV показана таймирующая последовательность для адресного цикла или цикла данных с подтверждением. Блочные передачи данных могут использовать, а могут и не использовать подтверждение мастер/слуга.

Таблица IV

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

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

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

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

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

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

 

 

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

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

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

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

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

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

 

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

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

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

 

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

 

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

 

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

 

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

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

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

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

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

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

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

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

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

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

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

7. Мастер должен генерировать строб адреса AS (d), если операция ФАСТБАС, инициированная стробом адреса AS (u), должна быть завершена. Мастер должен прекратить подачу всех сигналов на магистраль по крайней мере на время разброса задержек раньше, чем поступит AS (d) (кроме строба данных DS, который может быть удален одновременно с AS (d)).

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

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

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

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

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

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

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

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

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

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

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

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

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

Если в течение первичного адресного цикла присоединенный слуга выставляет SS, сигналы на линии SS (статус слуги) должны быть поданы не позднее, чем сигнал АК (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).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Таймирование первичных адресных циклов с точки зрения мастера и слуги показано на рис. 11 - 13.

5.2.1. Последовательность действий мастера для формирования сигнала AS

Мастер должен инициировать первичный адресный цикл, если сигналы AK = WT = EG = 0, а он сам подает сигнал GK = 1.

В течение первичного адресного цикла мастер должен:

установить RD = 0;

подать адресную информацию на линии AD;

подать, если требуется, сигнал EG, если MS = 0 или 1;

подать, если формируется четность, сигнал РЕ и выставить на линию РА дополнение до нечетного количества единичных битов для линий AD;

подать сигналы на линии MS в соответствии с табл. V, чтобы указать режим адресации;

сформировать сигнал AS (u) в соответствии со спецификациями на таймирование в п. 5.1.1 и поддерживать AS = 1 в течение операции.

* Минимальное значение ТА должно быть больше, чем 2TS

1 - линия «чтение»; 2 - линия «выбор режима»; 3 - линии «адрес/данные», «разрешение контроля по четности»; 4 - линия «строб адреса»; 5 - линия «подтверждение приема адреса»; 6 - линия «статус слуги»; 7 - линия «строб данных»

Относительно определений символов см. рис. 13.

Рис. 11. Цикл логической адресации

1 - линия «выбор режима»; 2 - линии «адрес/данные», «разрешение контроля по четности», «четность»; 3 - линия «строб адреса»; 4 - линия «разрешение географической адресации»; 5 - линия «подтверждение приема адреса»; 6 - линия «статус слуги»

Относительно определений символов см. рис. 13.

Рис. 12. Цикл географическом адресации, ЕС выставлен мастером

5.2.2. Ответные действия слуги на сигнал AS (u)

В течение первичного адресного цикла слуга должен стать присоединенным слугой и принимать участие в последующих циклах передачи данных только в случаях, если АК = 0, а также если он распознает свой адрес и тип адресации, как это определено в табл. V.

Символы на рис. 11 - 16:

В - задержка от мастера до слуги;

В1 - задержка от мастера до источника EG;

В2 - задержка EG от источника до слуги;

LС - время работы логики и формирователя, необходимое слуге для присоединения;

Ld - время отсоединения слуги;

LЕ - время работы логики в источнике EG;

LM - время работы логики и формирователя в мастере;

LS - время работы логики в слуге;

TAmjn - минимальный промежуток времени между импульсами (см. табл. А.II);

TS - время разброса фронтов, учитываемое мастером.

Рис. 13. Цикл географической адресации, EG выставлен вспомогательной логикой

Таблица V

Спецификация типов адресации

Код на линиях MS <2:0> (выбор режима)

Тип адресации

0

Конкретное устройство - область адресов данных

1

Конкретное устройство - область адресов регистров управления и состояний

2

Широкий адрес - область адресов данных

3

Широкий адрес - область адресов регистров управления и состояний

4 - 5

Зарезервированы - конкретное устройство

6 - 7

Зарезервированы - широкий адрес

Логически адресуемый слуга должен, кроме того, иметь CSR-0 <01> = 1 (разрешено распознавание адреса) и не должен использовать поле внутренних адресов IA для того, чтобы определить, должен ли он стать присоединенным (см. п. 4.1).

Когда WT = 0, присоединенный слуга должен в ответ на AS (u) и MS1 = 0 сформировать сигнал АК (u). Если WT = 0, то в ответ на AS (d) он должен сформировать сигнал АК (d). Оба ответных действия должны происходить в пределах лимита на время ответных действий слуги в адресном цикле (см. приложение А).

В течение первичного адресного цикла слуга не должен подавать коды SS = 1, 2 или 3 (см. п. 10.7.4) и должен подавать код SS = 6 только в случае, если обнаружен внутренний адрес, попадающий в недопустимую область адресов данных.

Если в течение первичного адресного цикла имеет место MS1 = 1, присоединенный слуга не должен генерировать сигнал АК = 1. (Это широкая операция, см. пп. 4.3.2 и 7.3).

Слуга в крейт-сегменте, который обнаруживает сигналы EG = 1 и AS = 1, когда АК = 0, должен сравнивать код AD <04:00> с кодом на штырьках географического адреса GA <04:00>.

Слуга в кабель-сегменте, обнаруживший EG = 1 и AS = 1, когда АК = 0, должен сравнить AD <04:00> со своим географическим адресом, установленным переключателем. Если найдено соответствие в любом из указанных случаев, а также имеет место AD <07:05> = 0, тогда слуга должен стать присоединенным слугой и сформировать сигнал АК (u), когда WT = 0, а затем поддерживать АК = 1 до тех пор, пока AS = 1.

Если в течение первичного адресного цикла, сопровождаемого сигналом РЕ = 1, слуга обнаружит ошибку четности, он не должен генерировать АК (u) и становиться присоединенным слугой.

Эти правила не требуют, чтобы слуга отвечал на все режимы адресации. Обязательной является только географическая адресация (см. п. 4.2). Участие слуги в логических адресных циклах может быть разрешено и запрещено специальными битами в регистре CSR-0. Такое свойство не специфицируется для широких адресных циклов.

Если первичный адресный цикл определяет логический адрес (в область адресов данных), часть IА адресного поля загружается в низшие разряды регистра NTA, а высшие разряды NTA устанавливаются на нуль (см. п. 4.4).

Во время фазы декодирования в первичном адресном цикле требование АК = 0 удерживает очень медленного удаленного слугу от неправильного декодирования, когда быстрый близкий слуга выдал сигнал АК (u) и мастер продолжает изменять состояние данных и управляющих линий для последующего цикла данных (см. рис. 8).

5.2.3. Ответные действия мастера на сигнал АК(u)

Спустя время разброса задержек после получения сигнала АК (u), мастер должен интерпретировать ответ на линиях SS, получаемых в течение первичного адресного цикла, так, как показано в табл. VI.

Ответы SS = 1, 2 или 3 должны служить для мастера признаком того, что указанная связь не была установлена и что соединитель сегментов является присоединенным к мастеру. Все другие ответы по линиям SS свидетельствуют о том, что слуга присоединен к данному мастеру.

Если сигнал АК (u) не будет получен прежде, чем истечет лимит на время ответов мастеру в адресном цикле, мастер должен выставить AS = 0.

Мастер, выставляющий сигнал EG, должен генерировать EG (d) при получении сигнала АК (u).

Отметим, что в течение первичных адресных циклов слуга выставляет ненулевые ответы это линиям SS, если это оправдано, только на логические адреса в пределах области адресов данных. Мастер должен интерпретировать ответные коды SS = 4, 5 или 6 как ошибку.

Таблица VI

Ответ по линиям SS в адресном цикле, поступающий с. сигналом АК (u)

Код на линиях SS <2:0>

Интерпретация (см. приложение J)

0

Адрес распознан

1

Сеть занята

2

Сбой в сети

3

Сеть ликвидирована

4

Зарезервирован

5

Зарезервирован

6

Зарезервирован

7

Недопустимый внутренний адрес - адрес принят

Мастер может изменять состояние сигналов на линиях AD, RD, РА, РЕ и MS по получении сигнала АК (u).

5.3. Операции

Присоединенные слуги отвечают на циклы данных, которые должны инициироваться действующими мастерами. Взаимные подтверждения мастер-слуга используются для всех циклов данных, за исключением принудительных передач. Эти подтверждения формируются мастером, генерирующим сигнал «строб данных» (DS), и слугой или вспомогательной логикой, отвечающими сигналом «подтверждение приема данных» (DK).

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

НУЛЕВАЯ. Адресация выполняется, но передача данных не происходит. Этот тип операции может быть полезным для тестирования присутствия устройства или для настройки системных связей с целью гарантировать их наличие перед началом фактических передач.

ОДНОКРАТНАЯ. Этот тип операции представляет собой обычную в режиме произвольного доступа передачу данных в количестве одного слова. Такая передача данных, запись или чтение, происходит, соответственно, по сигналу DS (u) или DK (u).

БЛОЧНАЯ. В нескольких циклах передачи данных пересылается некоторое количество (возможно, нулевое) слов данных без повторения какой-либо адресной информации. Передачи данных происходят по сигналу DS (t) или DK (t). Прежде чем инициировать каждую новую передачу данных, мастер ожидает ответа на предыдущую.

ПРИНУДИТЕЛЬНАЯ. Аналогична блочной передаче, за тем исключением, что мастер инициирует каждую новую передачу данных, не ожидая ответа на предыдущую.

ЗАЩИТНЫЙ БУФЕР. Передает данные только в защитный буфер или из него. Не оказывает никакого другого влияния на слугу. Цикл считывания с защитного буфера может быть использован для восстановления информации в случае ошибок по четности при считывании. Запись в защитный буфер с последующим считыванием из него может быть использована для проверки канала передачи данных между мастером и слугой. Передачи данных происходят на DS (t) или DK (t). Перед началом каждой передачи данных мастер ожидает реакцию на предыдущую передачу.

ОЧИСТКА. Операция данных с подтверждением от DS (t) к DK. (t) при RD = 0 с целью предотвращения ошибок при передаче данных из-за логических схем типа монтажного ИЛИ. Во время этой операции никакие данные не передаются.

Для магистралей, управляемых напряжением, операции по очистке применяются при изменении направления передачи магистрали чтения к записи. Эта операция препятствует одновременному выставлению AD, РА и РЕ обоими устройствами - мастером и слугой. В конце цикла чтения слуга выставляет сигналы на линии. Если после этого мастер хочет выполнять цикл записи, необходимо выполнить операцию очистки для снятия сигналов слуги, прежде чем мастер выставит на эти линии свои сигналы. Подтверждение цикла очистки обеспечивает время, необходимое для того, чтобы отмена сигналов слуги прошла к мастеру с освобождением магистрали для использования ее мастером. Если мастер должен задействовать эти линии до их очистки, то его формирователи напряжения не смогут подавать полный ток возбуждения. Надежный сигнал мастера не будет выставлен на магистрали, пока не исчезнет ток из других драйверов. Поскольку мастер не может опознать это состояние, гарантия надежной работы должна зависеть от дополнительного подтверждения, обеспечиваемого циклом очистки.

БЛОКИРОВАННЫЙ АДРЕС. Первичный адресный цикл сопровождается последовательностью отдельных передач и/или блочных или принудительных передач, считываний или записей в перемешанном виде. Примером является операция считывание - модификация - запись, показанная на рис. 14. Вторичные адресные циклы - специальный тип цикла данных - могут быть использованы для доступа к различным внутренним регистрам в пределах адресного пространств, выбираемого в первичном адресном цикле в ходе операции с блокировочным адресом.

Помимо этого, последовательности с блокировкой арбитража при операциях ФАСТБАС могут выполняться отдельным мастером, который не теряет руководства магистралью. Таким образом, набор передач отдельных, блочных, принудительных или, при блокированном адресе, во множество различных слуг может происходить без прерывания со стороны других возможных действующих мастеров. Это достигается путем поддержания GK = 1 в мастере и логикой соединителей сегментов (СС), которая заставляет их сохранять установленное соединение в системе до удаления GK. Для установления соединений в системе для последовательностей с блокированным арбитражем могут быть использованы нулевые операции. При последовательности с блокированным арбитражем может быть доступ только к адресам в первоначально соединенной системе.

Синхронизация трех различных типов циклов данных с точки зрения мастера и слуги показана на рис. 14 - 16.

Таблица VII

Интерпретация кодов MS в цикле данных

MS <2:0>

DS (u)

DS (d)

Примечание

0

Передача данных

Очистка**

Одиночная передача

1

Передача данных, добавление в NTA*

Передача данных, добавление в NTA

Передача блока с подтверждениями

2

Передача NTA

Очистки**

Вторичный адрес

3

Передача данных, добавление в NTA*

Передача данных, добавление в NTA*

Принудительная передача

4

Ограниченное применение***

Зарезервировано

 

5

Зарезервировано

Зарезервировано

 

6

Зарезервировано

Зарезервировано

 

7

Зарезервировано

Зарезервировано

 

* Добавление в NTA при потребности (см. пп. 5.3.2 и 11.2).

** В очистном цикле данных не происходит передачи данных.

*** Предполагаемое использование кода MS = 4 состоит в том, чтобы показать при DS = (u), что запрашиваются ограниченные действия слуги, прежде чем будут переданы дальнейшие данные. Точные действия могут зависеть от применения, при этом код MS = 4 не сопровождается действительными данными.

5.3.1. Последовательность действий мастера для формирования сигнала DS

Во время цикла данных мастер, в соответствии с предписаниями по таймированию в п. 5.1.1, должен:

установить сигнал RD = 0 для циклов записи и RD = 1 для циклов чтения;

выставить данные на линиях AD, когда RD = 0. Если мастер, при желании, генерирует четность, он должен установить сигнал РЕ = 1 и выставить РА так, чтобы на линиях AD и РА в сумме в состояние логической единицы было установлено нечетное число битов;

установить на линиях MS код в соответствии с табл. VII для того, чтобы указать тип цикла данных.

Сформировать сигнал DS (t) в соответствии с предписаниями по таймированию в п. 5.1.1.

Данные должны передаваться в соответствии с табл. VII.

Дли завершения блочной или принудительной передачи с нечетным счетом слов мастер должен установить MS = 0, чтобы MS-линии достигли устойчивого состояния перед DS (d) с учетом разброса фронтов. Однако, если счет слов четный и блочная или принудительная передача является частью последовательности с блокированным арбитражем, то следует выполнить специальные действия, указанные в п. 11.1.

Для цикла очистки данных мастер должен выставить RD = 0.

Рис. 14. Цикл чтение-модификация-запись

Сигналы на линиях MS, выставленные мастером, неизменны с момента начала разброса фронтов до DS (t) и остаются такими до получения DK (t). Хотя линии MS и могут быть установлены в упомянутое состояние при нескольких переходах DS (t), на этих линиях могут случаться выбросы после DK (t), длящиеся до времени разброса перед DS (t).

Принудительная передача чтения выполняется мастером, формирующим DS (t). Он использует DK (t), получаемые от слуги, для стробирования данных, но мастер не ожидает прихода сигнала DK (t) прежде, чем формировать следующий сигнал DS (t).

5.3.2. Ответные действия слуги на сигнал DS (t).

Слуги, которые стали присоединенными в течение широкого адресного цикла, не должны генерировать сигнал DK = 1.

Слуга, который стал присоединенным к определенному устройству во время первичного адресного цикла, должен отвечать на сигнал DS (t) в пределах лимита времени ответных действий слуги в цикле данных (см. приложение А) или должен выставить WT = 1 до тех пор, пока он не сформирует сигнал DK (t).

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

Во время цикла записи вторичного адреса присоединенный слуга должен выставить на линии SS ответные коды 0, 1 или 7, как это предписано в табл. VIIIb и п. 5.3.3.

Устройства, которые не имеют регистра NTA (см. п. 4.4) в случае циклов чтения или записей вторичного адреса должны возвращать код SS = 0.

Информация, выставляемая присоединенным слугой, и предпринятые внутренние действия должны быть такими, как установлено в табл. VIIIa, VIIIb и п. 5.3.3.

Таблица VIIIa

Ответы слуги на линиях SS во время цикла данных, поступающие сигналом DK (t)

SS <2:0>

Интерпретация

0

Нормальное действие

1

Занято

2

Конец блока

3

Определяется пользователем

4

Зарезервирован

5

Зарезервирован

6

Ошибка данных (отклонены)

7

Ошибка данных (приняты)

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

5.3.3. Обсуждение ответов по линиям «статус слуги»

В этом разделе дается интерпретация записей в табл. VIIIa и VIIIb.

Вообще автоматическое изменение содержимого регистра NTA допускается только в том случае, если данные были приняты или выданы слугой.

Рис. 15. Чтение данных при произвольном доступе

Таблица VIIIb

Ответы слуги по линиям SS и действия при DK (t)

SS <2:0>

Область адресов данных или регистров управления и статуса

Вторичный адрес

Изменение IA

Запись

Чтение

Запись

Чтение

0

Принимает

Выставляет

Принимает*

Выставляет

Разрешено

1

Отклоняет

Данных нет

Отклоняет

Данных нет

Нет

2

Отклоняет

Данных нет

Отсутствует

Отсутствует

Нет

3

Определяется пользователем

 

-

-

-

4

Зарезервирован

 

-

-

-

5

Зарезервирован

 

-

-

-

6

Отклоняет

Данных нет

Отсутствует

Отсутствует

Нет

7

Принимает

Выставляет

Принимает

Выставляет

Разрешено

* Отклонение производится только, когда регистр NTA не реализован, при этом возвращается SS = 0.

Рис. 16. Блочная передача с подтверждениями, запись

SS = 0         Нормальное действие. Никакие трудности не были отмечены слугой. Однако все же существует возможность того, что мастер, затребовавший чтение данных, может обнаружить ошибку четности, вызванную трудностями при передаче.

SS = 1         Занято. Слуга занят и не может ни выдать, ни принять данные. Мастеру следует вскоре выполнить повторную попытку с неопределенной вероятностью успеха.

SS = 2         Конец блока. Во время блочной или принудительной передачи был упущен конец блока. Данные не могут быть ни выданы, ни приняты. Если цикл данных, явившийся источником этого ответа, сопровождается дальнейшими циклами данных, код SS = 2 повторяется, а состояние слуги не изменяется. Для того, чтобы продолжить передачи данных слуге, который достиг конца блока, мастер должен сначала заново адресовать слугу либо при помощи вторичного адресного цикла, либо путем разрыва связки AS/AK с последующим проведением первичного адресного цикла.

SS = 3         Определяется пользователем. Этот ответ разработчик системы может использовать для специальных целей. Его смысл должен быть известен действующему мастеру и может быть различным при разных типах слуг.

SS = 4         Зарезервирован.

SS = 5         Зарезервирован.

SS = 6         Ошибка данных (отклонены). Этот ответ указывает, что слуга не способен или не желает принимать или выдавать данные вследствие ошибки, связанной сданными или с текущим значением внутреннего адреса, либо в связи с тем, что на линиях MS был установлен код, не предусмотренный для цикла данных. В слуге не произошло изменений, за исключением связанных с выдачей данного ответа и, возможно, с установкой некоторых битов состояний.

При циклах вторичной адресации отклик SS = 6 не выдается.

Ошибки при записи данных могут возникать из-за нарушения четности или в связи с тем, что была предпринята запись в регистр, допускающий только чтение, либо потому, что дальнейшие проверки, проведенные слугой, вскрыли другие проблемы, связанные с данными. В случае простых слуг, в которых выполняется только одна проверка на ошибочные данные, значение этого ответа является недвусмысленным.

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

В случае цикла чтения данных, этот ответ мог бы указывать на отсутствие или неполадки в работе оборудования, подключенного к слуге. Недопустимый внутренний адрес также может явиться причиной этого ответа во время либо цикла чтения, либо цикла записи. Если недопустимый внутренний адрес был указан первичным адресным циклом, тогда ответом на этот цикл должен был быть SS = 7 (табл. VI).

После вторичного адресного цикла, получающего ответ SS = 7, все циклы данных, кроме вторичных адресных циклов, должны получить ответы SS = 6. Первичный адресный цикл или вторичный адресный цикл записи, приводящие к ошибочному отклику (SS = 7), могут быть всегда исправлены путем сопровождения их вторичным адресным циклом записи, который передает достоверный адрес.

SS = 7         Ошибка данных (принята). Этот ответ выдается по тем же самым причинам, что и ответ SS = 6. Все различие заключается в том, что слуга, выставляющий SS = 7, принял ошибочные данные или выставляет данные, зная, что они ошибочные. Если устройство содержит регистр NTA, должен быть возвращен сигнал SS = 7 и NTA загружен, если неверный внутренний адрес был послан либо во время передачи вторичного адреса, либо в область адресов данных во время передачи первичного адреса. Если случается такое, то сигнал SS = 7 должен быть возвращен при последующем вторичном адресном цикле чтения.

В случае записи данных скрытый смысл заключается в том, что те самые ошибочные данные доступны для чтения. Данный слуга может выдавать ответ SS = 6 или SS = 7 в зависимости от того, какой внутренний регистр использовался. Слуга, выполняющий контроль по четности, может отклонять ошибочные данные, посланные в область адресов регистров управления и состояний (ответ SS = 6), но принимать ошибочные данные, посланные в область адресов данных (ответ SS = 7). Такой ответ однозначно указывает, были ли переданы данные или нет. Мастер может просто подсчитывать количество ответов SS = 7 во время передач больших массивов данных и только сигнализировать об ошибке, если будет превышено пороговое значение счета.

5.3.4. Реакция мастера на DK (t)

Таймирующий сигнал DK и информационные/управляющие сигналы FD, RD, MS и SS должны интерпретироваться мастером следующим образом.

1. DK (t) при RD = 0 должен указывать на то, что слуга (где применено) получил данные от мастера и готов выполнить следующую команду DS (t).

2. DK (t) при RD = 1 должен указывать, что слуга (где применимо) послал данные мастеру и готов получить следующую команду DS (t).

3. Мастер должен со сдвигом на разброс фронтов после DK (t) интерпретировать линии состояния SS <2:0> и информационные линии в соответствии с табл. VIIIa, VIIIb и п. 5.3.3.

5.4. Использование линии «сброс магистрали» (RB)

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

Сигнал ВН «магистраль остановлена», который выставляется только схемой управления таймированием арбитража (см. п. 7.4) запрещает следствия сигнала RB. Это обстоятельство позволяет осуществлять вставление модулей при включенном питании при помощи запрещения ответов модулей на ложные сигналы по линии RB.

5.4.1. Формирование сигнала RB мастером

Импульс на линию RB может быть подан любым мастером, не обязательно действующим мастером, в любой момент времени.

Если ВН = 0, мастер, выставляющий сигнал RB, должен подать сигнал GK (u) одновременно с сигналом RB (u), если он уже не подаст сигнал GK = 1.

Импульс на линии RB должен иметь длительность, соответствующую характеристикам данной магистрали (см. приложение А).

Мастер, выставляющий сигнал RB, должен поддерживать GK = 1 в момент RB (d), и должен присвоить себе право владения магистралью.

Мастер, который выставляет в сегменте сигнал RB и в момент RB (d) принимает право владения магистралью, должен продолжать делать это до проведения диагностики в сегменте и/или инициализации или повторной инициализации сегмента.

5.4.2. Ответныe действия слуги на сигнал RB

Устройства должны интегрировать сигнал RB=1 в течение времени интегрирования для сигнала RB, соответствующего типу данной магистрали и все действия на магистрали, вызванные сигналом RB, должны быть завершены в пределах минимальной длительности сигнала RB = 1 (см. приложение А). Когда проинтегрированные сигналы RB = 1 и ВН = 0, устройства, не выставляющие сигнал RB, должны отвечать следующим образом.

1. Запретить выдачу всех сигналов ФАСТБАС, за исключением сигналов AL и SR, и, вследствие этого, любая текущая операция должна закончиться без завершения подтверждений (см. п. 5.5).

2. Запретить распознавание логических адресов (CSR# 0 <01> очищено) и должны отвечать только на географическую или широкую адресацию.

3. Биты «работа» CSR# 0 <02> и «тест» CSR# 2 <07> должны быть очищены, если они реализованы (см. гл. 8).

4. Мастера должны запретить работу схемы запросов на арбитраж очисткой CSR# 0 <01> и CSR# 0 <02>.

См. последний абзац п. 5.5.

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

5.5. Ответные действия устройства на включение питания

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

От устройств, реагирующих на POWER ON (включение питания) или RB, требуется только запрещать выставление сигналов ФАСТБАС, которые не установлены на нуль при нулевом состоянии других сигналов ФАСТБАС. Например, не требуется, чтобы слуга блокировал выставление АК, если АК. сведено к нулю путем приема AS = 0.

ГЛАВА 6. АРБИТРАЖ В МАГИСТРАЛИ

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

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

При получении запроса на арбитраж УТА инициирует цикл арбитража, если магистраль в данный момент не занята. Если магистраль занята, то именно действующий мастер решает, когда сможет состояться цикл арбитража. Выбор критерия, используемого мастером для определения этого момента времени, предоставляется разработчику устройства. Одна из альтернатив заключается и том, чтобы разрешить проведение цикла арбитража непосредственно сразу за последним первичным адресным циклом текущей операции. В результате следующий мастер обычно может быть выбран прежде, чем действующий мастер закончит свой последний цикл данных. Такое перекрытие арбитража с действиями на магистрали означает, что, когда магистраль занята, теряется минимальное или вообще никакое время не теряется при переключении от одного мастера к другому.

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

6.1. Использование линий магистрали в процессе арбитража

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

Таблица IX

Линии для арбитража в системе ФАСТБАС

Наименование

Обозначение

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

Запрос на арбитраж

AR

Формируется мастером с целью запросить право на владение магистралью

Запрет запроса на арбитраж

AI

Формируется схемой УТА с целью показать наличие необслуженных запросов

Разрешение на арбитраж

АG

Формируется в УТА для управления таймированием цикла арбитража

Уровень арбитража

AL

Сигналы на линиях уровня арбитража выставляются мастерами

Подтверждение разрешения

GK

Формируется выигравшим мастером, когда он принял на себя управление данным сегментом

Каждому мастеру в сегменте должен быть присвоен единственный в пределах его сегмента уровень арбитража. Уровень арбитража должен быть указан при помощи двоичного шестиразрядного числа, содержащегося в регистре CSR = 8 (см. п. 8.11). Допустимые уровни арбитража должны находиться в диапазоне от 1 до 63. Уровень арбитража 0 не должен быть разрешен.

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

Когда уровень арбитража пропускается на линии AL, старший разряд должен появиться на линии AL <05>, а младший - на линии AL <00>.

Рекомендуется, чтобы локальный уровень арбитража 31 был зарезервирован для использования диагностическими модулями.

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

Цикл арбитража инициируется, если линия AR находится в состоянии «истинно», а линии AG, GK, WT находятся в состоянии «ложь». Так как состоянием линии GK управляет действующий мастер, он может управлять инициированием циклов арбитража. Схема УТА запускает такой цикл, формируя сигнал AG (u), который используется мастерами, выставляющими запросы, для пропускания своих уровней арбитража на линии AL, а всеми другими мастерами - чтобы убрать свои уровни арбитража с линий AL. Определение выигравшего мастера производится самими мастерами - схема УТА просто обеспечивает таймирующие сигналы для этого процесса. После выдачи сигнала AG (u) схема УТА ожидает в течение фиксированного промежутка времени завершение процесса арбитража. Этот промежуток определяется задержками на магистрали и во внутренней логике. В конце указанного периода ожидания код на линиях AL представляет собой уровень арбитража выигравшего мастера. Если в это время схема УТА обнаруживает недопустимый нулевой уровень на линиях AL, она не ожидает прихода сигнала GK (u) и считает данный цикл арбитража завершенным. Если код на линиях AL отличается от нуля, тогда схема УТА проверяет магистраль на предмет активности. Когда связка AS/AK текущей операции прекращается на время, достаточное для очистки магистрали, и WT = 0, тогда схема УТА формирует сигнал AG (d). Выигравший мастер, о котором теперь говорят как о подготовленном мастере до тех пор, пока он не возьмет на себя владение магистралью, осознает, что он выиграл, а всем остальным участкам процесса арбитража становится известно, что они проиграли.

Получение подготовленным мастером сигнала AG (d) побуждает его возвратить схеме УТА сигнал «подтверждение разрешения» (GK) и приступить к использованию магистрали. Если схема УТА не получает сигнал GK в течение времени, определяемого задержками на магистрали и в логике, она предполагает, что выигравший мастер не хочет или не может присвоить право на владение магистралью, и, если сигнал «запрос на арбитраж» находится в состоянии АR = 1, инициирует новый цикл арбитража

Если мастерам разрешено выставлять сигнал AR в любой момент времени, мастера с высоким приоритетом могут неопределенно долго не давать право на владение магистралью мастерам с низким приоритетом. Этой проблемы можно избежать, если мастера руководствуются рекомендованным протоколом гарантированного доступа, который использует формируемой схемой УТА управляющий сигнал «запрет запроса на арбитраж» (AI). Мастера инициируют запросы на арбитраж тогда, когда сигнал АI = 0. Все запросы на владение магистралью, которые присутствуют в момент выдачи сигнала AI (u), обслуживаются в порядке приоритетов, прежде чем любым запросам, возникающим после сигнала AI (u), будет разрешено пройти на линию AR. Результатом является форма циклического упорядочения приоритетов. Мастера, которые не руководствуются этим протоколом, могут сочетаться с такими мастерами, которые его используют, допуская возможность для мастеров получать владение магистралью, не принимая во внимание запросы от мастеров с более низкими приоритетами.

Две особенности протокола арбитража должны быть подчеркнуты. Первая заключается в том, что именно мастера решают, кто будет следующим использовать магистраль. Вторая состоит в том, что именно схема управления таймированием арбитража определяет момент времени, в который подготовленный мастер может взять на себя владение магистралью. На рис. 17 показана логика управления арбитража в мастере. Для работы этой схемы требуются дополнительные ключи (см. п. 6.3.1). Для обеспечения правильности векторов арбитража нужны дальнейшая аппаратная или программная проверки.

6.2. Процесс арбитража

В предыдущем разделе были кратко описаны таймирование и управление циклом арбитража. Подробные спецификации, касающиеся этих вопросов, помещены в дальнейших разделах. В данном разделе детально описывается процесс, при помощи которого определяется выигравший уровень арбитража. Реализация соответствующей схемы в ведущем устройстве показана на рис. 18. Отметим, что логические правила в данном случае таковы, что если логический нуль и логическая единица одновременно подаются на одну и ту же линию от двух различных источников, эта линия будет находиться в состоянии логической единицы.

Рис. 17. Логика управления арбитражем в мастере

Рис. 18. Логика арбитража в мастере

При получении сигнала AG (u) те мастера, которые желают соревноваться за право владения магистралью (т.е. выставляющие AR), используют внутренний флаг «пропустить сигналы на линии AL» для того, чтобы выставить свой внутренний уровень арбитража (IAL) на линии AL <05:00>. Затем каждый мастер непрерывно сравнивает присвоенный ему уровень арбитража с кодом на линиях AL. Если мастер обнаруживает, что внутреннее значение любого из разрядов AL отличается от логического уровня соответствующей линии AL, то он запрещает выставление своих данных на все линии AL, имеющие меньший вес. Как следствие логического правила, упомянутого выше, единственно устойчивое различие, которое может возникнуть, относится к случаю, когда внутреннее значение равняется 0, в то время как на соответствующей линии AL имеется логический уровень 1.

Условие, накладываемое при пропускании информации на линии AL; может вызвать неоднократное изменение их содержимого, прежде чем стабилизируется конечное значение. По ходу этих изменений один или несколько мастеров могут на короткое время устанавливать свой внутренний флаг «арбитраж выигран» («это мой»), указывающий, что они будут выбраны владеющими магистралью в следующий раз, как только она станет доступной. Однако схема УТА ожидает в течение времени, равного четырем задержкам магистрали плюс шесть задержек в логике арбитража, чтобы определить окончательно выигравшего мастера прежде, чем перейти к следующей части процесса арбитража. Задержка в логике арбитража равняется времени, требуемому мастеру для того, чтобы отметить различие в значениях одного из старших разрядов кода AL и прекратить пропускание всех разрядов кода AL с меньшим весом. Кроме зависимости от используемой технологии, на эти задержки влияет также способ реализации функции арбитража.

Рис. 19 иллюстрирует таймирование процесса выбора мастера с самым высоким приоритетом. Изображенная ситуация заключается в следующем: мастер А (уровень арбитража 010101b) и схема УТА находятся на одном конце магистрали. Мастера В (уровень арбитража 001111b) и X (уровень арбитража 100000b) находятся на противоположном конце магистрали. Действующим мастером является X, а мастера А и В выставляют сигналы на линию AR. Мастер X формирует сигнал GK (d), чтобы показать, что может состояться цикл арбитража. Схема УТА отвечает сигналом AG (u), и именно момент выдачи этого сигнала служит точкой отсчета шкалы времени на рис. 19.

Мастер А, обнаружив сигнал AG (u), пытается пропустить свой уровень арбитража на линии AL. Мастер X еще не получил сигнал AG (u), следовательно линия AL <05>- все еще находится в состоянии логической 1, и приоритетная схема не разрешает мастеру А, вследствие его уровня арбитража, выставить сигналы на какие-либо из линий AL. Спустя время задержки в магистрали мастер X обнаруживает сигнал AG (u) и, так как он сам не выставляет запрос, убирает свой уровень арбитража с магистрали. В это время мастер В получает сигнал AG (u) и пытается выставить свой уровень арбитража на магистраль. Поскольку в настоящий момент ни мастер А, ни мастер X не выставляют сигналы на какие-либо линии AL, на последних теперь содержится код уровня арбитража мастера В и он считает себя в данный момент выигравшим.

* Мастер А устанавливает внутренне «это мой».

** Мастер В устанавливает внутренне «это мой».

Рис. 19. Арбитраж для двух мастеров при наихудших задержках

Спустя время, равное задержке в магистрали, код уровня арбитража мастера В достигает конца магистрали, на котором расположен мастер А и где приоритетная логика разрешает установку мастером А линии AL <04> в состояние логической 1. Мастер А в это время не может оказать влияние на любые другие линии AL, поэтому код 011111b распространяется обратно к противоположному концу магистрали. Здесь мастер В обнаруживает, что его собственное значение и состояние на магистрали для линии AL <04> различаются, следовательно оно прекращает выставлять сигналы на линии от AL <03> до AL <00> включ. и более не рассматривает себя и качестве выбранного мастера.

Код 010000b затем распространяется обратно к концу магистрали, на котором расположен мастер А и где приоритетная логика теперь разрешает ему выставить все разряды своего уровня арбитража на линии AL, а также, обнаружив соответствие между внутренним и внешним значениями уровня арбитража, начинает рассматривать себя в качестве выигравшего мастера. Уровень арбитража мастера А распространяется в сторону того конца магистрали, на котором расположен мастер В, не оказывая дополнительного влияния на что-либо. Итак, если не учитывать задержки в логике арбитража, спустя четыре задержки в магистрали после выдачи сигнала AG (u) был определен истинный выигравший мастер.

Надписи аналогичны рис. 19.

* Соответствующий мастер устанавливает внутренне «это мой».

□ В этом месте и в этот момент в состоянии магистрали нет изменений

Рис. 20. Арбитраж для трех мастеров при наихудших задержках

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

6.3. Правила арбитража

6.3.1. Формирование мастером сигнала AR и пропускание соединителем сегментов сигнала АR

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

Мастер должен генерировать управляющий сигнал AR только при условии, что установлены в «1» как бит СSR# 0 <01> (разрешение), так и бит CSR = 0 <02> (работа) (см. табл. ХIIb).

Правила, регулирующие процесс формирования сигнала AR, следующие.

1. Мастер должен поддерживать сигнал AR = 0, пока он не пожелает получить владение магистралью своего сегмента.

2. Мастер, который не подчиняется протоколу гарантированного доступа, должен быть в состоянии выставить сигнал AR в любое время.

3. Мастер, который подчиняется протоколу гарантированного доступа, должен быть способен выставлять сигнал AR (u), только когда сигнал А1 = 0.

4. Мастер, который подчиняется протоколу приоритетного доступа, должен быть способен выставлять сигнал AR (u), только если его уровень арбитража выше, чем уровень мастера, действующего на магистрали.

5. Если мастер, который выставил сигнал AR (u), более не желает запрашивать циклы арбитража, он должен выдать сигнал AR (d).

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

Подготовленному мастеру следует прекратить сигнал AR = 1 при получении сигнала AG (d), если он не должен принимать участие в очередном цикле арбитража.

6.3.2. Установка и снятие сигнала AI схемой УТА

Управляющий сигнал «запрет запроса на арбитраж» (AI) генерируется схемой управления таймированием арбитража для того, чтобы дать возможность мастерам участвовать в соревновании за владение магистралью, что позволяет мастерам с низким приоритетом получать владение магистралью независимо от потока запросов, выставляемых мастерами с более высокими приоритетами. Сигнал AI генерируется всеми схемами УТА, но не все мастера должны принимать во внимание сигнал AI, когда они выставляют AR. Мастерам следует иметь возможность работы в (режиме гарантированного доступа (см. п. 8.11).

Спецификации, касающиеся установки и снятия сигнала AI схемой УТА, содержатся в п. 7.1.

6.3.3. Установка и снятие сигнала AG схемой УТА

Передний фронт таймирующего сигнала «разрешение на арбитраж» - (AG) формируется схемой УТА для того, чтобы инициировать цикл арбитража, во время которого соревнующиеся мастера определяют, кто из них станет подготовленным мастером. Задний фронт сигнал AG используется для того, чтобы передать управление подготовленному мастеру.

Устройства, требующие знания уровня арбитража действующего мастера, должны при AG (d) хранить значение AL <05:00> во внутреннем регистре.

Спецификации, касающиеся установки и снятия сигнала AG схемой УТА, содержатся в п. 7.1.

6.3.4. Установка и снятие сигнала AL мастером

Каждому мастеру присваивается внутренний уровень арбитража, который он, если желает получить владение магистралью, через логическое «ИЛИ» подает на линии «уровень арбитража», AL <05:00> во время цикла арбитража. Затем соревнующиеся мастера непрерывно проверяют и модифицируют состояние линий AL в соответствии с установленным протоколом арбитража. После соответствующей задержки состояние линий AL представляет собой самый высокий уровень арбитража, поданный на них в течение данного цикла.

Мастер должен принимать участие в цикле арбитража в случае, если он выставляет сигнал AR = 1, когда получен сигнал AG (u).

Информационные сигналы AL 05:00> должны генерироваться мастером следующим образом.

1. Мастер, участвующий в цикле арбитража, должен выставить свой уровень арбитража на линии AL в пределах промежутка времени, равного задержке в логике арбитража (см. приложение А), после как обнаружения сигнала AG (u).

2. Мастер не должен изменять содержимое своего регистра, уровня арбитража (см. п. 8.11) во время цикла арбитража, в котором он принимает участие, пока не будет завершен данный цикл и получен сигнал GK (u).

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

4. Каждый мастер, участвующий в цикле арбитража, должен непрерывно сравнивать сигнал, получаемый мм по каждой из линий AL, с соответствующим значением, которое он генерирует для данной линии. Если для какой-то отдельной линии получаемый сигнал AL <i> (находится в состоянии логической 1, а сигнал, генерируемой для этой линии, в состоянии логического 0, тогда мастер должен выставить сигналы AL <i - l> = AL <i - 2> = - - = AL <0> = 0 в пределах промежутка времени, равного задержке в логике арбитража.

5. После того, как управляющий сигнал AG = 1 поддерживался в течение времени, большего минимального времени арбитража (см. приложение А) для данного сегмента, мастер, чей уровень арбитража совпадает с уровнем арбитража, установившимся на линиях AL, должен стать следующим мастером, которому будет предоставлено владение магистралью (подготовленным мастером).

Мастер может изменять состояние сигналов, которые он выставляет на линии AL, при включении питания, а также в течение времени от сигнала GK (u) до сигнала AG (u).

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

6.3.5. Установка и снятие сигнала GK мастером

Цикл арбитража позволяет соревнующимся мастерам самим принять решение, кто из них станет следующим, которому будет предоставлено владение магистралью. Тот факт, что мастер является подготовленным мастером, известно ему самому; любой другой мастер просто знает, что он не подготовленный мастер.

Когда подготовленный мастер получает сигнал AG (d), прежде чем использовать магистраль, он подтверждает, что возьмет на себя владение магистралью, выдачей сигнала «подтверждение разрешения», GK (u). Если этот ответ не будет получен в пределах интервала времени, установленного схемой УТА (см. п. 7.1.2), будет инициирован новый цикл арбитража, если еще остались какие-либо активные запросы. Циклы арбитража запрещены до тех пор, пока действующий мастер не сформирует сигнал GK (d).

Управляющий сигнал GK должен генерироваться мастером, как указано ниже:

1. Подготовленный мастер, которому предстоит принять владение магистралью, в ответ на сигнал AG (d) должен выдать сигнал GK (u) в пределах времени ответных действий слуги при адресации (см. приложение А) до генерации любых других сигналов в сегменте.

2. После подачи сигнала GK (u) подготовленный мастер должен стать действующим мастером.

3. Действующий мастер должен формировать сигнал GK (d) прежде, чем освобождать магистраль, или по получении интегрированного сигнала RB = 1 сигнала ВН = 0.

Для действующего мастера допускается вслед за сигналом GK (d) вновь выдавать сигнал GK (u) при условии, что в течение того периода, когда им шал GK = 0, мастер продолжал поддерживать сигнал AS = 1. Если мастер формирует сигнал AS (d), когда GK-0, он должен принять участие в цикле арбитража и выиграть его прежде, чем будет вновь использовать магистраль.

6.4. Арбитраж системного уровня

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

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

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

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

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

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

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

В разд. 10 подробно описывается, как СС участвует в арбитраже за владение сегментом своей дальней стороны.

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

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

ГЛАВА 7. ВСПОМОГАТЕЛЬНАЯ ЛОГИКА В СЕГМЕНТЕ

Практическая (реализация сегмента требует наличия схемы, которая является общей для всех устройств в сегменте. Эта вспомогательная логика управляет проведением циклов арбитража, контролирует адресные циклы и сигнализирует о выставлении географических адресов в данном сегменте на линию EG, формирует системные подтверждения для широких операций, выдает сигналы для остановки операций в сегменте, когда задействован переключатель «работа/останов», подает логические единицы и нули для кодирования штырьков географического адреса (GA) обеспечивает согласователи на обоих концах магистрали для большинства сигнальных линий. Подобно мастеру, вспомогательная логика должна быть осведомлена о характеристиках таймирования магистрали, к которой она подключена. Такая информация, касающаяся конкретной реализации магистрали, содержится в приложении А.

7.1. Управление таймированием арбитража (УТА)

Описание арбитража в магистрали дано в разд. 6.

Каждый сегмент должен иметь схему управления таймированием арбитража.

7.1.1. Формирование сигнала AI схемой УТА

Схема УТА должна формировать сигнал AI (u) одновременно с сигналом AG (u).

Схема УТА должна формировать сигнал AI (d), если сигнал AR находился в состоянии логического нуля в течение по меньшей мере двойной задержки в магистрали.

При включении питания, а также когда обобщенный сигнал RB = 1 и ВН = 0, схема УТА должна установить сигнал А1 = 0 (см. п. 5.4.2).

7.1.2. Формирование сигнала AG схемой УТА

Схема УТА должна генерировать таймирующий сигнал AG (u) с целью начать цикл арбитража, когда она обнаруживает, что выполняются все из перечисленных ниже условий:

AR = 1, запрос на арбитраж.

AG = 0, в течение минимального времени спада импульсов, если отсутствует подготовленный мастер (AL <5:0> =0), или минимального лимита времени на ответ мастера в адресном цикле, если есть подготовленный мастер (присутствует ненулевой код AL <5:0>), см. приложение А.

GK = 0, действующий мастер, если он есть, подготовился освободить магистраль.

WT = 0, таймирующие переходы не запрещены.

Интегрированный сигнал RB = 0 (cм. п. 7.4 касательно защиты от переходных процессов).

Схема УТА должна генерировать сигнал AG (d) с целью завершить цикл арбитража, когда управляющий сигнал AG = 1 поддерживался в течение времени, большего минимального времени арбитража для сегмента, и GK = AK = AS = WT = 0 по крайней мере в течение времени разброса фронтов импульса в сегменте.

Если при выставлении сигнала AG (d) на линиях AL не нули, схема УТА должна запускать таймер ответных действий выдачи GK (u), который должен быть задержан на время ответных действий мастера в адресном цикле (см. приложение А). Если ответ GK (u) на сигнал AG (d) не получен в пределах этого времени, схема УТА должна быть cброшена и ей должно быть разрешено проводить новый цикл арбитража.

При получении управляющего сигнала WT = 1 схема УТА не должна генерировать таймирующии сигнал AG (t) и должна запретить выдачу сигнала GK (u) своим таймером ответных действий (см. п. 5.4).

Когда интегрированный сигнал RB = 1 (см. п. 5.5.2) и ВН = 0 или при включении питания, схема УТА должна установить сигнал AG = 0.

Зарезервированный соединитель сегментов (см. п. 10.7.6) пропускает сигнал AR от своей дальней стороны к ближней стороне, позволяя таким образом действующему мастеру получать сведения о запросах на использование любого из сегментов, вовлеченных в данную операцию. Когда мастер выдает сигнал GK = 0, чтобы показать, что вскоре он прекратит владение магистралью, сегменты, в которых сигнал AR выставлен единственно потому, что через СС пропускается сигнал, могут немедленно обнаружить, что условия для выставления сигнала AG (u) удовлетворяется. Это вызывает проведение цикла арбитража, в результате чего на линиях AL устанавливаются нули. Схема УТА распознает эту ситуацию как ошибочную, формирует сигнал AG (d) и, следовательно, оказывается готовой ответить правильно на следующий сигнал AR = 1.

7.2. Управление географической адресацией

Слуга, обнаруживший сигнал EG во время адресного цикла, проверяет 8 младших адресных линий для того, чтобы определить, был он выбран или нет. Мастер, осуществляющий географическую адресацию слуги, расположенного в другом сегменте, не может подать сигнал EG вместе с полем адреса группы, которое указывает на этот сегмент, поскольку это действие привело бы к выбору слуги, расположенного в том же сегменте, где находится мастер. Следовательно, соединители сегментов не пропускают сигнал EG и каждый сегмент должен иметь схему управления географической адресацией (УГА) для того, чтобы обнаружить географические адреса, нацеленные на слуги, которые расположены в данном сегменте, и выставить EG.

Географический адрес может иметь либо нули в старших 24 разрядах, либо ненулевое поле адреса группы, за которым следуют в общей сложности 24 разряда, содержащих нули. Сегменту может быть присвоено более чем одно значение для поля адреса группы. Одно из них, обычно самое меньшее, называется «базовый адрес группы», и именно это значение заносится в регистр адреса сегмента в схеме УГА во время инициализации системы и используется для обнаружения географического адреса.

Если сигнал EG не выставлен, слуги не будут распознавать географический адрес. Задержка, возникающая при формировании сигнала EG-схемой УГА, не вызывает никаких трудностей при условии, что лимит времени для мастера в адресном цикле подготовлен с учетом этой задержки.

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

Если сигнал EG еще не установлен в сегменте, формирователь EG должен по получении сигнала AS (u) проверить состояние старших 24 разрядов кода на линиях AD, если MS1 = MS2 = 0. если старшие 12 разрядов (AD <31:20>) на линиях AD соответствуют содержимому регистра адреса сегмента, а следующие 12 разрядов (AD <19:08>) все равны нули, или если AD <31:08> = 0, то формирователь сигнала EG должен подать сигнал EG = 1 после приема сигнала AS (u) спустя не более чем максимальное время задержки для сигнала EG (см. приложение А).

Формирователь сигнала EG должен установить EG = 0, если AS = 0 или AK = 0.

Переходы между состояниями EG должен запрещаться сигналом WT = 1 (ожидание).

Часть схемы УГА, выполняющая функции слуги устройства:

1. Должна быть географически адресуемой по адресу 255, только когда MS = 1.

2. Должна обеспечивать реализацию обязательных характеристик регистра CSR = 0.

3. Должна обеспечивать реализацию регистра адреса сегмента в виде разрядов CSR = 3 <31:20>, где должен содержаться базовый адрес группы для данного сегмента. Этот регистр должен иметь 12 разрядов и обеспечивать чтение и запись.

4. Должна обеспечивать реализацию регистра NTA, имеющего два разряда. Он должен допускать чтение и запись через посредство вторичных адресных циклов, как указано в пп. 4.4 и гл. 5.

5. Должна при сигнале DS (u) выдавать ответные коды SS = 0, 6 или 7 в соответствии с определениями в гл. 5.

Указание географических адресов должно выполняться путем подачи логической 1 или логического 0 на GA03 с помощью монтажа на задней плате, как показано на рис. 34 (см. п. 7.6 и приложение А).

Рекомендуется, чтобы на плате УГА в логике сигнала EG был реализован CSR# 1 в виде регистра переключателя и перемычек, допускающего только чтение. Код, хранимый в этом регистре, может использоваться для однозначного идентифицирования сегмента. Этот регистр должен содержать по меньшей мере разряды с 20 по 31.

7.3. Формирование системного подтверждения при широкой операции

Вспомогательная логика формирует системные подтверждения во время широких операций (см. гл. 4 и 5). Во время первичного адресного цикла логика системного подтверждения (ЛСП) активизируется в каждом сегменте, адресуемом мастером, выполняющим широкую операцию. Каждое ЛСП выставляет AK и DK, а также, наряду с сигналом WT, генерируемым соединителями сегментов, обеспечивает правильное распространение таймирующих сигналов от мастеров к слугам и обратно.

Каждый сегмент должен содержать логику системного подтверждения (ЛСП). При распознавании широкого адреса (AS = 1, АК = 0, MS1 = 1) ЛСП должна разрешать функционирование своего формирователя подтверждения. Эта схема распознавания адреса должна быть способна требовать выставление сигнала MS2 = 0, который должен устанавливаться по умолчанию. ЛСП должна также содержать средства, требующие наличия MS2 = 0 во время цикла данных, как условия для выработки ответа, указанного ниже в п. 3.

Когда ее работа разрешена, ЛСП:

1. Должна после получения сигнала AS (u) ожидать в течение времени ответов при широкой адресации (см. приложение А); затем, если сигнал WT находился в состоянии 0, в течение времени не менее двух задержек магистрали выдавать АК = 1.

2. Должна выдавать АК = 0, когда сигнал «строб адреса» находится в состоянии AS = 0 в течение времени ответов при широкой адресации и когда WT = 0.

3. Должна во время циклов данных после получения DS (t) ожидать в течение времени ответов при широкой операции, затем выдавать DK (t), когда в кабель-сегменте WT = 0 или когда сигнал WT находился в состоянии логического 0 в течение времени, равного по меньшей мере двум задержкам в магистрали крейт-сегмента.

Отметим, что задержка после WT = 0 может перекрыть задержки, характерные для времен ответов.

Соединитель сегментов, пропускающий любую операцию, выставляет WT = 1 в сегменте своей ближней стороны до тех пор, пока не будет получен ответ от сегмента дальней стороны. В случае широкой операции в сегменте, более чем один СС в сегменте может пропускать данную операцию. Перечисленные выше правила, касающиеся использования сигнала WT, позволяют всем широким циклам, адресным или данных, достигнуть конца каждой ветви широкой операции прежде, чем будет сформирован любой таймирующий ответный сигнал помимо сигнала WT = 1. По мере того, как ответ АК или DK идет обратно к действующему мастеру, выдерживается двойное время задержки в магистрали; этим игнорируются любые возмущения сигнала WT = 1 в крейт-сегментах, вызываемые многочисленными источниками, устанавливающими в различные моменты времени сигнал WT в состояние WT = 0. Для некоторых конкретных реализаций кабель-сегмента эти две задержки в магистрали могут не являться необходимыми.

Во время циклов принудительных передач данных (MS = 3) соединители сегментов не выставляют сигнал «ожидание», и время интегрирования для WT = 0 равно нулю. Следовательно, логические требования п. 3, указанные выше, приводят в результате к синхронному распространению сигналов DS (t) и DK (t) от мастера к концам ветвей широкой операции.

7.4. Управление «работа/останов» и сигнал «магистраль остановлена»

Логика «работа/останов» опознает состояние переключателя «работа/останов» (см. п. 14.4) и подает на линии АК и ВН сигналы, показывающие неактивное, остановленное состояние сегмента. Это позволяет всем устройствам, размещенным в сегменте, защищать себя от ложных сигналов, когда другие устройства подключаются или отключаются от сегмента.

Запрос на останов от переключателя «работа/останов» после завершения любой операции, которая к настоящему моменту уже выполнялась и при освобождении магистрали сегмента, вызывает подачу сигналов ВН и АК. Устройства должны использовать сигналы ВН и/или АК для внутренней защиты.

Каждый сегмент должен иметь переключатель «работа/останов» и управляющую логику для обеспечения неактивного состояния остановленной магистрали.

Запрос на останов от переключателя «работа/останов» должен запрещать новые циклы арбитража.

Логика «работа/останов» должна выставить ВН = АК = 1, когда переключатель «работа/останов» переведен в состояние «останов», а также выполняются все условия, перечисленные ниже:

* AG = GK = AS = WT = 0;

сигнал «подтверждение приема адреса» находился в состоянии * АК=0 в течение времени, равного минимальному времени спада импульсов

* и нет подготовленного мастера.

Когда переключатель «работа/останов» переведен в состояние «работа», логика «работа/останов» должна выставить ВН = 0 и АК = 0.

Схема УТА должна быть единственным устройством, способным генерировать ВН = 1.

Для защиты от переходных процессов, пока ВН = 1, все устройства должны запрещать свои входы с линий RB и SR.

Сигнал ВН = 1 не должен вызывать запрета для работы любого дисплея на передней панели.

7.5. Согласователи

Каждая определенная сигнальная линия сегмента ФАСТБАС должна быть согласована на обоих концах сегмента. Не должны быть согласованы соединения в сегменте ФАСТБАС для GA <04:00>, UR, DLA, DLB, DRB, DAR, DBR и штырьки F и Т.

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

Зарезервированные линии не нуждаются в согласовании.

7.6. Вспомогательная логика для крейт-сегментов

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

1. Скомпонованные печатные платы должны иметь однократную ширину, соответствующую рис. 35. Площади, обозначенные как «зоны, свободные от деталей», должны быть проводящими при потенциале заземления.

2. Плата УГА должна быть прикреплена в сегменте к позиции с самым высоким номером и должна содержать:

a) управление географической адресацией (см. п. 7.2);

b) источник напряжения для подачи логической 1 на штырьки географического адреса (см. п. 7.2);

c) согласователи (см. п. 7.5).

3. Плата УГА должна быть прикреплена в сегменте к позиции с номером ниже 8, предпочтительно с самым низким номером, и должна содержать:

а) управление таймированием арбитража (см. п. 7.1);

b) управление «работа/останов» (ем. п. 7.4):

c) логику системного подтверждения (см. п. 7.3);

d) согласователи (см. п. 7.5);

e) логический 0 для подсоединения к географическому адресу GA03 (см. п. 7.2).

4. Управление «работа/останов» должно быть подсоединено к однорядному 4-контактному разъему с шагом 2,54 мм с квадратными штырьками со стороной 0,640 мм, аналогичному показанному на рис. 30, и с назначением контактов, соответствующим приведенному в п. 14.4.

5. Четырехконтактный разъем управления «работа/останов» должен быть установлен на стороне печатной платы, где расположены детали, около заднего края (противоположного 130-контактному разъему) с контактами, направленными к заднему краю платы.

Если вспомогательная логика, определенная в этом разделе, реализуется иначе, чем на расположенных с тыльной стороны печатных платах, описанных в п. 14.5, должно выполняться следующее. 1

1. Логическая 1 должна поступать в GA03 с самым высоким номером в соответствующей возможной позиции (выше 24 или между 8 и 15) на задней плате, и

2. Логический 0 должен поступать в GA03 при номере позиции меньше 8, предпочтительнее при наименьшем из возможных.

Независимо от расположения вспомогательной логики согласователи в магистрали должны быть на концах сегмента или вблизи них.

Для крейт-сегментов, которые входят в состав расширенного сегмента, возможно, что все особенности, перечисленные в первых частях (2) и (3), не потребуются. Однако, независимо от того, как реализуется расширенный сегмент, всегда требуются согласователи и соединители с GA03.

7.7. Вспомогательная логика для кабель-сегментов

Каждый кабель-сегмент должен быть снабжен всеми функциями вспомогательной логики в соответствии со спецификациями, приведенными в пп. 7.1 - 7.5.

ГЛАВА 8. ОБЛАСТЬ АДРЕСОВ РЕГИСТРОВ УПРАВЛЕНИЯ И СОСТОЯНИЙ

Состояние линий MS во время первичного адресного цикла определяет, выбирается ли в пределах слуги область адресов данных (MS = 9 или 2) или область адресов регистров управления и состояний (CSR) - (MS = 1 или 3). Если выбирается область данных, когда используется логическая адресация, поле внутренних адресов IA первичного адреса имеет обычно достаточную ширину для того, чтобы указать желаемый регистр или функцию слуги. Каждое устройство имеет поле адресов CSR шириной 32 разряда. Следовательно, для того, чтобы выбрать конкретный регистр из области CSR, после первичного адресного цикла требуется вторичный адресный цикл.

Все CSR-регистры должны быть доступны при помощи вторичной адресации

Поскольку каждое устройство имеет 32 разряда, предназначенных для адресов CSR-регистров, существует возможность разделить это адресное пространство на ряд зон и выполнить стандартные присвоения адресов в Пределах этих зон, не запрещая специальное использование всего пространства. Данная спецификация (не требует ни того, чтобы были реализовали все описанные регистры, ни того, чтобы были реализовали все биты в определенном регистре.

Если какая-либо из обсуждаемых функций реализована, то она должна быть реализована так, как специфицирована. Единственным обязательным регистром должен быть регистр СSR#0, и в нем необходимы только биты с 31 по 16 (идентификатор устройства).

Область адресов регистров управления и статуса должна быть распределена следующим образом:

0000 0000 - 3FFF FFFF - область адресов нормальных CSR-регистров;

4000 0000 - 7FFF FFFF - область адресов программных CSR-регистров;

8000 0000 - BFFF FFFF - область адресов параметрических CSR-регистров;

С000 0000 - FFFF FFFF - область адресов пользовательских CSR-регистров

Область адресов нормальных CSR содержит наиболее общеупотребимые управляющие и статусные регистры. Все регистры в этой области либо определены, либо зарезервированы. И все же, поскольку некоторые из них предназначены для использования зависимости от типа устройства, имеется некоторая гибкость в употреблении регистров. Область адресов программных CSR содержит программы и таблицы, используемые прежде всего самим устройством. Они могут быть предусмотрены в мастере ФАСТБАС и могут потребоваться в качестве данных другими устройствами ФАСТБАС. Область адресов параметрических CSR содержит статистическую или редко меняющуюся информацию о данном устройстве, например, калибровочные константы, и информацию от изготовителя. Изменение информации, хранимой в области адресов параметрических регистров, может потребовать специальных операций, таких как программирование ППЗУ, которые не могут быть выполнены посредством ФАСТБАСА. Данные спецификации не накладывают никаких специальных ограничений на область адресов пользовательских CSR.

Настоятельно рекомендуется, чтобы все регистры, предназначенные для записи, допускали бы и чтение. Отметим, что когда считывается содержимое какого-либо регистра, все не реализованные биты возвращаются в виде логических нулей (см. п. 5.3.2).

8.1. Функции селективной установки и сброса

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

Чтобы приспособить для этой цели широкие операции, для системы ФАСТБАС принято решение размещать функции установки и сброса в различных битах в пределах одного и того же регистра. Виты установки по своему местоположению соответствуют статусным битам, на которые осуществляется воздействие, а биты сброса смещены на 16 разрядов влево (в сторону старших разрядов) в данном слове. Таким образом, логическая единица, записанная в позицию бита установки, считывается обратно как логическая единица в позиции бита установки, а логическая единица, записанная в позицию бита сброса, считывается обратно как логический нуль в позиции бита установки. Бит, считываемый обратно в позиции бита сброса, может использоваться для передачи относящейся к этому статусной информации об устройстве.

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

Таблица X

Реализация функции селективной установки/сброса в CSR-регистре

Бит установки

Бит сброса

Действие

0

0

Холостая операция

0

1

Функциональный бит сброшен

1

0

Функциональный бит установлен

1

1

Не определено (зависит от конкретного устройства)

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

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

Биты селективной установки и сброса не должны размещаться в одном регистре с обычными битами, предназначенными для чтения и записи. Селективные биты могут размещаться в одном регистре с битами, предназначенными только для чтения, или с битами для импульсного управления, таким как «установка» и «сброс», которые вызывают некоторые действие, но не запоминаются в адресуемом регистре.

8.2. Распределение области адресов нормальных CSR-регистров

Распределение адресов регистров в области нормальных CSR (показано в табл. XI. Все регистры группируются по выполняемой функции, и среди них первая группа из 8 шт. представляет собой регистры, наиболее часто требуемые для слуг, следующая группа из 8 шт. содержит регистры, наиболее часто требуемые в дополнение к мастеру, и так далее.

Таблица XI

Регистры управления и статуса - CSR

Шестнадцатиричный адрес

Определение

0000 0000*

16 разрядов - идентификатор, 16 разрядов статус и различные средства управления

0000 0001

CSR, определяемый пользователем

0000 0002*

Вспомогательный CSR

0000 0003

Регистр логического адреса устройства

0000 0004

Регистр адреса устройства-пользователя

0000 0005

Регистр счетчика слов

0000 0006*

Регистр выбора теста

0000 0007

Регистр выбора класса при широкой операции

Следующие 8 регистров ассоциируются с мастерами

0000 0008

Регистр уровня арбитража

0000 0009*

Управление таймерами

0000 000А

Адрес устройства - приемника прерывания от источника А

0000 000В

Вторичный адрес приемника прерывания от источника А

0000 000С

Адрес устройства - приемника прерывания от источника В

0000 000D

Вторичный адрес приемника прерывания от источника В

0000 000Е

Адрес устройства - приемника прерывания от источника С

0000 000F

Вторичный адрес приемника прерывания от источника С

0000 0010-17

Определяются пользователем

0000 0018-1В

Зарезервированы

0000 001G-1F

Выдержки таймеров

0000 0020-3F*

Биты источников и масок и запросов на обслуживание

Следующие регистры ассоциируются с соединителями сегментов (см. гл. 10)

0000 0040

Регистр адреса маршрутной таблицы

0000 0041

Данные для маршрутной таблицы

0000 0042

Географический адрес ближней стороны СС

0000 0043

Географический адрес дальней стороны СС

0000 0044-6F

Зарезервированы

Следующие регистры ассоциируются с управлением ресурсами

0000 0070-7F

Адрес устройства, использующего в текущий момент времени подраздел N данного устройства (от N = 0 до Fh)

0000 0080*

Чтение <15:00> - прикрепленные подразделы Fh - 0

Запись <15:00> - прикрепляет подразделы Fh - 0

Запись <31:16> - открепляет подразделы Fh - 0

0000 0081*

Чтение <15:00> - разрешенные подразделы Fh - 0

Запись <15:00> - разрешает подразделы Fh - 0

Запись <31:16> - запрещает подразделы Fh - 0

0000 0082-9F

Зарезервированы

Следующие регистры ассоциируются с сообщениями о прерываниях (см. п. 9.1)

0000 00А0-AF

Сообщение о прерывании от источника А

0000 00В0-BF

Сообщение о прерывании от источника В

0000 00С0-CF

Сообщение о прерывании от источника С

0000 00D0-FF

Зарезервированы

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

0000 0100-10F

Приемный блок о (прерывание с самым низким приоритетом)

0000 01N0-1NF

Приемный блок N (от N =1 до Eh)

0000 01F0-1FF

Приемный блок Fh (прерывание с самым высоким приоритетом)

0000 0200 по 3FFF FFFF

Зарезервированы

Регистры с селективной установкой и сбросом.

Адреса от 0 до 3FFF FFFFh в области CSR регистров должны быть зарезервированы для функций, перечисленных в табл. XI. Если какая-нибудь функция не требуется в устройстве, тогда данный регистр или конкретный бит в пределах регистра не нуждается в реализации.

Идентификатор устройства, биты СSR# 0 <31:16>, должен быть реализован в каждом устройстве.

Устройства, использующие GSR-регистры, для которых влияние «сброса» определяется в п. 8.1, должны реализовывать CSR# 0 <30>.

Устройства, использующие CSR-регистры, для которых влияние «очистки» определяется в п. 8.1.6, должны реализовывать CSR# 0 <16>.

Устройства, способные генерировать сообщения о прерываниях, должны реализовывать, при необходимости, CSR# 2 <06:04> и <22:20>.

Устройства, к которым возможна логическая адресация, должны реализоваться CSR# 3, CSR# 0 <01> и CSR# 0 <17>.

В устройствах, способных выставлять запрос на владение магистралью, должен быть реализован регистр CSR# 8.

В устройствах с таймерами должен быть реализован регистр CSR# 9.

Регистры 2, 3, 8 и 9, если они включены в состав устройства, должны быть реализованы с возможностью выполнения обеих операций, чтения и записи.

Устройства, использующие CSR-регистры, для которых влияние «сброса» обязательно, должны реализовывать CSR# 0 <30>, см. п. 8.18.

Устройства, использующие CSR-регистры, для которых влияние «очистки» обязательно, должны реализовывать CSR# 0 <16>, см. п. 8.18.

8.3. CSR-регистр 0

Функции, которые считаются необходимыми даже в простейших из устройств, содержатся в CSR# 0. Для того, чтобы реализовать эти функции по возможности экономичным способом, определения в этом регистре нарушают соглашение ФАСТБАС в том, что функции битов регистра не совпадают для операций чтения и записи. Некоторые биты по своему существу допускают только запись, т.е. вызывают немедленные действия, такие как очистка регистра, в то время как другие, такие как идентификатор устройства, по существу допускают только чтение. CSR# 0 совмещает в себе эти два типа битов, позволяя функциям, которые нормально должны быть распределены в двух регистрах, содержаться в регистре, имеющем единый адрес. Адрес, используемый для этого регистра 0, отличается от всех других адресов тем, что доступ к нему может осуществляться географически даже простыми устройствами, не имеющими дешифраторов адреса. Устройства, имеющие дешифраторы адреса, могут быть реализованы таким образом, чтобы обеспечить доступ к регистру CRS# 0, используя широкую, географическую или логическую адресацию.

8.3.1. Идентификаторы устройств и их распределение

Идентификатор устройства ФАСТБАС представляет собой шестнадцатиразрядное двоичное число, которое присваивается каждому различаемому типу устройства.

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

Значения для старших 12 разрядов из шестнадцати будут присваиваться председателем комитета NIM по запросам организаций, которые затем будут присваивать значения для остального четырехразрядного поля и закреплять результирующие шестнадцатиразрядные числа за новыми или переработанными моделями устройств ФАСТБАС так, как это требуется. Таким образом, блок из 16 идентификаторов представляется организациям. Могут быть запрошены несколько блоков. Эта схема позволяет определить 65520 идентификаторов.

Идентификатор считается с разрядов CSR# 0 <31:16>. Нулевой код (никакие биты не установлены в единицу) не допускается для разрядов 31:20 идентификатора.

В разрядах CSR# 0 <31:20> должно содержаться значение, присвоенное председателем комитета NIM*.

* В настоящее время код-идентификатор присваивает председатель комитета NIM Луис Кострелл

(Lous Coslrell, National Bureau of Standards, Gaithersburg, MD 20899, USA) или П. Дж. Понтин (Р. J. Pouting, ЕР Division CERN, 1211 Geneva 23, Switzerland).

8.3.2. Распределение битов управления и статуса

Присвоение битов в регистре CSR# 0 должно быть таким, как показано в табл. ХIIа, с функциями различных битов такими, как определено в табл. XIIb

Таблица ХIIа

Назначение битов регистра CSR# 0

Бит

Назначение при чтении

Назначение при записи

S00

Флаг ошибки

Устанавливает флаг ошибки

S01

Разрешено

Разрешает

S02

Находится в состоянии «работа»

Переводит в состояние «работа»

S03

Устройство прикреплено

Прикрепляет устройство

S04

Разрешено выставление SR

Разрешает выставление SR

S05

Флаг выставлен SR

Флаг выставляет SR

S06

Определяемый пользователем статус 0

Определяемая пользователем установка 0

S07

Определяемый пользователем статус 1

Определяемая пользователем установка 1

S08

Определяемый пользователем статус 2

Определяемая пользователем, установка 2

S09

Определяемый пользователем статус 3

Определяемая пользователем установка 3

S10

Определяемый пользователем статус 1

Определяемая пользователем установка 4

S11

Определяемый пользователем статус 5

Определяемая пользователем установка 5

S12

Определяемый пользователем статус 6

Определяемая пользователем установка 6

S13

Определяемый пользователем статус 7

Определяемая пользователем установка 7

14

Ошибка четности

Устанавливает ошибку четности

15

Активный

Бит прослеживания маршрута в СС

С16

Тип устройства (младший разряд)

Сбрасывает флаг ошибки

CI7

Тип устройства

Запрещает

С18

Тип устройства

Переводит в состояние «останов»

С19

Тип устройства (старший разряд)

Открепляет устройство

С20

Идентификатор изготовителя (младший разряд)

Запрещает выставление SR

С21

Идентификатор изготовителя

Сбрасывает SR

С22

Идентификатор изготовителя

Определяемый пользователем сброс 0

С23

Идентификатор изготовителя

Определяемый пользователем сброс 1

С24

Идентификатор изготовителя

Определяемый пользователем сброс 2

С25

Идентификатор изготовителя

Определяемый пользователем сброс 3

С26

Идентификатор изготовителя

Определяемый пользователем сброс 4

С27

Идентификатор изготовителя

Определяемый пользователем сброс 5

С28

Идентификатор изготовителя

Определяемый пользователем сброс 6

С29

Идентификатор изготовителя

Определяемый пользователем сброс 7

30

Идентификатор изготовителя

Установка в исходное состояние

31

Идентификатор изготовителя (старший разряд)

Очищает данные

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

Таблица ХIIb

Определения функций битов регистра CSR# 0

Бит

Тип

Наименование

Функция

S00

R/W

Флаг ошибки

Бит 0 является логическим «ИЛИ» всех индикаторов ошибок в устройстве, которые могут быть сброшены при помощи записи логической единицы в бит CSR# 0 <16>. Запись логической единицы в бит CSR# 0 <16>. Запись логической единицы в бит CSR# 0 <00>, с целью имитации ошибки для тестирования, разрешается, если бит 0 представляет собой единственный реализованный статусный бит ошибки

С16

W

Сброс флага ошибки

Запись единицы в эту позицию бита генерирует импульс, который очищает все статусные биты ошибок и пользовательские статусные биты ошибок (CSR# 2), которые объединяются вместе по «ИЛИ», чтобы сформировать бит 0

S01

R/W

Разрешение

Этот бит разрешает работу схемы распознавания логического адреса в устройстве. В случае соединителей сегментов этот бит, когда он установлен в состояние логической единицы, разрешает распознавание адреса и пропускание операции. В случае мастера, если этот бит, а также бит «работа» CSR# 0<02> установлены в единицу, мастеру разрешено выставлять запрос на владение магистралью. Бит «сброс», сигнал RB - «сброс магистрали», а также при включении питания - все эти действия сбрасывают данный бит, поскольку содержимое регистра логического адреса устройства не может быть правильным. После того, как устройство было вновь инициализовано при помощи географической адресации, бит «разрешение» может быть установлен в единицу инициализирующим процессором

С17

W

Запрещение

Запрещает функции, разрешаемые битом 1

S02

R/W

Работа

Запись единицы в бит «останов» вызывает перерыв в работе устройства, а запись единицы в бит «работа» вызывает возобновление работы устройства с места, где оно остановилось. Если устройство достигает какого-либо внутреннего состояния завершенности, оно должно остановиться и сбросить себя в такое состояние, чтобы последующая запись единицы в бит «работа» вновь вызвала запуск устройства с начальной точки. Запись единицы в бит «очистка данных» (бит 31) также вызывает останов и осуществляет сброс. Этот бит также используется совместно с битом CSR 0 <01> для того, чтобы определить, разрешено ли мастеру выставлять запрос на владение магистралью (см. бит «разрешение», определенный выше)

С18

W

Останов

S03

R/W

Устройство прикреплено

Бит 3, когда он установлен, указывает, что мастер, требующий исключительного права на использование устройства, в текущий момент использует данное устройство. Регистр CSR-4 должен содержать адрес устройства, использующего в настоящий момент данное устройство, или, если бит 3 сброшен, адрес последнего мастера, просившего исключительное право на использование данного устройства

С19

W

Открепить устройство

S04

R/W

Разрешено выставление SR

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

С20

W

Запретить выставление SR

S05

R/W

Флаг выставлен SR

Если бит 5 установлен в единицу, устройство будет выставлять запрос на обслуживание, когда ему будет разрешено сигналом CSR# 0 <04>.

С21

W

Сброс флага SR

Если в устройстве существует только один источник, бит 5 должен обеспечивать и чтение и запись так, чтобы SR мог быть выставлен по команде. Бит «сброс флаг SR» очищает все источники запросов на обслуживание в устройстве. Биты 5 и 21 являются обязательными для устройств, которые выставляют SR.

Отметим, что в СС биты 4, 5 и 20 имеют отличное, но связанное с указанным выше, употребление, а бит 21 выполняет только свою функцию чтения

S06 по S13

R/W

Определяемые пользователем состояние и управление

Эта группа битов обеспечивает 8 определяемых пользователем битов управления и состояния или индикаторов. Они могут использоваться, например, для хранения более детальной информации, касающейся зависящих от конкретного устройства условий или ошибок, которые отмечаются флагами при помощи ненулевых ответов по линиям SS.

С22 по С29

W

Определяемый пользователем сброс

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

14

R/W

Ошибка четности

Этот бит используется для того, чтобы указать, что данное устройство обнаружило во время ФАСТБАС-операции записи ошибку четности. Мастеру был выдан ответный код SS = 6 или 7. Запись единицы в этот бит для имитирования ошибок разрешается, но, в соответствии с правилами селективной установки и сброса, запись логического нуля в этот бит не изменяет его состояние. Установка в состояние единицы бита «ошибка четности» должна также вызвать установку в единицу бита «флаг ошибки», бит 0 и он должен оставаться установленным в единицу до тех пор, пока не будет сброшен флаг ошибки

15

R

Активный

Этот бит может использоваться с целью показать, что затребованная операция, такая как очистка, находится в процессе выполнения

15

W

Бит прослеживания маршрута в соединителях сегментов

См. пп. 10.5.1 и J.1.7 приложения J

30

W

Установка в исходное состояние

Устройства, получающие единицу в этот бит, выдают сигнал, который переводит их в четко определенное состояние. Пункты 8.18 и 10.5.9 специфицируют воздействие бита «сброс» на CSR-регистры в устройствах вообще и, соответственно, в соединителях сегментов

31

W

Очистка данных

Запись логической единицы в этот бит вызывает импульс, который очищает данные в устройстве, ориентированном на прием событий, и подготавливает это устройство для приема новых событий. Содержимое счетчиков, например, будет установлено в нулевое состояние, а аналого-цифровые преобразователи будут подготовлены для выполнения нового преобразования. Если данное устройство является вычислительным, «очистка данных» вызывает прекращение выполнения текущего задания и переводит данное вычислительное устройство в нерабочее состояние. Устройства, отвечающие на сигнал «работа/останов» из регистра CSR# 0, должны остановить работу, прекратить выполнение текущей операции и перейти в состояние готовности начать новую операцию, когда в бит «работа» в очередной раз будет записана единица. Операция очистки может производиться одновременно с выполнением операции установки в исходное состояние

16 по 31

R

Идентификатор устройства

Данные 16 битов, содержащие идентификатор устройства, описаны в п. 8.3.1

8.4. CSR-регистр 1

Назначение битов этого регистра определяется пользователем. В соединителях сегментов он используется для хранения уровня арбитража дальней стороны.

8.5. CSR-регистр 2

Этот регистр управления и состояний не является обязательным для устройств, за исключением тех, которые генерируют сообщения о прерываниях. Он используется для обеспечения более подробных сообщений об ошибках, а также для реализации функций, которые являются менее общими, чем те, что обеспечиваются регистром CSR# 0. Присвоение индивидуальных битов показано в табл. XIIIa, a их определения приводится в табл. XIIIb.

Если какие-нибудь из функций, определенных из CSR# 2, реализованы, они должны быть реализованы так, как показано в табл. XIIIa.

Таблица XIIIa

Определение функций регистра CSR - 2

Бит

Назначение при чтении

Назначение при записи

S00

Бит 0 режима пользователя

Устанавливает бит 0 режима пользователя

S01

Бит 1 режима пользователя

Устанавливает бит 1 режима пользователя

S02

Бит 2 режима пользователя

Устанавливает бит 2 режима пользователя

S03

Бит 3 режима пользователя

Устанавливает бит 3 режима пользователя

S04

Прерывания от источника А разрешены

Разрешает прерывания от источника А

S05

Прерывания от источника В разрешены

Разрешает прерывания от источника В

S06

Прерывания от источника С разрешены

Разрешает прерывания от источника С

S07

Идет тестирование

Начинает тестирование

08

Несуществующий адрес

Устанавливает признак несуществующего адреса

09

Переполнение данных в устройстве

Устанавливает признак переполнения данных в устройстве

10

Переполнение счетчика слов

Устанавливает признак переполнения счетчика слов

11

Устройство заполнено

Устанавливает признак «устройство заполнено»

12

Устройство не пусто

Устанавливает признак «устройство не пусто»

13

Входные сигналы отсутствуют

Устанавливает признак «входные сигналы отсутствуют»

14

Зарезервирован

Зарезервирован

15

Зарезервирован

Зарезервирован

С16

Определяется пользователем

Сбрасывает бит 0 режима пользователя

С17

Определяется пользователем

Сбрасывает бит 1 режима пользователя

С18

Определяется пользователем

Сбрасывает бит 2 режима пользователя

С19

Определяется пользователем

Сбрасывает бит 3 режима пользователя

С20

Прерывание от источника А подготовлено

Запрещает прерывание от источника А

С21

Прерывание от источника В подготовлено

Запрещает прерывание от источника В

С22

Прерывание от источника С подготовлено

Запрещает прерывание от источника С

С23

Результат тестирования

Останавливает тестирование

24

Статус пользователя 0

Записывает статус пользователя 0

25

Статус пользователя 1

Записывает статус пользователя 1

26

Статус пользователя 2

Записывает статус пользователя 2

27

Статус пользователя 3

Записывает статус пользователя 3

28

Статус пользователя 4

Записывает статус пользователя 4

29

Статус пользователя 5

Записывает статус пользователя 5

30

Статус пользователя 6

Записывает статус пользователя 6

31

Статус пользователя 7

Записывает статус пользователя 7

Таблица XIIIb

Определения функций битов регистра CSR-2

Бит

Тип

Наименование

Функция

S00 по S03

R/W

Биты режима пользователя

Эти четыре бита предоставляются разработчику устройства для применения, зависящего от конкретного устройства

С16 по С19

W

 

 

S04 по S06

R/W

Управление прерываниями и их статус

Управление тремя независимыми источниками прерываний ФАСТБАС предусмотрено в регистре CSR# 2

Эти источники могут быть разрешены или запрещены наряду с тем, что они имеют возможность, чтения статуса «разрешено/запрещено» и статуса «подготовлено». Адреса, по которым должны направляться сообщения о прерываниях, указываются в регистрах управления и состояний с CSR# А по CSR# F (см табл. X)

С20 по С22

 

S07

С23

R/W

W

Тестирование

Установка этого бита в единицу инициирует любые средства самотестирования, которые устройство может иметь в своем составе, путем перевода данного устройства в режим «тестирование». Некоторые тесты могут продолжаться столь долго, сколько данное устройство находится в режиме «тестирования», в то время как другие тесты могут исполниться один раз и генерировать прерывание для сигнализации об окончании. Сброс бита «тестирование» немедленно останавливает все тестирование, если это возможно. Если в устройстве имеется более чем один тест, который может быть выполнен, данное устройство должно содержать регистр тестов CSR# 6 (см п. 8.6)

Каждый бит регистра управления: и статуса CSR# 6 обусловливает отдельный тест. Если более чем один бит установлен в состояние логической единицы, соответствующие тесты выполняются, если это возможно, одновременно или в порядке, при котором тест, обусловленный младшим битом, выполняется первым. Значение бита CSR# 2 <23> дает простой общий результат выполнения тестов - «успех/неудача». Более подробные результаты выполнения тестов могут быть сообщены через биты CSR# 6 <31:16>

Биты, описанные ниже, могут быть прочитаны мастером, чтобы распознать смысл ненулевого ответа SS, полученного во время передачи данных

08

R/W

Несуществующий адрес

Предыдущая операция привела к тому, что внутренний адрес устройства вышел за пределы допустимого диапазона. Если это произошло во время передачи блока данных, слуга выдает ответный код SS = 2. В противном случае выдается ответный код SS = 6. Этот и следующие статусные биты могут быть установлены в состояние единицы при помощи операции записи для того, чтобы облегчить тестирование процедур восстановления ошибок

09

R/W

Переполнение данных в устройстве

Вводимые данные переполнили максимальную емкость устройства

10

R/W

Переполнение счетчика слов

Была предпринята попытка либо прочитать больше слов, чем имелось в наличии, либо записать большеслов, чем данное ведомое устройство могло воспринять. В обоих случаях ответом устройства был код SS = 2

11

R/W

Устройство заполнено

Устройство либо заполнено до максимальной емкости, либо уже содержит все данные, которое оно предполагает принять. Например, все данные от какого-то события уже приняты и, если это соответствует типу данного устройства, уже обработаны

12

R/W

Устройство не пусто

Слуга содержит данные и может еще их принимать (пока не будет установлен признак «устройство заполнено»)

13

R/W

Входные сигналы отсутствуют

Ожидаемые сигналы с данными от пользовательских устройств, обслуживаемых этим слугой, отсутствуют. Попытка прочитать или записать в регистры, связанные с этими сигналами, приводит в результате к ответному коду SS = 6 во время передачи данных

24 по 31

R/W

Состояние пользователя

Биты с 24 по 31