Устройство для контроля хода программ
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Текст
(19) 4 С 06 Г 11 ГОСУДАРСТВЕННЫЙ НОМИТЕТПО ИЗОБРЕТЕНИЯМ И ОТНРЫТИЯМПРИ П 1 НТ СССР ИЗОБРЕТЕНИЯДЕТЕЛЬСТВ У ИСА ВИ АВТОРСК 4-24 ТРОЛЯ ХО 36840 У 34нерио-физи А СССР1983,СР1987. тельство Р 11/ОО, льство С Р 11/28(21) 4345418/24-24;(71) Московский инжкий институт(54) УСТРОЙСТВО ДЛЯ КОН ДАПРОГРАИ(57) Изобретение относится к вычислительной технике и может быть использовано при построении надежныхмикропроцессорных систем, Цель изобретения - повышение достоверностиконтроля, Устройство содержит блок4 формирования сигнатуры, блок 5 памяти,дешифратор 6, блок 7 сравненияи элемент И 8, Устройство позволяет обнаруживать ошибки, проявляющиеся в виде замены одной точки слияния другой, 1 з,п. ф-лы, 7 ил,3 150821Изобретение относится к вычислительной технике и может быть исполь-.зовано при построении надежных микропроцессорных систем5Цель изобретения - повышение достоверности контроля.На фиг. приведена схема устройства для контроля хода программ: нафиг.2 - схема блока формирования сигнатур;, на фиг.З - пример конкретного выполнения блока формирования сигнатур; на Фиг,4 - схема формирователя контрольного кода; нафиг.5 - пример конкретного выполнения 5блока сумматоров по модулю два; наФиг.6 - схема алгоритма; на фиг 7таблица, поясняющая логику работыформирователя контрольного кода.Устройство содержит (Фиг,1) группу адресных входов 1, группу инфор-.мационных входов 2, тактовый вход 3,блок 4 Аормирования сигнатур, блок5 памяти, дешифратор 6, блок 7 сравнения, элемент И 8 и выход 9 сигнала ошибки. ДешиАратор 6 имеет первый 10 и второй 11, выходы.Блок 4формирования сигнатур(Аиг,1 и 2) образуют,Аормирователь12 контрольного кода, блок 13 памя Отии мультиплексор 14,Формирователь 12 контрольного кода (Фиг,З) содержит Б регистров 15разрядностью 1 ор 1., где Ь - степень простого числа, блоки 16-18 умножения, сложения и деления в полеСР(Т), причем величины, на которыепроисходит умножение и деление в соответствующих блоках 16 и 18, однозначно определяются элементами сопро вождающей матрицы. Последняя, в своюочередь, однозначно определяется видом образующего многочлена с козффи"циентами из поля СР(1.). Число регистров 15 равно степени образующего мно гочлена.При Ь=2 Формирователь контрольногокада (Фиг.4) содержит блок 19 сумматоров по модулю два и И-разрядныйрегистр 30. 50При п=Н=4 и Р (х)=х +х +1 блок 19сумматоров по модулю два содержит(Фиг,5) четыре сумматора 21 по модулю два (и - разрядность шины данныхмикропроцессорной системы). 55Если блок 4 Аормирования сигнатуримеет структуру, показанную на Аиг,1устройство работает следующим образом. Перед началом работы последовательностные элементы блока 12 устанавливаются в начальное состояние Я Цепь установки в исходное состояние на фиг,1 не показана, Адресные входыподключаются к шине адреса микропроцессорной системы, инФормационные входы 2 устройства - к шине данных, а тактовый вход 3 - к линии сигнала чтения памяти команд шины управления системы, Выход 9 сигнала ошибки может быть подан на вход йрерывания систе-, мы.Контроль хода выполнения программы осуществляется путем сравнения в заданных контрольных точках контрольного кода, сформированного из всех слов программы, предшествующих контрольной точке и считанных из памяти команд системы, с эталонным контрольным числом, сформированным блоком 5 из кода адреса соответствующей контрольной точки. Если сАормированный в блоке 12 контрольный код (сигнатура) совпадает с кодовым эталоном, сАормированным блоком 5, то программа выполняется правильно, в противном случае на выходе 9 устройства появляется сигнал ошибки.Реальные программы имеют в своем составе точки слияния ветвей, в ко- торых значения контрольных кодов зависят от того, по какой траектории была реализована программа, В общем случае контрольные коды, полученные прн прохождении различных траекторий, не совпадают. Чтобы обеспечить контроль хода программы, имеющей точки слияния ветвей, в предлагаемом уст-. ройстве в каждой из,указанных точек,1 осуществляется установка блока 12 в определенные состояния, которые яв" ляются идентиАикаторами соответствующих точек слияния, после чего процесс Фориирования контрольного кода начинается заново.В процессе воспроизведения программы в каждый момент генерации системой адреса гочки слияния ветвей на выходе 1 О. дешифратора 6 появляется сигнал логической единицы, который приводит к появлению на выходах мультиплексора 14 кода с выходов блока 13, на выходах которого формируется код начального состояния блока 12, Кодидентификатор поступает на вторую группу информационных входов блока 12, после чего процесс формирования .сигнатуры начинается заново, При ло-гическом нуле на управляющем входемультиплексора 14 на его выходы проходит код с выходов блока 12, который в этом случае работает обычнымобразом, Блок 13 осуществляет преобразование контрольного кода, полученного после прохождения точек программы, предшествующих точке слияния, вкод начального состояния блока 12,Каждому выходному коду блока 13 соответствует несколько входных - почислу ветвей, сходящихся в даннойточке слияния, Блоки 5 и 13 могутбыть реализованы в виде комбинационных схем, В этом случае они строятся на основе соответствующих им таблиц истинности по известным правиламсинтеза многовыходных комбинационных схем (диаграммы Вейтча, картыКарно), Пустьнапример, программа(фиг,б) имеет две точки слияния: впервой, имеющей адрес А , сходятсядве ветви, сигнатуры которых 8, и 8 2,во второй, имеющей адрес А 2, сходятся три ветви, сигнатуры которых Б,8,1 и Б. Поставим в соответствие указанным точкам слияния коцы-идентифи 2каторы Бк и Бя, соответствующие начальным состояниям блока 12, в которые тот устанавливается при прохождении данных точек, Тогда логика работы блока 12 описывается таблицей, представленной на фиг.7, где Як сигнатура, полученная в конце программы.Блок 5 выдает на своих выходах9 э Экоды Б., 518 когда на его входах коды А А А соответственно, где Я, - эталонная сигнатура в -йК контрольной точке с адресом А ., На выходе 10 дешифратора 6 сигнал логической единицы появляется, когда на входах 1 - код одного из адресов А, и А 2 или адрес команды начальногопуска. На выходе 11 дешифратора б сигнал логической единицы появляется, когда на входах 1 - один из кокдов А;.Так как предлагаемая структура устройства не накладывает никаких ограничений на расположение точек контроля, последние можно расположить в . точках, имеющих одинаковые сигнатуры, что максимально упрощает блок 5, Если выбрать контрольные точки ука" занным способом по каким-либо причинам не удается, их можно выбрать стаким расчетом, чтобы эталонные сиг. натуры отличались в минимальном числе разрядов, что также существенно уменьшает аппаратные затраты на реализацию устройства,, 1Время обнаружения ошибки определяется в рассмотренном случае расстоянием от места ее возникновения до ближайшей контрольной точки. 510 Для уменьшения времени обнаружения ошибки можно использовать схему блока 4, показанную на фиг.2, На выходе 11 дешифратора б в этом случае постоянно находится уровень логической единицы, Контроль хода выполнения программы осуществляется путем сравнения контрольного кода, сформированного из всех слов программы, предшествующих очередному и считанных ранее из памяти команд системы, с эталонным контрольным числом, извлеФ каемым иэ блока 5 по тому же адресу, что и очередное слово из памяти ко 15 20 25 манд, Если сформированный в блоке 12контрольный код (сигнатура) совпадает с кодовым эталоном, считанным из блока 5, программа выполняется правильно, в противном случае на выходе 9 появляется сигнал ошибки. Массив контрольных кодов вычисляется иразмещается в блоке 5 заранее, приэтом по тем адресам, которые возбуждаются в памяти команд системы припрохождении программой точек слияния,в блоке 5 хранятся начальные состояния блока 12,.соответствующие указанным точкам,30 Э 5 Использование изобретения обеспе 40 чивает. увеличение достоверности контроля: устройство позволяет обнаруживать ошибки, проявляющиеся в виде замены одной точки слияния другой.Предлагаемое устройство может быть 45 использовано и для контроля блоковмикропрограммного управления. В этомслучае функции блока 5 и дешифратора6 выполняют дополнительные разрядыпамяти микрокоманд. 50 формула изобретения 1. Устройство для контроля хода 55 программ, содержащее дешифратор, блокформирования сигнатур, блок сравнения и элемент И, причем выход элемента И является выходом сигнала ошибки устройства, тактовый вход устройства соединен с, тактовым входом блока форми-, 1рования,сигнатур и первым входом элемента И, информационный выход блока формирования. сигнатур соединен с первым .входом блока сравнения, выход которого соединен с вторым входом элемента И, группа информационных входов устройства соединена с группой информационных входов блока фор мирования сигнатуро т л и ч а ющ е е с я тем, что, с целью повышения достоверности контроля, в устройство введен блок памяти, причем адресные входы устройства соединены 15 с информационными входами дешифратора и адресными входами блока памяти, выходы которого соединены с вторым входом блока сравнения, первый и второй выходы дешифратора соеди иены соответственно с входом модифи,кации сигнатуры блока формирования ,:сигнатур и с третьим входом элемента И.1 2. Устройство по п. 1, о т л и - ч а ю щ е е с я тем, что блок формирования сигнатур содержит формиро-ватель контрольного кода, узел памяти и мультиплексор, группа выходов которого соединена с первой группой, информационных входов формирователя контрольного кода, вторая группа информационных входов которого образует группу информационных входов блока, группа выходов формирователя контрольного кода соединена с группой адресных входов узла памяти, первой группой информационных входов мультиплексора и является группой выходов блока, вторая группа информационных входов мультиплексора соеди"- нена с группой выходов узла памяти, тактовый вход формирователя контрольного кода и управляющий вход мультиплексора образуют соответственно тактовый вход и вход модификации сигнатуры блока.1508235 Составитель И,Сигаловедактор А,Огар Техред Л.Олийнык, Корректор Т.Пали роизводственно-издательский комбинат "Патент", г. ужгород, ул. Гагарина, 10 Заказ 5541/50 Тираж 668 П ВНИИПИ Государственного комитета по изобре13035, Иосква, Ж, Раув дписное ениям и открытиям при ГКНТ СС кая наб., д. 4/5
СмотретьЗаявка
4345418, 17.12.1987
МОСКОВСКИЙ ИНЖЕНЕРНО-ФИЗИЧЕСКИЙ ИНСТИТУТ
ЗИБОРОВА МАРИНА ЭДУАРДОВНА, ИВАНОВ МИХАИЛ АЛЕКСАНДРОВИЧ, ТЫШКЕВИЧ ВЛАДИМИР ГЕОРГИЕВИЧ
МПК / Метки
МПК: G06F 11/28
Опубликовано: 15.09.1989
Код ссылки
<a href="https://patents.su/6-1508215-ustrojjstvo-dlya-kontrolya-khoda-programm.html" target="_blank" rel="follow" title="База патентов СССР">Устройство для контроля хода программ</a>
Предыдущий патент: Резервируемое устройство
Следующий патент: Устройство для защиты памяти
Случайный патент: Способ получения закиси азота и аппарат для осуществления способа