Главная цель. Выявление модификаций информации в постоянной памяти.
А.4.1 Сохранение слов с многобитовой избыточностью (например контроль ROM с модифицированным кодом Хэмминга)
Примечание - См. также А.5.6 и С.3.2. Ссылка на данный метод/средство приведена в МЭК 61508-2 (см. приложение А, таблица А.5).
Цель. Обнаружение всех однобитовых отказов, всех двухбитовых отказов и некоторых отказов во всех битах в 16-битовом слове.
Описание. Каждое слово в памяти расширяется несколькими избыточными битами для формирования модифицированного кода Хэмминга с расстоянием, равным 4 (по меньшей мере). При каждом считывании слова проверка избыточных битов может указывать, произошло ли искажение. При обнаружении различия вырабатывается сообщение об отказе. Эта процедура может также использоваться для обнаружения ошибок адресации путем вычисления избыточных битов для объединения слова данных с его адресом.
Литература:
und korrigierbare Codes. W.W. Peterson, , Oldenburg, 1967.
Error detecting and error correcting codes. R. W. Hemming, The Bell System Technical Journal 29 (2), 147-160, 1950.
A.4.2 Модифицируемая контрольная сумма
Примечание - Ссылка на данный метод/средство приведена в МЭК 61508-2 (см. приложение А, таблица А.5).
Цель. Обнаружение всех отказов нечетных битов, то есть приблизительно 50% всех возможных битовых отказов.
Описание. Контрольная сумма блока памяти образуется соответствующим алгоритмом, который обрабатывает все слова в блоке памяти. Эта контрольная сумма может храниться как дополнительное слово в ROM, либо может быть добавлена как дополнительное слово в блок памяти для того, чтобы алгоритм контрольной суммы выработал заранее заданное значение. В последнем тестировании памяти контрольная сумма создается снова с использованием того же алгоритма, и результат сравнивается с запомненным или заданным значением. При обнаружении различий вырабатывается сообщение об ошибке.
А.4.3 Сигнатура из одного слова (8 бит)
Примечание - Ссылка на данный метод/средство приведена в МЭК 61508-2 (см. приложение А, таблица А.5).
Цель. Обнаружение всех однобитовых отказов и всех многобитовых ошибок в слове при достижении приблизительно 99,6% всех возможных битовых отказов.
Описание. Содержимое блока памяти сжимается (с использованием аппаратных или программных средств) в одно слово памяти с использованием алгоритма контроля с помощью избыточного циклического кода (CRC). Типичный алгоритм CRC рассматривает все содержимое блока памяти как побайтовый или побитовый последовательный поток данных, в котором выполняется непрерывное полиномиальное деление с использованием полиномиального генератора. Остаток от деления сохраняется и представляет собой сжатое содержимое памяти - "сигнатуру" памяти. Сигнатура вычисляется каждый раз при последующем тестировании и сравнивается с уже запомненным значением. При обнаружении различий выдается сообщение об ошибке.
А.4.4 Сигнатура из двух слов (16 бит)
Примечание - Ссылка на данный метод/средство приведена в МЭК 61508-2 (см. приложение А, таблица А.5).
Цель. Обнаружение всех однобитовых ошибок и всех многобитовых ошибок в слове составляет примерно 99,998% всех возможных битовых ошибок.
Описание. Данная процедура вычисляет сигнатуру с использованием алгоритма контроля с помощью CRC, однако длина результирующего значения составляет по меньшей мере два слова. Расширенная сигнатура заносится в память, повторно вычисляется и сравнивается как одно слово. При обнаружении различий между сохраненной и повторно вычисленной сигнатурами выдается сообщение об ошибке.
А.4.5 Дублирование блока (например дублирование ROM в аппаратном и программном исполнении)
Примечание - Ссылка на данный метод/средство приведена в МЭК 61508-2 (см. приложение А, таблица А.5).
Цель. Обнаружение всех битовых ошибок.
Описание. Адресное пространство дублируется в двух областях памяти. Первая область памяти работает в нормальном режиме. Вторая содержит ту же информацию и доступна параллельно с первой. Их выходы сравниваются, и при обнаружении различий выдается сообщение об ошибке. Для обнаружения некоторых видов битовых ошибок данные должны запоминаться инверсно в одной из двух областей памяти и инвертироваться обратно при чтении.