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

 

Изобретение относится к автоматике и вычислительной технике. Цель изобретения - расширение области применения устройства путем обеспечения возможности работы в реальном масштабе времени при многоуровневых прерываниях. Устройство содержит коммутатор 1 адреса, счетчик 2 адреса, блок 3 памяти микропрограмм, блок 4 дешифраторов микрокоманд, регистр 6 адреса, коммутатор 7 условий, первый кольцевой сдвиговый регистр 8, второй кольцевой сдвиговый регистр 9, первый 10 и второй 11 элементы И, стековую память 12, группу 13 RS - триггеров аппаратных прерываний, блок 14 отладки программы, первый элемент ИЛИ 15, RS - триггер 16 прохождения пребывания, RS - триггер 17 прерывания, D - триггер 18 прерывания, RS - триггер 19 конца прерывания, RS - триггер 20 начальной установки, D - триггер 21 запрета, со второго по десятый элементы ИЛИ 22-30, с третьего по девятый элементы И 31-37 элемент НЕ 38. Возможность работы в реальном масштабе времени обеспечивается запоминанием сигналов запроса на внешнее прерывание, проверкой сигнала запрета прерывания, многократным запоминанием текущего адреса основной микропрограммы, в котором происходят прерывания, формированием аппаратными средствами микрокоманды безусловного перехода в начальный адрес микропрограммы внешнего прерывания или программными средствами - в адрес произвольной микроподпрограммы прерывания и формированием после ее выполнения микрокоманды безусловного перехода в адрес, на котором прервалось выполнение основной микропрограммы. 1 з.п. ф-лы, 5 ил.

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

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

РЕСПУБЛИН (19) (11) А1 (А!1 4 С 06 Р 9/22, 11/28

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

Н Д BTOPCROMY СВИДЕТЕЛЬСТВУ

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

ПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМ

ПРИ ГКНТ СССР (21 ) 42 61 3 93 /24 "24 (22) 15.06.87 (46) 15.11.89. Бюл. 1(42 (72) 10.С.Ицкович и Л.П,Храмцова (53) 681,325(088.8) (56) Авторское свидетельство СССР

1(1019450, кл, G 06 F 9/22, 1982.

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

Р 1188742, кл. G 06 F 11/28, 1983. (54) МИКРОПРОГРАММНОЕ УСТРОЙСТВО УП,РАВЛЕНИЯ (57) Изобретение относится к автоматике и вычислительной технике. Цель изобретения — расширение области при2 менения устройства путем обеспечения возможности работы в реальном масштабе времени при многоуровневых прерываниях. Устройство содержит коммутатор 1 адреса, счетчик 2 адреса, блок

3 памяти микропрограмм, блок 4 дешифраторов микрокоманд, регистр 6 адреса, коммутатор 7 условий, первый кольцевой сдвиговый регистр 8 ° второй кольцевой сдвиговый регистр 9, первый 10 и второй 11 элементы И, стековую память 12, группу 13 RSтриггеров аппаратных прерываний, блок

14 отладки программы, первый элемент

1522203

ИЛИ 15, RS-триггер 16 прохождения прерывания, RS-триггер 17 прерывания, RS-триггер 18 прерывания, RS-триггер

19 конца прерывания, RS-триггер 20 начальной установки, RS--триггер 21 запрета, со второго по десятый эле,, менты ИЛИ 22-30, с третьего по девя-! тый элементы И 31-37, элемент BE 38. е

Возможность работы в реальном масшта- 10 бе времени обеспечивается запоминанием сигналов запроса на внешнее прерывание, проверкой сигнала запрета прерывания, многократным запоминанием

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

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

На фиг.1 приведена функциональная

lcxeMa устройства; на фиг.2 — функциональная схема блока отладки; на фиг.3 — временные диаграммы работы;, на фиг.4 и 5 — схема алгоритмов микропрограммы, Устройство (фиг,1) содержит коммутатор 1 адреса, счетчик 2 адреса, блок 3 памяти микропрограмм, блок 4 дешифраторов микрокоманд $7), регистр

5 микрокоманд, регистр 6 адреса, коммутатор 7 условий, первый кольцевой .,сдвиговый регистр 8, второй кольце,вой сдвиговый регистр 9, первый и ,второй элементы И 10, 11, сдвиговая память 12, группа RS-триггеров 13 аппаратных прерываний, блок 14 отладки программы, первый элемент ИЛИ 15, RS-триггер 1б прохождения прерывания, RS-триггер 17 прерывания, D-триггер

18 прерывания, RS-триггер 19 конца прерывания, RS-триггер 20 начальной установки, D-триггер 21 запрета, со второго по десятый элементы ИЛИ 2230, с третьего по девятый элементы

И 31-37, элемент HE 38.

Блок 14 отладки программы (фиг.2) содержит схему сравнения 39, RS-триггер 40 начала программы, RS-триггер

41 конца программы, RS-триггер 42 останова, счетчик 43 циклов, счетный

55 текущего адреса основной микропрограммы, в котором происходят прерывания, формированием аппаратными

I средствами микрокоманды безусловного перехода в начальный адрес микропрограммы внешнего прерывания или программными средствами — в адрес произвольной микроподпрограммы прерывания и формированием после ее выполс нения микрокоманды безусловного перехода в адрес, на котором прервалось выполнение основной микропрограммы, 1 э.п.ф-лы, 5 ил, триггер 44, с первого- по седьмой элементы И 45-51, с первого по третий элементы ИЛИ 52-54, элемент 11Е 55, Временные диаграммы работы устройства представлены а фиг.3 где обозначены импульсы 56-61 фаз Ф1-Фб с 1-6 выходов первого кольцевого сдвигового регистра 8 соответственно, импульсы 62-64 тактсв 71-ТЗ с 1-3 выходов второго кольцевого сдвигового регистра 9.

Схема алгоритма программного перехода из основной микропрограммы к стандартной микропрограмме (фиг,4) содержит блок 65 основной микропрограммы; операторы бб, 67 алгоритма программного перехода; продолжение основной микропрограммы 68; операторы

69-75 стандартных микропрограмм.

Схема алгоритма обслуживания внешнего прерывания (фиг, 5) содержит операторы 76-90 алгоритма.

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

При работе устройства в рабочем режиме при поступлении импульсного положительного сигнала с входа начальной установки устройства этот сигнал г оступает через элемент 2? ИЛИ на входы начальной установки кольцевых сдвиговых регистров 8 и 9, устанавливая в регистре 8 два разряда, а в регистре 9 один из разрядов в единичное состояние, остальные - в нулевое, на S-вход RS-триггера 20 начальной установки, через элемент 22 ИЛИ на R-вход D-триггера 18 и через эле" мент 26 14 ИЛИ íà R-входы RS-триггеров 16 и 19, устанавливая триггеры в нулевое состояние, 03

5 15222

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

61 (Ф1-Ф6) в пределах одного интервала повторения, являющегося микротактом работы устройства. Единичный сигнал в кольцевом сдвиговом регистре 9 передвигается под воздействием им- 15 пульсов первой фазы, поступающих с кольцевого сдвигового регистра 8, при этом формируется гребенка сдвинутых импульсов, образующих 3 рабочих такта 62-64 в пределах одного интервала 20 повторения, По сигналу шестой фазы с кольцевого сдвигового регистра 8 на

RS-триггер 20 заканчивается формирование сигнала начальной установки (длительность в один такт), Сигнал 25 начальной установки с RS- òðèããåðà 20 через элемент 29 ИЛИ поступает на элеэлемент 11 И, открывая его, и через элементы 38 на элемент 1О И, закрывая его. Таким образом, сигнал второй фа- 30 зы с кольцевого сдвигового регистра 8 проходит через элемент 11 И и сбрасывает счетчик 2 адреса.

По окончании сигнала начальной установки сигналы второй фазы поступают 35 на синхровход счетчика -2 адреса через элемент 10 И. Одновременно сигнал начальной установки подается на вход записи указателя стека и, проходя через элемент 29 ИЛИ, разрешает прохож- 40 дение сигнала четвертой фазы на синхровход стековой памя=и, при этом информация, подаваемая на вход установки вложенных уровней прерывания устройства, записывается в указатель сте- 45 ковой памяти, Происходит формирование . очередной микрокоманды на выходе реги-,, стра 5 микрокоманд, являющихся выходом микроопераций устройства в целом, следующим образом, 50

Содержимое счетчика 2 адреса поступает на вход блока 3 памяти микропрограммы, с выхода которого код очередной микрокоманды записывается в реги55 стр 6 адреса и блок дешифратора 4. В устройстве может быть сформировано два типа микрокоманд: простая микрокоманда и условный переход, отличающихся признаком условного перехода в коде микрокоманды, Если в текущем микротакте из блока 3 памяти микропрограммы выбрана простая микрокоманда, то по шестой. фазе кольцевого сдвигового регистра 8 в D-триггере

21 запрета записывается нулевой сигнал. При этом единичный сигнал с его инверсного выхода проходит через элемент 25 ИЛИ на вход стробирования блока дешифратора 24 микрокоманд.

Сигналом первой фазы кольцевого сдвигового регистра 8 следующего микротакта управляющие сигналы с выхода блока дешифратора 4.микрокоманд saписываются в код регистр 5, Если в текущем микротакте из блока 3 памяти микропрограммы выбрана микрокоманда условного перехода, то по сигналу первой фазы кольцевого сдвигового регистра 8 эта микрокоманда записывается в регистр 6 адреса.

Адрес условного перехода закодированный в микрокоманде условного перехода, поступает на вход коммутатора 1 адреса, а с выхода его — на информационный вход счетчика 2 адреса, код номера условия — на управляющий вход коммутатора 7 условий; по которому коммутатор 7 пропускает-на вход элемента 33 И сигнал одного из условий со своего входа, соответствующий выполнению условного перехода. На второй вход элемента 33 И поступает единичный сигнал признака условного перехода, записанный в регистр. Если условие не выполнено, то на выходе коммутатора 7 условий формируется ну, левой сигнал, который через элемент

45 ИЛИ поступает на элемент 32 И и запрещает прохождение сигнала третьей фазы через него, при этом на входе записи в счетчик 2 формируется нулевой нейтральный сигнал, а по сигналу 2-й фазы, поступающему на счетный вход счетчика 2 через элемент 11

И от регулятора 9, прибавляется единица к содержимому счетчика 2 и устройство формирует микрокоманду, адрес которой отличается на единицу от адреса текущей микрокоманды. Аналогично счетчик 8 адреса формирует следующую команду в случае, если из блока 3 памяти выбрана простая команда, так как в этом случае в регистр 5 записывается нулевой сигнал, запрещающий прохождение сигналов третьей фазы через элемент 32 И. Если условие

1522203

Выполнено., то на Выходе коммутатора

/ } С ((О Вий ЙО Х >IHP }>B TCEJ Е,Г(11НИЧНЫЙ СИГ

El }(i, i;QтО->b:> разрешает прохождение сиги(>па т>}(. тIье 1 фазы через элемРнты

32 И на ход записи числа В счетчик

2 ад;>е(,=, H производи сВ запись адреcd у;:: ов>J(il о 1>зp= хода.,- поступающего на инфор iaIIHoнный вход счетчика 2 адреса из регистра 6, через коммута. О>.:. =,дpP(}а .. (тс обеспе -гивает пере.:.:«!:, „">}трой(.;твя В jlqpec кь(кропрограм, 1ь, >,: - >;-1(О о,, >, > е (ущеи (л(крокомянде

-с110»>:(-"::(о переходя. п}и этом состоя1

>Вне на QHHõpQBõoäå счетчика безразлично., t(! liGHl(B. безус(1овного перехода вы;.и;-.:-: (::» аналогично команде услов(!

:.... »>>. . >}а (.УТЕ(> КОДИООБанИЯ Б НЕЙ (10(з . i . -.",, . B > -".:(, -JIIPHQPHQ Бь(полненнОГО 2О ! QUKlf (} .=НИ i .:ООТВЕТСТВУ((}ЩЕГО ВХОДЯ ко(.м}>:>, . (>.>1>а > 1-(я единичный потенциал ис i ач(1 .,1 пи::-.ния, (.,иновре-:;.енно при

Вы(101(и:;(-".,(1 Условного пеРехоДа B D 1риг1 L. >(., зя(> (.>етя llятой фазой коль цево ГО (:,> ;Bi(ãoBo ãî регистра 9 записы" ваетс= признак услогного перехода а нулевой сигнал с инверсного выходя

П =три Г-,Рра,> 1 чер(з з}яр (ент . 5 >Щ1

-..(0I туп(;,т ня б>101(де.(.и(1}раторов 4 мик- о ,}oEio;»Jaнд и -. япр еще е т еão рябо 1 > . !

Псрех>, >ц из 00110В =,Ой 1>>1кропрс Бра EJ"i мы d: (" (а-.дартной м111:1}опо(}1трог(}-...(.г.; (фи(- 1 1 производь»-; ся сл(-:>1>у(О1ц -1м o,ipß3oN, По(-л:.— -,ып(пнет-;ия О с =.Овной мин,}, } (}Q>1po 1}I} а >.,>я 15 Tjo то гo места: (>

ОбходимО ВьlпО}(нкт;: 1(е1}вход к (JTGEI:

> ..яр т> i Q H (. (и к р О под ((> o I 1} амм ° —;, ф01} vll ip g p T ся 1(БОстея микро po>OJ}ÿì1а (}6 записи

ВДРРса тоеРыв анин B стек1}ВУю IIBbIJITB, >9

ПО этой командс по сигналу первой факОльцеBQI G сдв1IBQBQI 0 регистра 9

BbliiQIIя регистра си1 нял з (1писи В c T p

,ковую память поступает через элемент

38 ИПИ на Входы разрешения прямого сдвига и через элемент 29 ИЛИ ня перьый вход элемента Зб И,, открывая его.

По ст г11я}1:.> Второй фазы кольцевого

СЦВИГОБОГО БРГИСТГа (> ПРОИ ВОДИТСЯ прибавление е>1((ни1(ы к сс яержимому .> 1 счетчика 2 адреса,, а сигняп четвертой" фазы копь((евого сцвигового регистра

8, проходя Iei}P= элеме:T 30 И поступает на синхровход стеконой памяти„.

lJJ1B И(1фОРМаЦИОННЬ(Е ВХ>}ДЬ(1;ÎTOPOI О IIO "

I дается сигнал со счетчика 2 адреса H происходи - запи(ь адреса следующей ко(анды ЬУ Б IIPpBólj ячейку cTPE>;QBOH и; мяти При > гр ii (o;, сдв1(г е количестве единичных разрядов B указателе стековой памяти увеличивается, а при обратном сдвиге уменьшается.

Сигнал с выхода признака занятости стек<>вой памяти поступает через элемент 24 ИЛИ на инверсный вход элемента 34 И, запрещая прохождение прерывания по сигналам запроса на внешнее прерывание, I

Зтот же сигнал с первого выхода указателя стековой памяти поступает на вход условия-стек 1 коммутатора 7, аналогично сигнал со второго Выхода указателя стековой памяти поступает на Вход условия — стек 2 коммутатора

7 условий и т,д, Эти условия в дальнейшем называются условиями прерывания соответствующего уровня. В следующем микротакте формируется кома: да

67 условного переходя, В которой проверяется условие первого уровня прерывания стек 1 = 1, выполнение которого подготовпено предыдущей микрокомандой, и Выполняется переход к стандартной подпрограмме б9, При ее Выполнении В случае необходимости производится обращение к другой с тандар тной подпрогр >ме,, при этом выполняется микрокоманд 70 записи в стековую память:, по сигналу записи в стековую память производится запись в адреса микрокоманды 71, одновременно произво;;ится сдвиг указателя стековой памя"ш1, вследствие чего по второй разряд указателя стековой памяти записывается единичный сигнал, В следующем микротакте формируется микрокоманда 71 условного перехода, в котором проверяется условие второго уровня прерывания (стек 2=1), выполнение которого подготовлено предыдущей микрокомандой, и выполняется условный переход к стандартной подпрограмме. Посла выполнения стандартной подпрограммы

74 формируется микрокоманда 75 возврата по адресу микрокоманды 71, записанному в стендовую память. 12 последним и одновременный обратный сдвиг стековой памяти и указателя стековой памяти следующим образом. При формировании в блоке 3 памяти микрокоманды

75 единичный сигнал возврата с выхода регистра 3 поступает на входы обратног0 сдвига стековой памяти 12 и на соответствующий вход коммутатора 1 адреса. Адрес, записанный последним в стековую память через коммутатор 1 адреса, записывается в счетчик 2 ад1522203!

О реса сигналом третьей фазы кольцевого сдвигового регистра 9, разрешение

„ на прохождение которого осуществляется сигналом возврата через элемент

15 ИЛИ. Одновременно сигнал возврата, 5 проходя через схему 23 -ИЛИ, разрешает прохождение сигнала четвертой фазы кольцевого сдвигового регистра 9 через элемент 36 И на синхровход стековой памяти..Происходит обратный сдвиг стековой памяти и указателя стековой памяти..

Таким образом. происходит возврат к кроком "де условного перехода 15 в которой проверяется условие второго уровня прерывания стек 2=1, отсутствие выполнения которого подготовлено предыдущей командой возврата.

Вследствие этого после микрокоманды

71 выполняется продолжение 72 первой стандартной подпрограммы, по окончании которой выполняется микрокоманда

73 возврата по адресу микрокоманды

67, записанному в стековую память, сдвиг стековой памяти и указателя стековой памяти выполняется аналогично вышеизложенному. Одновременно сигнал возврата поступает на вход элемента 24 ИЛИ и формируется сигнал за3 пр ета внешних прерываний на элемент

34 И. Далее формируется микрокоманда

68 условного перехода, в которой проверяется условие первого уровня пре-. рывания, стек 1=1, отсутствие выпол-. нения которого подготовлено предыдущей командой возврата. Вследствие этого после микрокоманды 67 выполня-. . ется продолжение 68 основной микропрограммы.

Переход к программе обслуживания внешнего прерывания осуществляется путем формирования сигналов (ПрТ! и

ПрТ2), по которым происходит запоминание адреса прерывания в стековой памяти с одновременным сдвигом его указателя — фиксацией уровня прерывания и производится непосредственно переход к программе внешнего прерывания (фиг.5) следующим образом.

- 50

Сигнал начальной установки через элемент 26 ИЛИ поступает Hà RS-триггер 16 прохождения прерываний и RSтриггер 18, устанавливая их в нулевое состояние. Сигналы с инверсного выхода RS-триггера разрешает прохождение сигнала прерывания через элемент 37

И, а сигнал с прямого выходы запрещает прохождение сигналов через элементы 31 и 34 И, Сигналом третьего такта сдвиговогo RS òðèããåðà

17 устанавливается в нулевое состояние, при котором на вход элемента

31 И подается запрещающий нулевой сигнал. Сигнал И запроса внешних прерываний Прl,. ° .,Прп поступают на входы группы 1 3 RS-триггеров прерываний, являющихся входами устройства,, и запоминаются,в нем, Эти сигналы через элемент 30 ИЛИ поступают на элемент

37 И. Если на инверсном входе элемен-. та 37 И отсутствует сигнал запрета прерывания устройства, то разрешаетсы прохождение сигнала пятой фазы сдвигового регистра 8 на вход КЯтриггера 16 прохождение прерывания, который устанавливает его в единичное состояние, разрешающее прохождение через элементы 31 и 34 И, с инверсного выхода RS-триггера !6, при этом подается запрет на элемент 37 И. На входы элемента 24 ИЛИ при выполнении соответствующих команд поступают сигналы запрета прерываний, Если сигналы на входах элемента

24 ИЛИ отсутствуют, на инверсный вход элемента 34 И поступает нулевой сигнал, разрешающий прохождение сигнала первого такта кольцевого сдвигового регистра 9.

Указанный сигнал проходит через элемент 34 И и поступает íà D-.òðèãгер 18 прохождения прерывания, уста-навливая его в единичное состояние, одновременно подается разрешение на элемент 35 И и сигналом второй фазы кольцевого сдвигового регистра 8 устанавливается RS-триггер 17 в единичное состояние, при котором на вход элемента 31 И подается сигнал разрешения. Через элемент 28 ИЛИ сигнал с

D-триггера 18 поступает на вход разрешения прямого сдвига стековой памяти и происходит запись адреса следующей микрокоманды в стековую память и индикация ее занятости аналогично изложенному выше при программном прерывании. С инверсного выхода D""òðèãгера 18 через элемент 25 И подается запрет на блок дешифратора 4. Сигнал второго такта с кольцевого сдвигового регистра 9 проходит через элемент

31 И и через элемент 22 ИЛИ поступает на D-триггер 18, устанавливая его в исходное нулевое состояние, на RSтриггер 19 прерывания, устанавливая его в единичное состояние, с выхода

1522203

RS-триггера 19 единичный сигнал че,рез элемент 24 ИЛИ поступает на инверсный вход элемента 34 И и запре щает прохождение сигнала первого так5 та кольцевого сдвигового регистра D, одновременно сигнал с элемента 31 И поступает на управляющий вход коммутатора 1 адреса и через элемент 15

ИЛИ на вход разрешения элемента 32 И, 1О разрешая прохождение адреса микрокоманды 76 (фиг.5) с входа кода операций устройства. Сигнал третьего такта регистров 9 обнуляет триггер 17, запрещая прохождение других сигналов второго такта через элемент 31 И. Далее выполняется программа обработки внешних прерываний, которая начинается с микрокоманды 76 запоминания словосостояния программы, затем формиру- 20 ются микрокоманды 77-79 условного пе" рехода, в которых проверяется в порядке приоритетов наличие сигналов

Пр1,...,Пр п-1 запроса на внешние прерывания, хранящиеся в группе !8 25 триггеров и поступающие на вход условий коммутатора 7 условий. При наличии одного из сигналов Пр1,...,Hp п-1 выполняется прерывание согласно граф схеме алгоритма фиг.5, при этом вна-! чале производится сброс триггера, хранящего запрос на выполняемое пре рывание в микрокомандах 80,85,87 или 82 сигналами "Сброс" Пр1,. ° .,Сброс,Прп„ поступающими с выхода блока дешифратора 4 Пр1....Прп на вход сброса груп35 пы 13 RS-триггеров, далее выполняется и кропрограмма 81,86,88 или 90 обслуживания соответствующего прерывания и в конце каждой части осуществ;ляется безусловный переход к микроко манде 82 восстановления словосостоя-,, 1 ния. Далее выполняется микрокоманда

89 общего сброса прерываний, по которой сбрасывает блок дешифраторов 4, с выхода которого сигнал через схему

26 ИЛИ подается на входы RS-триггеров

16 и 18, устанавливая их в нулевое состояние, аналогично начальной. установке, т.е. схема подготавливается к выполнению следующего аппаратного прерывания. Затем формируется микро" команда 84 возврата по адресу, записанному в стековой памяти аналогично изложенному вышее.

В режиме отладки программы блок

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

И, открывая их, При поступлении импульсного положительного сигнала с начальной установки этот сигнал поступает через элемент ИЛИ на вход RSтриггера 42, устанавливая его в еди-. ничное состояние. Сигнал RS-триггера

42 через открытый элемент 48 И и элемент 52 ИЛИ поступает на выход блока

14 отладки и через элемент 27 ИЛИ поступает на вход начальной установки кольцевых сдвиговых регистров 8 и

9 и удерживает их в исходном состоянии в течение любого времени по желанию оператора. При этом устройство не работает и находится в режиме ожидания до формирования единичного импульсного сигнала на входе пуска устройства. Одновременно сигнал началь.ной установки устанавливает в единичное состояние RS-триггер 40 начала микропрограммы, в нулевое состояние

RS-триггер 41 конца микропрограммы.

При этом выходной сигнал RS-триггера 40 через открытый элемент 40 И по-ступает на коммутатор 1 адреса и переключает последний в режим пропускания кода с входа кода операции устройства. Кроме того, выходной сигнал элемента 40 поступает через элемент

15 И на вход разрешения элемента 32 и тем самым подготавливает счетчик 2 адреса к пропусканию сигнала на вход записи.

При формировании единичного импульсного сигнала на входе пуска в счетчик 43 циклов записывается число цик1 лов,поступающее с входа кода окончания операции, Одновременно сигнал пуска через элемент 54 ИПИустанавливает RSтриггер 42 в нулевое состояние,что приводит в действие кольцевые сдвиговые регистры 8 и 9, которые под воздействием тактового сигнала начинают действовать аналогично изложенному выше в рабочем режиме, В первом микротакте сигналом первой фазы кольцевого регистра 8 в регистр 6 записывается пустая микрокоманда из нулевой ячейки блока 3 памяти микропрограммы, соответствующая нулевому состоянию счетчика 2 адреса. Счгналом третьей фазы регистра 3, поступающим через элемент 32 И, записывается в счетчик

2 адреса через коммутатор 1 адреса начало микропрограммы. Сигнал пятой

13

14

1522203

Формула изобретения фазы кольцевого сдвигового регистра

8 сбрасывает RS-триггер 40 начала микропрограммы в нулевое состояние и переводит к коммутатору 1 адреса в рабочий режим, обеспечивая замыкание цепей для выполнения условных переходов устройством, аналогично изложенному выше.

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

2 поступает на схему 39 сравнения, на второй вход которого поступает конечный адрес микрокоманды, установленный на входе кода окончания операции.

Когда микропрограмма, формируемая устройством, достигает адреса, равного конечному адресу, на выходе схемы сравнения формируется единичный сигнал, поступающий на элемент 45 И, При 25 этом при прохождении последней микрокоманды сигнал шестой фазы кольцевого сдвигового регистра 8 через элемен1 45 И поступает íà RS-триггер 41 конца микропрограммы и устанавливает

его в единичное состояние. Выходной сигнал RS-триггера 41 открывает элемент 47 И и одновременно через элемент 49 ИЛИ бткрывает элемент 11 И.

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

47 И и 53 ИЛИ и устанавливает RS- триггер 42 в единичное состояние, Единичный сигнал RS-триггера 42 проходит через элементы 48 И и 52 ИЛИ и устанавливает RS-тригrep 41 конца программы в нулевое состояние, при этом заканчивается формирование сигнала конца программы и устройство устанавливается в исходное положение.

Если на втором синхровходе блока

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

Если на втором синхровходе блока 14 установлен единичный сигнал, то после первого цикла исполнения микропрограммы от начального до конечного адреса, как изложено выше, сигнал с выхода элемента 52 ИЛИ открывает элемент 46 И, через который тактовый сигнал поступает на счетный вход триггера 44 и переводит его в единичное состояние. Выходной сигнал триггера

44 через элементы 50 И и 54 ИЛИ сбрасывает RS-триггер 42 в нулевое состояние. Затем работа устройства повторяется от начального адреса до конечного аналогично изложенному вьппе циклу работы. Нулевой сигнал с выхода элемента 52 ИЛИ через элемент НЕ 55 устанавливает счетный триггер 44 в нулевое состояние, Таким образом, на выходе триггера 44 формируется в кон-. це каждого цикла работы микропрограммный импульс, поступающий кроме элемента 50 И также на счетный вход счетчика 48 циклов, который работает в режиме обратного счета и после каждого цикла уменьшает свое содержимое на единицу.

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

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

1. Микропрограммное устройство управления, содержащее регистр адреса, коммутатор адреса, счетчик адреса, 15

1б . ) 522203

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

t целью расширения области применения путем обеспечения возможности работь. в реальном масштабе времени при мно35 гоуровневых прерываниях, в него вве. — . дены стековая память, второй кольце-. вой сдвиговый регистр, группа RSтриггеров аппаратных прерываний, RSтриггеры прохождения прерывания, RSтриггер. прерывания, RS"триггер конца прерывания, RS-триггер начальной установки, D-триггер прерывания, Dтриггер запрета, с пятого по десятый элементы ИЛИ, причем третий информа- ционный вход коммутатора адреса соединен с информационным выходом стековой памяти, первый управляющий вход коммутатора адреса соединен с пер= вым входом первого элемента ИЛИ и подключен к выходу признака начала программы блока отладки программы, второй управляющий вход коммутатора. адреса соединен с входом RS-триггера

55 конца прерывания, первым входом второго и вторым входом первого элемен" та ИЛИ и поДключен к выходу третьего элемента И, третий управляющий вход

5Î блок памяти микропрограмм, блок дешифраторов микрокоманд, регистр микрокоманд, коммутатор условий, первый кольцевой сдвиговый регистр, блок от-:.

5 ладки программы, с первого по девятый элементы И, с первого по четвертый элементы ИЛИ, элемент НЕ, причем вход кода операции устройства соединен с первым информационным входом коммута- 10 тора адреса, выход которого соединен с информационным входом счетчика адре. са, информационный выход которого соединен с адресным входом блока памяти микропрограмм, выход кода микроопера- )5 ций которого соединен- с информационным входом блока дешифраторов микрокоманд, первый выход которого. соединен с информационным входом регистра микрокоманд, выход кода микроопераций которого является выходом микроопераций устройства, выход кода адреса регистра адреса соединен с вторым информационным входом коммутатора адреса, входы логических условий устройства 25 соединены с первой группой информацикоммутатора адреса соединен с входом разрешения обратного сдвига стековой памяти с первыми входами третьего и четвертого элементов ИЛИ и третьим входом первого элемента ИЛИ и подключен к выходу признака возврата реги=. стра микрокоманд, счетный вход счетчика адреса подключен к выходу первого элемента И, вход установки в 0 1 счетчика адреса соединен с выходом второго элемента И, вход управления режимом записи счетчика адреса подключен к выходу четвертого элемен-. та И, а выход счетчика адреса соеди-, нен с входом текущего адреса блока отладки программы с информационным входом стековой памяти, вход записи регистра адреса соединен с входами записи регистра микрокоманд второго кольцевого сдвигового регистра и с первым выходом первого кольцевого сдвигового регистра, выход признака типа команды блока памяти микрокоманд соединен с D-входом D-триггера запрета, синхровход которого соединен с первым синхровходом блока отладки программы и с D-входом .RS-триггера начальной установки, а инверсный выход 0-триггера запрета подключен к первому входу пятого элемента ИЛИ, второй вход которого подключен к инверсному выходу D-триггера прерывания пятого элемента ИЛИ., выход подключен к входу стробирования блока дешнфраторов микрокоманд, второй выход блока дешифраторов микрокоманд подключен к входам R RS-триггеров групп аппаратных триггеров прерываний, третий выход блока дешнфраторов микрокоманд подключен к первому входу шестого элемента ИЛИ, второй вход которого соединен с вторыми входами второго ипервым входом седьмого элементов ИЛИ, S-входом RS-триггера начальной установки, входом начальной установки блока отладки программы и подключен к входу начальной установки устройства, а выход шестого элемента ИЛИ подключен к R-входу RS"триггеров прохождения прерывания и конца прерывания, выход признака условного перехода регистра микрокоманд соединен с первым входом пятого элемента И и подключен к второму входу четвертого элемента ИЛИ, третий вход которого подключен к выходу признака занятос-. ти стековой памяти, четвертый вход четвертого элемента ИЛИ соединен с

17

18

1522203 выходом признака запрета прерываний регистра микрокоманд, а пятый вход четвертого элемента ИЛИ соединен с прямым выходом RS-триггера конца пре5 рывания, выход четвертого элемента

ИЛИ подключен к первому входу шестого элемента И, второй вход которого подключен к первому выходу второго кольцевого сдвигового регистра, а третий вход шестого элемента И соединен с входом третьего элемента И и подключен к прямому выходу RS-триггера прохождения прерываний, 1 выход шестого элемента И соединен с первым входом седьмого элемента И и подключен к D-входу D-триггера прерывания, синхровход которого соединен с вторыми входами первого, второго и седьмо-. го элементов И и подключен к второму выходу первого кольцевого сдвигового регистра, а вход сброса D-триггера прерывания подключен к выходу второго элемента ИЛИ, прямой выход D-триггера прерывания подключен к первому 25 входу восьмого элемента ИЛИ, второй вход которого подключен к выходу признака записи в стековую память.регистра микрокоманд, а выход восьмого эле-. мента ИЛИ соединен с входом разрешения прямого сдвига стековой памяти и подключен к второму входу третьего элемента ИЛИ, третий вход которого соединен с входом записи указателя . стековой памяти, первым входом девятого элемента ИЛИ и подключен к прямому выходу RS-триггера начальной установки, выход третьего элемента ИЛИ соединен с первым входом восьмого элемента И, выход восьмого элемента И 4О подключен к входу записи стековой памяти, третий выход первого кольцевого сдвигового регистра подключен к первому входу четвертого элемента И, второй вход которого подключен к вы- 45 ходу первого элемента ИЛИ, четвертый вход которого подключен к выходу пятого элемента И, второй вход которого подключен к выходу коммутатора условий, второй вход восьмого элемента И подключен к четвертому выходу первого кольцевого сдвигового регистра, вторая группа информационных входов коммутатора условий соединена с выхода-. ми указателя стековой памяти, вход указателя стековой памяти соединен с входом установки вложенных уровней прерывания устройства, третья группа информационных входов коммутатора ус-ловий соединена с прямыми выходами

RS-триггеров группы RS-триггеров алпаратных прерываний, S-входы которых являются входами внешних прерываний устройства, прямые выходы RSтриггеров группы RS-.òðèããåðîâ аппаратных прерываний соединены входами десятого элемента ИЛИ, выход которого подключен к первому входу девятого элемента И, второй вход которого подключен к входу запрета прерываний устройства, третий вход девятого элемента И подключен к инверсному выхо; ду RS-триггера прохождения прерывания, четвертый вход девятого элемента И подключен к пятому выходу первого кольцевого сдвигового регистра и соединен с вторым синхровходом блока ,отладки программы, а выход девятого элемента И соединен с S-входом RSтриггера прохождения прерывания, синхровход первого кольцевого сдвигового регистра подключен к синхровходу устройства и соединен с третьим синровходом блока отладки программы, вход начальной установки первого кольевого сдвигового регистра и второго кольцевого сдвигового регистра подключен к выходу седьмого элемента

Ю

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

ИЛИ, выход которого соединен с вторым входом второго элемента И и входом элемента НЕ, выход которого подключен,к второму входу первого элемента

И, шестой выход первого кольцевого сдвигового регистра соединен с R-входом RS-триггера начальной установки, вход конца программы блока отладки программы соединен с входом кода окончания операции устройства, вход пуска устройства соединен с входом пуска блока отладки программы, второй выход второго кольцевого сдвигового регистра подключен к второму входу третьего элемента И, а третий выход второго кольцевого сдвигового регистра подключен к R-входу RS-триггера прерывания S-вход которого подключен к выходу седьмого элемента И, прямой выход RS-триггера прерывания соединен с третьим входом третьего элемента И.

2. Устройство по п.1, о т л и ч а— ю щ е е с я тем, что блок отладки программы содержит схему сравнения, 20

19

1522203 счетчик циклов, счетный триггер, RSтриггер начала и RS-триггер конца программы, RS-триггер останова, с > первого по седьмой элементы И, с первого по третий элементы ИЛИ, элемент

: HE, причем первый и второй входы схе мы сравнения подключены соответст-! венно к младшим разрядам входа . кон-. ! ца программы и входу текущего адреса 0 программы, блока отладки программы, ;выход схемы сравнения подключен к первому входу первого элемента И, второй ! вход которого подключен к первому син,хровходу блока Отладки программы а 15 выход первого элемента И подключен к S-входу RS-триггера конца программы, 1

R-вход которого соединен с S-входом RS-триггера начала программы, с пер,вым входом второго элемента И, вхо. — . ! дом элемента НЕ и выходом признака рабочего режима блока отладки про граммы и подключен к выходу первого, элемента ИЛИ, а прямой выход RS-триггера конца программы соединен с выхо- 2 дом признака конца программы блока

1 отладки программы и подключен к первому входу третьего элемента И, второй вход которого соединен с R-входом

RS-триггера. начала программы и подключен к второму синхровходу блока ( отладки. программы, а выход третьего элемента И подключен к первому входу второго элемента ИЛИ„ второй вход <оторого соединен с вторым входом первого элемента ИЛИ и подключен к входу З начальной установки блока отладки программ., а выход второго элемента

KIH подключен к S-входу RS-триггера останова прямой выход которого подФ

40 ключен к первому входу четвертого элемента И, второй вход которого соединен с первым входом пятого элемента

И и подключен к первому старшему разряду входа конца программы блока отладки программ,, а выход четвертого элемента И подключен к первому входу первого элемента ИДИ, R-вход RS-триггера останова подключен к выходу третьего элемента ИЛИ, первый вход которого соединен с входом записи счетчика циклов и подключен к входу пуска блока отладки программ, а второй вход элемента ИЛИ подключен к выходу элемента И, первый вход которого подключен к второму старшему разряду входа конца программы блока отладки программ, второй вход элемента

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

1522203

1522203

Фиг, j

Составитель В.Криворучко

Редактор А,Долинич Техред Л.Серд окова Корректор М.Пожо

Заказ 6964/46 Тираж 668 Подписное

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

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

Производственно-издательский комбинат "Патент", г, Ужгород, ул. Гагарина, 101

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

 

Похожие патенты:

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

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

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

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

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

Изобретение относится к вычислительной технике и может быть использовано в специализированных вычислительных ЭВМ и вычислительных системах с микропрограммным управлением

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

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

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

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

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

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

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

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

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

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

Изобретение относится к вычислительной технике

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

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

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