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

 

Изобретение относится к вычислительной технике и предназначается для построения надежных вычислительных систем со встроенным контролем. Цель изобретения - расширение области применения за счет возможности контроля прохождения произвольной программы без замены аппаратуры в системе. Система содержит процессор 1, блок 3 запоминающего устройства, блок 4 внешних устройств, регистр 6 команды, блок 5 выделения строба команды, блок 7 регистра контрольного слова, блок 8 формирования контрольного слова, блок 9 счетчика контрольных участков и блок 10 индикации. Блок выделения строба команды выделяет момент наличия на системной шине первого слова команды, который запоминается в регистре команды. Код команды подается на блок формирования контрольного слова и складывается с предыдущим значением контрольного слова. Результирующее контрольное слово запоминается в блоке регистра контрольного слова и может быть считано программой и проверено. Блок счетчика контрольных участков считает количество программных обращений к блоку регистра контрольного слова. В случае, если к концу выполнения программы число обращений к блоку контрольного слова не соответствует заданному, то блок индикации генерирует сигнал ошибки. 3 з.п.ф-лы, 7 ил.

COt03 СОВЕТСКИХ

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

РЕСПУБЛИК (19) (И) 29 А1 (51)5 G 06 F 11/28

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

К Д ВТОРСКОМУ СВИДЕТЕЛЬСТВУ

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

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

ПРИ ГКНТ СССР (21) 4484311/24-24 (22) 05.08.88 (46) 07.11.90. Бкп. № 4 1 (71) Киевский политехнический институт им. 50-летия Великой Октябрьской социалистической революции (72) В.В.Васильев, Г.И.Гончаренко, В.И.Жабин, В.И.Савченко, К.Г.Самофалов и В.В.Ткаченко (53) 681.3(088.8) (56) Авторское свидетельство СССР № 1119018, кл. G 06 F 11/28, 1983.

Авторское свидетельство СССР № 1191912, кл. G 06 F 11/28, 1984. (54) УСТРОЙСТВО ДЛЯ КОНТРОЛЯ МИКРОПРОЦЕССОРНОЙ СИСТЕМЫ (57) Изобретение относится к вычислительной технике и предназначается для построения надежных вычислительнык систем со встроенным контролем.

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

4 внешних устройств, регистр 6 команды, блок 5 выделения строба команды, блок 7 регистра контрольного блока, блок 8 формирования контрольного слова, блок 9 счетчика контрольных участков и блок 10 индикации. Блок вьщеления строба команды вьщеляет момент наличия на системной шине первого слова команды, который запоминается в регистре команды. Код команды подается на блок формирования контрольного слова и складывается с предыдущим значением контрольного слова.

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

3 160523 9

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

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

На фиг.1 представлена структурная схема устройства; на фиг.2 " структурная схема блока выделения строба команды; на фиг.3 — структур 15 ная схема блока регистра контрольного слова; на фиг.4 — блок формиро1 вания контрольного слова, на фиг.5 ° блок счетчика контрольных участков; на фиг.6 — временная диаграмма ра- 20 боты блока выделения строба команды; на фиг.7 — схема регистра команды и регистра контрольного слова блока регистра контрольного слова.

На схеме (фиг. 1) обозначены: про- 25 цессор 1, системная шина 2, блок 3 запоминающего устройства (ЗУ), блок

4 внешних устройств (ВУ), блок 5 выделения строба команды, регистр 6 команды, блок 7 регистра контроль- 30 ного слова, блок 8 формирования конрольного слова, блок 9 счетчика контрольных участков, блок 10 индикации.

Блок 5 выделения строба команды (фиг.2) содержит блок 11 постоянной 35 памяти (ПЗУ), вычитающий счетчик 12, элемент И 13, элемент ИЛИ-НЕ 14, элемент 15 задержки.

Блок 7.регистра контрольного слоiBG (фиг.3) содержит магистральный 40 приемопередатчик 16, регистр 17 контрольного слова, селектор 18 адреса, триггер 19, первый элемент ИЛИ

20, элемент ИЛИ-НЕ 21, второй элемент ИЛИ 22, элементы И 23-25, эле- 45 мент 26 задержки.

Блок 8 формирования контрольного слова (фиг.4) представляет собой сумматор 27.

Блок 9 счетчика контрольных участков (фиг.5) содержит вычитающий счетчик 28, первый элемент И 29, элемент ИЛИ 30, элементы И 31-33, магистральный приемопередатчик 34, селектор 35 адреса, триггер 36, элемент 37 задержки.

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

Предлагаемое устройство осуществляет контроль за программами, выполняемыми в данной вычислительной системе. Контроль осуществляется путем сложения всех кодов операций (по модулю 256) и затем программного сравнения полученного результата с заранее рассчитанным эталоном. В данной системе предполагается, что вычислительная система имеет конфигурацию типа g — BUS которая используется в микроЭВМ "Электроника-60".

Данный подход предполагает наличие совмещенного канала адреса и данных.

Системная шина — это управляющие линии и совмещенные каналы адреса и данных.

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

Блок 5 выделения строба команд выделяет момент наличия на системной шине 2 первого слова команды, который фиксируется в регистре 6 команды. Первое слово команды вместе с предыдущим значением контрольного слова подается на входы блока 8 формирования контрольного слова. Полученный результат по сигналу, полученному из блока 5 выделения строба команд, записывается в регистр 17 контрольного слова блока 7 контрольного слова. В любой точке программы это значение можно считать из регистра 17 контрольного слова блока 7 (данный регистр программно доступен) и значение контрольного слова сравнивается программно с заранее вычисленным (эталонное значение контрольного слова может рассчитываться или вручную, или с помощью специальной программы транслятора, который добавляет в текст программы специальные команды, считывающие значения контрольного слова и сравнивающие это зна чение с эталоном).

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

16

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

Структуры блоков 5-9 предлагаемого устройства приведены для случая использования микроЭВМ "Электроника-60 M". При описании работы предлагаемой системы используются следующие обозначения:

КСИА — сигнал синхронизации активного устройства, КСИП вЂ” сигнал синхронизации пассивного устройства, КВВОД вЂ” ввод данных

КВЫВОД вЂ” вывод данных, КВУ вЂ” вывод внешнего устройства, КСБРОС вЂ” первоначальная установка канала.

В блоке 5 вьделения строба команд при включении питания в указанных выше микроЭВМ генерируется канальный сигнал общего сброса КСБРОС. По этому сигналу вычитающий счетчик 12 блока 5 выделения строба команды сбрасывается в "О".

Первыми данными, которые появятся на шине, будет первое слово команды, которое поступит на вход ПЗУ 11 блока 5, и на выходе ПЗУ появится код, определяющий, сколько в данной команде будет обращений к памяти.Данная операция необходима, так как в произвольном случае невозможно отделить первое слово команды от операндов. Поэтому необходимо отслежи05239

55 вать с первой команды время появления первых слов операции на системной шине. Таким образом, по адресам соответствующим кодам первых слов команд, записаны коды, определяющие длительность команды в циклах обращения к системной шине (сколько нужно пропустить циклов, чтобы учитывать только следующее первое слово команды). Приведен пример такого соответствия: первое слово команды — код количества обращения к системному каналу (шине). Команда CLRR1 имеет первое слово 005001 (значение кода приведено в восьмеричном значении).

Так как для выполнения этой команды не нужны дополнительные обращения к памяти, а следовательно, и к системной шине, то значение, которое будет находиться по адресу 005001 в ПЗУ 11, будет "1".

У команды СЕВИНФ1000 (восьмеричный код команды 005037 001100) первое слово команды 005037. Для данной команды нужно еще одно обращение к памяти, поэтому значение в соответствующей ячейке ПЗУ 11 будет "2". . После сброса в вычитающем счетчи- ке 12 будет значение "0", на выходе элемента И 13 также будет значение

"0 " . Поэтому, начиная с первой команды, и далее в случае значения счетчика "0" и по отрицательному перепаду сигнала КВВОД появится сигнал Запись" на управляющем входе счетчика

12. По этому же сигналу код операции запишется в регистр 6 команды.

В конце каждого цикла по полохмтельному перепаду канального сигнала КСЖА из вычитающего счетчика будет вычтена 1, что обеспечит его значение "О" во время приема следующего кода операции. Первое слово команды поступит на один из групповых информационных входов блока 8 формирования контрольного слова, на второй вход будет подано значение, поступающее с регистра t7 контрольного слова блока 7.Блок

8 формирования контрольного слова представляет собой комбинационную схему. Поэтому сигнал, формируемый логическим элементом ИЛИ 14 блока 5, проходит через элемент 15 задержки (RC-цепочка), которая учитывает задержку, необходимую на формирование контрольного слова в блоке 8 формирования контрольного слова, и являет1 ся стробом для записи полученного -.

1605239

50 значения контрольного слова в регистр

17 блока 7. Временная диаграмма сигналов, сопровождающих описанный процесс работы блока 5, приведена на фиг.6.

При программном обращении к регистру 17 контрольного слова блок 7 работает следующим образом. Магистральный приемопередатчик в исходном состоянии включен на прием с системной шины 2. Таким образом, если адрес системной шины соответствует адресу регистра 17 контрольного слова, то на выходе селектора 18 адреса появится логическая единица (селектор адреса представляет собой схему сравнения кода с константой). Логический результат работы селектора адреса по сигналу KCHA записывается в триггер 19.

Выход триггера 19 включается сигналом разрешения обращения к регистру.

Сигнал с триггера 19 в случае операции записи (КВЫВОД) или чтения (КВВОД) через элемент 26 задержки фор- .5 мирует ответный сигнал блока 7. Величина задержки, формируемой элементом задержки, определяется требованиями к временным соотношениям. В случае программного чтения магистральный приемопередатчик 16 блока 7 переключается на направление от регистра 17 контрольного слова к системной шине

2. Это обеспечивается логическим элементом 24, выход которого подключен к управляющему входу магистрального приемопередатчика 16. Возможное исполнение регистра 17 представлено на фиг.7. Управление таким регистром обеспечивается логическими элемента- 40 ми 20, 21 и 25. В случае программного обращения к регистру 17 контрольного слова формируется сигнал о программном обращении к регистру 17 контрольного слова с помощью логическо- 45

ro элемента 24. Этот логический сиг- . нал поступает на управляющий вход вычитающего счетчика 28 блока 9.

Блок 9 счетчика контрольных участ" ков работает следующим образом. В начале программы в счетчике 28, который является программно-доступным, записывается значение количества контрольных участков. По сигналу, приходящему из блока 7 регистра конт55 рольного слова (И 24), из значения кода, находящегося в вычитающем счетчике 28, вычитается 1. Таким образом в конце программы при правильФ йом выполнении ее значение, хранимое в счетчике должно быть равно "0".

Если нет, то сигнал, формируемый на выходе элемента 29, вызовет срабатывание блока индикации (загорание светодиода), что свидетельствует о неправильной работе системы. Работа магистрального приемопередатчика 34, селектора 35 адреса, триггера 36 рассматривалась при описании блока 7.

Элементы 30-33 и 37 необходимы для синхронизации работы указанных выше элементов.

Рассмотрим ограничения, накладываемые на программирование в данной системе. Для предоставления структуры любой сложной программы можно пользоваться комбинацией трех базовых структур: "Следование"у "Развилка" и "Цикл", Все данные структуры имеют один вход и один выход. Суммы первых слов команд в общем случае и в различных ветвях этих структур различны. Поэтому без дополнительных мер аппаратура контроля на данных участках может зафиксировать сбой программы, которого фактически нет.

Для того, чтобы этого не случилось, необходимо искусственно выравнивать суммы первых слов команды (контрольные слова) в ветвях структуры до одинакового значения перед каждый объединением ветвей. Выравнивание сумм первых слов команды может быть легко выполнено следующим образом. Перед каждой точкой объединения ветвей базовых структур вставляются дополнительные команды, которые заносят в регистр 17 контрольного слова блока 7 скорректированное значение контрольного слова. Выравнивание контрольного слова может быть выполнено одной командой. Так как суммирование первых слов команд производится по некоторому модулю, например по модулю 256, всегда можно указать число, дополняющее сумму до нужного значения. Расчет корректирующих значений может быть произведен либо программистом, либо с помощью специального траслятора, который рассчитывает корректирующее значение и вставляет необходимые дополнительные команды в программу. При использовании подпрограмм обработки прерываний можно использовать следующий прием, В начале указанных подпрограмм значение контрольного слова запоминается.

1605239 а в конце выполнения подпрограммы восстанавливается. На обычную подпрограмму накладываются такие же ограничения, как и на программу в целом.

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

15

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

1 ° Устройство для контроля ми к ропроцессорной системы, содержащее блок формирования контрольного слова, регистр команды, блок регистра контрольного слова, информационные 25 вход и выход которого соединены соответственно с выходом и первым информационным входом блока формирования контрольного слова, второй ин,формационный вход которого соединен с выходом регистра команды, информационный вход которого соединен с входом устройства для подключения к системной шине контролируемой микпропроцессорной системы, о т л и— ч а ю щ е е с я тем, что, с целью расширения области применения устройства за счет возможности контроля прохождения произвольной программы без замены аппаратуры в системе,уст- 40 ройство содержит блок выделения строба команды, блок счетчика контрольных участков и блок индикации, вход которого соединен с выходом блока счетчика контрольных участков, вход- 45 выход которого соединен с входом-выходом устройства для подключения к системной шине контролируемой микропроцессорной системы, управляющий вход блока счетчика контрольных уча- стков соединен с выходом управления блока регистра контрольного слова, вход-выход которого соединен с входом-выходом устройства для подключения к системной шине контролируемой микропроцессорной системы, стробиру55 ющий вход блока регистра контрольного слова соединен с выходом строба контрольного слова блока выделения строба команды, выход строба команды которого соединен с входом записи регистра команды, вход блока выделения строба команды соединен с входом устройства для подключения к системной шине контролируемой микропроцессорной системы.

2. Устройство по п.1, о т л и ч а ю щ е е с я тем, что блок вьщеления строба команды содержит блок постоянной памяти, вычитающий счетчик, элемент задержки, элемент И и элемент ИЛИ-НЕ, выход элемента ИЛИ-НЕ соединен с входом записи вычитающео счетчика, выходом строба команды через элемент задержки с выходом строба контрольного слова, первый вход элемента ИЛИ-HE соединен с разрядом "Ввод" входа блока выделения строба команды, второй вход элемента

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

3. Устройство по п.1, о т л и ч ающе ес я тем, что блокрегистра контрольного слова содержит регистр контрольного слова, селектор адреса, триггер, элемент задержки, два элемента ИЛИ, элемент ИЛИ-НЕ, три элемента И и магистральный приемопередатчик, управляющий вход которого подключен к выходу первого элемента И:. выходу управления блока регистра контрольного слова,первая группа входов-выходов магистрального приемопередатчика подключена к группе входов селектора адреса, группе входов-выходов регистра контрольного слова и информационному выходу блока регистра контрольного слова, информационный вход которого подключен к группе информационных входов регистра контрольного слова, первый управляющий вход которого подключен к выходу первого элемента ИЛИ, первый вход которого подключен к стробирующему входу блока регистра конт1605239

12 рольного слова, второй вход первого элемента ИЛИ, второй управляющий вход регистра контрольного слова и вход элемента ИЛИ-НЕ подключены к вы5 ходу второго элемента И, первый вход которого, первые входы первого и третьего элементов И подключены к выхо ду триггера, информационный вход которого подключен к выходу селектора 1п адреса, вход элемента задержки подключен к выходу третьего элемента И, второй вход которого подключен к выходу второго элемента ИЛИ, первый вход которого и второй вход первого элемента И подключены к разряду

"Ввод" входа-выхода блока регистров контрольного слова, второй вход второго элемента ИЛИ и второй вход второго элемента И подключены к разряду gp

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

4. Устройство по п.1, о т л и—

35 ч а ю щ е е с я тем, что блок счетчика контрольных участков содержит селектор адреса, вычитающий счетчик

Ф триггер, четыре элемента И, элемент 1О

I ! т» "в задержки, элемент ИЛИ и магистральный приемопередатчик, первая группа входов-выходов которого подключена соответственно к группам информационных входов селектора адреса и вычитающего счетчика, группа выходов которого подключена к входам первого элемента И, выход которого подключен к выходу блока счетчика контрольных участков, первые входы второго, третьего и четвертого элементов И объединены и подключены к выходу триггера, информационный вход которого подключен к выходу селектора адреса, выход второго элемента И под ключен к счетному входу вычитающего счетчика, выход третьего элемента И подключен к входу элемента задержки, выход четвертого элемента И подключен к управляющему входу магистрального приемопередатчика, вторая группа входов-выходов которого подключена к информационным разрядам входа-выхода блока счетчика контрольных участков, "Вывод", "Ввод синхронизации и ответного сигнала входа-выхода которого подключены соответственно к объединенным второму входу второго элемента И и первому входу элемента

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

1605239

1605239 сь ов сь

Составитель В.Васильев

Редактор Н.Тупица Техред Л.Сердюкова Корректор Н.Король

Заказ 3454 Тираж 571 Подписное

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

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

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

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

 

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Изобретение относится к вычислительной технике и может быть использовано при построении управляющих вычислительных машин (УВМ), нечувствительных к сбоям программ

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

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

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

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