Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Контроль цифровых устройств.doc
Скачиваний:
2
Добавлен:
01.04.2025
Размер:
869 Кб
Скачать
☆

16.4. Аппаратурно-микропрограммный контроль

Существо аппаратурно-микропрограммного контроля (АМП) состоит в том, что в узел (устройство) вводится избыточная аппаратура, которая реализует контрольные микропрограммы либо во время простоев, либо прерывая работу устройства по основной программе на короткие промежутки времени. АМП контроль может осуществляться периодически в виде единичных контрольных актов, во время которых может проверяться как часть, так и вся контролируемая аппаратура.

Для АМП контроля ОА, выполняющего операции арифметического сложения, вычитания, умножения и деления, полная проверка может быть осуществлена, если нужно проверить правильность выполнения следующих стандартных микроопераций, входящих в состав вышеперечисленных операций:

запись информации с шины в регистры;

выдача информации из регистров в сумматор;

пересылка информации из одного регистра в другой;

сдвиг информации, содержащийся в регистре;

выдача информации из регистра на шину;

инвертирование содержимого регистра;

увеличение (уменьшение) на единицу содержимого регистра-счётчика.

Следовательно, если сформировать контрольные микропрограммы, в состав которых хотя бы по одному разу включалась каждая стандартная микрооперация, то аппаратура ОА была бы проверена полностью.

При проверке оперативной памяти невозможно задать произвольные входные слова, так как произойдёт искажение хранящейся информации. Следовательно, контроль должен осуществляться с теми словами, которые записаны в ячейках памяти.

Оперативная память хранит слова, представленные в двоичном коде, поэтому в каждом разряде могут быть ошибки только двух видов. В одном случае, когда при считывании в данном разряде всегда получают единицу, независимо от того, что было ранее записано, ошибка называется закреплением единицы. В другом, когда происходит считывание только нуля, ошибка называется закреплением нуля.

Для выявления отказов, приводящих к указанным ошибкам, необходимо вначале произвести считывание содержимого ячейки памяти, запомнить его, а затем инвертировать и вновь произвести запись и считывание. Несовпадение результатов первого и второго считываний во всех разрядах свидетельствует об отсутствии ошибки.

Аппаратурно-микропрограммный контроль достаточно эффективен, требует очень мало дополнительного времени для своей реализации, количество контрольного оборудования невелико.

К недостаткам этого вида контроля можно отнести то, что он позволяет обнаруживать лишь систематические ошибки (вызванные постоянными отказами) и не может выявить сбои в процессе выполнения программы.

16.5. Контроль по четности-нечетности

Если в систематическом коде выделен один контрольный разряд (k = 1), то к каждому двоичному числу добавляется один избыточный разряд и в него записывается 1 или 0 с таким условием, чтобы сумма цифр в каждом числе, включая контрольный разряд, была по модулю 2 равна 0 для случая четности или 1 для случая нечетности. Появление ошибки обнаружится по нарушению четности (нечетности).

Для кодирования по методу четности-нечетности разрешенными будут только половина возможных комбинаций. Появление ошибок нечетной кратности (количество искаженных бит в кодовом слове нечетно) обнаруживается с вероятностью 100 %. Ошибки четной кратности (2, 4, 6 и т.д.) не обнаруживаются.

Минимальное кодовое расстояние равно 2.

Пример реализации метода четности представлен в табл.16.1.

Таблица 16.1

Число

Контрольный

разряд

Проверка

1011001110101

0

0

1110110010001

1

0

1000111101011

0

1 - ошибка

Модифицированный способ контроля по методу четности-нечетности заключается в том, что длинное слово разбивается на группы, каждая из которых содержит l разрядов (если числа короткие, то в качестве групп используются разные числа). Контрольные разряды определяются по всем группам по строкам и по столбцам согласно схеме, изображенной на рис.16.4.

а1

а2

а3

а4

а5

k1

а6

а7

а8

а9

а10

k2

а11

а12

а13

а14

а15

k3

а16

а17

а18

а19

а20

k4

k5

k6

k7

k8

k9

Рис.16.4. Схема формирования контрольных разрядов

Увеличение избыточности информации приводит к тому, что появляется возможность не только обнаружить ошибку, но и исправить её. Пусть произошла ошибка в каком-то из разрядов (например, разряд а9 изменил своё состояние на противоположное). Это приведёт к тому, что при проверке на чётность сумма (аi +ki) по соответствующим строкам и столбцам изменится для значений, которые содержат элемент а9, т.е. это будет вторая сверху строка и четвёртый слева столбец. Следовательно, не только будет обнаружена сама ошибка, но и определено место, где она возникла. Проинвертировав содержимое отмеченного разряда (в данном случае а9), можно исправить ошибку.

Проведя подобные рассуждения для ошибок большей кратности можно заметить следующее:

если произошли две однобитовые ошибки в одной строке или в одном столбце, то эти ошибки будут обнаружены, но исправление их невозможно;

если две однобитовые ошибки находятся в разных строках и разных столбцах, то эти ошибки будут обнаружены, но исправление их невозможно;

если произошли три однобитовые ошибки в одной строке или в одном столбце, то эти ошибки могут быть обнаружены и исправлены;

три однобитовые ошибки, расположенные в разных строках и столбцах, будут обнаружены, но исправление их невозможно;

ошибки не будут обнаружены, если они расположены в виде подмассива, имеющего чётное число строк и столбцов. Например, если ошибки расположены в разрядах а7, а8, а12, а13 (рис.16.4).

Следовательно, с помощью модифицированного контроля по четности-нечетности можно обнаружить и исправить любое число однобитовых ошибок нечётной кратности, если они расположены в одной строке или в одном столбце.

Дальнейшим развитием модифицированного контроля по чётности-нечётности является представление информации в виде трёхмерного массива, в котором контрольные разряды вычисляются по трём координатам.

Контроль по методу чётности-нечётности используется в ЭВМ для контроля записи, считывания, передачи информации, а также при выполнении арифметических операций. Причём контроль по нечётности имеет то преимущество, что при передаче информации по параллельной шине возможно обнаружить обрыв шины.