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

Иллюстрации

Показать все

Реферат

 

6. Я; Пушкарев, Д. В. Полонский и 9. Г. (72) . Авторы

«зобретения (71) Заявятель

f В (54) МИКРОПРОГРАММНОЕ УСТРОЙСТВО УПРАВЛЕНИЯ

С КОНТРОЛЕМ ПЕРЕХОДОВ

1 . 2

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

:Известно устройство,- содержащее 3a" . Наиболее близким к предлагаемому . поминающее устройство программы,.счет-, изобретению является микропрограммное чик адреса. команд, регистр команд, устройство с контролем переходов, со:,устройство модификации адреса, схемы держащее блок памяти микрокоманд, ре.сравнения, схемы сверток no moct 3 ф гистр адреса, регистр микрокоманд, блок сравнения, блок управления переВ известнбм устройстве контроль хо, .ходами и сдвигающий регистр 1 2). да программы осуществляется поэтапно: . Основным недостатком устройства яввначале контролируется формирование 1з ляется невозможность контроля ложных адреса команды, затем производится переходов между участками с одинако" контроль правильности обращения по ад-. вой конфигурацией и, в результате, ресу.,:, : " . полным совпадением контрольных кодов, Необходимость в запоминаний конт- а также затрудненный контроль участ", рольных кодов адресов команд обуслав- 2в. ков, имеющих сходящиеся или параллельливает увеличение разрядности всех ные ветви микропрограммй с различной слов запоминающего устройства., а для конфигурацией, на что требуется .дополконтроля формирования адреса команды . нительное количество контрольных микФ

9666 рокоманд, приводящее к существенному снижению быстродействия.

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

Поставленная цель достигается тем, 10 что в микропрограммное устройство управления с контролем переходов, содержащее блок памяти микрокоманд, регистр адреса, регистр микрокоманд, схему сравнения и блок управления перехода- 15 ми, причем информационный выход блока управления переходами соединен с первым информационным входом регистра адреса, выход которого соединен с адрес-, ным входом блока памяти микрокоманд, информационный выход блока памяти микрокоманд соединен с информационным входом регистра микрокоманд, первый выход которого соединен с вторым инфоРмационным входом регистра адреса, выход схемы сравнения является сиг, нальным выходом устройства, введены

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

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

94 с входом начальной установки устройства.

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

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

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

Микропрограммное устройство управления с контролем переходов содержит. блок 1 памяти микрокоманд, регистр 2 адреса, регистр 3 микрокоманд, блок 4 управления переходами, схему сравнения, блок 6 ассоциативной памяти, регистр 7 контроля, элементы 8 И, 9

ИЛИ, распределитель импульсов.

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

Адресная часть микрокоманды без младшего разряда с четвертого выхода регистра 3 микрокоманд поступает на адресные входы регистра 2 адреса и блока 6 ассоциативной памяти. Иладший разряд адресной части микрокоманды с второго выхода регистра 3 микрокоманд поступает на вход 15 блока 4 управления переходами. С выхода 18 блока 4 управления переходами, соединенным с первыми адресными входами регистра 2 адреса и блока 6 ассоциативной памяти, задается младший разряд адреса, дополняемый к адресной части микрокоманды при вычислении адреса следующей микрокоманды в регистре 2 адреса и выборе контрольного адреса из блока 6 ассоциативной памяти.

С третьего выхода регистра 3 микрокоманд на вход 17 блока 4 управления

966694

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

Управляющий выход 16 блока 4 управления переходами подключен к входу элемента 8 И и разрешающему входу 27 схемы 5 сравнения. Выход блока 6 ассоци- 10 ативной памяти. соединен с информационным входом регистра 7 контроля, выходом соединенным с информационным входом 24 схемы 5 сравнения. Выход регистра 2 адреса подключен к входу бло-1% ка 1 памяти микрокоманд и другому информационному входу 25 схемы 5 сравнения, с выхода которого на выход 13 устройства поступает сигнал ошибки.

Вход занесения регистра 7 контроля.20 соединен с выходом элемента 9 ИЛИ, один вход которого подключен к выходу . элемента 8 И, а другой соединен одновременно с входами 19 и 28 начальной установки распределителя 10 и схемы 5 2S сравнения, соответствующими входами регистра 2 адреса и регистра 3 микрокоманд и подключен к входу ll начальной установки устройства.

Первый 20, второй 21, третий 22, зф четвертый 23, выходы распределителя

10 подключены, соответственно, к второму входу элемента 8 И, входу занесения регистра 3 микрокоманд,. входу

26 занесения схемы 5 сравнения и входу занесения регистра/2 адреса.

Блок 4 управления переходами (фиг. 2) содержит дешифратор 29., группу элементов 30 И, число которых в группе равно количеству анализируемых логических условий (и) плюс один элемент 31 ИЛИ и элемент 32 НЕ.

Первый вход первого элемента 30 И соединен с входом 15 блока 4 управле43 ния переходами, а первые входы оставшихся (n) элементов 30 И соединены с соответствующими входами 12 логических условий. Другие входы всех (и+1) элементов 30 И соединены с соответствующими выходами дешифратора 29. Кро50 ме того, первый выход дешифратора 29 через элемент 32 НЕ соединен с управляющим выходом 16 блока 4. Выходы всех элементов 30 И соединены с входами элемента 31 ИЛИ, выход которого подключен к информационному выходу 18 блока 4, Информационные входы дешиф-. ратора соединены с входом 17 блока 4.

Схема 5 сравнения (фиг. 3) содержит схему 33 совпадения с информационными входами, подключенными к входам 24 и 25 схемы 5 сравнения, элемент 34 И и триггер 35.

Входы элемента 34 И соединены с входами 27 занесения, 6 начальной установки и с выходом схемы 33 совпадения. Выход элемента 34 И соединен с установочным входом триггера 35, вход сброса которого соединен с входом 28 схемы 5 сравнения. Выход триггера 35 подключен к выходу. 13 устройства. Cxe"" ма 33 совпадения может быть построена на элементах И.

Распределитель 10 (фиг. 4) содержит генератор 36 тактовых импульсов, двоичный счетчик 37 и дешифратор 38.

Выход генератора 36 подключен к счетному входу счетчика 37 и к стробирующему инверсному входу дешифратора 38.

Выход счетчика 37 подключен к информационному входу дешифратора 38,,с выхода которого снимаются синхросерии, поступающие на выходы 20, 21, 22 и 23 распределителя 10 синхронизации. Вход сброса счетчика 37 соединен с входом

19 °

На фиг. 5 символами А; обозначены микрокоманды, в которых производятся условные переходы. Символом И помечена микрокоманда, в которой не производится условный переход.

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

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

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

Рассмотрим работу устройства на конкретном примере выполнения алгоритма .микропрограммы (фиг. 5).

Сигнал начальной установки, поступающий на вход 11 устройства устанавливает в ноль регистры 2 адреса и 3 микрокоманд, счетчик 37 в распредели- 14 теле 10 и триггер 35 в схеме 5 сравнения. Кроме того, по сигналу начальной установки через элемент 9 ИЛИ производится занесение контрольного адреса в регистр 7 контроля, необходи- 15 мого для контроля правильности прохождения,микропрограммы при осуществле" нии перехода А,1..

Рассмотрим более детально этот момент. 20

В начале выработки сигнала начальной установки регистр 3 микрокоманд устанавливается в ноль. При этом код номера проверяемого условия, поступающего с третьего выхода регистра 3 25 микрокоманд на вход 17 блока 4 управления переходами, равен нулю. Тогда разрешающий единичный потенциал вырабатывается только на первом выходе дешифратора 29 в блоке 4 управления щ переходами и таким образом подключает на информационный выход 18 последнего через первый элемент 30 И и элемент

31 ИЛИ си -нал с входа 15, на который поступает младший разряд адресной части микрокоманды с второго выхода регистра 3 микрокоманд. Вследствие этого на адресные входы блока 6 ассоциативной памяти поступает нольный адрес, равный нулю, по которому выбирается контрольный адрес для первого перехода в микропрограмме и поступает на информационный вход регистра контроля. Сигнал начальной установки имеет гораздо большую длительность, 4 чем,время выборки из памяти. Это обусловлено тем, что обычно этот сигнал вырабатывается от нажатия соответствующей клавиши, а кроме того, егодлительность не связана с временными со.36 отношениями при работе устроиства.

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

По окончании сигнала начальной установки распределитель 10 начинает вырабатывать на своих выходах 20-23 четыре сдвинутых относительно друг друга синхросерии. Синхроимпульс с выхода 20 распределителя 10 поступает на вход элемента 8 И, однако занесения в регистр 7 контроля не происходит, так как элемент 8 И заблокирован по другому входу запрещающим нулевым потенциалом с управляющего выхода 16 блока 4 управления переходами. Это обусловлено тем, что на входе элемента 32 НЕ в блоке 4 управления переходами присутствует разрешающий единичный потенциал с первого выхода дешифратора 29. По синхроимпульсу с выхода 2 1 распределителя 10 происходит занесение из блока 1 памяти микрокоманд в регистр 3 микрокоманд первой микрокоманды, выбранной по нулевому адресу в регистре 2 адреса. В рассматриваемом случае это микрокоманда А . Так как в этой микрокоманде присутствует условный переход, то с третьего выхода регистра 3 микрокоманд на вход 17 блока 4 управления переходами поступает ненулевой номер условия, по которому должен осуществиться этот переход, вследствие этого разрешающий сигнал вырабатывается на одном из выходов дешифратора 29, кроме первого в блоке 4 управления переходами и на информационный выход 18 последнего поступает сигнал соответствующего условия. Тогда адрес следующей микрокоманды в регистре 2 адреса и адрес

° контрольного слова в блоке 6 ассоциативной памяти модифицируется в зависимости от значения (О или 1) условия, поступающего с информационного выхода 18 блока 4 управления переходами на вход младшего разряда адреса регистра 3 и блока 6, определяя тем самым один из двух адресов продолжения микропрограммы. Так как на первом выходе дешифратора 29 в блоке 4 управления переходами присутствует запрещающий потенциал, то на управляющем выходе 16 блока 4 вырабатывается разрешающий потенциал и поступает на разрешающий вход 27 схемы 5 сравнения, на информационных входах которого уже присутствуют сравниваемые текущий и контрольный адреса. Если адреса совпадают, то схема 33 совпадения выдает на вход элемента, 34 И запрещающий потенциал, если не совпадают - наоборот.

Поэтому при поступлении импульса с выхода 22 распределителя 10 на вход 26 занесения схемы 5 и неравенстве про9 . 966694 10 веряемых адресов с выхода элемента 34 да 21 распределителя 10 микрокоманда

И вырабатывается сигнал установки триг- А заносится в регистр 3 микрокоманд гера 35 и на выход 13 устройства пос- . и дальнейшая работа устройства аналотупает .сигнал ошибки. Если адреса рав- гична работе устройства при выполнены - сигнал не вырабатывается. нии микрокоманды А

По синхроимпульсу с. выхода 23 рас- Если во втором цикле по импульсу пределителя 10 в регистр 2 адреса эа- с выхода 21 распределителя 10 в реносится адрес следующей микрокоманды. гистр 3 микрокоманды заносится микроВ зависимости от значения условия с команда А, то так как микрокоманда информационного выхода 18 блока 4 это 0 А, так же как и микрокоманда А яв.микрокоманда М или микрокоманда А . ляется микрокомандой условного переИз блока 6 по адресной части микроко- хода, код номера условия в ней ненуманды с четвертого выхода регистра 3 левой. Вследствие этого сигнал на упмикрокоманд и значению логического ус- равляющем выходе 16 блока 4 остается ловия выбирается контрольный адрес для 15 в разрешенном состоянии, а на информаперехода А или для перехода А . На ционный выход 18 блока 4 поступает этом заканчивается цикл выполнения значение логического условия в соотпервой .микрокоманды. ветствии с номером, приходящим на вход

В следующем цикле по импульсу с вы- 17 блока 4 управления переходами. В хода 20 распределителя 10 происходит 20 дальнейшем работа аналогична работе занесение контрольного адреса в ре- при выполнении микрокоманд А и А . гистр 7 контроля, так как элемент 8 Если в прототипе ложный переход между

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

Импульсом с выхода 21 распределите-25 из-за совпадения их контрольных кодов, ля 10 происходит занесение очередной то в предлагаемом устройстве такая микрокоманды в регистр 3 микрокоманд. ситуация полностью исключается иэ-за

Это микрокоманда М„ или А>. Так как того, что контроль в отличие от промикрокоманда М не является микроко- тотипа ведется не по отдельным участмандой условного перехода, то поле но- З0 кам микропрограммы, а в каждой точке мера условия в ней равно нулю. Вслед- перехода, кроме того, каждому перехоствие этого аналогично описанному на ду соответствует вполне определенная информационный выход 18 блока 4 пода- . микрокоманда, определяемая содержимым ется младший разряд адресной части регистра адреса и имеющая определенмикрокоманды с второго выхода регист- ное значение адресной части вследст"

1 ра 3, а на управляющем выходе 16 бло- вие чего из блока ассоциативной памяка управления переходами вырабатывает- ти выбирается .контрольный адрес имен.ся запрещающий потенциал. Импульс с но следующего перехода. Поэтому в слувыхода 22 распределителя l0 не вызы- чае ложного перехода адрес микрокоманвает никаких действий в схеме 5 срав- 40 ды, при которой осуществляется следуюнения, так как на его входе 27 присут- щий переход, всегда будет отличаться ствует запрещающий потенциал. Так как от контрольного. при выполнении микрокоманды М на вы" КРоме того, в устройстве использоходе 18 блока 4 присутствует младший ван контроль, совершенно не зависящий разряд адресной части микрокоманды, от конфигураций алгоритмов микропрог45 то по импульсу с выхода 23 распреде" Рамм, в отличие от прототипа, где при лителя 10 в регистр 2 заносится адрес, контроле участков со сходящимися или однозначно определяющий микрокоманду параллельными ветвями микропрограмм.

А2. невозможно определить код контрольной

50 микрокоманды, вследствие чего прихоВ следующем третьем цикле по им- дится дополнительно вводить контрольпульсу с выхода 20 распределителя 10 .ные микрокоманды в каждую ветвь, что занесения в регистр 7 контроля не про- приводит к значительному снижению бысисходит, так как элемент 8 И закрыт тродействия. запрещающим потенциалом с выхода 16 блока 4. Этим предохраняется искаже- 55 В предлагаемом устройстве сбой в тение контрольного адреса в регистре 7, кущем переходе обнаруживается уже в сформированного при выполнении микро- следующем переходе, в отличие от протокоманды А,1. Далее по импульсу с выхо" типа, где сбой обнаруживается только

11 9666 в конце участка, который может иметь большое количество переходов. В результате этого в предлагаемом устройстве в несколько раз сокращается время выявление сбоя, а следовательно,при этом уменьшается и величина непроизводительно теряемого времени выполнения микропрограмм ".Кроме того, исключение из микропрограммы контрольных микрокоманд повы- )O шает быстродействие устройства.

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

И

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

94 12 импульсов, элемент И и элемент ИЛИ, причем вход считывания блока ассоциа- тивной памяти соединен с информационным выходом блока управления переходами, адресный вход блока ассоциативной памяти соединен с первым выходом регистра микрокоманд, информационный выход блока ассоциативной памяти соединен с информационным входом регистра контроля, вход занесения которого соединен с выходом элемента ИЛИ, первый вход которого соединен с выходом элемента И, второй вход элемента ИЛИ соединен с входом начальной установки устройства, выход регистра контроля соединен с первым входом схемы cpasнения, второй вход которой соединен с выходом регистра адреса, третий вход схемы сравнения соединен с выходом разрешения блока управления переходами и с первым входом элемента И, второй вход которого соединен с первым выходом распределителя импульсов, вто-рой, третий и четвертый выходы которого соединены с входами занесения соответственно регистра микрокоманд, схемы сравнения и регистра адреса, установочный вход схемы сравнения и установочные входы регистра. микрокоманд, регистра адреса и распределителя импульсов соединены с входом начальной установки устройства.

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

Пужинцев Н. Д..Аппаратный конт- ° роль управляющих цифровых вычислительных машин. И., "Советское радио", 1966, с. 364.

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

M 711573, кл. G 06 F 9/22, G 06 F 11/00, 1977 (йрототип).

966694

ФигЗ

Л

Г2

Фиг.Я

Редактор Л. Авраменко

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

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

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

18

Составитель М. Кудряшов

Техред Т. Иаточка Корректор С. Шекмар

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