Микропрограммное устройство управления
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Номер патента: 1647566
Автор: Гремальский
Текст
(9) 06 Р 9/ АВТОРСКО ВИДЕТЕЛЬСТВ преде ГОСУДАРСТВЕННЫЙ КОМИТЕТПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯПРИ ГКНТ СССР(56) Авторское свидетельство СССР М 596947, кл. 6 06 Р 9/221976,Авторское свидетельство СССР М 959080, кл, 6 06 Р 9/22, 1980.Авторское свидетельство СССР К. 1168936, кл. 6 06 Р 9/22, 1983. (54) МИКРОПРОГРАММНОЕ УСТРОЙСТВО УПРАВЛЕНИЯ(57) Изобретение относится к цифровой вычислительной технике и может быть использовано при построении микропрограммных устройств управления распределенных Изобретение относится к цифровой вычислительной технике и может быть использовано при построении микропрограммных устройств управления распределенных цифровых систем, проектируемых на однотипных БИС и реализующих параллельные алгоритмы обработки информации.Цель изобретения - расширение области применения за счет реализации любой дисциплины запуска и ожидания завершения параллельных участков микропрограмм,На фиг, 1 и 2 дана функциональная схема микропрограммного устройства управления; на фиг, 3- функциональная схема блока формирования адреса микрокоманд; на фиг.4 - форматы микрокоманд устройства; на фиг. 5- алгоритм работы устройства; на фиг. цифровых систем, проектируемых на однотипных БИС и реализующих параллельные алгоритмы обработки информации. Цель изобретения -расширение области применения устройства за счет реализации любойдисциплины запуска и ожидания завершения параллельных участков микропрограммы, Для этого устройство содержит блок постоянной памяти, блок формирования адреса микрокоманд, регистр адреса следующей микрокоманды,. регистр микроопераций, регистр формата микрокоманды, регистр начала микропрограмм, регистр состояния параллельных участков, триггер управления, генератор импульсов, элемент ИЛИ, блок элементов ИЛИ, первый и второй элементы И, первый и второй блоки элементов И, группу элементов И, одновибратор, первый и третий элементы задержки, 1 з.п, ф-л ы, 6 ил. 6 - пример функционирования рас ленной вычислительной системы.Микропрограммное устройство управления (фиг, 1 и 2) содержит блок 1 постоянной памяти с выходами 2-4 адреса следующей микрокоманды, микроопераций, формата микрокоманды соответственно, блок 5 формирования адреса микрокоманд, регистр 6 адреса следующей микрокоманды, регистр 7 микроопераций, выход 8 микрооперации "Конец работы", регистр 9 формата микрокоманды с выходами 10 и 11 метки М 1 опроса состояния параллельных участков и метки М 2 запуска параллельных участков соответственно, регистр 12 начала микропрограммы, регистр 13 состояния параллельных участков, триггер 14 управления, генератор 15 тактовых импульИ 1// юмбэвт псар И фа 21 Составитель Ю.Ланцоведактор М,Стрельникова Техред М.Моргентал Корректор И.Муск Тираж 409 Подписноевенного комитета по изобретениям и открцтиям при ГКН 113035, Москва, Ж, Раушская наб., 415 роизводственно-издательский комбинат "Патент", г. Ужгород, ул, Гагарина; 101 аказ 1649 ВНИИПИ Госуд Рор//от В5 10 15 20 25 30 35 40 сов, элемент ИЛИ 16, блок 17 элементовИЛИ, первый элемент И 18, второй элементИ 19, первый блок 20 элементов И, второйблок 21 элементов И, группу из(й) элементов И 22.1-22. М, одновибрэтор 23. первый элемент 24 задержки, второй элемент25 задержки, третий элемент 26 задержки,вход 27 логических условий, вход 28 кодаопераций, группу 29 входов адреса, первый.- (й)-й входы 30,1-30.Мметок началапараллельных участков соответственно,первый - (й)-й Входы 31,1 - 31,8-1 метокконца параллельных участков соответственно, вход 32 пуска, выход 33 микрооперацийустройства, руппу 34 выходов адреса, первый - (й)-й выходы 35,1-35,8-1 меток начала параллельных участковсоответственно, первый - (Й)-й выходы36.1-36.Ыметок конца параллельных участков соответственно,Блок 5 формирования адреса микрокоманд (фиг. 3) содержит первый мультиплексор 37, второй мультиплексор 38,коммутатор 39 адреса, коммутатор 40 успоВИй, ПЕРВЫЙ ЭЛЕМЕНТ И 41, второй элементИ 42, элемент 43 задержки, элемент ИЛИ 44и счетчик 45 адреса.Блок 1 постоянной памяти предназначен для хранения микрокоманд, входящих всостав микропрограмм, Различают следующие форматы микрокоманд(фиг. 4):Формат А - для выдачи сигналов микроопераций, проверки логический условий либо опроса состояний параллельныхучастков;Формат В - для запуска параллельныхучастков микропрограмм.Микрокоманда Формата А имеет следующие доля;Асл - адреса очередной микрокаманды;КО - кода опроса;МО - микроопераций;М 1, М 2 - удравляющих меток,Для формата А М 2= О.Полям Асд, КО соответствует Выход 2адреса следующей микрокоманды блока 1,долю МО соответствует выход 3 микроопераций, э полям М 1 и М 2 - выход 4 Форматамикрокоманд,Микрокоманда Формата В содержитследующие поля:Асл - адреса очередной микрокоманды;КО - кода опроса;Е - метки запуска параллельного участка в 1-ом модуле,= 1М;А - начальный адрес параллельногоучастка в блоке 1 постоянной памяти 1-огомодуля,Дпя формата в М 2 = 1. Полям Аси, КО соответствует выход 2 адреса следующей микрокоманды блока 1, долям Е 1, А 1,71 чАн- выход 3 микро- операций, а полям Ю 1 и М 2 - выход 4 формата микрокоманд.Блок 5 (фиг. 3) формирования адреса микрокоманд предназначен для формироьания исполнительного адреса очередной микрокоманды и адреса микрокоманды при передаче управления на данное МПУУ, Исполнительный адрес формируется в зависимости от значения кодов логических условий, поступающих по входу 27 устройства, либо состояния (завершены/незавершены) опрашиваемых параллельных участков.Первый мультиплексор 37 предназначен для выбора одного из значений логических условий, поступающих нэ Вход 27. Выбср значения логического условия происходит в зависимости от кода опроса КО микрокоманды, поступающего на другой вход мультиплексора 37. Последний реализует следующую логическую функцию:ф =Уха,где х; - значение,-го логического условия навходе 27 устройства;- значение )-го разряда КО микрокомэнды;и в , разрядность кода логических условий, постудающих на вход первого мультиплексора 37, Очевидно, выходное значение 1 мультиплексора 37 равно "1", если хотя бы одно из проверяемых логических условий истинно,Второй мультиплексор 38 предназначен для опроса состояния (завершены/незавершен) параллельных участков, указанных в ходе опроса КО микрокоманды. КО поступает на один из Входов второго мультиплексора 38 с выхода регистра 6 адреса следующей микрокоманды.Мультиплексор 38 реализует следующую функциюгде уев значения )-го разряда регистра 13 состояния параллельных участков;р- значение )-го разряда КО микрокоманды.Выходное значение ф мупьтиглексора 38 равно "1", если хотя бы один из опраши 1647566ваемых параллельных участков незавершен, те. у=1,Коммутатор 39 адреса предназначен для передачи на информационный вход счетчика 45 начального адреса микропрограммы или параллельного участка, Если сигнал пуска, поступающий на вход блока 5 с выхода элемента ИЛИ 16, равен "14", на выход коммутатора 39 адреса передается адрес с выхода блока 17 элементов ИЛИ. В противном случае на выход коммутатора 39 передается адрес Асл микрокоманды, поступающий с выхода регистра 6 адреса следующей микрокоманды.Коммутатор 40 условий предчазначен для передачи на вход элементов И 41 и 42 результата анализа логических условий либо результата опроса состояния параллельных участков. Если значение метки М 1 равно "1", на выход коммутатора 40 с выхода мультиплексора 38 передается инверсное значение результата опроса состояния параллельных участков.Элементы И 41 и 42 предназначены для формирования управляющих сигналов "+1" и "Прием" счетчика 45 адреса. Управляющие сигналы формируются в момент прихода тактового импульса т.- в зависимости от значения метки М 1, полей Асл и КО соответствующих микрокоманд, Если выход коммутатора 40 условий установлен в "0", формируется управляющий сигнал "Прием". В противном случае формируется управляющий сигнал "+1".Элемент 43 задержки предназначен для устранения состязаний на входах счетчика 45 адреса. Длительность задержки элемента 43 выбирается исходя из задержки коммутатора 39 адреса,Элемент ИЛИ 44 предназначен для объединения управляющих сигналов, поступающих с входа пуска блока 5 и выхода элемента И 42.Счетчик 45 адреса предназначен для формирования и хранения исполнительного адреса микрокоманд. При наличии на входе счетчика 45 управляющего сигнала "Прием" в счетчик 45 фиксируется код с его информационного входа, т.е, выполняется принудительная адресация следующей микрокоманды. При наличии на входе счетчика 45 управляющего сигнала "+1" его содержимое увеличивается на единицу, т.е. выполняется естественная адресация очередной микрокоманды.Регистр 6 адреса предназначен для хранения полей Ас и КО, поступающих с выхода 2 адреса блока 1 постоянной памяти,5 10 15 20 25 30 35 40 45 50 55 Регистр 7 микроопераций необходим для хранения поля МО, поступающего с выхода 3 блока 1 постоянной памяти.Регистр 9 формата микрокоманды предназначен для хранения меток М и Мг, поступающих с выхода 4 блока 1 постоянной памяти.Регистр 12 начала микропрограмм служит для хранения метки начала параллельного участка, поступающей по одному иэ входов 30.1-3 ОМ.Регистр 13 состояния параллельных участков служит для отображения состояния всех параллельных участков, запускаемых МПУУ. Если 1-ый разряд регистра установлен в "1", 1-ый параллельный участок незавершен. В противном случае соответствующий участок завершен.Разряд ( устанавливается в "1" сигналом с выхода элемента И 22 л при запуске МПУУ соответствующего параллельного участка и сбрасывается в "0" при поступлении на вход 31. метки конца соответствующего параллельного участка.Триггер 14 управления служит для запуска и останова МПУУ,Генератор 15 импульсов формирует на своих выходах две последовательности сдвинутых одна относительно другой синхроимпульсов г 1 и т 2, Генератор вырабатывает импульсы только при наличии на его управляющем входе сигнала "1".Элемент ИЛИ 16 предназначен для формирования сигнала запуска устройства, Запуск устройства выполняется либо от сигнала "Пуск", поступающего с входа 32, либо от одной иэ меток начала параллельного участка, поступающей по входам 30,1- ЗОЛ.Блок 17 элементов ИЛИ предназначен для формирования начального адреса микропрограммы либо параллельного участка. Начальный адрес микропрограммы поступает с входа 28, а начальные адреса параллельных участков - с входов группы 29.Элемент И 18 предназначен для формирования сигнала "Прием" в регистр 7 микро- операций. Сигнал "Прием" формируется при условии, что метка М 2 = 0 при поступлении задержанного тактового импульса т 1 .Элемент И 19 предназначен для формирования сигнала "Сброс" регистра 7 микро- операции и сигнала разрешения выдачи полей 21, А 1, 22, Аг, , 2 м, Аьи на группу 34 выходов устройства. Сигнал на выходе элемента И 19 формируется при условии, что метка М 2= 1 при поступлении задержанного тактового импульса т, 1647566что поле Е микрокоманды формата В уста новлено в "1". 25 30 дам элементов И 18 и 19. Длительность задержки элемента 25 выбирается исходя из задержки регистра 9 формата микрокоманды.Третий элемент 26 задержки предназначен для исключения состязаний по входам элементов И 22.1 - 22.И. Длительность элемента 26 выбирается ис 40 ходя из суммы задержек второго элемента И 19 и первого блока 20 элементов И.Устройство работает следующим образом.В исходном состоянии все триггеры, регистры и счетчик устройства находятся в нулевом состоянии (на фиг. 1-3 цепи в исходном состоянии условно не показаны). В блоке 1 записаны микрокоманды последовательных и параллельных участков микропрограмм.Работа устройства при выполнении первого последовательного участка микропрограммы начинается с подачи на вход 28 кода операций и с приходом нз вход 32 сигнала пуска.При этом код операций Апуска,Первый блок 20 элементов И предназначен для выдачи полей 21, А 1,22, А 2, , Ей, Анна группу 34 выходов устройства,Второй блок 21 элементов И предназначен для формирования метки конца параллельного участка, выполняемого МПУУ. При завершении работы МПУУ на выходе 1-го элемента И блока 21 появляется импульс, если 1-ый разряд регистра 12 начала микропрограммы установлен в "1". Сигнал с выхода 1-го элемента блока 21 поступает на выход 36. конца параллельного участка.Группа элементов И 22.1-22.Йпредназначена для Формирования меток начала параллельных участков, поступающих на выходы 35,1-35.й - 1 МПУУ. Соответствующая метка (импульс) формируется на выходе элемента И 22.1 при поступлении задержанного тактового импульса г 1 при условии,Одновибратор 23 предназначен для формирования одиночного импульса. Импульс вырабатывается при поступлении "1" с выхода 8 микрооперации "Конец работы",Первый элемент 24 задержки предназначен для задержки сигнала сброса регистра 12 начала микропрограммы на время формирования во втором блоке 21 элементов И меток конца параллельных участков. Длительность задержки элемента 24 определяется исходя из требуемой длительности соответствующих меток (импульсов).Второй элемент 25 задержки предназначен для исключения состязаний по вхо 45 50 55 представляющий собой адрес начальной микрокоманды в блоке 1 памяти. с выхода блока 17 элементов ИЛИ поступает на второй информационный вход коммутатора 39 адреса (фиг. 3), Сигнал пуска через элемент ИЛИ 16 поступает на счетный вход триггера 14 управления, управляющий входкоммутзтора 39 адреса и вход элемента 43 задержки. Поскольку триггер 14 управления срабатывает по заднему фронту сигнала на . его счетном входе, его содержимое остается без изменений, Коммутатор 39 адреса пере- КЛЮЧЗЕТСЯ На ПЕРЕДЗЧу ЗДРЕСЗ Апуска С ВЫХО- да блока 17 элементов ИЛИ на информационный вход счетчика 45 адреса. Сигнал пуска, будучи задержанный в элементе задержки, через элемент ИЛИ 44 поступает на вход "Прием" счетчика 45, в котором по переднему фронту сигнала записывается значение Асч = Апуска (блок 46 алгоритма, фиг, 5). Адрес А у с выхода счетчика 45 адреса поступает на вход блока 1 памяти и на его выходах появляются соответствующие поля первой микрокоманды,По заднему фронту сигнала с выхода элемента ИЛИ 16 триггер 14 управления переключается, на его выходе появляется значение "1", которое запускает генератор 15 импульсов, Первый импульс г 1 с выхода генератора 15 поступает на синхровходы регистров 6 и 9, фиксируя в них соответствующие поля микрокоманды. На этом процесс выборки микрокомзнды завершен (блок 47 алгоритма, фиг. 5). Далее работа устройства определяется содержимым полей выбранной микрокоманды.Работа устройства при выполнении параллельного участка микропрограммы начинается с подачей на некотором 1-ом входе ГРУППЫ 29 ВХОДОВ УСТРОЙСТВЗ ЗДРЕСЗ Апуска начальной микрокоманды параллельного участка и с приходом на соответствующий вход ЗОЛ ме-ки начала параллельного участка. Адрес Апуска с выхода блока 17 элементов ИЛИ поступает на блок 5 формирования адреса. Метка начала параллельного участка с входа 30.1 поступает на вход установки 1-го триггера регистра 12 начала микропрограммы и устанавливает соответствующий триггер в "1". Одновременно метка начала параллельного участка с выхода элемента ИЛИ 16 поступает на блок 5 формирования адреса и счетный вход триггера 14 управления. При этом аналогично описанному содержимое счетчика 45 адреса становится равным Асч = А пуска и выполняется выборка первой микрокоманды параллельного участка, соответ 1647566 1040 45 50 55 ствующие поля которой фиксируются в регистрах 6 и 9 (блоки 46 и 47 алгоритма, фиг.5),Далее работа устройства не зависит от способа его запуска и полностью определяется выбранной микрокомандой.Возможны следующие случаи, Случай 1, Из блока 1 постоянной памяти выбрана микрокоманда формата А, При этом в регистре 6 адреса следующей микро- команды содержатся поля Ал и КО, а в регистре 9 формата - метки М 1 и М 2. Для формата А метка М 2 = О. Значение 0 с выхода 11 регистра 9 поступает на элементы И 18 и 19, При этом импульс т 1 с выхода генератора 15 импульсов, задержанный в элементе 25 на время записи в регистр 9, через элемент И 18 поступает на синхровход регистра 7 микроопераций. В регистре 7 (с выхода 3 микроопераций блока 1 памяти) фиксируются микрооперации выбранной микрокоманды, которые поступают на выход 33 устройства (блоки 48 и 49 алгоритма, фиг. 5),Если в рассматриваемой микрокоманде операция "Конец работы" отсутствует, значение сигнала на выходе 8 остается нулевым, триггер 14 управления не изменяет своего состояния и генератор 15 продолжает выработку тактовых импульсов. Тактовый импульс т 2 поступает на синхровход блока 5 формирования адреса, который в зависимости от полей Асл, КО и М 1 вырабатывает на своем выходе исполнительный адрес следующей микрокоманды (работа блока 5 рассматривается ниже). Исполнительный адрес с выхода блока 5 запускает процесс чтения из блока 1 памяти; очередной импульс г 1 вновь фиксирует в регистрах 6 и 9 соответствующие поля выбранной микрокоманды и т.д. Если же в рассматриваемой микрокоманде присутствчет операция "Конец работы", значение "1" с выхода 8 поступает на вход одновибратора 23, Одиночный импульс с выхода последнего сбрасывает триггер 14 управления в "0", который прекращает работу генератора 15. Одновременно этот же импульс поступает на входы элементов И второго блока 21. Если 1-ый разряд регистра 12 начала микропрограммы установлен в "1", одиночный импульс через соответствующий элемент И блока 21 поступает на выход 36 л метки конца параллельных участков (блоки 50-52 алгоритма, фиг. 5). Будучи задержанным на элементе 24 задержки этот же импульс сбрасывает регистр 12, На этом работа МПУУ завершена. 5 10 15 20 25 30 35 Случай 2, Из блока 1 постоянной памяти выбрана микрокоманда формата В. Для формата В метка М 2 = 1. Значение "1" с выхода 11 регистра 9 формата поступает на элементы И 18 и 19, При этом импульс т 1 с выхода генератора 15, задержанный на элементе 25 на время записи в регистре 9, с выхода элемента И 19 поступает на вход сброса регистра микроопераций и первый блок 20 элементов И. Регистр 7 мик роопераций сбрасывается в ноль, т.е, микрокоманда формата В не выдает никаких микроопераций. Одновременно поля А 1. Аю с выхода 3 блока 1 памяти поступают на соответствующие выходы группы 34 адреса, а поле Е 1, , Ею - на первые входы элементов И 22.1 - 22.йгруппы соответственно. На вторые элементы 22,1 - 22,Ипоступает импульс г 1, задержанный на элементе 26 задержки на время переключения первого блока 20 элементов И. Если поле Ъ, 1= 1, , Йрассматриваемой микрокоманды содержит значение "1", тактовый импульс т 1 через соответствующий элемент И 22.1 поступает на вход 35. метки начала параллельного участка и на вход установки 1-го триггера регистра 13 состояния параллельных участков, При этом соответствующий триггер устанавливается в "1", указывая на то, что в 1-ом идентичном устройстве микропрограммного управления запущен параллельный участок (блоки 48 и 53 алгоритма, фиг. 5),Одновременно метка начала параллельного участка с выхода 35.1, поступая на вход 30 л идентичного микропрограммного устройства управления, запускает, начиная с адреса Аь соответствующий паоаллельный участок микропрограммы.С приходом импульса т 2 блок 5 формирования адреса вырабатывает на своем выходе исполнительный адрес; вновь выполняется выборка микрокоманды и т.д.Таким образом, независимо от формата выполняемых микрокоманд по тактовому импульсу г 1 осуществляется выдача микро- операций либо запуск других идентичных устройств, а по тактовому импульсу т вырабатывается исполнительный адрес очередной микрокоманды.Идентичные микропрограммные устройства, завершая выполнение параллельных участков, вырабатывают метки конца, которые, поступая по входам 30,1 - 30,Мна предлагаемое устройство, сбрасывают по мере завершения работы соответствующие триггеры регистра 13 в "0". Тем самым регистр 13 отображает текущее состояние (завершен/незавершен) каждогопараллельного участка, запущенного даннцм устройством. Состояние регистра 13может опрашиваться блоком 5 формирования адреса при выработке исполнительногоадреса очередной микрокоманд,Блок 5 формирования адреса микрокоманд(фиг, 3) работает следующим образом.Поле Асл с выхода регистра 6 поступаетна первый информационнцй вход коммутатора 39 адреса, а поле КО - на первые входымультиплексоров 37 и 38, На выходе первого мультиплексора 37 появляется значение"1", если хотя бц одно из опрашиваемыхкодом опроса логических условий, поступающих с входа 27, истинно, и "О" - в противном случае. На выходе второгомультиплексора 38 появляется значение"1", если хотя бы один иэ разрядов регистра13 состояния параллельных участков, опрашиваемых кодом опроса, установлен в "1",(паралпельный участок не завершен), и "0" -в противном случае (все опрашиваемье участки завершены),Если М 1= О и опрашиваемые логическиеусловия ложны, выход коммутатора 40 равен 0 и тактовый импульс т 2 с второговыхода генератора 15 через элемент И 42 иэлемент ИЛИ 44 поступает на вход "ПРИЕМ" счетчика 45 адреса. В счетчике фиксируется адрес Асч = Асл, т.е. осуществляетсяпереход к микрокоманде с адресом Асл (блоки 54-56 алгоритма, фиг. 5),Если М 1- О и хотя бы одно из опрашиваемых логических условий истинно, выходкоммутатора 40 равен "1" и тактовый импульс т 2 с второго выхода генератора 15через элемент И 41 поступает на вход "+1"счетчика 45 адреса. В счетчике формируетсяадрес Асч = Асл+ 1, т.е. осуществляется переход к следующей по порядку микрокоманде (блоки 54, 55 и 57 алгооитма, фиг. 5).Если М = 1 и хотя бы один из опрашиваемых параллельных участков не завершен"0" и тактовцй импульс г 2 через элементыИ 42 и ИЛИ 44 поступает на вход "Прием"счетчика 45, фиксируя в нем адреса Асч = Асп(блоки 54, 58 и 56 алгоритма, фиг. 5).Если М 1 1 и все опрашиваемые параллельные участки завершены (соответствующие триггеры регистра 13 установлены в"О"), выход коммутатора 40 установлен в "1"и тактовый импульс через элемент И 4 поступает на вход "+1" счетчика 45, В счетчика45 формируется адрес Асч = Асл+ 1 (блоки 54,58 и 57 алгоритма, фиг. 5).Таким образом, метка М 1 микрокомандыуправляет выбором источника анализируе 10 мой при формировании исполнительного ад 15 20 25 30 35 40 45 50 реса информации - логический условия с входа 27 устройства (М 1 = 0) либо состояния параллельных участков с выхода регистра 13 (М 1 = 1).При необходимости безусловной передачи управления поле кода опроса КО содержит нули, а значение метки М 1безразлично. При этом выходы мультиплексоров 37 и 38 равны нулю, выход коммутатора 40 равен "1" и тактовый импульс с т 2 через элементы И 42 и ИЛИ 44 всегдапоступает на вход "Прием" счетчика 45, В счетчике 45 фиксируется адрес безусловного перехода Асч = Асл.Исполнительный адрес с выхода блока 5 формирования адреса поступает на вход блока 1 постоянной памяти и запускает процесс выборки следующей микрокоманды, соответствующие полл которой по импульсу т 1 вновь зафиксированы в регистрах 6 и 9 и т,д.На фиг, 6 показан пример функционирования распределенной параллельной вычислительной системы, состоящей из четырех модулей. Работа распределенной вычислительной системы начинается с реализации последовательного участка микропрограммы модулем К 1, Модуль К 1 запускается соответствующими сигналами по входам 28 и 32, Модуль К 1 с помощью микрокоманды формата В инициирует параллельное выполнение участков, закрепленных за модулями К 2 и Кз. При этом модули К 2 и Кз запускаются по входам группы 29 адреса. Модуль К 1 продолжает выполнение своей программы и после ее завершения опрашивает состояние параллельных участков в модулях К 2 и Кз.Опрос состояния параллельных участков выполняется с помощью микрокоманды, в котором М 1 = 1, а в поле КО в "1" установлены только разряды, соответствующие модулям К 2 и КзМодуль К 2 запускает параллельный участок в модуле К 4. Сам модуль К 2 выпблняет свой параллельный участок и после его завершения запрашивает завершение работы модуля К 4. После завершения работы модуля К 4 модуль К 2 выдает модулю К 1 метку о завершении выполнения параллельного участка,Получив метки завершения от модулей К 2 и К 1, модуль К 1 с помощью микрокоманды формата В запускает последовательный участок в модуле К 4. Модуль К 4 запускает параллельные участки в модулях К 1, К 2, Кз и продолжает выполнение своего участка микропрограммы. По завершению своего участа модуль К 4 опрашивает состояниемодуля К 1 и при необходимости ожидает завершение его работы. Опрос состояния параллельногоучастка в модуле К 1 выполняется с помощью микрокоманды, в котором М 1 = 1, а в поле КО в "1" установлен только разряд, соответствующий модулю К. После завершения работы модуля К 1 модуль К 4 вновь выполняет свой участок микропрограммы, а после его завершения ожидает окончание работы ранее запущенных модулей К 2 и й. Опрос состояния параллельных участков в модулях К 2 и Кз выполняется аналогично ранее описанному. Получив от модулей К 2 и Кз соответствующие метки конца выполнения, модуль К 4 выполняет последовательный участок микропрограммы и завершает свою работу. 5 10 15 Формула изобретения 20 25 30 35 40 50 55 1. Микропрограммное устройство управления, содержащее блок постоянной памяти, блок формирования адреса микрокоманд, регистр начала микропрограммы, регистр состояния параллельных участков, триггер управления, генератор тактовых импульсов, элемент ИЛИ, блок элементов ИЛИ, первый и второй элементы И, первый и второй блоки элементов И, группу из (1 ч) элементов И, где И - максимальное количество параллельно выполняемых участков микропрограмм, одновибратор, первый элемент задержки, причем первый информационный вход блока формирования адреса микроксманд является входом логических условий устройства, второй информационный вход блока формирования адреса микроксманд соединен с выходом блока элементов ИЛИ, входы которого с первого по (М)-й являются группой входов адреса устройства, первый вход элемента ИЛИ является входом пускаустрсйства, 1-ый входсброса(1 1- М - 1) регистра состояния параллельных у:астков является 1-ым входом конца параллельных участков устройства, 1-ый вход установки регистра начала микропрограммы является . 1-ым входом метки начала параллельных участков устройства, выход блока формирования адреса микрокоманд соединен с адресным входом блока постоянной памяти, выход одновибратора соединен с входом сброса триггера управления, выход первого элемента задержки соединен с входами сброса регистра начала микропрограммы, выход которого соединен с первым входом второго блока элементов И, 1-ый выход второго блока элементов И является. 1-ым выходом метки конца параллельного участка устройства, прямой выход триггера управления соединен с входом запуска генератсра тактовых импульсов, о т л и ч а ю щ е е с я тем, что, с целью расширения области применения за счет реализации любой дисциплины запуска и ожидания завершения параллельных участков микропрограммы, оно содержит регистр адреса следующей микрокоманды, регистр микрсспераций, регистр формата микрокоманды, группы из(М) элементов И, второй и третий элементы задержки, причем выход адреса следующеймикрокоманды блока постоянной памяти соединен с информационным входом регистра адреса следующей микроксманды, выход микроопераций блока постоянной памяти соединен с информационным входом регистра микроопераций и первым входом первого блока элементов И, выход формата микроксманды блока постоянной памяти соединен с информационным входом регистра формата микрокоманды, выход поля метки опроса состояния параллельных участков которого соединен с первым управляющим входом блока формирования адреса микрокоманд, выход поля метки запуска параллельных участков регистра формата микрскоманды соединен с инверсным входом первого элемента И и первым входом второго элемента И, выход которого соединен с входом сброса регистра микроопераций и вторым входом первого блока элементов И, выходы которого образуют группу выходов адреса устройства, 1-ый выход первого блока элементов И соединен с первым входом 1-го элемента И группы элементов И, выход которого соединен с 1-ым входом установки регистра состояния параллельных участков и является 1-ым выходом метки начала параллельного участка устройства, И-ый вход блока элементовИЛИ является входом кода операций устройства,1-ый вход метки начала параллельных участков устройства соединен с (1+1)-входом элемента ИЛИ, выход которого соединен с втврым управляющим входом блока формирования адреса микрокоманд и счетным входом триггера управления, выход "Конец работы" регистра микроопераций через одновибратор соединен с входом первого элемента задержки и вторым входом второго блока элементов И, первый выход генератора тактовых импульсов соединен с входами синхронизации регистра адреса следующей микрокоманды, регистра формата микрокоманды и входом второго элемента задержки, выход которого соединен с вторыми входами первого и второго элемента И и входом третьего элемента задержки, выход которого соединен с вторыми входами элементов И группы элементов И, второй выход генератора тактовыхимпульсов соединен с синхровходом блока формирования адреса микрокоманд, выход первого элемента И соединен с синхровходом регистра микроопераций, выход котооого является выходом микроопераций устройства, выход регистра адреса следующей микрокоманды соединен с третьим информационным входом блока формирования адреса микрокоманд, выход регистра состояния параллельных участков соединен с четвертым информационным входом блока формирования адреса микро- команд.2. Устройство по и. 1, о т л и ч а ю щ е ес я тем, что блок формирования адреса микрокоманд содержит первый и второй мультиплексоры, коммутатор адреса, коммутатор условий, первый и второй элементы И, элемент задержки, элемент ИЛИ и счетчик адреса, причем управляющие входы первого и второго мультиплексоров соединены между собой и с первым информационным входом коммутатора адреса и образуют третий информационный вход блока формирования адреса микрокоманд, информационный вход первого мультиплексора является первым информационным входом блока формирования адресов микрокоманд, информационный вход второго мультиплексора является четвертым информационным входом блока формирования адреса микро- команд, второй информационный вход коммутатора адреса является вторым информационным входом блока формирования адреса микрокоманд, управляющий вход коммутатора условий является первым уп равляющим входом блока формированияадреса микрокоманд, управляющий вход коммутатора адреса соединен с входом элемента задержки и является вторым управляющим входом блока формирования адреса 10 микрокоманд, первый вход первого и прямой вход второго элементов И соединены между собой и образуют вход синхронизации блока Формирования адреса микрокоманд, выход первого мультиплексора 15 соединен с прямым информационным входом коммутатора условий, выход которого соединен с вторым входом первого элемента И и инверсным входом второго элемента И, выход которого соединен с первым вхо О дом элемента ИЛИ, выход которого соединен с входом записи счетчика адреса, выход которого является выходом блока формирования адреса микрокоманд, выход второго мультиплексора соединен с инверсным ин формационным входом коммутатора условий,выход элемента задержки соединен с вторым входом элемента ИЛИ, выход первого элемента И соединен с суммирующим входом счетчика адреса, выход коммутатора адреса ЗО соединен с информационным входом счетчика адреса.
СмотретьЗаявка
4699062, 18.04.1989
КИШИНЕВСКИЙ НАУЧНО-ИССЛЕДОВАТЕЛЬСКИЙ ИНСТИТУТ "КВАНТ"
ГРЕМАЛЬСКИЙ АНАТОЛИЙ АЛЕКСАНДРОВИЧ
МПК / Метки
МПК: G06F 9/22
Метки: микропрограммное
Опубликовано: 07.05.1991
Код ссылки
<a href="https://patents.su/10-1647566-mikroprogrammnoe-ustrojjstvo-upravleniya.html" target="_blank" rel="follow" title="База патентов СССР">Микропрограммное устройство управления</a>
Предыдущий патент: Микропрограммное устройство управления с контролем
Следующий патент: Устройство для контроля ввода информации
Случайный патент: Устройство для измерения частотной характеристики четырехполюсника