Мультимикропрограммная управляющая система

 

Изобретение относится к автоматике и цифровой вычислительной технике и может быть использовано в качестве управляющей подсистемы в многоуровневых системах управления сбора и обработки информации. Цель изобретения - повышение быстродействия при реализации параллельных асинхронных алгоритмов. Система содержит блоки 1.1-1.N микропрограммного управления , группу 2 элементов И, группу 3 элементов ИЛИ, блок 4 элементов ИЛИ, блок передачи адресов запуска, одновибратор 5, элемент И 6. Код операции , выполняемой системой, подается

СОЮЗ СОВЕТСНИХ

СОЦИАЛИСТИЧЕСНИХ

РЕСПУБЛИН (g1)g С Об F 9/22, 9/00 (-:6Й

ОПИСАНИЕ ИЗОБРЕТЕНИЯ

ГОСУДАРСТВЕННЫЙ КОМИТЕТ

ПО ИЗОБРЕТЕНИЯМ И ОТНРЫТИЯМ

ПРИ ГКНТ СССР

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (21) 4657004/24 (22) 28.02.89 (46) 28.02.91.Бюл. Р 8 (71) Кишиневский научно-исследовательский институт "Квант" (72) А.А.Гремальский (53) 681.32 (088.8) (56) Авторское свидетельство СССР

1 .- 905818, кл. G 06 F 9/22 1980.

Авторское свидетельство СССР

Р 1133594А, кл. G 06 F 9/22. 1983. (54) МУЛЬТИМИКРОПРОГРАММНАЯ УПРАВЛЯОЩАЯ СИСТЕМА (57) Изобретение относится к автомаÄÄSUÄÄ 1631542 А 1 тике и цифровой вычислительной технике и может быть использовано в качестве управляюшей подсистемы в многоуровневых системах управления сбора и обработки информации. Цель изобt ретения — повышение быстродействия при реализации параллельных асинхронных алгоритмов. Система содержит бло— ки 1.1-1.N микропрограммного управления, группу 2 элементов И, группу 3 элементов ИЛИ, блок 4 элементов ИЛИ, блок передачи адресов запуска, одновибратор 5, элемент И 6. Код операции, выполняемой системой, подается

1631542 на вход 7, а сигнал пуска- на вход 8.

В процессе работы каждый из блоков

1.1-1.N независимо и параллельно с работой других блоков асинхронно выполняет закрепленные за ним участки микропрограммы. Сигналы микроопераций выдаются по выходам 11.1-11.N а состояние каждого из блоков микропрограммного управления — по выходам 12. 1-12.N. Сигналы завершения выполнения выдаваемых микроопераций поступают по входам t0.1-10.N, а логические условия — по входам 9.19Л. Каждый блок микропрограммного 15

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

Цель изобретения — повышение быст-. родействия мультнмикропрограммной управляющей системы при реализации параллельных асинхронных алгоритмов т.е. когда между управляющим и управ" 30 ляемым устройствами существуют двусторонние связи. Каждая такая связь реализуется в виде линии, состоящей из прямого и обратного каналов. По прямому каналу устройство управления выдает сигнал - микрооперацию а по обратному каналу поступает сигнал— событие, подтверждающий завершение выполнения соответствующей микрооперации. 40

Реализация параллельных асинхронных микропрограмм, заданных например, с помощью асинхронных блок-схем либо сетей Петри, подразумевает, что соответствующее устройство управления 45 содержит технические средства, в частности, при задании параллельных асинхронных алгоритмов с помощью параллельных асинхронных блок-схем необходимы технические средства для микропрограммирования следующих типов вершин: оператор {выдача микрооперации); условный переход, сборка; бифуркатор; синхронизатор.

Вершина типа "сборка" - переход

55 к некоторой микрокоманде параллельного участка может быть выполнен с любого другого параллельного. участка. Вершина типа "бифуркатор" — любой управления может запускать параллельные участки микропрограммы в любых других блоках путем передачи соответствующих начальных адресов через блок 4 передачи адресов запуска. Синхронизация параллельно работающих микропрограмм осуществляется путем опроса сигналов шины 13 состояния блоков микропрограммного управления, Признак конца работы системы вырабатывается на выходе 14 при условии, что все блоки микропрограммного управления завершили свою работу. 1 з.п. ф-лы9 10 ил4 параллельный участок может запускать другие параллельные участки алгоритма. Вершине типа "синхронизатор" соответствует слияние двух или более параллельных участков,и переход к последовательному участку алгорит- ма. Вершины типа "синхронизатор" могут появляться в любых параллельных ветвях алгоритма асинхронного управления.

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

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

На фиг.1 представлена функциональная схема системы; на фиг.2 — функциональная схема i-го блока микропрограммного управления; на фиг. 3 — функциональная схема узла формирования адреса микрокоманды," на фиг.4 — функциональная схема узла синхронизатора микроопераций на фиг.5 — функциональная схема узла синхронизатора парадлельных микропрограмм, на фиг.б— функциональная схема блока элементов или передачи адресов запуска, на фиг. 7 — форматы микрокоманд, используемых мультипрограммной управляющей системой; на фиг.8 — временные диаграммы работы устройства, на фиг.9— алгоритм работы блока микропрограм1631542

50 много управления; на фиг.10 — пример функционирования мультипрограммной управляющей системы.

Иультипрограммная управляющая система содержит блоки 1.1-1.N микропрограммного управления, группу 2 элементов И, группу 3 элементов ИЛИ блок 4 элементов ИЛИ передачи адресов запуска, одновибратор 5, элемент

И 6, вход 7 кода операций, вход 8 пуска, первые входы 9.1-9.N логических условий, входы 10. t-1A.N завершения микроопераций, выходы 11.1-11.N и 12.1-12.N блоков микропрограммного управления, шину 13 (второй вход логических условий) состояния блоков микропрограммного управления и выход

14 признака конца работы.

Блок 1 микропрограммного управления образуют узел 15 памяти микрокоманд с выходами 16 и 17 информаци— онного поля микрокоманды и поля формата микрокоманды соответственно, узел 18 формирования адреса микрокоманды, регистр 19 адреса микрокоманды, узел 20 синхронизатора микроопераций, узел 21 синхронизатора параллельных микропрограмм, дешифратор

22 формата микрокоманд, элемент 23 задержки, триггер 24, первую группу

25 элементов И и вторую группу 26 элементов И.

Узел 18 формирования адреса микрокоманд содержит группу 27 элементов

ИЛИ, мультиплексор 28, счетчик 29 адреса, первый 30, второй 31 и третий 32 одновибраторы, первый 33, второй 34, третий 35, четвертый 36 и пятый 37 элементы ИЛИ, первый 38, и второй 39 элементы И.

Узел 20 синхронизатора микроопераций состоит из буферного регистра

40, элемента ИЛИ 41 и одновибратора 42.

Узел 21 синхронизатора параллельных микропрограмм содержит группу 43 элементов ИЛИ, элемент И 44, одновибратор 45 и триггер 46.

Блок 4 передачи .адресов запуска выполнен на группах 47.1-47.N элементов ИЛИ.

На фиг.7 представлены форматы микрокоманд мультипрограммной управляющей системы. Идентификация форма тов осуществляется по полю формата Ф. ,Информационное поле микрокоманды

|формата А содержит адресное поле следующей микрокоманды и поле .кода опроса логических условий КОЛУ. Информационное поле микрокоманды формата В содержит адреса A), А,..., Ая I запуска параллельных микропрограмм.

Информационное поле микрокоманды формата С заполняется нулями. Информационное поле микрокоманды фор., мата П содержит микрооперации, подаваемые на выходы 1!.i соответст- вующего блока микропрограммного управления. Информационное поле микрокоманды формата Е содержит код опроса параллельных микропрограмм КОПИ.

На фиг.8 приведены временные диаг раммы работы устройства при условии, что блок микропрограммного управле-: ния последовательно выполняет микрокоманды формата А (Ф=001), D (Ф=100), В (Ф=101), Е (Ф=101) и С (Ф=011) .

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

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

В исходном состоянии все регистры триггеры и счетчики установлены в нулевом состоянии (на фиг.1-6 цепи сброса условно не показаны). При этом на выходах одновибраторов 5, 30,31,32,42 и 45 установлены нулевые значения, на стробирующий вход дешифратора 22 поступает "0" и все выходные сигналы дешифратора 22 рав.. ны "0". Поэтому на адресном выходе каждого блока 1 микропрограммного управления поступает нулевой код и, соответственно, нулевой код поступает и по всем выходам блока 4 передачи адресов запуска.

Поскольку триггеры 24 всех блоков 1 сброшены в "С", по всем выходам 12 выдается значение " 1" и, соответственно, по выходу 14 признака конца работы выдается значение "1". В узлах 15 памяти блоков 1 микропрограммного управления содержатся микропрограммы, соответствующие параллельным ветвям алгоритма управления параллельными асинхронными процессами.

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

При подаче управляющего сигнала

"Пуск" на вход 8 устройства одчовибратор 5 вырабатывает одиночный им5 пульс, который разрешает прохождение кода операции с входа 7 устройства на вход группы 3 элементов ИЛИ (фиг.8 и 9).

С выхода группы 3 элементов ИЛИ код операции поступает на адресный вход блока 1.1 кикропрограммного управления. С указанного входа код опе, рации поступает на узел 18 формиро,вания адреса. Поскольку код операции

1 отличается.от нулевого кода, на выходе первого элемента 33 ИЛИ появляется сигнал "1" и одновибратор 32 вырабатывает одиночный импульс (фиг.8)., Одновременно код операции через группу 27 элементов ИЛИ, на первый вход которой с выхода регистра 19 адреса поступает нулевой код, поступает на информационный вход счетчика 29 . адреса. При этом импульс с выхода одновибратора 32 через элемент ИЛИ 35 поступает на синхронизирующий вход счетчика 29 адреса, фиксируя в нем код операции. Этот же импульс через элемент ИЛИ 37 поступает на стробирующий выход узла 18 формирования адреса, указывая, что на его информационном выходе выдается исполнительный адрес микрокоманды.(фиг.8).

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

"1", указывая на то, что рассматриваемый блок управления выполняет микропрограмму (фиг.8). Нулевое значение с инверсного выхода триггера 24 через выход 12 поступает на соответст50 вующий разряд шины 13. При этом выход элемента И 6 устанавливается в

"0", указывая на то, что мультимикро, программная система начала выполнение указанной по входу 7 операции (блок

2 алгоритма на фиг..9). Информацион55 ное поле выбранной микрокоманды поступает по выходу 16, а поле формата — по выходу 17 узла 15 памяти микропрограмм. Поле формата выбранной микрокоманды поступает на информационный вход дешифратора 20. Одновременно одиночный импульс, задержанный на элементе 23 задержки на время формирования адреса в узле 18 и выборки микрокоманды из узла 15 памяти, поступает на стробирующий вход дешифратора

20 формата микрокоманды (блок 2 алгоритма на фиг,9). При этом в зависимости от формата микрокоманды на одном из выходов дешифратора 20 . появляется импульс с его стробирующего входа, Далее работа блока микропрограммного управления полностью определяется форматом выбранной микрокоманды.

Возможны следующие случаи:

1. Из узла 15 памяти выбрана микрокоманда формата А {фиг.7, блоки 4 и 5 алгоритма на фиг.9). В поле Ф рассматриваемой микрокоманды содержится код 001, поэтому импульс со стробирующего входа дешифратора 22 передается на его первый выход. При этом в регистре 19 адреса микрокоманды фиксируется с выхода 16 ин— формационного поля микрокоманды соответствующие поля А и КОЛУ, которые поступают на узел 18 формирования адреса микрокоманд (фиг.8). При этом поле Ас поступает на первый вход группы 27 элементов ИЛИ, на второй вход которой поступает нулевой код, так как группа 2 элементов

И по завершении импульса с выхода одновибратора 5 логически отключает вход 7 кода операции от адресного входа блока 1.1 микропрограммного управления. С выхода группы 27 элементов ИЛИ поле А поступает на информационный вход счетчика 29 адреса.

Поле КОЛУ кода опроса логических условий микрокоманды формата А поступает на первый вход мультиплексора 28, на выходе которого появляется значение "1" если хотя бы одно из анализируемых логических условий, поступающих no Bxopg 9 HcTHHHO H "0" B npo тивном случае.

Одновременно, импульс с первого выхода дешифратора 22 формата микрокоманд. поступает на вход одновибратора 30, который по перепаду "1-0" вырабатывает одиночный импульс.

Если выходное значение мультиплексора 28 равно "0" {все опрашиваемые

163 1542

10 логические условия ложны), одиноч1 ный импульс с выхода одновибратора

30, через элемент И 38 и элемент

ИЛИ 35 поступает на синхровход счетчика 29 адреса (фиг.8), фиксируют в нем в качестве исполнительного адреса следующей микрокоманды значение А .

Если же выходное значение мультиплексора 28 равно 1 (хотя бы оди

10 но опрашиваемое логическое условие истинно), одиночный импульс с выхода одновибратора 30 через элемент

И 39 и через элемент ИЛИ 36 посту15

I пает на вход "+1 счетчика 29 адреса, увеличивая его содержимое на единицу.

Таким образом, если опрашивае-мые лОГические условия ложны, следую- 20 щим исполнительным адресом будет адрес А ; если же хотя бы одно из опрашиваемых условий истинно, в качестве исполнительного адреса используется текущий адрес из счетчи- 25 ка 29, увеличенный на единицу. При необходимости безусловного перехода в поле КОЛУ микрокоманды формата А записываются нули. При этом выход мультиплексора 28 независимо от зна-. чений логических условий равен "О" и в качестве исполнительного адреса в счетчике 29 фиксируется адрес А „.

Исполнительный адрес с выхода узла 18 вновь поступает на вход узла

15 памяти микрокоманд и запускает процесс выборки очередной микрокоманды. Одновременно импульс с выхода одновибратора 30 через элемент ИЛИ 37 поступает на стробирующий выход уз- 4О ла 18 формирования адреса, указывая, на то, что начался процесс выборки очередной микрокоманды (фиг.8).

На этом процесс выполнения микрокоманды формата А завершен.

2. Из узла 15 памяти выбрана микрокоманда формата В (фиг.7, блоки 6, 7 и 15 алгоритма на фиг.9). В поле Ф рассматриваемой микрокоманды содержится код 010 поэтому импульс со стробирующего входа дешифратора 22 пере»дается на его второй выход. При этом информационное поле, содержащее адреса А, А,...,А с выхода 16 через группу 25 элементов И поступает на соответствующий вход блока 4 передачи адресов запуска (фиг.8).

Каждое из полей AI, А,...,А i через соответствующие группы 47.1-47.Н элементов ИЛИ блока 4 передачи адресов запуска поступает на адресные вхо" ды идентичных блоков микропрограммного управления.

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

Если же в поле А записан нулевой код, он, поступая на адресный вход соответствующего блока микропрограммного управления, не оказывает на его состояние никакого влияния, так как при нулевом адресе запуска выход элемента ИЛИ 33 остается равным нулю .

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

Одновременно импульс со второго выхода дешифратора 22 поступает на узел 18 формирования адреса, запуская в нем процесс выработки очередного исполнительного адреса. При этом по перепаду "1-0" рассматриваемого импульса одновибратор 31 вырабатывает одиночный импульс, который через элементы И 34 и ИЛИ 36 увеличи" вает содержимое счетчика 29 адре" са. Таким образом, выполняется переход к следующей по порядку микрокоманде.

Одновременно импульс с выхода оц-. новибратора 31 через элемент ИЛИ 37, поступает на выход узла 18 формирования адреса, указывая на то, что начался процесс выборки очередной микрокоманды (фиг.8).

На этом процесс выполнения микрокоманды формата В завершен.

3. Из узла 15 памяти выбрана микрокоманда формата С (фиг.7, блоки 8 и 9 алгоритма на фиг.9). В поле Ф рассматриваемой микрокоманды содержится код Oii, поэтому импульс со стробирующего входа дешифратора 22 передается на его третий выход. При этом импульс с третьего выхода де.шифратора 22 сбрасывает регистр 19 адреса в ноль. Одновременно по зад нему фронту "1-0" рассматриваемого. импульса триггер 24 переключает свое состояние, т.е. устанавливается в

"0" {фиг.8).

1631542

Нулевое (исходное) состояние регистра 19 адреса не создает помех при возможных повторных запусках рассматриваемого блока микропрограммного управления, так как возможный адрес запуска через группу 27 элементов

ИЛИ передается на информационный вход счетчика 29 адреса.

Нулевое состояние триггера 24 указывает на то, что рассматриваемый блок микропрограммного управления завершил выполнение соответствую" щей микропрограммы. При этом значение "1" с инверсного выхода тригге15 ра 24 через выход !2 поступает на соответствующий разряд шины 13 и оттуда на все блоки 1. 1-1.М микропрограммного управления и на элемент И 6.

4. Из узла 15 памяти выбрана микрокоманда формата D (фиг.7,блоки 10, 12, 13 и 15 алгоритма на фиг.9). В поле Ф рассматриваемой микрокоманды содержится код 100 поэтому импульс 25 со стробирующего входа дешифратора

22 подается на его четвертый выход.

При этом рассматриваемый импульс разрешает выдачу через группу 26 элементов И поле микроопераций (MO) рас- 30 сматриваемой микрокоманды. Соответствующие микрооперации с выхода 11 поступают на управляемое оборудование. Одновременно рассматриваемый импульс поступает на управляющий вход узла 20 синхронизатора микроопераций и записывает в регистр 40 поле ИО микрокоманды формата D.

При этом выход элемента ИЛИ 41 устанавливается в "1". По мере асинхрон40 ного выполнения микроопераций, выдаваемых по выходу 11, управляемое оборудование вырабатывает сигналы, подтверждающие их выполнение, которые поступают по входу 10 на входы сброса со- ответствующих триггеров регистра 40.

В.момент завершения выполнения всех вццанных микроопераций содержимое регистра 40 становится нулевым. При этом выход элемента ИЛИ 41 также устанавливается в ."0". По перепаду

"1-0" сбрасывает одновибратор 42, одиночный импульс с выхода которого индицирует завершение процесс асинх" ронного параллельного выполнения микрооперацнй, указанных в поле MO микрокоманды формата D, Импульс с выхода узла 20 синхронизатора микроопераций поступает на вход узла 18 формирования адреса, запуская в нем процесс выработки очередного исполнительного адреса. Рассматриваемый импульс, через элементы

ИЛИ 34 и 36 поступает на вход "+1" счетчика 29 адреса, увеличивая его содержимое (фиг.8). Таким образом, следующий исполнительный адрес получается из текущего путем его увеличения на единицу. Одновременно рассматриваемый импульс через элемент ИЛИ 37 поступает на стробирующий выход узла

18 формирования адреса, указывая на то, что начался процесс выборки оче редной микрокоманды.

На этом процесс выполнения микрокоманды формата Э завершен.

5. Из узла 15 памяти выбрана микрокоманда формата Е (фиг.7, блоки 14 и 15 алгоритма на фиг.9). В поле Ф рассматриваемой микрокоманды содержит" ся код 101, поэтому импульс со стробирующего входа дешифратора 22 поступает на его пятый выход. Импульс с рассматриваемого выхода поступает на управляющий вход узла 21 синхронизатора параллельных микропрограмм (фиг.2) и по перепаду "1-0" устанавливает триггер 46 в состояние "1".

Одновременно поле КОПИ микрокоманды формата Е поступает с выхода 16 узла памяти на первый вход группы 43 элементов ИЛИ. На второй вход группы 43 элементов ИЛИ с шины i3 поступают сигналы о состоянии каждого из блоков 1 микропрограммного управления. Если блок 1 выполняет некоторую микропрограмму, соответствующий триггер 24 установлен в "1" и сигнал на шине 13 равен нулю, т.е. если блок 1 завершил выполнение микропрограммы, сигнал на шине 13 равен единице.

При необходимости опроса состояния блока 1.j, j=i,N, разряд Z поля

КОПИ микрокоманды формата Е установлен в "0". В противном случае соответствующий разряд установлен в "1".

Если спрашиваемый блок 1 еще не завершил выполнение соответствующей микропрограммы, выход элемента И 44 равен "0". После завершения работы, для всех опрашиваемых блоков микропрограммного управления с шины 13 поступают сигналы, равные единице, и выход элемента И 44 становится равным

ll 1 ll а

1631542

По перепаду "0-1" с выхода элемента И 44 срабатывает одновибратор 45, одиночный импульс с выхода которого поступает на выход узла 21 синхро" низатора параллельных микропрограмм, индицируя завершение работы всех опрашиваемых блоков микропрограммного управления, Одновременно импульс с. выхода одновибратора 45 сбрасывает триггер 46 в нулевое (исходное) состояние.

Импульс с выхода узла 21 синхронизатора параллельных микропрограмм поступает на управляющий вход узла 18

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

HJIH 34 и 36 поступает на вход "+1"

20 счетчика 29 адреса, увеличивая его содержимое, а через элемент ИЛИ 37 на стробирующий выход узла 18 формирования адреса (фиг.8). Далее начинается процесс выборки очередной мик рокоманды.

На этом процесс выполнения микрокоманды формата Е завершен.

Таким образом, после запуска блок

1.1 микропрограммного управления может выполнять любую из микрокоманд форматов А,В,С,D,Е. С помощью микрокоманды формата А реализуются условные и безусловные переходы; формата

 — запуск микропрограмм из любых других блоков микропрограммного (бифуркаторы и сборка) управления; формата С вЂ” завершение работы блока микропрограммного управления; формата D — - выдача микроопераций и ожида— ние и завершение асинхронных процес—

40 сов их выполнения (операторы); формата Š— ожидание завершения асинхронного параллельного выполнения микропрограмм (синхронизаторы).

После запуска каждый из блоков

1.2-1.И также может выполнять любые микрокоманды рассматриваемых форматов, т.е. выдавать микрооперации, запус кать и опрашивать любые блоки микропрограммного управления и т.п. При этом работа каждого из блоков микропрограммного управления аналогична описанному, т.е. через блок 4 передача адресов запуска на адресные входы поступают соответствующие адреса, начинается процесс выборки микрокоманд и т.д., а состояние каждого блока микропрограммного управления передается на шину 13. Каждый иэ блоков микропрограммного управления раI ботает независимо друг от друга и может запускать н опрашивать состояние других идентичных блоков.

Признаком конца выполнения операции заданной соответствующим кодом по входу 7 кода операции; является значение "1", выдаваемое по выходу

14 признака конца работы. Значение

"1" вырабатывается элементом И 6 тогда, когда все триггеры 24 блоков 1 завершили выполнение (с помощью микрокоманд формата С) закрепленных за ними участков микропрограммы.

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

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

Перечисленные дополнительные возможности системы обеспечивают микропрограммирование любых конкретных параллельных асинхронных алгоритмов управления (4,5). Мнкропрограммирование такого типа алгоритмов в прототипе невозможно.

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

Предлагаемая система позволяет запускать каждый вычислитель асинхронно по мере его освобождения. При этом быстродействие системы моделирования повышается в 5-6 раз из-за более

1631542

16 эффективного управления параллельI ными процессами.

Лналогичная задача управления параллельными процессами возникает в м11огоканальньГх cHcTBMBx связи 9 ис пользующие решающие или информационные сообщения подтвержцения, В частности, алгоритмы процесса передачи дискретной информации и другие являются асинхронными и параллельными из-за одновременной работы как прямых, так и обратных каналов. При этом необходимость синхронизации и фазирования по прямым и обратным кана-15 лам, реализация принципа резервирования и подтверждения требует асинхронной дисциплины выдачи микроопераций, запуска и синхронизации параллельных процессов (кодирование, декодирование, передача блока, прием блока, поиск ошибок, исправление ошибок, передача запроса, передача подтверждения и т.п,).

Формула изобретения

1. Мультимикропрограммная управляющая система, содержащая N блоков микропроггаммного управления, где

N — количество параллельно реализуемых алгоритмов, группу элементов И, группу элементов ИЛИ, причем первые группы входов логических условий блоков микропрограммного управления являются входами логических условий систе35 мы, выходы микроопераций блоков микропрограммного управления являются вывыходами микроопераций системы, о тл и ч а ю щ а я с я тем, что, с целью повышения быстродействия при реализации параллельных асинхронных алгоритмов, в нее введены блок элементов ИЛИ, одновибратор, элемент И, причем первый выход блока элементов

ИЛИ соединен с первыми входами элементов ИЛИ группы, выходы которых соединены с входом кода операции первого блока микропрограммного управления, i-й выход (i=2,N) блока элементов ИЛИ соединен с входом кода опера- 5О ции i-ro блока микропрограммного управления, первые входы элементов

И группы являются входами кода операции системы, .вход одновибратора явля:ется входом пуска системы,,выход одно-55 вибратора соединен с вторыми входаму элементов И группы, выходы которых соединены с вторыми входами элементов ИЛИ группы, выход адресов запуска

j-ro блока микропрограммного управления (j=1,N) соединен с j-м входом блока элементов ИЛИ, выход состояния

j-ro блока микропрограммного управления соединен с 1-ми входами второй группы логических условий с первого по (j 1)-ый и с (j+1)-ro no N блоков микропрограммного управления и с

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

2. Система по п.1, о т л и ч а ю-. щ а я с я тем, что блок микропрограм-. много управления содержит узел памяти микрокоманд, узел формирования адреса микрокоманды, регистр адреса микрокоманды, буферный регистр, элемент ИЛИ, первый и второй одновибраторы, Т-триггер, элемент И, группу элементов ИЛИ, дешифратор формата микрокоманды, элемент задержки, триггер, первую группу элементов И, вторую группу элементов И, причем выход регистра адреса микрокоманд соединен с первым информационным входом узла формирования адреса микрокоманд, выход которого соединен с адресным входом узла памяти микрокоманд, информационный выход которого соединен с информационным входом регистра адреса микрокоманд, с первыми входами элементов И первой группы, и второй группы, с информационным входом буферного регистра с первыми входами элементов ИЛИ группы, выход второго одновибратора соединен с первым управляющим входом узла формирования адреса микрокоманд, выход поля форма;, та микрокоманды узла памяти микрокоманд соединен с информационным входом дешифратора формата микрокоманды, первый выход которого соединен с вторыми управляющим входом узла формироч вания адреса микрокоманд и с входом синхронизации регистра адреса микрокоманд, второй выход дешифратора формата микрокоманды соединен с третьим управляющим входом узла формирования адреса микрокоманд и с вторыми входами элементов И первой группы, третий выход дешифратора формата микрокоманды соединен с входом óñтановки в "О" регистра адреса микрокоманд и со счетным входом триггера

1631542

17

9.

Ол5(Ч) Фиг. 2 четвертый выход дешифратора микрокоманд соединен с вторыми входами элементов И второй группы, и с входом синхронизации буферного регистра, выход которого соединен с входом элемента ИЛИ, выход которого соединен с входом первого одповибратора, пятый выход дешифратора формата микрокоманд соединен со счетным входом

Т-триггера, выход которого соединен с первым входом элемента И, выход которого соединен с входом второго одновибратора, вторые входы элементов

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

И первой группы образуют выход адресов запуска блока микропрограммного управления, выходы элементов И второй группы образуют выход микроопераций блока микропрограгю ного управления, третий вход логических условий блока соединен с входами установки в "0" буферного регистра.

1631 542

one

0m27

6m20 дл 12

1631542

У 04 оо I

УОрггам А 8m A

Om K.2

А, А

Уарпам g йл 4.У О О Я>(рмагп 3

КО/М

9opnam E

1631542 адыго

r/ww w o озолс &ою л

Ю&жо оглх г ол о ыж

ФУ/ %УФ / глжлоГ й

8 1 р=о

ww ю тРФггел РФ лолз лзные июгюй 4

О лолнюа У .

6 еюжжк ы 3д о аи,вымай же zo I я 24

e&ukrb гленентв ой„ЬВ ЮИ и тЮн аУ

Фнг, IO

Фиг 9

Составитель А.Сошкин

Редактор Л.Пчолинская Техред Л,Сердюкова Корректор И. Пожо

Заказ 547 Тираж 397 Подписное

ВНИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ СССР

113035, Иоскна, Ж-35, Раушская наб., д. 4/5

Производственно-издательский комбинат "Патент", r. Ужгород, ул. Гагарина, 101

Ю жюо

Лщэле И

К2 в УОЮУ

4 гленент ss u ооноВобяотоя fd гюлло гг или г етнж .ру

iFAocrppeio ar,Флюс

„ого ez ox илов 4 < до ууроЯ

ЯФ1гго IYA гга АУ уурджи тгнгол М одудЯююа > зР с етvuн еи гтоы ма

Хло сМЮУ

8 игА ОЖОе

cormowuue

Мультимикропрограммная управляющая система Мультимикропрограммная управляющая система Мультимикропрограммная управляющая система Мультимикропрограммная управляющая система Мультимикропрограммная управляющая система Мультимикропрограммная управляющая система Мультимикропрограммная управляющая система Мультимикропрограммная управляющая система Мультимикропрограммная управляющая система Мультимикропрограммная управляющая система Мультимикропрограммная управляющая система Мультимикропрограммная управляющая система 

 

Похожие патенты:

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

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

Изобретение относится к вычислительной технике и может быть использовано в устройствах управления и диагностирования дискретных объектов

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

Изобретение относится к автоматике и вычислительной технике и может быть использовано в АСУ ТП для управления динамическими процессами

Изобретение относится к цифровой вычислительной технике и автоматике и может быть использовано в микропрограммных устройствах управления вычислительных машин

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

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

Изобретение относится к вычислительной технике и может быть использовано в качестве диспетчера для распределения заданий процессорам в многопроцессорной вычислительной системе (МВС) класса МКМД при вертикальном распараллеливании программ

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

Изобретение относится к вычислительной технике и автоматике и может быть использовано в системах с общим полем запросов

Изобретение относится к вычислительной технике

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

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

Изобретение относится к вычислительной технике и может быть использовано в управляющих устройствах электронных узлов коммутации автоматизированных систем

Изобретение относится к вычислительной технике и может быть использовано в управляющих устройствах электронных узлов коммутации автоматизированных систем

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

Изобретение относится к устройствам программного управления и предназначено для использования в составе автоматизированных систем управления и регулирования с использованием ЭВМ вышестоящего уровня
Наверх