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

Иллюстрации

Показать все

Реферат

 

Изобретение относится к области автоматики и вычислительной техники и может быть использовано при построении цифровых вычислительных машин и контроллеров периферийных устройств . Целью изобретения является повьппение быстродействия в режиме ветвления микропрограммы по внешним логическим условиям. Устройство содержит счетчик 1 адресов, блок 2 элементов ИЛИ, блок 3 элементов И, регистр 4 микрокоманд, блок 5 памяти микрокоманд, регистр 6 признаков, блок 7 синхронизации, элемент НЕ 8, два элемента И 9, 10, блок 11 приоритетного ветвления и памяти 12 модифицируемых адресов, входы и выходы устройства. 4 ил., 1 табл. о 0 (Л ю СП со JNO Од Ю

СОЮЗ СОВЕТСНИХ

СОЦИАЛИСТИЧЕСНИХ

РЕСПУБЛИН

„„SU„„1259262 (50 4 С 06 F 9/22

ОПИСАНИЕ ИЗОБРЕТЕНИЯ /

Н АВТОРСКОМУ СВИДЕТЕЛЬСТВУ U fj;р

ГОСУДАРСТВЕННЫЙ HOMHTET СССР

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ

p „Ы

F (21) 3744026/24-24 (22) 23.05.84 (46) 23.09.86. Бюл. N - 35 (71) Краснодарское специальное конструкторско-технологическое бюро сейсмораэведочной электронной техники (72) В,Н. Потоков (53) 681.325(088.8) (56) Авторское свидетельство СССР

N - 934473, кл. G 06 F 9/22, 1980. .Авторское свидетельство СССР

1179337 кл. С 06 Р 9/22, 29.08.84. (54) ИИКРОПРОГРАМИНОЕ УСТРОЙСТВО

УПРАВЛЕ НИЯ (57) Изобретение относится к области автоматики и вычислительной техники и может быть использовано при построении цифровых вычислительных машин и контроллеров периферийных устройств. Целью изобретения является повышение быстродействия в режиме ветвления микропрограммы по внешним логическим условиям. Устройство содержит счетчик 1 адресов, блок 2 элементов ИЛИ, блок 3 элементов И, регистр 4 мнкрокоманд, блок 5 памяти микрокоманд, регистр 6 признаков, блок 7 синхронизации, элемент НЕ 8, два элемента И 9, 10, блок 11 приоритетного ветвления и памяти 12 модифицируемых адресов, входы и выходы устройства. 4 ил., 1 табл.

1259262

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

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

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

15 фиг. 4 — алгоритм функционирования.

Устройство (фиг. 1) содержит счетчик 1 адресов, блок 2 элементов ИЛИ, блок 3 элементов И, регистр 4 микрокоманд, блок 5 памяти микрокоманд, регистр 6 признаков, блок 7 синхронизации, элемент НЕ 8, первый 9 и второй 10 элементы И, блок 11 приоритет— ного ветвления, память 12 модифицируемых адресов, вход 13 кода ко25 манды, первый 14, второй 15, третий

16 и четвертый 17 выхоцы блока синхронизации, вход 18 логических условий, вход 19 запуска, выход 20 поля режимов модификации адреса регистра микрокоманд, выход 21 признака формирования приоритетных ветвлений регистра микрокоманд, выход 22 поля режимов модификации адреса регистра микрокоманд, выход 23 признака ре- 35 жимов адресации регистра микрокоманд, выход 24 поля микрооперации регистра микрокоманд, выход 25 признака ветвления регистра микрокоманд, выход 26 поля адреса и вы- 40 ход 27.

Блок 11 приоритетного ветвления (фиг. 2) содержит мажоритарный элемент 28, шифратор 29 приоритета, регистр 30, элемент И 31 .и группу ком- 45 мутаторов 32.

На временной диаграмме (фиг. 3) функционирования микропрограммного устройства управления обозначены;

33 — импульсный сигнал запуска (сиг- 50 нал перевода устройства в исходное состояние); 34 - первый тактовый синхроимпульс (С1) цикла выполнения микрокоманды (соответствует сигналу на выходе 14 блока 7 синхронизации); 55

35 — второй тактовый синхроимпульс (С2) (соответствует сигналу на выходе 15 блока 7 синхронизаци ф 36— третий тактовый синхроимпульс (СЗ) (соответствует сигналу на выходе 16 блока 7 синхронизации); 37 — четвертый тактовый синхроимпульс (С4) (соответствует сигналу на выходе !7 блока 7 синхронизации)", 38 — состояния выходов счетчика 1 адресов;

39 — состояния выходов блока 5 памяти микропрограмм; 40 — состояния выходов регистра 4 микрокоманд; 4 1 состояния выходов регистра 6 признаков; 42 — процедура в мажоритарном элементе 28; 43 — занесение в регистр

30 нового кода ветвления (происходит, когда код на одних входах мажоритарного элемента 28 превьппает код на других его входах).

На алгоритмической схеме функционирования устройства (фиг. 4) обозначены: У1 — сигнал перевода устройства в исходное состояние, поступающий на его вход 19; У2 — установка на выходе регистра 4 микрокоманд исходной микрокоманды; УЗ вЂ” разрешение прохождения через блок 3 элементов И кода начального адреса микропрограммы (кода команды); У4 занесение в счетчик 1 адресов кода начального адреса микропрограммы по С1; У5 — считывание микрокоманды с выходов блока 5 памяти микрокоманд; У6 — занесение микрокоманды в регистр 4 микрокоманд по С2; У7 появление на выходе 27 устройства (с выхода 24 регистра 4) кода, поступающего на внешнее устройство;

У8 — занесение кода внешних условий в регистр 6 признаков по СЗ; У9 процедура арбитража приоритетов в мажоритарном элементе 28; У10 — приоритет признака результата вьппезафиксированного в регистре 30; Ó11 занесение нового кода приоритетного ветвления в регистр 30; У12 — пере- ход к следующей микрокоманде в заГ висимости от содержимого соответствующего поля текущей микрокоманды; У13 — появление на выходе блока приоритетного ветвления микропрограммы; У14 — появление на выходе блока 11 кода ветвления по текущему признаку результата; У15— формирование на входах элементов

И 9 и 10 режима перехода к следующему адресу микрокоманды (согласно содержимому выхода 23 регистра 4 микрокоманд);У16 — переход по прибавлению единицы к содержимому счет262 4 зад; А — движение ленты вперед;

Аб — запас лен-.ы; А — режим пи1 тания нормальный; А — обрыв ленты;

А — скорость движейия ленты (1 м/с, 2 M/с); А, — сигнал набора скорости;

A„ — маркер конца ленты; А, — маркер начала ленты; А„ — автономный режим управления; А — готовность первого

НМЛ; А,д — готовность второго HMJIX — состояние разряда безразлично.

&AЯ 0 ЬЮР

r -, Pi дз,, д, О

ЩЯЩ Л. .%/&ЯЙ Р и.

Х Е:

/7л му.

О 0

0 Г

p(0 g

Ю РР0 аа

g rr

3 1259 чика 1 адресов; У17 — переход по параллельному занесению кода в счетчик 1 адресов.

В таблице приведен пример программирования IIJIM длч слуая реали—

5 зации на его основе шифратора 29, когда в качестве внешнего устройства использованы два накопителя на магнитной ленте (НИЛ) сейсморазведочной станции "Прогресс", и приняты следующие обозначения: A --A — поле базового кода с выхода 20 регистра 4 микрокоманд; As — резервная шина; А — движение ленты наНа разряды А4 А, поступает код с входа 18 устройства через занесение его в резистр 6.

00Р с700 00

I ся в него сигналом на выходе элемента И 10. Причем режим занесения определяется нулевым состоянием выхода 23 регистра 4 в исходной микрокоманде, что определяет на выходе элемента НЕ 8 единичный уровень и разрешает прохождение первого тактового импульса С1 на выход элемента

И 10 °

Режим безусловного перехода. В текущей микрокоманде на выходе 22 регистра 4 присутствует нулевой код, определяющий, в свою очередь, появление нулевого кода на выходе памяти 12 модифицируемых адресов, а на выходе 25 присутствует также сигнал нулевого уровня. В этом режиме и-разрядный код на информационном входе счетчика 1 адресов полностью определяется содержимым выхода 26 регистра 4.

Режим условного перехода. Сигнал на выходе 25 регистра 4 принимает нулевое значение, код на выходе 26 регистра 4 определяет появление на ш старших входных разрядах блока 2 базового адреса, а на младших (и-ш) разрядах — нулевого уровня, причем младшие разряды (n-т) входного кода блока 2 элементов ИЛИ отводятся для модификации адреса микрокоманды выходным кодом памяти

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

Таким образом, нулевая страница памяти 12 отводится для появления на ее выходе нулевого кода в режимах занесения начального адреса ьжкропрограммы и безусловного перехода.

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

23 регистра 4 принимает высокий уровень, в результате чего разрешается прохождение синхроимпульса С1

5 1259262

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

При поступлении на вход 19 устройства импульсного сигнала запуска (фиг. 3, 33) происходит перевод устройства в исходное состояние, т.е. обнуление регистров 6 и 4, при этом на выходах блока 11 приоритетного ветвления появляется нулевой код, а формирование тактовых синхроимнульсов с выходов блока 7 синхронизации начинается с С1, появляющегося на выходе 14 (фиг. 33+34-+35.+36-R7) . На выходах регистра 4 микрокоманд по-. является исходная микрокоманда

15 (фиг. 3, 33 40). Управление ходом выполнения микропрограммы осуществляется путем изменения содержимого счетчика 1 адресов, выходной код которого определяет адрес считываемой затем из блока 5 памяти микрокоманды.

Изменение содержимого счетчика 1 адpecos происходит либо занесением в него параллельного кода, либо прибавлением единицы к уже зафиксированно25 му в нем коду, Формирование параллельного кода на информационном входе счетчика 1 адресов происходит в блоке 2 элементов ИЛИ„состоящем из и трехвходовых элементов ИЛИ, где и — разрядность адресного кода на выходах счетчика 1 адресов. Активным уровнем на входах блока 2 элементов ИЛИ является высокий уровень сигнала. При этом 35 осуществляются три основных режима формирования параллельного кода на информационном входе счетчика 1 адресов.

Режим занесения начального адреса 40 микропрограммы. После подачи на вход

19 устройства импульса запуска (фиг. 3 и 4, У1 У2, УЗ, У4) на выходах регистра 4 микрокоманд появляет- . ся исходная микрокоманда, которая определяет на выходе 26 низкий (нулевой) уровень, а на выходе 22 — нулевой код, определяющий независимо от кода на выходах блока 11 приоритетного ветвления нулевой код на выходах SO памяти 12, В то же время единичный сигнал исходной микрокоманды на выходе 25 регистра 4 определяет прохождение через блок 3 элементов И кода начального адреса микропрограм- 55 мы с входа 13 устройства, который появляется затем на информационном входе счетчика 1 адресов и заносит! 259262,на вйход элемента И 9 и далее на счетный вход счетчика 1 адресов.

В устройстве реализован четырехтактный цикл выполнения каждой микрокоманды. По первому такту (Ci) происходит формирование адреса следующей микрокоманды в счетчике 1 адресов (фиг, 3, 34-38).

По второму такту (С2) происходит занесение микрокоманды с выходов

10 блока 5 памяти в регистр 4 микрокоманд (фиг. 3. 35 w 40).

По третьему такту (СЗ) осуществляется занесение признака результата в регистр 6 (фиг. 3, 36 4 1), при этом заносимый код образо ан как кодом состояний внешних устройств— вход младших разрядов регистра 6, так и базовым кодом микропрограммы— вход старших разрядов регистра 6.

По четвертому такту (С4) осуществляется занесение кода приоритетного ветвления в регистр 30 блока 11 (фиг. 3, 37 43), что происходит, когда уровень приоритета текущего

25 кода признака результата на выходах регистра 6 превышает уровень зафиксированного ранее в регистре 30 кода приоритетного ветвления (фиг. 2).

В режиме условного перехода происходит управление ходом выполнения микропрограммы в зависимости от состояний внешних устройств. При этом в регистре 6 признаков, блоке 11 приоритетного ветвления, памяти 12 3g модифицируемых адресов и блоке 2 элементов ИЛИ происходит формирование предполагаемого ветвления микро- программы.

Формйрование ветвления осуществля-40 ется следующим образом.

В ходе выполнения микропрограммы вне зависимости от текущих режимов перехода на следующий адрес микро-. команды (режим занесения начального 4 адреса, режим безусловного .перехода по занесению параллельного кода или по прибавлению единицы, режим условного перехода) в блоке 11 приоритетного ветвления в каждом цикле выпол- Ы нения микрокоманды происходит арбитраж приоритетов предполагаемых ветвлений.

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

28 происходит арбитраж приоритетов: текущего — с выходов шифратора 29 и наиболее приоритетного по результатам выполнения части микропрограмм— с выходов регистра 30. Если код на одних входах мажоритарного элемента

28 больше кода на других его входах, то на его выходе появляется сигнал единичного уровня, разрешающих прохождение через элемент И 31 синхроимпульса С4, по которому происходит занесение в регистр 30 нового кода с выходов шифратора 29. Таким образом, на выходе регистра 30 всегда присутствует код, определяющий уровень наиболее приоритетного ветвления микропрограммы в результате выполнения определенной части микропрограммы. Причем по импульсу запуска регистр 30 обнуляется, таким образом подготавливается к выполнению очередной запускаемой микропрограммы, поэтому первый же в микропрограмме уровень приоритета, код которого превьппает нулевой, заносится в регистр 30.

При организации условного перехода в устройстве возможно ветвление микропрограммы как по наиболее приоритетному уровню, хранящемуся в регистре 30, так и по текущему уровню приоритета на выходах шифратора 29.

Для этого на выходе блока 11 коммутируется выбранный рабочий код ветвления. При единичном уровне сигнала на выходе 21 регистра 4 на выходы блока 11 коммутируется код текущего уровня приоритета, а при нулевом уровне сигнала на выходе 21 код приоритетного ветвления с выходов регистра 30.

Выходной код блока 11, поступающий на второй адресный вход памяти

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

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

1 адресов.

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

Микропрограммное устройство управ- 10 пения, содержащее счетчик адресов, блок памяти микрокоманд, блок элементов И и блок элементов ИЛИ, причем первый вход блока элементов И является входом кода команды устройства, 15 выход блока элементов И соединен с первым входом блока элементов ИЛИ, выход которого соединен с информационным входом счетчика адресов, выход которого соединен с адресным входом 20 блока памяти микрокоманд, о т л ич а ю щ е е с я тем, что, с целью повышения быстродействия в режиме ветвления микропрограммы по внешним логическим условиям, оно дополнитель-25 но содержит два элемента И, элемент

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

12592б2

Фма 2

33

ЗФ

37 зв

Составитель Ю. Ланцов

Техред И.попович Корректор Т. Колб

Редактор О.Юрковецкая

Заказ 5122/46 Тирах 671

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

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

Подписное

Производственно-полиграфическое предприятие, г. Ухгород, ул. Проектная, 4.