Устройство для контроля микропроцессорной системы

Иллюстрации

Показать все

Реферат

 

Изобретение относится области цифровой вьгчислительной техники и может быть использовано при проектировании самоконтролирующих микропроцессорных систем. Целбю изобретения является повышение достоверности контроля путем обеспечения контроля правильности функционирования системы на уровне микроциклов и циклов. Поставленная цель достигается введением буферного регистра, преобразователя кода команды в код числа циклов и микроциклов, блока сравнения, второго счетчика, коммутатора и четвертого элемента ИЛИ. 3 ил, таблица. (Л К) а СП ел

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

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

РЕСПУБЛИК

1 114 G 06 Р 11/26

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

К ABTOPCHOMY СВИДЕТЕЛЬСТВУ тс,„,7;

3©ду„

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

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ (21) 3777888/24-24 (22) 08.08.84 (46) 30.03.86. Бюл. У 12 (71) Харьковское научно-производственное .объединение по системам автоматизированного управления (72) В.И.Адонин, С.Е.Баженов, К.Г.Карнаух, В.Б.Самарский, Г.Н.Тимонькин, С.Н.Ткаченко, В.В.Топорков и В.С.Харченко (53) 681. 3 (088. 8) (56) Коффрон Дж. Технические средства микропроцессорных систем. М.: Мир, 1983, с. 145-169, рис. 5, 6.

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

11 765809, кл. G 06 F 15/00, 1980.

„„SU„„1221655 A (54) УСТРОЙСТВО ДЛЯ КОНТРОЛЯ МИКРОПРОЦЕССОРНОЙ СИСТЕМЫ (57) Изобретение относится а области цифровой вычислительной техники и может быть использовано при проектировании самоконтролирующих микропроцессорных систем. Целью изобретения является повьппение достоверности контроля путем обеспечения контроля правильности функционирования системы на уровне микроциклов и циклов.

Поставленная цель достигается введением буферного регистра, преобразователя кода команды в код числа циклов и микроциклов, блока сравнения, вто- д рого счетчика, коммутатора и четвертого элемента ИЛИ. 3 ил, таблица.

655 з дов 23 устройства; 26 — сигнал на входе первого разряда группы управляющих входов 23 устройства; 27 — сигнал на входе второго разряда группы управляющих входов 23 устройства;

28 — сигнал на втором входе группы входов 22 синхронизации устройства;

29 — сигнал на первом входе группы входов синхронизации устройства;

30 — сигнал на входе третьего разряда группы управляющих входов 23 устройства.

Назначение функциональных элементов и связей устройства для контроля микропроцессорной системы следующее °

Преобразователь 1 кода команды в код числа циклон и микроциклов предназначен для определения по коду слона состояния процессора соответствующего ему числа микроциклов в цикле команды и по коду команды — количества циклов в команде. Блок 2 сравнения предназначен для организации сравнения кодов адресов, выставляемых на шине адреса микропроцессора н каждом цикле реализации команды. Сумма- тор 3 — для организации естественного способа формирования адресов ячеек памяти внешних устройств микропро3 1221

Изобретение относится к цифровой вычислительной технике и может быть использовано при проектировании самоконтролируемых микропроцессорных систем и микро-3ВМ. S

Цель изобретения — повышение достоверности контроля.

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

Устройство (фиг.1) содержит преобразователь 1 кода команды в код числа циклов и микроциклов, блок 2 сравнения, сумматор 3, буферный регистр 4, второй счетчик 5, первый счетчик 6, коммутатор 7, второй триггер 8, третий триггер 9, первый триггер 10 третий элемент ИЛИ 11, вто- 20 рой элемент ИЛИ 1?, четвертый элемент

ИЛИ 13, третий элемент И 14, четвертый элемент И 15, первый элемент

ИЛИ 16, пятый элемент И 17, элемент

НЕ 18, первый элемент И 19, второй элемент И 20, группу входов 21 кода состояния контролируемого микропроцессора устройства, группу входов 22 синхронизации устройства, группу управляющих входов 23 устройства, груп- З0 пу входов 24 адреса устройства, вход

25 устройства соединен с выходом разрешения ввода микропроцессора, вход

26 устройства соединен с выходом ожидания микропроцессора, вход 27 при- 35 знака работы устройства соединен с . выходом захвата контролируемого микропроцессора, первый тактовый вход 28 и второй тактовый вход 29 устройст, ва входят в группу входов 22 синхро- 40 низации и соединены с входами и

У контролируемого микропроцессора, вход 30 устройства соединен с выходом синхронизации контролируемого микропроцессора. Выход 31 отказа устрой- 45 ства.

На фиг.2 и 3 обозначены: 5 — содержимое счетчика 5; 6 — содержимое счетчика 6; 8 — значение сигнала на единичном выходе триггера 8; 9— 50 значение сигнала на единичном выходе триггера 9; 10 — значение сигнала на единичном выходе триггера 10; 19— выходной сигнал элемента И 19; 21 сигнал на входе 21 данных устройст- 55 ва; 24 — сигнал на входе адреса устройства; 25 — сигнал на входе четвертого разряда группы управляющих,вхоцессорной системы. Буферный регистр

4 — для записи и хранения кодов адре сов, по которым осуществляется обращение к внешним устройствам микропроцессорной системы. Второй счетчик 5— для осуществления счета числа реализованных в команде циклов. Счетчик

6 — для осуществления счета числа реализованных в цикле микроциклов.

Коммутатор 7 - для формирования сигнала результата проверки исходного состояния счетчиков 5 и 6 в каждом цикле реализации команды микропроцессора. Триггер 8 — для запоминания факта перехода микропроцессора к циклу выборки кода команды с внешнего устройства. Триггер 9 — для формирования сигнала отказа (сбоя) объекта контроля. Триггер 10 — для запоминания факта реализации микропроцессором команды условного перехода.

Элемент ИЛИ 11 — для формирования сигнала управления коммутатором 7 и разрешения формирования сигнала синхронизации для счетчика 5. Элемент

ИЛИ 12 — для формирования импульсов счета для счетчика 5 ° Элемент ИЛИ

1221.655

Выходы

Вход 21 т -50

НачаВыход н ачаКод Выходы числа кода микро- числа циклов |циклов ла ла выборки контроля

01001001 0101 001 О 1

01001110 0100 010 0 1

13 — для передачи сигнала отказа (сбоя) на информационный вход триггера 9. Элемент И )4 — для формирования сигналов синхронизации счетчика.

5 и установки в "0" триггера 8. Эле- 5 мент И 15 предназначен для формиро-, вания импульсов счета для счетчика 6,"

Элемент ИЛИ 16 — для передачи сигналов синхронизации на соответствующий вход триггера 9. Элемент И 17— для формирования сигналов управления коммутатором 7 и сигналов синхронизации счетчика 6 и триггера 10. Элемент НЕ 18 — для инвертирования сигнала, характеризующего тип реализуемой команды. Элемент И 19 — для формирования информационных сигналов и сигналов синхронизации для триггера 9. Элемент И 20 — для установки в "О" счетчика 5.

По входу 22 синхронизации устройства поступает последовательность импульсов синхронизации Ч „ и Р которая поступает на соответствующие

25 входы синхронизации контролируемого микропроцессора.

На .входы 25, 26, 27 и 30 группы входов 23 управления поступают сигналы соответственно отсутствия режима ожидания, запрета прямого обращения к.памяти со стороны внешних устройств, признака того, что на шине данных находится слово состояния процессора и признака того, что шина данных находится в режиме ввода информации в микропроцессор.

Пример выполнения предлагаемого устройства (фиг.l) приведен для случая проверки правильности функционирования микропроцессорной системы, построенной на базе микропроцессоров типа К580, ИК-ЗО, INTEL 8080 или других аналогичных.

Преобразователь 1 является комбинационной схемой, его структура и работа определена таблицей истинности.

Продолжение таблицы

Выходы

Вход 21

НачаВыход начаКод числа

Выходы кода числа ла ла выборки контр роля микроциклов циклов

10101010 00» 010 О 0

011 »010 0100 011 1

00» 011 О О

01010101

01000100 0011 0» О О

00» 1010 0100 0» О 1

10» 1011 0011 Oll О О

0I »OI » Оо» О11 О О

00100010 0011 100 О

» » » » 0011 100 О О

00000001 0011 100 О О

»011011 0001 100 О О

1 »00011 0100 101 О 1

»0» » 1 0100 101 О 0

00001000 0100 101 0 О

10001000 0011 101 0 О

0OO00Ol0 0011 101 О 0

Как видно из таблицы, единичное значение сигнал на втором управляющем.выходе преобразователя 1 принимает в цикле выборки команды, (в первом цикле) . Единичное значение сигнал на первом управляющем выходе преобразователя 1 принимает также в первом цикле команды после считывания кода команды условного перехода.

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

1221655

Устройство функционирует после перехода микропроцессора к выполнению первой команды программы.

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

15 наличии сигнала SYNC по импульсу р происходит запись данного кода в счетчик 6. В этом же цикле по импульсу происходит уменьшение на

20 единицу содержимого счетчика 6. По заднему фронту импульса БУМС происхо

- дит запись кода адреса команды в бу- ферный регистр 4 и подтверждение нулевого состояния триггера 10. Пос- 25 ле готовности внешнего устройства к обмену информацией на входе 25 уст- ° ройства появляется сигнал Разрешение ввода", который характеризует режим ввода информации (кода команды) в микропроцессор. В результате на вход

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

35 цикле исполнения команды по приходу импульса Ф„ формируется сигнал синхронизации и код числа циклов в команде записывается в счетчик 5. В зависимости от кода команды, поступившего на вход микропроцессора, триггер 10 переходит в единичное состояние, если реализуемая команда является командой условного перехода, и остается в нулевом состоянии, 45 если реализуемая команда является командой безусловного перехода. В случае реализации команды условного перехода триггер 10 переходит в единичное состояние и открывает элемен- 5О ты И 19 и 20. В том случае, если в очередном цикле исполнения команды на шине адреса выставлен код адреса, отличающийся более чем на единицу от кода адреса, записанного в буферном 55 регистре 4, то на выходе элемента

И 20 формируется сигнал установки счетчика 5 в "0", так как в этом случае переход в команде осуществляется по отрицательному исходу проверки соответствующего логического условия.

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

И 19 формируется единичный сигнал, по которому триггер 9 переходит в единичное состояние. Если реализуемая команда является командой безусловного перехода, триггер 10 остается в исходном состоянии и нулевым сигналом с единичного выхода блокирует работу элементов И 19 и 20. Контроль правильности функционирования микропроцессора осуществляется путем проверки на "0" содержимого счетчика 6 после реализации каждого цикла и счетчика 5 после реализации каждой команды. В каждом микроцикле по импульсам Р происходит уменьшеъ. ние на единицу содержимого счетчика

6. После реализации каждого цикла счетчик 6 переходит в нулевое состояние и содержимое счетчика 5 уменьшается на единицу. Если в контролируемом микропроцессоре осуществился переход к очередному циклу команды неправильно, то после появления сигнала SYNC на входе 30 третьего разряда группы управляющих входов 23 устройства и сигнала ч на входе 29

1 группы входов 22 синхронизации устройства единичный сигнал с выхода элемента И 18 через элемент ИЛИ 16 поступает на синхровход триггера 9, а единичный сигнал с выхода элемента ИЛИ 12.поступает на коммутатор 7 и с его выхода через элемент ИЛИ 13на информационный вход триггера 9, который зафиксирует факт отказа. Если микропроцессор переходит к реализации очередной команды не в соответствии с заданным алгоритмом, о чем свидетельствует единичный сигнал на выходе элемента ИПИ ll и единичное состояние триггера 8, с приходом им7,12216 пульсов Ц, и SYNC триггер 9 переходит в единичное состояние и зафиксируется факт отказа.

Предлагаемое устройство дпя контроля микропроцессорной системы работает в синхронном режиме с контролируемым микропроцессором (входы установки режима работы устройства не показаны).

В исходном состоянии все элементь1 памяти находятся в нулевом состоянии (сходы установки в "0" не показаны), Рассмотрим работу предлагаемого устройства на примере реализации команды, содержащей один цикл реализации команды безусловного перехода, содержащей более одного цикла и реализации команды условного перехода.

Пример.(Первый режим). В первом микроцикле первого цикла на вход

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

На входе 24 адреса устройства появляется код адреса команды, который поступает на информационный вход буферного регистра 4 и первый вход блоблока 2 сравнения. В случае отсутст- 35 вия режима "Ожидание и режима "Захват" на входы 26 и 27 устройства поступает единичный и нулевой сигналы соответственно и открывают элемент

И 15. Во втором микроцикле (после 40 прихода сигнала SYNC на вход 30 устройства) по импульсу Y„ на выходе элемента И 17 формируется единичный сигнал, который поступает на вход синхронизации счетчика 6, в .кото- 45 рый записывается код числа микроциклов в первом цикле, уменьшенный на

"1", а по импульсу в данном цикле происходит уменьшение содержимого счетчика 6 на "1". После готовности внешних устройств к обмену информацией, с микропроцессором на входе 25 устройства появляется единичный сигнал, который свидетельствует о переводе шины данных микропроцессора в режим ввода информации.

В третьем микроцикле на вход 21 устройства поступает код считанной

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

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

Этим же сигналом происходит установка триггера 8 ц нулевое состояние. В последнем микроцикле цикла команды цо.импульсу у происходит устал и т новка в "0 счетчика 6. В результате отрицательным фронтом сигнала на выходе элемента ИЛИ 12 счетчик 5 переходит в нулевое состояние. В случае неправильного функционирования контролируемого устройства (перед началом реализации очередного цикла команды счетчик 6 не устанавливается в "0 ) во втором. цикле очередной команды перед записью новой информации в счетчик 6 по импульсу на выходе элемента И 17 формируется единичный сигнал, который поступает на второй управляющий вход коммутатора 7, на второй информационный вход которого поступает единичный сигнал с выхода элемента ИЛИ 12. Единичный сигнал с выхода коммутатора 7 поступает на первый вход элемента ИЛИ 13 и с его выхода на информационный вход триггера 9. По заданному фронту импульса синхронизации с выхода элемента

И 17, поступающему через элемент

ИЛИ 16 на вход синхронизации триггера 9, происходит установка в единичное состояние триггера 9 и на выходе 31 устройства формируется сигнал отказа -(сбоя) . Если по отрицательному фронту сигнала с выхода элемента ИЛИ 12 счетчик 5 не устанавливается в "0", то единичный сигнал с выхода элемента ИЛИ 11 поступает на первый информационный вход коммутатора 7. В первом цикле очередной команды после установки на шине данных кода слова состояния процессора триггер 8 переходит в единичное состояние и сигнал с его единичного выхода поступает на первый управляющий вход коммутатора 7. Во втором микроцикле по импульсу у на выходе пятого элемента И 17 формируется единичный сигнал, который по1221655 ступает на второй управляющий вход коммутатора 7и в результате форми- рует на его выходе единичный сигнал, поступающий через элемент ИЛИ 13 на информационный вход триггера 9. По заднему фронту сигнала с выхода элемента ИЛИ 16, поступающему на вход синхронизации триггера 9, последний устанавливается в единичное состоя10 ние и на выходе 31 отказа устройства устанавливается единичный сигнал.

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

Каждый раз после реализации каждого цикла проверяется содержимое счетчика 6 на 0 . Проверка осуществляет- 2р t! I! ся аналогичным образом по первому режиму. Проверка содержимого счетчика

5 на 0 осуществляется после реали-!! !! . з ации команды аналогичным по первому режиму . 25

В третьем режиме во втором микроцикле исполнения команды условного перехода триггер 10 переходит в единичное состояние и сигналом с единичного выхода открывает элементы И 19 3О и 20. В третьем цикле исполнения команды в счетчик 5 записывается код числа циклов, содержащихся в команде при положительном исходе проверки значений в команде при положительном исходе проверки значений логического условия. После реализации первого цикла команды происходит уменьшение на единицу содержимого счетчика 5 и проверка равенства на 40

"0" счетчика 6 описанным образом .

Значение проверяемого логического условия определяется сравнением в блоке 2 сравнения, кодов адресов, хранимого в буферном регистре 4 и вы-45 ставленного на шине адреса микропроцессора. Код адреса команды условного перехода поступает с выхода буферного регистра 4 на второй вход сумматора 3. По импульсу в первом ч микроцикле очередного цикла в сумматоре 3 происходит увеличение значения предыдущего кода адреса на "1". Код адреса, выставленный на шине адреса микропроцессора, поступает на вход

24 устройства и с него — на информационный вход буферного регистра 4 и первый вход блока 2 сравнения. Если значение кода адреса, поступившего на вход 24 устройства, превышает на !! !!

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

Если значение кода адреса, пос тупившего на вход 2 4 устройства, превьппает значение кода, хранимого в буферном регистре 4, более чем на " 1 ", что свидетельствует о б отрицательном исходе проверки значения логическо го условия, то на втором выходе блока 2 сравнения появляется единичный сигнал, который поступает на второй вход открытого элемента И 20 и с выхода последнего на К -вход счетчика 5, т . е . устройство приведено в исходное состояние . В дальнейшем оно функционирует как при выполнении очередной команды . Если значение кода адреса, поступившего на вход 2 4 ус тройства, равно или меньше з начения кода, хранимого в буферном р егистре 4, что свидетельствует о неправильном формировании кода адреса перехода (неправильной реализации функции перехода), то на нервом выходе блока

2 сравнения появляется единичный сигнал . Единичный сигнал с выхода элемента И 1 9 поступает через элемент

ИЛИ 1 3 на информационный вход триггера 9 и через элемент ИЛИ 1 6 на вход синхронизации триггера 9 и по з аднему его фронту триггер 9 переходит в единичное состояние . На выходе 3 1 от- каза устройства устанавливается единичный сигнал .

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

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

Устройство для контроля микропроцессорной системы, содержащее сумма1221655 тор, первый, второй и третий триггеры, первый, второй и третий элементы

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

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

ИЛИ соединен со счетным входом второго счетчика и вторым информационным входом коммутатора, выход начала цикла контроля преобразователя кода команды в число циклов и микроциклов соединен с единичным входом второго триггера, выход начала цикла выборки преобразователя кода команды в число циклов и микроциклов соединен с J -входом первого триггера и через элемент НŠ— с К -входом

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

II 11 установки 0 второго счетчика, выход первого элемента И соединен с вторым входом четвертого элемента

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

122!655

t 7Ь

t7

М

75

8

Id

У

t ю

f ф иг3 фима

Составитель И.Сигалов

Техред Н .Бонкало

Корректор М.Самборская

Редактор М.Воловик

Заказ 1614/55 Тираж 671

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

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

Подписное

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