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

Иллюстрации

Показать все

Реферат

 

ОПИСАНИЕ

ИЗОБРЕТЕНИЯ

К АВТОРСКОМУ СВИ4ЕТЕЛЬСТВУ

Союз Советскиз .Социалистических

Республик

«>959078 (6f) Дополнительное к авт. свид-ву(22) Заявлено 1401.81 (21) 3237286/18-24

311М Кл з

G 06 F 9/22 с присоединением заявки ¹â€” (23) Приоритет—

Государственный комитет

СССР но делам изобретений н открытий (331У4 (.681. 326 (088.. 8) Опубликовано 150982. Бюллетень ¹ 34

Дата опубликования описания 15.09.82 (72) Авторы изобретения

Д.A. Тодуа, М.A. Абрамян, .Н.Н. Шабуров и A.Ê. Иманов

Тбилисский научно-исследовательский ин приборостроения и средств автоматиэ (73) Заявитель (54 ) МИКРОПРОГРАММНОЕ УСТРОЙСТВО УПРАВЛЕНИЯ

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

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

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

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

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

Цель изобретения — повышение. быстродействия устройства микропрограммного управления.

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

ЗО второй регистр управляющих команд, 959078 второй коммутатор адреса, второй элемент ИЛИ, блок памяти управляющих команд, триггер условного перехода, счетчик циклов, группу элементов НЕ и элемент И-НЕ, причем выход второго коммутатора соединен с адресным вхо- 5 дом блока памяти управляющн:,с команд, выход которого соединен с информационными входами первого и -второго регистров управляющих команд, к управляющим входам которых подключены 10 первый и второй входы синхроимпуль.сов устройства ооответственно, выхоДы последних разрядов адреса первых групп первого и второго регистров управляющих команд подключены к первьм входам первого и второго элементов ИЛИ соответственно, вторые входы которых соединены с выходом триггера условного перехода, информационный вход которого соединен с входом признака условного перехода устройства, а управляющий вход - с третьим входок синхроимпульса..устройства, выходы разрядов адреса, кроме последнего, первой группы второго регистра управляющих команд подключены к информационным входам второй, группы первого коммутатора соответственно первы и второй уп равляющие входй которого соединены с первым и вторым управляющими входами второго коммутатора и являются четвертым и пятым входами синхроимпульсов устройства соответственно, выход первого коьиутатора подключен к адресному входу блока памяти мик- Ç5 рокоманд, выход которого является информационным выходом устройства, а выход мяадшего разряда соединен со счетным входом счетчика циклов, информационный вход которого под- 40 ключен к входу числа циклов устройства, а выход - к входам элемен-. ° тов НЕ группы, выходы которым соединены с входаии элемента И-ИЕ„ выход которого подключен к уцравляющему выходу устройства, выходы раз« рядов адресов вторых групп первого и второго рех истров управляющих ко« манд подключены к первому и второму информационным входам второго коммутатора, третий информационный вход которого подключен к входу адреса устройства, а третий управляющий вход - к входу пуска устройстф а.

На чертеже представлена структур- 55 ная схема микропрограммного устройства управления.

Устройство содержит блок 1 памя-. ти управляющих команд, регистры 2, 3 управляющих команд разрядности (К + п),блок 4 формирования адреса условного перехода, содержащий элементы ИЛИ 5, 6 и тРиггер -7 условйого перехода, коммутатор 8 адреса, содержащий две группы элементов И 9, 65

10 н группу элементов ИЛИ-НЕ 11, коммутатор 12 адреса, содержащий три группы элементов И 13, 14, 15 н группу элементов ИЛИ-НЕ 16, блок 17 памяти микрокоманд, группу элементов, блок 18 подсчета числа циклов, счетчик 19 циклон, группу элементов НЕ 20, элемент И-НЕ 21, вход 22 адреса устройства, вход 23 признака условного перехода, вход 24 числа циклов, информационный выход 25 устройства, управляющий выход 26 устройства, вход 27 пуска устройства, входы 28 — 32 синхроимпульсоа устройства.

Фуйкционирование устройства происходит следующим образом.

ИнФормация. записываемая в тот или иной регистр 2, 3 управляющих команд, состоит из двух частей. Первая К-разрядная часть регистров представляет собой адрес соответствующей микрокоманды а блоке 17 памяти микрокоманд, Вторая и-разрядная часть регистров представляет собой адрес следующей управляющей команды. Причем, в блоке 1 памяти управляющих команд адрес следующей управляющей команды записан в инверсном коде, но после прохождения коммутатора 12 он инвертируется и уже в пря. мом коде поступает на адресные входы блока 1 памяти управляющих команд. Для .выполнения той или иной команды в блоке 1 в соответствии с адресом - командой, поступающей .по входу 22, выбирается определенный список управляющих команд (адресов).

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

Подобная организация списков управляющих команд позволяет использовать каждый as них столько раз, сколько разрядных слайсов содержит обрабатываемые массивы. Команда о выполнении .той или иной операции (сложение, вычитание, поиск и т.д.7 поступает в виде адреса памяти управляющих команд по входу 22 одновременно с подачей синхросигнала по входу 27. Одновременно этот сигнал поступает.. s блок формирования импульсов (не показан ) и разрешает появление синхросигналов на входах

30, 31, которые разнесены во времени. Выбранная из блока 1 информация подводится одновременно к двум регистрам 2, 3 управляющих ко959078 манд, но она запишется в тот регистр, на сннхронизнрующий вход которого первым поступит импульс записи по входам 30, либо 31. Длительность синхроимпульса по входу 27 выдержана, таким образом, чтобы осуществить запись в один иэ регистров 2, 3 управляющих команд.

Появление синхроимпульса по входу 30 и 31 разрешает появление сннхросигналов соответственно на входах 29 нли 28.

Допустим, что первым пришел импульс записи по входу 30 синхросиг» налов, который разрешил запись первой выбранной управляющей команды в регистр 3 управляющих команд, и-разрядная информация об адресе сле-: дующей управляющей команды со второй части этого регистра поступает на соответствующие входы коммутатора 12 ° Сигнал записи на входе 30 формирует синхроснгнал на входе 29, который разрешает прохождение и-разрядной информации через коммутатор 12 к адресным входам блока 1. После:чего осуществляется выбор следующей управляющей команды с целью записи. ее s регистр 2 управляющих команд.

Одновременно этот синхросигнал на входе 29 разрешает прохождение ком

К-разрядной информации первой части регистра 3 управляницих команд через коммутатор 8 к адресным входам блока 17. После чего на выходе 28появится соответствующая микрокоманда.

С этого момента в соответствии с так.товым импульсом начинается выполнение данной микрокоманды в ассоциативном процессоре. Одновременно этот тактовый сигнал по входу 32 поступает на синхронизирукиций вход триггера 7. Длительность тактового импульса обусловлена временем вЫполнения наиболее длительной микрокоман-. ды в ассоциативном процессоре и не превышает 150-200 нс. К моменту окончания выполнения текущей микрокомаиды, а следовательно, и окончания тактового импульса осуществляется запись управлякщей команды в регистр 2 по сигналу записи по входу 31, который, в свою очередь, формирует синхросигнал на входе 28. Теперь уже этот синхросигнал разрешает прохождение и -разрядной информации ре. вистра 2 через коьыутатор 12 к адресным входам блока 1, а также К-разрядной информации через коммутатор 8 к адресным входам блока 17,и.т.д.

Появление одного синхросигнала на входе 28 и окончание другого на входе 29, а также появление одного синхроснгнала на входе 29 и окончание другого на входе 28 совпадает по времени с окончанием импульса на входе 32.

Отрицательным фронтом импульса, приходящего по входу 32, триг7ер 7 взводится в единичное.или нулевое состояние в зависимости от того, какой уровень приходит по входу 23.

Для тех команд, которые требуют условный переход, этот уровень формируется после окончания выполне- - ния мнкрокоманды в ассоциативном процессоре. По входу 23 приходит

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

15 младшего K-го разряда первой части регистров 2, 3. Это изменение осуществляется с помощью элементов ИЛИ

5 или 6. В младшем К-ом разряде адреса микрокоманды, который может.

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

2 единицы. Следовательно, на адресные входы блока 17 .поступит-адрес, отличный на единицу от адреса, который записан в первой К-разрядной части регистров 2 или 3 . !

После вЫцачи набора микрокоманд нз блока 17,,необходимого для обра-.

:ботки одного разрядного слайса массива или двух одноименных разряд-! ных слайсов двух массивов, с млад3$ щего разряда последней микрокоманды данного набора микрокоманд поступа-. ет сигнал на счетный вход счетчика 19. Этот сигнал осуществляет уменьшение содержимого счетчика 19

49 на единицу. Информация о количестве циклов, необходимжс для выполне:ния операции над массивамн данных, равна разрядности массивов и заносится в счетчик 19 перед началом вы45.полнения операции ao axopy 24. 3анесение этой информации,совпадает во времени с подачей сигнала запуска по входу 27. Выходы счетчика

19 через Группу элементов НЕ 20 подключены ко входам элемента И-HE 21, Когда содержимое счетчика 19 полностью обнулитея, на всех входах элемента И-НЕ 21 присутствуют уровни логической единицы. Это вызывая ет появление сигнала логического нуля на выходе 26, который запрещает появление синхросигналов на входах 27-32.и означает конец выполнения команды. Таким образом, работа микропрограммного устройства управления начинается с поступления сигнала запуска по входу 27, который разрешает последовательную выдачу из блока формирования импульсов синхросигналов 31, 28, 32, 30, 29 н окан4 чивается выдачей сигнала в блок фор»

959078 мирования импульсов по выходу 26, который запрещает прохождение синхросигналов на укаэанных шинах до появления очередного сигнала запуска; по входу 27. Присутствие в предлагаемом устройстве двух блоков 1, 17 обусловлено тем, что одна и та же ьыкрокоманда может использоваться для выполнения разных команд. Поэтому в блоке 17 записаны .все разнообразные неповторяющиеся микрокоманды, а.в блоке 1 в разных списках управляющих команд адрес одной и той же микрокоманды может повторяться.

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

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

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

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

З и второго регистров управляющих команд подключены к первому и второму информационным входам второго коммутатора, третий информационный вход котррого подключен к входу адреса

Ю0 устройства, а третий управляющий вход - к входу пуска устройства.

Ф

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

1. Хасоон С. Микропрограммное управление. М, "Мир", 1974.

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

Р 746517, кл. 0 06 Р 9/22,1978 (прототип).

959078

Я

Я

27

Составитель A. Логачева

Редактор О. Колесникова Техред З.Палий Корректор A- Гриценко

Заказ 7018/бб Тираж 731 Подписное

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

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

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