Микропрограммное устройство управ-ления

Иллюстрации

Показать все

Реферат

 

ОП ИСАНИЕ

ИЗОБРЕТЕНИЯ

Сешеа Советских

Социалистических

Ресиубинк

К АВТОРСКОМУ СВИ ЕТЕЛЬСТВУ (61) Доволмительмое к авт. саид-еу (22) Заявлемо. 270879 (21) 2815254/18-24. р1}м g .3 с присовдимвмием заявки Ие

G 06 F 9/22 (53} УДК 681. 325 (088.8) Гесуяевствеяный кеюетет

СССР яе ямеи нзобретеянЯ я етярытяя (23) Приоритет

Опубликовамо 300631. Бюллетень 149 24

Дата опубликования описания 30.0681 (7 t) Заявитель июю институт периферийного оборудования (54) МИКРОПРОГРАММНОЕ УСТРОЙСТВО УПРАВЛЕНИЯ

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

Известно микропрограммное устрой,ство управления, содержащее блок па5 мяти микрокоманд, регистр адреса мик. рокоманд, регистр микрокоманд, дешифратор кода микрокоманд, элементы И, 10

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

Ю .Наиболее близким к изобретению по технической сущности и достигаемОму результату является микропро« граммиое устройство управления, со- держащее память микрокоманд, регистр ® микрокоманд, регистр адреса микроксканды, ковееутатор, оперативную память, дешифратор эвскрокомандн, регистр адреса оперативной памяти,(2).

Однако функциональные возможности такого устройства ограничены.

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

Эта цель достигается тем, что в микропрограммное устройство управления, содержащее -блок памяти микрокоманд, выход которого ссединен с информационным входом регистра микро.команд н с первым информационным входом коммутатора, второй информационный вход которого соединен с выходом:блока оперативной памяти, адресный вход которого соединен с выходом. регистра адреса оперативной памктй, управляющий вход коммутатора .соединен с.выходом управления регистра микрокоманд и .с первым входом дешифратора микрокоманд, второй, вход которого соединен с выходом кода команды регистра микрокоманд, выход функциональной выборки которого соединен с первым информационным входом регистра адреса микрокоманд н с инфор.мационным входом .регистра адреса оперативной памяти, выход коммутатора соединен с информационным входом блока оперативной памяти и со вторым информационным входом регистра адреса микрокоманд, выход которого соединен со входом блока памяти микрокоманд, введены сдвиговый регистр, счетчик, дешифратОр функционалвяых сигналов, селектор условий и формирователь ут

842815 равляющих сигналов, причем выходысдвигового регистра и счетчика соединены соответственно с третьим и четвертым информационными входами коммутатора, управляющие входы сдвигового регйстра, счетчика, блока оперативной памяти, регистра, адреса опе(ративной памяти, регистра адреса мик» рокоманд регистра чкрокоманд соединены о управляющим выходом формирователя управляющих сигналов, выход блокировки которого соединен с третьим входом дешифратора микрокоманд, первый и второй выходы которого соединены соответственно с информационным входом дешифратора функциональных сигналов и с.первым входом фор- 15 мирователя управляющих сигналов, второй вход которого соединен с выходом селектора условий, группа. информационных входов которого является группой входов условий устройства, gp выход дешифратора функциональных сигналов соединен с третьим входом формирователя управляющих сигналов и является выходом устройства, разрешающие входы селектора условий и дешиф,ратора функциональных сигналов соединены с выходом функциональной выборки регистра микрокоманд, информационные входы сдвигового регистра .и счетчика соединены с выходом коммутатора, Кроме того, селектор условий содержит коммутатор и триггер, причем группа информационных входов селектора соединена с группой входов коммутатора, выход и вход которого соеди- З5 нены соответственно с входом тригге.ра и с разрешающим входом селектора, выход триггера соединен с выходом селектора.

Кроме того, формирователь.управля- 40 ющих сигналов содержит элементы И, ИЛИ, HE и два триггера, причем пер.вый вход формирователя соединен с первыми входами первого, второго и третьего элементов И, с первым и 45 вторым входами четвертого элемента И, с первым входом первого элемента ИЛИ, через первый элемент НЕ с первым входом пятого элемента И, через второй элемент НЕ с первым входом второго 50 элемента ИЛИ, второй вход формирователя соединен со вторыми входами второго и третьего элементов И, третий вход Формирова еля соединен с первым и вторыя входами третьего элемента ИЛИ, с первым, вторым и третьим входами четвертого элемента ИЛИ, со вторыми входами первого и йятого элементов И, с управляющим выходом формирователя и,.череэ Формирователь импульсов с управляющим выходом форми- 6Î .рователя, выход четвертого элемента

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

На фиг.1 представлена блок-схема устройства; на фиг.2 — схема селектора условийуна фиг.3 — схема формирователя управляющих сигналов.

Устройство состоит из блока 1 памяти микрокоманд, регистра 2 микрокоманд, регистра 3 адреса оперативной памяти, блока 4 оперативной памяти, дешифратора 5, микрокоманд, счетчика 6, регистра l адреса микрокоманд, коммутатора 8, сдвигового регистра 9, дешифратора 10 функциональных сигналов, селектора 11 условий, формирователя 12 управляющих сигналов, а также содержит выходы

13-15 регистра микрокоманд, выходы

Хб и 17 дешифратора микрокоманд, входы 18-20 и выходы 21 и 22 формирователя управляющих сигналов, Выход 13 является выходом поля управляющим коммутатором, выход 14 разряды поля кода .команды, выход 15выход поля функциональной выборки, выход 21- сигнал блокировки .дешифрации микрокоманды, выход 22 — является выходом сигналов, управляющих работой регистра микрокоманд, регистра адреса микрокоманд, регистра адреса оперативной памяти, оперативной памяти, счетчика, сдвигового регистра.

Схема селектора 11 условий (фиг.2) включает .в себя коммутатор 23 и триг гер 24.

При выполнении микрокоманд Ус- . ловное ветвление и . Ожидание четчрехразрядный код анализируемого условия по выходу 15 регистра 2 микрокоманд позволяет получать на выходе коммутатора 23 истинное значеиие входного условия, которое запоминается на триггере 24.

Схема формирователя 12 управляющих сигналов (фиг.3) включает в себя элемент И 25, элемент ИЛИ 2б форми рователь 27 импульсов, элементы ИЛИ

28 и 29, триггеры 30 и 31, элементй

И 32-34, элемент HE 35, элементы И

Зб и 37, элементы ИЛИ 38 и 39, эле-

842815 м..нты НЕ 40 и 41. и работает следующим образом.

Сигнал Загрузка PAM на выходе элемента ИЛИ 38 формируется при выполнении микрокоманд безусловного перехода (по входу 18),при выполнении микрокоманд условное ветвление и Ожидание и обнаружении заданного условия и по входу 20 через элемент И 37.или заданного неусловия по входу 20 через элемент И 36.

Сигнал Приращение РАМ на вхо" де элемента И 25 вырабатывается при выполнении любой микрокоманды (на выходе элемента НЕ 40 единичное значение), кроме микрокоманды Ожидание и при отсутствии условий для 15 формирОвания сигнала Загрузка

PAM на выходе элемента ИЛИ 38.

Сигнал Загрузка РАМ на выходе элемента ИЛИ 39 формируется после выполнения любой микрокоманды, кро- 2О ме микрокоманды Ожидание (при этом на выходе, элемента НЕ 40.значение логического нуля) и если не обнаружены заданные микрокомандной Ожидание условия (на выходе элементов И 36 и И 37 значения логических нулей).

Сигнал Выбор РОН, на выходе элемента И 34 формируется при совпадении сигналов с дешифратора 5 по входу 18. Сигналы Загрузка счетчика на выходе элемента И 32 и Приращение счетчика на выходе элемента И 33 вырабатывается соответственно при наличии и отсутствии сигнала на входе 18 и при появлении сигнала Синхронизация счетчика на входе 19 из дешифратора 10, Сигнал Синхронизация CP на выходе элемента ИЛИ 26 совместно с единичным сигналом Загрузка СР по входу 19 .осуществляет параллельную загрузку информации в сдвиговый регистр 9, а с нулевым сигналом 3aгрузка .CP — сдвиг информации.

Сигнал Загрузка РОН на выхо- 45 де формирователя 27 импульсов запускается по входу 19 иэ дешифратора 10.

Сйгнал Блокировка дешифрации на выходе триггера 31 устанавливается через элемент ИЛИ 29 или единичным сигналом Загруэка. PAN и по выходу элемента ИЛИ 38, или единичным сигналом триггера 30, который устанавливается через элемент ИЛИ 28

55 сигналами . Загрузка СР, Загрузка РОК и Синхронизация счетчика по.входу 19.

Устройство работает следующим образом.

Иикрокоманда,выбираемая из блока 6О памяти 1 по адресу, хранимому в регистре 7,: засылается в регистр 2 по управляющему сигналу выхода 22 формирователя 12.. Выбранная микрокоманда.расшифровывается в дешифраторе 5, 65 формируя соответствующие сигналы ио выходам 16 и 17.

Микрокоманда состоит из поля управления .(выход 13), поля кода команды (выход 14.), поля функциональной выборки (выход 15) . Адрес очередной микрокоманды формируется в регистре

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

PAM по выходу 22 формирователя 22 перед выполнением текущей микрокоманды .разрешает формирование адреса следующей микрокоманды увеличением на единицу текущего адреса микрокоманды.

Если выбрана микрокоманда действие, то она через выходы 13 и 14 регистра 2 расшифровывается в дешифраторе 5, а выход 15 регистра 2, задавая код функции (действия), поступает на вход дешифратора 10, на выходе которого формируется сигнал, соответствующий заданному коду. Дешифратор 10 построен по мультиплексному гринципу.

Если выполняется микрокоманда безусловного перехода, то в регистр 7 заносятся старшие разряды адреса следующей микрокоманды с выходом 15 регистра 2 микрокоманды, а младшие разряды через .коммутатор 8 из блока 1 памяти при задании в поле управлен:" кода 10 (.выход 13) регистра 2 микрокоманд или блока оперативной памяти

4 — при задании кода 11. Причем, младшие разряды адреса следующей микрокоманды выбираются из ячейки блока 4 оперативной памяти, определяемой регистром 3, или из ячейки блока 1 памяти, адрес которой увели . на единицу относительно адреса ;икрокоманды безусловного перехода. Призтом происходит блокировка дешиФрации кода адреса, занесенного и в регистр 2 сигналом по выходу 21 формирователя 12.

При выполнении микрОкоманды условного ветвления в поле функциональной выборки регистра 2 задается код. Условия, в Поле управления — знак условия и направление, по которому из- влекается адрес ветвления. Селектор

11 условий позволяет определить наличие или отсутствие в данный момент заданного условия выдачей соответственно единичного и нулевого сигнала на выходе селектора 11, который пода- ется на вход формирователя 1.2.

Формирователь 12, сравнивая сиг-. налы, поступившие из селектора 11 .Условий и дешифратора 5 по выходу 17, выдает по выходу 22 сигнал Приращение РАМ, еслИ произошло их несов" падение, т. е. задако отсутствие условия; а оно обнаружено., или сигнал Загрузка РАМ, если заданное условие обнаружено. Сигнал Приращение

842815

PAM увеличивает содержимое регистра 7 на единицу, а сигнал Загрузка РАМ позволяет загружать его содержимым из блока 1 памяти или из бАока оперативной памяти в зависимости от .заданного кода в поле управления регистра 2 ° Причем, младшие раз. ряды адреса следующей микрокоманды выбираются из ячейки блока 4 оперативной памяти, определяемом регистром

3, или иэ ячейки блока 1 памяти, адрес которой увеличен на единицу отно-. сительно адреса микрокоманды условного ветвления. При этом происходит блокировка дешифратора кода адреса, . занесенного и в регистр 2 сигналом по выходу 21 формирователя 12. 15

Изменение содержимого регистра 3 осуществляется микрокомандой Выбор

POH, в которой в поле функциональ ной выборки задан код адреса оперативной памяти, По управляющему сигна- Щ лу по выходу 22 формирователя 12 этот код запоминается в регистре 3 и поз(воляет считать информацию из выбран» ной ячейки.

Управление .работой счетчика, сдвигового регистра, блока оперативной памяти осуществляется с помощью микрокоманды Действие, в поле функциональной выборки регистра 2 которой задается код, соответствующий каждому функциональнрму элементу, По сигналам из дешифратора 10 и выходов 17 дешифратора 5 формирователь

12 управляющих сигналов выдает соответствующие сигналы: Загрузка,приращение счетчика, Загрузка, Сдвиг СР, Загрузка POH .

Направление потока информации при выполнении микрокоманды Действие задается кодом поля управления и кодом поля функциональной выборки ре- 4О гистра 2. При этом кодом поля управления задается источник информации:

00 -счетчик, 01-сдвиговый регистр, 10 - блок памяти, ll — блок оперативной памяти, а кодом поля информаци- .4$ онной выборки — приемник. Таким об- разом, для сдвигового регистра, счетчика, блока памяти микрокоманд,блока оперативной памяти микропрограммно. доступным является информация с трех щ направлений. При задании константы .из блока 1 памяти информация выбирается иэ ячейки блока 1 памяти, адрес которой увеличен на единицу относи-. тельно адреса текущей микрокоманды. 55 Если-в текущем цикле считываетбя .микрокомаида, в которой задан режим ожидания, то код в поле функциональной выборки регистра 2 задает логическое условие, наличие которого необходимо для перехода к следующей е0 микрокоманде, т.е. для выхода as режима ожидания. При выполнении микрокомаидц Ожидание изменения адреса микрокоманды при отсутствии логического условия не происходит, блоки- 65 руется занесение информации в регйстр микрокоманд, но в каждом микропрограммном цикле в четвертом такте в счетчик б прибавляется единица к коду, который занесен предварительно перед выполйением микрокоманды Ожидание . При этом формирователь

12 выдает соответствующие управляющие сигналы.

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

При отсутствии логического условия и появлении сигнала Перевыполнение счетчика . на выходе счетчика б (не показан) формирователь 12 по выходу

?2 изменяет на .единицу содержимое регистра 7. Таким образом, обнаруживается длительное (больше заданного) отсутствие логического условия °

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

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

Единичный сигнал селектора 11 условий разрешает формирователю 12 произвести загрузку младших разрядов адреса следующей микрокоманды иэ ячейки, следующей за микрокомандой Ожидание °

При построении микропрограмм для реализации возврата из микроподпрограмм используются ячейки блока 4 оперативной памяти. При необходимости обратиться к микроподпрограмме — j-го ранга непосредственно перед микроподпрогравеиой выполняются микрокоман. да. Выбор. POH, стробирующая занесение информации с выхода 15 регистра 2 s регистр 3 и микрокоманда Загрузка POH, формирующая импульс разрешения записи по..информационным входам в ячейку блока оперативной памяти, определяемой регистром 3, кода адреса возврата, поступающего из ячейки блока 1 памяти, адрес которой увеличен на единицу относительно адреса микрокоманды Загрузка. .РОН ., Для выхода иэ микроподпрограмьаа после выполнения последней микрокоманды микроподпрограммы должны выполняться микрокоманда Выбор POH, стробирующая занесение информации с выхода 15 регистра 2 в регистр 3 и микрокоманда безусловного перехода.

В регистр 7 заносятся старшие разря9 °

10 ды адреса следующей микрокоманды с выхода 15 регистра 2, а младшие разряды через коммутатор 8 из ячейки блока 4 оперативной памяти.

Таким образом, в регистре 7 сформирован адрес микрокоманды, к которой необходимо вернуться.

Управление работой сдвигового регистра в режиме загрузки осуществляется с помощью микрокоманцы Действие, .в поле управления которой задается код источника (00 — счетчик, 10 - блок памяти микрокоманд, 11 блок оперативной памяти), а в поле функциональной выборки - код, соответствующий формированию управляющей сигнала Загрузки CP на выходе 22 15 формирователя 12., Управление работой сдвигового регистра в режиме сдвига осуществляется с помощью микрокоман.ды действие, в поле управления которой задается вид сдвига, а в поле щ функциональной выборки - код, соответствующий. Формированию управляющего сигнала Сдвиг CP на выходе 22 формирователя 12 °

Сдвиг в сдвиговом регистре осущест-25 вляется в направлении старших разрядов. Код в поле управления микрокоманды в .режиме сдвига определяет вид сдвига: 00 — сдвиг с установкой 0 в младшем разряде сдвигового регист" ра, 10 — сдвиг с установкой 1 в младшем разряде, Ol — циклический сдвиг, 11 — преобразование последовательной информации в параллельную.

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

-условия, построений управляющей микропрограммы внешними запоминающими 45 устройствами в реальном масштабе времени.

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

1. Микропрограммное ус тройство yttpaaaeama, содержащее блок памяти микрокоманд, выход которого соединен с инФормационным входом регистра микро- 55 команд и с первым информационным входом коммутатора, второй информационный,вход которого соединен с выходом .блока оперативной памяти, адресный вход которого соединен с выходом.регистра адреса оперативной памяти, 40 управляющий, вход коммутатора соединен: с выходом управления регистра микрокоманд и с первым входом, дешифратора микрокоманд, второй вход которого соединен с выходом кода команды регист- 65 ра микрокоманд, выход функциональной выборки которого соединен с первым информационным входом регистра адреса микрокоманд и с информационным входом регистра адреса оперативной памяти, выход коммутатора соединен с информационным входом блока оперативной памяти и со вторым информационным входом регистра .адреса микрокоманд, выход которого соединен со входом блока памяти микрокоманд, о т л и ч а ю щ е е с я тем, что, с целью. расширения функциональных возможностей .эа счет воэможности организации разветвления и циклов микропрограммы, в него введены сдвиговый регистр, счетчик, дешифратор функциональных- сигналов, селектор условий и формирователь управляющих сигналов, причем выходы сдвигового регистра и счетчика. соединены соответственно с третьим и четвертым . информационными входами коммутатора, управляющие входы сдвигового регистра, счетчика, блока оперативной памяти, регистра адреса оперативной памяти, регистра адреса микрокоманд, регистра микрокоманд соединены с управляющим выходом формирователя управляющих сигналов выход блокировки которого соединен с третьим входом .дешифратора микрокоманд, первый и второй выходы которого соединены соответственно с информационным входом дешифратора функциональных сиг-. налов и с первым входом формирователя управляющих сигналов, второй вход которого соединен с выходом селектора условий, группа информационных входов которого является группой входов условий устройства, выход дешифратора функциональных сигналов соединен с третьим входом формирователя управляющих сигналов и являетсн выходом устройства, разрешающие входы селектора условий и дешифратора функциональных сигналов соединены с выходом функциональной выборки регистра микрокоманд,- информационные входы сдвигового регистра и счетчика .соединены с выходом коммутатора.

2, Устройство по п.l, о т л и ч аю щ е е с я тем,.что селектор условий содержит коммутатор и триггер, причем группа информационных входов селектора соединена с группой входов .коммутатора, выход и вход которогЬ соединены соответственно со входом триггера и.с разрешающим входом селектора, выход триггера соединен с выхрдоМ селектора.

3. Устройство по п.l, о т л и ч а.ю щ е е с .я тем, что. Формирователь управляющих сигналов содержит элементы И, ИЛИ, НЕ и два триггера, причем первый .вход формирователя соединен. с первыми входами первого, второго и третьего элементов И., спервым и вторым входами четвертого элемента Н с

812815 12 первым входом первого элемента ИЛИ, через первый элемент НЕ с первым входом пятого элемента И, через второй элемент НЕ с первым входом второго элемента ИЛИ, второй вход формирователя соединен со вторыми входами второго и третьего элементов И, третий вход формировате"a соединен с первым и вторым входами третьего элемента ИЛИ, с первым, вторым и третьим входами четвертого элемента ИЛИ,со вторыми входами первого и пятого эле- 1© . ментов И, с управляющим выходом формирователя и через формирователь импульсов с управляющим выходом формирователя, выход четвертого элемента ИЛИ соединен с первым входом первого 15 триггера, выход которого соединен с первым входом пятого элемента ИЛИ, второй вход которого соединен с выходом первого элемента ИЛИ, с управляющим выходом формирователя и через третий элемент НЕ с первым входом шестого элемента И, выход пятого элемента ИЛИ соединен с входом второго триггера, первый выход которого

I соединен со вторым входом первого триггера, выход второго элемента И соединен со вторыми входами первого и второго элементов ИЛИ, третьи входы которых соединены с выходом третьего элемента И, второй вход шестого элемента И соединен с выхо-, дом второго элемента НЕ, выходы первоГо, второго и третьего элементов

ИЛИ, первого, четвертого, пятого и шестого элементов И соединены с управляющим. выходом -формирователя, выход блокировки которого соединен со вторым выходом второго триггера.

Источники информации, принятые во внимание при экспертизе

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

9 503240, кл. 6 06 Р 9/16, 1976.

2. Авторское свидетельство СССР по заявке В 2658913/24,кл.6 06 Р 9/16, 1978 (прототип).

Фий. и

К сЖЬгодоиу рееиел оу У

К блоку алераглийаи

natu 4

К Феыиррали иу Х б(i vemvcrpy f рмисл ру5

f ргзиощу 7

Крй еисми,ау 8

Составитель Г.Ионоиарева

Редактор И.Ковальчук Техред А. Бабинеч Корректор И. р

Ю

Закаэ 5103/61 Тираж 745 Подписное

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

113035, -Москва, й-35, Раушская иаб.> д.4/5

Ю ВВ Ю Ю

Филиал ППП Патент, г.:Ужгород, ул.проектная, 4