RU2297032C2 - Самокорректирующееся запоминающее устройство - Google Patents

Самокорректирующееся запоминающее устройство Download PDF

Info

Publication number
RU2297032C2
RU2297032C2 RU2004121215/09A RU2004121215A RU2297032C2 RU 2297032 C2 RU2297032 C2 RU 2297032C2 RU 2004121215/09 A RU2004121215/09 A RU 2004121215/09A RU 2004121215 A RU2004121215 A RU 2004121215A RU 2297032 C2 RU2297032 C2 RU 2297032C2
Authority
RU
Russia
Prior art keywords
inputs
outputs
input
group
elements
Prior art date
Application number
RU2004121215/09A
Other languages
English (en)
Other versions
RU2004121215A (ru
Inventor
Алексей Николаевич Царьков (RU)
Алексей Николаевич Царьков
Евгений Михайлович Ананьев (RU)
Евгений Михайлович Ананьев
Александр Алексеевич Павлов (RU)
Александр Алексеевич Павлов
Алексей Александрович Павлов (RU)
Алексей Александрович Павлов
Павел Александрович Павлов (RU)
Павел Александрович Павлов
Алексей Витальевич Шандриков (RU)
Алексей Витальевич Шандриков
Надежда Валерьевна Ерёмина (RU)
Надежда Валерьевна Ерёмина
Дмитрий В чеславович Смирнов (RU)
Дмитрий Вячеславович Смирнов
зов Александр Вениаминович Долгов (RU)
Александр Вениаминович Долговязов
Original Assignee
Институт Инженерной Физики Российская Федерация (Ииф Рф)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Институт Инженерной Физики Российская Федерация (Ииф Рф) filed Critical Институт Инженерной Физики Российская Федерация (Ииф Рф)
Priority to RU2004121215/09A priority Critical patent/RU2297032C2/ru
Publication of RU2004121215A publication Critical patent/RU2004121215A/ru
Application granted granted Critical
Publication of RU2297032C2 publication Critical patent/RU2297032C2/ru

Links

Abstract

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

Description

Изобретение относится к вычислительной технике и может быть использовано для повышения достоверности функционирования работы комбинационных устройств, а так же устройств хранения и передачи информации (оперативных и постоянных запоминающих устройств ЭВМ и т.п.).
Известно самокорректирующееся дискретное устройство [1], использующее декодирующее устройство, исправляющее модульные (байтовые) ошибки на основе применения кодов Рида-Соломона, содержащие исходную схему, кодирующее устройство, избыточную схему, декодирующее устройство, включающее схему вычисления синдрома, формирователь мнимых синдромов, дешифратор ошибки в байте, схему вычисления искаженного байта, коммутаторы ошибок, корректор ошибок, входы устройства подключены к входам исходной схемы и к входам кодирующего устройства, выходы кодирующего устройства подключены к входам избыточной схемы, выходы которой подключены к первым входам схемы вычисления синдрома, выходы исходной схемы подключены к вторым входам схемы вычисления синдрома и к первым входам корректора, выходы схемы вычисления синдрома подключены ко входам дешифратора ошибки, выходы которого подключены к вторым входам корректора, выходы корректора являются выходами устройства.
Недостатком устройства является низкая достоверность функционирования устройства, так как коды Рида-Соломона позволяют корректировать ошибку в одном байте информации и обнаруживать ошибку в двух байтах информации.
Наиболее близким по техническому решению является самокорректирующееся дискретное устройство [2], содержащие исходную схему, первое кодирующее устройство, схему синдрома ошибки, дешифратор ошибки, корректор, второе, третье и четвертое кодирующие устройства, с первой по четвертую схемы свертки, схему признака ошибки, элемент ИЛИ, входы устройства подключены к исходной схеме и к входам первого кодирующего устройства, к входам второго кодирующего устройства, а выходы исходной схемы подключены к входам третьего и четвертого кодирующих устройств, к первым входам корректора, выходы которого являются выходами устройства, выходы с первого по четвертое кодирующих устройств подключены соответственно к входам с первой по четвертую схем свертки, выходы первой и третьей схем свертки подключены к входам схемы синдрома ошибки, выходы второй и четвертой схем свертки подключены к входам схемы признака ошибки, выходы схемы синдрома ошибки и признака ошибки подключены к входам дешифратора ошибки, первая группа выходов дешифратора ошибки подключена к вторым входам корректора, а вторая группа выходов подключена к входу элемента ИЛИ, с выхода которого снимается сигнал "отказ устройства".
Недостатком устройства является низкая достоверность функционирования, так как не корректируются ошибки, возникающие одновременно в информационных и контрольных разрядах.
Целью изобретения является повышение достоверности функционирования устройства за счет коррекции 72% обнаруживаемых ошибок не превышающих кратность k-1, при условии максимального обнаружения количества ошибок в кодовом наборе.
Поставленная цель достигается тем, что устройство, содержащие исходную схему, кодирующее устройство, схему синдрома ошибки, дешифратор, корректор, информационные входы устройства подключены к первым входам исходной схемы, выходы которой подключены к первым входам корректора, выходы корректора являются выходами устройства, отличающееся тем, что оно дополнительно содержит с первого по пятый элементы И, с первого по восьмой элементы ИЛИ, блок инверсии, регистр, элемент НЕ, адресные входы, вход записи, вход считывания, вход "Сброс", причем информационные входы устройства подключены к первым входам первого элемента И, адресные входы подключены к вторым входам исходной схемы и к первым входам регистра, вход записи подключен к третьему входу исходной схемы, к второму входу первого элемента И и к второму входу регистра, вход считывания подключен к четвертому входу исходной схемы, к первому входу второго элемента И, к первому входу третьего элемента И, к первому входу четвертого элемента И и к третьему входу регистра, вход "Сброс" подключен к пятому входу исходной схемы и к четвертому входу регистра, выходы исходной схемы подключены к вторым входам второго элемента И, выходы которого подключены к первым входам первого элемента ИЛИ, вторые входы которого подключены к выходам первого элемента И, а выходы подключены к входам блока инверсии и к первым входам кодирующего устройства, выходы кодирующего устройства подключены к вторым входам третьего элемента И и к пятым входам регистра, выходы блока инверсии подключены к вторым входам кодирующего устройства, первые входы схемы синдромов ошибки подключены к выходам третьего элемента И, вторые входы подключены к выходам регистра, а выходы подключены к входам дешифратора и к входам второго элемента ИЛИ, выход которого подключен к первому входу пятого элемента И, первая группа выходов дешифратора подключена к входам третьего элемента ИЛИ, вторая группа выходов дешифратора подключена к входам четвертого элемента ИЛИ, третья группа выходов дешифратора подключена к входам пятого элемента ИЛИ, четвертая группа выходов дешифратора подключена к входам шестого элемента ИЛИ, пятая группа выходов дешифратора подключена к входам седьмого элемента ИЛИ, выходы с третьего по шестой элементов ИЛИ подключены соответственно с второго по пятый входы четвертого элемента И и с первого по четвертый входы восьмого элемента ИЛИ, выход седьмого элемента ИЛИ подключен к пятому входу восьмого элемента ИЛИ, выход которого через элемент НЕ подключен к второму входу пятого элемента И, вход пятого элемента И является выходом устройства, выходы четвертого элемента И подключены к вторым входам корректора.
На чертеже представлена блок-схема устройства. Устройство содержит: исходную схему 1, первый элемент 2 И, второй элемент 3 И, третий элемент 4 И, четвертый элемент 5 И, пятый элемент 6 И, первый элемент 7 ИЛИ, второй элемент 8 ИЛИ, третий элемент 9 ИЛИ, четвертый элемент 10 ИЛИ, пятый элемент 11 ИЛИ, шестой элемент 12 ИЛИ, седьмой элемент 13 ИЛИ, восьмой элемент 14 ИЛИ, кодирующее устройство 15, схему синдрома ошибки 16, дешифратор 17, корректор 18, блок инверсии 19, регистр 20, элемент 21 НЕ, информационные входы 22, адресные входы 23, вход 24 записи, вход 25 считывания, вход 26 сброс, выходы 27 устройства, выход 28 "Отказ устройства".
Информационные входы 22 устройства подключены к первым входам первого элемента 2 И к первым входам исходной схемы 1, выходы которой подключены к первым входам корректора 18, адресные входы 23 подключены к вторым входам исходной схемы 1 и к первым входам регистра 17, вход 24 записи подключен к третьему входу исходной схемы 1, к второму входу первого элемента 2 И и к второму входу регистра 20, вход 25 считывания подключен к четвертому входу исходной схемы 1, к первому входу второго элемента 3 И, к первому входу третьего элемента 4 И, к первому входу четвертого элемента 5 И и к третьему входу регистра 20, вход 26 "Сброс" подключен к пятому входу исходной схемы 1 и к четвертому входу регистра 20, выходы исходной схемы 1 подключены к вторым входам второго элемента 3 И, выходы которого подключены к первым входам первого элемента 7 ИЛИ, вторые входы которого подключены к выходам первого элемента 2 И, а выходы подключены к входам блока инверсии 19 и к первым входам кодирующего устройства 15, выходы кодирующего устройства 15 подключены к вторым входам третьего элемента 4 И и к пятым входам регистра 20, выходы блока 19 инверсии подключены к вторым входам кодирующего устройства 15, первые входы схемы 16 синдромов ошибки подключены к выходам третьего элемента 4 И, вторые входы подключены к выходам регистра 20, а выходы подключены к входам дешифратора 17 и к входам второго элемента 8 ИЛИ, выход которого подключен к первому входу пятого элемента 6 И, первая группа выходов дешифратора 17 подключена к входам третьего элемента 9 ИЛИ, вторая группа выходов дешифратора 17 подключена к входам четвертого элемента 10 ИЛИ, третья группа выходов дешифратора 17 подключена к входам пятого элемента 11 ИЛИ, четвертая группа выходов дешифратора 17 подключена к входам шестого элемента 12 ИЛИ, пятая группа выходов дешифратора 17 подключена к входам седьмого элемента 13 ИЛИ, выходы с третьего 9 по шестой 12 элементов ИЛИ подключены соответственно с второго по пятый входы четвертого элемента 5 И и с первого по четвертый входы восьмого элемента 14 ИЛИ, выход седьмого элемента 13 ИЛИ подключен к пятому входу восьмого элемента 14 ИЛИ, выход которого через элемент 21 НЕ подключен к второму входу пятого элемента 6 И, вход пятого элемента 6 И является выходом устройства, выходы четвертого элемента 5 И подключены к вторым входам корректора 18.
Блок 19 инверсии предназначен для инвертирования значений информационных разрядов, поступающих с выходов первого элемента 7 ИЛИ соответственно при записи и считывании информации.
В кодирующем устройстве 15 информационные разряды представляются в виде двухстрочной информационной матрицы:
Figure 00000002
где yi,
Figure 00000003
- соответственно прямое и обратное значение i-го информационного разряда. Относительно сформированной матрицы в кодирующем устройстве 15 проводятся правые и левые диагональные проверки.
Число диагональных проверок (число контрольных разрядов) определяется по формуле:
RД=2k+2.
При считывании информации, кодирующие устройство 15 формирует (аналогичным образом) вектор контрольных разрядов RП принятого кодового набора.
Таким образом, в период записи и считывания информации, на выходе кодирующего устройства 15, имеем соответственно векторы контрольных разрядов:
Figure 00000004
Схема 16 синдрома ошибки представляют собой схему поразрядного сравнения и предназначена для формирования значений синдрома ошибки на основе передаваемой и полученной информации. Результат сложения по mod 2 значений сигналов переданных и сформированных контрольных разрядов даст синдром ошибки:
Figure 00000005
Дешифратор 17 содержит 2k+2 входа (число разрядов синдрома ошибки) и L=l1+l2+l3 выходов (по числу схем совпадения, представляющих собой 2k+2-входовые схемы И), где
- l1-группа элементов И (для различных синдромов, характеризующих ошибки только в информационных разрядах;
- l2-группа элементов И (для различных синдромов, характеризующих ошибок только в контрольных разрядах;
- l3-группа группа элементов И (для синдромов, характеризующих ошибки, возникающие одновременно в информационных и контрольных разрядах.
В случае возникновения ошибок на одном из его выходов формируется единичный сигнал.
Выходы дешифратора 17 объединены соответственно в один выход с помощью третьего элемента 9 ИЛИ, четвертого элемента 10 ИЛИ, пятого элемента 11 ИЛИ, шестого (k-го) элемента 12 ИЛИ для формирования управляющих сигналов на корректор, соответственно для коррекции первого, второго ...k-го информационных разрядов.
Седьмой элемент 13 ИЛИ объединяет выходы дешифратора 17 (выходы схем И), принадлежащие подмножеству l2 и соответствующие возникновению ошибок только в контрольных разрядах (для которых не требуется формирование управляющих сигналов на корректор).
Корректор 18 включает k-элементов неравнозначности и предназначен для исправления ошибок
Figure 00000006
, возникающих на выходах исходной схемы 1. При исправлении ошибок реализуется функция относительно управляющих сигналов ui, поступающих с выходов элементов ИЛИ:
Figure 00000007
Регистр 20 предназначен для хранения значений сигналов вектора контрольных разрядов, сформированного при записи информации в исходную схему 1.
При возникновении ошибок, принадлежащих подмножеству n1 - для одинаковых синдромов, указывающих на ошибку в различных информационных разрядах (имеющих одинаковое значение синдромов и дополнительных проверок, см. приложение), характеризующихся наличием единичных значений на выходе схемы 16 синдромов ошибок и отсутствие единичных значений на выходах с третьего 9 по седьмой 13 элементов ИЛИ, с помощью второго элемента 8 ИЛИ, восьмого элемента 14 ИЛИ, элемента 21 НЕ, пятого элемента 6 И формируется сигнал "Отказ устройства".
Устройство работает следующим образом. Перед началом работы на вход 25 подается сигнал, устанавливающий устройство в исходное состояние. При поступлении входной информации на информационные входы 22, адресные входы 23 и сигнала "Запись" на вход 24 информация записывается по указанному адресу в исходной схеме 1. Одновременно она поступает на входы первого элемента 2 И, открытого сигналом со входа 24, и далее через элемент 7 ИЛИ входная информация поступает на первые входы кодирующего устройства 15 и на входы блока 19 инверсии. На вторые входы кодирующего устройства 15 поступают инверсные значения информационных разрядов. Из прямых и инверсных значений информационных разрядов формируется двухстрочная информационная матрица, относительно которой в кодирующем устройстве 15, реализованном на группе сумматоров по mod 2, организуются правые и левые диагональные проверки.
С выходов кодирующего устройства 15 значение вектора контрольных разрядов поступает на вход регистра 20 и записывается по указанному адресу.
При считывании информации по указанному адресу сигналы с выхода исходной схемы 1, через второй элемент 3 И, открытый сигналом "Считывание" с входа 25, элемент 7 ИЛИ повторно поступают на вход кодирующего устройства 15, где формируются значения сигналов в контрольных разрядах относительно информационной матрицы, сформированной по полученной информации.
При этом информация с выходов кодирующего устройства 15 через третий элемент 4 И поступает на первые входы схемы 16 синдрома ошибки, на вторые входы которой поступает информация, считываемая с регистра 20.
Схема 16 синдрома ошибки выполнена на сумматорах по mod 2 и предназначена для поразрядного сравнения значений принятых контрольных разрядов сформированных относительно полученной информации.
В результате на выходе схемы 16 синдрома ошибки имеем сформированное значение синдрома ошибки.
Дешифратор 17 при возникновении ошибки формирует на одном из своих выходов единичный сигнал в соответствии с поступающим значением синдрома ошибки. В зависимости от номера информационного разряда, имеющего ошибку, управляющий сигнал появится на выходе соответствующего (9...12) элемента ИЛИ. Данный сигнал через открытый четвертый элемент 5 И поступает на вход корректора 18, где происходит исправление ошибочного информационного разряда.
Если ошибка произошла только в контрольных разрядах сигнал появится на выходе седьмого элемента 13 ИЛИ (не требуется подача управляющих сигналов на корректор).
Выходы дешифратора 17 объединены соответственно в один выход с помощью третьего элемента 9 ИЛИ, четвертого элемента 10 ИЛИ, пятого элемента 11 ИЛИ, шестого (k-го) элемента 12 ИЛИ для формирования управляющих сигналов на корректор, соответственно для коррекции первого, второго ...k-ro информационных разрядов.
Седьмой элемент 13 ИЛИ объединяет выходы дешифратора 17, (выходы схем И) принадлежащие подмножеству l2 и соответствующих возникновению ошибок только в контрольных разрядах (для которых не требуется формирование управляющих сигналов на корректор).
Корректор 18 включает k-элементов неравнозначности и предназначен для исправления ошибок
Figure 00000008
, возникающих на выходах исходной схемы 1. При исправлении ошибок реализуется функция относительно управляющих сигналов ui, поступающих с выходов элементов ИЛИ:
Figure 00000007
При возникновении ошибок, принадлежащих подмножеству n1 - для одинаковых синдромов, указывающих на ошибку в различных информационных разрядах (имеющих одинаковое значение синдромов и дополнительных проверок, см. приложение), характеризующихся наличием единичных значений на выходе схемы 16 синдромов ошибок и отсутствие единичных значений на выходах с третьего 9 по седьмой 13 элементов ИЛИ, с помощью второго элемента 8 ИЛИ, восьмого элемента 14 ИЛИ, элемента 21 НЕ, пятого элемента 6 И формируется сигнал "Отказ устройства".
Приложение
Коррекция ошибок заданной кратности, при условии обнаружения ошибок в остальных разрядах информации, может достигается на основе итеративного кода.
Процедура построения двумерного итеративного кода состоит в следующем [3]. Заданную совокупность информационных символов делят на группы (блоки, модули) информации, по b-разрядов в каждой группе. Полученные модули информации представляют в виде информационной матрицы (1):
Figure 00000009
Затем осуществляется кодирование информации по методу четности (путем сложения по mod 2 символов строк и столбцов полученной матрицы). В результате имеем двумерный итеративный код, позволяющий обнаруживать и исправлять любую одиночную ошибку:
Figure 00000010
где Н=h1,h2,...,hm - вектор четности строк; Z=z1,z2,...,zb - вектор четности столбцов. Вектора четности строк и столбцов образуют совокупность контрольных разрядов R1={r1,r2,rm,rm+1,...,rb}. При получении кодовой комбинации относительно информационных разрядов повторно формируется значения контрольных разрядов
Figure 00000011
={r1,r2,rm,rm+1,...,rb}. В данном случае разница между переданными значениями контрольных разрядов и полученными после приема информации образует синдром ошибки Е:
Figure 00000012
При этом разряды синдрома ошибки e1e2...em (полученные относительно вектора четности строк) указывают модуль информации, имеющей ошибку, а разряды еmem+1...еb (полученные относительно вектора четности столбцов) указывают ошибочный разряд в модуле информации.
Так как кодовые комбинации строк и столбцов имеют минимальное расстояние d=2, то минимальное расстояние данного кода d=4. Этот код позволяет исправлять любую одиночную ошибку и обнаруживать значительную долю кратных ошибок.
Структуры ошибок, не обнаруживаемых двумерным итеративным кодом, показаны на рисунке:
Figure 00000013
Рис.1 Структуры ошибок, не обнаруживаемых двумерным итеративным кодом: а) ошибки кратности 4; б) ошибки кратности 6.
Figure 00000014
Рис.2 Структуры ошибок двумерного итеративного кода, приводящие к ошибочной коррекции: а) ошибки кратности 5; б) ошибки кратности 7.
В общем случае можно строить итеративные коды более высокой размерности (трехмерные, четырех мерные и т.д.), где каждый информационный символ будет являться компонентой одновременно х различных кодовых слов. Параметры итеративных кодов размерности х таковы [3]:
Figure 00000015
где ni,ki,di - соответственно длина, количество информационных разрядов, минимальное расстояние кодовых наборов строк и столбцов.
Исходя из этого, для построения итеративных кодов следует использовать проверки, имеющие наибольшую обнаруживающую способность.
Так, организация диагональных проверок рассматриваемой матрицы, позволит выявить структуры ошибок, не обнаруживаемые итеративным кодом, реализующим проверки четности строк и столбцов.
Структура диагональных проверок, обнаруживающих рассматриваемые ошибки имеет вид, представленный на рис.3.
Figure 00000016
Рис.3 Структура диагональных проверок:
Figure 00000017
- результаты правых диагональных проверок;
Figure 00000018
- результаты левых диагональных проверок
Левые диагональные проверки образуются по правилу:
Figure 00000019
Результаты правых диагональных проверок образуются при суммировании значений следующих информационных разрядов:
Figure 00000020
В этом случае, общее число диагональных проверок равно 2l, или:
Figure 00000021
Пример 1. Пусть рассматриваемое слово состоит из четырех информационных разрядов, которые имеют нулевые значения. Для данного кодового набора информационная матрица имеет вид:
Figure 00000022
В этом случае проверки на четность строк и столбцов информационной матрицы дадут нулевые значения и кроме этого будут иметь нулевые значения результаты всех правых и левых диагональных проверок. При возникновении ошибки во всех информационных разрядах имеем четную ошибку, не обнаруживаемую двумерным итеративным кодом, т.к. проверки на четность строк и столбцов информационной матрицы имеют нулевые значения:
Figure 00000023
В то же время правые и левые диагональные проверки дадут результат 101.
Утверждение 1. Итеративный код, реализующий правые и левые диагональные проверки, обнаруживает все четные ошибки не обнаруживаемые двумерным итеративным кодом и выявляет нечетные ошибки, воспринимаемые двумерным итеративным кодом как корректируемые.
В свою очередь существуют структуры ошибок не обнаруживаемые итеративным кодом, реализующим правые и левые диагональные проверки и проверками на четность строк и столбцов. Структуры рассматриваемых ошибок представлены на рис.4.
Figure 00000024
Рис.4 Структуры ошибок не обнаруживаемых диагональными проверками и проверками строк и столбцов.
Так, например, относительно информационной матрицы, имеющей нулевые значения, диагональными проверками не будет обнаружена следующая структура ошибки.
Figure 00000025
Для того чтобы исключить появление рассматриваемых ошибок, информационная матрица должна содержать не более двух строк.
Утверждение 2. Для информационной матрицы b×2 итеративный код, реализующий правые и левые диагональные проверки, обнаруживает максимальное количество возможных ошибок (за исключением множества 2k-1 запрещенных кодовых наборов, трансформируемых в разрешенные кодовые наборы).
Таким образом, при использовании итеративного кода, реализующего правые и левые диагональные проверки и проверки на четность, кодовый набор передается в виде:
Figure 00000026
Для рассматриваемого примера кодирование информации осуществляется следующим образом:
r11; r22 ⊕ у3; r34; r43; r51 ⊕ у4; r62.
Результат сложения значений сигналов контрольных разрядов, переданных и полученных, даст синдром ошибки:
Figure 00000027
где разряды вектора ошибки r1,r2.........rl - соответствуют правым диагональным проверкам, rl,rl+1............r2l - левым и сформированным относительно полученных информационных разрядов;
Figure 00000028
- значения полученных контрольных разрядов.
Свойство 1. Существуют такие конфигурации ошибок в информационных и контрольных разрядах, для которых синдромы ошибок имеют одинаковые значения.
Для различения данных ошибок, при формировании значений синдромов ошибок, организуются дополнительные диагональные проверки:
Figure 00000029
Таким образом, каждой ошибке из множества ошибок M=(2n)k можно поставить в соответствие значение синдрома ошибки и значение дополнительных диагональных проверок.
Свойство 2. Каждой совокупности значения синдрома ошибок и значения дополнительных проверок соответствует подмножество Q-ошибок различной конфигурации.
Следствие 1. Для различения ошибок, принадлежащих данному подмножеству, следует ограничить кратность исправляемых ошибок и увеличить число контрольных разрядов (осуществить дополнительное кодирование информационных разрядов).
В связи с этим предлагаемый метод кодирования включает следующие положения:
1) для того чтобы обеспечить коррекцию 70% возникающих ошибок, целесообразно ограничится исправлением ошибок, кратность которых не превышает k-1;
2) из прямых инверсных значений информационных разрядов формируется информационная матрица:
Figure 00000030
3) для полученной информационной матрицы организуются правые и левые диагональные проверки. Число диагональных проверок (число контрольных разрядов) определяется по формуле:
Figure 00000031
4) кодовый набор передается в виде:
Figure 00000032
5) результат сложения значений сигналов переданных и сформированных контрольных разрядов даст синдром ошибки:
Figure 00000033
6) при формировании синдрома ошибки относительно полученных и сформированных значений контрольных разрядов организуются дополнительные диагональные проверки, число которых определяется выражением:
Figure 00000034
7) в результате имеем множество ошибок заданной кратности (в данном случае от одиночной до кратности k-1, определяемое выражением:
Figure 00000035
характеризующихся определенными значением синдрома ошибки и дополнительной проверки.
8) множество N разбивается на четыре подмножества N=n1+n2+n3+n4, где
n1 - синдромы, имеющие одинаковые дополнительные проверки (некорректируемые ошибки, признак отказа устройства);
n2 - подмножество групп (каждая группа включает 2k-одинаковых значений синдромов) при наличии ошибок только в информационных разрядах;
n3 - подмножество групп (каждая группа включает 2k-одинаковых значений синдромов) при наличии ошибок только в контрольных разрядах;
n4 - подмножество групп (каждая группа включает 2k-одинаковых значений синдромов) при наличии ошибок одновременно в информационных и контрольных разрядах.
Заметим, что для ошибок, не превышающих кратность k-1, нет ошибочных кодовых наборов, трансформируемых в разрешенные (исправные) кодовые наборы.
На основе полученных правил кодирования формируется стратегия декодирования, решающая задачу различения ошибок в информационных и контрольных разрядах, и правила коррекции возникающих ошибок, которая включает следующие пункты:
1) выявляются одинаковые дополнительные проверки, по которым из множества N исключается синдромы ошибок, принадлежащие подмножеству n1 (выявляются некорректируемые ошибки, для которых формируется сигнал "Отказ устройства");
2) определяются группы одинаковых синдромов (указывающих на ошибку в соответствующих информационных разрядах) для подмножества n2;
3) определяются группы синдромов ошибок, принадлежащих подмножеству n3, для которых не требуется коррекция информационных разрядов;
4) выявляются группы одинаковых значений синдромов ошибок, принадлежащих подмножеству n4 и позволяющих исправлять ошибки в соответствующих информационных разрядах.
Для рассматриваемого примера, реализующего предлагаемый метод кодирования, имеем:
- общее количество ошибок - 7504;
- число одинаковых синдромов ошибок, имеющих одинаковые дополнительные проверки (подмножество n1) - 2096 (число обнаруживаемых ошибок);
- 5408 - число корректируемых ошибок (72%);
- число ошибок только в информационных разрядах - 224 (l1=14-групп, каждая из которых включает по 16 одинаковых синдромов);
- число ошибок только в контрольных разрядах - 2016 (l2=126-групп, каждая из которых включает по 16 одинаковых синдромов);
- число ошибок, имеющих искажения одновременно в информационных и контрольных разрядах - 3168 (l3=198-групп, каждая из которых включает по 16 одинаковых синдромов).
В табл.1 представлены часть значений синдромов ошибок для подмножеств n2, n3, n4, (исключены синдромы ошибок подмножества n1, имеющие одинаковые значения дополнительных проверок).
Figure 00000036
Предлагаемый метод кодирования позволяет:
корректировать ошибку заданной кратности;
обнаруживать максимальное количество ошибок (за исключением ошибочных кодовых наборов, трансформируемых в разрешенные кодовые наборы);
сигнализировать о неисправности устройства памяти при возникновении некорректируемой ошибки.
Источники информации
1. Щербаков Н.С. Достоверность работы цифровых устройств. М: Машиностроение, 1989, 224 с. рис.39, рис.44.
2. Положительное решение по заявке (21)99111190/09 от 15.01.03 (подано 31.05.09), авторы: Царьков А.Н., Безродный Б.Ю., Новиков Н.Н., Романенко Ю.А., Павлов А.А.
3. Хетагуров Я. А. Руднев Ю.П. Повышение надежности цифровых устройств методами избыточного кодирования. М.: Энергия, 1974, 270 с.

Claims (1)

  1. Самокорректирующееся запоминающее устройство, содержащее запоминающее устройство, кодирующее устройство, предназначенное для осуществления правых и левых диагональных проверок и формирования вектора контрольных разрядов, схему синдрома ошибки, дешифратор, корректор, предназначенный для исправления ошибок, возникающих на выходах запоминающего устройства, информационные входы устройства подключены к первым входам запоминающего устройства, выходы которого подключены к первым входам корректора, выходы корректора являются выходами устройства, отличающееся тем, что оно дополнительно содержит с первой по четвертую группы элементов И, пятый элемент И, первую группу элементов ИЛИ, со второго по восьмой элементы ИЛИ, блок инверсии, регистр, элемент НЕ, адресные входы, вход записи, вход считывания, вход "Сброс", причем информационные входы запоминающего устройства подключены к первым входам элементов И первой группы, адресные входы подключены ко вторым входам запоминающего устройства и к первым входам регистра, вход записи подключен к третьему входу запоминающего устройства, к объединенным вторым входам элементов И первой группы и к второму входу регистра, вход считывания подключен к четвертому входу запоминающего устройства, к объединенным первым входам элементов И второй группы, к объединенным первым входам элементов И третьей группы, к объединенным первым входам элементов И четвертой группы и к третьему входу регистра, вход "Сброс" подключен к пятому входу запоминающего устройства и к четвертому входу регистра, выходы запоминающего устройства подключены к вторым входам элементов И второй группы, выходы которых подключены к первым входам элементов ИЛИ первой группы элементов ИЛИ, вторые входы которых подключены к выходам элементов И первой группы, а выходы подключены к входам блока инверсии и к первым входам кодирующего устройства, выходы кодирующего устройства подключены к вторым входам элементов И третьей группы и к пятым входам регистра, выходы блока инверсии подключены к вторым входам кодирующего устройства, первые входы схемы синдрома ошибки подключены к выходам элементов И третьей группы, вторые входы подключены к выходам регистра, а выходы подключены к входам дешифратора и к входам второго элемента ИЛИ, выход которого подключен к первому входу пятого элемента И, первая группа выходов дешифратора подключена к входам третьего элемента ИЛИ, вторая группа выходов дешифратора подключена к входам четвертого элемента ИЛИ, третья группа выходов дешифратора подключена к входам пятого элемента ИЛИ, четвертая группа выходов дешифратора подключена к входам шестого элемента ИЛИ, пятая группа выходов дешифратора подключена к входам седьмого элемента ИЛИ, выходы с третьего по шестой элементов ИЛИ подключены соответственно к вторым входам элементов И четвертой группы и с первого по четвертый входы восьмого элемента ИЛИ, выход седьмого элемента ИЛИ подключен к пятому входу восьмого элемента ИЛИ, выход которого через элемент НЕ подключен к второму входу пятого элемента И, выход пятого элемента И является выходом «Отказ устройства», выходы элементов И четвертой группы подключены к вторым входам корректора.
RU2004121215/09A 2004-07-14 2004-07-14 Самокорректирующееся запоминающее устройство RU2297032C2 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2004121215/09A RU2297032C2 (ru) 2004-07-14 2004-07-14 Самокорректирующееся запоминающее устройство

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2004121215/09A RU2297032C2 (ru) 2004-07-14 2004-07-14 Самокорректирующееся запоминающее устройство

Publications (2)

Publication Number Publication Date
RU2004121215A RU2004121215A (ru) 2006-01-10
RU2297032C2 true RU2297032C2 (ru) 2007-04-10

Family

ID=35872192

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2004121215/09A RU2297032C2 (ru) 2004-07-14 2004-07-14 Самокорректирующееся запоминающее устройство

Country Status (1)

Country Link
RU (1) RU2297032C2 (ru)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2455713C2 (ru) * 2007-12-17 2012-07-10 Квэлкомм Инкорпорейтед Адаптация ширин импульсов словарной шины в запоминающих системах
RU2816550C1 (ru) * 2023-05-16 2024-04-01 Александр Алексеевич Павлов Устройство хранения и считывания информации с коррекцией одиночных ошибок

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2455713C2 (ru) * 2007-12-17 2012-07-10 Квэлкомм Инкорпорейтед Адаптация ширин импульсов словарной шины в запоминающих системах
RU2816550C1 (ru) * 2023-05-16 2024-04-01 Александр Алексеевич Павлов Устройство хранения и считывания информации с коррекцией одиночных ошибок

Also Published As

Publication number Publication date
RU2004121215A (ru) 2006-01-10

Similar Documents

Publication Publication Date Title
US6453440B1 (en) System and method for detecting double-bit errors and for correcting errors due to component failures
US4569052A (en) Coset code generator for computer memory protection
US6473880B1 (en) System and method for protecting data and correcting bit errors due to component failures
US7278085B1 (en) Simple error-correction codes for data buffers
Bossen b-Adjacent error correction
US5856987A (en) Encoder and decoder for an SEC-DED-S4ED rotational code
JPH08330975A (ja) 誤り訂正符号復号化方法およびこの方法を用いる回路
US4631725A (en) Error correcting and detecting system
WO2009102304A1 (en) Method and system for detection and correction of phased-burst errors, erasures, symbol errors, and bit errors in a received symbol string
US20050149834A1 (en) (18, 9) Error correction code for double error correction and triple error detection
US6393597B1 (en) Mechanism for decoding linearly-shifted codes to facilitate correction of bit errors due to component failures
RU2448359C1 (ru) Устройство хранения и передачи данных с исправлением ошибок в байте информации и обнаружением ошибок в байтах информации
EP0629051B1 (en) Digital information error correcting apparatus for correcting single errors(sec),detecting double errors(ded)and single byte multiple errors(sbd),and the correction of an odd number of single byte errors(odd sbc).
US6463563B1 (en) Single symbol correction double symbol detection code employing a modular H-matrix
RU164633U1 (ru) Устройство хранения и передачи информации с обнаружением ошибок
JP2732862B2 (ja) データ伝送試験装置
RU2297030C2 (ru) Самокорректирующееся устройство хранения информации
RU2297032C2 (ru) Самокорректирующееся запоминающее устройство
RU2450332C1 (ru) Устройство хранения информации с обнаружением одиночных и двойных ошибок
RU2297034C2 (ru) Отказоустойчивое устройство хранения информации
RU2297035C2 (ru) Отказоустойчивое запоминающее устройство
RU2297031C2 (ru) Отказоустойчивое устройство
RU2297033C2 (ru) Самокорректирующееся устройство
RU44201U1 (ru) Отказоустойчивое запоминающее устройство
RU51428U1 (ru) Отказоустойчивый процессор повышенной достоверности функционирования

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20150715