Микропрограммное устройство управления с самоконтролем
Иллюстрации
Показать всеРеферат
Изобретение относится, к. вычислительной технике и может быть использовано для обнаружения ошибок при тестовом контроле микропрограммы. Целью изобретения является повышение достоверности функционирования за счет увеличения полноты тестовой проверки . Устройство содержит блок памяти микрокоманд, регистр микрокоманд, блок управления переходами, блок сравнения , распределитель импульсов, элементы И, ИЛИ, НЕ, сигнатурный анализатор , мультиплексор и триггер. Новыми являются элементы И, ИЛИ, НЕ, сигнатурный анализатор, мультиплексор и триггер. В предложенном устройстве рабочая микропрограмма преобразуется к тестопригодному виду путем введения дополнительных микрокоманд-инструкций , обеспечивающих проверку всех микрокоманд микропрограммы в определенной последовательности. Тестовая микропрограмма размещается в блоке памяти микрокоманд. Режим тестирования задается присутствием единичного сигнаг.а на выходе режима контроля устройства . Текущий адрес микрокоманды заносится д. сигнатурный анализатор, где производится его свертка в сигнатуру . Сравнение накопленной сигнатуры с эталонной происходит в схеме сравнения в конце контроля микропрограммы. Счетный триггер управляет порядком проверки .переходов по условию. В тестовой микропрограмме каждая микрокоманда имеет три дополнительньК 1разряда, которые управляют .работой устройства в тестовом режиме. 3 ил. (Л ijS ю со з
СОЮЗ СОВЕТСНИХ
СООИАЛИСТИЧЕСНИХ
РЕСПУБЛИН (51)4 С 06 Р 9/22 11/00 — (». ° »» .
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
Н А ВТОРСКОМУ СВИДЕТЕЛЬСТВУ
ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССР
ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ (21) 4215605/24-24 (22) 27.03.87 (46) 30.09.88. Бкп. 1Ф 36 (71) Ленинградский электротехнический институт им. В.И.Ульянова(Ленина)
-(72) В.Н.Балакин, В.В.Барашенков, А.С.Календарев и Н.Н.Карпова (53) 681.325(088.8) (56) Авторское свидетельство СССР
У 711573, кл. G 06 F 9/22, С 06 F 11/00, 1977.
Авторское свидетельство СССР
У 966694, кл. G 06 F 9/22, G 06 F, 9/46, 1982.
Булгаков С.С., Мещереков В.М., Новоселов В.В. и др. Проектирование цифровых систем на,комплектах микропрограммируемых БИС. М.: Радио и связь, 1984, с. 240. (54) МИКРОПРОГРАММНОЕ УСТРОЙСТВО УПРАВЛЕНИЯ С САМОКОНТРОЛЕМ (57) Изобретение относится.к.вычислительной технике и может быть использовано для обнаружения ошибок при тестовом контроле микропрограммы. Целью изобретения является повышение достоверности функционирования sa счет увеличения полноты тестовой проверки. Устройство содержит блок памя„„SU„„1427367 А1 ти микрокоманд, регистр микрокоманд, блок управления переходами, блок сравнения, распределитель импульсов, эле" менты И, ИЛИ, НЕ, сигнатурный анализатор, мультиплексор и триггер. Новыми являются элементы И, ИЛИ, НЕ, сигнатурный анализатор, мультиплексор и триггер. В предложенном устройстве рабочая микропрограмма преобразуется к тестопригодному виду путем введения дополнительных микрокоманд-инструкций, обеспечивающих проверку всех микрокоманд микропрограммы в определенной последовательности. Тестовая микропрограмма размещается в блоке памяти микрокоманд. Режим тестирования Q задается присутствием единичного сиг- наг.а на выходе режима контроля устройства. Текущий адрес микрокоманды заносится в, сигнатурный анализатор, где производится его свертка в сигнатуру. Сравнение накопленной сигнатуры с эталонной происходит в схеме сравне-, ния в конце контроля микропрограммы. р
Счетный триггер управляет порядком р проверки переходов по условию. В тестовой микропрограмме каждая микрокоманда имеет три дополнительных разряда, которые управляют. работой уст- © ройства в тестовом режиме. 3 ил.
1427367
Изобретение относится к вычислительной технике и может быть использовано для обнаружения ошибок при тестовом контроле микропрограммы, в частности в устройствах с постоян5 ным микропрограммным обеспечением.
Цель изобретения — повышение достоверности функционирования за счет увеличения полноты тестовой проверки.
На фиг. 1 изображена схема устройства; на фиг. 2 - схема блока сравнения, на фиг. 3 - пример алгоритма микропрограммы, выполняемой устройством»
Микропрограммное устройство управления с самоконтролем (по фиг.1) содержит блок 1 памяти микрокоманд 1, регистр 2 микрокомайд, блок 3 управления переходами, мультиплексор 4, элемент И 5, элемент ИЛИ 6, счетный триггер 7, сигнатурный анализатор 8, схему 9 сравнения, распределитель 10 импульсов, элемент НЕ .11, кроме того, на фиг.. 1 обозначены: вход 12 кода операции устройства, вход 13 ло- гического условия устройства, вход
14 начальной установки устройства, выход 15 ошибки устройства, выход
16 микроопераций устройства, выход
17 контроля устройства, выход 18 триггера (он же вход элемента ИЛИ 6), вы.ход 19 блока управления переходами, второй информационный вход 20 блока сравнения, первый информационный вход
21 блока сравнения, управляющий. вход
22 блока сравнения.
Елок сравнения 9 (фиг. 2) содержит
N схем .23 сложения по модулю два, элемент ИЛИ 24, элемент И 25.
В качестве блока управления переходами 3 может быть использована двенадцатиразрядная схема управления последовательностью микрокоманд
К1804ВУ4 предназначенная для построения блоков микропрограммного управления цифровых устройств, имеющая прямой вход адреса, вход управления режимом (инструкций), вход сигнала условий и выход адреса.
В качестве сигнатурного анализатора 8 может быть использован параллельный регистр сдвига с обратили связями построенный на двуступенчатых триггерах типа D и схемах сложения по модулю два.
На фиг. 3 изображена блок-схема алгоритма микропрограммы, на которой символами А, обозначены микрокоманды, к которым не производится условных переходов, Р— микрокоманда условного перехода, В, В, В, В »вЂ” дополнительные тестовые микрокоманды, являющиеся инструкциями блока 3 1 управления переходами, Устр.ойство работает следующим образом.
Принцип работы устройства построен на том, что в блок памяти микрокоманд заносится тестовая микропрограмма, представляющая собой рабочую микропрограмму, преобразованную к тестопригодному виду путем введения дополнительных микрокоман-инструкций, обеспечивающих проверку всех микрокоманд микропрограммы в определенной последовательности. Счетный триггер
7 управляет строгим порядком проверки переходов по условию: сначала значение логического условия не выполняется, т.е. на второй вход сигнала условий блока 3 управления переходами подается "1", затем — выполняется, т.е. на второй вход сигнала условий блока 3 управления переходами подается "0". Тестовая микропрограмма размещена в блоке памяти микрокоманд.
Режим тестирования идентифицируется для объекта управления присутствием единичного сигнала на выходе 1 7 режима контроля устройства. Текущий адрес микрокоманды заносится в сигнатурный анализатор 8, где производится его свертка в сигнатуру. Сравнение накопленной сигнатуры с эталонной происходит в блоке 9 сравнения в конце контроля микропрограммы.
В регистре 2 микрокоманд имеются три дополнительных разряда: тестовый, разрешения, сравнения и контроля. В режиме тестирования разряд контроля всегда равен единице, поэтому с выхода регистра 2 микрокоманд на выход
17 устройства передается единичный сигнал, сообщаемый в управляемую микропрограммным устройством систему о проведении тестирования.
Распределитель 10 импульсов обеспечивает выдачу трех серий импульсов, подаваемых на входы занесения регистра 2 микрокоманд, блока 3 управления переходами, сигнатурного анализатора
8, обеспечивающих синхронизацию работы устройства, Сигнал начальной установки, поступающий на вход 14 устройства, уста1427367 з навливает в нулевое состояние регистр
2 микракоманд, счетный триггер 7 и сигнатурный анализатор 8, поступая на их установочные входы. Код инструкций, поступающий из поля инструкций регистра 2 MHKpoi;QMaHp на вход управления режимом блока 3 управления переходами, равен нулю, что соответствует инструкции перехода по нулевому адресу (микрокоманда Ар-в блок-схеме алгоритма микропрограммы, т.е. с выхода 19 блока 3 управления переходами снимается нулевой адрес, поступающий на вход сигнатурного анализатора .8 и обнуляющий его и поступающий на вход блока 1 памяти микрокоманд .1, с выхода которого считывается микрокоманда А,, хранящаяся по нулевому адресу и поступающая на вход регистра
2 микрокоманд.
Микрокоманда А является операторной, т.е. в ней не производится условного перехода. Для всех оператор- 25 ных вершин (в примере это мнкрокоманды Ао э А», А, А» А, А, А ) дополнительные тестовый и разрешения сравнения разряды равны нулю, поэтому они не влияют на организацию тестова- 3ц
ro просмотра микропрограммы. С выхода поля микроопераций регистра 2 микрокоманд считывается на выход 16 устройства микроприказ, который поступает в операционную часть и осуществляет на нее воздействие. С выхода поля инструкций регистра 2 микрокоманд считывается код инструкций микрокоманды А,по которому выбирается адрес следующей микрокоманды, посту- 4 пающей на выход 19, с которого поступает на вход сигнатурного анализатора 8, где сворачивается в сигнатуру, которая хранится в сигнатурном анализаторе 8, до поступления следующего адреса и организации новой сигнатуры, и поступает через входы 20 на схемы 23 сложения по модулю два и элемент ИЛИ 24, с выхода которого поступает на первый вход элемента И
25, на второй вход 22 которого поступает нулевой сигнал с выхода разряда разрешения сравнения регистра
2 микракоманд, запирающий элемент И
25, T ° e. на ssixog 15 устройства поступает "0". Адрес микрокоманды А с выхода 19 поступает в блок 1 памяти микрокоманд, с выхода которого считывается следующая микрокоманда, являющаяся инструкцией В поступающая на вход регистра 2 микрокоманд.
Поле адреса ветвления инструкции
В, содержит единичный код, тестовый разряд и разряд разрешения сравнения равны нулю. Инструкция В предназначена для запоминания в блоке 3 управления переходами адреса следующей микрокоманды, т.е. адреса Р,, и при нулевом сигнале на входе условия блока 3 управления переходами происходит его загрузка информацией, поступающей через первый вход с выхода мультиплексора 4. В режиме тестирования на управляющий вход мультиплексора 4 с выхода разряда контроля регистра 2 микрокоманд всегда поступает единичный сигнал, запрещающий прохождение адреса с внешнего входа 12 устройства и разрешающий прохождение адреса с выхода поля адреса регистра
2 микрокоманд. Нулевой сигнал с выхода тестового разряда регистра 2 микрокоманд поступает на вход счет- ного триггера 7, который находится в нулевом состоянии, поэтому с его выхода снимается нулевой сигнал, поступающий на вход 18 элемента ИЛИ 6, на второй вход которого в режиме тестирования всегда поступает ноль с выхода элемента И 5, на вход которого через элемент НЕ 11 поступает единичный сигнал с выхода разряда контрог.я регистра 2 микрокаманд, запрещающчй прохождение значений логических условий с входа 13 устройства. С выхода элемента ИЛИ 6 снимается нулевой сигнал, поступающий на вход условия блока 3 управления переходами, обеспечивающий загрузку единичного кода в в блок 3 управления переходами через
его адресный вход. Инструкция В4 организует переход к следующему по порядку адресу микрокоманды, т.е. адресу Р, считывающемуся е выхода 19 на вход сигнатурного анализатора 8 и на вход блока 1 памяти микрокоманд, с выхода которого в регистр 2 микрокоманд считывается микракоманца Р .
Микрокоманда Р является микрокомандой условного перехода, имеет тестовый разряд, равный единице, а разряд разрешения сравнения, равный ну- лю. Единичный сигнал с выхода тестового разряда регистра 2 микрокоманд поступает на вход счетного триггера
7, который находится в нулевом сосИнструкция Вз, имеющая тестовый разряд и разряд разрешения сравнения, равные нулю, содержит в поле адреса ветвления адрес эталонной сигнатуры. С выхода тестового разряда регистра 2 микрокоманд нулевой сигнал поступает на вход счетного триггера 7, который находится в нулевом состоянии, с выхода которого нулевой сигнал через вход 18 элемента
ИЛИ б поступает на вход условия блока 3 управления переходами, разрешающий поступление адреса эталона с второго выхода регистра 2 микрокоманд через мультиплексор 4 выбора адреса на адресный вход блока 3 управления переходами, с выхода 19 которого снимается адрес эталона, поступающий на вход блоха 1 памяти микрокоманд
1, с выхода которого считывается инструкция В4, поступающая в регистр
2 микрокоманд.
Адресная часть инструкции В содержит эталон, тестовый разряд равен нулю, а разряд разрешения сравнения равен единице. На блок 9 сравнения на входы 21 поступает эталон с выхода поля адреса регистра 2 микрокоманд на вход 20 блока сравнения поступают разряды сигнатуры, накопленной в сигнатурном анализаторе 8. Если ошибки нет, то с выхода схем 23 сложения по модулю два считываются нулевые сигналы, поступающие на входы элемента
ИЛИ 24, с выхода которого нулевой сигнал поступает на первый вход элемента И 25, на второй вход 22 которого поступает единичный сигнал с выхода разряда разрешения сравнения регистра 2 микрокоманд, ла выходе элемента И 25 появляется нулевой сигнал, поступающий на выход 15 устройства, что означает, что работа устройства безошибочна, В.случае ошибки, т.е. несовпадения эталона с накопленной сигнатурой, с какого-либо выхода схем 23 сложения по модулю два снимается единичный сигнал, поступающий на входы элемента ИЛИ 24, с выхода которого единичный сигнал поступа-. ет на первый вход элемента И 25, с выхода которого снимается единичный сигнал, поступающий на вход 14 устройства, означающий, что устройство неисправно.
Таким образом, предлагаемое устройство позволяет повысить полноту
1427367 тоянии, с выхода счетного триггера У .единичный сигнал через вход 18 элемента ИЛИ б поступает на вход условия блока 3 управления переходами, 5 что означает невыполнение условия, т.е. блоком 3 управления переходами выбирается адрес следующей микрокоманды, находящейся по нулевой ветви логической микрокоманды Р . Этим адресом является адрес микрокоманды А .
Процедура выборки адресов и записи в сигнатурный анализатор 8 микрокоманд А и А4 такая же, как и для микрокоманды АА . 15
Следующая за микрокомандой А4 мик рокоманда, содержащая инструкцию В, поступает в регистр 2 микрокоманд.
Инструкция В, имеющая нулевые разряды тестовый и разрешения .сравнения, анализирует состояние блока 3 управления переходами, в который при выполнении инструкции В занесена единица, и так как состояние не равно нулю, выполняется переход к адресу 25 микрокоманды Р, который хранился в блоке 3 управления переходами, состояние блока 3 управления переходами уменьшается на единицу, т.е. становится равным нулю. В регистр 2 мик- . Дб рокоманд из блока 1 памяти микрокоманд 1 считывается микрокоманда Р4, у которой тестовый разряд равен еди-, нице который с выхода регистра 2 микрокоманд поступает на вход счетного триггера 7, который находится в единичном состоянии и с выхода которого нулевой сигнал через вход 18 элемента ИЛИ б поступает на второй вход сигнала условия блока 3 управ- 40 ления переходами, что означает выполнение условия, т..е. блоком 3 управления переходами выбирается адрес следующей микрокоманды, находящейся по единичной ветви логической микро- 45 команды Р . Этим адресом является адрес микрокоманды А . Повторяется формирование адресов микрокоманды А4 и микрокоманды, содержащей инструкцию В . Инструкция В опять анали- БО зирует состояние блока 3 управления переходами, и так как теперь оно равно нулю (после первого выполнения инструкции В ), то блок 3 управления перехораМН выполнит переход K следу ющей по порядку микрокоманде Ау, которая после выполнения передаст управление микрокоманде, содержащей инструкцию В z.
1427367 тестового контроля микропрограммы за. счет введения в микропрограмму дополнительных безусловных переходов, что позволяет просматривать в тестовом
9 режиме все микрокоманды микропрограмMbI °
Дополнительным эффектом, достигаемом при применении устройства, является повышение достоверности за счет возможности контроля всех микрокоманд, независимо от того, являются ли они условными или операторными.
Кроме того, отсутствие в предлагае- r мом устройстве контроля после каждой микрокоманды приводит к минимальным затратам памяти микрокоманд, где хранятся эталоны.
Формула изoбpетения
Микропрограммное устройство управления с самоконтролем, содержащее . блок памяти микрокоманд, регистр микрокоманд, блок управления переходами, 2б блок сравнения, распределитель импульсов, причем вход начальной установки устройства соединен с входами установки в "0" распределителя импульсов-и регистра микрокоманд, первый щ выход распределителя импульсов соединен с входом синхронизации регистра микрокоманд, выход поля инструкций которого соединен с входом управления режимом блока управления переходами, выход которого соединен с адресныМ входом блока памяти микрокоманд, выход которого соединен с информационным входом регистра микрокоманд, выход поля адреса которого 40 соединен с первым информационным входом блока сравнения, второй выход распределителя импульсов соединен с входом синхронизации и блока управления переходами, выход "Равно" блока сравнения является выходом ошибки устройства, выход поля пжкроопераций регистра микрокоманд является выходом микроопераций устройства, о т л и ч а ю щ е е с я тем, что, с целью повышения достоверности функционирования устройства за счет увеличения полноты тестовой проверки, устройство дополнительно содержит сигнатурный анализатор, мультиплексор, триггер, элемент И, элемент
ИЛИ, элемент HE причем вход начальной установки устройства соединен с входом установки в "0" триггера, вход логического условия устройства соединен с первым входом элемента И, выI ход которого соединен с первым входом элемента ИЛИ, выход которого соединен с входом условия блока управления переходами, вход кода операции устройства соединен с первым информационным входом мультиплексора, выход которого соединен с адресным входом блока управления переходами, выход которого соединен с информационным входом сигнатурного анализатора, выход которого соединен с вторым информационным входом блока сравнения, выходы тестового разряда и разряда разрешения сравнения регистра микрокоманд соединены соответственно со счетным входом триггера и со стробирующим входом блока сравнения, выход разряда контроля регистра микрокоманд соединен с входом элемента НЕ, управляющим входом мультиплексора, входом. разрешения работы сигнатурного анаЛизатора и является выходом признака тестирования устройства, третий выход распределителя импульсов соединен с входом синхронизации сигнатурного анализатора, выход элемента НЕ соединен с вторым входом элемента И, прямой выход триггера со единен с вторым входом элемента ИЛИ, выход поля адреса регистра микрокоманд соединен с вторым информационным входом мультиплексора.
1427367
1427367 РУАН
Г ггст
Е
L
Icunr Ч
Составитель Ю.Ланцов
Редактор О.Спесивых Техред Л.Сердюкова Корректор МД1ароши. Заказ 4853/45
Тираж 704 Подписное
ВНИИПИ Государственного комитета СССР по делам изобретений и открытий
113035, Москва, Ж-35, Раушская наб., д. 4/5
Производственно-полиграфическое предприятие, г. Ужгород, ул. Проектная, 4