Устройство для распределения заданий процессорам
Иллюстрации
Показать всеРеферат
Изобретение относится к вычислительной технике и может быть использовано з процессорных системах при распределениизаявок между процессорами. Цель изобретения - расширекие области применения устройства за счет обслуживания запросов а зависимости от частоты их поступления. Устройство для распределения заданий процессорам содержит каналы, каждыу"^ канал имеет подкзна.г-ы, включающие элемент ИЛИ, коммутатор, узел приоритета, регистр, генератор импульсов, распределитель импульсов, два дешифратора, две группы злемеитоь И, блок сравнения, эле- .мент И, формирователь импульсов, узел выбора задания, блок определения минимума. УсгройстБо позвопяет повысить загруженность процессоров и, следовательно, снизить вре.мя ожидания заданий Б очереди. 1 з.п. ф-лы. 6 ил.Устройство относится к вычислительной технике и может быть использовано в многопроцессорных системах при распределении заявок между процессорами.Известно устройство для распределения заданий процессорам [1], содержащее каналы, а в каждом канале - узел приоритета, и группу подканалов, каждый из которых содержит элемент ИЛИ, счетчик, в каждом подканале группы, кроме первого, элемент запрета, причем запросные входы устройства подключены к суммирующим входам счетчиков соответствующих подканалоз, вычитающие входы которых являются ответными входами устройства, информационные выходы счетчиков подключены к выходам элементов ИЛИ своих подканалоз группы, выходы которых подключены к входам у зла приоритета своего канала.Недостатком и.звестного устройства являются узкая область применения и низкая достоверность работы.Наиболее близким техническим решением к предлагаемому янтяется устройство для распределени.я заданий процессорам [2], принятое за прототип, содержащее каналы, в каждом канале - узел приоритета, триггер и группу подканалов, каждый из которых содержит элемент ИЛИ и счетчик, причем Б каждом подканале, кроме первого, содержится элемент запрета, а в первом кзнале - дополнительный элемент ИЛИ. причем запросные входы устройства подключены к суммирующим входам счетчиков соответствующих подканалов, вычитающие входы которых являются ответными входами устройства, информационные входы счетчиков подк/-;Ючены к входам элементов ИЛИ своих подканалов группы, выходы которых подключены к входам узла приорите-Г"'"литV,( >&
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСГ1УВЛИК .78ОО87 А1,;:;s G 06 Р 9/46
ГОСУДАРСТВЕННОЕ ПАТЕНТНОЕ
ВЕДОМОTBO СССР (ГОСПАТЕНТ СССР) СПИСАНИЕ lx13G!=- :-" : ..::!-:1
К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (21) 4891967/24 (22) 17.12.90 (46) 07.12.92. Бюл. 1¹ 45 (71) Московский институт инженеров гражданской авиации (72) С.Ж.Кишенский, Н.С.Вдовиченко и
Б.Б.Панова и 0.1О.Христенко (56) Авторское свидетельство СССР
N. 1399739. кл. G 06 F 9/46 1984, Авторское свидетельство СССР
N - 1509891, кл. G 06 г 9/46, 1987. (54) УСТРОЙСТВО ДЛЯ РАСП РЕДЕЛ Е Н ИИ
ЗАДАНИЙ ПРОЦЕССОРАМ (57) Изобретение относится к вычисл .тельной технике и может быть использсвано з процессорных системах при распределении
Устройство относится к вычислительной технике и может быть использовано в многопроцессорных системах при распределении заявок между процессорами.
Известно устройство для распределенля заданий процессорам (1), содержащее каналы, а в каждом канале — узел приоритета, и группу подканалов. каждый из которых содержит элемент ИЛИ, счетчик, в каждом подканале группы, кроме первого, элемент запрета, причем запросные входы устройства подключены к суммирующим входам счетчиков соответствующих подканалоз, вычитающие входы которых являются огветными входами устройства, информационные выходы счетчиков подKëþ÷åíü к выходам элементов ИЛИ своих падка-:àëîâ группы, выходы которых подключены к входам у зла приоритета своего канала. заявок между процессорами. Цель изобретения — расширение области применения устройства 3а с1еТ обслуживания запросов в завислмости от частоты их поступления.
Устройство для распределения заданий процесг орам содержит каналы, каждый канал имеет подканалы, включающие элемент
ИЛИ, коммута1ср, узел приоритета, регистр, генератср и ипульсов, распределитель импульсов, два дешифратора, две группь: злементоь И, блок сраьнения, элемент И, формирователь имг1ульсов, узел ьыбора задания, блок определения минимума.
Ус.ройство позволяет повысить загруженность процессоров и, следовательно, снизить вре:"ия ожидания заданий в очереди. 1 з.п. ф-лы, 6 ил.!
- едостатком известного устройства явля отея узкая облас, ь применения и низкая достоверность оаботь.
1- аиболее близким техническим решен::;е к предлагаемому является устройство для распределения заданий процессорам
l2j, принятое за прототип. содержащее ка,-ялы. в каждом канале — узел приоритета, трл-:гер и группу подканалов, каждый из Которых содержит элемент ИЛИ и счетчик, причем в каждом подканале, кроме первого. содержится элемент запрета, а в первом кснanе — дополнительный элемент ИЛИ, причем запросные входы устройства подключены к суммиру ощим входам счетчиков соответствующих ""îä .àíàëîâ, вы" итающие влое;ы K0Topblx являют я от ве ными входа ми усгройства. информационные входы счетчиков подключены к входам элементов
ИЛИ своих подканалов группы, выходы котор-!Х подключены к входам узла приорите1
j Ill%
ОО (3, C) !
М
,1
1780087 та своего канала, выход триггера является соответствующим сигнальным выходом устройства и подключен к инверсным входам элементов запрета всех подканалов данного канала, выходы элементов запрета являются соответствуюшими информационными выходами устройства, выход элемента ИЛИ первого подканала группы является соответствующим информационным выходом устроиства, выход элемента ИЛИ второго подканала устройства соединен с прямым входом элемента запрета своего подканала группы, прямой вход элемента запрета каждого подканала группы, начиная с второго, соединен с выходом, начиная с первого, узла приоритета данного канала, выход переполнения счетчика первого подканала группы соединен с единичным входом триггера данного канала, нулевой вход триггера каждого канала является соответствующим входом конца обслуживания устройства, и соединен с дополнительным элементом ИЛИ первого подканала группы данного канала, выход которого соединен с вычитающим входом счетчика своего подканала группы, второй вход дополнительного элемента
ИЛИ первого подканала группы соединен с соогве-.ствующим ответным входом устройтва, Недостатком известного устройства, является узкая область применения. Действительно, в прототипе лишь один канал может стать "критическим", требующим первоочередного обслу>кивания, в то время
KBI: при определенных ситуациях возмо>кно с точки зрения пользователя требование предоставления ряду каналов требования
"критичности". В работе прототипа также возникают ситуации, при которых работа прототипа неясна, и некорректна; так, недостатком прототипа является отсутствие "гистерезиса" при включении и выключении
"критического" потока — первая же после включения обслуженная заявка, выводит поток из состояния "критического". а первая же вновь поступившая заявка снова возвращает этот поток в критическое состояние; этот факт затрудняет, а в некоторых ситуациях. в связи с нерешенными вопросами взаимодействия устройства с процессорами (приведенными при обсуждении эффективности заявляемого устройства) затрудняет выбор обьема буферных регистров по потокам заявок, и нарушает корректность работы прототипа. Процедура обслуживания заявок, обеспечиваемая прототипом, таким образом, является недостаточно гибкой для организации распределения заявок(заданий) процессо30
55 дый подканал введены два регистра, два блока сравнения, два формирователя импульсов, два элемента И и триггер, причем в каждом канале устройства первые и вторые выходы подканалов соединены соответственно с первой и второй группой входов коммутатора, выходы узла приоритета подключены к информационным входам регистра, выходы которого соединены с входами первой группы блока сравнения и с первыми группами входов узлов выбора задания группы, вторые группы входов которых являются информационными входами канала, первые входы — ответными входами канала, а вторые выходы являются информационными выходами канала и соединены с входами блока определения минимума, первая группа выходов которого соединена с первой группой входов блока сравнения и с входами первого дешифратора, а вторая группа выходов блока определения минимума соединена с входами второго дешифратора, выходы первого и второго дешифраторов соединены соответственно с первыми входами элементов И второй и первой групп, вторые входы которых соединены с выходом формирователя импульсов, выходы элементов И первой группы соединены с вторыми входами соответствующих узлов выбора задания, и являются выходами управляющими канала, выходы элементов И второй группы соединены с вычитающими входами счетчиков соответствующих подканалов, выход генератора тактовых импульрам при произвольных требованиях пользователя к "критичности" отдельных потоков и критериях этой "критичности", Целью изобретения является расширение области применения за счет обслуживаний запросов в зависимости от частоты их поступления.
Поставленная цель достигается тем, что в устройство для распределения заданий процессорам, содержащее каналы, каждый из которых содержит узел приоритета и группы подканалов, каждый из которых содержит элемент ИЛИ и счетчик, причем запросные входы канала соединены с суммирующими входами счетчиков соответ- ствующих подканалов, в каждом подканале выходы счетчика соединены с входами элемента ИЛИ своего подканала, выход которого является первым выходом подканала, введены в каждый канал регистр, генератор тактовых импульсов, распределитель импульсов, группа узлов выбора задания, блок определения минимума, блок сравнения, элемент И, формирователь импульсов, два дешифратора, две группы элементов И. элемент ИЛИ и коммутатор, причем в каж1780087 сов соединен с входом распределителя импульсов, первый выход которого подключен к третьим входам всех узлов выбора задания, и к синхровходу регистра, второй выход — к первому входу элемента И, второй вход и выход которого соединены соответственно с выходом блока сравнения и с входом формирователя импульсов, в каждом подканале канала выходы первого и второго регистров соединены с первыми входами соответственно первого и второго блоков сравнения, вторые входы которых подключены к выходам счетчика, выходы первого и второго блоков сравнения соединены соответственно с входами первого и второго формирователей импульсов, выходы которых соединены соответственно с первыми входами первого и второго элементов И, выходы которых соединены соответственно с единичным и нулевым входами триггера, прямой и инверсный выходы которого соединены соответственно с вторыми входами второго и первого элементов И, прямой выход триггера является вторым выходом соответствующего подканала, кроме этого в каждом канале вторые выходы подканалов соединены с входами элемента ИЛИ, выход которого соединен с управляющим входом коммутатора, сигнальным входом узла приоритета и является сигнальным выходом канала устройства.
На фиг, 1 приведена структурная схема устройства для распределения заданий процессорам; на фиг. 2 — структурная схема подканала; на фиг. 3 — структурная схема блока опредедения минимума; на фиг. 4— структурная схема узла попарного упорядочения чисел, входящего в состав блока определения минимума; на фиг. 5 структурная схема узла приоритета; на фиг, 6 — структурная схема узла выбора задания.
Устройство для распределения заданий процессорам (фиг. 1) содержит каналы 1, каждый канал (их структура идентична) содержит подканалы 2 -2к, узел 3 приоритета, регистр 4, группу 5 -5м узлов выбора заданий (число которых равно числу процессоров, обслуживающих данный канал 1), блок
6 определения минимума, генератор 7 тактовых импульсов, распределитель 8 импульсов, блок 9 сравнения, элемент И 10, формирователь 11 импульсов, дешифраторы 12, 13, группы элементов И 14 и 5, элемент ИЛИ 16, коммутатор 17, управляющий вход 1 коммутатора 12, Запросные входы
19>-19к устройства соединены с первыми входами соответствующих подканалов 2.
Группы информационных входов 20>-20м канала 1 соединены с соответствующими группами входов соответствующих узлов 5.
Входы 21 -21м являются ответными входами и соединены с входами соответствующих узлов 5 канала. Группы выходов 22 -22м узлов 5 соответственно являются информационными выходами канала. выходы ?3 -23м элементов И группы 14 являются управляющими выходами канала и соединены с входами соответствующих узлов 5 того же канала. Первые 24 выходы подканалов 2 соединены с входами элемента ИЛИ t6 и с первой группой информационных входов блока 17; вторые выходы 25>-25к подканалов 2 соединены с входами второй группы информационных входов блока 17. Выходы
26 элементов И группы 15 соединены с вычитающими входами соответствующих подканалов 2, Выходы 27 блока 3 подключены к информационным входам регистра 4, выходы 28 которого соединены с вторыми группами входов всех узлов 5, Первый выход 29 распределителя 8 импульсов соединен с соответствующими входами всех узлов 5 и с синхровходом регистра 4. Второй выход 30 блока 8 соединен с входом элемента И 10. Группа выходов
31 блока 6 соединена с входами блоков 9 и
13, Вторая 32 группа выходов блока 6 соединена с входами блока 12.
Каждый подканал (фиг, 2) содержит реверсивный счетчик 33, регистры 34, 35, блоки 36, 37 сравнения, формирователи 38, 39 импульсов, элементы И 40, 41 элемент ИЛИ
42, триггер 43. Суммирующий и вычитающий входы счетчика ЗЗ соединены соответственно с входами 1Д и 26 данного подканала. Группы информационных входов 44, и 44 регистров 34 и 35 соответственно являются установочными входами данного подканала. Синхровходы 45 и 452 регистров 34 и 35 -оответственно подканала являются синхровходами данного подканала.
Блок определения минимума 6 (фиг, 3) содержит регистры 46 (M штук) и группу ступеней, соединенных по пирамидальному принципу. (Информационные и синхровходы регистров 46 не показаны), К каждому узлу 47 попарного упорядочения чисел первой ступени подключены выходы пары регистров 48 и пары ссответствующих входов 22 (соответственно обозначенные входами 49 и 48 узла 47). Далее, по пирамидальному принципу, соединяются узлы 47 предыдущих и последующих ступеней. Единственный узел 47 последней ступени имеет выходы 48 и 49 (соответственно цыходы 31 и 32 блока 6).
Каждый узел попарного упорядочения чисел 47 (фиг. 4} содержит блок 50 сравнения и коммутаторы 51, 52. Входы 22 (48 ) и
1780087
22i+1 (48н-1) узла 47 соединены с первыми и вторыми входами блоков 50 и 51, выход блока 50 соединен с управляющими входами блоков 51 и 52, Входы 49 и 49н-1 узла 47 соединены с первой и второй группами информационных входов блока 52, Выходы блоков 51 и 52 являются соответственно группами выходов 48 и 49 устройства 47(для последней ступени — соответственно выходами 31 и 32 устройства 6).
Узел 3 приоритета (фиг. 5) содержит группу элементов HE 532-53к, и группу элементов И 54>-54к-1 и шифратор 55.
Узел 5 выбора. заданий (фиг, 6) содержит коммутатор 56, регистр 57, элемент И
58, элемент 59 задержки и элемент ИЛИ 60, Устройство работает следующим образом, В общем принцип работы устройства состоит в периодическом анализе совокуп° ности заявок разного приоритета, ожидающих в очереди и распределения заявки максимального приоритета (e каждом такте работы устройства) процессору, выполняющему обработку задания с низшим среди всех процессоров приоритетом (естественно, в том случае, когда ожидающая заявка 1еет риоритет выше, IGM выполняемая данным процессорсм в текущем такте анализа). При прерывании выполнения текущего задания и загрузке нового, прерванное задание не теряется, а запоминается процессором (например, в стеке), и при окончании обслуживания задания более высокого приоритета, вновь предлагается к выполнению данным процессором, и выполняется им, если в очереди нет заявок более высокого приоритета. Окончание обслуживания некоторой заявки процессором, если в его стеке нет прерванной заявки, освобождает процессор, и заявляемое ус ройство распределяет ему новое задание (если очередь заданий не пуста). Всего в заявляемом устройстве имеется N идентичных каналов, так что рассматриваться будет один из них, например, канал 11. К каждому каналу подключаются Мпроцессоров,,которые идентичны по принципу действия и характеристикам (относительно заявляемого устройства). (Конкретные типы процессоров B заявляемом устройстве не показаны и не рассматриваются; их работа для заявляемого устройства определена внешними к данному устройству сигналами, вырабатываемыми процессорами и принимаемыми ими от устройства.
В канале имеется К подкэналов, каждый из которых работает со своим типом . заданий, разделяемых по приоритетам, причем чем больше номер канала (подкана20
25. ветствующего буфера заданий. Триггеры 43
50 — в нулевом состоянии (на прямых выходах — нулевые потенциалы), На выходах элемен55
45 ла 2), тем выше относительный приоритет соответствующего типа заданий, В заявляемом устройстве предусмотрен переход в режим "критических потоков" — при превышении числом заданий любого типа некоторого заданного числа (порогового)— данный тип заданий приобретает приоритет больше любого типа, число заданий в котором не больше порогового; так как при определенных ситуациях несколько типов заданий могут превысить пороговое значение (по числу заданий соответствующего типа в очереди), то для совокупности
"критических" потоков также предусмотрено приоритетное обслуживание, причем
-приоритеты распределяются также, как и для "некритических потоков" — чем больше номер подканала, тем выше приоритет заданий, поток которых считается критическим.
Таким образом, общий поток обрабатываемых заданий состоит из выполняемых в первую очередь (в порядке приоритета) заданий критических потоков), и затем — в порядке аналогичного приоритета — заданий потоков, не являющихся критическими.
В исходном состоянии узлы устройства (предположим, что в начале работы заявок нет), имеет следующие состояния; генератор 7 тактовых импульсов не формирует импульсов, на выходах распределителя 8 (кольцевого) — нулевые потенциалы; регистр
4 имеет нулевое содержимое, счетчики 33133к — тоже; в регистры 34 и 35 занесены двоичные коды, соответствующие для регистра 34- границы, при превышении которой содержимым соответствующего счетчика 33 поток считается критическим; в регистр 35— двоичный код, задающий нижнюю границу, ниже которой (при обслуживании заданий данного потока) уменьшающийся поток заявок данного типа перестает считаться критическим. (Таким образом, в заявляемом устройстве реализуется "гистерезис", обеспечивающий надежное — по потребностям пользователя — выполнение заданий некоторого потока, становящегося критическим для реализации "запаса" по снятию его критичности, т.е. степени освобождения сооттов ИЛИ 42 — (выходах 25) — нулевые потенциалы, на выходах 24 — тоже, следовательно на выходе элемента ИЛИ 16 — нулевой потенциал. под управлением которого коммутатар 17 коммутирует на свои выходы 27 сигналы с входов 25, В регистры 461 46М занесены двоичные коды соответственно чисел с "1" по "М" (определяющие номера процессоров); (цепи записи и данных для
1780087
10 регистров 46 на фиг. не показаны). На выходах 48 и 49 узла 47 последней ступени (выходах 31 и 32 блока 6) — нулевые коды, сигнал с выхода блока сравнения 9 — нулевой. Элементы И групп 14 и 15 закрыты.
Регистры 57 блоков 5 обнулены, Цепи начальной установки устройства на фиг, не показаны.
После включения устройства и отсутствия заданий на входах — т,е., отсутствия очереди, заявляемое устройство не изменяет своего состояния и не формирует сигналов распределения, независимо от работы генератора 7 и распределителя 8, который поочередно выдает по тактовым импульсам сигналы на выходах 29 и 30.
Распределение заявок начинается при поступлении импульсов на входы 19 канала.
Поскольку работа устройства мало отличается вне зависимости от конкретных характеристик очереди и загруженности процессоров, рассмотрим его работу в наиболее общем случае — при загруженности всех процессоров и некоторой очереди заданий всех потоков.
Очередным тактом работы распределитель 8 переводится в состояние, при котором на выходе 29 — положительный потенциал, а на выходе 30 — нулевой. В этом такте работы осуществляется анализ окончания выполнения заданий процессорами (параллельно для всех процессоров). К этому моменту времени в счетчиках 33 содержатся числа, соответствующие количеству заявок соответствующих потоков заданий (в счетчике 33 — низшего, а в счетчике 33к — высшего приоритета), Предположим, что все счетчики содержат коды, не превышающие верхних границ в регистрах
34), т,е. все потоки не являются критическими, В этом случае триггеры 43 всех блоков 2 находятся в нулевом состоянии, на выходе элемента ИЛИ 16 — нулевой сигнал, на выходы коммутатора (выполненного, например, как мультиплексор) — сигналы с входов
25, представляющие в совокупности код, в котором единичные значения соответствующих разрядов соответствуют наличию заданий данной типа (приоритета). Этот код с .выхода 27 поступает в узел приоритета 3 (фиг, 5), где на элементах НЕ 53 и И 54 преобразуется в позиционный единичный код, единственная единица которого расположена в разряде, соответствующем номеру подканала максимального приоритета, в котором имеется очередь заданий. В шифраторе 55 этот позиционный код преобразуется в,цвоичный: старший разряд выходного кода узла приоритета 3 образуется от элемента ИЛИ 16. Таким образом, на
55 выходах узла 3 формируется код, соответствующий (без старшего разряда) номеру канала 2, из которого задание с наивысшим приоритетом готово к выдаче в процессор (который выбирается далее). По положительному фронту сигнала с выхода 29 распределителя 8 данный двоичный код записывается в регистр 4. Одновременно во всех узлах 5 -5у выборки задания производится анализ окончания выполнения заданий соответствующими процессорами.
Процессоры по окончании выполнения задания выставляют положительный потенциал на соответствующем выходе 21 и код на выходе 20: этот код, в случае наличия в соответствующем процессоре прерванного ранее задания соответствует его приоритету, а в случае отсутствия прерванного задания, код на выходах — 20 — нулевой. если же в момент подачи сигнала с выхода 29 процессор не закончил выполнение задания, на выходе 21 нет сигнала, и на выходах 20— тоже; (следует отметить, что в процессе выполнения некоторым процессором определенного задания, код этого задания — его приоритет — записан в соответствующем регистре 57).
Если процессор не закончил выполнение задания, то элемент И 58 в данном такте закрыт, и в данном узле 5 ничего не происходит, Если процессор закончил выполнение задания, то на выходе элемента И 58 по сигналу с выхода 29 формируется положительный потенциал, переключающий коммутатор 56 таким образом, что íà его выходы коммутируются сигналы с входов
20, на которых как сказано выше — либо нулевой код, либо код приоритета прерванного задания; этот код записывается в регистр 57 синхросигналом (его положительным фронтом), прошедшим через элементы задержки 59 и ИЛИ 60.
Такие процессы происходят во всех узлах 5 параллельно. Коды, сформированные в данном такте в регистрах 57 по выходам 22 поступают в блок определения минимума. на выходе которого — формируется на выходах 31 — минимальный код приоритета среди всех заданий, выполняемых в текущий момент времени процессорами, а на выходах 32 — соответствующий номер процессора, выполняющего это задание низшего приоритета. Минимальный код с выхода 31 поступает на блок сравнения 9; на второй его вход поступает код наивысшего приоритета задания, ожидающего обслуживания. В том случае, когда последний код(с выхода регистра 4) больше кода с выходом
31, блок 9 выдает на выходе положительный импульс. (Это означает ситуацию, когда в
55
:-)ро!!ессоре, выполняющем задание с низшим среди всех процессорон пр)лоритетом, следует = ямгнить данное задание ня новое, ; "-..I: кяк новое имеет более высокил приори-;,< >-)
С)д! IDBðBìBHH0 д: оичньп. код с выходов
32 l!îcòóïàåò НЯ дешифратср ".2; н котором
-,0B=б=Язуется в пазлционный код, количгс". »0 1)язрядов:<Отарого раннО M и единст ненняя е,;.-.:,и :-!»)ца соответствует номеру
-,;0ö8cc0p» (пола>кение данной едичицы), в
<отаром заменяется задание. !
=Спи ма:<ю!мальь)ый кОД GT рсГистра 4
18ньше(или I)BBBH) коду с выхода 3 1, блок 9 не выдает сигнала — это означает, что HBT снободн -Гх працессорон, либо — нет процесс<)ров, ныг!Ол)ня!Ощ!)<х задания, приоритет которых меньше выбранного блоком 3, либо нег задан:III н очереди. Если же код с регистра 4 больше, па следующему такту, --.: ьпяющлмся лмпупьсом ня выходе 30, по:::",п.-,ется с :;:гн=-": на выходе элемента И 10 и
< ;;кп >озателя импульсон 11 (длительность
I!.. ì0óëüc» на выходе которого достаточн» для Осуществления зяписл н саответстнуюLL, iI!I 0p0 8СС0р H0B0f 0»»p»H ISi), Импу Ib со"1 с;! Ормирователя 11 Открыва!Отся .;i,;.: »; ы N;-руппы 14.: я выход: 2", соотi=. .: .T:> ó >О! !,BM нь,бp»нна!" >y )p:)Ll, Г соp, па— е ii - " I я .л> l >»л, зги! у с кя ю щий и рОцесс нь)д.;чи задания I-p0I Bccopy (н процессоре
Г!Ро .IC<0piit ????????????????)??8 ?? ci)> 4»8 ВЫПОЛН8-! .)у!я — з»ДЯ)!)> я с 00>IBB низким приоритетом, » :над нового, код которого — вернее, номер пэдканэ)!а, из котОООГО берется задание, нь1:гетс.":. Из со0i.нстству!Ощего регистра 57).
Р блоке.) выбранi;0!T процессора сигнала)и
"- ыхода 23 через элемен ИЛИ 60 в регисто
57 записывается кад (I I pl!Iop!!ITBT) нано! 0 заД»1)ия; н,га н! !Ом такте каммутатаа 56 соеДи)яет на свои выходы входы 28 от регистра 4.
Таким образом завершается процесс расг)ределения некоторого задания. Б следу)агцей пяое та, <тов процесс продолжается
» I-I:!i) 0Ãi1>>НО.
Следует отметить, что сигнал с выхода форм ipGB»TBëÿ 11 кроме того открывает с0ответствующий элемент И группы 15, и сигналам с соответствующего ьыходя дешифратора 13 в блоке 2, выбранного на обработку задания, счетчик ЗЗ уменьшает содержимое на единицу; )лначе говоря, MBHbUUBHNB очереди B заявляемом устралстнэ праизнадитс>! н момент принятия зада н ля н» обработку соответствующим процессорам.
Рассмотрим работу блока 2.
При превышении содержимым счетчика
33 содержимого регистра 34 данный поток переходит в "критический": срабатывает по выходу "Больше" блок сравнения 36, формирователь 38 импульсов выдает импульс, который, проходя через открытый (положительным потенциалом — н исходном состоянии — с инверсного выхода триггера
43) элемент И 40, и триггер 43 устанавливается в единичное состояние, фиксируя переход потока заданий,ванного типа в критический режим. В дальнейшем состояI-iI«B критического режима для данного потока сохраняется до тех пар, пока, по мере обработки заданий, содержимое счетчика
33 не станет меньше содержимого регистра
37; при этом срабатывает па выходу "Меньше" блок сравнения 37 и через формирователь 39 и элемент И 41 триггер 43 возвращ!ается в нулевое состояние.
Наличие хотя бы одного критического потока фиксируется элементом ИЛИ 16, который переключает коммутатор на выходы триггеров 43 подканалов 2 — таким образок1, обеспечивается приоритет критического (критических, если лх — несколько) потока перед некритическими. Среди критических
;,îò0êîí, если их несколько, Организуется
BH»ëîãè÷í»ÿ дисциплина приоритетного обслу>кивяния, как и среди некритических.
1ри этом сигнал с выхода элемента ИЛИ 16 используется в устройстве 6 и в узлах 5 в ка-:ес-:не указателя на то, что обрабатывается именно критлческий поток (будучи старшим разрядом, этот сигнал обеспечивает s савоку ности кодов заведомое превышение гнабым кодом критического потока либо кода некритического потока). Для сброса (декрементирования) счетчиков 33 и выбора процессорами заданий определенного типа этот разряд не используется.
Формула изобретения
1. Устройство для распределения заданий процессорам, содержащее каналы, KG>l<дый из которых содержит узел приоритета и группу подканялов, каждый из которых содер>кит элемент ИЛИ и счетчик, причем запросные входы канала соединены с суммирующими входами счетчиков соответствующих подканалон, н каждом подканале выходы счетчика соединены с входами элемента ИЛИ своего подканала, ныходкоторога является первым выходом подканала, о тл и ч а ю щ ее с я тем, что, с целью расширения области применения за счет обслуживания запросов н занисимасти от частоты их поступления, в каждый канал введены регистр, генератор тактовых импульсон, распределитель импульсов, группа узлов выбора задания, блок определения минимум», блок сравнения, элемент И, формиронатель импульсов, два дешифратара, дне группы элементов И, э:)емент ИЛИ и комму13
1780087
40 татар, а в каждый канал введены два регистра, два блока сравнения, два формирователя импульсов, два элемента И и триггер, причем в каждом канале устройства первые и вторые выходы подканалов соединены соответственно с первой и второй группой информационных входов коммутатора, выходы узла приоритета подключены к информационной группе входов регистра, выходы которого соединены с входами первой группы блока сравнения и с первыми группами входов узлов выбора задания группы, вторые группы входов которых являются информационными входами канала, первые входы — ответными входами канала, а выходы являются информационными выходами канала и соединены с входами блока определения минимума, первая группа выходов которого соединена с второй группой входов блока сравнения и с входами первого дешифратора, а вторая группа выходов блока определения минимума соединена с входами второго дешифратора. выходы первого и второго дешифраторов соединены соответственно с первыми входами элементов И второй и первой групп, вторые входы которых соединены с выходом формирователя импульсов, выходы элементов
И первой группы соединены с вторыми входами соответствующих узлов выбора задания и являются управляющими выходами канала, выходы элементов И второй группы соединены с вычитающими входами счетчиков соответствующих подканалов, выход генератора тактовых импульсов соединен с входом распределителя импульсов, первый выход которого подключен к третьим входам всех узлов выбора задания и к синхровходу регистра, а второй выход — к первому входу элемента И, второй вход и выход которого соединены соответственно с выходом блока сравнения и с входом формирователя импульсов, в каждом подканале канала выходы первого и второго регистров соединены с первыми входами соответственно первого и второго блоков сравнения, вторые входы которых подключены к выходам счетчика, выходы первого и второго блоков сравнения соединены соответственно с входами первого и второго формирователей импульсов, выходы которых соединены соответственно с первыми входами первого и второго элементов И, выходы которых соединены соответственно с единичным и нулевым входами триггера, прямой и инверсный выходы которого соединены соответственно с вторыми входами второго и первого элементов И, прямой выход триггера является вторым выходом соответствующего подканала, кроме этого, в каждом канале вторые выходы подканалов соединены с входами элемента ИЛИ, выход которого соединен с управляющим входом коммутатора, сигнальным входом узла приоритета и является сигнальным выходом канала устройства, 2. Устройство по и. 1, о т л и ч а ю щ е ес я тем, что узел выбора задания содержит регистр, коммутатор, элементы И, ИЛИ и задержки, причем первая и вторая группы входов узла выбора задания соединены соответственно с первой и второй группой информационных входов коммутатора, выход которого является выходом узла выбора задания, первый и третий входы которого соединены с входами элемента И, выход которого соединен с управляющим входом коммутатора И, через элемент задержки — с первым входом элемента ИЛИ, второй вход и выход которого соединены соответственно с вторым входом узла выбора задания и синхровходом регистра.
1780087
1780087
1780087
Составитель С.Кишенский
Техред M.Ìîðãåíòàë Корректор M. Демчик
Рыла <тор
Лрсизводственно-издательский комбинат "Патент", г. Ужгород, ул.Гагар:на, 101
Заказ 4437 Тираж Подписное
БНИИПYi Государственного комитета по изобретениям и открытиям при ГКНТ СССР
113035. Москва, Ж-35, Раушская наб., 4/5