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

Номер патента: 1631542

Автор: Гремальский

ZIP архив

Текст

СОЮЗ СОВЕТСНИХСОЦИАЛИСТИЧЕСНИХРЕСПУБЛИН ИСАНИЕ ИЗОБРЕТЕНИ К АВТОРСКОМУ ЕЛЬСТВУ(21) 4 (22) 2 (46) 2 . (71) Ки тельск (2) А (53) б аССС80,СР 983.РАВЛЯОвто СЬ ГОСУДАРСТВЕННЫЙ КОМИТЕТПО ИЗОБРЕТЕНИЯМ И ОТНРЫТИЯМПРИ ГКНТ СССР 57004/24801631542 А 1 щ) С Об Р 9/22, 9/00 тике и цифровой вычислительной технике и может быть использовано в качестве управляюшей подсистемы в многоуровневых системах управления сбора и обработки информации. Цель изобретения - повышение быстродействияпри реализации параллельных асинхронных алгоритмов. Система содержит блоки 1.1-1.И микропрограммного управления, группу 2 элементов И, группу 3элементов ИЛИ, блок 4 элементов ИЛИ,блок передачи адресов запуска, одновибратор 5, элемент И б, Код операции, выполняемой системой, подается1631542 Муое дд 4 одео Мюе жми аЪл 3 Ыооюао.ге р сиро и мвуелююХФ,В 8 рею ке емэиилСоставитель А.СошкинРедактор Л.Пчолинская Техред Л,Сердюкова Корректор И. Пожо Заказ 547 Тираж 397ВНИИПИ Государственного комитета по изобретениям СССР 113035, Иосква, Ж, Раушская на оизводственно-издательский комбинат "Патент", г, Ужгород, ул. Гагарина, 101 Юагеу ойдоизольде дно,ю,улу 6 еюмжсгии А- В аащкме елюемлт юлю айюЖлжал гюлло ггили еиеюиил,еу триггер ли,елолиз .ачиуюеих млолий и 4 форлюроЯь оФ 1 его ме рега"тр сдвюцвиллеееор РВФуаййоюоо Мсуелуик ед стою атЮюЛЮУо иехаЖоесоево.юркие ролллзюе угогюегюлоллюмР Подписное и открытиям при ГКНТ б., д. 4/51631542 на вход 7, а сигнал пуска- на вход 8.В процессе работы каждый из блоков1.1-1.И независимо и параллельно сработой других блоков асинхронно выполняет закрепленные за ним участки микропрограммы. Сигналы микроопераций выдаются по выходам 11,1-11.На состояние каждого из блоков микропрограммного управления - по выхо Одам 12. 1-12.0, Сигналы завершениявыполнения выдаваемых микрооперацийпоступают по входам 10.1-10.Я, алогические условия - по входам 9.19 Л. Каждый блок микропрограммного 15 Изобретение относится к автоматике и цифровой вычислительной техникеи может быть использовано в качествеуправляющей подсистемы в многоуровневых системах управления, сбора и обработки информации. 25Цель изобретения - повышение быст-.родействия мультнмикропрограммнойуправляющей системы при реализациипараллельных асинхронных алгоритмовт.е. когда между управляющим и управ" 30ляемым устройствами существуют двусторонние связи. Каждая такая связьреализуется в виде линии, состоящейиз прямого и обратного каналов. Попрямому каналу устройство управлениявыдает сигнал - микрооперациюа пообратному каналу поступает сигнал -событие, подтверждающий завершениевыполнения соответствующей микрооперации. 40Реализация параллельных асинхронных микропрограмм, заданных например,с помощью асинхронных блок-схем либосетей Петри, подразумевает, что соответствующее устройство управления 45содержит технические средства, в частности, при задании параллельныхасинхронных алгоритмов с помощьюпараллельных асинхронных блок-схемнеобходимы технические средства длямикропрограммирования следующихтипов вершин: оператор выдача микрооперации); условный переход, сборка;бифуркатор; синхронизатор,Вершина типа "сборка" - переход55к некоторой микрокоманде параллельного участка может быть выполнен слюбого другого параллельного, участка. Вершина типа "бифуркатор" - любой управления может запускать параллельные участки микропрограммы в любыхдругих блоках путем передачи соответствующих начальных адресов черезблок 4 передачи адресов запуска. Синхронизация параллельно работающих микропрограмм осуществляется путем опроса сигналов шины 13 состояния блоковмикропрограммного управления, Признак конца работы системы вырабатывается на выходе 14 при условии, чтовсе блоки микропрограммного управления завершили свою работу. 1 з.п.ф-лы, 10 ил. параллельный участок может запускать другие параллельные участки алгоритма. Вершине типа "синхронизатор" соответствует слияние двух или более параллельных участков,и переход к последовательному участку алгорит-ма. Вершины типа "синхронизатор" могут появляться в любых параллельных ветвях алгоритма асинхронного управления.Возможность микропрограммирования асинхронных параллельных алгоритмов, сбора и обработки информации посредством реализации алгоритмов с вершинами типа "сборка", "бифуркатор", "синхронизатор" увеличивает быстродействие.В системе обеспечивается параллельная и независимая работа блоков микропрограммного управления, что позволяет реализовать параллельные алгоритмы управления и обработкиинформации.На фиг,1 представлена функциональная схема системы; на фиг.2 - функциональная схема -го блока микропрограммного управления; на фиг. 3 - функциональная схема узла формирования адреса микрокоманды," на фиг.4 - функциональная схема узла синхронизатора микрооперацийна фиг.5 - функциональная схема узла синхронизатора парадлельных микропрограмм, на фиг,б - Функциональная схема блока элементов или передачи адресов запуска, на фиг. 7 - форматы микрокоманд, используемых мультипрограммной управляющей системой; на фиг.8 - временные диаграммы работы устройства; на фиг.9 - алгоритм работы блока микропрограм 163154251015 20 25 30 35 40 45 50 много управления; на Фиг.10 - пример Функционирования мультипрограммной управляющей системы.Мультипрограммная управляющая система содержит блоки 1,1-1.И микропрограммного управления, группу 2 элементов И, группу 3 элементов ИЛИ блок 4 элементов ИЛИ передачи адресов запуска, одновибратор 5, элемент И 6, вход 7 кода операций, вход 8 пуска, первые входы 9.1-9.М логических условий, входы 10. 1-10.Б завершения микроопераций, выходы 11.1-11.Б и 12.1-12.И блоков микропрограммного управления, шину 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.И элементов ИЛИ.На Фиг.7 представлены Форматы микрокоманд мультипрограммной управляющей системы. Идентификация Форма тов осуществляется по полю Ьормата Ф. ,Информационное поле микрокоманды формата А содержит адресное поле следующей микрокоманды и поле .кода опроса логических условий КОЛУ. ИнФормационное поле микрокоманды формата В содержит адреса А, А Анзапуска параллельных микропрограмм. Информационное поле микрокоманды формата С заполняется нулями. Информационное поле микрокоманды фор.мата П содержит микрооперации, подаваемые на выходы 1.х соответст- вующего блока микропрограммного управления. Информационное поле микро- команды Формата Е содержит код опроса параллельных микропрограмм КОПИ.На Фиг.8 приведены временные диаг раммы работы устройства при условии, что блок микропрограммного управле-: ния последовательно выполняет микро- команды Ьормата А (Ф=001), П (Ф=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 микропрограммного управления и расположены по любым ненулевым адресам. Соответствующие адреса являются кодами операцийвыполняемых мультимикропрограммнойуправляющей системой.При подаче управляющего сигнала"Пуск" на вход 8 устройства одчовибратор 5 вырабатывает одиночный им 5 пульс, который разрешает прохождение кода операции с входа 7 устройства на вход группы 3 элементов ИЛИ (фиг.8 и 9).10С выхода группы 3 элементов ИЛИ код операции поступает на адресный вход блока 1.1 кикропрограммного управления. С указанного входа код опе, рации поступает на узел 18 Формиро,вания адреса. Поскольку код операции 1отличается.от нулевого кода, на выходе первого элемента 33 ИЛИ появляется сигнал "1" и одновибратор 32 вырабатывает одиночный импульс (фиг.8)., Одновременно код операции через группу 27 элементов ИЛИ, на первый вход которой с выхода регистра 19 адреса поступает нулевой код, поступает на информационный вход счетчика 29, 25 адреса. При этом импульс с выхода одновибратора 32 через элемент ИЛИ 35 поступает на синхронизирующий вход счетчика 29 адреса, Фиксируя в нем код операции.Этот же импульс через элемент ИЛИ 37 поступает на стробирующий выход узла 18 формирования адреса, указывая, что на его информационном выходе выдается исполнительный адрес микрокоманды.(фиг.8).35Адрес с информационного выхода узла 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" если хотя бы одно из анализируемых логических условий, поступающих по входу 9 истинно, и "0" В противном случае.Одновременно, импульс с первого выхода дешифратора 22 формата микро- команд. поступает на вход одновибратора 30, который по перепаду "1-0" вырабатывает одиночный импульс.Если выходное значение мультиплексора 28 равно "0" (все опрашиваемыелогические условия ложны), одиночный импульс с выхода одновибратора 30, через элемент И 38 и элемент ИЛИ 35 поступает на синхровход счетчика 29 адреса (Фиг.8), Фиксируют 5 в нем в качестве исполнительного адреса следующей микрокоманды значение А.Если же выходное значение мультиплексора 28 равно 1 (хотя. бы оди 1 О но опрашиваемое логическое условие истинно), одиночнььй импульс с выхода одновибратора 30 через элемент И 39 и через элемент ИЛИ 36 посту 15 ,пает на вход "+1" счетчика 29 адре са, увеличивая его содержимое на единицу.Таким образом, если опрашивае мые логические условия ложны следую щим исполнительным адресом будет адрес А ; если же хотя бы одно из опрашиваемых условий истинно, в качестве исполнительного адреса используется текущий адрес из счетчи ка 29, увеличенный на единицу. При необходимости безусловного перехода в поле КОЛУ микрокоманды формата А записываются нули. При этом выход мультиплексора 28 независимо от значений логических условий равен "О" и в качестве исполнительного адреса в счетчике 29 Фиксируется адрес А.Исполнительный адрес с выхода узла 18 вновь поступает на вход узла 15 памяти микрокоманд и запускает процесс выборки очередной микрокоманды. Одновременно импульс с выхода одновибратора 30 через элемент ИЛИ 37 поступает на стробирующий выход уз О ла 18 Формирования адреса, указывая, на то, что начался процесс выборки очередной микрокоманды (фиг,8).На этом процесс выполнения микро- команды формата А завершен.452. Из узла 15 памяти выбрана микро- команда Формата В (Фиг.7, блоки 6, 7 и 15 алгоритма на фиг,9). В поле Ф рассматриваемой микрокоманды содержится код 010, поэтому импульс со стробирующего входа дешифратора 22 пере . дается на его второй выход. При этом информационное поле, содержащее адреса А 1, АА с выхода 16 через группу 25 элементов И поступает на соответствующий вход блока 4 передачи адресов запуска (фиг.8). Каждое из полей А 1, АА 1 через соответствующие группы 47.1-47.Б элементов ИЛИ блока 4 передачи адресов запуска поступает на адресные вхо" ды идентичных блоков микропрограммного управления.При этом если в поле А записан не" нулевой код, соответствующий блок микропрограммного управления аналогично описанному начинает выполнение микропрограммы, первая команда которой хранится по адресу А.Если же в поле А записан нулевой код, он, поступая на адресный вход соответствующего блока микропрограммного управления, не оказывает на его состояние никакого влияния, так как при нулевом адресе запуска выход элемента ИЛИ 33 остается равным нулю .Таким образом, соответствующимзаполнением полей А(,А,, А М обеспечивается избирательный запускпараллельных микропрограмм, хранимыхв блоках микропрограммного управления.Одновременно импульс со второговыхода дешифратора 22 поступает наузел 18 Формирования адреса, запуская в нем процесс выработки очередного исполнительного адреса. Приэтом по перепаду "1-0" рассматриваемого импульса одновибратор 31 вырабатывает одиночный импульс, которыйчерез элементы И 34 и ИЛИ 36 увеличи"вает содержимое счетчика 29 адре"са. Таким образом, выполняется переход к следующей по порядку микрокоманде.Одновременно импульс с выхода оцновибратора 31 через элемент ИЛИ 37,поступает на выход узла 18 формирования адреса, указывая на то, что начался процесс выборки очередной микрокоманды (Фиг.8).На этом процесс выполнения микрокоманды Формата В завершен,3. Из узла 15 памяти выбрана микрокоманда Формата С (Фиг,7, блоки 8и 9 алгоритма на фиг.9). В поле Фрассматриваемой микрокоманды содержится код 011, поэтому импульс состробирующего входа дешифратора 22передается на его третий выход, Приэтом импульс с третьего выхода де.шифратора 22 сбрасывает регистр 19 адреса в ноль. Одновременно по зад . нему фронту "1-0" рассматриваемого,импульса триггер 24 переключает своесостояние, т.е. устанавливается вНулевое (исходное) состояние регистра 19 адреса не создает помехпри возможных повторных запусках рассматриваемого блока микропрограммногоуправления, так как возможный адресзапуска через группу 27 элементовИЛИ передается на информационныйвход счетчика 29 адреса.Нулевое состояние триггера 24 указывает на то, что рассматриваемыйблок микропрограммного управлениязавершил выполнение соответствую"щей микропрограммы. При этом значение "1" с инверсного выхода тригге 15ра 24 через выход 2 поступает насоответствующий разряд шины 13 иоттуда на все блоки 1. 1-1.М микропрограммного управления и на элемент И 6.4. Из узла 15 памяти выбрана микрокоманда формата 0 фиг.7,блоки 10,12, 13 и 15 алгоритма на фиг.9). Вполе Ф рассматриваемой микрокомандысодержится код 100, поэтому импульс 25со стробирующего входа дешифратора22 подается на его четвертый выход.При этом рассматриваемый импульс разрешает выдачу через группу 26 элементов И поле микроопераций (ИО) рассматриваемой микрокоманды. Соответствующие микрооперации с выхода 11поступают на управляемое оборудование. Одновременно рассматриваемыйимпульс поступает на управляющийвход узла 20 синхронизатора микроопераций и записывает в регистр 40поле ИО микрокоманды формата Э,При этом выход элемента ИЛИ 41 устанавливается в "1", По мере асинхрон 40ного выполнения микроопераций, выдаваемых по выходу 11, управляемое оборудование вырабатывает сигналы, подтверждающие их выполнение, которые поступают по входу 10 на входы сброса со ответствующих триггеров регистра 40.В.момент завершения выполнения всехвыцанных микроопераций содержимое регистра 40 становится нулевым. Приэтом выход элемента ИЛИ 41 такжеустанавливается в,"0". По перепаду50"1-0" сбрасывает одновибратор 42,одиночный импульс с выхода которогоиндицирует завершение процесс асинх"ронного параллельного выполнения микрооперацнй, указанных в поле Ю микрокоманды формата Э.Импульс с выхода узда 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элементов ИЛИ с шины 13 поступаютсигналы о состоянии каждого изблоков 1 микропрограммного управления. Если блок 1 выполняет некоторуюмикропрограмму, соответствующийтриггер 24 установлен в "1" и сигнал на шине 13 равен нулю, т.е. еслиблок 1 завершил выполнение микропрограммы, сигнал на шине 13 равенединице,При необходимости опроса состояния блока 1. 1, 1=1,Ю, разряд 2поля КОПИ микрокоманды формата Е установлен в "0". В противном случае соответствующий разряд установлен в "1".Если спрашиваемый блок 1 еще не завершил выполнение соответствующей микропрограммы, выход элемента И 44 равен "0", После завершения работы, для всех опрашиваемых блоков микропрограммного управления с шины 13 поступают сигналы, равные единице, и выход элемента И 44 становится равным ц 1 цаПо перепаду "0-1" с выхода элемента И 44 срабатывает одновибратор 45, одиночныи импульс с выхода которого поступает на выход узла 21 синхро" низатора параллельных микропрограмм, индицируя завершение работы всех опрашиваемых блоков микропрограммного управления, Одновременно импульс с. выхода одновибратора 45 сбрасывает триггер 46 в нулевое (исходное) состояние.Импульс с выхода узла 21 синхронизатора параллельных микропрограмм поступает на управляющий вход узла 1815 Формирования адреса, запуская в нем процесс выработки очередного исполнительного адреса. При этом рассматриваемый импульс через элементы ИЛИ 34 и 36 поступает на вход "+1"20 счетчика 29 адреса, увеличивая его содержимое, а через элемент ИЛИ 37 на стробирующий выход узла 18 Формирования адреса (Фиг.8). Далее начинается процесс выборки очередной мик рокоманды.На этом процесс выполнения микро- команды Формата Е завершен.Таким образом, после запуска блок 1.1 микропрограммного управления может выполнять любую из микрокоманд форматов А,В,С,В,Е. С помощью микро- команды Формата А реализуются услов- ные и безусловные переходы; Формата В - запуск микропрограмм из любых других блоков микропрограммного (бифуркаторы и сборка) управления; Формата С - завершение работы блока микропрограммного управления; Формата Э - выдача микроопераций и ожида - ние и завершение асинхронных процес -40 сов их выполнения (операторы); Формата Е - ожидание завершения асинхронного параллельного выполнения микропрограмм (синхронизаторы).После запуска каждый из блоков 1.2-1.Б также может выполнять любые микрокоманды рассматриваемых Форматов, т.е. выдавать микрооперации, запускать и опрашивать любые блоки микропрограммного управления и т.п, При этом работа каждого из блоков микропрограммного управления аналогична описанному, т.е. черезблок 4 передача адресов запуска на адресные входы поступают соответствующие адреса, начинается процесс выборки микро- команд и т.д а состояние каждого блока микропрограммного управления передается на шину 13. Каждый иэ блоков микропрограммного управления работает независимо друг от друга и может запускать н опрашивать состояние других идентичных блоков.Признаком конца выполнения операции заданной соответствующим кодом по входу 7 кода операции; является значение "1" , выдаваемое по выходу 14 признака конца работы, Значение "1" вырабатывается элементом И 6 тогда, когда все триггеры 24 блоков 1 завершили выполнение (с помощью микрокоманд Формата С) закрепленных за ними участков микропрограммы.На Фиг.10 показан пример Функц- онирования мультипрограммной управляющей системы, содержащей четыре блока микропрограммного управления,Система позволяет осуществлять асинхронную выдачу микроопераций и ожидать их завершения; запускать на выполнение параллельные участки микропрограмм, каждый из которых может запускать другие параллельные участки; синхронизировать работу любого подмножества параллельных участков микропрограмм; иметь в множестве параллельно работающих блоков микропрограммного управления требуемое число микропрограмм верхнего и нижнего уровнеи.Перечисленные дополнительные возможности системы обеспечивают микропрограммирование любых конкретных параллельных асинхронных алгоритмов управления (4,5), Инкропрограммирование такого типа алгоритмов в прототипе невозможно.В частности, при разработке микропрограммных устройств управления многопроцессорными системами моделирования возникает задача управления множеством однотипных вычислителей. При этом каждыйиэ специализированных вы" числителей реализует закрепленную за ним подмодель и после ее вычисления он становится свободным для реализации других подмоделей. Окончание работы каждого вычислителя заранее непредсказуемо (асинхронно) и зависит от сложности соответствующей подмодели.Предлагаемая система позволяет запускать каждый вычислитель асинхронно по мере его освобождения. При этом быстродействие системы моделирования повышается в 5-6 раз из-за болееэффективного управления параллельными процессами.Лналогичная задача управления параллельными процессами возникает в многоканальных системах связи, использующие решающие или информационные сообщения подтвержцения, В частности, алгоритмы процесса передачи дискретной информации и другие являются асинхронными и параллельными из-за одновременной работы как прямых, так и обратных каналов. При этом необходимость синхронизации и Фазирования по прямым и обратным каналам, реализация принципа резервирования и подтверждения требует асинхронной дисциплины выдачи микроопераций, запуска и синхронизации параллельных процессов (кодирование, декодирование, передача блока, прием блока, поиск ошибок, исправление ошибок, передача запроса, передача подтверждения и т.п.).25Формула изобретения 1. Мультимикропраграммная управляющая система, содержащая Ы блоков микропрограммного управления, где И - количество параллельно реализуемых алгоритмов, группу элементов И, группу элементов ИЛИ, причем первые группы входов логических условий блоков микропрограммного управления являются входами логических условий систе 35 мы, выходы микроопераций блоков микропрограммного управления являются вывыходами микроопераций системы, о тл и ч а ю щ а я с я тем, что, с целью повышения быстродействия при реализации параллельных асинхронных алгоритмов, в нее введены блок элементов ИЛИ, одновибратор, элемент И, причем первый выход блока элементов ИЛИ соединен с первыми входами элементов ИЛИ группы, выходы которых соединены с входом кода операции первого блока микропрограммного управления, -й выход (=2,И) блока элементов ИЛИ соединен с входом кода опера О ции -го блока микропрограммного управления, первые входы элементов И группы являются входами кода операции системывход одновибратора является входом пуска системывыход одно.55 вибратора соединен с вторыми входамн элементов И группы, выходы которых соединены с вторыми входами элементов ИЛИ группы, выход адресов запуска 1-го блока микропрограммного управления (1=1,И) соединен с 1-м входом блока элементов ИЛИ, выход состояния 1-го блока микропрограммного управления соединен с 1-ми входами второй группы логических условий с первого по (1-1)-ый и с Я+1)-го по М блоков микропрограммного управления и с 1-м входом элемента И, выход которого является выходом признака конца работы системы, входы третьей группы логических условий блоков микропрограммного управления являются входами завершения микроопераций системы.2. Система по п.1, о т л и ч а ю-. щ а я с я тем, что блок микропрограм-. много управления содержит узел памяти микрокоманд, узел формирования адреса микрокоманды, регистр адреса микрокоманды, буферный регистр, элемент ИЛИ, первый и второй одновибраторы, Т-триггер, элемент И, группу элементов ИЛИ, дешифратор формата микрокоманды, элемент задержки, триггер, первую группу элементов И, вторую группу элементов И, причем выход регистра адреса микрокоманд соединен с первым информационным входом узла формирования адреса микрокоманд, выход которого соединен с адресным входом узла памяти микрокоманд, информационный выход которого соединен с информационным входом регистра адреса микрокоманд, с первыми входами элементов И первой группы, и второй группы, с информационным входом буферного регистра с первыми входами элементов ИЛИ группы, выход второго одновибратора соединен с первым управляющим входом узла формирования адреса микрокоманд, выход поля форма;, та микрокоманды узла памяти микро- команд соединен с информационным входом дешифратора Формата микрокоманды, первый выход которого соединен с вторыми управляющим входом узла формироч вания адреса микрокоманд и с входом синхронизации регистра адреса микро- команд, второй выход дешифратора Формата микрокоманды соединен с третьим управляющим входом узла Формирования адреса микрокоманд и с вторыми входами элементов И первой группы, третий выход дешифратора форматамикрокоманды соединен с входом установки в "О" регистра адреса микро- команд и со счетным входом триггера,Фиг. 2 четвертый выход дешифратора микрокоманд соединен с вторыми входами элементов И второй группы, и с входом синхронизации буферного регистра, выход которого соединен с входом элемента ИЛИ, выход которого соединен с входом первого одповибратора, пятый выход дешифратора формата микрокоманд соединен со счетным входом Т-триггера, выход которого соединен с первым входом элемента И, выход которого соединен с входом второго одновибратора, вторые входы элементов ИЛИ, группы являются входами второй группы логических условий блока микропрограммного управления, выходы элементов ИЛИ группы соединены с ос - тальными входами элемента И, выход второго одновибратора соединен с входом установки в "О" Т-триггера, выход первого одновибратора соединен с четвертым управляющим входом узла формирования адреса микрокоманд, выход стробирования которого соединен 25 с входом элемента задержки и входом установки в "1" триггера, инверсный выход которого является выходомсостояния блока микропрограммногоуправления, выход элемента задержкисоединен.со стробирующим входом дешифратора формата микрокоманд, второй информационный вход узла формирования адреса микрокоманд являетсяпервым входом логических условий блока микропрограммного управления, третий информационный вход узла формирования адреса микрокоманд является входом кода операции блока микропрограммного управления, выходы элементовИ первой группы образуют выход адресов запуска блока микропрограммногоуправления, выходы элементов И второй группы образуют выход микроопераций блока микропрограммного управления, третий вход логических условийблока соединен с входами установкив "О" буферного регистра.

Смотреть

Заявка

4657004, 28.02.1989

КИШИНЕВСКИЙ НАУЧНО-ИССЛЕДОВАТЕЛЬСКИЙ ИНСТИТУТ "КВАНТ"

ГРЕМАЛЬСКИЙ АНАТОЛИЙ АЛЕКСАНДРОВИЧ

МПК / Метки

МПК: G06F 9/00, G06F 9/22

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

Опубликовано: 28.02.1991

Код ссылки

<a href="https://patents.su/12-1631542-multimikroprogrammnaya-upravlyayushhaya-sistema.html" target="_blank" rel="follow" title="База патентов СССР">Мультимикропрограммная управляющая система</a>

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