SU1617442A1 - Устройство дл контрол хода программ - Google Patents
Устройство дл контрол хода программ Download PDFInfo
- Publication number
- SU1617442A1 SU1617442A1 SU884621915A SU4621915A SU1617442A1 SU 1617442 A1 SU1617442 A1 SU 1617442A1 SU 884621915 A SU884621915 A SU 884621915A SU 4621915 A SU4621915 A SU 4621915A SU 1617442 A1 SU1617442 A1 SU 1617442A1
- Authority
- SU
- USSR - Soviet Union
- Prior art keywords
- input
- inputs
- output
- elements
- group
- Prior art date
Links
Landscapes
- Hardware Redundancy (AREA)
Abstract
Изобретение относитс к вычислительной технике и может быть использовано дл контрол хода вычислительного процесса в автоматизированных системах управлени , построенных на однокристальных микропроцессорных БИС, программно-реализующих различные алгоритмы логического управлени , задаваемые в виде бинарных граф-схем алгоритмов. Целью изобретени вл етс повышение достоверности контрол . Устройство дополнительно содержит две группы элементов И, группу элементов ИЛИ, элементы НЕ, сумматоры по модулю два, элемент задержки, третью схему сравнени . Устройство позвол ет обнаруживать алгоритмические ошибки и оперативно выдавать соответствующую диагностическую информацию о характере этой ошибки. Кроме того, реализованный в устройстве вывод контрольной информации, использующий часть адресного пространства, позвол ет совместить р д рабочих и установочных операций, что уменьшает вводимую в рабочую программу временную избыточность. 3 ил.
Description
Изобретение относитс к вычислительной технике и может быть использовано дл контрол функционировани и хода вычислительного процесса в автоматизированных системах управлени (АСУ), построенных на основе однокристальных микропроцессорных БИС и программно реализующих различные алгоритмы логического управлени , задаваемые в виде бинарных граф схем .алгоритмов (БГСА) .
Цель изобретени - повьш1ение достоверности контрол . ; На фиг. 1 приведена функциональна схема устройства дл контрол
хода программ, на фиг. 3 - временные диаграммы работы устройства дл контрол хода программ.
Устройство дл контрол хода программ содержит тактовый вход 1 устройства , вход 2 обращени , вход 3 чтени , вход 4 записи, входы 5, 6 признака последовательности условных модулей, вход 7 эталонного сигнала, адресные входы 8, информационные входы 9, вход 10 признака выдачи выходного слова, вход 11 начала-окончани контрол , элементы И 12-16, группы 17 и 18 элементов И, элементы И 19-23, группу элементов ИЛИ 24,
элементы ИЛИ 25-31, элементы НЕ 32- 35, сумматор 36 по модулю два, групп 37 сумматоров по модулю два, триггеры 38-40, блок 41 хранени контрольного слова, счетчик 42, дешифратор
43,буферный регистр 44, схемы 45-47 сравнени , элемент 48 задержки, фор- мироватепь 49 и тульса, выходы 50-52 ошибки устройства и входы 53 уста- ьськк устройстна.
На фиг.2а представлена временна диаграмма работы устройства дл контрол хода программы на последнем машинном т.и кле выполнени команды вво- да входного слова в буферный регистр
44,блока 41 хранени контрольного слова; на фиг.2б - временна диаграм ма работы устройства на последнем машинном цикле выполнени контрольной команды типа OUT К при условии совпадени числа машинных циклов, заданного значени ми адресных линий А1-АЗ) с числом, сформированным на выходах счетчика 43 при отработке соответствующего фрагмента, а также
при совпадении эталонного значени перехода (разр д. А4) и результата промежуточных вычислений.
В строке 1 таблицы кодировани второго байта соответствую0щх контрольных команд представлен пор док кодировани второго байта команды ввода входного слова (); в строке 2 - пор док кодировани второго байта команды вывода выходного управл ющего слова (), в строке 3 - пЬр док кодировани адресных разр дов А1-АЗ, в строках 4 и 5 - пор док кодировани разр да А4 задающего на вход 7 устройства эталонное значение услови перехода, которое определ етс по бинарным графам схем алгоритмов в зависимости от того, по какому ребру (нулевому или единичному) осуществлен переход к вьтолнению следующего программного .фрагмента, реализующего соответствующую ему вершину БГСА; в строках 6-8 - пор док кодировани разр дов А5 и А6 при выполнении соответственно первой, второй и третьей последовательностей команд в программных фрагмантах с условными переходами.
Любой алгоритм логического управлени , заданный системой булевых функций , может быть представлен БГСА, осуществл ющим выбор выходных управл ющих слов, в качестве которых мо
)о
15
20 25
,« .Q r
35
50
5
гут выступать определенные комбинации значений управл юпщх сигналов. При этом, реализующа этот алгоритм микропроцессорна бинарна программа может быть составлена как некотора последовательность повтор ющихс фрагментов программы, образующих типовые программные модули, ориентирование как на обработку однобайтных наборов входных сигналов, хран щихс в регистрах общего назначени микропроцессорной БИС, так и на выдачу из определенных массивов пам ти управл ющих выходньк слон. Заметим , что в общем случае все фрагменты можно разделить на условные программные модули, служащие дл проверки логических условий переходов по ветв м алгоритма, и лиейные программные модули, служащие дл формировани или выдачи выходных управл ющих слов, причем контролируемое число машинных циклов в условных программных модул х зависит от значени логического услови перехода. Следовательно, ход вьшолнени такой программы можно считать правильным, если на любом из допустимых наборов входных переменных переход от выполнени предыдущего программного модул к последующему не приводит к искажению реализуемого алгоритма. Дл выделени программных модулей и организации ввода исходных данных, своевременной выдачи и обработки контрольной и управл ющей информации эти модули разделены контрольными командами , несущими дл устройства контрол р д эталонных и управл ющих сигналов . В качестве таких команд используютс команды обмена микропроцессора с внешними устройства типа IN В2 и OUT :В2(где В2 - второй байт команды, пор док кодировани которого в зависимости от назначени команды представлен в таблице. Таким образом, условием безошибочного выполнени того или иного программного модул может служить отсутствие ошибок типа:
-пропадание необходимой или по вление ложной команды в каком-либо программном модулеJ
-неверное получение .в ходе вычислений значени входной переменной (или логического услови перехода), определ емого пор док отработки ветвей алгоритма.
1
При этом отсутствие ошибки перво- го типа определ етс устройством путем аппаратной реализации в нем функции сравнени некоторого эталонного числа с числом синхроимпульсов , выдав л емых микропроцессорной БИС при отработке соответствующей последовательности команд модул , а ошибка второго типа обнаруживаетс путем сравнени вычисленного услови перехода с соответствующим значением входного сигнала , хранимого в определенных разр дах входного слова. Кроме того, дл исключени ошибочного ветвлени в программе, которое может быть вызвано сбо ми во флаговых регистрах БИС или искажени ми в маскирующих комбинаци х , вычисленное значение услови перехода, хранимое в аккумул торе БИС, также сравниваетс со значением эталонного сигнала, хранимого в одном из разр дов второго байта команд . Контроль правильности отработки модул осуществл етс устройством после его выполнени перед началом отработки микропроцессором следующего модул , что позвол ет, обнаруживать ошибку на любом шаге рабочей программы.
До начала контрол на входах 2-4 устройства присутствуют нулевые сигналы , блокирующие работу схемы устройства . Первьй 38 и второй 39 триггеры наход тс в нулевом состо нии, третий триггер 40 - в единичном. Триггеры блока 41 хранени контрольного слова и буферный регистр 44 обнулены На входах устройства в зависимости от максимальной длины контролируемых программных фрагментов задаетс комбинаци начальной установки счетчика 42, например значение двойки (0010). При выборе значени начальной установки счетчика 42 должно выполн тьс условие
Q (о(1) 5 -1 (i Г) ,
где Q - комбинаци начальной установки счетчика 42, Р - модуль счета счетчика 42, - один из типичных фрагментов программы, подлежащих контролю ,
1.(о(;) - число машинных тактов работы МП при обработке фрагмента ( программы, п - общее количество типичных фрагментов, составл ющих
174426
программу и различных ш; числу манинных тактов. Дл упрощени схемы сравнени , вы- польенной на элементах И 19-23, может быть рекомандовано норьо1рование длины контролируемых фрагментов путем дополнени их до максимальной длины, например, пустыми командами
10
типа NOP.
При обработке любой из МБП первой из отрабатываемых микропроцессором команд вл етс команда ввода входного слова от внешнего устройства 15 ввода в микропроцессор, например, команда . На последнем, цикле выполнени этой команды на входы 2 и 3 устройства выдаютс единичные сигналы а на шине адреса УМС помещаетс неко- 20 торый адрес, соответствующей второму байту команды ввода. Дл инициализации устройства контрол этот адрес в разр де АО содержит единицу, котора через вход 11 устройства поступает на 25 первый вход четвертого 15 элемента И далее,проход через формирователь 49 импульса,переводит по заднему фронту импульса триггер 40 в единичное состо ние . Одновременно с этим на выходах эле- 30 ментов 14 и 25 формируетс единичный сигнал, который через элемент 48 задержки производит начальную установку счетчика 42, подтверждает исходные состо ни триггеров 39 и 40 и форми- 35 РУет единичные сигналы на выходах элементов ИЛИ 24, первых входах элементов И группы 17 и входе обращени CS буферного регистра 44. Таким образом, поступающее на шину данных входное 40 слово записываетс не только в аккумул тор МП, но и через входы 9 устройства и элементы И группы 17 - в буферный регистр 44 и в триггеры блока 41 хранени контрольного слова. 45 Отрабатываемые затем последовательности команд, образующие контролируемые фрагменты, формируют на выходах счетчика 42 с помощью синхросигналов, поступающих в каждый машинный такт по 50 входу 1 устройства, через элемент И 12 и счетный вход (+1), определенные комбинации Сигналов, которые на последних циклах выполнени контрольных команд ОиТ СК, раздел ющих фраг- JJ менты, формируют на одном из вькодов элементов И 19-23 единичные сигналы, которые, проход через элемент ИЛИ 28, подтверждают ед1-;ничное состо ние триггера 40. В случае, если в контро-i
лируемом фрагменте не выполн етс кака -либо команда или по вл етс ложна , то на выходе 50 устройства по вл етс сигнал ошибки, которьй формируетс либо по выходу (+Р) счет чика 42, либо на последнем машинном цикле контрольной команды OUT.K, так как на выходах элементов И 19-23 нет значени единицы и, следовательно , триггер 40 переноситс в нулевое состо ние. В случае, если в соответствии с бинарным графом реализуемого алгоритма к тому или иному фрагменту программы предусмотрен переход по нескольким пут м вычислени , то перед этим фрагментом программы ставитс соответствующее количество контрольных команд , кажда из которых имеет определенное значение второго байта команды. Дл -того , чтобы эти контрольные команды не воспринимались как ложные, на заключительном машинном цикле их выполнени с помощью счетчика 42, элементов И 18, ИЛИ 26 и 30 на входы начальной установки триггеров 39 и 40 и блока 41 подаетс сигнал, исключающий выдачу ложного сигнала ошибки на выходах 50-52 устройства.
Дл исключени алгоритмических ошбок ветвлени , возникающих вследстви неверного анализа микропроцессором входных переменных (логических условий переходов) после отработки каждого из модулей условного перехода при выполнении контрольных команд OUT .К устройством провер тс соответствие .значени логического услови перех.р- да, полученного маскированием в аккумул торе микропроцессора, значению соответствующей существенной переменной х, хран щейс в буферном регистре 44 устройства контрол . При этом в последнем цикле вьтолнени соответствующей контрольной команды с линий шины адреса на входы 8 устройства поступает код выбираемого триггера из блока 41 хранени контрольного слова, в который с помощью дешифратора 43, элементов И 18, ИЛИ 24 и соответствующих управл ющих сигналов записи и обращени записываетс вычисленное микропроцессором зна- логического услови перехода, поступающего в это же врем из аккумул тора МП через шину данных, входы 9 устройства и элементы И 17 на В-ьход соответствующего триггера
0
5
0
5
0
5
0
5
0
5
блока 41. Если при этом значение, вычисленное в аккумул торе микропроцес- ора, оказываетс неверным и соответствующий триггер блока 41 измен ет свое состо ние на противоположное, то на выходе одного из су маторов по модулю два группы 37 по витс единица , что возникает вследствие расхождени значений, поступающих с соответ- ствутощего выхода триггера блока 41 и соответствующего выхода Q буферного регистра 44 на первый и второй входы этого сумматора по модулю дна. Единица , проход через элемент ИЛИ 31, вьщает на выходе 52 сигнал ошибки ветвлени . Кроме того, в случае, если значение переменной вычислено верно и на выходе 52 отсутствует сигнал ошибки, а переход в программе осуществлен все же по другому значению, что вл етс следствием искажени значени флагового регистра или маски, служащей дл определени значений переменных х , то на выходе элемента ИЛИ 27 по вл етс значение, отличное от значени , поступающего с шины адреса на вход 7 устройства и на первый вход сумматора 36 по модулю два. В результате этого второй триггер 39 перебрасьшаетс в единицу, а на выходе 51 устройства выдаетс сигнал ошибки маски. При отработке микропроцессором заключительного на каждом пути вычислени реализуемого алгоритма фрагмента вьщачи выходного управл ющего слова на третьем цикле выполнени команды соответствующий пход 10 признака выдачи выходного слова устройства поступает значение единицы, котора в сочетании с сигналами, полученными на выходах счетчика 42, формирует при верной отработке этого модул на выходах элементов И 19 и ИЛИ 28 единичный сигнал, подтверждающий единичное состо ние третьего триггера 40 и отсутствие ошибки. Кроме того, единичный признак ЛО 1 окончани контрол , поступивший при выполнении команды вывода вход 11 устройства, в сочетании с сигналами записи и обращени переводит через входы 2 и 4 устройства первый триггер 38 в нулевое состо ние, а единичный сигнал с выхода элемента И 16, поступа через элемент ИЛИ 26 на R-вход второго триггера 39 и первые входы элементов И 24, запрещает выдачу ложных сигна91
лов ошибки ветвлени и маскировани с выходов 51 и 52 устройства. При выполнении команд IN ВВ или OUT ВЫВ , служащих дл ввода и вывода входного и выходного слов, а также при вьшолнении каждой из контрольных команд OUT выходе элемента ИЛИ 25 формируетс единичный сигнал, который, проход через элемент 48 задержки на вход V счетчика 42, устанавливает его в то начальное состо ние , которое задано на входах 53 начальной установки. Элемент задержки в данном случае служит дл обеспечени взаимодействи и срабатывани соответствующих элементов, а также дл исключени возможных сост заний , возникающих при работе схемы. Таким образом, сочетание единичных признаков начала .(окончани ) контрол и типа контролируемых фрагментов представл ет пользователю возможность адресовать в момент входного слова до 128 устройств ввода, в момент вывода - до 64 устройств вывода.;
Следовательно, предлагаемое устройство дл контрол хода программы по сравнению с известным позвол ет обнаруживать программные ошибки, вызываемые не только некорректным выполнением отдельных фрагментов самой программы, а также обнаруживать и выдавать соответствующую диагностическую информа1щю об алгоритмических ошибках, вызываемых неверным анализом логических условий пе- р1еходов в программе, которые вл ютс следствием сбоев аппаратуры или искажений исходных данных. Кроме того , устройство позвол ет анализировать и получать неолходимую информацию о характере обнаруженной ошибки , что существенно повышает оперативность и эффективность принимаемых оператором или управл юш м устройством корректирующих мер.
Claims (1)
- Формула изобретениУстройство дл контрол хода программ , содержащее дешифратор, счетчик , буферный регистр, блок хранени контрольного слова, первую и вторую схемы сравнени , формирователь импульса, первый, второй и третий триггеры, два элемента -ИЛИ, дес ть элементов И, причем адресные входы210устройства соединены с информашюн- . ными входами дешифратора, отличающеес тем, что, с целью повышени достоверности контрол , в устройство введены две группы элементов И, группа элементов ИЛИ, п ть элементов ИЛИ, четыре элемента НЕ, группа сумматоров по модулю два,сумматор по модулю два, треть схема сравнени , элемент задержки, причем, вход записи устройства подключен к первым входам первого и второго элемента И, вход чтени устройства подклщчен к первым входам третьего и четвертого элементов И, вход начала контрол устройства подключен к вторым входам первого и четвертого элементов И, вход обращени устройствасоединен с вторыми входами второго и третьего элементов И, выход четвертого элемента И через формирователь импульса соединен с единичным входом первого триггера, пр мойвыход которого соединен с первым входом п того элемента И, второй вход которого подключен к тактовому входу устройства, выход п того элемента И соединен со счетным входом счетчика,группа информационных входов которого подключена к группе установочных входов устройства, выход первого элемента И соединен с нулевым входом первого триггера и первым входом первого элемента ИЛИ, второй вход которого соединен с входом установки второго триггера и подключен к выходу второго элемента ИЛИ, инверсный выход первого триггера соединен с первымвходом второго элемента ИЛИ, с первым входом сумматора по модулю два и входами началь -1Й установки буферного регистра и олока хранени контрольного слова, выходы второго итретьего элементов И соединены с первым и вторым входами третьего элемента ИЛИ, выход которого соединен с первыми входами элементов И первой группы, вторые входы которых подключены к группе информационных входов устройства, выходы элементов И первой группы соединены с информационными входами буферного регистра, вход разрешени которого соединен с первыми входами элементов ИЛИ группы и подключен к входу чтени устройства, вторые входы элементов ИЛИ группы соединены с выходами дешифратора, стробирующий вход дешифратора соединен с выходом второго элемента И, выходы элементов ИЛИ группы соединены с первыми входами соответствующих элементов И второй группы, выход первого элемента ИЛИ соединен с нулевым входом третьего триггера и через первый элемент НЕ - с вторыми входами элементов И второй группы, выходы которых подключены к синхровходам блока хранени контрольного слова, выходы элементов И первой группы соединены с входами четвертого элемента ИЛИ и информационными входами блока хранени контрольного слова, выходы буферного регистра соединены с первыми входами соответствующих сумматоров по МОДУЛЮ два группы, вторые входы которых соединены с выходами блока хранени контрольного слова, выходы сумматоров по модулю два группы соединены с входами п того элемента ИЛИ, выход которого вл етс первым выходом ошибки устройства, пр мой выход третьего триггера вл етс вторым выходом ошибки устройства, выход третьего элемента ИЛИ соединен с син- хровходами второго и третьего триггеров и через элемент задержки - с входом разрешени записи счетчика, выход переполнени которого соединен с первым входом седьмого элемента ИЛИ, второй вход которого соединен с инверсным выходом второго триггера, выход которого вл етс третьим выходом ошибки устройства, выход первого разр да счетчика соединен с первыми входами элементов И с шестого по дев тый, выход второго разр да счетчика соединен с вторыми входами седьмого, дев того элементов И и первым входом дес того элемента И, выход третьего разр да счетчикасоединен с вторыми входами шестого , восьмого, дес того элементов И и третьим входом дев того элемента И, выход четвертого разр да счетчика соединен с третьими входами седь- мого, восьмого и дес того элементов И, выходы схем сравнени с первой по третью соединены с четвертыми входаQ ми соответственно восьмого, седьмого и дес того элементов И, выход второго элемента И соединен с третьим шестого элемента И, выходы элементов И с седьмого по дес тый сот5 единены с входами шестого элемента ИЛИ, выход которого соединен с инфор мационным входом второго триггера, первый вход признака последовательности условных модулей устройства0 соединен с первыми входами первой и второй схем сравнени и через второй элемент НЕ - с первым входом третьей схемы сравнени , второй вход признака последовательности условных5 модулей устройства соединен с вторыми входами первой и третьей схем сравнени и через третий элемент НЕ - с вторым входом второй схемы сравнени , выход четвертого элемента ИЛИ0 соединен с вторым входом сумматора по модулю два, с третьим входом первой схемы сравнени и через четвертый элемент НЕ - с третьими входами второй и третьей схем сравнени , третий вход сумматора по модулю два подключен к входу эталона устройства, а выход - к информационному входу третьего триггера, выход шестого элемента И соединен с вторым входом второгоо элемента ИЛИ, четвертый вход дев того элемента И подключен к входу приз-, нака выдачи выходного слова устройства .5Кол зналивирусного р эрхла вхолного словж (логические условиперехода)- послеповательностъ выполиекн условпого модул2- последовательность вылилненн условного модул3- последовательность выполнени условного модулИрин, ,,«„,. знаком х ово,н««но опнп иэ возможных значеннЛ. соотвётствувшх разр дов1- соответстfO, если переход по комаиле IZ 1 I .г™ „.п«ft NZ 1 соответствуввие знапенн лоппсскихJ. если переход ло J условий переходов в условных модул х МВП.AfТМ УАЗАлрсс устройств вода входных слов Адрес устройств вывоаа Btnojimn слово 1о t о Iо IXАвAf - Р А( AS - Р А .Л/т. г
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU884621915A SU1617442A1 (ru) | 1988-12-19 | 1988-12-19 | Устройство дл контрол хода программ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU884621915A SU1617442A1 (ru) | 1988-12-19 | 1988-12-19 | Устройство дл контрол хода программ |
Publications (1)
Publication Number | Publication Date |
---|---|
SU1617442A1 true SU1617442A1 (ru) | 1990-12-30 |
Family
ID=21415910
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SU884621915A SU1617442A1 (ru) | 1988-12-19 | 1988-12-19 | Устройство дл контрол хода программ |
Country Status (1)
Country | Link |
---|---|
SU (1) | SU1617442A1 (ru) |
-
1988
- 1988-12-19 SU SU884621915A patent/SU1617442A1/ru active
Non-Patent Citations (1)
Title |
---|
Анцупов С.А. и др. Диагностирование управл ющих устройств по схемам алгоритмов. - Автоматика и телемеха;ника, 1986, № 10, с.132, рис.5. . Авторское.свидетельство СССР 123;6487, кл. G 06 F 11/28, 1986. * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4956807A (en) | Watchdog timer | |
US4498178A (en) | Data error correction circuit | |
JPH0833842B2 (ja) | 論理演算装置 | |
SU1617442A1 (ru) | Устройство дл контрол хода программ | |
EP0012242A1 (en) | Digital data processor for word and character oriented processing | |
SU1644392A1 (ru) | Устройство защиты от ошибок | |
SU966694A1 (ru) | Микропрограммное устройство управлени с контролем переходов | |
SU1513455A1 (ru) | Устройство дл контрол правильности выполнени команд микропроцессорной системы | |
SU767766A1 (ru) | Устройство дл определени четности информации | |
JP2693885B2 (ja) | マイクロコンピュータ | |
SU364967A1 (ru) | Устройство для контроля постоянного запоминающего блока | |
SU1325417A1 (ru) | Устройство дл контрол | |
SU1649551A1 (ru) | Устройство дл контрол хода программ | |
SU1615756A1 (ru) | Устройство дл распознавани образов | |
SU607349A1 (ru) | Устройство дл мажоритарного декодировани | |
SU1550626A1 (ru) | Устройство дл коррекции кодов | |
SU1599862A1 (ru) | Устройство дл контрол микропроцессора | |
SU1249521A1 (ru) | Устройство дл контрол следовани модулей программы | |
SU797078A1 (ru) | Устройство дл счета импульсов | |
SU898431A1 (ru) | Микропрограммное устройство управлени | |
SU1481775A1 (ru) | Устройство дл контрол хода программ | |
SU830386A1 (ru) | Микропрограммное устройствоупРАВлЕНи | |
SU1116426A1 (ru) | Устройство дл поиска чисел в заданном диапазоне | |
SU1290259A1 (ru) | Устройство дл временного программного управлени | |
SU1264174A1 (ru) | Устройство дл обслуживани запросов |