самоконтролирующееся устройство

Классы МПК:G06F11/08 обнаружение и исправление ошибок с помощью избыточности в представлении данных, например с помощью корректирующих кодов 
H03M13/11 с использованием нескольких разрядов четности
G11C29/42 с использованием кодов с исправлением ошибок (ECC) или констроля соотношений
Автор(ы):, , , , , ,
Патентообладатель(и):ИНСТИТУТ ИНЖЕНЕРНОЙ ФИЗИКИ (ИИФ РФ) (RU)
Приоритеты:
подача заявки:
2004-05-20
публикация патента:

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

самоконтролирующееся устройство, патент № 2297028

Формула изобретения

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

Описание изобретения к патенту

Изобретение относится к вычислительной технике и может быть использовано для повышения достоверности функционирования работы комбинационных устройств, а также устройств хранения и передачи информации (оперативных и постоянных запоминающих устройств ЭВМ и т.п.).

Известно самокорректирующееся дискретное устройство [1], использующее декодирующее устройство, исправляющее модульные (байтовые) ошибки на основе применения кодов Рида-Соломона, содержащие исходную схему, кодирующее устройство, избыточную схему, декодирующее устройство, включающее схему вычисления синдрома, формирователь мнимых синдромов, дешифратор ошибки в байте, схему вычисления искаженного байта, коммутаторы ошибок, корректор ошибок, входы устройства подключены к входам исходной схемы и к входам кодирующего устройства, выходы кодирующего устройства подключены к входам избыточной схемы, выходы которой подключены к первым входам схемы вычисления синдрома, выходы исходной схемы подключены к вторым входам схемы вычисления синдрома и к первым входам корректора, выходы схемы вычисления синдрома подключены ко входам дешифратора ошибки, выходы которого подключены к вторым входам корректора, выходы корректора являются выходами устройства.

Недостатком устройства является большая аппаратурная избыточность и низкая достоверность функционирования устройства, так как коды Рида-Соломона позволяют корректировать ошибку в одном байте информации и обнаруживать ошибку только в двух байтах информации, кроме этого данные коды нельзя использовать при малом числе информационных разрядов.

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

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

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

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

На чертеже представлена блок-схема устройства. Устройство содержит: исходную схему 1, первый элемент 2 И, второй элемент 3 И, третий элемент 4 И, четвертый элемент 5 И, первый элемент 6 ИЛИ, второй элемент 7 ИЛИ, кодирующее устройство 8, регистр 9, схему синдрома ошибки 10, схему проверок 11, первый дешифратор 12, второй дешифратор 13, третий дешифратор 14, информационные входы 15, адресные входы 16, вход 17 записи, вход 18 считывания, вход 19 сброс, выходы 20 устройства, выход 21 "Ошибка".

Информационные входы 15 устройства подключены к первым входам исходной схемы 1 и к первым входам первого элемента 2 И, выходы исходной схемы 1 подключены к вторым входам второго элемента 3 И, к первым входам схемы 11 проверок, выходы исходной схемы 1 являются выходами 20 устройства, адресные входы 16 подключены к вторым входам исходной схемы 1 и к первым входам регистра 9, вход 17 записи подключен к третьему входу исходной схемы 1, к второму входу первого элемента 2 И и к второму входу регистра 9, вход 18 считывания подключен к четвертому входу исходной схемы 1, к первому входу второго элемента 3 И, к первому входу третьего элемента 4 И, к первому входу четвертого элемента 5 И и к третьему входу регистра 9, вход 19 "Сброс" подключен к пятому входу исходной схемы 1 и к четвертому входу регистра 9, выходы второго элемента 3 И подключены к первым входам элемента 6 ИЛИ, вторые входы которого подключены к выходам первого элемента 2 И, а выходы подключены к входам кодирующего устройства 8, выходы кодирующего устройства 8 подключены к вторым входам третьего элемента 4 И и к пятым входам регистра 9, первые входы схемы 10 синдрома ошибки подключены к выходам третьего элемента 4 И, вторые входы подключены к выходам регистра 9, а выходы подключены к вторым входам схемы 11 проверок и к входам первого дешифратора 12, выходы которого подключены к первым входам третьего дешифратора 14, выходы схемы 10 проверок подключены к входам второго дешифратора 13, выходы которого подключены к вторым входам третьего дешифратора 14, выходы третьего дешифратора 14 подключены к входам второго элемента 7 ИЛИ, выход которого подключен к второму входу четвертого элемента 5 И, выход которого является выходом "Ошибка".

Кодирующее устройство 8 предназначено для:

1) реализации правых и левых диагональные проверок на основе использования группы сумматоров по mod 2, при записи информации, в соответствии с правилами, представленными в приложении. Диагональные проверки образуют вектор R=r1,r2 ,...r2l.;

2) формирования (аналогичным образом) вектора контрольных разрядов RП принятого кодового набора на основе информации, считываемой с выходов исходной схемы 1.

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

R=r 1r2...,r2l,,

RП=rП 1rП 2...r П 2l.

Регистр 9 предназначен для хранения значений сигналов вектора контрольных разрядов, сформированного при записи информации в исходную схему 1.

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

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

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

Второй дешифратор 13 формирует на одном из своих выходов единичный сигнал в соответствии с поступающим значением дополнительной проверки.

Третий дешифратор 14 по значениям синдрома ошибки и значению дополнительной проверки в случае возникновения ошибки в информационных разрядах формирует единичное значение сигнала на одном из своих выходов.

Устройство работает следующим образом. Перед началом работы на вход 19 подается сигнал, устанавливающий устройство в исходное состояние. При поступлении входной информации на информационные входы 15, адресные входы 16 и сигнала самоконтролирующееся устройство, патент № 2297028 Записьсамоконтролирующееся устройство, патент № 2297028 на вход 17, информация записывается по указанному адресу в исходной схеме 1. Одновременно она поступает на входы первого элемента 2 И, открытого сигналом со входа 17 и далее через элемент 6 ИЛИ, входная информация поступает на вход кодирующего устройства 8. Кодирующее устройство 8, реализованное на группе сумматоров по mod 2, реализует правые и левые диагональные проверки информационной матрицы.

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

При считывании информации по указанному адресу, сигналы с выхода исходной схемы 1 через второй элемент 3 И, открытый сигналом "Считывание" с входа 18, элемент 6 ИЛИ повторно поступают на вход кодирующего устройства 8, где формируются значения сигналов в контрольных разрядах диагональных проверок полученной информации.

При этом информация с выходов кодирующего устройства 8 поступает на первые входы схемы 10 синдрома ошибки, на вторые входы которой поступает информация, считываемая с регистра 9.

В результате на выходе схемы 10 синдрома ошибки имеем сформированное значение синдрома ошибки.

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

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

Второй дешифратор 13 формирует на одном из своих выходов единичный сигнал в соответствии с поступающим значением дополнительной проверки.

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

Приложение

Коррекция ошибок в одном байте и обнаружение ошибок в остальных байтах информации достигается на основе итеративного кода.

Процедура построения двумерного итеративного кода состоит в следующем [3]. Заданную совокупность информационных символов делят на группы (блоки, модули) информации, по b - разрядов в каждой группе. Полученные модули информации представляют в виде информационной матрицы (1.1):

самоконтролирующееся устройство, патент № 2297028

Затем осуществляется кодирование информации по методу четности (путем сложения по mod 2 символов строк и столбцов полученной матрицы). В результате имеем двумерный итеративный код, позволяющий обнаруживать и исправлять любую одиночную ошибку:

самоконтролирующееся устройство, патент № 2297028

где H=h1,h 2,...,hm - вектор четности строк; Z=z1,z2,...,z b - вектор четности столбцов. Вектора четности строк и столбцов образуют совокупность контрольных разрядов R 1={r1,r2,r m,rm+1,...,rb }. При получении кодовой комбинации относительно информационных разрядов повторно формируется значения контрольных разрядов R П 1={r1,r 2,rm,rm+1,...,r b}. В данном случае, разница между переданными значениями контрольных разрядов и полученными после приема информации образует синдром ошибки Е:

самоконтролирующееся устройство, патент № 2297028

При этом разряды вектора ошибки е 1е2...em (полученные относительно вектора четности строк) указывают модуль информации, имеющей ошибку, а разряды eme m+1...eb, (полученные относительно вектора четности столбцов) указывают ошибочный разряд в модуле информации.

Так как кодовые комбинации строк и столбцов имеют минимальное расстояние d=2, то минимальное расстояние данного кода d=4. Этот код позволяет исправлять любую одиночную ошибку и обнаруживать значительную долю кратных ошибок.

Структуры ошибок, не обнаруживаемых двумерным итеративным кодом, показаны на рисунке:

самоконтролирующееся устройство, патент № 2297028

Рис.1. Структуры ошибок, не обнаруживаемых двумерным итеративным кодом: а) - ошибки кратности 4; б) - ошибки кратности 6.

самоконтролирующееся устройство, патент № 2297028

Рис.2. Структуры ошибок двумерного итеративного кода, приводящие к ошибочной коррекции: а) - ошибки кратности 5; б) - ошибки кратности 7.

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

самоконтролирующееся устройство, патент № 2297028

где ni, k i, di - соответственно длина, количество информационных разрядов, минимальное расстояние кодовых наборов строк и столбцов.

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

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

Структура диагональных проверок, обнаруживающих рассматриваемые ошибки, имеет вид, представленный на рис.3.

самоконтролирующееся устройство, патент № 2297028

Результаты левых диагональных проверок образуются по правилу:

самоконтролирующееся устройство, патент № 2297028

Результаты правых диагональных проверок образуются при суммировании значений следующих информационных разрядов:

самоконтролирующееся устройство, патент № 2297028

В этом случае, общее число диагональных проверок равно 2l, или:

самоконтролирующееся устройство, патент № 2297028

Пример 1. Пусть рассматриваемое слово состоит из четырех информационных разрядов, которые имеют нулевые значения. Для данного кодового набора информационная матрица имеет вид:

самоконтролирующееся устройство, патент № 2297028

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

самоконтролирующееся устройство, патент № 2297028

В то же время правые и левые диагональные проверки дадут результат 101.

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

В свою очередь существуют структуры ошибок, не обнаруживаемые итеративным кодом, реализующим правые и левые диагональные проверки и проверки на четность строк и столбцов. Структуры рассматриваемых ошибок представлены на рис.4.

самоконтролирующееся устройство, патент № 2297028

Рис.4. Структуры ошибок не обнаруживаемых диагональными проверками.

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

самоконтролирующееся устройство, патент № 2297028

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

Утверждение 2. Для информационной матрицы b×2 итеративный код, реализующий правые и левые диагональные проверки, обнаруживает все возможные ошибки.

Следствие 1. Для информационной матрицы b×2 итеративный код, реализующий правые и левые диагональные проверки, различает все возможные ошибки.

Утверждение 3. При проведении диагональных проверок для информационной матрицы b×2 ошибки обнаруживаются и различаются, если число контрольных разрядов равно:

самоконтролирующееся устройство, патент № 2297028

где k - число информационных разрядов.

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

самоконтролирующееся устройство, патент № 2297028

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

самоконтролирующееся устройство, патент № 2297028

где разряды вектора ошибки r 1,r2...rl - соответствуют правым диагональным проверка; r l,rl+1,...r2l - левым.

Для рассматриваемого примера кодирование информации осуществляется следующим образом:

самоконтролирующееся устройство, патент № 2297028 .

В табл.1 представлены значения синдрома ошибки (относительно безошибочного нулевого набора), полученные при проведении правых и левых диагональных проверок для ошибочных наборов информационной матрицы 2×2 (рассматриваются ошибки только в информационных разрядах).

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

самоконтролирующееся устройство, патент № 2297028

С этой целью, относительно полученных значений синдромов ошибок, организуются дополнительные проверки:

самоконтролирующееся устройство, патент № 2297028

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

самоконтролирующееся устройство, патент № 2297028

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

Утверждение 4. Для информационной матрицы b×2 значения синдромов ошибок и значения дополнительных проверок позволяют обнаруживать и различать ошибки, возникающие в информационных и контрольных разрядах.

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

самоконтролирующееся устройство, патент № 2297028

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

Источники информации

1. Щербаков Н.С. Достоверность работы цифровых устройств. М: Машиностроение, 1989, 224 с. рис.39, рис.44.

2. Положительное решение по заявке (21) 99111190/09 от 15.01.03 (подано 31.05.09), авторы: Царьков А.Н., Безродный Б.Ю., Новиков Н.Н., Романенко Ю.А., Павлов А.А.

3. Хетагуров Я.А. Руднев Ю.П. Повышение надежности цифровых устройств методами избыточного кодирования. М.: Энергия, 1974, 270 с.

Класс G06F11/08 обнаружение и исправление ошибок с помощью избыточности в представлении данных, например с помощью корректирующих кодов 

способ восстановления записей в запоминающем устройстве и система для его осуществления -  патент 2502124 (20.12.2013)
самопроверяемый специализированный вычислитель систем булевых функций -  патент 2485575 (20.06.2013)
устройство для обнаружения переполнения динамического диапазона, определения ошибки и локализации неисправности вычислительного канала в эвм, функционирующих в системе остаточных классов -  патент 2483346 (27.05.2013)
масштабируемый информационный сигнал, устройство и способ для кодирования масштабируемого информационного контента, устройство и способ для исправления ошибок масштабируемого информационного сигнала -  патент 2461052 (10.09.2012)
устройство для коррекции ошибок в полиномиальной системе классов вычетов -  патент 2453902 (20.06.2012)
устройство хранения и передачи данных с исправлением одиночных ошибок в байте информации и обнаружением произвольных ошибок в байтах информации -  патент 2450331 (10.05.2012)
способ проверки совпадения состояний видеокодера и видеодекодера -  патент 2432704 (27.10.2011)
устройство хранения информации повышенной достоверности функционирования -  патент 2421786 (20.06.2011)
самопроверяемый модулярный вычислитель систем логических функций -  патент 2417405 (27.04.2011)
способ передачи цифровой информации через параллельную магистраль -  патент 2413283 (27.02.2011)

Класс H03M13/11 с использованием нескольких разрядов четности

способ и устройство помехоустойчивого декодирования сигналов, полученных с использованием кода проверки на четность с низкой плотностью -  патент 2522299 (10.07.2014)
способ и устройство для канального кодирования и декодирования в системе связи, в которой используются коды контроля четности с низкой плотностью -  патент 2520406 (27.06.2014)
способ и устройство для канального кодирования и декодирования в системе связи, в которой используются коды контроля четности с низкой плотностью -  патент 2490791 (20.08.2013)
способ помехоустойчивого декодирования сигналов, полученных с использованием параллельного каскадного кода проверки на четность с низкой плотностью -  патент 2461964 (20.09.2012)
способ и устройство для декодирования кода с генераторной матрицей низкой плотности -  патент 2461963 (20.09.2012)
способ и устройство для канального кодирования и декодирования в системе связи, в которой используются коды контроля четности с низкой плотностью -  патент 2454794 (27.06.2012)
способ кодирования управляющей информации в системе беспроводной связи, а также способ и устройство для передачи и приема управляющей информации -  патент 2453992 (20.06.2012)
способ и устройство для канального кодирования и декодирования в системе связи, в которой используются коды контроля четности с низкой плотностью -  патент 2450443 (10.05.2012)
способ и устройство для кодирования и декодирования канала в системе связи с использованием кодов с низкой плотностью проверок на четность -  патент 2450442 (10.05.2012)
кодирование и декодирование ldpc пакетов переменных размеров -  патент 2443053 (20.02.2012)

Класс G11C29/42 с использованием кодов с исправлением ошибок (ECC) или констроля соотношений

Наверх