Научная статья на тему 'Коррекция ошибок деления чисел, вызванных воздействием помех'

Коррекция ошибок деления чисел, вызванных воздействием помех Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
113
20
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ОБНАРУЖЕНИЕ ОШИБКИ / КОРРЕКЦИЯ ОШИБКИ / ВОЗДЕЙСТВИЕ ПОМЕХ / ДЕЛЕНИЕ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Корсунов Н. И., Начетов А. А.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Коррекция ошибок деления чисел, вызванных воздействием помех»

УДК 681.518.3

КОРРЕКЦИЯ ОШИБОК ДЕЛЕНИЯ ЧИСЕЛ, ВЫЗВАННЫХ ВОЗДЕЙСТВИЕМ ПОМЕХ

Н.И. КОРСУНОВ А.А. НАЧЕТОВ

Белгородский государственный национальный исследовательский университет

e-mail:

korsunov@intbel.ru

aleksandr@nachetov.org.ua

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

Ключевые слова: обнаружение ошибки, коррекция

ошибки, воздействие помех, деление.

Использование информационных технологий в различных областях науки и техники основано на вводе, хранении и преобразовании данных [1] и характеристики объектов, такие как точность, надежность, помехоустойчивость, быстродействие и другие непосредственно зависят от аналогичных характеристик программно-аппаратных средств преобразования данных.

Для обнаружения ошибок преобразования данных как на аппаратном так и на программном уровне применяют арифметические коды [2]. Неприменимость числового метода контроля объясняется невозможностью получения точного результата. Цифровой же метод не позволяет обнаруживать ошибку при длительности помехи приводящей к ошибкам в информационных и контрольных разрядах при последовательном выполнении операции и к одновременному появлению ошибок в информационных и контрольных разрядах при параллельном выполнении операций над информационными и контрольными разрядами, а также при использовании этих методов возможна только фиксация ошибки и невозможна ее коррекция. Следствием этого является низкая надежность выполнения операций в условиях воздействия помех.

Многократное дублирование позволяет по мажоритарному принципу как обнаружить ошибку операции, так и выбрать верный результат только в случае ошибочного выполнения операции в заданный интервал, меньший в несколько раз по сравнению с верным, при последовательном выполнении операций, либо при меньшинстве ошибок при параллельном выполнении операций[3]. Это справедливо только при воздействии помехи в ограниченном интервале времени и при ее отсутствии на промежутке больше интервала действия помехи при последовательном выполнении операций либо при воздействии помехи на меньшее число параллельно выполняемых процессов.

Использование обратного значения операнда, являющегося делителем при контроле с помощью арифметических кодов позволяет использовать как численный, так и цифровой методы контроля, но по прежнему не позволяет корректировать ошибку, вносимую воздействием помех [4].

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

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

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

Пусть выполняется преобразование:

C. = A = AB-1.

1 B

При изменении операндов в случае умножения:

Сг +А£) = Сг + ААВ = Сг + ААВ, (2)

в то время как при выполнении деления:

С + АО = Сг +ААВ Ф С + ААВ, (з)

так как АВ Ф ЛБ-1.

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

Так как при фрагментном преобразовании изменение операнда осуществляется его сложением с некоторой константой М, то вторая выполняемая операция:

с А + М

С2 = _ * (4)

Покажем, что для обнаружения и коррекции ошибки необходимо, чтобы константа М = В.

Как и при умножении для определения существования ошибки определим:

SC = C2 - Ci, (5)

при отсутствии ошибок.

Пусть M Ф B. Тогда:

БС = С2 - а= Л - А = М , (6),

2 1 В В В

и для вычисления БС при наличии ошибок в вычислениях (1), (4) выражение (6) пред-

ставляется в виде:

с = A +M + b£2 - A + B£i = M + b(2~£V = M + ( - £ ) (7)

B B B B K 2 LH

где £i,£2 - есть некоторые функции аргументов.

Для определения (£2 -£1) требуется знание SC, полученное в соответствии с (5), сравнивать со значением:

SC = M ,

B

так же полученным с использованием операции деления.

При М=В из (7) следует:

БС = 1 + (2 - £ 1), (8)

и для определения (£2 -£1) требуется сравнение БС с константой 1 без выполнения каких либо дополнительных преобразований, как при МФВ. Но при этом £1, £2 являются функ-

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

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

А +1 А С = = [(А +1)- А ]-1,

В В

М

что следует из (7) при условии — = 1.

В

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

Покажем, что (2) справедливо и при выполнении деления. Это позволит скорректировать ошибку, вносимую помехой. Для определения корректирующего значения результата деления, представим (1) в виде:

а (4) в виде:

С, = -1 = А, Б-1 = Ідах В - (9)

В

C 2 = = А2 B-1 = 1га2 B (10)

В

Геометрическое представление (9), (10) приведено на рис. 1, где значение С2 спроецировано на числовую ось ОЕ, повернутую на угол а1 относительно оси ОБ.

~і А Е т і

УГ

I 1

!

і

Щ

. 1 с 1 I

1 і

1 і

1 і

1 1 і

1 і

\ с *2 1 і

а1 1 і

/-V гч і—

О 0 Р

Рис. 1. Геометрическое представление соотношений (9), (10)

Здесь OD = B-1, OF = OD + DF = B-1 +AB-1 = Br1, tga, = A, tga2 = A + M, BD = G>

AD = C2.

Из рассмотрения треугольников OAD и OEF следует:

С 2 t g a 2

(11)

С tga

а из подобия треугольников OEF и OBD следует:

с 2 B -

С- B - (12)

Следовательно, относительные приращения SC и AB-1 одинаковы, и зная приращения SC и B-1 можно определить значение AB-1, которое необходимо для проецирования С2 на числовую ось OE. Если считать СС случайной величиной, равной ошибке

при делении (1), то проецирование С1 +SC также приведет к случайному значению AB2”1, которое линейно зависит от SC1.

Перенося полученное для деления в соответствии с (1) на деление с ошибкой, получим в соответствии с (4) линейную зависимость AB3-1 от SC2. Если теперь результат деления с ошибкой в соответствии с (4) и результат деления с ошибкой в соответствии с (1) скопировать на числовую ось OE и определить разность между ними, то получим:

С1 + AC1= АВ-1 + AAB-1 (13)

С 2 + AC 2 = А1 (В-1 + AB -1) = (А + 1)(В-1 + AB-1) = AB-1 + В-1 + AAB-1 + AB-1 (14)

SC = C2 - С1 = B-1 - AB-1 (15)

Откуда определяем:

С - B-1 = AB-1 (16)

С1 +AC1 - А(СС - B-1) = AB-1 (17)

Используя (1з)-(17) сформулируем метод обнаружения и коррекции ошибок деления чисел, вносимых воздействием помех - действие помехи при одновременном выполнении деления в соответствии с (1), (4) приводит к получению результатов (1з), (14). Зная значения С1, С2 в соответствии с (15) определяем СС и далее в соответствии с (17) корректируем

значение С1.

Список литературы

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

1. Советов Б.Я. Информационные технологии: Учебник для студентов вузов, обучающихся по направлениям подготовки дипломированных специалистов "Информатика и вычислительная техника" и "Информационные системы" / Советов Б.Я., Цехановский В.В.; М.: Высшая школа, 2005. - 264 с.

2. Луцик Ю.А. Арифметические и логические основы вычислительной техники / Луцик Ю.А., Лукьянова И.В.; Мн.: БГУИР, 2004. - 121 с.

3. Вероятностный анализ производительности технических систем со структурной и временной избыточностью / Р.В. Какубава, Р.А. Хуродзе // Автоматика и телемеханика, 2004, № 5, 154-165

4. Лидовский В.И. Теория информации. - М.:Высшая школа, 2002г. - 120с.

CORRECTION OF ERRORS DIVIDE NUMBERS CAUSED BY EXPOSURE INTERFERENCE

N.I. KORSUNOV A.A. NACMTOV

Belgorod National Research University

This paper proposes a method of detecting and correcting errors division of numbers to be made as of the prolonged nature of the disturbance, and under the influence of interference with parallel operations division.

Keywords: error detection, error correction, the effect of interference, division.

e-mail:

aleksandr@nachetov.org.ua

i Надоели баннеры? Вы всегда можете отключить рекламу.