Микропрограммное устройство управления с контролем переходов Советский патент 1982 года по МПК G06F9/54 G06F9/26 

Описание патента на изобретение SU966694A1

(5) МИКРОПРОГРАММНОЕ УСТРОЙСТВО УПРАВЛЕНИЯ С КОНТРОЛЕМ П€РЕХОДОВ

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

название год авторы номер документа
Микропрограммное устройство управления с контролем переходов 1982
  • Полонский Дмитрий Васильевич
  • Пушкарев Юрий Яковлевич
SU1109749A2
Микропрограммное устройство управления с контролем переходов 1981
  • Пушкарев Юрий Яковлевич
  • Полонский Дмитрий Васильевич
  • Степанцов Юрий Григорьевич
SU1018118A1
Микропрограммное управляющее устройство 1981
  • Пушкарев Юрий Яковлевич
  • Полонский Дмитрий Васильевич
SU1005051A1
Устройство для фиксации трассы выполнения программы 1983
  • Корбашов Юрий Михайлович
  • Семин Константин Васильевич
SU1136170A1
Микропроцессор 1982
  • Пушкарев Юрий Яковлевич
  • Полонский Дмитрий Васильевич
SU1037263A1
Микропрограммный процессор 1982
  • Полонский Дмитрий Васильевич
  • Пушкарев Юрий Яковлевич
SU1037264A1
Микропроцессор 1982
  • Макаренко Олег Юрьевич
  • Полонский Дмитрий Васильевич
  • Степанцов Юрий Григорьевич
  • Пушкарев Юрий Яковлевич
SU1035610A1
Микропрограммное устройство управ-лЕНия 1978
  • Черепанов Виктор Александрович
  • Ожиганов Юрий Михайлович
  • Спирков Александр Васильевич
SU807290A1
Микропроцессор 1982
  • Пушкарев Юрий Яковлевич
  • Полонский Дмитрий Васильевич
SU1045231A1
Микропрограммное устройство управления с контролем 1985
  • Пушкарев Юрий Яковлевич
  • Полонский Дмитрий Васильевич
SU1254481A1

Иллюстрации к изобретению SU 966 694 A1

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

Формула изобретения SU 966 694 A1

;..: . .- , . - ..

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

Известно устройство, содержащее запоминающее устройство программы, счет: чйк адреса команд, регистр команд, ;устройство модификаций адреса схемы срёвненйя, схемы сверток по nrad 3

В известном устройстве контроль хода программы осуи|ествляёТся поэтапно: вначале контролируется формирование адреса команды; зачтем П|: оизводится контроль правильности обращения по ад-.

ресу. :. . ;, :. CJ-. ::: ::. ,

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

необходимы дополнительные схемь формирования контрольных кодов.

Кроме того, недостатком данного устройства является невысокая способность обнаружения ошибок, нарушсиощих нормальный, ход выполнения программы. Наиболее близким к предлагаемому изобретению является микропрограммное устройство с контролем переходов, содержащее блок, памяти микрокоманд, регистр адреса, регистр Микрокоманд, блок сравнения, блок управления переходами и сдвигающий регистр 2. , Оснобным недостатком устройства является невозможность контроля ложных переходов между участками с одинаковой конфигурацией и, в результате, .:-полным совпадением контрольных кодов, а также затрудненный контроль участ20,ков т имеющих сходящиеся или параллельные ветви микропрограммы с различной конфигурацией, на что требуется допол„нительное количество контрольных мик396рокоманд, приводящее к существенному снижению быстродействия. Цель изобретения - расширение функциональных возможностей устройства путем повышения достоверности контроля переходов, сокращения времени обнаружения сбоев и повышения быстродействия за счет неиспользования контрольных микрокоманд. Поставленная цель достигается тем, ЧТО в микропрограммное устройство управ ления с контролем переходов, содержащее блок памяти микрокоманд, регистр адреса, регистр микрокоманд, схему сравнения и блок управления переходами, причем информационный выход блока управления переходами соединен с первым информационным входом регистра адреса, выход которого соединен с адрес ным входом блока памяти микрокоманд, информационный.выход блока памяти микрокоманд соединен с информационным входом регистра микрокоманд, первый выход которого соединен с вторым информационным входом регистра адреса, выход схемы сравнения является сигIнальным выходом устройства ,введены ;блок ассоциативной памяти, регистр контроля, распределитель импульсов, элемент И и элемент ИЛИ, причем вход считывания блока ассоциативной памяти подключен к информационному выходу блока управления переходами, адресный вход блока ассоциативной памяти соеди нен с первым выходом регистра микрокоманд, информационный выход блока ассоциативной памяти соединен с информационным входом регистра контроля, вход занесения которого соединен с выходом элемента ИЛИ, первый вход которого подключен к выходу элемента И, второй вход элемента ИЛИ соединен с входом начальной установки устройства выход регистра контроля подключен к первому входу схемы сравнения, второй вход которого соединен с выходом регистра адреса, третий вход схемы срав нения соединен с выходом разрешения блока управления переходами и первым входом элемента И, второй вход которого соединен с первым выходом распре

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

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

С третьего выхода регистра 3 микрокоманд на вход 17 блока Ц управления с входом начальной установки устройства. Достоверность контроля повышается за счет того, что принцип контроля в предлагаемом устройстве исключает ситуации, когда ложный переход может быть не обнаружен. Кроме того, сокращение времени обнаружения сбоев связано с более частой проверкой правильности следования микропрограммы и повышение быстродействия достигается за счет исключения из микропрограммы контрольных микрокоманд. На фиг. 1 изображена схема устройства,- на фиг. 2 - схема блока управления переходами; на фиг. 3 схема сравнения; на фиг. 4 - схема распределителя; на фиг. 5 - пример алгоритма микропрограммы, выполняемой устройством. Микропрограммное устройство управления с контролем переходов содержит блок 1 памяти микрокоманд, регистр 2 адреса, регистр 3 микрокоманд, блок 4 управления переходами, схему 5 сравнения, блок 6 ассоциативной памяти, регистр 7 контроля, элементы 8 И, 9 ИЛИ, распределитель импульсов. Выход блока 1 памяти микрокоманд . подключен к входу регистра 3 микрокоманд. С первого выхода регистра 3 микрокоманд на выход 14 устройства передается операционная часть микрокоманды, в ко.торой кодируются микроприказы, осуществляющие воздействие на управляемую микропрограммным устройством систему. Адресная часть микрокоманды без младшего разряда с четвертого выхода регистра 3 микрокоманд поступает на адресные входы регистра 2 адреса и блока 6 ассоциативной памяти. Младший разряд адресной части микрокоманды с второго выхода регистра 3 микрокоманд поступает на вход 15 блока Ц управления переходами. С выхода 18 блока управления переходами, соединенным с первыми адресными входами регистра 2 адреса и блока 6 ассоциативной памяти, задается младший разряд адреса. 5Эбб переходами задается номер одного из проверяемых условий, значения которых поступают из управляемых микропрограммным устройством операционных схем на вход блока управления переходами с 5 входа 12 устройства. Управляющий выход 1б блока i управления переходами подключен к входу элемента 8 И и разрешающему входу 27 схемы 5 сравнения. Выход блока 6 ассоци- 0 ативной памяти соединен с информационным входом регистра 7 контроля, выходом соединенным с информационным входом 2k схемы 5 сравнения. Выход регистра 2 адреса подключен к входу блока 1 памяти микрокоманд и другому информационному входу 25 схемы 5 сравнения, с выхода которого на выход 13 устройства поступает сигнал ошибки. Вход занесения регистра 7 контроля соединен с выходом элемента 9 ИЛИ, один вход которого подключен к выходу элемента 8 И, а другой соединен одновременно с входами 19 и 28 начальной установки распределителя 10 и схемы 5 сравнения, соответствующими входами регистра 2 адреса и регистра 3 микрокоманд и подключен к входу 11 начальной установки устройства. Первый 20, второй 21, третий 22, четвертый 23, выходы распределителя 10 подключены, соответственно, к второму входу элемента 8 И, входу занесения регистра 3 микрокоманд, входу 26 занесения схемы 5 сравнения и входу занесения регистраУ2 адреса. Блок Ц управления переходами . (фиг. 2) содержит дешифратор 29, группу элементов 30 И, число которых в группе равно количеству анализируемых логических условий (п) плюс.один элемент 31 ИЛИ и элемент 32 НЕ. Первый вход первого элемента 30 И соединен с входом 15 блока k управления переходами, а первые входы оставшихся (п) элементов 30 И соединены с соответствующими входами 12 логических условий. Другие входы всех (п+1) элементов 30 И соединены с соответствующими выходами дешифратора 29. Кроме того, первый выход дешифратора 29 через элемент 32 НЕ соединен с управляющим выходом 16 блока t. Выходы всех элементов30 И соединены с входами элемента 31 ИЛИ, выход которого подключен к информационному выходу 18 блока t. Информационные .входы дешифратора соединены с входом 17 блока Ц. Схема 5 сравнения (фиг. 3) содержит схему 33 совпадения с информационными входами, подключенными к входам 24 и 25 схемы 5 сравнения, элемент 3 И и триггер 35. Входы элемента 3 И соединены с входами 27 занесения, 6 начальной установки и с выходом схемы 33 совпадения. Выход элемента 3 И соединен с установочным входом триггера 35 вход сброса которого соединен с входом 28 схемы 5 сравнения. триггера 35 подключен к выходу 13 устройства. Схема 33 совпадения может быть построена на элементах И. Распределитель 10 (фиг. А) содержит генератор Зб тактовых импульсов, двоичный счетчик 37 и дешифратор 38. Выход генератора 36 подключен к счетному входу счетчика 37 и к стробирующему инверсному входу дешифратора 38. Выход счетчика 37 подключен к информационному входу дешифратора 38, ,с выхода которого снимаются синхросерии, поступающие на выходы 20, 21, 22 и 23 распределителя 10 синхронизации. Вход сброса счетчика 37 соединен с входом 19. На фиг. 5 символами А; Обозначены микрокоманды, в которых производятся условные переходы. Символом М помечена микрокоманда, в которой не производится условный переход. Устройство работает следующим образомПринцип работы устройства построен на том, что при выполнении микропрограммы в точках осуществления условных переходов производится сравнение текущего адреса, содержащегося в ре гистре 2 адреса, с контрольным, хранящимся в регистре 7 контроля. Выбор контрольного адреса из блока 6 ассоциативной памяти и занесение его в регистр 7 контроля для текущего перехода осуществляются при выполнении предыдущего перехода. Одновременно с проведением контроля на текущем пере; оде из блока 6 ассоциативной памяти выбирается и заносится в регистр 7 контрольный адрес для использования его в следующем переходе и т. д. Исключение составляет только первый условный переход в микропрограмме, так как он не имеет предыдущего. Для него контрольный адрес подготавливается по сигналу начальной установки. Сравнение текущего адреса с контрольным осуществляется в схеме 5 сравнения, который в случае не совпадения указанных адресов вырабатывает сигнал ошибки.

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

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

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

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

По окончании сигнала начальной установки распределитель 10 начинает

вырабатывать на своих выходах 20-23 четыре сдвинутых, относительно друг друга синхросерии. Синхроимпульс с выхода 20 распределителя 10 поступает на вход элемента 8 И, однако занесения в регистр 7 контроля не происходит, так как элемент 8 И заблокирован по другому входу запрещающим нулевым потенциалом с управляющего выхода 16 блока 4 управления переходами. Это обусловлено тем, что на входе элемента 32 НЕ в блоке управления переходами присутствует разрешающий единичный потенциал с первого выхода дешифратора 29. По синхроимпульсу с выхода 21 распределителя 10 происходит занесение из блока 1 памяти микрокоманд в регистр 3 микрокоманд первой микрокоманды, выбранной по нулевому адресу в регистре 2 адреса. В рассматриваемом случае это микрокоманда А, . Так как в этой микрокоманде присутствует условный переход, то с третьего выхода регистра 3 микрокоманд на вход 17 блока управления переходами поступает ненулевой, номер условия, по которому должен осуществиться этот переход, вследствие этого разрешающий сигнал вырабатывается на одном из выходов дешифратора 29 кроме первого в блоке управления переходами и на информационный выход 18 последнего поступает сигнал соответствующего условия. Тогда адрес следующей микроКоманды в регистре 2 адреса и адрес контрольного слова в блоке 6 ассоциативной памяти модифицируется в зависимости от значения (О или 1) условия, поступающего с информационного выхода 18 блока i управления переходами на вход младшего разряда адреса регистра 3 и блока 6, определяя тем самым один из двух адресов продолжения микропрограммы. Так как на первом выходе дешифратора 29 в блоке k управления переходами присутствует запрещающий потенциал, то на управляющем выходе 16 блока k вырабатывается разрешающий потенциал и поступает на разрешающий вход 27 схемы 5 сравнения, на информационных входах которого уже присутствуют сравниваемые текущий и контрольный адреса. Если адреса совпадают, то схема 33 совпадения выдает на вход элемента. 3 И запрещающий потенциал, если не совпадают - наоборот. Поэтому при поступлении импульса с выхода 22 распределителя 10 на вход 26 занесения схемы 5 и нера.венстве проверяемых адресов с выхода элемента 3 И вырабатывается сигнал установки триггера 35 и на выход 13 устройства пес- тупает .сигнал ошибки. Если адреса равны - сигнал не вырабатывается. 5

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

В следующем цикле по импульсу с выхода 20 распределителя 10 происходит 20 занесение контрольного адреса в регистр 7 контроля, так как элемент 8 И открыт разрешающим потенциалом с управляющего выхода 16 блока 4.

Импульсом с выхода 21 распределите-25 ля 10 происходит занесение очередной микрокоманды в регистр 3 микрокоманд. Это микрокоманда М. или А. Так как микрокоманда М не является микрокомандой условного перехода, то поле но-jo мера условия в ней равно нулю. Вследствие этого аналогично описанному на информационный выход 18 блока 4 подается младший разряд адресной части микрокоманды с второго выхода регист- , ра 3 а на управляющем выходе 16 блока управления переходами вырабатывает ся запрещающий потенциал. Импульс с выхода 22 распределителя 10 не вызывает никаких действий в схеме 5 сравнения, так как на его входе 27 присутствует запрещающий потенциал. Так как ри выполнении микрокоманды М на выходе 18 блока присутствует младший разряд адресной части микрокоманды, то по импульсу с выхода 23 распредеителя 10 в регистр 2 заносится адрес, однозначно определяющиймикрокоманду ...

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

Если во втором цикле по импульсу с выхода 21 распределителя 10 в регистр 3 микрокоманды заносится микрокоманда А-З, то так как микрокоманда А, так же как и микрокоманда А является микрокомандой условного перехода, код номера условия в ней ненулевой. Вследствие этого сигнал на управляющем выходе 16 блока k остается в разрешенном состоянии, а на информационный выход 18 блока 4 поступает значение логического условия в соответствии с номером, приходящим на вхо 17 блока Ц управления переходами. В дальнейшем работа аналогична работе при выполнении микрокоманд А и А Если в прототипе ложный переход между участками микропрограммы с одинаковой конфигурацией остается невыявленным из-за совпадения их контрольных кодов то в предлагаемом устройстве такая ситуация полностью исключается из-за того, что контроль в отличие от прототипа ведется не по отдельным участ:кам микропрограммы, а в каждой точке перехода; кроме того, каждому переходу, соответствует вполне определенная микрокоманда, определяемая содержимым регистра адреса и имеющая определенное значение адресной части, вследствие чего из блока ассоциативной памяти выбирается .контрольный адрес именно следующего перехода. Поэтому в случае ложного перехода адрес микрокоманды, при которойосуществляется следующий переход, всегда будет отличаться от контрольного.

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

В предлагаемомустройстве сбой в текущем переходе обнаруживается уже в следующем переходе, в отличие от прототипа, где сбой обнаруживается только 11 в конце участка, который может иметь большое количество переходов. В результате этого в предлагаемом устройстве в несколько раз сокращается время выявления сбоя, а следовательно,при этом уменьшается и величина непроизводительно теряемого времени выполнения микропрограмм Кроме того, исключение из микропро граммы контрольных микрокоманд повышает быстродействие устройства. Формула изобретения - о Микропрограммное устройство управления с контролем переходов, содержащее блок памяти микрокоманд, регистр адреса, регистр микрокоманд, схему сравнения и блок управления переходами, причем инфэрмационный выход блока управления переходами соединен с первым информационным входом регистра адреса , выход которого соединен с адрес ным входом блока памяти микрокоманд, информационный выход блока памяти микрокоманд соединен с информационным входом регистра микрокоманд, первый выход которого соединен с вторым информационным входом регистра адреса, выход схемы сравнения является сигнальным выходом устройства, о т л и ч а ю щ е ее я тем, что, с целью расширения функциональных возможностей устройства -Путем повышения достоверности контроля переходов, сокращения времени обнаружения сбоев и повышения быстродействия за счет неиспользования контрольных микрокоманд, в устрой ство введены блок ассоциативной памяти , регистр контроля, распределитель gi импульсов,, элемент; И и элемент ИЛИ, причем вход считывания блока ассоциативной памяти соединен с информационным выходом блока управления переходами, адресный вход блока ассоциативной памяти соединен с первым выходом , регистра микрокоманд, информационный выход блока ассоциативной памяти соединен с информационным входом регистра контроля, вход занесения которого соединен с выходом элемента ИЛИ, первый вход которого соединен с выходом элемента И, второй вход элемента ИЛИ соединен с входом начальной установки устройства, выход регистра контроля соединен с первым входом схемы сравнения, второй вход которой соединен с выходом регистра адреса, третий вход схемы сравнения соединен с выходом разрешения блока управления переходами и с первым входом элемента И, второй вход которого соединен с первым выходом распределителя импульсов, второй, третий и четверть1Й выходы которого соединены с входами занесения соответственно регистра микрокоманд, схемы сравнения и регистра адреса, установочный вход схемы сравнения и установочные входы регистра микрокоманд, регистра адреса и распределителя импульсов соединены с входом начальной установки устройства. Источники информации, принятые во внимание при экспертизе 1.Пужинцев Н. Д. .Аппаратный конт- роль управляющих цифровых вычислительных машин. М,, Советское радио, 1966 . с. 36А. . 2.Авторское свидетельство СССР N° 711573, кл. G Об F 9/22, G Об F 11/00, 1977 (прототип).

SU 966 694 A1

Авторы

Пушкарев Юрий Яковлевич

Полонский Дмитрий Васильевич

Степанцов Юрий Григорьевич

Даты

1982-10-15Публикация

1980-06-16Подача