Научная статья на тему 'Контроль выполнения арифметических операций процессора ЭВМ'

Контроль выполнения арифметических операций процессора ЭВМ Текст научной статьи по специальности «Компьютерные и информационные науки»

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

Текст научной работы на тему «Контроль выполнения арифметических операций процессора ЭВМ»

Павлов П.А.

Институт инженерной физики, г. Серпухов

КОНТРОЛЬ ВЫПОЛНЕНИЯ АРИФМЕТИЧЕСКИХ ОПЕРАЦИЙ ПРОЦЕССОРА ЭВМ

Введение и постановка задачи

Характерной особенностью современных средств измерений является широкое использование телекоммуникационных компьютерных сетей (ТКС).

Отличительной особенностью ТКС от отельных телекоммуникационных устройств, является то, что она включает в свой состав ЭВМ, позволяющую осуществлять централизованное автоматизированное (автоматическое) управление объектом исследования, процессом измерения и обработкой полученной информации [1] .

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

В настоящее время широкое распространение получил контроль арифметических операций сложения по модулю, который основан на известных тождествах [2]:

Из теории чисел известно, что любое число можно записать в виде тождества:

A = ramodq (1)

(читается:Асравнимо или тождественно с остатком га модуля q), которое устанавливает следующее соотношение между числамиА, гаи q:

A = qt + Га (2)

где A, q, ^ га- целые числа;А - любое контролируемое n-разрядное число;q- модуль или делитель,^- частное,Та- остаток от деления числаАна модуль q(контрольный код числа А) .

Каждому контролируемому n-разрядному числуАпридаются еще тдополнительных разрядов, в которые записывается контрольный код, т. е. величина остатка гаот деления А на modq, по которому осуществляется контроль.

При контроле по модулю должно выполняться условие m<n, в противном случае из-за большого объема контрольной аппаратуры надежность контролируемой системы снижается.

При числовом контроле по модулю контрольным кодом числа является остаток от деления самого числаАна modq.В этом виде контроля справедливо тождество: n n

ZA = Zraimodq (3)

i=1 i=1

означающие, что сумма чисел сравнима с суммой остатков этих же чисел по одному и тому же модулю.

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

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

У = Х1, Х2Х3уіу2у3’ , Z1Z2Z3 . (4)

В результате кодирования рассматриваемого двоичного набора предлагаемым методом получим кодовый набор:

У К = Х|, *2 х3 У1У2 Уз,., Z1Z2Z3X1X2

Х 2 х3

© У1 У2

У2у3 (5)

Z1Z2

Z2Z3

или: Ук = Х1, Х2Х3У1У2У3,....., Z^r^ (6)

Обнаружение ошибок производится путем поразрядного сложения по mod2 значений контрольных разрядов Гіс и Г2С , считываемых с устройства хранения информации соответственно с значениями контрольных разрядов rіп и Г2П, сформированных относительно полученных информационных разрядов:

1і= Гіс©Гіп;

І2= Г2С©Г2П. (7)

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

Данный метод позволяет обнаруживать одиночные ошибки і00%, одиночных ошибок и до 80% двойных ошибок.

2. Обнаружение и исправление ошибок при выполнении арифметических операций

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

Рассмотрим основные положения метода контроля операции сложения на примере.

Допустим, требуется сложить два шестиразрядных числа: А=00іі00 и В=00іііі. При кодировании

данных чисел предлагаемым методом получим кодовые наборы соответственно:

Ак=00іі00 іі,

Вк=00іііі 0і, (8)

которые будут записаны в устройстве хранения информации.

Арифметическое суммирование информационных разрядов данных кодовых наборов, с учетом переносов даст результат:

00іі00

00іііі(9)

S = 0H0H

Для полученной суммы значения контрольных разрядов должны иметь соответственно значения: 00.

Однако сложение контрольных разрядов слагаемых по mod 2 даст результат:

11

01

Skmod2 = 10 ,

который отличается от правильного значения 00.

В связи с этим, для формирования правильных значений контрольных разрядов, возникает необходимость определения поправки к значению контрольных разрядов Skmod2.

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

Для рассматриваемого примера, при сложении информационных разрядов перенос единичных значений сигналов осуществляется в четвертый и пятый разряды (см. 9) т.е., информация, учитывающая переносы имеет вид: Sh=011000.

Свойство 1. Формирование поправки Пк к значению контрольных разрядовЗк1^2 осуществляется путем кодирования информации учитывающей переносы Sпвыбранным методом кодирования.

Для рассматриваемого примера, кодирование значения Sn=011000. предлагаемым методом даст значение поправки Пк=10.

Поразрядное сложение по mod2 значения Skmod2 = 10 и значения поправки Пк=10 даст правильное значение контрольных разрядов для полученной арифметической суммы S= 011011.

В результате имеем правильный кодовый набор суммы:

Sk=011011 00.

ЛИТЕРАТУРА

1. Куликовский К.Л., Купер В.Я. Методы и средства измерений. - М.: Энегоатомиздат, 1986. - 447

с.

2. Павлов А.А., Павлов П.А., Царьков А.Н., Хоруженко О.В. Функционально-кодовый контроль ошибок в автоматизированных системах измерительной техники. // Измерительная техника. - 2009. - № 9. -С. 3-5.

3. Путинцев Н.Д. Аппаратный контроль управляющих цифровых вычислительных машин. - М.: Совет-

ское радио, 1966. - 424 с.

4. PavlovA.A., PavlovP.A., TsarkovA.N., KhoruzhekoO.V.

Functionalcoderrormonitoringincomputerizeddata-acquisitisystems. // Measurement Techniques, Springer New York, V0f. 52, № 9, 2009, p. 891-893.

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