Микропрограммное устройство управления
Иллюстрации
Показать всеРеферат
МИКРОПРОГРАММНОЕ УСТРОЙСТВО УПРАВЛЕНИЯ, содержащее блок памяти микропрограмм, регистр адреса микрокоманд , группу регистров адресов Возврата, счетчик адреса возврата, регистр микрокоманд, блок элементов ИЛИ, два элемента И, первую и вторую группу блоков элементов И, блок элементов И, причем выход регистра адреса микро команд соединен с входом блока памяти микрокоманд и информационным входом счетчика адреса возврата, выход которого соединен с первыми входами блоков элементов И первой группы, выходы каждого регистра адреса возврата .группы соединены с первыми входами соответствующего блока элементов И второй группы, каждый выход первой группы выходов регистра микрокоманд соединен с вторым входом соответствующего блока элементов И первой группы, выход блока памяти микрокоманд соединен с информационным входом регистра микрокоманд, отличающееся тем, что, с целью расширения области применения путем обеспечения вызовов микропрограмм произвольных уровней, оно содержит дещифратор, регистр управления возвратом, генератор импульсов, триггер запуска, одновибратор, элемент задержки и элемент ИЛИ, причем первый выход генератора импульсов соединен с первым входом первого элемента И, второй выход генератора импульсов совпадения соединен с тактовым входом регистра адреса микрокоманд и с первым входом второго элемента И, счетный вход счетчика адреса возврата соединен с выходом второго элемента И и через элемент задержки с синхровходами регистров адресов возврата группы, первая группа выходов регистра микрокоманд соединена с входами элемента ИЛИ, каждый выход первой группы выходов (О регистра микрокоманд соединен с единичным входом соответствующего разряда регистра управления возврас е том, выход элемента ИЛИ соединен с вторыми входами первого и второго элементов И, первый выход регистра микрокоманд через одновибратор соединен с управляющим входом дешифратора, каждый выход которого соединен с втоС рым входом соответствующего блока элеЭО ментов И второй группы и с нулевым О входом соответствующего разряда гистра управления возвратом, выходы которого соединены с группой входов дешифратора, первый выход регистра микрокоманд соединен с инверсным входом блока элементов И, группа входов и выходы которого соединены соответственно с второй группой выходов регистра микрокоманд и с первой группой входов блока элементов ИЛИ, вторая, третья группы входов и выходы которого соединены соответст
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСОУВ ЛИК (1% (11) (11 С 06 F 9/22
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
1 ,,1
БНЬЛЧО Г2к
К ABTOPCKOMV СВИДЕТЕЛЬСТВУ
ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР пО делАм изОБРетений и ОтнРытий (21) 3587611/18-24 (22) 04.05.83 (46) 15.09.84. Бюл. У 34 (72) С. .Ткаченко, В.С.Харченко, Г.Н.Тимонькин и В.А.Косяков (53) 681.325(088.8) (56) 1. Патент США Ф 3909797, кл. 340-172.5, опублик. 1974.
2. Авторское свидетельство СССР
Ф 942019, кл. G 06 F 9/22, 1980 (прототип) . (54) (57) МИКРОПРОГРАММНОЕ УСТРОЙСТВО
УПРАВЛЕНИЯ, содержащее блок памяти микропрограмм, регистр адреса микрокоманд, группу регистров адресов
"возврата, счетчик адреса возврата, регистр микрокоманд, блок элементов ИЛИ, два элемента И, первую и вторую группу блоков элементов И, блок элементов И, причем выход ре1истра адреса микро° команд соединен с входом блока памяти микрокоманд и информационным входом счетчика адреса возврата, выход которого соединен с первыми входами блоков элементов И первой группы, выходы каждого регистра адреса возврата .группы соединены с первыми входами соответствующего блока элементов И второй группы, каждый выход первой группы выходов регистра микрокоманд соединен с вторым входом соответствующего блока элементов И первой группы, выход блока памяти микрокоманд соединен с информационным входом регистра микрокоманд, отличающееся тем, что, с целью расширения области применения путем обеспечения вызовов микропрограмм произвольных уровней, оно содержит дешифратор, регистр управления возвратом, генератор импульсов, триггер запуска, одновибратор, элемент задержки и элемент ИЛИ, причем первый выход генератора импульсов соединен с первым входом первого элемента И, второй выход генератора импульсов совпадения соединен с тактовым входом регистра адреса микрокоманд и с первым входом второго элемента И, счетный вход счетчика адре a возврата соединен с выходом второго элемента И и через элемент задержки с синхровходами регистров адресов возврата группы, первая группа выходов регистра микрокоманд соединена с входами элемента ИЛИ, е каждый выход первой группы выходов регистра микрокоманд соединен с единичным входом соответствующего разряда регистра управления возвратом, выход элемента ИЛИ соединен с й2 вторыми входами первого и второго элементов И, первый выход регистра мнк- рокоманд через одновибратор соединен с управляющим входом дешифратора, каждый выход которого соединен с вторым входом соответствующего блока эле. ментов И второй группы и с нулевым входом соответствующего разряда регистра управления возвратом, выходы которого соединены с группой входов дешифратора, первый выход регистра микрокоманд соединен с инверсным
) входом блока элементов И, группа входов и выходы которого соединены соответственно с второй группой выходов регистра микрокоманд и с первой группой входов блока элементов
ИЛИ, вторая, третья группы входов и выходы которого соединены соответст1!!3802 венно с выходами блоков элементов И второй группы, "с группой кодовых входов устройства и с группой информационных входов регистра адреса микро кдманд,,третий выход генератора импульсов соединен с тактовым входом регистра микрокоманд, второй выход которого соединен с входом сброса
Изобретение относится к вычислительной технике и может быть использовано в устройствах управления цифровых вычислительных машин и систем.
Известно многоуровневое микропрог 5 раммное устройство управления, которое для выполнения переходов с одного уровня на другой содержит регистр адреса возврата, счетчик, дешифратор и логическую схему переходов, а микропрограммы содержат специальные микрокоманды переходов (!3 .
Недостатки этого устройства низкое быстродействие и большое количество оборудования.
Наиболее близким nо технической сущности и достигаемому эффекту к изобретению является многоуровневое микропрограммное устройство управления, которое содержит блок памяти, регистр микрокоманды, регистр адреса микрокоманды, регистры адреса возврата, счетчик, первую, вторую, тре-. тью и четвертую группы элементов И, элемент ИЛИ, причем выход блока памяти соединен с входом регистра микрокоманды, первые прямые операционные выходы которого соединены с первыми выходами элементов И первой группы, вторые входы которых подключены к выходу счетчика, вход которого соединен с выходом регистра адреса микрокоманды и с входом блока памяти, выходы регистров адреса возврата подключены к первым выходам элемен- З5 тов И второй группы, к вторым выходам которых подключены соответственно выходы элементов И третьей группы, первые входы которых соединенМ с инверсными операционными выходами @ регистра микрокомянпы. а вторые вхопы соединены с входом сброса устройства, триггера запуска, установочный вход которого соединен с входом запуска устройства, третья группа выходов регистра микрокоманд является группой выходов устройства, выход триггера запуска соединен с входом запуска генератора импульсов. выходы элементов И второй группы подключены к первым входам элементов
ИЛИ, к вторым входам которых подключены входы элементов И первой группы, а выходы элементов ИЛИ соединены с входами регистров адреса возврата, причем вторые прямые операционные выходы регистра микрокоманды соединены соответственно с первыми выходами элементов И четвертой группы, вторые входы которых подключены к входам регистра адреса возврата, а выходы — к входам регистра адреса микрокоманды и к адресным входам регистра микрокоманды (2j
Недостатки данного устройства— низкая экономичность и узкая область применения..
Цель изобретения — расширение области применения устройства путем обеспечения вызовов микропрограмм произвольных уровней.
Поставленная цель достигается тем, что в микропрограммное устройство управления, содержащее блок памяти микропрограмм, регистр адреса микрокоманд, группу регистров адресов возврата, счетчик адреса возврата, регистр микрокоманд, блок элементов
ИЛИ, два элемента И, первую и вторую группу блоков элементов И, блок элементов И, причем выход регистра адреса микрокоманд соединен с входом блока памяти микрокоманд и информационным входом счетчика адреса возврата, выход которого соединен с первыми входами блоков элементов И первой группы, выходы каждого регистра адреса возврата группы соединены с первыми входами соответствующего блока элементов И второй группы, каждый выход первой группы выходов
3 111380? 4 регистра микрокоманд соединен с вторым входом соответствующего блока элементов И первой группы, выход блока памяти иикрокоманд соединен с информационным входом регистра микрокоманд, введены дешифратор, регистр управления возвратом, генератор импульсов, триггер запуска, одновибратор, элемент задержки и элемент ИЛИ, причем первый выход генератора им- 10 пульсов соединен с первым входом первого элемента И, второй выход генератора импульсов соединен с тактс вым входом регистра адреса микрокоманд и с первым входом второго эле- 15 мента И, счетный вход счетчиков адреса возврата соединен с выходом вто рого элемента И и через элемент задержки с синхровходами регистров адресов возврата группы, первая груп-20 па выходов регистра микрокоманд соединена с входами элемента ИЛИ, каждый выход первой группы выходов регистра микрокоманд соединен с единичным входом соответствующего разряда регистра управления возвратом, вьжод элемента ИЛИ соединен с вторыми входами первого и второго элементов
И, первый выход регистра микрокоманд через одновибратор соединен с управ- 30 ляющим входом дешифратора; каждый выход которого соединен с вторым входом соответствуюЩего блока элементов И второй группы и с нулевым входом соответствующего разряда ре". 3g гистра управления возвратом, выходы которого соединены группой входов дешифратора, первый выход регистра микрокоманд соединен с инверсным входом блока элементов И, группа .щ входов и выходы которого соединены соответственно с второй группой выходов регистра микрокоманд и с первой группой входов блока элементов ИЛИ, вторая, третья группы входов и выходы45 которого соединены соответственно с выходами блоков элементов И второй группы, с группой кодовых входов регистра адреса микрокоманд, третий выход генератора импульсов соединен с тактовым входом регистра микрокоманд, второй выход которого соединен с входом сброса триггера запуска, установочный вход которого соединен с входом запуска устройства, третья группа выходов регистра микрокоманд является группой выходов устройства,1 выход триггера запуска соединен с входам запуска генератора импульсов.
На чертеже представлена функциональная схема предлагаемого микропрограммного устройства управления.
Микропрограммное устройство управления содержит блок 1 памяти микропрограмм, дешифратор 2, регистр 3 адреса микрокоманд, группу 4 регистров
I адресов возврата счетчик 5 адреса возврата, регистр 6 микрокоманд, регистр 7.управления возвратом, генератор 8 импульсов, триггер 9 запуска, блок элементов И 1О, группу блоков 11 элементов И, группу блоков
12 элементов И, блок эдементов Ш1И
13, элементы И 14 и 15, элемент
ИЛИ 16, одновибратор 17, элемент 18 задержки, вход. запуска 19 устройства
I группу кодовых входов 20 устройства, выход 21 регистра 6, группу выходов
22 регистра 6, выход 23 регистра 6, группа выходов 24 регистра 6 и выходы 25-27 генератора 8, группу выходов 28 регистра 7, управляющий вход
29 дешифратора 2, группу выходов 30 устройства.
Устройство работает следующим образом.
Все микропрограммы разбиваются на .уровни: например, первый уровень вычислениа сложных функций, второй уровень — вычисление элементарных функций, третий уровень — умножение и деление и т.д.
В устройстве предусмотрены три режима работы: выполнение микрокоманд микропрограммы одного уровня; переход от выполнения микропрограммы более высокого уровня к микропрог.рамме более низкого уровня; возврат на выполнение микропрограммы более низкого уровня.
В исходном состоянии все элементы памяти установлены в нулевое состояние. Для начального запуска устройства используется триггер 9. По сигналу пуска с входа 19 триггера 9 устанавливается в единичное состоя ние и запускает генератор 8.
По первому тактовому импульсу с выхода 25 генератора 8 происходит прием в регистр 3 адреса первой микрокоманды микропрограммы группы входов 20. По этому адресу из блока памяти выбирается микрокоманда и по второму тактовому импульсу с выхода
111 3802!
27 генератора 8 записывается в регистр 6. Формат микрокоманды зависит от режима, реализуемого устройством.
В первом режиме, работы на выходе
23.сигнал отсутствует. Адрес следующей микрокоманды с группы выходов 22 регистра 6 по очередному тактовому импульсу с выхода 25 генератора 8 записывается в регистр 3. Далее работа устройства повторяется аналогично.
Во втором режиме при необходимости перехода от выполнения микропрограммы более высокого уровня к микропрограмме более низкого уровня в блоке памяти 1 вырабатывается соответствующая микрокоманда, которая записывается в регистр 6, аналогично описанному вышее. Эта микрокоманда содержит в поле адреса 22 адрес первой микрокоманды микропрограммы более низкого уровня, в которой осуществляется переход, а в поле 24 управления переходом обязательно содержит единицу в одном из разрядов 24 и определя25 ет тем самым, к микропрограмме какого именно уровня должен выполняться переход. При этом открывается соответствующий блок 11 элементов И, а также элементы И 14 и 15.
По третьему импульсу с выхода 26 генератора 8 срабатывает элемент И 15 и разрешает запись адреса текущей микрокоманды, с которой осуществляется переход, в счетчик 5. Далее по З5 очередному импульсу с выхода 25 генератора 8 срабатывает элемент И 14, по сигналу с выхода которого содержимое счетчика 5 увеличивается на единицу и задается значение адреса воэ- 4О врата (адреса очередной микрокоманды данного уровня, с которой необходимо будет продолжить выполнение микропрограммы после возврата к ней с низmего уровня). Адрес микрокоманды 4 возврата по сигналу с выхода элемента
18 задержки записывается через соответствующий открытый блок элементов
И 11 в соответствующий данному уровню регистр адреса возврата 4 и сохра- 5О няется в нем до возврата к продолжению микропрограммы данного уровня °
Одновременно с этим по сигналу с соответствующего выхода 24 регистра 6 в соответствующем разряде регистра 7 делается отметка об использовании микропрограммы данного уровня (установкой i-разряда в единицу). Данная отметка соответствует уровню микрь—
IIpoграммы, с котoporo был (iсущесTB— лен переход.
Пересылка полученного адреса из счетчика 5 в регистр 4 выполняется в микрокоманде перехода по сигналу с выхода 25 генератора 8, задержанному на элементе 18 задержки на .время уве" личения значения счетчика 5 на единицу. Кроме того, одновременно с выполиением перехода к микропрограмме более низкого уровня в этой же микрокоманде перехода могут выдаваться и микрооперации, относящиеся к микропрограмме более высокого уровня.
В третьем режиме при необходимости возврата к выполнению микропрограммы более высокого уровня у блока памяти
1 считывается соответствующая микрокоманда, выдающая сигнал вВозврат" на выходе 23 регистра 6. Этот сигнал закрывает блок элементов И 10, и адресная часть микрокоманды с группы выходов 33 регистра 6 не поступает в регистр 3. По сигналу с выхода 23 регистра 6 срабатывает одновибратор
17, который подает управляющий сигнал 29 на дешифратор 2.
На выходе дешифратора появляется единичный сигнал, соответствующий уровню, на которой осуществляется возврат, т.е. тому, с которого вызывалась текущая микропрограмма. Данный единичный сигнал открывает соответствующий блок элементов И 12, а также устанавливает в нуль в регистре 7 управления возвратом тот разряд, ко орый соответствует этому уровню.
Адрес возврата из соответствующего регистра 4 через элементы И 11 и блок элементов ИЛИ 13 по тактовому импульсу с выхода 25 генератора 8 принимается в регистр 3 адреса микрокоманды. Далее происходит выполнение микропрограммы в первом режиме аналогично описанному.
При завершении микропрограммы в последней микрокоманде на выходе 21 регистра 6 выдается сигнал, который устанавливает триггер запуска 9 в нулевое состояние. Генератор импульсов 8 прекращает выработку тактовых импульсов. На этом работа устройства завершается.
Применение изобретения позволяет расширить область применения устройства путем обеспечения вызова микропрограмм произвольных уровней.
1113802
Заказ 6620/40
Подписное
Тираж 698
ВНИИПИ Государственного комитета СССР по делам изобретений и открытий
113035, Москва, Ж-35, Раушская наб., д. 4/5
Филиал ППП "Патент", г. Ужгород, ул. Проектная, 4
Составитель М. Кудряшев
Редактор М. Циткина Техред Т.Маточка Корректор М. Шароши