Файл: Торгашев В.А. Система остаточных классов и надежность ЦВМ.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 21.07.2024

Просмотров: 126

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

следует каждый раз при выполнении операции умножения дробей корректировать произведение или одни из сомножителей, а при де­ лении соответственно изменять делимое или частное. Коррекция эта сводится к умножению соответствующего числителя либо на величи­ ну ріірп + 1 (при выполнении операции деления), либо на р„ + і/рі (при умножении дробен). Для вычисления произведения некоторого целого числа А на отношение Pj/Ph можно воспользоваться следую­ щим выражением:

А Рі

*Рк (APj)

Apj - [ Apj ]Рк

Ук

~Рк

 

Данная позиционная характеристика довольно просто опреде­ ляется, если модуль pit входит в состав системы остаточных клас­ сов (р* = р„ +,). В том же случае, когда р* относится к числу оснований, исключенных из СОК (р* = р/), приходится прибегать к косвенным способам вычисления остатка \А р]\р и, соответ­

ственно, искомой характеристики

л (/1р.-),

так

как

схемы,

обеспе-

чивающне умножение

и сложение

модулю

р*, могут оказаться

по

неисправными.

что основание

р*

все

же

входит

в

состав ССДС,

 

Допустим,

но

символ

а*

вектора

А

искажен

на

величину

Да*,

причем

I ак + да [pk =

0. Тогда

 

 

 

 

 

 

 

 

 

 

 

U

І*/; =

1-

Аак IРк =

11Ьр* Ip,N IPk |Pft)

 

 

 

где

/?, и N — произведения соответственно контрольных и инфор­

мационных

модулей

исходной СОК,

в которую

входит

основа­

ние

р*.

 

 

 

 

 

 

 

 

 

 

при вычи­

 

Таким образом, для определения остатка |/1р„+,

слении произведения

А . Рп+'

можно воспользоваться

следующим

выражением:

 

 

 

Рі

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Npn+i

 

 

 

 

(2.27)

 

 

Арп+і \р. \ьРі I#,

Pi

Pi Pt

 

 

 

 

 

 

 

 

 

 

 

 

 

Величина N p n+\jPi

является

константой,

которую можно вычис­

лить заранее. Причем число различных констант данного типа равно п.

При вычислении вектора {6}^ в сокращенной СОК нет необ­

ходимости выполнять операции с символом числа, соответствую­ щим исключенному основанию р,-. Достаточно перед началом вычисления этого вектора формально умножить число {А]міР[

на величину, обратную исключенному основанию.

В связи с тем, что аппаратура, обеспечивающая выполнение операций сложения и умножения по модулю рі, считается неисп­ равной, для вычисления остатка \ А р п+х\р по формуле (2.27) сле­

68


69

дует

воспользоваться

табличным

способом.

Подобная

таблица,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

п

 

 

 

 

которую

можно

хранить

в

ОЗУ,

содержит

^

 

р, чисел, соответ-

ствуюіцих

 

искомым

остаткам

по

 

 

 

(=і

основаниям рі

 

различным

(I =

1,2,

•, п).

теперь,

что из СОК исключено несколько инфор­

Предположим

мационных

 

оснований

рі\........ p is

и их функции

стали

выполнять

контрольные модули />„+ ,........ Pn+s-

 

 

 

 

Rs- Тогда

для кор­

Обозначим: р ц . . . р и

= Qs\

Рп + і- ■-Pn+s =

рекции

величин

произведений дробей следует

определить

 

остаток

|/1/?5 |0

по формуле

(2.27), подставив

 

вместо

рі

произведение Qs ,

а вместо р „+ , — величину

Rs.

 

 

 

 

 

 

 

 

 

 

 

Однако

непосредственно

вычисление

произведения

числа

 

на

константу

N R SIQS по

модулям р-п .........p-is

явно

неце­

лесообразно из-за большого

объема таблицы,

необходимой

в этом

случае. Поэтому коррекцию дроби желательно осуществлять

после­

довательным способом:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

А U +

1) =

AU)Pn+jlPij.

 

 

 

 

 

где

] = 1,2........ s; А (1) =

А;

 

А (s +

1) =

A R S/QS.

 

 

 

Обозначим:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

RiPn+s

 

 

 

N R spij

 

 

 

 

 

 

 

 

 

 

*

 

 

Rs

 

 

1

 

QsPn+s

 

 

1

 

N j М (У)) +

 

Тогда

для вычисления

остатка ] A + 1)

можно

восполь-

зоватьс.я

следующим выражением:

 

 

 

 

 

И

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

\ л и - \ - ц Рі.

 

\bj Pi j

 

 

R’jPn+j

 

 

 

 

(2.28)

 

 

 

 

l/?tJ

Pij

 

pu

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Время,

 

необходимое

для

коррекции

дроби, и объем

таблицы

увеличиваются в s раз по сравнению с тем

случаем, когда

отклю­

чается лишь один

модуль.

 

 

 

KiNpn+i

 

 

 

 

 

 

Таблицу

констант

вида

 

 

 

 

МІрР

где

К і

 

 

 

 

 

 

 

 

= 1,2, . . . , р і ^ ii

t =

1,2,

. . . , «,

нет

 

необходимости

вычислять

заранее и хранить в памяти машины. Ее можно сформировать лишь при появлении ошибки постоянного типа в основании р,. Для

этого достаточно иметь

п

исходных констант вида

 

 

f

N p n+,

I

j

 

I

Pi

\PIJM -

Одновременно с формированием указанной таблицей опреде­

ляются числа

 

 

 

 

 

N Рп+і

Рп+і t

где j

= 1,2, ... , n + 1; j j = i

Pj Pj

Pi

jMlPt

 

 



Эти числа в дальнейшем используются для формирования двух таблиц констант при отказе еще одного информационного модуля СОК.

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

Вместо того, чтобы каждый раз корректировать результаты опе­ раций умножения п деления, можно при отказе какого-либо из ин­ формационных модулей и переходе к другому знаменателю изменить числители всех дробей, хранящихся в ОЗУ. Тогда в процессе даль­ нейшей работы ЦВМ отпадает необходимость корректировать ре­ зультаты каких-либо операций.

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

Пример 2. 8. В исходной системе остаточных классов с основа­ ниями 3, 5, 7, 11, 13, 17, 19 первые четыре модуля являются инфор­

мационными (Л7 =

3 • 5 - 7 • 11), а остальные — контрольными (R, =

= 1317- 19).

что информационные модули 7 и 11 пришлось

Предположит,

исключить из СОК, так как в них возникли ошибки постоянного типа. Тогда:

 

 

 

Qs = 7-11;

R s = 13-17;

7?tJ = 17-19.

Новый знаменатель

N '

равен произведению 3-5-13-17, а основание

сокращенной СОК М' = N'19.

 

 

 

 

 

 

 

Определим

числитель дроби

{Л,}^,,

которая

соответствует

исходному

числу {Л}^,

где

.4 = 99:

Л, = /1 — (13 -17)/7 • 11.

Вычисление

будем

вести последовательным

способом: А (2) =

= Л -13/7;

Л .=

Л(3) =

Л(2)-17/П;

 

 

 

 

 

ІУ, = 3.5.7-13;

 

 

 

N 2 =

3-5-1Ы З;

I N ,13/7 I, = 1;

 

 

 

|А^217/11|„ =

4;

 

{ А } м

> =

{0, 4, 8, 14, 4}уИ, ;

5, =

K N

I (/1) +

2;

{5,Ь

и =

{14' 10Ь ІЛ;

 

 

 

 

 

 

 

{Ві7ь:

-t13'

13W

 

I А 13 |7

=

6;

 

 

 

 

 

 

 

 

 

 

 

{ \А 13 \і}м'— {0>1.6,6,6}Л„

в2 =

 

 

(Л (2)) -)- 2;

И < 2 )Ь г = { ° . 3,1,13, 12}/И,;

| Ш 21 ^

=

16;

 

 

 

 

 

 

 

( М

^ =

{3- 17Ь и ;

 

 

■Л (2) 17 |„ = 9;

 

 

Л, =

Л (3) =

282.

І118* } * ,,-

О 6' 16Ь

и ;

 

 

 

 

 

 

 

 

{|Л(2)17|П}Л , =

{0, 4, 9, 9, 9}ЛІ, ;

 

 

 

 

 

 

(3)}лі-= {0,2,9,10.16}*,;

Оценим разность между величинами дробей A jN и A J N 1:

70


99

282

1

Д = 3■ 5■ 7• 11 — 3-5-13-17-

7-13-17 '

Таким образом, можно считать, что A / N «

A J N '.

2.8. ИЗМЕНЕНИЕ

КОРРЕКТИРУЮЩИХ СПОСОБНОСТЕЙ

 

Я-КОДОВ

 

Как показано выше минимальное расстояние для корректирую­

щего кода в СОК пропорционально числу

контрольных модулей г.

Как правило, общее число модулей от, входящих в СОК, обычно яв­ ляется фиксированным, а число информационных оснований п мо­ жет изменяться в зависимости от требований, предъявляемых к точ­ ности решения задачи. Чем ниже эти требования, тем выше коррек­ тирующие возможности Я-кода, так как г = от — п. Поэтому при отказе в каком-либо модуле можно сохранить корректирующую спо­ собность кода за счет уменьшения точности вычислений.

Если отказал информационный модуль р,-, то при его исключе­ нии знаменатель уменьшается в р,- раз. Для того чтобы величина дроби не изменилась, числитель необходимо разделить на р,-. При этом данную операцию следует проделать со всеми дробями, запи­ санными в оперативном запоминающем устройстве и принимающими участие в решении дайной задачи. Если отказал один из контроль­ ных модулей, то он заменяется информационным модулем р„ (при условии, что р„ больше всех остальных информационных модулей).

В этом случае знаменатель уменьшается в р„ раз. Деление

числите­

ля дроби на р„ осуществляется обычным

способом,

так

как мо­

дуль р„ является исправным.

разрядов,

необходимых

Обычно в управляющих ЦВМ число

для представления входной информации

или

констант,

значи­

тельно меньше

длины

разрядной сетки, с которой

работает

ЦВМ.

Следовательно,

если

N яа p k — диапазон

представления

- чисел

в ЦВМ, а — диапазон представления входной информа­ ции, то исходные данные можно записывать в ЦВМ в следующей форме:

 

 

 

М Я - U W , } "

 

 

 

 

где

N 2 =

N /N y

а Ay является

числителем дроби

соответ­

ствующей

по

величине позиционной

дроби,

поступающей

на

вход ЦВМ.

 

один из

модулей, входящих в про­

 

Если из СОК исключается

изведение

N 2,

то деление числителя на данный модуль можно

выполнять формально. Если же

исключается какой-либо информа­

ционный

модуль, входящий

в

произведение

7V,,

например

рі,

то

частное {А/рі}^', определим

по формуле:

 

 

 

 

 

 

{■^1РіУм' = {(Л — Иі^2ІріІРі)}%''

 

 

где

N ' =

Njpi,

M' = М /pi.

 

 

 

 

 

 

71