RU169207U1 - Устройство хранения и передачи данных с обнаружением ошибок - Google Patents
Устройство хранения и передачи данных с обнаружением ошибок Download PDFInfo
- Publication number
- RU169207U1 RU169207U1 RU2016145047U RU2016145047U RU169207U1 RU 169207 U1 RU169207 U1 RU 169207U1 RU 2016145047 U RU2016145047 U RU 2016145047U RU 2016145047 U RU2016145047 U RU 2016145047U RU 169207 U1 RU169207 U1 RU 169207U1
- Authority
- RU
- Russia
- Prior art keywords
- inputs
- input
- information
- outputs
- block
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0061—Timing circuits or methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3436—Arrangements for verifying correct programming or erasure
- G11C16/3468—Prevention of overerasure or overprogramming, e.g. by verifying whilst erasing or writing
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/52—Protection of memory contents; Detection of errors in memory contents
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1078—Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
Предлагаемое устройство предназначено для повышения достоверности функционирования устройств хранения и передачи информации путем обнаружения одиночных и двойных ошибок.Это достигается кодированием исходной двоичной информации на основе организации независимых проверок и за счет введения входного блока 2 кодирования, выходного блока 3 кодирования, блока 4 выявления ошибки, блока 5 элементов И, элемента 6 И, блока 7 элементов ИЛИ. 1 ил.
Description
Полезная модель «Устройство хранения и передачи данных с обнаружением ошибок» относится к вычислительной технике и может быть использована для повышения достоверности функционирования работы устройств хранения и передачи информации.
Известно устройство памяти с обнаружением двойных ошибок [1], содержащее узел памяти, входной блок кодирования, формирующий значения контрольных разрядов r1 и r2 путем сложения по модулю 2 информационных символов x1, x2, x3, y1, y2, y3, поступающих на входы входного блока кодирования, в соответствии с правилом: r1=х1 ⊕ х2 ⊕ у1 ⊕ у2; r2=х2 ⊕ х3 ⊕ у2 ⊕ у3, выходной блок кодирования, формирующий значения проверочных контрольных разрядов r1П, r2П путем сложения по модулю 2 информационных символов x1С, х2С, х3С, у1С, у2С, у3С, поступающих на входы выходного блока кодирования и полученных при считывании информации с информационных выходов узла памяти в соответствии с правилом: r1П=х1C ⊕ х2С ⊕ y1C ⊕ у2C; r2П=х2С ⊕ х3C ⊕ у2C ⊕ у3C, блок выявления ошибки, блок элементов И, элемент И, блок элементов ИЛИ, вход установки устройства в нулевое состояние, вход записи, вход считывания, адресные входы, информационные входы, вход синхронизации, информационные выходы, выход сигнала при возникновении ошибки, вход установки в нулевое состояние, вход записи, вход считывании, адресные входы, информационные входы, вход синхронизации подключены соответственно к первому, второму, третьему и четвертому, пятому и шестому входам узла памяти, информационные выходы узла памяти подключены к входам выходного блока кодирования и к первым входам блока элементов И, выходы выходного блока кодирования подключены к первым входам блока выявления ошибки, вторые входы которого подключены к выходам контрольных разрядов узла памяти, а выходы подключены к входам блока элементов ИЛИ, выход которого подключен к первому входу элемента И, второй вход блока элементов И и второй вход элемента И подключены к входу синхронизации, выходы первого блока элементов И являются информационными выходами устройства, выход элемента И является выходом сигнала "Ошибка".
Недостатком устройства является низкая обнаруживающая способность двойных ошибок.
Наиболее близким по техническому решению является контролируемое устройство хранения и передачи информации [2], содержащее узел памяти, входной блок кодирования, формирующий значения контрольных разрядов r1, r2 и r3, выходной блок кодирования, формирующий значения проверочных контрольных разрядов r1p, r2р, r3p, блок выявления ошибки, блок элементов ИЛИ, блок элементов И, элемент И, вход установки устройства в нулевое состояние, вход записи, вход считывания, адресные входы, информационные входы, вход синхронизации, информационные выходы, выход сигнала при возникновении ошибки, вход установки в нулевое состояние, вход записи, вход считывания, адресные входы, вход синхронизации подключены соответственно к первому, второму, третьему и четвертому, пятому входам узла памяти, информационные входы подключены к шестым входам узла памяти и к входам входного кодирующего устройства, выходы которого подключены к седьмым входам узла памяти, информационные выходы узла памяти подключены к входам выходного блока кодирования и к первым входам блока элементов И, выходы выходного блока кодирования подключены к первым входам блока выявления ошибки, вторые входы которого подключены к выходам контрольных разрядов узла памяти, а выходы подключены к входам блока элементов ИЛИ, выход которого подключен к первому входу элемента И, второй вход блока элементов И и второй вход элемента И подключены к входу синхронизации, выходы первого блока элементов И являются информационными выходами устройства, выход элемента И является выходом сигнала "Ошибка", входной блок кодирования формирует значение контрольного разряда r1 путем сложения по модулю 2 информационных символов y1,y2,y3, y4,y5,y6, y7,y8,y9, y10,y11,y12, поступающих на его входы, в соответствии с правилом: r1=y3 ⊕ y4 ⊕ y5 ⊕ y6 ⊕ y9 ⊕ y10 ⊕ y11 ⊕ y12, значение контрольного разряда r2 - путем сложения по модулю 2 информационных символов y1,y2,y3, y4,y5,y6, y7,y8,y9, y10,y11,y12, поступающих на его входы, в соответствии с правилом: r2=y3 ⊕ y6 ⊕ y7 ⊕ y8 ⊕ y9 ⊕ y10 ⊕ y11 ⊕ y12, значение контрольного разряда r3 - путем сложения по модулю 2 информационных символов y1,y2,y3, y4,y5,y6, y7,y8,y9, y10,y11,y12, поступающих на его входы, в соответствии с правилом: r3=y1 ⊕ y2 ⊕ y4 ⊕ y5 ⊕ y7 ⊕ y8 ⊕ y10 ⊕ y11, выходной блок кодирования, формирующий значения проверочных контрольных разрядов r1p, r2р, r3р, путем сложения по модулю 2 информационных символов y1p,y2р,y3р, y4р,y5р,y6р, y7p,y8р,y9р, y10p,y11р,y12р, поступающих на его входы при считывании информации с информационных выходов узла памяти, в соответствии с правилом: r1p=y3p ⊕ y4p ⊕ y5p ⊕ y6p ⊕ y9p ⊕ y10p ⊕ y11p ⊕ y12p; r2p=y3p ⊕ y6p ⊕ y7p ⊕ y8p ⊕ y9p ⊕ y10p ⊕ y11p ⊕ y12p; r3p=y1p ⊕ y2p ⊕ y4p ⊕ y5p ⊕ y7p ⊕ y8p ⊕ y10p ⊕ y11p, блок выявления ошибки осуществляет поразрядное сложение по mod2 значений контрольных разрядов r1S, r2S и r3S, считываемых с вторых выходов узла 1 памяти, соответственно с значениями контрольных разрядов r1p, r2p, r3p, сформированных на выходах выходного блока 3 кодирования.
Недостатком устройства является недостаточная обнаруживающая способность двойных ошибок, так как обнаруживается 10% от числа возможных одиночных и двойных ошибок (см. приложение).
Целью полезной модели является повышение достоверности функционирования устройства за счет обнаружения 100% одиночных и максимального количества двойных ошибок (7,5%) при минимальной информационной избыточности.
Поставленная цель достигается тем, что устройство, содержащее узел памяти, входной блок кодирования, формирующий значения контрольных разрядов 11, r2 и r3, выходной блок кодирования, формирующий значения проверочных контрольных разрядов r1p, r2р, r3р, блок выявления ошибки, блок элементов ИЛИ, блок элементов И, элемент И, вход установки устройства в нулевое состояние, вход записи, вход считывания, адресные входы, информационные входы, вход синхронизации, информационные выходы, выход сигнала при возникновении ошибки, вход установки в нулевое состояние, вход записи, вход считывания, адресные входы, вход синхронизации подключены соответственно к первому, второму, третьему и четвертому, пятому входам узла памяти, информационные входы подключены к шестым входам узла памяти и к входам входного кодирующего устройства, выходы которого подключены к седьмым входам узла памяти, информационные выходы узла памяти подключены к входам выходного блока кодирования и к первым входам блока элементов И, выходы выходного блока кодирования подключены к первым входам блока выявления ошибки, вторые входы которого подключены к выходам контрольных разрядов узла памяти, а выходы подключены к входам блока элементов ИЛИ, выход которого подключен к первому входу элемента И, второй вход блока элементов И и второй вход элемента И подключены к входу синхронизации, выходы первого блока элементов И являются информационными выходами устройства, выход элемента И является выходом сигнала "Ошибка", отличается тем, что входной блок кодирования, формирует значение контрольного разряда r1 путем сложения по модулю 2 информационных символов y1,y2,y3, y4,y5,y6, y7,y8,y9, y10,y11,y12, поступающих на его входы, в соответствии с правилом: r1=y3 ⊕ y6 ⊕ y7 ⊕ y8 ⊕ y9 ⊕ y10 ⊕ y11 ⊕ y12, значение контрольного разряда r2 - путем сложения по модулю 2 информационных символов y1,y2,y3, y4,y5,y6, y7,y8,y9, y10,y11,y12, поступающих на его входы, в соответствии с правилом: r2=y2 ⊕ y4 ⊕ y5 ⊕ y8 ⊕ y9 ⊕ y10 ⊕ y11 ⊕ y12, значение контрольного разряда r3 - путем сложения по модулю 2 информационных символов y1,y2,y3, y4,y5,y6, y7,y8,y9, y10,y11,y12, поступающих на его входы, в соответствии с правилом: r3=y1 ⊕ y4 ⊕ y5 ⊕ y6 ⊕ y7 ⊕ y10 ⊕ y11 ⊕ y12, выходной блок кодирования, формирующий значения проверочных контрольных разрядов r1p, r2p, r3p, путем сложения по модулю 2 информационных символов y1p,y2р,y3р, y4р,y5р,y6р, y7p,y8р,y9р, y10p,y11р,y12р, поступающих на его входы при считывании информации с информационных выходов узла памяти, в соответствии с правилом: r1p=y3p ⊕ y6p ⊕ y7p ⊕ y8p ⊕ y9p ⊕ y10p ⊕ y11p ⊕ y12p; r2p=y2p ⊕ y4p ⊕ y5p ⊕ y8p ⊕ y9p ⊕ y10p ⊕ y11p ⊕ y12p; r3p=y1p ⊕ y4p ⊕ y5p ⊕ y6p ⊕ y7p ⊕ y10p ⊕ y11p ⊕ y12p, блок выявления ошибки осуществляет поразрядное сложение по mod2 значений контрольных разрядов r1S, r2S и r3S, считываемых с вторых выходов узла 1 памяти, соответственно с значениями контрольных разрядов r1p, r2р, r3p, сформированных на выходах выходного блока 3 кодирования.
На фиг. 1 представлена блок-схема устройства. Полезная модель «Устройство хранения и передачи информации с обнаружением ошибок» содержит: узел 1 памяти, входной блок 2 кодирования, выходной блок 3 кодирования, блок 4 выявления ошибки, блок 5 элементов И, элемент 6 И, блок 7 элементов ИЛИ, вход 8 установки в нулевое состояние, вход 9 записи, вход 10 считывания, адресные входы 11, информационные входы 12, вход 13 синхронизации, информационные выходы 14, выход 15 "Ошибка".
Вход 8 установки в нулевое состояние, вход 9 записи, вход 10 считывания, адресные входы 11, вход 13 синхронизации подключены соответственно к первому, второму, третьему и четвертому, пятому входам узла 1 памяти, информационные входы 12 подключены к шестым входам узла 1 памяти и к входам входного кодирующего устройства 2, выходы которого подключены к седьмым входам узла 1 памяти, информационные выходы узла 1 памяти подключены к входам выходного блока 3 кодирования и к первым входам блока 5 элементов И, выходы выходного блока 3 кодирования подключены к первым входам блока 4 выявления ошибки, вторые входы которого подключены к выходам контрольных разрядов узла 1 памяти, а выходы подключены к входам блока 7 элементов ИЛИ, выход которого подключен к первому входу элемента 6 И, второй вход блока элементов 5 И и второй вход элемента 6 И подключены к входу 13 синхронизации, выходы блока 5 элементов И являются информационными выходами устройства, выход элемента 6 И является выходом сигнала "Ошибка", при этом входной блок кодирования формирует значение контрольного разряда r1 путем сложения по модулю 2 информационных символов y1,y2,y3, y4,y5,y6, y7,y8,y9, y10,y11,y12, поступающих на его входы, в соответствии с правилом: r1=y3 ⊕ y6 ⊕ y7 ⊕ y8 ⊕ y9 ⊕ y10 ⊕ y11 ⊕ y12, значение контрольного разряда r2 - путем сложения по модулю 2 информационных символов y1,y2,y3, y4,y5,y6, y7,y8,y9, y10,y11,y12, поступающих на его входы, в соответствии с правилом: r2=y2 ⊕ y4 ⊕ y5 ⊕ y8 ⊕ y9 ⊕ y10 ⊕ y11 ⊕ y12, значение контрольного разряда r3 - путем сложения по модулю 2 информационных символов y1,y2,y3, y4,y5,y6, y7,y8,y9, y10,y11,y12, поступающих на его входы, в соответствии с правилом: r3=y1 ⊕ y4 ⊕ y5 ⊕ y6 ⊕ y7 ⊕ y10 ⊕ y11 ⊕ y12, выходной блок 3 кодирования, формирующий значения проверочных контрольных разрядов r1p, r2р, r3р, путем сложения по модулю 2 информационных символов y1p,y2р,y3р, y4р,y5р,y6р, y7p,y8р,y9р, y10p,y11р,y12р, поступающих на его входы при считывании информации с информационных выходов узла памяти, в соответствии с правилом:
r1p=y3p ⊕ y6p ⊕ y7p ⊕ y8p ⊕ y9p ⊕ y10p ⊕ y11p ⊕ y12p; r2p=y2p ⊕ y4p ⊕ y5p ⊕ y8p ⊕ y9p ⊕ y10p ⊕ y11p ⊕ y12p; r3p=y1p ⊕ y4p ⊕ y5p ⊕ y6p ⊕ y7p ⊕ y10p ⊕ y11p ⊕ y12p, блок 4 выявления ошибки осуществляет поразрядное сложение по mod2 значений контрольных разрядов r1S, r2S и r3S, считываемых с вторых выходов узла 1 памяти, соответственно с значениями контрольных разрядов r1p, r2р, r3p, сформированных на выходах выходного блока 3 кодирования.
Узел 1 памяти, в данном случае, представляет собой статическое полупроводниковое оперативное устройство памяти и предназначен для хранения кодовых слов: УК=у1у2 у3 у4 у5 у6 у7 у8 у9, у10 у11 у12 r1 r2 r3, полученных при кодировании исходной информации.
Входной блок 2 кодирования предназначен для формирования значений контрольных разрядов r1, r2, r3 путем сложения по mod2 информационных символов в соответствии с правилом:
r1=y3 ⊕ y6 ⊕ y7 ⊕ y8 ⊕ y9 ⊕ y10 ⊕ y11 ⊕ y12;
r2=y2 ⊕ y4 ⊕ y5 ⊕ y8 ⊕ y9 ⊕ y10 ⊕ y11 ⊕ y12,
r3=y1 ⊕ y4 ⊕ y5 ⊕ y6 ⊕ y7 ⊕ y10 ⊕ y11 ⊕ y12,
Выходной блок 3 кодирования предназначен формирования значений проверочных контрольных разрядов r1p, r2p, r3p путем сложения по mod2 информационных символов, полученных при считывании информации с узла 1 памяти в соответствии с правилом:
r1p=y3p ⊕ y6p ⊕ y7p ⊕ y8p ⊕ y9p ⊕ y10p ⊕ y11p ⊕ y12p;
r2p=y2p ⊕ y4p ⊕ y5p ⊕ y8p ⊕ y9p ⊕ y10p ⊕ y11p ⊕ y12p;
r3p=y1p ⊕ y4p ⊕ y5p ⊕ y6p ⊕ y7p ⊕ y10p ⊕ y11p ⊕ y12p.
Блок 4 выявления ошибки предназначен для обнаружения ошибки в кодовом слове при считывании информации с узла 1 памяти путем сложения по mod2 значений контрольных разрядов r1S, r2S, r3S, считываемых с вторых выходов узла 1 памяти, соответственно с значениями контрольных разрядов r1p, r2р и r3p, сформированных на выходах выходного блока 3 кодирования:
λ1=r1S ⊕ r1p;
λ2=r2S ⊕ r2p;
λ3=r3S ⊕ r3p.
Нулевой результат суммы свидетельствует об отсутствии ошибки и ее наличии в противном случае.
Выходы λ1, λ2, λ3 блока 4 выявления ошибки объединены в один выход первым элементом 7 ИЛИ, значение сигнала на данном выходе поступает первый вход элемента 6 И.
Считывание выходной информации с выходов 14 устройства проводится при поступлении сигнала с входа 13 синхронизации на второй вход блока 5 элементов И и второй вход элемента 6 И.
Полезная модель работает следующим образом. Перед началом работы устройства на вход 8 "Установки в нулевое состояние" подается единичный сигнал, который переводит узел 1 памяти в нулевое состояние.
При записи информации в узел 1 памяти подается единичный сигнал на вход 9 записи, адресные входы 11 и информационные входы 12.
Например, на информационные входы поступает двенадцатиразрядное слово, имеющее в своих разрядах следующие значения: 110 001 101 111.
Входной блок 2 кодирования сформирует значения контрольных разрядов:
r1=y3 ⊕ y6 ⊕ y7 ⊕ y8 ⊕ y9 ⊕ y10 ⊕ y11 ⊕ y12, = 0 ⊕ 1 ⊕ 1 ⊕ 0 ⊕ 1 ⊕ 1 ⊕ 1 ⊕ 1 = 0;
r2=y2 ⊕ y4 ⊕ y5 ⊕ y8 ⊕ y9 ⊕ y10 ⊕ y11 ⊕ y12, = 1 ⊕ 0 ⊕ 0 ⊕ 0 ⊕ 1 ⊕ 1 ⊕ 1 ⊕ 1 = 1;
r3=y1 ⊕ y4 ⊕ y5 ⊕ y6 ⊕ y7 ⊕ y10 ⊕ y11 ⊕ y12, = 1 ⊕ 0 ⊕ 0 ⊕ 1 ⊕ 1 ⊕ 1 ⊕ 1 ⊕ 1 = 0.
В результате имеем кодовое слово: Ук = 110 001 101 111 010 (последние четыре разряда являются контрольными разрядами), которое записывается в узле 1 памяти.
При считывании информации с узла 1 памяти второй блок 3 кодирования относительно принятой информации сформирует значения контрольных разрядов: Rp={r1p, r2p, r3р, }={010}.
Если ошибок нет, то имеем результат: R=(010), Rp=(010), RS=(010), λ=(000).
Пусть произошла одиночная ошибка в первом информационном разряде: 0* 10 001 1 01 111 010.
На выходе второго блока 3 кодирования имеем результат: Rp=(011), а с вторых выходов узла 1 памяти считываются значения переданных контрольных разрядов RS=(010).
В этом случае сигналы на выходе блока 4 выявления ошибки принимают значение: λ=(001).
Соответственно, на выходе блока 5 ИЛИ появится единичное значение сигнала, которое при поступлении сигнала с входа 13 синхронизации поступит на вход элемента 6 И, на выходе которого появится значение сигнала "Ошибка".
Аналогичным образом устройство работает при возникновении двойных ошибок.
ИСТОЧНИКИ ИНФОРМАЦИИ
1. Патент на изобретение №2403615 "Устройство хранения и передачи информации с обнаружением двойных ошибок"/ Павлов А.А., Царьков А.Н. и др. от 27.01.2009 г.
2. Патент на полезную модель №161373 "Контролируемое устройство хранения и передачи информации "/ Бутранов А.С., Павлов А.А., Царьков А.Н. и др. от 29.03.2016 г.
Приложение к заявке на изобретение «Устройство хранения и передачи данных с обнаружением ошибок»
1. Введение
С увеличением сложности современных систем управления и обработки информации (СУОИ), а также в экстремальных условиях работы (воздействий электромагнитных или радиационных излучений и т.п.) возрастает вероятность появления ошибок в обрабатываемой информации. От безошибочной работы ЗУ в большой степени зависит правильность работы всего вычислительного канала СУОИ.
Одним из перспективных направлений обеспечения достоверности функционирования СУОИ является разработка контролируемых запоминающих устройств на основе алгебраических линейных кодов, обеспечивающих автоматическое обнаружение ошибок.
В связи с этим корректирующий код, используемый для защиты данных устройств, должен удовлетворять, как минимум, следующим требованиям:
обеспечить минимальное время на кодирование и декодирование информации;
обладать минимальной информационной избыточностью;
иметь минимальные аппаратурные затраты, связанные с кодированием и декодированием информации и хранением значений контрольных разрядов.
Для выполнения первого требования используются алгебраические линейные корректирующие коды с синдромным декодированием (циклическая процедура кодирования и декодирование информации требует больших временных затрат).
При обнаружении ошибки кратности t, для кодового расстояния d, необходимо обеспечить выполнение условия:
d≥t+1.
В настоящее время для защиты устройств хранения информации широко используются коды, корректирующие одиночные и обнаруживающие двойные ошибки, в частности совершенные систематические коды Хэмминга. В этом случае число контрольных разрядов r для кода, корректирующего одиночную ошибку, определяется выражением:
r=]log2(n+1)[,
где n=k+r, k - число информационных разрядов.
В этом случае проверочная матрица кода Хэмминга состоит из всех различных ненулевых векторов длины r.
Так как для данного кода d=3, то он может использоваться для обнаружения двойных ошибок при возникновении сбоев в устройствах хранения и передачи информации.
В то же время для обеспечении сбоеустойчивости устройств хранения информации существует необходимость разработки методов построения корректирующих линейных кодов с синдромным декодированием, обнаруживающих все одиночные (нечетные) ошибки и максимальное количество двойных (четных) ошибок при минимальной аппаратурной и информационной избыточности.
Известно контролируемое устройство хранения и передачи информации [1], в котором минимизированные проверки для формирования значений контрольных разрядов имеют вид:
r1=y3 ⊕ y4 ⊕ y5 ⊕ y6 ⊕ y9 ⊕ y10 ⊕ y11 ⊕ y12,
r2=y3 ⊕ y6 ⊕ y7 ⊕ y8 ⊕ y9 ⊕ y10 ⊕ y11 ⊕ y12,
r3=y1 ⊕ y2 ⊕ y4 ⊕ y5 ⊕ y7 ⊕ y8 ⊕ y10 ⊕ y11.
В таблице 1 представлены значения синдромов при возникновении одиночных и двойных ошибок в информационных и контрольных разрядах относительно кодового слова, содержащего нулевые значения разрядов:
Ук=000 000 000 000 000 0000.
Примечание:
Из 120 возможных одиночных и двойных ошибок не обнаруживаются 12 двойных ошибок или 10% (номера не обнаруживаемых ошибок выделены жирным шрифтом) от числа возможных одиночных и двойных ошибок.
Рассмотрим правила построения кодов, имеющих повышенную обнаруживающую способность двойных ошибок.
2. Правила построения корректирующих кодов, повышенной обнаруживающей способности
Для формирования контрольных разрядов корректирующего кода, обладающего указанными свойствами, вначале используем известную процедуру построения двумерного итеративного кода, которая заключается в следующем.
Правило 1. Двоичное слово Y, содержащее k информационных символов, разбивается на m=k/b информационных блоков (под информационным блоком будем понимать число информационных разрядов, не превышающих значение b). Пусть b кратно k.
Полученные информационные блоки представляют в виде информационной матрицы:
В результате имеем информационную матрицу, имеющую m-строк и b-столбцов. Пусть: z=(b+m) - нечетное число; m≥b+1.
Затем осуществляется кодирование информации по методу четности (путем сложения по mod 2 символов строк и столбцов полученной матрицы). В результате имеем матрицу кодирования двумерного итеративного кода, позволяющего обнаруживать и исправлять любую одиночную ошибку:
где {s1, s2, …, sb} - вектор четности столбцов; {sb+1, sb+2, …, sz} - вектор четности строк.
Векторы четности строк и столбцов образуют совокупность проверок для контрольных разрядов итеративного кода
Rl={r1, r2, …, rz} или Rl=rh+ru, rh=log2b, ru=log2(b+z+1).
При коррекции одиночной ошибки Rl=]log2(n+1)[.
При получении кодовой комбинации относительно информационных разрядов повторно формируется значения контрольных разрядов Rp={r1 р, r2 р, …, rz р}.
Разница между переданными значениями контрольных разрядов и полученными после приема информации образует синдром ошибки Е.
При этом разряды синдрома ошибки {e1, е2, …, еb} (полученные относительно вектора четности столбцов) указывают ошибочный разряд в блоке информации, а разряды {е1+е2, …, еb} (полученные относительно вектора четности строк) указывают модуль информации, имеющей ошибку.
Если разряды синдрома ошибки {e1, е2, …, еb) имеют нулевые значения, а в разрядах {еb+1, еb+2, …, ez} имеются единичные значения (и наоборот), то это свидетельствует о наличии ошибок в контрольных разрядах.
Недостатком рассмотренного корректирующего кода является большая избыточность.
Правило 2. Минимизация числа контрольных разрядов для предлагаемого метода кодирования информации осуществляется логарифмированием суммы строк и столбцов матрицы кодирования двумерного итеративного кода (2).
В этом случае число контрольных разрядов, определяется выражением:
Причем:
При сохранении длины кода n уменьшение проверочных символов в проверочной матрице неизбежно приводит к появлению повторяющихся столбцов и, как следствие, к невозможности обнаружения некоторых двойных ошибок.
Количество повторений одного и того же столбца равно:
если n делится без остатка.
Если при делении имеем остаток β, то имеем β столбцов, у которых число повторений равно α+1.
В этом случае число необнаруженных ошибок определяется выражением:
Следовательно, вероятность появления необнаруженных комбинаций кода составляет:
Пример. Допустим, имеем двенадцать информационных разрядов, для которых построим матрицу кодирования:
Количество строк и столбцов матрицы кодирования равно семи. Требуемое число контрольных разрядов: r*=log27=3, соответственно, длина кода равна 15.
Проверочная матрица Н кода имеет следующий вид:
Проверки для формирования значений контрольных разрядов определяются выражением:
r1 = y3 ⊕ y6 ⊕ y7 ⊕ y8 ⊕ y9 ⊕ y10 ⊕ y11 ⊕ y12;
r2 = y2 ⊕ y4 ⊕ y5 ⊕ y8 ⊕ y9 ⊕ y10 ⊕ y11 ⊕ y12;
r3 = y1 ⊕ y4 ⊕ y5 ⊕ y6 ⊕ y7 ⊕ y10 ⊕ y11 ⊕ y12.
В таблице 2 представлены значения синдромов при возникновении одиночных и двойных ошибок в информационных и контрольных разрядах относительно кодового слова: Ук=000 000 000 000 000.
Примечание.
1. Из 120 одиночных и двойных ошибок не обнаруживаются 9 двойных ошибок, или 7,5% от возможного числа ошибок (необнаруженные двойные ошибки выделены жирным шрифтом).
Таким образом, при кодировании двенадцати информационных разрядов предлагаемым методом для обнаружения одиночных и двойных ошибок потребуется три контрольных разряда.
При использовании предлагаемого метода для построения кодирующего устройства потребуется 21 сумматор по mod 2. Для построения декодирующего устройства потребуется 21 сумматор по mod 2 и три сумматора по mod 2 для формирования синдрома ошибки. Итого - 45 сумматоров по mod 2.
При использовании кода Хэмминга (код-12,5) потребуется пять контрольных разрядов [9].
При использовании кода Хэмминга (12,5) для кодирования информации потребуется 32 сумматора по mod 2. Для декодирования потребуется 32 сумматора по mod 2, итого 64 сумматора по mod 2. Если учесть, что для хранения значений контрольных разрядов в устройстве памяти также требуются аппаратурные затраты, то выигрыш в аппаратурных затратах от использования предлагаемого метода значительно выше.
Заметим, что число контрольных разрядов при использовании предлагаемого метода кодирования зависит от размерности матрицы кодирования. Так, например, при кодировании пятидесяти четырех информационных символов и использовании матрицы кодирования размерности (3×18) потребуется пять контрольных разрядов.
При кодировании информации предлагаемым методом двоичного слова, содержащего 56 информационных разрядов (использовании матрицы кодирования 7×8), потребуется четыре контрольных разряда. При этом Ре 60 = 4,9%.
При использовании кода Хэмминга (код-57,6) для этого потребуется шесть контрольных разрядов [5], т.е. на два разряда больше.
Таким образом, использование предлагаемого метода кодирования информации по отношению к известным методам построения линейных кодов с синдромным декодированием позволяет сократить аппаратурные затраты и число контрольных разрядов при достаточно высокой обнаруживающей способности кода.
1. Патент на полезную модель №161373 "Контролируемое устройство хранения и передачи информации "/ Бутранов А.С., Павлов А.А., Царьков А.Н. и др.от 29.03.2016 г.
Claims (1)
- Устройство хранения и передачи данных с обнаружением ошибок, содержащее узел памяти, входной блок кодирования, формирующий значения контрольных разрядов r1, r2 и r3, выходной блок кодирования, формирующий значения проверочных контрольных разрядов r1p, r2p, r3p, блок выявления ошибки, блок элементов ИЛИ, блок элементов И, элемент И, вход установки устройства в нулевое состояние, вход записи, вход считывания, адресные входы, информационные входы, вход синхронизации, информационные выходы, выход сигнала при возникновении ошибки, вход установки в нулевое состояние, вход записи, вход считывания, адресные входы, вход синхронизации подключены соответственно к первому, второму, третьему и четвертому, пятому входам узла памяти, информационные входы подключены к шестым входам узла памяти и к входам входного кодирующего устройства, выходы которого подключены к седьмым входам узла памяти, информационные выходы узла памяти подключены к входам выходного блока кодирования и к первым входам блока элементов И, выходы выходного блока кодирования подключены к первым входам блока выявления ошибки, вторые входы которого подключены к выходам контрольных разрядов узла памяти, а выходы подключены к входам блока элементов ИЛИ, выход которого подключен к первому входу элемента И, второй вход блока элементов И и второй вход элемента И подключены к входу синхронизации, выходы первого блока элементов И являются информационными выходами устройства, выход элемента И является выходом сигнала "Ошибка", отличающееся тем, что входной блок кодирования, формирует значение контрольного разряда r1 путем сложения по модулю 2 информационных символов y1,y2,y3, y4,y5,y6, y7,y8,y9, y10,y11,y12, поступающих на его входы, в соответствии с правилом: r1 = y3 ⊕ y6 ⊕ y7 ⊕ y8 ⊕ y9 ⊕ y10 ⊕ y11 ⊕ y12, значение контрольного разряда r2 - путем сложения по модулю 2 информационных символов y1,y2,y3, y4,y5,y6, y7,y8,y9, y10,y11,y12, поступающих на его входы, в соответствии с правилом: r2 = y2 ⊕ y4 ⊕ y5 ⊕ y8 ⊕ y9 ⊕ y10 ⊕ y11 ⊕ y12, значение контрольного разряда r3 - путем сложения по модулю 2 информационных символов y1,y2,y3, y4,y5,y6, y7,y8,y9, y10,y11,y12, поступающих на его входы, в соответствии с правилом: r3 = y1 ⊕ y4 ⊕ y5 ⊕ y6 ⊕ y7 ⊕ y10 ⊕ y11 ⊕ y12, выходной блок кодирования, формирующий значения проверочных контрольных разрядов r1p, r2p, r3p, путем сложения по модулю 2 информационных символов y1p,y2p,y3p, y4p,y5p,y6p, y7p,y8p,y9p, y10p,y11p,y12p, поступающих на его входы при считывании информации с информационных выходов узла памяти, в соответствии с правилом: r1p = y3p ⊕ y6p ⊕ y7p ⊕ y8p ⊕ y9p ⊕ y10p ⊕ y11p ⊕ y12p; r2p = y2p ⊕ y4p ⊕ y5p ⊕ y8p ⊕ y9p ⊕ y10p ⊕ y11p ⊕ y12p; r3p = y1p ⊕ y4p ⊕ y5p ⊕ y6p ⊕ y7p ⊕ y10p ⊕ y11p ⊕ y12p, блок выявления ошибки осуществляет поразрядное сложения по mod2 значений контрольных разрядов r1S, r2S и r3S, считываемых с вторых выходов узла 1 памяти, соответственно с значениями контрольных разрядов r1p, r2p, r3p, сформированных на выходах выходного блока 3 кодирования.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2016145047U RU169207U1 (ru) | 2016-11-17 | 2016-11-17 | Устройство хранения и передачи данных с обнаружением ошибок |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2016145047U RU169207U1 (ru) | 2016-11-17 | 2016-11-17 | Устройство хранения и передачи данных с обнаружением ошибок |
Publications (1)
Publication Number | Publication Date |
---|---|
RU169207U1 true RU169207U1 (ru) | 2017-03-09 |
Family
ID=58449634
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2016145047U RU169207U1 (ru) | 2016-11-17 | 2016-11-17 | Устройство хранения и передачи данных с обнаружением ошибок |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU169207U1 (ru) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU107606U1 (ru) * | 2011-04-14 | 2011-08-20 | Межрегиональное общественное учреждение "Институт инженерной физики" | Устройство хранения и передачи данных с исправлением одиночных ошибок в байте информации и обнаружением произвольных ошибок в байтах информации |
RU2450332C1 (ru) * | 2011-01-27 | 2012-05-10 | Межрегиональное общественное учреждение "Институт инженерной физики" | Устройство хранения информации с обнаружением одиночных и двойных ошибок |
US20140149824A1 (en) * | 2011-07-27 | 2014-05-29 | Erik Ordentlich | Method and system for reducing write-buffer capacities within memristor-based data-storage devices |
RU161373U1 (ru) * | 2015-12-16 | 2016-04-20 | Межрегиональное общественное учреждение "Институт инженерной физики" | Контролируемое устройство хранения и передачи информации |
RU164633U1 (ru) * | 2016-05-26 | 2016-09-10 | Межрегиональное общественное учреждение "Институт инженерной физики" | Устройство хранения и передачи информации с обнаружением ошибок |
-
2016
- 2016-11-17 RU RU2016145047U patent/RU169207U1/ru not_active IP Right Cessation
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2450332C1 (ru) * | 2011-01-27 | 2012-05-10 | Межрегиональное общественное учреждение "Институт инженерной физики" | Устройство хранения информации с обнаружением одиночных и двойных ошибок |
RU107606U1 (ru) * | 2011-04-14 | 2011-08-20 | Межрегиональное общественное учреждение "Институт инженерной физики" | Устройство хранения и передачи данных с исправлением одиночных ошибок в байте информации и обнаружением произвольных ошибок в байтах информации |
US20140149824A1 (en) * | 2011-07-27 | 2014-05-29 | Erik Ordentlich | Method and system for reducing write-buffer capacities within memristor-based data-storage devices |
RU161373U1 (ru) * | 2015-12-16 | 2016-04-20 | Межрегиональное общественное учреждение "Институт инженерной физики" | Контролируемое устройство хранения и передачи информации |
RU164633U1 (ru) * | 2016-05-26 | 2016-09-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 | |
US4589112A (en) | System for multiple error detection with single and double bit error correction | |
US8806295B2 (en) | Mis-correction and no-correction rates for error control | |
JPS6349245B2 (ru) | ||
US3688265A (en) | Error-free decoding for failure-tolerant memories | |
US6393597B1 (en) | Mechanism for decoding linearly-shifted codes to facilitate correction of bit errors due to component failures | |
RU2403615C2 (ru) | Устройство хранения и передачи информации с обнаружением двойных ошибок | |
RU2448359C1 (ru) | Устройство хранения и передачи данных с исправлением ошибок в байте информации и обнаружением ошибок в байтах информации | |
RU164633U1 (ru) | Устройство хранения и передачи информации с обнаружением ошибок | |
US5535227A (en) | Digital information error correcting apparatus for single error correcting (SEC), double error detecting (DED), single byte error detecting (SBED), and odd numbered single byte error correcting (OSBEC) | |
US10153788B2 (en) | Detection of multiple bit errors in random access memories | |
RU2637426C1 (ru) | Устройство хранения и передачи данных с обнаружением ошибок | |
RU2450332C1 (ru) | Устройство хранения информации с обнаружением одиночных и двойных ошибок | |
RU169207U1 (ru) | Устройство хранения и передачи данных с обнаружением ошибок | |
Wolf | An introduction to tensor product codes and applications to digital storage systems | |
RU2450331C1 (ru) | Устройство хранения и передачи данных с исправлением одиночных ошибок в байте информации и обнаружением произвольных ошибок в байтах информации | |
RU175054U1 (ru) | Устройство хранения и передачи данных с обнаружением одиночных и двойных ошибок | |
RU2542665C1 (ru) | Устройство хранения и передачи данных с обнаружением и исправлением ошибок в байтах информации | |
RU106771U1 (ru) | Устройство хранения и передачи данных с исправлением ошибок в байте информации и обнаружением ошибок в байтах информации | |
RU107606U1 (ru) | Устройство хранения и передачи данных с исправлением одиночных ошибок в байте информации и обнаружением произвольных ошибок в байтах информации | |
RU76479U1 (ru) | Устройство памяти с обнаружением двойных ошибок | |
RU2816550C1 (ru) | Устройство хранения и считывания информации с коррекцией одиночных ошибок | |
RU2421786C1 (ru) | Устройство хранения информации повышенной достоверности функционирования | |
RU2297030C2 (ru) | Самокорректирующееся устройство хранения информации | |
RU2297035C2 (ru) | Отказоустойчивое запоминающее устройство |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM9K | Utility model has become invalid (non-payment of fees) |
Effective date: 20181118 |