Защита информации от искажений



Дополнительное усложнение устройств обмена информацией может быть вызвано необходимостью защиты от помех. Основными источниками помех являются дефекты системы синхронизации УВМ с оконечными устройствами, электромагнитные поля, создаваемые работающим электрооборудованием, в том числе самой УВМ, и фоновое радиоактивное излучение. Помехи вызывают искажение хранимой и передаваемой информации: вместо единицы в отдельных битах может оказаться записанным ноль и наоборот, что ведет к сбоям в работе УВМ. Наиболее распространенным способом борьбы с искажениями, возникающими при передаче информации, является контроль четности. При контроле четности исходят из того, что все правильно запрограммированные слова информации должны содержать четное число единиц. Так, при программировании устройств ЧПУ в коде ISO-7, для достижения четности в старший бит записывается 1, если исходная кодовая комбинация данного байта содержит нечетное количество единиц. В противном случае в старший бит записывается 0. Если затем при проверке на четность окажется, что проверяемый байт содержит нечетное число единиц, то это будет означать, что при записи или пересылке данного байта произошел сбой. Нетрудно заметить, что двойной сбой в проверяемом слове информации не может быть обнаружен посредством контроля четности, но вероятность двойного сбоя много меньше вероятности единичного сбоя.

Если при передаче слова информации произошел сбой, то передача данного слова должна быть произведена повторно. Автоматическая повторная передача имеет смысл, если есть уверенность, что передаваемая информация не была искажена еще до передачи. Такое искажение весьма вероятно при длительном хранении информации (например, управляющих программ) в электронных ЗУ локальных УВМ, таких как программируемые контроллеры. Полезно перед пересылкой длительно хранимой информации по каналу связи проверить ее правильность и исправить обнаруженные ошибки.

Защита информации от искажений производится путем использования при ее кодировании кодов с обнаружением и исправлением ошибок. Построение таких кодов базируется на том, что часть кодовых комбинаций слова информации употребляется не для записи информации, а для борьбы со случайно возникающими ошибками, ведущими к сбоям в работе АСУТП. Возможности кода с обнаружением или исправлением ошибок определяются кодовым расстоянием d, характерным для данного кода. Кодовое расстояние-это минимально возможное число несовпадающих разрядов в рассматриваемом блоке (наборе) слов информации. Если оно равно единице, то обнаружение ошибок в записи информации невозможно. О возможности обнаружения и исправления ошибок можно судить по следующему соотношению:

d=r+s+1,              (2.15)

где r-число обнаруживаемых ошибок;

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

Нетрудно подсчитать, что при кодировании с обеспечением контроля четности в коде ISO-7 имеет место d=2. Таким образом, контроль данного типа обеспечивает обнаружение одиночной ошибки, но не исправление ее. В качестве примера кода, обеспечивающего также и исправление одиночных ошибок, рассмотрим один из (n-1, к)-кодов Хемминга (R. W. Hamming), пригодный для исправления ошибок, возникающих при хранении и пересылке программ ЧПУ, записанных в коде ISO-7.

Предположим, что в рассматриваемом устройстве ЧПУ информация обрабатывается словами n=16 бит (2 байт). Для кодирования в коде Хемминга все биты слова нумеруются слева направо (см. рис.2.5), причем биты, номера которых равны степени числа 2 (в данном случае биты 1,2,4 и 8) играют роль битов четности, а все оставшиеся биты, кроме нулевого, используются как информационные.

 

Рис. 2.5.    Код Хемминга (15,11) с записью цифры 8 в коде ISO-7

 

Таким образом, данный код Хемминга состоит из 15 битов и контролирует блок информации величиной в 11 бит, т.е. является (15,11) – кодом Хемминга.

Каждый из битов четности контролирует в данном коде Хемминга свою особую группу из 8 битов, включая самого себя. Их номера указаны в таблице 2.3.

Таблица 2.3

 

Значение бита четности устанавливается таким, чтобы сумма единиц, входящих в его группу, была четной. Это можно проследить по рис. 2.5. Так, в группу бита четности 8 входят три единичных бита: 10, 11 и 12, что обусловило единичное значение самого бита 8.

Запись байта кода ISO-7 в слово кода Хемминга производится обычным порядком: номера разрядов возрастают справа налево, символы кода ISO-7 соответствуют коду ASCII (см.табл. П1.1), старший бит кода ISO-7 занимает место бита 7. Значения информационных битов с хемминговыми номерами меньше 7 при записи кода ISO-7 могут быть выбраны произвольно и для определенности сделаны равными нулю. В составе слова кода Хемминга бит четности кода ISO-7 не играет роли бита четности, является обычным информационным битом. При записи программы ЧПУ в электронную память ЛУВМ каждый байт программы, написанной в коде ISO-7, программно преобразуется в слово кода Хемминга, а при вызове программы из ОЗУ ЛУВМ для пересылки по каналам связи или на исполнение, производится обратное преобразование в код ISO-7 с исправлением возможных ошибок. Исправление кодом Хемминга сбоев ОЗУ производится в следующем порядке:

· производится проверка всех битов четности слова;

· если их значения (0 или1) правильны, то сбоя не было;

· вычисляется сумма номеров всех неправильных битов четности, если они есть;

· инвертируется значение бита, номер которого равен сумме номеров неправильных битов четности;

· исправленное слово кода Хемминга записывается в ОЗУ вместо дефектного слова.

Допустим, что в слове, представленном на рис. 2.5, в результате сбоя в бите 12 оказался 0 вместо 1. Тогда суммы битов, контролируемых битами четности 4 и 8 (см. табл. 2.3), окажутся нечетными. Следовательно, сбой мог произойти только в одном из битов, контролируемых битами 4 и 8 совместно. Это биты 12, 13, 14, и 15. но биты 13, 14 и 15 контролируются также битами 1 и 2, контрольные суммы которых четны, т.е. правильны. Тогда неправильным может быть только бит 12, номер которого определяется суммой номеров битов 4 и 8. Тем самым подтверждается вышеизложенное правило исправления дефектных битов.

Для организации обмена информацией с ВУ в составе пульта управления УВМ (например, с клавиатурой или накопителями на магнитных дисках) используются специализированные программируемые микроконтроллеры, являющимися, по сути дела, специализированными микро-ЭВМ, которые наряду с микроконтроллерами в составе систем управления исполнительными электроприводами превращают УВМ в ведущий узел локальной информационной сети.

 


Дата добавления: 2018-04-04; просмотров: 115;