ФАСТБАС. Модульная быстродействующая система сбора данных - технические нормативы по охране труда в России
Ia aeaaio?
Ia aeaaio?
Десктопная версия

ФАСТБАС. Модульная быстродействующая система сбора данных

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

Обозначение: ГОСТ 34.340-91
Название рус.: ФАСТБАС. Модульная быстродействующая система сбора данных
Статус: введен впервые
Дата актуализации текста: 05.05.2017
Дата добавления в базу: 01.09.2013
Дата введения в действие: 01.07.1992
Утвержден: 17.10.1991 Комитет стандартизации и метрологии СССР (USSR Committee on Standardization and Metrology 1622)
Опубликован: Издательство стандартов (1992 г. )
Ссылки для скачивания:

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

ФАСТБАС

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

ГОСТ 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).

Информационные сигналы AL05: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 предназначены для индикации состояния или ошибочной ситуации во внутренних средствах устройства, выбранных по усмотрению разработчика. Данная ситуация может быть создана или может быть сформирован импульс с записью единицы в соответствующий статусный бит. Отметим, что эти биты не могут быть непосредственно сброшены при помощи регистра СSR# 2. Эти биты могут быть сброшены при помощи бита CSR# 0 <16>, а также они могут быть сброшены при помощи внутренних средств, зависящих от конкретного устройства

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

Регистр логического адреса СSR# 3 должен быть реализован вовсех логически адресуемых устройствах как регистр, допускающий чтение/запись.Регистр СSR# 3 должен содержать поле адреса устройства (см. п. 4.1), используемое вовремя первичных адресных циклов для выбора устройств. Прежде чем разрешитьраспознавание логического адреса (т.е. прежде чем записать единицу в бит 01регистра управления и статуса СSR# 0), регистр CSR# 3 должен быть загруженпроцессором-хозяином.

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

Если данное устройствоявляется мастером, в котором не реализована логическая адресация, записьединицы в бит CSR# 0 <01> просторазрешает данному мастеру выставлять запрос на владение магистралью. Еслиустройство является соединителем сегментов, запись CSR# 0 <01> разрешает пропускание операций к порту дальней сторонысоединителя сегментов.

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

Регистр адреса пользователя CSR# 4 содержит адресдействующего мастера (если CSR# 0 <03> = 1) или адрес самого последнего мастера (если CSR# 0 <03> = 0), которыезатребовали и получили исключительное право на управление устройством.

Предпочтительный путь длямастера получить исключительное право на использование целого устройствазаключается в следующем: мастер пытается записать свой адрес в регистр CSR# 4 устройства. Еслиустройство доступно для прикрепления, операция записи проходит нормально, и внем устанавливается бит CSR# 0 <03> = 1 - «устройство прикреплено». Если данное устройствонедоступно, поскольку другой мастер владеет исключительным правом на егоисполнение, операция записи не выполняется и возвращается код SS = 1(«занято»). Когда мастер более не нуждается в исключительном праве наиспользование, он записывает логическую единицу в бит CSR# 0 <19> - «открепить устройство». Мастер может получить управлениеустройствами, в которых не реализованы регистр управления и статуса CSR# 4, путем выполнения операции«чтение-модификация-запись» по отношению к регистру CSR = 0 для того, чтобыреализовать директиву «тестировать и установить».

Мастер может также получитьисключительное право на использование устройства, не прерывая связку AS/AK, илипри помощи поддержания сигнала GK = 1 для того, чтобызапретить арбитраж. Этот способ обладает тем недостатком, что он запрещает вседругое использование сегментов, вовлеченных в операцию.

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

Этот механизм применим для устройствав целом. В случае приложения, которые требуют независимого распределенияподразделов устройства, см. описание регистров CSR# 70 - 81.

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

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

Прежде чем пересылать блокданных, в регистр счетчика слов CSR# 5 может быть загружено максимальное количество передач, разрешенное дляданного взаимодействия. Содержимое регистра уменьшается на единицу после каждойпередачи. Внутренний адрес, используемый для следующей передачи, обычносодержится в регистре адреса следующей передачи NTA (см. п. 4.4).

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

Этот регистр с селективнойустановкой и сбросом используется для выбора до 16 средств самотестирования,управление которыми возложено на бит CSR# 2 <07>. Биты CSR# 6<15:00> выбирают тесты с 15 по 0, а при чтении также показывают статусвыбора. Биты CSR# 6 <31:16> показывают статустестов соответственно с 15 по 0, индицируя при помощи бита, установленного вединицу, что был обнаружен сбой. Если обнаружены какие-либо сбои, бит CSR# 2 <23> также долженбыть установлен в единицу.

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

Этот регистр используется сцелью задания классов для широких операций (см. табл. III), на которые будет отвечать устройство. Биты с 31по 16 зарезервированы и считываются как нули. Несмотря на то, что устройствоможет быть приписано к более чем одному классу широких операций, данная широкаяоперация может выбирать одновременно только один класс.

Биты с 15 по 0 соответствуютклассам широких операций с 15 по 0 в том же порядке. Если бит «N»установлен в единицу, устройство будет выбрано широкой операцией с устройствамикласса «N», см. табл. III.

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

Биты в CSR# 8 - регистре уровня арбитража должны быть распределены следующимобразом: биты с 5 по 0 содержат уровень арбитража; бит 6, если установлен,должен показывать, что используется протокол приоритетного доступа; бит 7, еслиустановлен, должен показывать, что используется протокол гарантированногодоступа (см. п. 6.1).

Содержимое этого регистрадолжно изменяться только в соответствии с правилами, изложенными в п. 6.3.4.

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

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

Биты в CSR# 9 - регистре управления таймерами должны быть распределены, какпоказано в табл. XIV.

CSR - регистры с 1 ch до 1 Fhобеспечивают средства для определения периодов таймеров, управляемых с помощью CSR# 9.

Регистры управления истатуса CSR с 1 Ch пo 1 Fh включ. должны бытьиспользованы для определения периодов таймера следующим образом:

CSR# 1C долгий Таймер (CSR# 9 <04>);

CSR# 1D Таймер ожидания (CSR# 9<05>);

CSR# 1E Таймер адресных циклов (CSR# 9 <06>);

CSR# 1F Таймер циклов данных (CSR# 9 <07>).

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

Таблица XIV

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

Бит

Назначение при чтении

Назначение при записи

S01

Работа долгого таймера разрешена

Разрешает работу долгого таймера

S05

Работа таймера ожидания разрешена

Разрешает работу таймера ожидания

S06

Работа адресного таймера разрешена

Разрешает работу адресного таймера

S07

Работа таймера данных разрешена

Разрешает работу таймера данных

С20

 

Запрещает работу долгого таймера

С21

 

Запрещает работу таймера ожидания

С22

 

Запрещает работу адресного таймера

С23

 

Запрещает работу таймера данных

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

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

8.14. CSR-регистры с 20h no3Fh

Эта группа из 32 регистров свозможностью селективной установки и сброса обеспечивает полное управлениеисточниками сигналов SR «запрос на обслуживание»,которых может быть не более 256. Каждый регистр может полностью манипулироватьне более 8 источниками сигналов SR, нумеруемыми с 0 до 7, иорганизован следующим образом:

(бит31) с7d7- - - - c0d0s7e7 - - - - s0e0 (бит 00)

Биты «е» и «s»соответственно сбрасывают и устанавливают источник SR. Биты «d» и «е»соответственно запрещают и разрешают выставление запроса SR отисточника на линию SR данного устройства. Биты «s» и «е» могут также бытьсчитаны для того, чтобы подучить информацию о статусе источника и маски на текущиймомент.

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

8.15. CSR-регистры с 70h no81h

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

CSR# 70h должен соответствоватьподразделу 0, CSR# 71h - подразделу 1 и так далеевплоть до CSR# 7Fhвключ.

CSR# 80 должен содержать 16 пар битов с возможностью селективнойустановки/сброса, по одной для каждого подраздела.

Каждая пара битов должнаиспользоваться для присоединения, отсоединения и проверки статусасоответствующего раздела.

CSR# 81h должен содержать до 16 парбитов с возможностью селективной установки/сброса, по одной для каждогоопределенного поднабора подразделов устройства. Каждая пара битов должна бытьиспользована для ограничения влияния CSR - команд на поднаборподразделов устройства.

Функция, выполняемаярегистрами CSR# 70h - 7Fh 7F для подразделов, аналогичнафункции CSR# 4 по отношению к устройствув целом. Функции регистра CSR# 80 аналогичны функциям битов CSR# 0 <03> и <19>.

CSR# 81 позволяет ограничитьвлияние CSR-команд и лишь на часть подразделов устройства. Так,для того, чтобы очистить все регистры устройства, за исключением закрепленныхза подразделом 3, необходимо записать код 8FFF7h в CSR# 81h, записать код 8000 0000h в CSR# 0 («очистка данных») и затем, если нужно, записать код 8h в CSR# 81h для того, чтобы вновь разрешитьработу подраздела 3.

Способность регистра CSR# 81 к селективным установке исбросу позволяет пользователю каждого подраздела управлять им независимо отдругих подразделов.

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

Эти три блока, каждый изкоторых состоит из 16 регистров, используются для хранения сообщений опрерываниях (см. п. 9.1), предназначенных дляпосылки источниками А, В и С соответственно. Адреса, в которые эти сообщениядолжны быть посланы, указываются регистрами с Ah пo Fh, какописано в п. 8.13.

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

Область адресовпараметрических CSR специфицирована таким образом, который допускаетудобные способы реализации, использующие программируемые постоянныезапоминающие устройства (ППЗУ).

ППЗУлегкодоступны в виде схем с длиной слова 8 бит (1 байт, поэтому для содержимогокаждой адресуемой ячейки из параметрических областей специфицируется толькополе AD <07:00>. Остальные разряды AD <31:08> считываются ввиде нулей.

Биты в регистре CSR-8000 0000h,считываемые по линиям AD06, AD04, AD02 и AD00,должны быть запрограммированы, а биты, считываемые по линиям AD07, AD05, AD03<и AD01, не должны быть запрограммированы. Если в одном устройстве дляпараметрической области используются более чем одно ППЗУ, все они должны иметьодинаковый уровень, соответствующий запрограммированному состоянию.

Такимобразом, из регистра CSR-8000 0000h будетсчитан код 55h, если незапрограммированному состояниюсоответствует 0, или код AAh, еслинезапрограммированному состоянию соответствует 1.

В параметрической областиданные должны размещаться в младших 8 разрядах каждой адресуемой ячейки. Поля счисловыми данными должны быть упорядочены так, чтобы самая старшая 8-разряднаячасть числового поля была размещена в ячейке с самым низким адресом. Поля состроками знаков в коде ASCII * должны иметь первый знакс ненулевым кодом в ячейке с самым низким адресом, если не оговорено иное.Замыкающие неиспользуемые части поля ASCIII-знаков должны бытьзаполнены пробелами в коде ASCII (20 h).Операции записи в параметрическую область не должны оказывать никакоговоздействия и должны во время цикла данных возвращать код SS-6(см. табл. VIIIb). Адреса в параметрическойобласти должны быть распределены, как показано в табл. XVa и XVb.

* Американский стандартный код для обмена информацией

Таблица XVa

Распределение адресов вобласти параметрических CSR-регистров

Шестнадцатиричный адрес

Содержимое

8000 0000

Идентификатор типа ППЗУ, код 55h или ААh (см. текст выше)

8000 0001

Незапрограммирован, зарезервирован для расширения идентификатора

8000 0002-03

16-разрядный идентификатор, копия содержимого разрядов <31:16> регистра CSR = 0

8000 0004-07

32-разрядное требуемое адресное пространство устройства

8000 0008-0F

8-байтовый порядковый номер (в коде ASCII)

8000 0010-17

8-байтовая дата, проставляемая изготовителем, (код ASCII) в виде дд/мм/гг

8000 0018-1F

8-байтовый инвентарный номер, проставляемый владельцем (у изготовителя незапрограммированы)

8000 0020-23

Указатель ближайшей следующей свободной зоны

8000 0024-

Первая страница каталога

Таблица XV(b)

Определение терминов,использованных в табл. XVa

Термин

Определение

Файл

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

Заголовок

См. термин «страница»

Следующая свободная зона

Когда информация добавляется в ППЗУ, пространство для новой с границы берется из свободной зоны. Цепочка указателей следующей свободной зоны прослеживается, начиная с ячейки 8000 0020h и вплоть до тех пор, пока не будет найден незапрограммированный указатель. Этот указатель затем программируется так, чтобы он содержал адрес ячейки, стоящей за пределами пространства, требуемого для новой страницы, а содержимое новой страницы программируется в отведенном пространстве, причем ее заголовок располагается непосредственно сразу после упомянутого указателя. Если новая страница должна быть добавлена к существующей последовательности страниц, то ранее незапрограммированный конечный указатель в заключительном заголовке этой последовательности программируется так, чтобы он содержал адрес заголовка новой страницы

Страница

Страница представляет собой непрерывный блок памяти на ППЗУ, чьи первые 8 байтов (заголовок) содержат 32-разрядный указатель на заголовок следующей страницы данного файла, за которым следует 32-разрядное поле размера страницы. Размер представляет собой количество байтов, которые следуют за заголовком. Страница может быть уничтожена при помощи полного программирования размера ее поля. Незапрограммированное поле размера эквивалентно нулевому размеру и означает, что в данной странице не были запрограммированы никакие имеющие силу данные. Незапрограммированный указатель следующей страницы служит признаком последней страницы файла

Указатель

32 разрядный CSR-адрес, указывающий на байт объекта, имеющий самый низкий адрес

Каталог

Это поле, чья первая страница всегда начинается с адреса 8000 0024h (даже если эта страница была уничтожена), имеет структуру заголовка, описанную для понятия «страница». Данные в этом поле состоят из имен файлов в коде ASCII, имеющих переменную длину и оканчивающихся одним ASCII-пробелом (код 20h), за которыми следуют 32-разрядные адреса первых страниц файлов

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

Воздействие включенияпитания, сигнала RB, функций битов «сброс» и «очистка» на биты в CSR-регистрахдолжно быть таким, как указано в табл. XVI.

Таблица XVI

Сброс битов в CSR-регистрах

CSR-регистр

Бит

Наименование

Значение, считываемое после указанного воздействия

Включение питания

Сигнал RB «сброс магистрали»

Сброс CSR# 0 <30>

Сброс флага ошибки CSR# 0 <30>

0

0

Флаг ошибки

0

-

0

0

0

1

Разрешение

0

0

0

-

0

2

Работа*

0

0

0

-

0

3

Устройство прикреплено

0

-

0

-

0

4

Разрешение выставления SR

0

-

0

-

0

5

Флаг SR

0

-

0

-

0

6 - 13

Определяется пользователем

X

X

X

X

0

14

Ошибка четности**

0

X

0

0

0

15

Активный***

0

-

0

-

2

0 - 3

Определяется пользователем

X

X

X

X

2

4 - 6

Разрешение прерываний

0

-

0

-

2

7

Идет тестирование

0

-

0

-

2

8 - 10

Различные статусы

0

-

0

-

2

11 - 13

Различные статусы

0

-

X

-

2

20 - 22

Прерывания подготовлены

0

-

0

-

2

23

Результат тестирования

X

X

X

X

2

24 - 31

Статус пользователя

X

X

X

X

3

Все

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

X

-

-

-

4

Все

Адрес устройства пользователя

X

-

-

-

5

Все

Регистр счетчика слов

X

-

-

-

6

Все

Регистр выбора тестов

0

-

0

-

7

Все

Регистр классов для широких операций

0

-

0

-

8

Все

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

X

-

-

-

9

4 - 7

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

1

-

1

-

OA-OF

 

Адреса приемников прерываний

X

X

X

X

1C-1F

 

Периоды таймеров

X

-

-

-

20-3F

 

Источники и маски запросов на обслуживание

0

-

0

-

70-7F

 

Адреса устройств пользователей

X

-

-

-

80

 

Прикрепление подразделов

0

-

0

-

81

 

Разрешение работы подразделов

0

-

-

-

*Этот бит также сбрасывается при записи единицы в бит CSR# 0 <31>, т.е. в бит «очисткаданных» (см. табл. ХIIb).

** Этот биттакже сбрасывается при AS= GK = 0.

*** См. табл.XVIII для использования этого бита в соединителяхсегментов.

Примечание. В табл. XVIзнак «-» означает, что статус соответствующего бита (битов) не долженизмениться, в то время как буква X означает, что характер воздействия на указанные битыпредоставляется на выбор разработчику.

ГЛАВА9. ПРЕРЫВАНИЯ

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

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

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

Мастер, желающий выполнитьоперацию прерывания, сначала обычным путем получает владение магистралью. Затемон посылает сообщение длиной максимум 16 слов соответствующему устройствуобслуживания прерываний (УОП), чей адрес должен содержаться в области CSR-регистровпрерывающего мастера (см. п. 8.13).Это сообщение записывается в блок приема прерываний (см. табл. XI), доступ к которомуосуществляется при помощи вторичного адресного цикла. Формат сообщения неспецифицирован, за исключением четырех младших разрядов первого слова, которыедолжны содержать информацию о количестве слов, следующих за первым в данномсообщении. Второе слово должно содержать адрес прерывающего мастера, аследующие слова, если они есть, должны содержать детали или указатели надетали, касающиеся причины данного прерывания.

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

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

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

Протокол для операциипрерывания должен быть следующим.

После получения владениямагистралью прерывающее устройство должно записать сообщение о прерывании иодин из блоков в области CSR регистров, принимающихпрерывания (см. табл. XI) и расположенный в УОП. Поле из четырех младших битов первого слова вблоке приема прерываний должно представлять собой количество слов, которыеследуют далее в данном сообщении (максимум 15 слов).

Регистры для приемапрерываний должны быть реализованы в виде блоков по 16 регистров, начинающихсяс регистра CSR# 100 h, и должны быть доступныпосредством блочных передач и однократных передач данных в режиме произвольногодоступа. Если реализованы дополнительные группы приемных регистров, они должныбыть размещены последовательно, начиная с регистра CSR# 110h.

Выполнение операции записипо любому адресу в пределах любого блока приема прерываний должно вызыватьвыставление запроса на прерывание по отношению к связанному с этим блокомпроцессору, когда завершается текущая операция (AS = 0), а также должнопереводить этот блок в запрещенное состояние, которое отклоняет дальнейшиеоперации записи по любому адресу в пределах блока возвратом SS = 1(занято). УОП должно разрешать блоку прием последующих сообщений о прерыванияхпосле того, как оно обработает информацию о текущем прерывании.

Если адресуетсянесуществующий блок регистров для приема прерываний, УОП должно возвращать SS = 6.

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

Протокол, связанный соперацией прерывании, требует, чтобы устройство, генерирующее прерывание, былоспособно выигрывать владение магистралью и чтобы приемник прерывания содержалпо меньшей мере один блок приема прерываний. Линия «запрос на обслуживание» (SR) обеспечиваетболее простой, хотя и менее универсальный, способ для устройств, включая те изних, которые не обладают способностью владеть магистралью, генерироватьпрерывания. Прерывания типа «запрос на обслуживание» могут обслуживаться менеесложными мастерами, чем те, что отвечают на операцию прерывания.

В устройстве можетсуществовать много источников запросов на обслуживание. Биты в регистрах от СSR# 20по CSR# 3F (см. п. 8.14) обеспечивают управление максимум, 256 различнымиисточниками запросов на обслуживание. Все разрешенные источники запросов наобслуживание объединяются вместе по «ИЛИ» для того, чтобы сформировать общийвнутренний сигнал «запрос на обслуживание». В этих регистрах также предусмотреныбиты, позволяющие определять статус индивидуальных источников запросов наобслуживание, а также их масок. Внешний сигнал SR формируется путемобъединения по «И» внутреннего бита флага SR с битом «разрешение» в CSR-регистре(см. п. 8.3.2).Регистр CSR# 0 содержит также бит состояния внешнего сигнала «запрос наобслуживание», выходящего из данного устройства, бит состояния общей маски ибит общего из данного устройства, бит состояния общей маски и бит общего сбросазапросов на обслуживание. Устройство с единственным источником запроса наобслуживание может полностью управлять им, используя только биты в CSR# 0.

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

Методика, используемая ОЗОдля определения местоположения источников SR, зависит от возможностейустройств, которые могут выставлять сигнал SR. Один метод, который будетработать при всех обстоятельствах, заключается в том, что ОЗО проверяетсостояние битов СSR# 0 <05:04> всех возможных источниковзапросов. Подобный опрос голосов может оказаться наиболее эффективным приемом,если общее число возможных источников запросов невелико.

В качестве альтернативы ОЗОможет осуществить специальный режим широкой адресации (случай 5 в табл. III), нацеленный на каждыйсегмент, предназначенный для обслуживания. При этом типе широкой операции вовремя адресного цикла присоединяются только те устройства, которые выставляют SR, и вовремя непосредственно следующего за этим цикла чтения они подают сигналы насвои Т-штырьки. Таким образом, битовый узор, поступающий по линиям AD вмомент прихода DK, идентифицирует те устройства в сегменте, которыевыставляют SR.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

1. Операции А и В принимаютучастие в арбитраже за использование сегмента К, выигрывает операция В.

2. Операция А принимает насебя управление соединителем сегментов СС (J, К), но уже слишком поздноучаствовать в арбитраже за использование сегмента К, которое уже выигранооперацией В.

3. Операция А получает правона управление сегментом К, операция В управляет сегментом L, и обе эти операциипредпринимают доступ к СС (К, L).

Рис. 22. Конфликт прииспользовании СС

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

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

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

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

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

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

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

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

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

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

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

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

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

Состояние 3 требуется длятого, чтобы реализовать широкую адресацию (см. п. 4.3). Если это состояниевстречается во время адресного цикла при MS 1 = 1, то СС, прежде чемпропустить адрес, обнуляет старшие 24 разряда и устанавливает AD<00> = 1. Нулевой адрес группы зарезервирован для прокладки маршрута приширокой операции и никогда не присваивается сегменту.

СС выставляет EG, есливстретилось состояние 4, и все адресные разряды от AD <08> до поля адресагруппы равны нулю, когда MS 1 = 0 при AS (u).

Содержимое маршрутнойтаблицы доступно для чтения мастером и, если позволяет данная реализация, можетбыть им изменено. Доступ к маршрутной таблице осуществляется через регистрадреса маршрутной таблицы СSR# 40h, который может быть выбранвторичной адресацией. Когда установлена связь, в этот регистр заносятся данныедля того, чтобы указать адрес записи в маршрутной таблице, к которой необходимополучить доступ. Формат данных совпадает с форматом поля адреса группы, т.е.самый старший разряд адреса маршрутной таблицы является самым старшим разрядомданных (AD <31>).

Занесенные в регистр СSR# 40h адресазаписи в маршрутной таблице сопровождается циклами чтения данных или, если ониреализованы, циклами записи данных в CSR# 41h. Если используется режимблочной передачи данных, доступ осуществляется к последовательным записям вмаршрутной таблице. Формат данных, относящихся к записям в маршрутной таблице,идентичен формату данных,относящихся к адресу записей, с добавлением в позициях младших трех разрядовинформации о признаке базового адреса, признаке места назначения и опропускании. Этот формат применяется независимо от типа СС.

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

Каждый портСС содержит 8 CSR-регистров, которые используются для управленияустройством. При распределении и использовании этих регистров соблюдаются общиеправила, приведенные в разд. 8. Так нереализованные битыигнорируются во время записи и возвращаются как логические нули во времячтения. Эти регистры доступны через географическую адресацию, сопровождаемуювторичными адресными циклами. Только один регистр CSR# 41h - регистр данных маршрутнойтаблицы может использовать преимущества механизма блочной передачи данных.

Каждый порт СС долженсодержать географически адресуемые регистры управления и состояний, какопределено в пп.  10.5.1 - 10.5.8.

Дуплексный СС должен иметьидентичные регистры в каждом из двух своих портов.

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

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

Воздействие включенияпитания, сигналов «сброс магистрали», RB и «очистка» на CSR-регистрыв СС определяется в п. 10.5.9. Спецификации, помещенныениже, относятся к CSR-регистрам в порте ближней стороны.

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

Биты, реализованные в CSR# 0, должны быть такими, какпоказано в табл. XVIIa, и должны функционировать,как описано в табл. XVIIb.

Таблица XVIIa

Назначение битов CSR# 0 в соединителе сегментов

Бит*

Назначение при чтении

Назначение при записи

00

S01

Флаг ошибки

Разрешено пропускание операции

 

Разрешает пропускание операции

02

 

 

03

 

 

S04

Разрешено пропускание SR

Разрешает пропускание SR

05

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

 

S06

СС выставил GK на дальней стороне

Выставляет GК на дальней стороне

07

Статус GK на дальней стороне

 

08

 

 

09

 

 

10

Статус ВН на дальней стороне

 

11

Сбой в ответах СС

 

12

Арбитраж проигран

 

13

Ошибка в присвоении вектора

 

14

Ошибка четности

 

15

 

Бит прослеживания маршрута в СС

16

Тип устройства (младший разряд)

Сбрасывает флаг ошибки

С17

Тип устройства

Запрещает пропускание операции

18

Тип устройства

 

19

Тип устройства (старший разряд)

 

20

Идентификатор изготовителя (младший разряд)

Запрещает пропускание SR на обслуживание

21

Идентификатор изготовителя

 

С22

Идентификатор изготовителя

Снимает GK на дальней стороне

23

Идентификатор изготовителя

Выставляет RB на дальней

24

Идентификатор изготовителя

стороне

25

Идентификатор изготовителя

 

26

Идентификатор изготовителя

 

27

Идентификатор изготовителя

 

28

Идентификатор изготовителя

 

29

Идентификатор изготовителя

 

30

Идентификатор изготовителя

Сброс

31

Идентификатор изготовителя (старший разряд)

 

* См. примечание к табл. ХIIа.

Таблица XVIIb

Функции битов регистра CSR# 0

Бит

Тип

Наименование

Функция

00

R

Флаг ошибки

Бит 00 представляет собой логическое ИЛИ битов индикаторов ошибок CSR 0<14:11> в СС

S01

R/W

Разрешение

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

С17

W

Запрещение

Запрещает работу схемы распознавания адреса в СС

S04

R/W

Разрешено пропускание SR запроса на обслуживание

Когда бит 04 установлен, пропускание SR от сегмента дальней стороны в сегмент ближней стороны разрешено. Пропускание SR зависит только от состояния этого бита

С20

W

Запретить пропускание SR

Этот бит запрещает пропускание SR от сегмента дальней стороны в сегмент ближней стороны

05

R

Статус, SR на дальней стороне

Индицирует статус сигнала SR в сегменте дальней стороны

S06

R/W

Выставить GK

Когда бит 06 установлен, SS после пропускания операции в сегмент дальней стороны будет удерживать за собой право на владение сегментом дальней стороны, продолжая выставлять сигнал GK = 1 (подтверждение разрешения). Следовательно, протекающие далее операции, пропускаемые данным соединителем сегментов, не должны будут проводить арбитраж за право использования сегмента дальней стороны

С22

W

Снять GK

Когда в позицию этого бита записывается логическая единица, СС не будет более выставлять сигнал GK = 1 в сегменте дальней стороны

07

R

Статус GK на дальней стороне

Индицирует, состояние GK в сегменте дальней стороны

23

W

Выставить RB

Когда в позицию этого бита записывается логическая единица, СС генерирует импульс RB в сегменте дальней стороны

10

R

Статус ВН на дальней стороне

Бит 10 индицирует состояние сигнала ВН в сегменте дальней стороны

11

R

Сбой в ответах СС

Бит 11 устанавливается, если адрес, пропущенный к дальней стороне, не был адресом устройства, имеющегося в сегменте дальней стороны, и истек лимит времени и таймере отпетой СС при адресации. Вероятной причиной является ошибка в маршрутной таблице либо в СС, пропускающем операцию, либо в одном из других СС, подключенных к сегменту дальней стороны. Этот бит сбрасывается сигналом AS (d), а также битом CSR# 0 <16>

12

R

Арбитраж проигран

Бит 12 устанавливается, если СС принимает участие в арбитраже за использование сегмента дальней стороны и проигрывает его. Он сбрасывается сигналом AS (d), a также битом CSR# 0 <16>

13

R

Ошибка в присвоении вектора

Бит 13 устанавливается, если идентичные вектора с системным уровнем арбитража соревнуются за использование СС. S1 выдает также ответный код SS = 2. Этот бит сбрасывается также сигналом AS (d) и битом CSR# 0 <16>

14

R

Ошибка четности

Бит 14, когда он установлен, указывает, что СС обнаружил ошибку четности во время цикла данных. Ошибочные данные и информация о четности пропускаются без изменения. Этот бит сбрасывается сигналом GK (d) и CSR# 0 <16>

15

W

Бит прослеживания маршрута в СС

Когда бит 15 устанавливается во время широкой операции с нулевым адресом группы, все СС, пропускающие широкую операцию, переводятся и режим прослеживания маршрута только на своей ближней стороне. Любой последующий сигнал AS (d), поступающий и порт ближней стороны СС, восстанавливает СС в режим нормального пропускания. В режиме прослеживания маршрута СС, который нормально пропустил бы данный адрес, не делает так, и вместо этого возвращает ответный код SS = 2 - «сбой в сети» и выбирает для связи область адресов CSR своего слуги. Мастер может затем прочитать содержимое регистра CSR# 43 для того, чтобы получить адрес дальней стороны СС. Выдача сигнала AS (d) восстанавливает СС в режим нормального пропускания, так что повторная выдача такого же адреса дает в результате ответные действия от следующего СС - на данном маршруте. Таким образом, может быть определен фактический маршрут, по которому проходят для доступа к данному адресу (см. приложение J)

Сигнал GK (d) восстанавливает все СС вдоль данного маршрута в режим нормального пропускания. Таким образом, нормальные операции могут быть возобновлены без завершения полного процесса прослеживания

16

W

Сброс флагов ошибки

Если в позицию этого бита записывается логическая единица, то все флаги ошибок в позициях битов 0, 11, 12, 13 и 14 очищаются

30

W

Сброс

Результат действия бита «сброс» определен в п. 10.5.9

16 по 31

R

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

16 - разрядный идентификатор устройства описан в п. 8.3.1

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

СSR# 1 должен содержать уровеньарбитража дальней стороны и протокол арбитража для дальней стороны в формате,определенном для CSR# 8 (см. п. 8.11).

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

Содержимое этого регистра не должно подвергатьсявоздействию сигнала RB или бита «сброс».

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

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

СSR# 8 должен содержать уровеньарбитража ближней стороны и протокол арбитража для ближней стороны в формате,определенном в п. 8.11.

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

Содержимое этого регистра не должно подвергатьсявоздействию сигнала RB или бита «сброс».

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

В регистре СSR# 9 должны быть реализованыбиты 6, 7, 22 и 23, как определено в п. 8.12.

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

СSR# 40h должен быть реализован и его содержимое должно использоваться вкачестве указателя на вход в маршрутную таблицу. Он не должен модифицироватьсяпри использовании режима произвольного доступа к данным в CSR# 41h, ноего содержимое должно увеличиваться на единицу после каждого цикла данных воперациях блочной или принудительной передач, адресованных к CSR# 41h.Регистр CSR# 40h должен иметь числоразрядов, определяемое длиной маршрутной таблицы (см. п. 10.5.6). Самый старшийразряд регистра CSR# 40h должен соотноситься слинией AD <31>.

Отметим, что максимальнаядопустимая ширина поля адреса группы равна 24 разрядам (см. п. 4.1). Поскольку самымстаршим разрядом этого регистра является разряд 31, его содержимое после ответаSS = 22 - конец блока, будет равно нулю.

Для удобства реализации CSR# 40h можетзагружаться при каждом AS (u) содержимым текущегополя GP предварительно, перед достижением входа в маршрутную таблицу.Следовательно, проверку или модификацию содержимого маршрутной таблицы следуетвыполнять в течение той же самой операции с блокированным адресом.

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

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

Маршрутная таблица должнаиметь длину 2N слов, где N равно числу разрядов регистра CSR# 40h, т.е.ширине поля адреса группы, с которым способен оперировать данный СС.

Три младших разряда каждоговхода в маршрутную таблицу и, следовательно, регистра CSR# 41h должны соответствоватьлиниям AD <02:00>. Эти три разряда должны образовывать биты - признакибазового адреса (AD <02>), места назначения (AD<01>) и пропускания (AD <00>) (см. п. 10.6.1).

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

CSR# 41h должен быть доступен черезоперации либо произвольного доступа, либо блочных передач (см. п.