блокового и пошагового контроля
Из совокупности критериев, предложенных в подразд. 4.3.7, выберем следующие критерии для сравнения рассмотренных ранее методов и СВК:
– обнаруживающие свойства;
– задержку обнаружения ошибок;
– модификацию рабочей программы и сложность процедур модификации;
– сложность реализации СВК и объем дополнительной постоянной памяти.
Для конкретизации некоторых оценок используем наиболее типичных представителей пошагового и блокового методов контроля, реализации которых достаточно детализированы и рассмотрены ранее.
Предположим, что все ошибки равновероятны. Рассмотрим следующие дефекты механизмов работы МП:
1. Механизм выборки команд:
– ошибки в формировании адреса памяти команд;
– дефект дешифратора адреса ПЗУ;
– дефект адресной шины.
Вероятность необнаружения ошибки будет выглядеть следующим образом. Для пошагового метода
где k – число избыточных разрядов кода.
Для блочного метода
где m – разрядность слова.
2. Механизм хранения команд:
– однократный дефект (искажение одного бита в одной ячейке):
Р н.о = 0 для обоих методов;
– двукратный дефект (искажение двух битов в одной ячейке):
Р н.о = 0 для обоих методов;
– двукратный дефект (искажение по одному биту с одинаковым порядковым номером в двух ячейках):
для пошагового метода Р н.о = 0;
для блочного метода Р н.о = 1.
3. Механизм передачи данных:
– константный дефект линии шины данных:
для пошагового метода Р н.о = 0;
для блочного метода Р н.о = 1, если для всех блоков выполняется четное обращение к ПЗУ; Р н.о = 0, если существует блок с нечетным числом обращений к ПЗУ (нечетное число анализируемых байтов команд).
В предположении равновероятности всех ошибок и равновесности всех механизмов (что является очень сильной идеализацией):
для пошагового метода Р н.о = 0(10)-2;
для блочного метода Р н.о = 0(10)-1.
При пошаговом методе сравнение с эталоном выполняется при каждом обращении к ПЗУ, поэтому ошибка обнаруживается в момент первого проявления.
При блочном методе минимальная задержка формирования сигнала ошибки равна времени выполнения блока.
По этому критерию пошаговый метод предпочтительнее.
Блочный метод принципиально основан на модификации программы. Один из отрицательных моментов, связанных с модификацией программы, состоит в трудности создания надежной процедуры модификации (проблема надежности программного обеспечения).
Для пошагового метода необходима процедура, вычисляющая избыточную часть кода и формирующая признаки выделенных команд, что на порядок проще модификации исходной программы для блочного метода.
По этому критерию пошаговый метод предпочтительнее.