книги из ГПНТБ / Хетагуров, Я. А. Повышение надежности цифровых устройств методами избыточного кодирования
.pdfЕсли освобождающийся разряд заполняется едини цей, то
и |
|
|
|
|
|
|
|
|
|
|
|
а с д в = |
2а - {к |
-f- l)Ach+l |
-f- 1. |
|
|
||||
При сдвиге на |
один |
разряд |
вправо и |
заполнении |
||||||
освобождающегося |
разряда |
нулем, получаем: |
|
|||||||
и |
С С Д В = |
(С - 0 / 2 |
или г С е д ^ С - с , |
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 а е д в |
= |
а — с,. |
|
|
|
||
Чтобы определить выражение для вычисления кон- |
||||||||||
трольного |
кода |
сдвинутого числа <хСдв, умножим левую |
||||||||
и правую |
части |
последнего |
сравнения на 2 е - 1 , |
где е — |
||||||
порядок 2 по модулю А. В результате |
получаем |
искомое |
||||||||
выражение: |
|
|
|
|
|
|
|
|
|
|
В частности, |
если Л = 3, то е=2 и |
|
|
|
||||||
|
|
|
<*едв = |
|
(а — с,) |
2. |
|
|
|
|
Например, если |
С — 1,101001, |
/1 = |
3, то с г = 1 , <*=0 и а С д В = |
|||||||
= — 2 = 1 . |
Действительно, С с |
д п |
= |
0,110100 = |
1. |
|
|
|||
Если освобождающийся |
(знаковый) разряд при сдви |
|||||||||
ге вправо |
заполняется единицей, то |
|
|
|
||||||
|
а з д в = 5 ( а - с , ) 2 « ~ ' - Н е |
|
|
|||||||
циклический |
и |
арифметический |
сдвиг. |
Напомним, |
||||||
что при арифметическом |
сдвиге знак |
числа |
не сдвигает |
ся. Читателю предлагается самостоятельно доказать сле дующие сравнения, с помощью которых вычисляются
контрольные коды.
При циклическом сдвиге влево или вправо на один разряд
о ц = 2 а - с * + 1 [ ( А - И ) л + 1 ] ;
ац=(а-с1)2'-1 +ClkA.
221
При арифметическом сдвиге влево или вправо на один разряд и заполнении освобождающегося разряда нулем
а а р == 2а |
— kA |
(c,l+l -+- Ch); |
а а р = ( а - |
с, |
+kACh+i)2"-1. |
Сравнение (поразрядное |
сложение по модулю 2 ) . |
Известно, что арифметическая сумма двух чисел равна поразрядной их сумме по модулю 2 с добавлением сдви
нутых на один разряд |
влево |
переносов |
|
|
|
С + 5 = С ф й + 2 ( С Д В ) . |
|||
Отсюда получаем выражение для вычисления кон |
||||
трольного кода: |
|
|
|
|
где |
sA — контрольный |
код |
логического |
произведения |
С Д |
£ . |
|
|
|
Логическое сложение и умножение. |
Алгоритмы вы |
числения контрольного кода при выполнении этих опе раций следуют из известного соотношения
( с у в ) + ( с Л £ ) = с + £,
отсюда
Рассмотренная методика поиска контрольных соот ношений позволяет при необходимости обобщить полу ченные выражения на случай применения модифициро ванного кода и учесть другие особенности конкретной ЦВМ.
Арифметическое устройство состоит из АУ основных чисел (АУОЧ) и АУ контрольных кодов (АУК.К) (рис. 7-18). Правильность выполнения операции опреде ляется с помощью схемы сравнения по совпадению кон трольного кода, вычисленного в АУКК, с кодом, полу ченным на выходе схемы свертки.
Для автоматического обнаружения и исправления одиночных ошибок в АУ могут быть использованы рас смотренные в гл. 5 коды, порождаемые двумя модулями. При этом полученные выше выражения используются для вычисления контрольного кода по каждому моду лю. После получения результата проверяются коитроль-
222
ные соотношения, и если они нарушены, то дешифрато ром определяется характер ошибки и она исправляется. Однако применение кодов с исправлением ошибок ока зывается оправданным только в том случае, если уста новлено, что при выполнении операции в АУ (речь идет прежде всего об операциях деления, умножения, извле чения корня, многократный сдвиг и др.) возникают лишь одиночные ошибки. Другими словами, вероятность мно-
ЧислоВая магистраль. .
?
|
|
ОС |
|
|
X |
А У О Ч |
Ь; ьк*1 |
АУКК |
|
|
|
Схема обертки |
|
Прадильно |
|
СхС? |
Рис. 7-18. Структурная схема АУ с контролем по мо дулю.
гократных ошибок должна быть пренебрежимо мала по сравнению с вероятностью одиночной ошибки. Заметим, что гипотеза о возникновении только одиночных ошибок может быть принята, если осуществить контроль с ис правлением ошибок при выполнении каждой микроопе рации (сдвиг, сложение и т. д.). В этом случае исклю чается эффект размножения ошибок при выполнении многотактных операций (умножения, деления и др.), но время их выполнения увеличивается.
Оценку эффективности аппаратного контроля необ ходимо производить с учетом: 1) затрат аппаратуры на реализацию контроля; 2) влияния контроля на длитель ность выполнения операций; 3) вероятности получения безошибочной информации на выходе контролируемой части аппаратуры; 4) количества аппаратуры, охвачен ной контролем. Накопленный опыт применения арифме тических кодов, порождаемых модулем 3 или 7, для ор ганизации сквозного контроля ЦВМ показывает, что за траты аппаратуры на реализацию контроля составляют 10—20% от общего количества аппаратуры, быстродей ствие машины снижается на 10—15%, контролем охва тывается 70—80%' аппаратуры [Л. 25]. Аппаратный кон-
223
троль позволяет резко увеличить достоверность полу чаемой информации [выражения (6-12) и (6-13)] и уменьшить затраты времени на исправление ошибок, так как ошибка обнаруживается практически в момент ее возникновения.
7-3. ПОВЫШЕНИЕ НАДЕЖНОСТИ ОПЕРАТИВНЫХ ЗАПОМИНАЮЩИХ УСТРОЙСТВ
В любом запоминающем устройстве можно выделить две относительно самостоятельные части: адресную и числовую. В связи с этим принцип использования кор-
|
|
|
РЧ |
ректирующих |
кодов |
целесо |
||||
|
|
|
|
образно рассматривать |
при |
|||||
|
|
Среда |
менительно к каждой из этих |
|||||||
|
|
частей |
в отдельности. |
Для |
||||||
|
хранения |
|||||||||
|
повышения |
достоверности |
||||||||
|
|
|
|
|||||||
Г |
|
|
работы |
ОЗУ |
|
используется |
||||
АК |
|
контроль. |
|
|
|
|
||||
Правильно |
Наиболее |
полный |
кон |
|||||||
|
|
|
||||||||
|
|
РА |
СХСР |
троль адресной части обеспе |
||||||
|
|
t |
НЛЬибко |
чивается в том |
случае, |
если |
||||
|
|
|
считываемый |
из |
ЗУ |
код |
со |
|||
|
|
Адрес |
|
|||||||
|
|
|
держит информацию об |
ад |
||||||
Рис. 7-19. Структурная схема |
||||||||||
ресе. В соответствии с этим |
||||||||||
ЗУ с контролем адресной части. |
||||||||||
РА— |
регистр |
адреса; АК — адрес |
получаем структурную схему |
|||||||
ный |
коммутатор; РЧ — регистр чис |
ЗУ с |
контролем |
адресной |
||||||
ла; |
СхСр |
— схема сравнения. |
части |
(рис. 7-19). Схема |
ра |
|||||
|
|
|
|
|||||||
|
|
|
|
ботает |
следующим |
образом. |
Пусть необходимо произвести запись ^-разрядного числа из регистра числа РЧ по адресу, определяемому содер жимым релистра адреса РА. В этом случае содержимое
РА помещается |
в г дополнительных разрядов |
РЧ, |
где |
||||
г — количество |
разрядов |
в |
РА, |
и производится |
запись |
||
сформированного таким |
образом |
кода длиной |
(k + r) |
||||
разрядов. При |
считывании |
производится сравнение г |
|||||
дополнительных |
разрядов |
РЧ с |
содержимым |
РА, |
при |
отсутствии ошибок в работе ЗУ эти коды должны сов падать. Рассмотренный способ формирования контроль ных разрядов практически не используется, так как тре бует увеличения разрядности запоминаемых чисел на r=\ogzW разрядов, где W — емкость ЗУ.
Применение принципов избыточного кодирования по зволяет использовать значительно меньшее количество
224
контрольных разрядов, чем logiW. На рис. 7-20 пока зана структурная схема ЗУ, которая работает аналогич но предыдущей с той лишь разницей, что по содержимо му РА с помощью кодера К производится вычисление контрольных разрядов, которые поступают в РЧ (при записи числа в ЗУ) или на схему сравнения (при считы вании). Для этой цели можно использовать любой из рассмотренных выше групповых или арифметических ко
дов. |
Проблема |
состоит |
|
РЧ |
|||
лишь в том, чтобы вы |
|
||||||
|
|
||||||
бранный код обеспечивал: |
Среда |
к |
|||||
простую |
реализацию |
хранения |
|
||||
кодера; |
|
|
|
г |
|||
|
|
|
|
||||
высокую |
вероятность |
I |
|
||||
обнаружения |
характер |
А К |
|
||||
ных |
ошибок |
(задача со |
IE |
Прибыльна |
|||
гласования |
корректирую |
С Х С Р С |
|||||
РА |
|||||||
щих |
способностей |
кода |
и |
|
Чкиибка |
||
статистики ошибок); |
|
Адрес |
|
||||
минимальную |
избы |
Рис. 7-20. Структурная схема ЗУ |
|||||
точность информации. |
|
||||||
Противоречивость этих |
с использованием |
кодера для кон |
|||||
троля адресной части. |
|||||||
требований |
очевидна. |
В |
|||||
|
|
настоящее время адресная информация обычно кодируется арифметическим разде
лимым кодом, порождаемым одним модулем. Значение применяемого модуля обычно 'равно 3, т. е. А=3. Пре имущественное использование арифметических кодов объясняется тем, что этот класс кодов применяется для контроля АУ, в котором может производиться модифи кация адреса, а также относительной простотой органи зации модульного контроля счетчика адреса.
Если адресная информация поступает в ЗУ в закоди рованном виде, то можно использовать следующую орга низацию контроля (рис. 7-21). В режиме записи инфор
мации содержимое контрольных разрядов |
адреса |
поме |
щается в дополнительные разряды РЧ. |
После |
этого |
производится сравнение контрольного кода, |
записанного |
в РЧ, с контрольным кодом на выходе кодера. Тем са мым контролируется безошибочность принятого адрес ного кода и правильность выполнения микрооперации пересылки контрольного кода из РА в РЧ. При считы вании информации производится сравнение считанного контрольного кода и принятого в РА. Микрооперации
15—236 |
225 |
сравнения |
может предшествовать |
контроль правильно |
сти приема |
адресного кода в РА. |
|
Особенность контроля адресной |
части односторонне |
го ЗУ, из которого информация только считывается, за ключается в том, что при прошивке информации с каж дым числом записывается (прошивается) контрольный код адреса. При считывании информации считанный кон трольный код сравнивается с контрольным кодом, «со провождающим» адрес. Если адресная часть не содер
жит |
специальных контрольных |
разрядов, |
то |
контроль- |
|||
|
Среда |
|
|
|
|
|
|
|
хранения |
Рис. |
7-21. |
|
Структурная |
||
|
|
|
схема ЗУ с контролем ад |
||||
|
|
|
ресной части, если |
адресный |
|||
|
АК |
|
код |
закодирован |
помехоус |
||
|
|
|
тойчивым |
кодом. |
|||
|
I E |
Правильно |
|
|
|
|
|
|
|
|
|
|
|
||
|
РА |
3—ЦСХСР |
|
|
|
|
|
|
|
Ошибка |
|
|
|
|
|
|
Адрес |
Контрольный код |
|
|
|
|
|
ный |
код |
от информационной |
части адреса |
можно |
|||
вычислить |
с помощью кодера. |
Сравнение |
вычисляемого |
и считываемого из ЗУ контрольных кодов адреса позво ляет осуществить контроль адресной части ЗУ.
Для обнаружения ошибок в числовой |
части |
ЗУ |
так |
же используются корректирующие коды. |
Наиболее |
ши |
|
роко применяются простейшие групповые |
коды |
с |
кон |
тролем на нечетность или четность количества единиц в слове и арифметические разделимые коды, порождае мые модулем Л = 3 или А — 1. Часто для контроля число вых данных слово разбивается на группы постоянной длины и в каждую группу добавляется один контроль ный разряд, в котором записывается 1 или 0 таким об разом, чтобы количество единиц в группе с контрольным
разрядом было |
нечетным. |
Такой |
контроль |
применяется,, |
|
в частности, |
в |
машинах |
серии |
ЕС ЭВМ, где каждое |
|
8-разрядное |
слово, называемое |
байтом, |
содержит 9-й |
контрольный разряд. Разрядность слов, считываемых из: ОЗУ, равна 72 (8 байтов).
Таким образом, в общем случае в РЧ ОЗУ содер жится две группы контрольных разрядов, одна из кото-
226
рых используется для |
контроля адресной части, |
а вто |
р а я — числовой (рис. |
7-22). С целью уменьшения |
раз |
рядности хранимых контрольных кодов часто оба этих контрольных кода объединяются в один
|
Y=a>k |
8, |
|
|
где а — контрольный код |
адреса; |
в — контрольный код |
||
числа, |
%—• используемая |
операция. Например, если кон |
||
троль |
адресной и числовой |
части |
ОЗУ производится |
с помощью кода, порождаемого модулем А, то обычно Y — ° + Р п о модулю А.
Другими словами, контрольный код равен сумме по модулю контрольных кодов числа и адреса. В этом слу чае обнаружение ошибок при считывании информации производится следующим образом:
1) из считанного контрольного кода у вычитается контрольный код адреса а (а «сопровождает» адрес, по которому произведено считывание, или вычисляется ко дером по содержимому РА);
Информационные разряды (число) |
Контрольный]Контрольный] |
||
код числа |
код адреса |
||
|
Информационные разряды (число) |
Контрольный |
|
код |
||
|
6)
Рис. 7-22. |
Структура |
слов в |
регистре числа ОЗУ. |
а — раздельная запись |
контрольных |
кодов |
числа и адреса; б —совместная за |
|
пись контрольных кодов. |
2)вычисляется контрольный код, соответствующий считанным информационным разрядам;
3)производится сравнение контрольных кодов, полу ченных первым и вторым способами.
Рассмотренные методы контроля адресной части ОЗУ
позволяют существенно повысить достоверность хране ния информации. Однако необходимость введения допол нительной аппаратуры снижает аппаратурную надеж ность ОЗУ, т. е. вероятность возникновения отказа уве-
15* |
227 |
личивается. С этой точки зрения представляет интерес
использование |
корректирующих кодов для обнаружения |
и исправления |
ошибок в ОЗУ. Решение этой задачи мож |
но искать в следующих направлениях: 1) применение ПД в адресных цепях; 2) применение корректирующих кодов для исправления ошибок в запоминающей среде и цепях записи —считывания информации. Рассмотрим эти на правления 'более подробно.
При использовании ПД, принцип работы которых описан в '§ 2-6, в ОЗУ с линейной выборкой адресный код
Среда
хранения
I |
ПД |
I |
|
|
I |
PA |
I |
|
|
|
I |
|
|
|
|
Адрес |
|
|
|
(корректирующий код) |
5) |
|
||
|
а) |
|
|
|
Рис. 7-23. Использование пороговых |
дешифраторов в качестве |
адрес |
||
|
|
ных коммутаторов. |
|
|
|
а — ОЗУ с линейной выборкой; б — О З У с совпадением полутоков. |
|||
должен |
быть закодирован |
помехоустойчивым |
кодом |
(рис. 7-23,о). Пороговый дешифратор выполняет роль адресного коммутатора, и правильность его функциони рования не нарушается, если количество отказов в де шифраторе или РА не превышает некоторого критиче ского числа, определяемого .параметрами используемого корректирующего кода. Количество допустимых отказов определяется значением «минимального отношения рас познавания». Наибольшую помехозащищенность дешиф ратора обеспечивают коды, получаемые с помощью ма триц Адамара.
В ОЗУ с совпадением полутоков, а также в ОЗУ Z- типа используется два пороговых дешифратора: ПДХ и ПДУ (рис. 7-23,6). Соответственно адрес также раздедя-
228
ется на две части: РАХ и РАУ, для каждой из которых с помощью кодеров К вычисляются контрольные разря ды. Таким образом, на входы ПДХ и ПДУ поступает кор ректирующий код с требуемым минимальным расстоя нием d.
Основной недостаток рассмотренных схем (рис. 7-23) состоит в том, что в адресной части ОЗУ сохраняется не контролируемая аппаратура — адресные формирователи, включаемые иа выходах ПД, а также вторая ступень дешифрации в ОЗУ типа Z.
Впервые пороговые дешифраторы были применены в качестве адресных коммутаторов ОЗУ ЦВМ японски ми инженерами [Л. 50].
Относительно малая величина сигналов считывания делает ОЗУ очень чувствительными к стабильности па раметров сердечников и схем возбуждения. Особенно остро эта проблема стоит в ОЗУ с совпадением полуто ков. В то же время во всех современных ОЗУ при считы вании информации происходит ее разрушение с после дующей регенерацией (восстановлением). Ошибочно счи танная информация в период регенерации записывается в ячейку памяти с ошибкой, устранение которой програм мными средствами часто связано с большими затратами времени. Учитывая эти особенности ОЗУ, в ряде ЦВМ используются групповые корректирующие коды для об наружения и исправления ошибок в числовом тракте. Числовой тракт ОЗУ достаточно хорошо описывается моделью с независимыми ошибками, т. е. наиболее веро ятны одиночные ошибки. Поэтому обычно применяется разделимый код Хэмминга с минимальным расстоянием d=4, который позволяет исправить любую одиночную ошибку и обнаружить любую двукратную ошибку.
Вмашине ВНИИЭМ-3 использование кода Хэмминга
сминимальным расстоянием d=4 потребовало увеличе ния разрядности ОЗУ с 24 до 30 разрядов (Л. 51]. До полнительные затраты аппаратуры на реализацию ОЗУ составили 30%.
Исправление ошибок в числовом тракте может соче таться с контролем адресной части ОЗУ с помощью рас смотренных выше методов.
7-4. ПОВЫШЕНИЕ НАДЕЖНОСТИ ЗАПОМИНАЮЩИХ УСТРОЙСТВ НА МАГНИТНЫХ ДИСКАХ
Внешние запоминающие устройства современных ЦВМ. предназначены для хранения больших объемов информации на магнитных носителях — дисках, лентах, барабанах, картах. Проблема обеспечения высокой на дежности таких устройств решается в трех основных на правлениях:!) создание совершенных конструкций элек тромеханических узлов; 2) применение совершенных тех нологических процессов для обеспечения высокого каче ства ферромагнитного покрытия материалов с требуе мыми физико-механическими характеристиками; 3) при менение аппаратно-программных методов для автомати ческого контроля и коррекции ошибок, возникающих при считывании информации из ЗУ.
Систематические ошибки из-за наличия дефектных участков (аномалий) на ферромагнитном покрытии обыч но исключаются при разметке покрытия перед записью информации. Случайные ошибки возникают в основном по следующим причинам:
в процессе длительной эксплуатации носителя инфор мации происходит износ ферромагнитного покрытия (осо бенно при наличии контакта между записывающими и считывающими головками и покрытием) и ухудшение физико-механических свойств подложки;
при длительном хранении информации границы маг нитных отпечатков «расплываются»;
мгновенное ухудшение контакта между головкой и покрытием;
попадание пыли или открошившихся частиц ферро магнитного покрытия на рабочую поверхность или маг нитные головки.
Устранение этих источников ошибок связано с прин ципиальными трудностями, и поэтому, как правило, в со временных ЗУ применяются аппаратно-программные ме тоды повышения надежности, основанные на использова нии методов избыточного кодирования.
При выборе корректирующего кода учитывается тот факт, что возникающие при считывании ошибки группи руются вдоль дорожки (§ 1-2). Это объясняется более высокой плотностью записи информации вдоль носителя, чем поперек. Кроме того, на выбор кода влияет метод размещения информации на поверхности носителя.
230