Добавил:
sergeevpavel0406@mail.ru СОВА Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Информатика в техническом университете / Информатика в техническом университете. Архитектура вычислительных систем

.pdf
Скачиваний:
59
Добавлен:
06.03.2018
Размер:
13.27 Mб
Скачать

7.4. Вычислительная система МИНИМАКС

ШИННЫХ взаимодействий, пересылки массивов данных между памятями пере-

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

Системные взаимодействия, осуществлявшиеся в мини-ВС, были сле- дующих типов :

1)программное изменение структуры мини-ВС и степени участия ЭМ

всистемных взаимодействиях (настройка);

2)передача информации из оперативного запоминающего устройства одной ЭМ в памяти других (обмен);

3)выполнение ОВП;

4)синхронизация работы ЭМ;

5)реализация ОУП по значению признака S.

Выбором размерности связей между ЭМ достигался компромисс междy архитектурной гибкостью и живучестью системы, c одной стороны, и сложностью системных устройств ЭМ c другой. Именно учет интенсивностей взаимодействий типов 2-5 при функционировании мини -ВС и стремление обеспечить гибкость и живучесть системы обусловили двумерность каналов связи 2. Сравнительная редкость взаимодействий 1-гo типа позволила ограничиться для их выполнения одномерными каналами связи 1. Необходимая живучесть мини-ВС в целом обеспечивалась замыканием связей 1 в кольцо и возможностью обхода дефектов связей 1 по связям 2 (см. рис. 7.10).

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

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

деленных сферах применения мини-ВС МИН C (таких, как телеавтоматические системы массового обслуживания, автоматизированные системы управления технологическими процессами) требовались оптимальные

структуры (в смысле структурной живучести, см. разд. 7.2.1). Поэтому при

компоновке мини-ВС, состоявшей из N ЭМ, использовались для отождествления полюсов связей 1 (см. рис. 7.10) одномерные структуры, a для отож-

дествления полюсов связей 2 оптимальные двyмерные структуры, точнее,

Д2-графы. Оптимальные структуры мини-ВС MHHHMAKC при количестве ЭМ от 5 до 10 показаны на рис. 7.11, a при числе ЭМ более 10 могут быть выбраны из каталога оптимальных структур (см. табл. 7.1, 7.2 и 2.4 в [5]).

B пределах мини-ВС МИIШМАКС допускалось формирование произвольного числа подсистем из любого количества ЭМ. Подсистему составляли

331

7. Вычислительные системы c программируемой структурой

a

6

в

г

д

e

Рис. 7.11. Оптимальные СТРУКТУРЫ мини-ВС МИНI (МАКС, D2-графы вида: a — {5; 1,2}; б — {б; 1,2}; в — {7; 1,2}; г — {8; 1,3}; д — {9; 1,4}; e — {1О; 1,4}

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

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

7.4.2. Элементарная машина мине: -ВС МИНИМАКС

Вычислительная система МИНИМАКС компоновалась из ЭМ-много- полюсников (рис. 7.12). Каждая ЭМ это ком iпозиция из ВМ и СУ. Структура ЭМ данной мини-ВС не была жестко заданной и определялась областью применения. Состав каждой ЭМ допусв:ал варьирование; компоновка ЭМ проводилась по правилам, которые были приняты для агрегатных средств ВТ на микроэлектронной основе (АС ВТ-М) или для средств систе-

332

7.4. Вычислительнaя система МИНИМАКС

мы малы ЭВМ (СМ ЭВМ). B качестве ВМ могли быть использованы любые конфигурации мини-ЭВМ на базе процессоров М-6000, М-7000, СМ-1 П. Архитектура сис-

темы МИHИМАКС была рассчитана также

на применение мини-ЭВМ моделей НР

2114-2116 семейства Hewlett Packard.

Основные технические характери-

стики мини-ЭВМ семейств АСВТ-М, СМ

ЭВМ и Hewlett—Packard:

• базовый набор команд

70 инст-

рукции;

• структура команд машины одноадресная;

Рис. 7.12. Функциональная структура ЭМ мини-вс C:

BM — выч3слительньпй модуль; ЭМ элементарная машина СУ системное усгройство; l 3 связи

система счисления двоичная;

длина слов 16 двоичных разрядов;

способы представления чисел c фиксированной и плавающей запятыми (режим работы c плавающей запятой реализовывался программно и аппаратypно, специальным процессором);

многоуровневая непрямая адресация памяти;

емкость магнитной оперативной памяти 4...32 К слов;

цикл оперативной памяти 1,2...2 мкс;

многоуровневая система прерываний (для обслуживания запросов различных приоритетов);

быстродействие при выполнении операций типа «сложение» 250...400 тыс. опер./c;

время выполнения команд:

сложения (регистр-память) 2,5...5 мкс, умножения (по подпрограмме) 150.. .187 мкс, деления (по подпрограмме) 310...3 87 мкс, умножения (спецпроцессором) 19,2.. .24 мкс, деления (спецпроцессором) 20,8...26 мкс.

Системное устройство было спроектировано как автономное устройство АСВТ-М. Оно подключалось к ВМ через связи 3 (рис. 7.13). При выборе способа реализации связей 3 учитьвались пршщипы построения АСВТ-М и следующие отсюда ограничения:

целесообразность построения системного устройства в виде отдельного модуля;

недопустимость изменении в схемах и конструкции процессоров АСВТ-М.

333

7. Вычислительные системы c програмл'ируемой структурой

БН БО БSZ

Связи 1

Связи 2

 

1

1

 

БУ

БН

Бо

Б

 

 

V

 

 

Схема

 

 

 

 

 

 

А

w

Связи 3

Рис. 7.13. Функциональная структура системного устройства мини-ВС МИНИМАКС:

БН — блок настройки; БО — блок обмена информацией; БУ — блок управления; Б^2 — блок выработки обобщенного признака; К 1 , Кг — коммyтаторы; РН 1 , РН2 — регистры настройки

B мини-ВС МИНИМАКС связь ВМ c СУ реализовывалась двумя спо-

собами :

через программный канал;

через канал прямого доступа к памяти.

При этих способах использовался стан, ^артный интерфейс ввода-вы-

вода АСВТ-M.

B состав СУ входили: блок управления БУ, блок настройки БН, блок обмена информацией БО, блок выработки обобщенного признака Q Б^Z (см. рис. 7.13).

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

Блок настройки. Настройка ЭМ заключа iась в изменении кода в ее РН. Содержимое 3 -разрядного РН указывало, выг.:олняет ли данная ЭМ взаимодействия по связям 2 и задает ли направлЕ -ние приема информации для взаимодействий 2 и 3 (два разряда для кода соединительной функции). Настpойка могла быть выполнена из собственного ВМ через связи 3 (настройка машины) или из любой другой ЭМ через связи 1 (настройка системы).

Настройка системы могла осуществляя •ься в любом из направлений

связей 1. Использовалась пошаговая настрой^:а со сдвигом. На каждом шаге к подсистеме ПС 1, сформированной ранее, п1 ^дсоединялась ЭМ, соседняя c подсистемой в направлении выполняемой на тройки; выдавался очередной код из ВМ настраивающей ЭМ на ее регистр P1; осуществлялся параллель-

334

7.4. Вычислительная система МИНИМАКС

ный сдвиг содержимого P1 машин подсистемы на одну позицию в направлении настройки. Общее количество шагов настройки системы было равно (1 + 2), где 1 число ЭМ, находящихся между настраивающей и настраиваемой машинами. После выдачи (1 + 2) кодов настpаивающая ЭМ посыла-

ла исполнительный сигнал, который осуществлял в каждой ЭМ ПС 1 пере -

пись кода из P1 на РН, a затем разрушал подсистему. B машинах ПС 1,

использовавшихся для транзитной передачи кодов, перепись содержимого P1 в РН блокировалась. Транзитные ЭМ распознавались по кодам, находившимся в их регистрах P1 (см. рис. 7.13).

Направление приема информации по связям 1 для ЭМ определялось c помощью коммутатора K 1. Он реализовывал функцию ИЛИ от входной информации, если ЭМ не была включена в ПС 1. Для ЭМ, принадлежавшей

ПС 1, направление приема определялось направлением, c которого она полу-

., чила первый код.

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

Время, в течение которого связи 1 были свободны, можно было использовать для передачи в ЭМ кода настройки, необходимого для ее даль-

нейшей работы. При предварительной настройке перепись информации из

P1 на РН в настраиваемых ЭМ не выполнялась. Код на P1 сохранялся, a в

ЭМ посылался сигнал готовности P 1.

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

Передача информации из ЭМ осуществлялась по всем четырем направлениям связей 2. Направление приема информации определялось коммyтатором K2, соединительная функция которого задавалась содержимым регистра настройки (см. рис. 7.13).

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

Блок Q. Блок Q служил для синхронизации машин и осуществления

обобщенного условного перехода в мини-ВС. Оба этих взаимодействия со-

провождaлись выработкой обобщенного признака Q. Признак SZ вырабаты-

335

7. Вычислительные системы c программ ируемой структурой

вaли и реагировали на его значение только ЭМ, выделенные при настройке. Обобщенный признак SZ представлял собой конъюнкцию индивидуальных

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

Регистр кода операций блока местного у правления, регистры P1 и P2 блоков настройки и обмена, триггер обобщен много признака Q были программно доступны.

Контроль. Информация, передаваемая г o связям 1-3, контролировалась по паритету. Следовательно, вычислени; i по модулю 2 контрольных сумм кодов осуществлялись до их передачи и после приема. Если эти контpольные суммы не совпадали (одна была чете мой, a другая нечетной), то имела место ошибка. Она вызывала выработке у сигнала прерывания в соответствующем ВМ. Реакция мини-ВС на возникновение ошибки определялась содержимым регистра настройки и источником ошибки (связи 1,2 и т. д.).

Системное устройство было включено в состав агрегатных модулей АСВТ-M. По аппаратурным затратам оно было не сложнее канала прямого доступа к памяти. Отношение стоимости системного устройства к стоимости процессора не превышало 0,5.

Следует заметить, что для мультипроце сорных систем c общей ши-

ной и вычислительных сетей фирмы Digital Equipment Corporation отно-

шение стоимости соединительного модуля к стоимости процессора ЭВМ PDP-11 составляло 1,2 и 2,1 соответственно.

Логическая сложность системных устройств ВС МИНИМАКС и «Минск-222» имели один и тот же порядок. Та к, число вентилей на два входа в системных устройствах для вычислител: оных систем МИНИМАКС и «Минск-222» было равно соответственно 830 п 440. При этом функциональ-

ные возможности мини-ВС МИНИМАКС, имeвшей двумерные рабочие канaлы межмашинной связи, были существенно шире, чем одномерной системы «Минск-222».

7.4.3. Системные команды мини ВС МИНИМАКС

Межмашинные взаимодействия при функционировании мини-ВС реа-

лизовывались при помощи системных драг'веров и команд. Системный

драйвер специальная подпрограмма, ко горая выполнялась в ВМ и осуществляла:

формирование кода системной команды в соответствии с требования-

ми к ее формату;

выдачу в СУ кода команды и сигналов и^ 3ициирования ее выполнения;

336

7.4.Вычислительная система МИНИМАКС

контpоль за ходом выполнения системной команды (включая реакцию

на сигналы системного устройства).

Кратко опишем системные команды мини-вС МИНI4МАКС.

1.Настройка подразделялась на настройку машины и настройку сис-

темы.

Настройка машины проводилась c помощью одной из двух команд. Первая осуществляла занесение кода, заданного в команде, на регистр настройки, вторая перепись содержимого регистра P 1 на регистр настройки.

Настройка системы выполнялась при помощи четырех команд, определявших направление настройки (вправо или влево от настраивающей ЭМ)

иее характер (занесение кода настройки на регистр настройки или P1).

2.Обмен осуществлялся при помощи команд передачи и приема. На-

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

З. Обобщенный безусловный переход использовался для передачи управления в машинах по адресу, поступавшему из управляющей машины. Для реализации обобщенного безусловного перехода использовались команды передачи адреса и приема адреса. Первая команда выполнялась в управляющей машине, вторая в управляемой ЭМ.

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

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

знака Q =1.

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

обобщенного признака Q (конъюнкции индивидуальных признаков х). Перед выполнением данной команды требовалась синхронизация работы

машин.

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

вследующем:

передаче информации o коллизиях в ВМ;

приведении в исходное состояние некоторых узлов СУ.

337

7. Вычислительные системы c программгфуемой структурой

Обмен, синхронизация, обобщенный усл явный и безусловный переходы выполнялись в пределах ПС2 подсистЕ.мы, организованной по свя-

зям 2. (Связность машин в подсистеме определялась хранившимися на реги-

стpах настройки кодами соединительных фун кций.) Участвовaли в этих взаимодействиях только машины, отмеченные в регистрах настройки.

Коллизии, возникавшие в мини-ВС МИН АМАКС при осуществлении межмашинных взаимодействии, рaзрешaлись программно-аппаратурными средствами.

7.4.4. Программное обеспечение мини -ВС МИНИМАКС

B основу программного обеспечения сисе емы МИНИМАКС было положено ПО мини-ЭВМ. Программное обеспечение мини-ВС состояло из управляющей системы, системы параллельногс прогpаммирования, пакетов прикладных P-прогpамм и комплекса программ технического обслуживания (рис. 7.14).

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

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

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

пользователя c одной машиной. При этом обеспечивались возможности счета, трансляции, отладки, редактирования программ на одной машине, a также доступ к системной информации, формиро: зание заданий системе, связь пользователей, работавших за различными терминалами. B режиме параллельной обработки реализовывaлись P-программы и обеспечивалось про-

должение счета при выходе машин из строя. B режимах профилактики и управления выполнялись функции соответствен дно тестирования и организа-

ции работы системы.

Динамика перенастройки структуры мини-ВС и ее конфигурация в каждый момент времени определялись главнь, м диспетчером на основе ин-

338

О

 

 

х

аех

а ^

^ .^" ^

L-" а

с

 

 

^ т

О^а

U ^

V

ттт ---г-

^е

е

н^

V ^

т т т

Рис. 7. 14. Программное обеспечение мини-ВСМИНИМАКС

7. Вычислительные системы c программиюуемой структурой

формации о суммарных ресурсах и об отказах компонентов, директив чело-

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

ни-ВС. Мультипрогpаммная ситуация описывалась параметрами программ и

способом их поступления. Различали два спосо за поступления программ: в виде пакета и потока.

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

Функции главного и старшего диспетчеро 3 выполнялись подсистемой, работавшей в режиме управления. Диспетчеры имели столько идентичных параллельных ветвей, сколько было машин в подсистеме. Каждая ветвь обслyживaла выделенную ей сферу влияния. Основные взаимодействия ветвей были связаны:

c дублированием некоторой информации;

c обеспечением доступа к информации д, энной сферы по запросам из других сфер влияния;

c перераспределением сфер влияния в связи c изменением мультипрогpаммной ситуации.

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

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

иаварийные ситуации, распознавал директивь.. пользователя, управлял индивидуaльными внешними устройствами. Функции диспетчера реализовывaлись каждой ЭМ.

Система P-программирования обеспечивала достаточно широкие возможности при производстве программ для мини -ВС МИНИМАКС и включала в себя шесть нижеследующих компонентов.

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

2. Языки P-МНЕМОКОД , P-ALGOL , P-F ORTRAN, полученные путем

расширения соответствующих языков операторами системных взаимодействий, применялись для записи параллельных алгоритмов (FORТRAN FORmula TRANslation language первый п роцедурно-ориентированный

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

340