Le Processeur Codé: un nouveau concept appliqué a la sécurité des systémes de transports. Gabriel, Martin, Wartski, Revue Générate des chemins de fer, No. 6, June 1990.
A.3.5 Программное обнаружение несовпадений
Примечание - Ссылка на данный метод/средство приведена в МЭК 61508-2 (см. приложение А, таблицу А.4).
Цель: оперативное обнаружение отказов в процессоре путем динамического программного сравнения.
Описание: два модуля взаимно обмениваются данными (включая результаты, промежуточные результаты и тестируемые данные). Если при сравнении данных, выдаваемых с использованием программных средств в каждом модуле, обнаруживаются различия, то это приводит к выдаче сообщений об отказе.
Литература:
Microcomputers in safety technique - an aid to orientation for developer and manufacturer. H. Hölscher, J. Rader, Verlag TÜV Rheinland, Köln, 1986, ISBN 3-88585-315-9.
А.4 Постоянная память
Главная цель: выявление модификаций информации в постоянной памяти.
А.4.1 Сохранение слов с многобитовой избыточностью (например, контроль ROM с модифицированным кодом Хэмминга)
Примечание - См. также А.5.6 и С.3.2. Ссылка на данный метод/средство приведена в МЭК 61508-2 (см. приложение А, таблицу А.5).
Цель: обнаружение всех однобитовых ошибок, всех двухбитовых ошибок и некоторых ошибок во всех битах в 16-битовом слове.
Описание: каждое слово в памяти расширяется несколькими избыточными битами для формирования модифицированного кода Хэмминга с расстоянием, равным 4 (по меньшей мере). При каждом считывании слова проверка избыточных битов может указывать, произошло или нет искажение. При обнаружении различия вырабатывается сообщение об ошибке. Эта процедура может также использоваться для обнаружения ошибок адресации путем вычисления избыточных битов для объединения слова данных с его адресом.
Литература:
Error detecting and error correcting codes. R. W. Hemming, The Bell System Technical Journal 29 (2), 147-160, 1950.
Prüfbare und korrigierbare Codes. W. W. Peterson, München, Oldenburg, 1967.
A.4.2 Модифицируемая контрольная сумма
Примечание - Ссылка на данный метод/средство приведена в МЭК 61508-2 (см. приложение А, таблицу А.5).
Цель: обнаружение всех ошибок нечетных битов, то есть приблизительно 50 % всех возможных битовых ошибок.
Описание: контрольная сумма блока памяти образуется соответствующим алгоритмом, который обрабатывает все слова в блоке памяти. Эта контрольная сумма может храниться как дополнительные слово в ROM, либо может быть добавлена как дополнительное слово в блок памяти для того, чтобы алгоритм контрольной суммы выработал заранее заданное значение. В последнем тестировании памяти контрольная сумма создается снова с использованием того же алгоритма, и результат сравнивается с запомненным или заданным значением. При обнаружении различий вырабатывается сообщение об ошибке.
Литература:
Microcomputers in safety technique - an aid to orientation for developer and manufacturer. H. Hölscher, J. Rader, Verlag TÜV Rheinland, Köln, 1986, ISBN 3-88585-315-9.
A.4.3 Сигнатура одного слова (8 бит)
Примечание - Ссылка на данный метод/средство приведена в МЭК 61508-2 (см. приложение А, таблицу А.5).
Цель: обнаружение всех однобитовых ошибок и всех многобитовых ошибок в слове при достижении приблизительно 99, 6 % всех возможных битовых ошибок.
Описание: содержимое блока памяти сжимается (с использованием аппаратных или программных средств) в одно слово памяти с использованием алгоритма контроля с помощью избыточного циклического кода (CRC). Типичный алгоритм CRC рассматривает все содержимое блока памяти как побайтовый или побитовый последовательный поток данных, в котором выполняется непрерывное полиномиальное деление с использованием полиномиального генератора. Остаток от деления сохраняется и представляет собой сжатое содержимое памяти - «сигнатуру» памяти. Сигнатура вычисляется еще раз в последующем тестировании и сравнивается с уже запомненным значением. При обнаружении различий выдается сообщение об ошибке.
Литература:
Calculating an error checking character in software. S. Vasa, Computer Design, 5, 1976.
Berechnung von Fehlererkennungswahrscheinlichkeiten bei Signaturregistem. D. Leisengang, Elektronische Rechenanlagen 24, H. 2, S. 55-61, 1982.
A.4.4 Сигнатура двойного слова (16 бит)
Примечание - Ссылка на данный метод/средство приведена в МЭК 61508-2 (см. приложение А, таблицу А.5).
Цель: обнаружение всех однобитовых ошибок и всех многобитовых ошибок в слове составляет примерно 99, 998 % всех возможных битовых ошибок.
Описание: данная процедура вычисляет сигнатуру с использованием алгоритма контроля с помощью CRC, однако длина результирующего значения составляет, по меньшей мере, два слова. Расширенная сигнатура заносится в память, повторно вычисляется и сравнивается как одно слово. При обнаружении различий между сохраненной и повторно вычисленной сигнатурами выдается сообщение об ошибке.
Литература:
Signaturanalyse in der Datenverarbeitung. D. Leisengang, M. Wagner, Elektronik 32, H. 21, S. 67-72, 1983.
Signaturregister für selbsttestende ICs. B. Könemann, J. Mucha, G. Zwiehoff, Gropttintegration/ NTG-Fachtagung Baden-Baden, S. 109-112, April 1977.
A.4.5 Повторение блока (например дублирование ROM в аппаратном и программном исполнении)
Примечание - Ссылка на данный метод/средство приведена в МЭК 61508-2 (см. приложение А, таблицу А.5).
Цель: обнаружение всех битовых ошибок.
Описание: адресное пространство дублируется в двух областях памяти. Первая область памяти работает в нормальном режиме. Вторая - содержит ту же информацию и доступна параллельно с первой. Их выходы сравниваются, и при обнаружении различий выдается сообщение об ошибке. Для обнаружения некоторых видов битовых ошибок данные должны запоминаться инверсно в одной из двух областей памяти и инвертироваться обратно при чтении.
Литература:
Microcomputers in safety technique - an aid to orientation for developer and manufacturer. H. Hölscher, J. Rader, Verlag TÜV Rheinland, Köln, 1986, ISBN 3-88585-315-9.
Computers can now perform vital safety functions safely. Otto Berg von Linde, Railway Gazette International, Vol. 135, No. 11, 1979.
A.5 Память с произвольным доступом
Главная цель: обнаружение отказов во время адресации, записи, запоминания и считывания.
А.5.1 Тесты «шахматная доска» и «марш» для памяти с произвольным доступом
Примечание - Ссылка на данный метод/средство приведена в МЭК 61508-2 (см. приложение А, таблицу А.6).
Цель: обнаружение преимущественно статических битовых ошибок.
Описание: расположенная в шахматном порядке битовая комбинация нулей и единиц записывается в ячейки памяти с битовой организацией. Затем эти ячейки анализируются попарно с тем, чтобы убедиться в их одинаковости и правильности. Адрес первой ячейки такой пары является переменным, а адрес второй ячейки этой пары образуется путем битового инвертирования первого адреса. При первом прохождении диапазон адресов памяти проходится в направлении более высоких адресов переменных адресов, а при втором прохождении - в направлении более низких адресов. После этого оба прохождения повторяются с заранее заданным инвертированием. При обнаружении какого-либо различия выдается сообщение об отказе.
При «маршевом» тестировании памяти с произвольным доступом ячейки памяти с битовой организацией инициализируются унифицированным потоком битов. При первом прохождении ячейки анализируются в нисходящей последовательности; проверяется правильность содержимого каждой ячейки и ее содержимое инвертируется. Основа, созданная в первом прохождении, рассматривается при втором прохождении в убывающем порядке и так же обрабатывается. Первые прохождения повторяются с инвертируемыми предварительными значениями в третьем и четвертом прохождениях. При обнаружении различий выдается сообщение об отказе.
Литература:
Memory testing. W. G. Fee, LSI Testing (Tutorial at COMPCON 11 in San Francisco), IEEE Computer Society, W. G. Fee (ed.), 81-88, 1978.
Memory testing. P. Rosenfield, Electronics and Power, H. 1, P. 26-31, 1979.
Halbleiterspeicher-Testfolgen. Th. John, E. Schaefer, Elektronikpraxis, H. 6, 18-26 and H. 7, 10-14, 1980.
A.5.2 Тест «прогулочная дорожка» для памяти с произвольным доступом
Примечание - Ссылка на данный метод/средство приведена в МЭК 61508-2 (см. приложение А, таблицу А.6).
Цель: обнаружение статических и динамических ошибочных битов и перекрестных помех между ячейками памяти.
Описание: тестируемая область памяти инициализируется унифицированным потоком битов. Затем первая ячейка инвертируется и остальная часть памяти анализируется на правильность. После этого первая ячейка повторно инвертируется для возврата в исходное значение, и вся процедура повторяется для следующей ячейки. Второе прохождение «модели блуждающего бита» осуществляется при инверсии всех первоначально назначенных значений памяти. При обнаружении различий выдается сообщение об ошибке.
Литература:
Memory testing W. G. Fee, LSI Testing (Tutorial at COMPCON 11 in San Francisco), IEEE Computer Society, W. G. Fee (ed.), 81-88, 1978.
Techniques for testing the microprocessor family. W. Barraclough, A. Chiang, W. Sohl, Proceedings of IEEE 64 (6), 943-950, 1976.
A.5.3 Тест «бегущий код» для памяти с произвольным доступом
Примечание - Ссылка на данный метод/средство приведена в МЭК 61508-2 (см. приложение А, таблицу А.6).
Цель: обнаружение статических битовых ошибок и больших пропорций динамических связей.
Описание: при тестировании памяти с произвольным доступом «попарной записью-считыванием» выбранная область памяти сначала инициализируется унифицированно (то есть все 0 или все 1). После этого первая ячейка памяти тестируется и затем инвертируется, и все остальные ячейки анализируются на правильность содержимого. После каждого доступа по чтению к одной из оставшихся ячеек инвертированная ячейка также проверяется. Эта процедура повторяется для каждой ячейки в выбранной области памяти. Второе прохождение выполняется противоположно первому. Любые различия приводят к выдаче сообщения об ошибке.
Тестирование «прозрачной попарной записью-считыванием» представляет собой вариацию описанной выше процедуры: вместо инициализации всех ячеек в выбранной области памяти существующее содержимое остается неизменным, а для сравнения содержимого набора ячеек используются контрольные суммы (сигнатуры). Выбирается первая тестируемая ячейка области памяти и вычисляется и сохраняется сигнатура S1 всех оставшихся ячеек области. Затем тестируемые ячейки инвертируются, и повторно вычисляется сигнатура S2. (После каждого доступа по чтению к одной из оставшихся ячеек инвертируемая ячейка также проверяется). Сигнатура S2 сравнивается с сигнатурой S1 и при любом различии выдается сообщение об ошибке. Тестируемая ячейка повторно инвертируется для повторного установления исходного содержимого и сигнатура S3 всех оставшихся ячеек повторно вычисляется и сравнивается с сигнатурой S1. Любые различия приводят к выдаче сообщения об ошибке. Все ячейки памяти в выбранной области тестируются тем же способом.
Литература:
Entwurf von Selbsttestprogrammen für Mikrocomputer. E. Maehle, Microcomputing. Berichte der Tagung III/79 des German Chapter of ACM, W. Remmele, H. Schecher, (ed.), Stuttgart, Teubner, 204-216, 1979.
Periodischer Selbsttest einer mikroprocessorgesteuerten Sicherheitsschaltung. U. Stinnesbek, Diplomarbeit am Institut fur theoretische Elektrotechnik der RWTH Aachen 1980.
A.5.4 Тест «Абрахам» для памяти с произвольным доступом
Примечание - Ссылка на данный метод/средство приведена в МЭК 61508-2 (см. приложение А, таблицу А.6).
Цель: обнаружение всех постоянных отказов и отказов в соединениях между ячейками памяти.
Описание: диагностический охват выше, чем при тесте «попарная запись-считывание». Число операций, необходимых для выполнения всего тестирования памяти, составляет примерно 30 n, где n - число ячеек памяти. Тестирование может быть «прозрачным» при выполнении запоминания и тестирования в различных временных сегментах в периоде рабочего цикла.
Литература:
Efficient Algorithms for Testing Semiconductor Random-Access Memories. R. Nair, S. M. Thatte, J. A. Abraham, IEEE Trans. Comput. C-27 (6), 572-576, 1978.
A.5.5 Однобитовая избыточность (например контроль памяти с произвольным доступом с помощью бита четности)
Примечание - Ссылка на данный метод/средство приведена в МЭК 61508-2 (см. приложение А, таблицу А.6).
Цель: обнаружение 50 % всех возможных битовых отказов в тестируемой области памяти.
Описание: каждое слово в памяти расширяется на один бит (бит четности), который дополняет каждое слово до четного или нечетного числа логических единиц. Четность слова данных проверяется при каждом чтении. При обнаружении ложного числа единиц выдается сообщение об ошибке. Выбор четности или нечетности должен осуществляться так, чтобы всякий раз в случае отказа не выдавалось ничего кроме нулевого (0) и единичного (1) слова, вырабатывалось уведомление о том, что это слово неправильно закодировано. Контроль четности также может быть использован для обнаружения ошибок адресации, если четность определяется для объединения слова данных с его адресом.
Литература:
Integrierte Digitalbausteine. К. Reiβ, H. Liedl, W. Spichall, Berlin, 1970.
A.5.6 Контроль памяти с произвольным доступом с помощью модифицированного кода Хэмминга или обнаружение ошибок данных с кодами обнаружения и исправления ошибок (EDC)
Примечание - См. также А.4.1 и С.3.2. Ссылка на данный метод/средство приведена в МЭК 61508-2 (см. приложение А, таблицу А.6).
Цель: обнаружение всех нечетных битовых отказов, всех двухбитовых отказов, некоторых трехбитовых отказов и некоторых многобитовых отказов.
Описание: каждое слово в памяти расширяется несколькими избыточными битами для выработки модифицированного кода Хэмминга с расстоянием Хэмминга равным, по меньшей мере, 4. При каждом считывании слова проверка избыточных битов может указывать, произошло или нет искажение. При обнаружении различий выдается сообщение об отказе. Эта процедура может быть также использована для обнаружения ошибок адресации при вычислении избыточных битов для объединения слова данных с его адресом.
Литература:
Error detecting и error correcting codes. R. W. Hamming, The Bell System Technical Journal 29 (2), 147-160, 1950.
Prüfbare und korrigierbare Codes. W. W. Peterson, München, Oldenburg, 1967.
А.5.7 Дублирование со сравнением памяти с произвольным доступом с аппаратными или программными средствами и тестирование чтением/записью
Примечание - Ссылка на данный метод/средство приведена в МЭК 61508-2 (см. приложение А, таблицу А.6).