Многопроцессорная вычислительная система — SU 670937 (original) (raw)
ОПИСАНИ ИЗОБРЕТЕН И Сова Советских Социалистических Республик(61) Дополнительное к авт, свид-ву 476352 18-24 22) Заявлено 08.04.77 (2 кп о присоединением за Государственный комитет 3) Приоритет 9. Бюллетень Ло 2 описания 30.06.79(71) Заявите 54) МНОГОПРОЦЕССОРНАЯ ВЫЧ ИСЛ ИТЕЛЪНАЯ СИСТЕМАИзобретение относится к вычислительной технике, в частности к проектированию многопрограммных, многопроцессорных систем.Известна многопроцессорная вычисли тельная система 11, содержащая связанные между собой процессоры, блок управления прерыванием и оперативное запоминающее устройство (ОЗУ), причем каждый процессор включает в себя блок сопряжения с 10 ОЗУ, операционный блок, блок управления и синхронизации, регистр текущего приоритета, схемы сравнения и блок контроля.К недостатку данной системы относятся большие затраты врсмени на персключе ние задач.Из известных многопроцессорных вычислительных систем наиболес близкой по технической сущности к изобретению является многопроцессорная вычислительная 20 система 2, Она содержит процессоры, устройство управления прерыванием и оперативное запоминающее устройство, входы и выходы которого соединены соответственно с первыми выходом и входом каждого 25 из процессоров, второй выход каждого из процессоров подключен к соответствующим входам других процессоров, причем каждый из процессоров содержит блок сопряжения, первые вход и выход которого сое- ЗЭ динены соответственно с первыми входом и выходом процессора, блок выполнения операций, первый выход которого соединен с вторым входом блока сопряжения, второй выход которого соединен с первым входом блока выполнения операций, вторым выходом подключенного к входу блока контроля, Выход блока контроля соединен с первым входом блока управления и синхронизации, первый выход которого связан с вторым входом блока выполнения операцш, третий выход которого через последовательно соединенные первый элемент И и элемент ИЛИ подключен к первому входу регистра текущего приоритета. Второй вход последнего соединен с вторым выходом блока управления и синхронизации, а выход - с вторым входом процессора, первым входом схемы сравнения приоритетов и первым входом схемы сравнения, выход которой соединен с вторым входом блока управления и синхронизации, третьим выходом подключенного через группу триггеров блокировки к первым входам группы элементов И, вторыс входы которых соединены с соответствующими входами процессора, а выходы - с входами схемы сравнения приоритетов. Выход последней связан с ьторым входом схемы сравнения, третий вход которой соединен с вторымвходом процессора и с первым входом второго элемента И, выход которого подключен к входу элемента ИЛИ, а второй вход соединен с вторым входом первого элемента И и четвертым выходом блока управления и синхронизации.Недостатками известной многопроцессорной вычислительной системы являются большие затраты оборудования на реализацию приоритетного распределения задач по процессорам и большие затраты времени на переключение задач.Цель изобретения - упрощение и увеличение быстродействия системы.Г 1 оставлснная цель достигается тем, что в многопроцессорной вычислительной системе устройство управления прерыванием содержит блок приоритетного выбора запросов, блок установки регистра заполненных очередей, регистр заполненных очередей и блок определения старшей единицы, причем третьи выходы процессоров соединены с входами устройства управления прерыванием и входами блока приоритетного выбора запросов, выходом подключенного к входу блока установки регистра заполненных очередей, выход которого через регистр заполненных очередей соединен с входом блока определения старшей единицы, выходом связанного с выходом устройства управления прерыванием и с вторым входом каждого из процессоров, третий выход которого подключен к первому выходу введенного в каждый процессор блока занесения в очередь, второй выход которого соединен с третьим входом блока сопряжения, а вход - с четвертым выходом блока выполнения операций.Схема системы показана на чертеже, Она содержит процессоры 1, оперативное запоминающее устройство (ОЗУ) 2, устройство 3 управления прерыванием, причем каждый из процессоров включает в себя блок 4 сопряжения, блок 5 выполнения операций, блок 6 управления и синхронизации, блок 7 контроля, регистр 8 текущего приоритета, схему 9 сравнения приоритетов, схему 10 сравнения, блок 11 занесения в очередь, Устройство 3 управления прерыванием содержит блок 12 приоритетного выбора запросов, блок 13 установки регистра заполненных очередей, регистр 14 заполненных очередей, блок 15 определения старшей единицы. В вычислительную систему входят также элементы И 16, 17, группа элементов И 18, 19, элемент ИЛИ 20, группа триггеров 21, 22 блокировки.Обработка информации в процессоре 1 производится блоком 5, который обменивается информацией с ОЗУ 2 с помощью блока 4 сопряжения. Управляющие и синхронизирующие импульсы, необходимые для функционирования процессора, вырабатываются блоком 6 управления и синхронизации. При этом первый его выход син 5 10 15 20 25 30 35 40 45 50 55 бО 65 хронизирует работу блока 5, второй выход - изменение регистра 8 текущего приоритета, третий выход - прием информации в триггеры 21, 22 блокировки, а четвертый выход - прием информации в регистр 8 текущего приоритета,Блок 7 контролирует работу блока 5.Г 1 ри наличии сбоя блок 7 контроля передает информацию о сбое в блок 6 управленияи синхронизации, который через четвертыйвыход устанавливает наивысший приоритетв регистре 8 текущего приоритета и осуществляет переход в диагностический режимдля локализации места неисправности.Многопрограммная работа в данной многопроцессорной системе организуется следующим образом,Операционная система, размещая программы в памяти, присваивает каждой программе приоритет (возможно присвоениеодинакового приоритета нескольким программам). Для каждого из возможных значений приоритета операционная системаформирует очередь программ. При этомчасть очередей может быть пустой, если втекущий момент в системе отсутствуют заявки на выполнение программ с даннымиприоритетами,Распределение программ по процессорампроисходит с помощью устройства 3 управления прерыванием. Занесение программыв очередь процессором 1 осуществляетсяпутем передачи информации из блока 5 через его четвертый выход в блок 11 занесения в очередь, который через второй выходпередает информацию программы в ОЗУ 2,а через первый выход - запрос и номерприоритета программы на третий выходпроцессора 1, который соединен с входомблока 12. Блок 12 приоритетного выборазапросов при одновременном обращении кнему нескольких процессоров 1 выбираетнаиболее приоритетный (по позиционномуприоритету) и передает номер приоритетапрограммы в блок 13 установки регистразаполненных очередей, который устанавливает в 1 соответствующий разряд в регистре 14.Таким образом, по мере занесения операционной системой программы в очередиразных приоритетов в регистре 14 устанавливаются единицы в разрядах, соответствующих приоритетам непустых очередей.Блок 15 определения старшей единицыформирует на выходе двоичный код наиболее приоритетной непустой очереди,При выполнении текущей программы напроцессоре 1 блок 5 через схемы И 17,ИЛИ 20 заносит приоритет выполняемойпрограммы в регистр 8 текущего приоритета.Аппаратура процессоров непрерывносравнивает приоритеты выполняемых программ во всех процессорах и тот процессор,чья программа имеет самый низкий приоритет, становится кандидатом на прерывание, Этот процессор по состоянию регистра 14 проверяет, есть ли в списке очередей программа с приоритетом более высоким, чем та, которую он исполняет. Если такая программа есть, то процессор - кандидат на прерывание прерывает исполнение текущей программы, заносит ее в список очередей и выбирает из списка для исполнения программу с высшим приоритетом.Работает аппаратура следующим образом.В каждом процессоре схема 9 сравнивает текущие приоритеты данного и других процессоров и вырабатывает на выходе единичный сигнал, если текущий приоритет данного процессора меньше текущих приоритетов других процессоров. Группа элементов И 18, 19, управляемых триггерами 21, 22 блокировки, служит для отключения от схемы 9 сравнения приоритетов процессоров, которые не участвуют в работе (например, процессоров, в которых зафиксирован отказ или которые находятся на профилактике). Установка триггеров блокировки осуществляется операционной системой через третий выход блока 6 управления и синхронизации,При наличии единицы на выходе схемы 9 сравнения приоритетов включается схема 10, которая сравнивает содержимое регистра 8 текущего приоритета с выходом блока 15 определения старшей единицы устройства 3 управления прерыванием. Если содержимое регистра текущего приоритета меньше кода на выходе блока определения старшей единицы, то это означает, что в списке очередей есть программа с приоритетом более высоким, чем программа, исполняемая данным процессором.При этом выходной сигнал со схемы 10 сравнения поступает на второй вход блока 6 управления и синхронизации, который через блок 5 и блок 11 осуществляет занесение в очередь текущей программы, а через блок 4 сопряжения - выборку из ОЗУ 2 задачи из очереди с приоритетом, соответствующим коду на выходе блока 15 определения старшей единицы. Если из очереди данного приоритета выбрана последняя программа, то блок 5 через блоки 11, 12 и 13 гасит соответствующий разряд регистра 14.Таким образом, устройство 3 управления прерыванием осуществляет распределение программ по процессорам 1, выбирая из очередей программы высшего приоритета.Введение регистра 14 заполненных очередей и блока 15 определения старшей единицы в устройство 3 управления прерыванием позволяет непрерывно сравнивать приоритеты задач, решаемых на процессорах 1, и задач, занесенных в приоритетные очереди, Это сокращает время переключе ния задач и повышает быстродействие системы. 5 10 15 20 25 Многопроцессорная вычислительная система, содержащая процессоры, устройство управления прерыванием и оперативное запоминающее устройство, входы и выходы которого соединены соответственно с первыми выходом и входом каждого из процессоров, второй выход каждого из процессоров соединен с соответствующими входами других процессоров, причем каждый из процессоров включает блок сопряжения, первые вход н выход которого соединены соответственно с первыми входом и выходом процессора, блок выполнения операций, первый выход которого соединен с вторым входом блока сопряжения, второй выход которого соединен с первым входом блока выполнения операций, второй выход которого соединен с входом блока контроля, выход которого соединен с первым входом блока управления и синхронизации, первый выход которого соединен с вторым входом блока выполнения операций, третий выход которого через последовательно соединенные первый элемент И и элемент ИЛИ подключен к первому входу регистра текущего приоритета, второй вход которого соединен с вторым выходом блока управления и синхронизации, а выход соединен с вторым входом процессора, первым входом схемы сравнения приоритетов и первым входом схемы сравнения, выход которой соединен с вторым входом блока управления и синхронизации, третий выход которого через группу триггеров блокировки соединен с первыми входами группы элементов И, вторые входы которых соединены с соответствующими входами процессора, а выходы - с входами схемы сравнения приоритетов, выход которой соединен с вторым входом схемы сравнения, третий вход которой соединен с вторым входом процессора и с первым входом второго элемента И, выход которого подключен к входу элемента ИЛИ, а второй вход соединен с вторым входом первого элемента И и четвертым выходом блока управления и синхронизации, о тл ич а ю щ а я с я тем, что, с целью упрощения и увеличения быстродействия, в ней устройство управления прерыванием содержит блок приоритетного выбора запросов, блок установки регистра заполненных очередей, регистр заполненных очередей и блок опрсделения старшей единицы, причем третьи выходы процессоров соединены с входами устройства управления прерыванием и входами блока приоритетного выбора запросов, выход которого соединен с входом блока установки регистра заполненных оче. редей, выход которого через регистр запол. ненных очередей соединен с входом блока 30 3540 45 50 55 50 65 Формула изобретенияСоставитель А. ЖереновТехред А, Камышникова едактор И. екторы: В. Дод и Л. Брахнина каз 1310712ЦНИИП Изд,388ПО Поиск Государпо делам изобретениПодписноеСР 130 Типография, пр. Сапунова,определения старшей единицы, выход которого соединен с выходом устройства управления прерыванием и вторым входом каждого из процессоров, третий выход которого соединен с первым выходом введенного в каждый процессор блока занесения в очередь, второй выход которого соединен с третьим входом блока сопряжения, а вход 8соединен с четвертым выходом блока выполнения операцийИсточники информации,принятые во внимание при экспертизе5 1. Патент США3533082, кл. 340 - 172.5,опублик, 1970.2. Патент США3421150, кл. 340 - 172.5,опублик. 1969.