Файл: Самохин А.Ф. Эксплуатация цифровых вычислительных машин [учеб. пособие].pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 19.06.2024
Просмотров: 135
Скачиваний: 0
- 9 4 -
В случае использования модуля « |
2 т - I с учетом тождества |
4.15 выражение 4.21 принимает вид: |
|
К(Ао5р) =С Я (2>ПН+ 2 П-1)+К(Апр)1тос((!2т-1). (4 .2 2 ) |
Таким образом, методика преобразования вычета прямого ко да числа в вычет обратного кода без учета и с учетом знакового
разряда одинаковы. Отличие заключается только в величине кон станты, добавляемой к инверсии вычета прямого кода.
Тождества для преобразования вычета прямого кода в вычет
дополнительного |
кода |
и вычетов обратного и дополнительного кода |
в вычет прямого |
приводятся ниже: |
|
П (Арп ) Ф (2 ™ *2 п- ф H(Anp )9on]mod(2nx- 0 |
||
R ( A ^ ) ^ [ K ( 2 n*+2 fl+d+R(AoSp)]™°Gl(2ni-i) (4 .2 3 ) |
||
R(Anp )s L^(2 |
+2 - 0+R(Agon)jjon] -mod(2 т- 1) |
Обнчно преобразование вычетов выполняется в сумматоре контроль ных кодов.'
- 9 5 -
Г л а в а У
АППАРАТНЫЙ КОНТРОЛЬ
АРИФМЕТИЧЕСКИХ И ЛОГИЧЕСКИХ ОПЕРАЦИЙ |
|
||
§ 5 .1 . Контроль арифметических |
операций по четности |
|
|
П о н я т и е |
б у л е в о й |
р а з н о с т и .1 При ис |
|
следовании влияния тех или иных неисправностей (ошибок) |
на |
||
значение выходной функции г м |
некоторой логической |
||
схемы удобно пользоваться понятием булевой разности; |
|
||
Булевой разностью функции |
относительно |
вход |
|
ной переменной X'L |
называют выражение |
|
|
dT(x) |
|
|
|
d
здесь не производная, а оператор разности, означа
ющий сложение функции |
? ( * ) с выражением |
этой |
же функции, в |
||||
котором переменная |
Xi |
заменена на инверсию. |
|
|
|
||
Наиболее важным для нас свойством булевой разности явля |
|||||||
ется равенство ее |
I , |
если |
значения функции |
Т ( х ) |
не |
совпада |
|
ют для правильного |
и ошибочного значений £С£ |
, |
и равенство O', |
||||
если эти значения функции совпадают. |
|
|
|
|
|||
Если систему контроля можно описать некоторым логическим |
|||||||
выражением, в котором значения аргументов |
Яу |
являются вход |
|||||
ными, промежуточными или выходными переменными |
контролиру - |
||||||
емой схемы, то по |
значении булевой разности |
|
|
— |
можно |
а п
- 9 6 -
определить, контролируется ли неисправность, вызывающая ошиб
ку в значении переменной |
Х[ |
( f f ~ ~ |
= l) «ли не контроля- |
||
/ |
d m |
\ |
Это |
свойство |
булевой разности в даль |
руется | |
— |
= 0J , |
нейшем будет использовано при анализе системы контроля арифме тических и логических операций по четности. Кроме того , приве дем без доказательства следующие свойства булевой разности:
|
|
|
d r(х) = d m |
|
|
5 .2 |
||||
|
|
|
|
|
dxi |
|
|
|
|
|
|
|
d[F(x)®G(x)] = d m ^ |
JG& |
|
|
|||||
|
|
|
d xi |
|
|
|
dxi |
d xi |
|
|
|
|
dT(S) |
= d m ) |
dth |
|
|
|
|||
|
|
|
d z i |
d |
d |
* |
i |
|
|
|
|
К о н т р о л ь п о л у с у м м ы . |
Формирование |
сум |
|||||||
мы |
Si |
в сумматоре обычно реализуется как сложение по ti}od2 |
||||||||
полусуммы |
Н[ |
и переносов |
С |
|
: |
|
|
|
||
|
|
|
Si |
= Hi |
© с ,., |
|
|
|
||
Схема контроля полусуммы может быть реализована как самосто |
||||||||||
ятельная часть схемы полного контроля сумматора. Значение |
I -г о |
|||||||||
разряда полусуммы чисел А и В определяется |
выражением |
= |
|
|||||||
|
Четность полусуммы |
Рн |
, |
очевидно, |
можно записать |
как |
||||
оумиу |
по |
mod 2 |
всех разрядов |
полусуммы: |
|
|
|
- 9 7 -
^ = Н л ® Н я - А . ® « ! ® . . . © Н 0 =
= (a ^ Q ^ ,® ..® ^ © ... ® д 0) ® ^ ® 4 - Д - •® 4 ® ® 4 ) =
= Ра ® h -
Таким образом, четность полусуммы равна сумме по fnod.2. чет ностей слагаемых. Следовательно, для контроля достаточно про
верить на четность полусумму и сложить ее |
по |
m od 2 |
с четноо- |
|
тью слагаемых. Равенство полученной суммы |
£ |
~ Рц ® ?а @7-^ |
||
нулю свидетельствует об отсутствии ошибок |
нечетной кратности,1 |
|||
К о н т р о л ь |
п о ч е т н о с т и |
|
п о л н о й |
с у м - |
м ы . Четность полной суммы может |
быть |
представлена следующим |
выражением: |
|
|
Ps = S „ ® ^ . , © - e 5 i ® - ® 5 0 = < а , г ® £ я © с я - , ) © |
||
ф (а пч®^п-1ФСп-г) ® - ••® (oi |
|
) © . . . ® |
® (ao®^o®Cgx ) = |
- |
® а о) ® |
® £<•-, ® • ® с * х ) = % ® Ре ® К |
|
|
Таким образом, для контроля полной |
суммы необходимо сло |
|
жить по m od 2 четность |
суммы Pg |
с четностями слагаемых |
и внутренних переносов Тс |
• |
|
Е = ц ® р а ®р6 <врс .
- 9 8 -
Сявдует иметь в виду, что признак четности и внутренних пере носов заранее не известен и формируется в процессе выполнения
операции. |
Поэтому равенство |
£ |
дулю свидетельствует об |
отсутствии |
ошибок только при условии отсутствия неисправностей |
||
в цепях формирования переносов. |
Ошибки, возникающие в цепях |
переноса, не изменяют четности выражения, так как они одновремен
но меняют четность переносов Ра и суммы |
Ps |
. |
Действитель |
но, предположим, что ошибка произошла в |
С t- _ ( |
-м |
переносе. |
Тогда булева разность |
|
|
|
|
dE _ |
сЩ |
|
„ |
|
dPa |
„ dPs |
„ |
dH |
|
|
dci4 |
da4 |
+ |
dCi-i |
+ dclt |
+ |
dci-i |
|||
но |
l f ! i - = ( c n- t <s>Cn -2 ® . . . ® |
|
&egx) © |
|||||||
|
u C i - j |
|
|
|
|
|
|
|
|
|
|
© ( c „ |
® C n |
|
© |
© C ■ © . © C p t ) - i |
|||||
|
1 n ~ 1 |
n - z |
|
L- 1 |
|
|
6X |
|
||
и , |
аналогично, |
№ |
|
d 4 |
c/S<; |
|
|
|
|
|
|
|
dci4 |
|
dS; |
dci4 |
|
|
|
|
|
Следовательно, |
dfj |
|
1 |
+ |
0 + 0 + 1 = 0 |
,т .е |
ошибка |
|||
dcL.t |
||||||||||
не обнаруживается. |
|
|
|
|
|
|
|
|
||
|
Пример. |
|
|
|
|
|
|
|
|
|
а) |
А = 0,0011 |
|
Ра |
= 0 |
б) |
А = 0,0011 |
ра = 0 |
|||
|
В = 1,0110 |
|
Р^= I |
|
В = |
1,0110 |
||||
|
|
|
Р<? = 1 |
|||||||
|
Н = 1,0101 |
|
|
|
|
|
Н = |
1,0101 |
ошибка Р = I |
|
|
С = 0,1100 |
|
рс |
= ° |
|
с. = 0,1101 |
||||
|
S = 1,1000 |
|
Ps |
= 0 |
|
S = |
иооо |
Ро= 0 |
||
|
|
|
|
|
|
|||||
|
ошибка |
|
|
|
|
Е = Г + 0 + I + I = |
||||
|
Е = 0 + 0 + 1 + 0 = 1 |
|||||||||
|
Ошибка обнаруживается |
Описка |
не |
обнаруживается |
- 9 9 -
Следовательно, для обеспечения достоверности контроля опера ции сложения необходимо обеспечить или достоверность получе ния признака четности переносов, или достоверный контроль пе реносов.
Известен ряд способов обеспечения контроля операции сло
жения по четности ( см. Л. 7) .
Одним из способов является дублирование цепей переноса. При
этом способе в образовании суммы принимают участие одни схе
мы формирования переносов, в вычислении признака четности -
другие, и, следовательно, ошибка в цепях переноса, участву
ющих в образовании |
суммы, не скажется на формировании призна |
||
ка четности Р |
С |
и наоборот. |
|
|
|
* |
|
К о н т р о л ь |
о п е р а ц и и в ы ч и т а н и я . В |
связи с тем, что операция вычитания выполняется как операция сложения в обратном или дополнительном кодах, ее контроль вы полняется аналогично , с учетом наличия циклического переноса или потери единицы из старшего разряда. Поэтому для реализа ции контроля по четности операции вычитания достаточно обес печить дополнительно контроль преобразования кода из прямого
в обратный (дополнительный) и наоборот.
Контроль преобразования прямого кода в обратный реали зуется достаточно просто. Если количество разрядов мантиссы четно, то при преобразовании признак четности сохраняется.
Если количество разрядов мантиссы нечетно, то признак четнос ти меняется на обратный.
При контроле преобразования в дополнительный код внача ле можно проконтролировать получение обратного кода, а затем проконтролировать добавление единицы в младший разряд, так ,
как это делается при сложении (получение дополнительного
- 100-
кода обычно выпол1шется б сумматоре). |
|
|
К о н т р о л ь |
о п е р а ц и и |
с д в и г а . При сдай |
те числа влево или вправо единицы, выходящие за разрядную сетку,
теряются, а в освооождающиеся разряда при сдвиге прямого кода записываются нули, при сдвиге обратного (дополнительного) - еди-
шщы*
Если фиксировать единицы, вмходяидое за разрядную сетку,
и учесть (при обратном коде) количество единиц, запалнягацих освобождающиеся разряда, то признак четности сдвинутого око.ца формируется достаточно просто:
|
•; |
|
га |
га |
г тер ^ |
гзап |
• |
|
|
где |
Ра - |
четность сдвинутого числа А, |
|
|
|||||
|
Ртер - четность |
совокупности разрядов, выходящих за раз |
|||||||
|
|
рядную сетку, |
|
|
|
|
|
||
|
?зап “ четность |
совокупности |
освобождающихся разрядов, |
||||||
|
|
заполняемых единицами (при сдвиге обратного или |
|||||||
|
|
дополнительного кода). |
|
|
|
|
|||
|
Контроль операций умножения и деления может быть осущест |
||||||||
влен путем контроля операций сложения (вычитания) и сдвигов в |
|||||||||
каждом такте выполнения этих операций. |
|
|
|||||||
|
К о н т р о л ь |
|
л о г и ч е с к и х |
о п е р а ц и й |
|||||
н е р а в н о з н а ч н о с т и |
|
и р а в н о з н а ч н о с т и . |
|||||||
|
Операция неравнозначности выполняется в соответствии с |
||||||||
таблицей |
5 .1 , |
где |
Д(- и £[ |
- |
входные двоичные переменные, |
||||
Cg |
- выходная. |
Из таблицы видно, |
что |
число |
С , являющееся ре |
зультатом поразрядного выполнения операции неравнозначности,
будет содержать столько единиц, сколько их было в исходных чис лах А и В, за вычетом едишщ тех разрядов, в потовых они сов -