RU106771U1 - DEVICE FOR STORAGE AND TRANSFER OF DATA WITH CORRECTION OF ERRORS IN THE BYTE OF INFORMATION AND DETECTION OF ERRORS IN THE BYtes OF INFORMATION - Google Patents

DEVICE FOR STORAGE AND TRANSFER OF DATA WITH CORRECTION OF ERRORS IN THE BYTE OF INFORMATION AND DETECTION OF ERRORS IN THE BYtes OF INFORMATION Download PDF

Info

Publication number
RU106771U1
RU106771U1 RU2011114400/08U RU2011114400U RU106771U1 RU 106771 U1 RU106771 U1 RU 106771U1 RU 2011114400/08 U RU2011114400/08 U RU 2011114400/08U RU 2011114400 U RU2011114400 U RU 2011114400U RU 106771 U1 RU106771 U1 RU 106771U1
Authority
RU
Russia
Prior art keywords
inputs
block
input
information
outputs
Prior art date
Application number
RU2011114400/08U
Other languages
Russian (ru)
Inventor
Константин Юрьевич Борисов
Юрий Георгиевич Малофеев
Павел Николаевич Осипенко
Александр Алексеевич Павлов
Алексей Александрович Павлов
Павел Александрович Павлов
Олег Владимирович Хоруженко
Алексей Николаевич Царьков
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 RU2011114400/08U priority Critical patent/RU106771U1/en
Application granted granted Critical
Publication of RU106771U1 publication Critical patent/RU106771U1/en

Links

Landscapes

  • Error Detection And Correction (AREA)

Abstract

Устройство хранения и передачи данных с исправлением ошибок в байте информации и обнаружением ошибок в байтах информации, содержащие узел памяти, входной блок кодирования, выходной блок кодирования, блок вычисления синдрома ошибки, дешифратор, коммутатор, блок коммутаторов, корректор, блок корректоров, отличающееся тем, что оно дополнительно содержит первый блок элементов ИЛИ, второй блок элементов ИЛИ, инвертор, элемент И, блок элементов И, вход установки устройства в нулевое состояние, вход записи, вход считывания, адресные входы, двадцатичетырехразрядные информационные входы, вход синхронизации, информационные выходы, выход сигнала «ошибка», вход установки в нулевое состояние, вход записи, вход считывания, адресные входы, подключены соответственно к первому, второму, третьему и четвертому входам узла памяти, вход синхронизации подключен к пятому входу узла памяти и к первому входу блока элементов И, информационные входы подключены к шестым входам узла памяти и к входам входного блока кодирования, который формирует значения контрольных разрядов r1, r2, r3, r4, r5, r6, r7, r8 путем сложения по модулю 2 информационных символов x1, x2, x3, z1, z2, z3, a1, а2, а3, c1, c2, c3, e1 е2 е3, f1 f2 f3, g1 g2 g3, h1 h2 h3, поступающих на входы входного блока кодирования, в соответствии с правилом: r1=x1⊕z1 ⊕а1 ⊕c1 ⊕e1⊕fi ⊕g1⊕h1; r2=x2⊕z2 ⊕а2 ⊕c2⊕e2⊕f2 ⊕g2⊕h2; r3=х3⊕z3⊕а3⊕с3⊕е3⊕f3⊕g3⊕h3; r4=x1⊕ z3⊕ а2⊕ а3⊕ с2⊕ e1⊕ е3⊕ f1⊕ f2⊕ g1⊕ g2⊕ g3; r5=x2⊕ x3⊕ z1⊕ а3⊕ c1⊕ с3⊕ е1⊕ е2⊕ f2⊕ g1⊕ g2⊕ g3; r6=x3⊕ z2⊕ z3⊕ a1⊕ c1⊕ c2⊕ e2⊕ f1⊕ f3⊕ g1⊕ g2⊕ g3; r7=x3⊕ z3⊕ а1⊕ а3⊕ c2⊕ e1⊕ f2⊕ g1⊕ g2⊕ g3; r8=x1⊕ x2⊕ z2⊕ a2⊕ а3⊕ c3⊕ е3⊕ f2⊕ f3⊕ g1⊕ g2⊕ g3, которые поступают на седьмые входы узла памяти, информационные выходы узла памяти подключены соо� A device for storing and transmitting data with error correction in an information byte and error detection in information bytes, containing a memory node, an input coding unit, an output coding unit, an error syndrome calculation unit, a decoder, a switch, a switch unit, a corrector, a corrector unit, characterized in that it additionally contains a first block of OR elements, a second block of OR elements, an inverter, an AND element, a block of AND elements, an input for setting the device to zero, a write input, a read input, address inputs, twenty four-digit information inputs, synchronization input, information outputs, error signal output, zero input, write input, read input, address inputs are connected respectively to the first, second, third and fourth inputs of the memory node, the synchronization input is connected to the fifth the input of the memory node and to the first input of the block of AND elements, the information inputs are connected to the sixth inputs of the memory node and to the inputs of the input coding block, which generates the values of the control bits r1, r2, r3, r4, r5, r6, r7, r8 by modulo addition of 2 information symbols x1, x2, x3, z1, z2, z3, a1, a2, a3, c1, c2, c3, e1 e2 e3, f1 f2 f3, g1 g2 g3, h1 h2 h3 coming to the inputs of the input coding unit, in accordance with the rule: r1 = x1⊕z1 ⊕а1 ⊕c1 ⊕e1⊕fi ⊕g1⊕h1; r2 = x2⊕z2 ⊕a2 ⊕c2⊕e2⊕f2 ⊕g2⊕h2; r3 = x3⊕z3⊕a3⊕c3⊕e3⊕f3⊕g3⊕h3; r4 = x1⊕ z3⊕ a2⊕ a3⊕ c2⊕ e1⊕ e3⊕ f1⊕ f2⊕ g1⊕ g2⊕ g3; r5 = x2⊕ x3⊕ z1⊕ a3⊕ c1⊕ c3⊕ e1⊕ e2⊕ f2⊕ g1⊕ g2⊕ g3; r6 = x3⊕ z2⊕ z3⊕ a1⊕ c1⊕ c2⊕ e2⊕ f1⊕ f3⊕ g1⊕ g2⊕ g3; r7 = x3⊕ z3⊕ a1⊕ a3⊕ c2⊕ e1⊕ f2⊕ g1⊕ g2⊕ g3; r8 = x1⊕ x2⊕ z2⊕ a2⊕ a3⊕ c3⊕ e3⊕ f2⊕ f3⊕ g1⊕ g2⊕ g3, which are fed to the seventh inputs of the memory node, the information outputs of the memory node are connected

Description

Полезная модель относится к вычислительной технике и может быть использовано для повышения достоверности функционирования запоминающих устройств.The utility model relates to computer technology and can be used to increase the reliability of the functioning of storage devices.

Известно самокорректирующееся устройство [1], использующие корректирующий код (наиболее часто используется код Хемминга корректирующий одиночную ошибку и обнаруживающий двойную ошибку).A self-correcting device is known [1], using a correction code (the most frequently used Hamming code is a single error correction and detecting a double error).

Недостатком устройства является низкая обнаруживающая способность кода, так как обнаруживаются только двойные ошибки.The disadvantage of this device is the low detecting ability of the code, since only double errors are detected.

Наиболее близким по техническому решению является отказоустойчивое устройство хранения и передачи данных, реализующие коды, исправляющие одиночные байты ошибок, обнаруживающие двойные байты ошибок [2], содержащие узел памяти, входной блок кодирования, выходной блок кодирования, блок вычисления синдрома ошибки, дешифратор, коммутаторы ошибок байтов, корректор, входы устройства подключены к входам узла памяти и к входам входного кодирующего устройства, выходы которого подключены к первым входам блока вычисления синдрома, выходы узла памяти подключены к вторым входам блока вычисления синдрома и к первым входам корректора, выходы блока вычисления синдрома подключены к входам дешифратора, соединенного своими выходами со вторыми входами корректора, выходы корректора являются выходами устройства.The closest in technical solution is a fault-tolerant device for storing and transmitting data, implementing codes correcting single error bytes, detecting double error bytes [2], containing a memory node, an input coding unit, an output coding unit, an error syndrome calculation unit, a decoder, error switches bytes, corrector, device inputs are connected to the inputs of the memory node and to the inputs of the input encoding device, the outputs of which are connected to the first inputs of the syndrome calculation unit, the outputs of the memory node ti are connected to second inputs of syndrome calculation unit and to first inputs of corrector unit outputs syndrome calculation are connected to inputs of the decoder, their outputs connected to second inputs of the equalizer, the equalizer output is the output device.

Недостатком устройства является низкая обнаруживающая способность ошибок в устройстве, так как обнаруживаются только двойные байты ошибок.A disadvantage of the device is the low error detection capacity of the device, since only double error bytes are detected.

Целью полезной модели является повышение достоверности функционирования устройства за счет коррекции одиночных байтов и обнаружением ошибок в байтах информации.The purpose of the utility model is to increase the reliability of the device by correcting single bytes and detecting errors in bytes of information.

Поставленная цель достигается тем, что устройство, содержащие узел памяти, входной блок кодирования, выходной блок кодирования, блок вычисления синдрома ошибки, дешифратор, коммутатор, блок коммутаторов, корректор, блок корректоров, отличающаяся тем, что оно дополнительно содержит первый блок элементов ИЛИ, второй блок элементов ИЛИ, инвертор, элемент И, блок элементов И, вход установки устройства в нулевое состояние, вход записи, вход считывания, адресные входы, двадцати четырех разрядные информационные входы, вход синхронизации, информационные выходы, выход сигнала «ошибка», вход установки в нулевое состояние, вход записи, вход считывания, адресные входы, подключены соответственно к первому, второму, третьему и четвертому входам узла памяти, вход синхронизации подключен к пятому входу узла памяти и к первому входу блока элементов И, информационные входы подключены к шестым входам узла памяти и к входам входного блока кодирования который формирует значения контрольных разрядов r1, r2, r3, r4, r5, r6, r7, r8 путем сложения по модулю 2 информационных символов x1, x2, x3, z1, z2, z3, a1, а2, а3, c1, c2, c3, e1 е2 е3, f1 f2 f3, g1 g2 g3, h1 h2 h3., поступающих на входы входного блока кодирования, в соответствии с правилом: r1=x1⊕z1 ⊕а1 ⊕c1 ⊕e1⊕fi ⊕g1⊕h1; r2=x2⊕z2 ⊕а2 ⊕c2⊕e2⊕f2 ⊕g2⊕h2; r33⊕z3⊕а3⊕с3⊕е3⊕f3⊕g3⊕h3; r4=x1⊕ z3⊕ а2⊕ а3⊕ c2⊕ e1⊕ е3⊕ f1⊕ f2⊕ g1⊕ g2⊕ g3; r5=x2⊕ x3⊕ z1⊕ а3⊕ c1⊕ с3⊕ е1⊕ е2⊕ f2⊕ g1⊕ g2⊕ g3; r6=x3⊕ z2⊕ z3⊕ a1⊕ c1⊕ c2⊕ e2⊕ f1⊕ f3⊕ g1⊕ g2⊕ g3; r7=x3⊕ z3⊕ а1⊕ а3⊕ c2⊕ e1⊕ f2⊕ g1⊕ g2⊕ g3; r8=x1⊕ x2⊕ z2⊕ a2⊕ а3⊕ c3⊕ е3⊕ f2⊕ f3⊕ g1⊕ g2⊕ g3, которые поступают на седьмые входы узла памяти, информационные выходы узла памяти подключены соответственно к первым входам корректора, блока корректоров и к входам выходного блока кодирования, который формирует значения проверочных контрольных разрядов r, r, r, r, r, r r r путем сложения по модулю 2 информационных символов х х х, z z z, a a a, c c c, e e e, f f f, g g g, h h h, поступающих на входы входного блока кодирования с информационных выходов узла памяти, в соответствии с правилом: : r⊕z ⊕а ⊕с ⊕e⊕f ⊕g⊕h; r⊕z, ⊕а ⊕с⊕e⊕f ⊕g⊕h; r⊕z⊕а⊕с⊕e⊕f⊕g⊕h; r⊕ z⊕ а⊕ а⊕ с⊕ e⊕ е⊕ f⊕ f⊕g⊕ g; r⊕ х⊕ z⊕ a⊕ с⊕ с⊕е⊕е⊕ f⊕g⊕ g⊕ g; r=x⊕ z⊕ z⊕ а⊕ с⊕ c⊕ e⊕ f⊕ f⊕g⊕ g⊕ g; r⊕ z⊕ а⊕ а⊕ с⊕ е⊕ f⊕g⊕ g⊕ g; r⊕ х⊕ z⊕ а⊕ а⊕ с⊕ е⊕ f⊕f ⊕g⊕ g⊕ g, выходы выходного блока кодирования подключены к первым входам блока вычисления синдрома ошибки к вторым входам которого, подключены выходы контрольных разрядов узла памяти, первые выходы блока вычисления синдрома ошибки подключены к первым входам дешифратора, к первым входам коммутатора, к входам первого блока элементов ИЛИ и к первым входам блока коммутаторов, вторые выходы блока вычисления синдрома ошибки подключены к вторым входам дешифратора и к вторым входам первого блока элементов ИЛИ, выходы дешифратора подключены к входам второго блока элементов ИЛИ, при этом первый выход дешифратора подключен к второму входу коммутатора, а вторые выходы подключены к вторым входам блока коммутаторов, выход второго блока элементов ИЛИ через инвертор подключен к первому входу элемента И, второй вход которого подключен к выходу первого блока элементов ИЛИ, выход элемента И является выходом сигнала «ошибка», выходы коммутатора подключены к вторым входам корректора, выходы блока коммутаторов подключены к вторым входам блока корректоров, выходы корректора и блока корректоров подключены к вторым входам блока элементов И, выходы которого являются информационными выходами устройства.This goal is achieved in that the device containing a memory node, an input coding unit, an output coding unit, an error syndrome calculation unit, a decoder, a switch, a switch unit, a corrector, a corrector unit, characterized in that it further comprises a first block of OR elements, a second block of OR elements, inverter, AND element, block of AND elements, input to set the device to zero, write input, read input, address inputs, twenty-four bit information inputs, synchronization input, information output outputs, error output, zero input, write input, read input, address inputs are connected respectively to the first, second, third and fourth inputs of the memory node, the synchronization input is connected to the fifth input of the memory node and to the first input block of elements And, information inputs are connected to the sixth inputs of the memory node and to the inputs of the input coding block which generates the values of the control bits r 1 , r 2 , r 3 , r 4 , r 5 , r 6 , r 7 , r 8 by modulo addition 2 information symbols x 1 , x 2 , x 3 , z 1 , z 2 , z 3 , a 1 , a 2 , a 3 , c 1 , c 2 , c 3 , e 1 e 2 e 3 , f 1 f 2 f 3 , g 1 g 2 g 3 , h 1 h 2 h 3 . the inputs of the input coding block, in accordance with the rule: r 1 = x 1 ⊕z 1 ⊕a 1 ⊕c 1 ⊕e 1 ⊕f i ⊕g 1 ⊕h 1 ; r 2 = x 2 ⊕z 2 ⊕a 2 ⊕c 2 ⊕e 2 ⊕f 2 ⊕g 2 ⊕h 2 ; r 3 = x 3 ⊕z 3 ⊕а 3 ⊕с 3 ⊕е 3 ⊕f 3 ⊕g 3 ⊕h 3 ; r 4 = x 1 ⊕ z 3 ⊕ a 2 ⊕ a 3 ⊕ c 2 ⊕ e 1 ⊕ e 3 ⊕ f 1 ⊕ f 2 ⊕ g 1 ⊕ g 2 ⊕ g 3 ; r 5 = x 2 ⊕ x 3 ⊕ z 1 ⊕ a 3 ⊕ c 1 ⊕ s 3 ⊕ e 1 ⊕ e 2 ⊕ f 2 ⊕ g 1 ⊕ g 2 ⊕ g 3 ; r 6 = x 3 ⊕ z 2 ⊕ z 3 ⊕ a 1 ⊕ c 1 ⊕ c 2 ⊕ e 2 ⊕ f 1 ⊕ f 3 ⊕ g 1 ⊕ g 2 ⊕ g 3 ; r 7 = x 3 ⊕ z 3 ⊕ a 1 ⊕ a 3 ⊕ c 2 ⊕ e 1 ⊕ f 2 ⊕ g 1 ⊕ g 2 ⊕ g 3 ; r 8 = x 1 ⊕ x 2 ⊕ z 2 ⊕ a 2 ⊕ a 3 ⊕ c 3 ⊕ e 3 ⊕ f 2 ⊕ f 3 ⊕ g 1 ⊕ g 2 ⊕ g 3 that go to the seventh inputs of the memory node, information outputs of the node memory are connected respectively to the first inputs of the corrector, the corrector block and the inputs of the output coding block, which generates the values of the test check bits r 1P , r 2P , r 3P , r 4P , r 5P , r 6P r 7P r 8P by modulo 2 information characters x 1P x 2P x 3P , z 1P z 2P z 3P , a 1P a 2P a 3P , c 1P c 2P c 3P , e 1P e 2P e 3P , f 1P f 2P f 3P , g 1P g 2P g 3P , h h 1P 2P 3P h arriving on the input coding unit inputs the information onnyh memory unit outputs, in accordance with the rule:: r = x 1P 1P 1P ⊕z ⊕a ⊕s 1P 1P 1P ⊕e ⊕f ⊕g 1P 1P 1P ⊕h; r 2P = x 2P ⊕z 2P , ⊕a 2P ⊕s 2P ⊕e 2P ⊕f 2P ⊕g 2P ⊕h 2P ; r 3P = x 3P ⊕z 3P ⊕a 3P ⊕s 3P ⊕e 3P ⊕f 3P ⊕g 3P ⊕h 3P ; r 4P = x 1P ⊕ z 3P ⊕ a 2P ⊕ a 3P ⊕ s 2P ⊕ e 1P ⊕ e 3P ⊕ f 1P ⊕ f 2P ⊕g 1P ⊕ g 3P ; r 5P = x 2P ⊕ x 3P ⊕ z 1P ⊕ a 3P ⊕ s 1P ⊕ s 3P ⊕e 1P ⊕e 2P ⊕ f 2P ⊕g 1P ⊕ g 2P ⊕ g 3P ; r 6P = x 3P ⊕ z 2P ⊕ z 3P ⊕ a 1P ⊕ s 1P ⊕ c 2P ⊕ e 2P ⊕ f 1P ⊕ f 3P ⊕g 1P ⊕ g 2P ⊕ g 3P ; r 7P = x 3P ⊕ z 3P ⊕ a 1P ⊕ a 3P ⊕ s 2P ⊕ e 1P ⊕ f 2P ⊕g 1P ⊕ g 2P ⊕ g 3P ; r 8P = x 1P ⊕ x 2P ⊕ z 2P ⊕ a 2P ⊕ a 3P ⊕ s 3P ⊕ e 3P ⊕ f 2P ⊕f 3P ⊕g 1P ⊕ g 2P ⊕ g 3P , the outputs of the output coding unit are connected to the first inputs of the syndrome calculation unit errors to the second inputs of which the outputs of the control bits of the memory node are connected, the first outputs of the error syndrome calculation block are connected to the first inputs of the decoder, to the first inputs of the switch, to the inputs of the first block of OR elements and to the first inputs of the switch block, the second outputs of the error syndrome calculation block are connected to the second inputs of the decoder and to the second inputs ne of the first block of OR elements, the outputs of the decoder are connected to the inputs of the second block of OR elements, the first output of the decoder is connected to the second input of the switch, and the second outputs are connected to the second inputs of the block of switches, the output of the second block of OR elements through the inverter is connected to the first input of the AND element, the second input of which is connected to the output of the first block of OR elements, the output of the AND element is the output of the "error" signal, the outputs of the switch are connected to the second inputs of the corrector, the outputs of the block of switches are connected to the second m inputs of the corrector block, the outputs of the corrector and the corrector block are connected to the second inputs of the block of AND elements, the outputs of which are information outputs of the device.

На фиг.1 представлена блок-схема устройства. Устройство хранения и передачи данных с исправлением ошибок в байте информации и обнаружением ошибок в байтах информации содержит: узел 1 памяти, входной блок 2 кодирования, выходной блок 3 кодирования, блок 4 вычисления синдрома ошибки, дешифратор 5, коммутатор 6, блок 7 коммутаторов, корректор 8, блок 9 корректоров, первый элемент 10 ИЛИ, второй элемент 11 ИЛИ, инвертор 12, элемент 13 И, блок 14 элементов И, вход 15 установки в нулевое состояние, вход 16 записи, вход 17 считывания, адресные входы 18, информационные входы 19, вход 20 синхронизации, информационные выходы 21, выход 22 сигнала "ошибка".Figure 1 presents a block diagram of a device. A data storage and transmission device with error correction in an information byte and error detection in information bytes contains: memory node 1, input coding unit 2, output coding unit 3, error syndrome calculation unit 4, decoder 5, switch 6, switch unit 7, corrector 8, corrector block 9, first element 10 OR, second element 11 OR, inverter 12, element 13 AND, block 14 elements AND, input 15 to zero state, input 16 records, input 17 read, address inputs 18, information inputs 19 , input 20 synchronization, information output 21, output 22 of the error signal.

Вход 15 установки в нулевое состояние, вход 16 записи, вход 17 считывания, адресные входы 18, подключены соответственно к первому, второму, третьему и четвертому входам узла 1 памяти, вход 20 синхронизации подключен к пятому входу узла 1 памяти и к первому входу блока 14 элементов И, информационные входы 19 подключены к шестым входам узла 1 памяти и к входам входного блока 2 кодирования, который формирует значения контрольных разрядов r1, r2, r3, r4, r5, r6, r7, r8 путем сложения по модулю 2 информационных символов x1, x2, x3, z1, z2, z3, a1, а2, а3, c1, c2, c3, e1 е2 е3, f1 f2 f3, g1 g2 g3, h1 h2 h3., поступающих на входы входного блока 2 кодирования, в соответствии с правилом: r1=x1⊕z1 ⊕а1 ⊕c1 ⊕e1 ⊕f1 ⊕g1 ⊕h1; r2=x2⊕z2 ⊕а2 ⊕c2⊕e2⊕f2 ⊕g2⊕h2; r33⊕z3⊕а3⊕с3⊕е3⊕f3 ⊕g3⊕h3; r4=x1⊕ z3⊕ а2⊕ а3⊕ c2⊕ e1⊕ е3⊕ f1⊕ f2⊕ g1⊕ g2⊕ g3; r5=x2⊕ x3⊕ z1⊕ а3⊕ c1⊕ с3⊕ е1⊕ е2⊕ f2⊕ g1⊕ g2⊕ g3; r6=x3⊕ z2⊕ z3⊕ a1⊕ c1⊕ c2⊕ e2⊕ f1⊕ f3⊕g1⊕ g2⊕ g3; r7=x3⊕ z3⊕ а1⊕ а3⊕ c2⊕ e1⊕ f2⊕ g1⊕ g2⊕ g3; r8=x1⊕ x2⊕ z2⊕ a2⊕ а3⊕ c3⊕ е3⊕ f2⊕ f3⊕ g1⊕ g2⊕ g3, которые поступают на седьмые входы узла 1 памяти, информационные выходы узла памяти подключены соответственно к первым входам корректора, 8 блока 9 корректоров и к входам выходного блока 3 кодирования, который формирует значения проверочных контрольных разрядов r, r, r, r, r, r, r, r путем сложения по модулю 2 информационных символов x, x, x, z, z, z, a, а, а, c, c, c, e е е, f f f, g g g, h h h, поступающих на входы входного блока 3 кодирования с информационных выходов узла 1 памяти, в соответствии с правилом: r⊕z, ⊕а ⊕с ⊕e⊕f ⊕g⊕h; r⊕z ⊕а ⊕с⊕e⊕f ⊕g⊕h; r⊕z⊕а⊕с⊕e⊕f⊕g⊕h; r⊕ z⊕ а⊕ а⊕ с⊕ e⊕ е⊕ f⊕ f⊕g⊕ g; r⊕ х⊕ z⊕ a⊕ с⊕ с⊕е⊕е⊕ f⊕g⊕ g⊕ g; r=x⊕ z⊕ z⊕ а⊕ с⊕ C⊕ e⊕ f⊕ f⊕g⊕ g⊕ g; r⊕ z⊕ а⊕ а⊕ с⊕ е⊕ f⊕g⊕ g⊕ g; r⊕ х⊕ z⊕ а⊕ а⊕ с⊕ е⊕ f⊕f ⊕g⊕ g⊕ g, выходы выходного блока 3 кодирования подключены к первым входам блока 4 вычисления синдрома ошибки, к вторым входам которого, подключены выходы контрольных разрядов узла 1 памяти, первые выходы блока 4 вычисления синдрома ошибки подключены к первым входам дешифратора 5, к первым входам коммутатора 6, к входам первого блока 10 элементов ИЛИ и к первым входам блока 7 коммутаторов, вторые выходы блока 4 вычисления синдрома ошибки подключены к вторым входам дешифратора 5 и к вторым входам первого блока 10 элементов ИЛИ, выходы дешифратора 5 подключены к входам второго блока 11 элементов ИЛИ, при этом первый выход дешифратора 5 подключен к второму входу коммутатора 6, а вторые выходы подключены к вторым входам блока 7 коммутаторов, выход второго блока 11 элементов ИЛИ через инвертор 12 подключен к первому входу элемента 13 И, второй вход которого подключен к выходу первого блока 10 элементов ИЛИ, выход элемента 13 И является выходом сигнала «ошибка», выходы коммутатора 6 подключены к вторым входам корректора 8, выходы блока 7 коммутаторов подключены к вторым входам блока 9 корректоров, выходы корректора 8 и блока 9 корректоров подключены к входам блока 14 элементов И, выходы которого являются информационными выходами 21 устройства.The input 15 is set to zero, input 16 records, input 17 read, address inputs 18 are connected respectively to the first, second, third and fourth inputs of the memory node 1, the synchronization input 20 is connected to the fifth input of the memory node 1 and to the first input of block 14 elements And, the information inputs 19 are connected to the sixth inputs of the memory node 1 and to the inputs of the encoding input unit 2, which generates the values of the control bits r 1 , r 2 , r 3 , r 4 , r 5 , r 6 , r 7 , r 8 by addition modulo 2 information symbols x 1 , x 2 , x 3 , z 1 , z 2 , z 3 , a 1 , and 2 , a 3 , c 1 , c 2 , c 3 , e 1 e 2 e 3 , f 1 f 2 f 3 , g 1 g 2 g 3 , h 1 h 2 h 3. , Coming to the inputs of the input coding unit 2, in accordance with the rule: r 1 = x 1 ⊕z 1 ⊕ and 1 ⊕c 1 ⊕e 1 ⊕f 1 ⊕g 1 ⊕h 1 ; r 2 = x 2 ⊕z 2 ⊕a 2 ⊕c 2 ⊕e 2 ⊕f 2 ⊕g 2 ⊕h 2 ; r 3 = x 3 ⊕z 3 ⊕а 3 ⊕с 3 ⊕е 3 ⊕f 3 ⊕g 3 ⊕h 3 ; r 4 = x 1 ⊕ z 3 ⊕ a 2 ⊕ a 3 ⊕ c 2 ⊕ e 1 ⊕ e 3 ⊕ f 1 ⊕ f 2 ⊕ g 1 ⊕ g 2 ⊕ g 3 ; r 5 = x 2 ⊕ x 3 ⊕ z 1 ⊕ a 3 ⊕ c 1 ⊕ s 3 ⊕ e 1 ⊕ e 2 ⊕ f 2 ⊕ g 1 ⊕ g 2 ⊕ g 3 ; r 6 = x 3 ⊕ z 2 ⊕ z 3 ⊕ a 1 ⊕ c 1 ⊕ c 2 ⊕ e 2 ⊕ f 1 ⊕ f 3 ⊕g 1 ⊕ g 2 ⊕ g 3 ; r 7 = x 3 ⊕ z 3 ⊕ a 1 ⊕ a 3 ⊕ c 2 ⊕ e 1 ⊕ f 2 ⊕ g 1 ⊕ g 2 ⊕ g 3 ; r 8 = x 1 ⊕ x 2 ⊕ z 2 ⊕ a 2 ⊕ a 3 ⊕ c 3 ⊕ e 3 ⊕ f 2 ⊕ f 3 ⊕ g 1 ⊕ g 2 ⊕ g 3 that go to the seventh inputs of the memory node 1, information outputs the memory node is connected respectively to the first inputs of the corrector, 8 block 9 of the corrector and to the inputs of the output coding block 3, which generates the values of the test check bits r 1P , r 2P , r 3P , r 4P , r 5P , r 6P , r 7P , r 8P by adding modulo 2 information symbols x 1P , x 2P , x 3P , z 1P , z 2P , z 3P , a 1P , and 2P , a 3P , c 1P , c 2P , c 3P , e 1P e 2P e 3P , f 1P f 2P f 3P , g 1P g 2P g 3P , h 1P h 2P h 3P received at the inputs of input block 3 encoded memory information node 1, in accordance with the rule: r 1P = x 1P ⊕z 1P , ⊕a 1P ⊕s 1P ⊕e 1P ⊕f 1P ⊕g 1P ⊕h 1P ; r 2P = x 2P ⊕z 2P ⊕a 2P ⊕s 2P ⊕e 2P ⊕f 2P ⊕g 2P ⊕h 2P ; r 3P = x 3P ⊕z 3P ⊕a 3P ⊕s 3P ⊕e 3P ⊕f 3P ⊕g 3P ⊕h 3P ; r 4P = x 1P ⊕ z 3P ⊕ a 2P ⊕ a 3P ⊕ s 2P ⊕ e 1P ⊕ e 3P ⊕ f 1P ⊕ f 2P ⊕g 1P ⊕ g 3P ; r 5P = x 2P ⊕ x 3P ⊕ z 1P ⊕ a 3P ⊕ s 1P ⊕ s 3P ⊕e 1P ⊕e 2P ⊕ f 2P ⊕g 1P ⊕ g 2P ⊕ g 3P ; r 6P = x 3P ⊕ z 2P ⊕ z 3P ⊕ a 1P ⊕ s 1P ⊕ C 2P ⊕ e 2P ⊕ f 1P ⊕ f 3P ⊕g 1P ⊕ g 2P ⊕ g 3P ; r 7P = x 3P ⊕ z 3P ⊕ a 1P ⊕ a 3P ⊕ s 2P ⊕ e 1P ⊕ f 2P ⊕g 1P ⊕ g 2P ⊕ g 3P ; r 8P = x 1P ⊕ x 2P ⊕ z 2P ⊕ a 2P ⊕ a 3P ⊕ s 3P ⊕ e 3P ⊕ f 2P ⊕f 3P ⊕g 1P ⊕ g 2P ⊕ g 3P , the outputs of the encoding output block 3 are connected to the first inputs of block 4 computing the syndrome of the error, to the second inputs of which the outputs of the control bits of the memory unit 1 are connected, the first outputs of block 4, computing the syndrome of the error is connected to the first inputs of the decoder 5, to the first inputs of the switch 6, to the inputs of the first block of 10 OR elements and to the first inputs of block 7 switches, the second outputs of the unit 4 computing the syndrome of the error are connected to the second inputs of the decoder 5 and to the second the input inputs of the first block of 10 OR elements, the outputs of the decoder 5 are connected to the inputs of the second block 11 of the OR elements, while the first output of the decoder 5 is connected to the second input of the switch 6, and the second outputs are connected to the second inputs of the block 7 of the switches, the output of the second block of 11 elements OR through the inverter 12 is connected to the first input of the element 13 AND, the second input of which is connected to the output of the first block 10 of the OR elements, the output of the element 13 And is the output of the signal "error", the outputs of the switch 6 are connected to the second inputs of the corrector 8, the outputs of the block 7 to switchboards are connected to the second inputs of the corrector block 9, the outputs of the corrector 8 and the corrector block 9 are connected to the inputs of the AND block 14, the outputs of which are information outputs of the device 21.

Узел 1 памяти, в данном случае, представляет собой статическое полупроводниковое оперативное устройство памяти и предназначен для хранения кодовых наборов: УК=x1 x2 x3, z1 z2 z3, a1 а2 а3, c1 c2 c3, е1, е2, e3, f1 f2 f3, g1 g2 g3, h1 h2 h3, r1 r2 r3 r4 r4 r6 r7 r8, полученных при кодировании исходных двадцати четырех разрядных двоичных наборов.The memory node 1, in this case, is a static semiconductor operational memory device and is designed to store code sets: K = x 1 x 2 x 3 , z 1 z 2 z 3 , a 1 a 2 a 3 , c 1 c 2 c 3 , e 1 , e 2 , e 3 , f 1 f 2 f 3 , g 1 g 2 g 3 , h 1 h 2 h 3 , r 1 r 2 r 3 r 4 r 4 r 6 r 7 r 8 , obtained by encoding the original twenty-four bit binary sets.

Входной блок 2 кодирования предназначен для формирования значений контрольных разрядов r1 r2 r3 r4 r4 r6 r7 r8, путем сложения по mod2 информационных символов в соответствии с правилом: : r1=x1⊕z1 ⊕а1 ⊕c1 ⊕e1⊕f1 ⊕g1⊕h1; r2=x2⊕z2 ⊕а2 ⊕c2⊕e2⊕f2 ⊕g2⊕h2; r33⊕z3⊕а3⊕с3⊕е3⊕f3 ⊕g3⊕h3; r4=x1⊕ z3⊕ а2⊕ а3⊕ c2⊕ e1⊕ е3⊕ f1⊕ f2⊕ g1⊕ g2⊕ g3; r5=x2⊕ x3⊕ z1⊕ а3⊕ c1⊕ с3⊕ е1⊕ е2⊕ f2⊕ g1⊕ g2⊕ g3; r6=x3⊕ z2⊕ z3⊕ a1⊕ c1⊕ c2⊕ e2⊕ f1⊕ f3⊕g1⊕ g2⊕ g3; r7=x3⊕ z3⊕ а1⊕ а3⊕ c2⊕ e1⊕ f2⊕ g1⊕ g2⊕ g3; r8=x1⊕ x2⊕ z2⊕ a2⊕ а3⊕ c3⊕ е3⊕ f2⊕ f3⊕ g1⊕ g2⊕ g3,.The input coding unit 2 is designed to generate the values of the control bits r 1 r 2 r 3 r 4 r 4 r 6 r 7 r 8 , by adding mod2 information symbols in accordance with the rule:: r 1 = x 1 ⊕z 1 ⊕а 1 ⊕c 1 ⊕e 1 ⊕f 1 ⊕g 1 ⊕h 1 ; r 2 = x 2 ⊕z 2 ⊕a 2 ⊕c 2 ⊕e 2 ⊕f 2 ⊕g 2 ⊕h 2 ; r 3 = x 3 ⊕z 3 ⊕а 3 ⊕с 3 ⊕е 3 ⊕f 3 ⊕g 3 ⊕h 3 ; r 4 = x 1 ⊕ z 3 ⊕ a 2 ⊕ a 3 ⊕ c 2 ⊕ e 1 ⊕ e 3 ⊕ f 1 ⊕ f 2 ⊕ g 1 ⊕ g 2 ⊕ g 3 ; r 5 = x 2 ⊕ x 3 ⊕ z 1 ⊕ a 3 ⊕ c 1 ⊕ s 3 ⊕ e 1 ⊕ e 2 ⊕ f 2 ⊕ g 1 ⊕ g 2 ⊕ g 3 ; r 6 = x 3 ⊕ z 2 ⊕ z 3 ⊕ a 1 ⊕ c 1 ⊕ c 2 ⊕ e 2 ⊕ f 1 ⊕ f 3 ⊕g 1 ⊕ g 2 ⊕ g 3 ; r 7 = x 3 ⊕ z 3 ⊕ a 1 ⊕ a 3 ⊕ c 2 ⊕ e 1 ⊕ f 2 ⊕ g 1 ⊕ g 2 ⊕ g 3 ; r 8 = x 1 ⊕ x 2 ⊕ z 2 ⊕ a 2 ⊕ a 3 ⊕ c 3 ⊕ e 3 ⊕ f 2 ⊕ f 3 ⊕ g 1 ⊕ g 2 ⊕ g 3 ,.

Выходной блок 3 кодирования предназначен для формирования значений проверочных контрольных разрядов r, r, r, r, r, r, r, r, путем сложения по mod2 информационных символов, полученных при считывании информации с узла 1 памяти в соответствии с правилом: r⊕z ⊕а ⊕с ⊕e⊕f ⊕g⊕h; r⊕z, ⊕а ⊕с⊕e⊕f ⊕g⊕h; r⊕z⊕а⊕с⊕e⊕f⊕g⊕h; r⊕ z⊕ а⊕ а⊕ с⊕ e⊕ е⊕ f⊕ f⊕g⊕ g; r⊕ х⊕ z⊕ a⊕ с⊕ с⊕е⊕е⊕ f⊕g⊕ g⊕ g; r=x⊕ z⊕ z⊕ а⊕ с⊕ C⊕ e⊕ f⊕ f⊕g⊕ g⊕ g; r⊕ z⊕ а⊕ а⊕ с⊕ е⊕ f⊕g⊕ g⊕ g; r⊕ х⊕ z⊕ а⊕ а⊕ с⊕ е⊕ f⊕f ⊕g⊕ g⊕ g,The output coding unit 3 is designed to generate the values of test check bits r 1P , r 2P , r 3P , r 4P , r 5P , r 6P , r 7P , r 8P , by adding mod2 information symbols received when reading information from memory node 1 in accordance with the rule: r 1P = x 1P ⊕z 1P ⊕a 1P ⊕s 1P ⊕e 1P ⊕f 1P ⊕g 1P ⊕h 1P ; r 2P = x 2P ⊕z 2P , ⊕a 2P ⊕s 2P ⊕e 2P ⊕f 2P ⊕g 2P ⊕h 2P ; r 3P = x 3P ⊕z 3P ⊕a 3P ⊕s 3P ⊕e 3P ⊕f 3P ⊕g 3P ⊕h 3P ; r 4P = x 1P ⊕ z 3P ⊕ a 2P ⊕ a 3P ⊕ s 2P ⊕ e 1P ⊕ e 3P ⊕ f 1P ⊕ f 2P ⊕g 1P ⊕ g 3P ; r 5P = x 2P ⊕ x 3P ⊕ z 1P ⊕ a 3P ⊕ s 1P ⊕ s 3P ⊕e 1P ⊕e 2P ⊕ f 2P ⊕g 1P ⊕ g 2P ⊕ g 3P ; r 6P = x 3P ⊕ z 2P ⊕ z 3P ⊕ a 1P ⊕ s 1P ⊕ C 2P ⊕ e 2P ⊕ f 1P ⊕ f 3P ⊕g 1P ⊕ g 2P ⊕ g 3P ; r 7P = x 3P ⊕ z 3P ⊕ a 1P ⊕ a 3P ⊕ s 2P ⊕ e 1P ⊕ f 2P ⊕g 1P ⊕ g 2P ⊕ g 3P ; r 8P = x 1P ⊕ x 2P ⊕ z 2P ⊕ a 2P ⊕ a 3P ⊕ s 3P ⊕ e 3P ⊕ f 2P ⊕f 3P ⊕g 1P ⊕ g 2P ⊕ g 3P ,

Блок 4 вычисления синдрома ошибки предназначен для обнаружения ошибки в кодовом наборе при считывании информации с узла 1 памяти путем сложения по mod2 значений контрольных разрядов r1 r2 r3 r4 r4 r6 r7 r8 считываемых с вторых выходов узла 1 памяти, соответственно с значениями контрольных разрядов r, r, r, r, r, r, r, r, сформированных на выходах выходного блока 3 кодирования.Block 4 of the calculation of the error syndrome is designed to detect errors in the code set when reading information from the memory node 1 by adding mod2 values of the control bits r 1 r 2 r 3 r 4 r 4 r 6 r 7 r 8 read from the second outputs of the memory node 1, respectively, with the values of the control bits r 1P , r 2P , r 3P , r 4P , r 5P , r 6P , r 7P , r 8P formed at the outputs of the output coding unit 3.

Результат поразрядного сложения:The result of bitwise addition:

λ1=r1⊕r;λ 1 = r 1 ⊕r 1P ;

λ2=r2⊕r;λ 2 = r 2 ⊕r 2P ;

λ3=r3⊕r;λ 3 = r 3 ⊕r 3P ;

λ4=r4⊕r;λ 4 = r 4 ⊕r 4P ;

λ5=r5⊕r;λ 5 = r 5 ⊕r 5P ;

λ6=r6⊕r;λ 6 = r 6 ⊕r 6P ;

λ7=r7⊕r;λ 7 = r 7 ⊕r 7P ;

λ8=r8⊕r;λ 8 = r 8 ⊕r 8P ;

Нулевой результат суммы свидетельствует об отсутствии ошибки, и ее наличии в противном случае.A zero result of the sum indicates the absence of an error, and its presence otherwise.

Выходы λ1 λ2 λ3 блока 4 вычисления синдрома ошибки, позволяют определяют конфигурацию ошибки (вектор ошибки λ1 λ2 λ3, содержащий единичные значения в тех разрядах, которые соответствуют ошибочным разрядам в блоке информации), выходы λ4 λ5 λ6 λ7 λ8 определяют блок информационных разрядов в котором произошла ошибка.The outputs λ 1 λ 2 λ 3 of the error syndrome calculation unit 4 allow the error configuration to be determined (error vector λ 1 λ 2 λ 3 containing unit values in those bits that correspond to the error bits in the information block), outputs λ 4 λ 5 λ 6 λ 7 λ 8 determine the block of information bits in which an error occurred.

Дешифратор 7 формирует единичное значение сигнала на одном из своих выходов в соответствии с таблицей:The decoder 7 generates a single signal value at one of its outputs in accordance with the table:

Таблица 1.Table 1. Значения синдромов ошибок кода (30,8) исправляющего байты ошибок в блоке информации и обнаруживающего ошибки в произвольных блоках информации.The values of the error syndromes of the code (30.8) correcting error bytes in the information block and detecting errors in arbitrary information blocks. № п/пNo. p / p Безошибочный блок инфор-и 000Error-free block infor-000 Значение первой части контрольных разрядовThe value of the first part of the control bits Значения проверок второй части контрольных разрядовValues of checks of the second part of the control bits Ошибочны и блок информацииIncorrect and block information ХX ZZ АBUT сfrom ЕE FF GG НN 1one 100one hundred 100one hundred 1000110001 0100001000 0011000110 0110001100 1101011010 1010010100 1111011110 0000000000 22 010010 010010 0100101001 0010100101 1000110001 1011110111 0110001100 1101111011 1110111101 0000000000 33 001001 001001 0111001110 1011010110 1101111011 0100101001 1000110001 0010100101 1110111101 0000000000 4four 110110 110110 1100011000 0110101101 1011110111 1101011010 1011010110 0111101111 0001000010 0000000000 55 101101 101101 1111111111 1111011110 1110111101 0010100101 0101101011 1000110001 0000100001 0000000000 66 011011 011011 0011000110 1001110011 0101001010 1111111111 1110111101 1111011110 0001000010 0000000000 111111 111111 1011010110 1101111011 0110001100 1001110011 0011100111 0101001010 1111011110 0000000000

Если значение синдрома ошибки не соответствует значениям, представленным в таблице, то произошла не корректируемая ошибка (сигналы на выходе дешифратора имеют пулевые значения).If the value of the error syndrome does not correspond to the values presented in the table, then an uncorrectable error has occurred (the signals at the decoder output have bullet values).

В этом случае, о наличии не корректируемой ошибки свидетельствует наличие единичного значения сигнала на выходе первого блока 10 элементов ИЛИ и отсутствие единичного значения сигнала на выходе второго элемента 11 ИЛИ.In this case, the presence of a non-correctable error is indicated by the presence of a single signal value at the output of the first block of 10 OR elements and the absence of a single signal value at the output of the second OR element 11.

Корректор 8 (блок 9 корректоров) предназначены для исправления корректируемой ошибки, путем сложения по mod2 одноименных разрядов блока информации имеющего ошибку с значением вектора ошибки.Corrector 8 (block 9 of correctors) are intended to correct a correctable error by adding mod2 of the same bits of the information block having an error with the value of the error vector.

Устройство работает следующим образом. Перед началом работы устройства на вход 15 "установки в нулевое состояние" подается единичный сигнал, который переводит устройство в нулевое состояние.The device operates as follows. Before starting the operation of the device, a single signal is input to the input 15 of the "zero state", which puts the device into a zero state.

При записи информации в узел 1 памяти, подаются единичные сигналы на вход 20 синхронизации, вход 16 записи, адресные входы 18 и информационные входы 19.When recording information in the memory node 1, single signals are supplied to the synchronization input 20, recording input 16, address inputs 18 and information inputs 19.

Входной блок 2 информации формирует значения контрольных разрядов по правилу:The input information block 2 generates the values of the control bits according to the rule:

Пример. Допустим, необходимо закодировать двоичный набор:Example. Let's say you need to encode a binary set:

Тогда первая часть и вторая часть контрольных разрядов, сформированных относительно полученного кодового набора, соответственно равны:Then the first part and the second part of the control bits formed relative to the received code set are respectively equal to:

При отсутствии ошибки, значение кодового набора записанного в узле 1 памяти равно считанному (переданному кодовому набору):If there is no error, the value of the code set recorded in the memory node 1 is equal to the read value (transmitted to the code set):

В этом случае на выходе блока 4 вычисления синдрома ошибки имеем нулевые значения сигналов.In this case, at the output of the error syndrome calculation unit 4, we have zero signal values.

Пусть, произошла одиночная ошибка в первом разряде третьего блока информации (А=0*01), тогда выходной блок 3 кодирования сформирует относительно полученного кодового набора значения контрольных разрядов:Suppose that a single error has occurred in the first bit of the third block of information (A = 0 * 01), then the output coding unit 3 will generate, relative to the received code set, the values of the control bits:

r=0, r=0, r=0, r=0, r=0, r=0, r=0, r=0.r 1P = 0, r 2P = 0, r 3P = 0, r 4P = 0, r 5P = 0, r 6P = 0, r 7P = 0, r 8P = 0.

В блоке 4 вычисления синдрома ошибки складываются, переданные контрольные разряды с контрольными разрядами, сформированными относительно полученного кодового набора, в результате получим синдром ошибки:In block 4, the calculations of the error syndrome are added, the transmitted control bits with the control bits formed relative to the received code set, as a result, we obtain the error syndrome:

В этом случае, первая часть синдрома оказывает на ошибочный разряд блока информации, вторая часть синдрома указывает ошибочный блок А (см. табл.1).In this case, the first part of the syndrome has an erroneous discharge of an information block, the second part of the syndrome indicates an erroneous block A (see Table 1).

Ha выходе дешифратора 7 появится единичное значение сигнала, которое открывает элементы И блока 7 коммутаторов, при этом значения вектора ошибки поступает на входы блока корректоров 9 где складывается по mod2 со значениями разрядов третьего блока информации:At the output of the decoder 7, a single signal value appears, which opens the AND elements of the switch block 7, while the values of the error vector are fed to the inputs of the corrector block 9 where it is added mod2 to the bits of the third block of information:

- скорректированное значение блока информации А. is the adjusted value of the information block A.

В результате имеем правильное значение информации.As a result, we have the correct value of the information.

Пусть, произошла одиночная ошибка в первом разряде первого блока информации, одиночная ошибка во втором разряде второго блока информации, двойная ошибка в первом и втором разрядах четвертого блока информации и тройная ошибка в восьмом блоке информации.Let there be a single error in the first bit of the first block of information, a single error in the second bit of the second block of information, a double error in the first and second bits of the fourth block of information and a triple error in the eighth block of information.

В этом случае, значения контрольных разрядов, сформированные выходным блоком 3 кодирования относительно полученного двоичного набора равны:In this case, the values of the control bits generated by the output coding unit 3 relative to the received binary set are:

Значение синдрома ошибки, полученные блоком 4 вычисления синдрома ошибки равно: S=111 10000.The value of the error syndrome obtained by block 4 of the calculation of the error syndrome is: S = 111 10000.

В этом случае, на выходе первого блока 10 элементов ИЛИ появится единичное значение сигнала, на всех выходах дешифратора 7 присутствует нулевое значение сигнала, по этому, на выходе второго блока 11 элементов ИЛИ так же имеем нулевое значение сигнала, а на выходе инвертора 12 единичное значение сигнала, которое открывает элемент 12 И с выхода которого снимается сигнал «ошибка».In this case, at the output of the first block of 10 OR elements, a single signal value appears, at all outputs of the decoder 7 there is a zero signal value, therefore, at the output of the second block 11 of OR elements, we also have a zero signal value, and at the output of the inverter 12 a single value signal, which opens the element 12 And the output of which is removed the signal "error".

Таким образом, в предлагаемом устройстве хранения информации корректируются одиночные ошибки в отдельном блоке информации и обнаруживаются байты ошибок, за исключением ошибок трансформируемых в корректируемые.Thus, in the proposed information storage device, single errors are corrected in a separate information unit and error bytes are detected, with the exception of errors that are transformed into correctable.

ИСТОЧНИКИ ИНФОРМАЦИИINFORMATION SOURCES

1. Щербаков Н.C. Достоверность работы цифровых устройств. М: Машиностроение, 1989, с.82, рис.39., 224 с.1. Scherbakov N.C. The reliability of digital devices. M: Mechanical Engineering, 1989, p. 82, fig. 39., 224 p.

2. Щербаков Н.C. Достоверность работы цифровых устройств. М: Машиностроение, 1989, с.122, рис.45., 224 с.2. Scherbakov N.C. The reliability of digital devices. M: Mechanical Engineering, 1989, p. 122, fig. 45., 224 p.

Приложение к заявке на полезную модель: «Устройство хранения и передачи данных с исправлением ошибок в байте информации и обнаружением ошибок в байтах информации»Appendix to the application for a utility model: “A device for storing and transmitting data with error correction in an information byte and error detection in information bytes”

1. Введение и постановка задачи1. Introduction and statement of the problem

Во многих случаях для обнаружения и исправления ошибок используются коды с обнаружением и исправлением байтов ошибок (в этом случае, под байтом ошибок понимаются ошибки, кратность которых не превышает число разрядов b блока информации).In many cases, codes for detecting and correcting errors are used with the detection and correction of error bytes (in this case, the error byte means errors whose multiplicity does not exceed the number of bits b of the information block).

К таким кодам следует отнести коды [1]:These codes include codes [1]:

- исправляющие одиночные ошибки и обнаруживающие одиночные байты ошибок;- correcting single errors and detecting single bytes of errors;

- коды, исправляющие одиночные ошибки, обнаруживающие двойные независимые ошибки и обнаруживающие одиночные байты ошибок;- codes correcting single errors, detecting double independent errors and detecting single bytes of errors;

- коды, исправляющие одиночные байты ошибок;- codes correcting single error bytes;

- коды исправляющие одиночные и обнаруживающие двойные байты ошибок.- codes correcting single and detecting double bytes of errors.

Широкое распространение получили коды Рида-Соломона, обладающие циклическими свойствами и имеющие наибольшую обнаруживающую и корректирующую способность.Reed-Solomon codes are widely used, having cyclic properties and having the highest detecting and correcting ability.

Код Рида-Соломона (PC) - это блочный код (w, N), позволяющий обнаруживать и исправлять ошибки в байтах. Входным словом для него является блок из w байтов, выходным - кодовое слово из N байтов, состоящее из w исходных и N-w проверочных байтов. При этом гарантировано, что при декодировании в кодовом слове будут обнаружены и исправлены t=(N-w)/2 байтов независимо от их расположения внутри кодового слова. Кодирующее устройство PC реализуется на основе регистра сдвига с 2t байтовыми элементами памяти и обратными связями. Процесс кодирования и декодирования сводится к операциям сложения и умножения по модулю.Reed-Solomon code (PC) is a block code (w, N) that allows the detection and correction of errors in bytes. The input word for it is a block of w bytes, the output is a code word of N bytes, consisting of w source and N-w test bytes. It is guaranteed that during decoding, t = (N-w) / 2 bytes will be detected and corrected in the codeword, regardless of their location inside the codeword. PC encoder is implemented based on a shift register with 2t byte memory elements and feedbacks. The process of encoding and decoding is reduced to the operations of addition and multiplication modulo.

Использование данных кодов связано с большими временными затратами, что является существенным недостатком при их использовании для систем работающих в реальном масштабе времени, по этому существует необходимость в разработке более простой линейной процедуры построения корректирующих кодов, решающих данную задачу.The use of these codes is associated with large time costs, which is a significant drawback when using them for systems operating in real time, therefore there is a need to develop a simpler linear procedure for constructing corrective codes that solve this problem.

2. Разработка линейного корректирующего кода с исправлением одиночных ошибок в байте информации и обнаружением ошибок в байтах информации2. Development of a linear correcting code with the correction of single errors in an information byte and the detection of errors in information bytes

Предлагается метод построения корректирующего кода, исправляющего одиночные и обнаруживающего двойные байты ошибок, реализующий линейную процедуру построения корректирующего кода с синдромным декодированием.A method for constructing a correcting code that corrects single and detecting double bytes of errors is proposed that implements a linear procedure for constructing a corrective code with syndromic decoding.

Для получения кодового расстояния, позволяющего обеспечить исправление одиночных и обнаружение двойные байтов ошибок, используем 2b контрольных разрядов (оптимальное число контрольных разрядов для кодов Рида-Соломона, решающих данную задачу), в которых реализуется сложение по mod2 одноименных разрядов блоков (байтов) информации.To obtain a code distance that allows for the correction of single bytes and the detection of double bytes of errors, we use 2b control bits (the optimal number of control bits for Reed-Solomon codes that solve this problem), which implement mod2 addition of the same bits of blocks (bytes) of information.

В результате поучим кодовый набор;As a result, we will teach a code set;

Значение контрольных разрядов , позволяют сформировать значение синдрома ошибки при этом, первая часть контрольных разрядов определяет вектор ошибки (ошибочные разряды в блоке информации), а значение второй части контрольных разрядов предназначено для определения номер ошибочного блока (байта) информации.The value of the control bits , allow to form the value of the error syndrome in this case, the first part of the control bits determines the error vector (erroneous bits in the information block), and the value of the second part of the control bits is intended to determine the number of an erroneous block (byte) of information.

В этом случае число байтов информации определяется по формуле:In this case, the number of bytes of information is determined by the formula:

w=2b w = 2 b

В связи с этим, возникает необходимость формирования совокупности проверок (разработки правила кодирования информации), позволяющих определить блок информации, содержащий ошибку.In this regard, there is a need to form a set of checks (develop a rule for encoding information), which allows to determine a block of information containing an error.

С этой целью, для каждого блока информации выберем свою совокупность проверок обнаруживающих ошибку, используя матрицу кодирования размерностиFor this purpose, for each block of information, we choose our own set of checks that detect an error using the dimension coding matrix

b×b.b × b.

Для первого блока информации матрица кодирования имеет вид:For the first block of information, the encoding matrix has the form:

или or

В этом случае, для первого блока информации значения контрольных разрядов соответственно равны .In this case, for the first block of information, the values of the control bits are respectively equal .

Для второго и третьего информационных блоков, матрицы кодирования имеет вид соответственно:For the second and third information blocks, the encoding matrix has the form, respectively:

или or

или or

Не трудно заметить, что очередная матрица кодирования получается в результате циклической замены строк матрицы кодирования.It is not difficult to notice that the next coding matrix is obtained by cyclically replacing the rows of the coding matrix.

В результате получаем b исходных матриц кодирования, содержащих в своих строках по одной единице.As a result, we get b source coding matrices containing one unit in their rows.

Для информационных блоков, начиная с b+1 блока, матрицы кодирования включают различные сочетания двух единиц в блоке информации:For information blocks, starting with b + 1 block, coding matrices include various combinations of two units in the information block:

Значения контрольных разрядов формируются сложением по mod2 элементов столбцов, соответствующих единичным значениям.The values of the control bits are formed by adding mod2 column elements corresponding to unit values.

Так, например, если первый столбец больше не содержит единиц, то значение первого контрольного разряда равно: .So, for example, if the first column no longer contains units, then the value of the first control bit is: .

Каждая очередная матрица кодирования для блоков информации, начиная с b+2 блока по С2b - блок информации получается циклической заменой строк матрицы по аналогии с матрицей, содержащей в своих строках по одной единице.Each successive coding matrix for blocks of information, starting with b + 2 blocks in C 2 b - the block of information is obtained by cyclic replacement of the rows of the matrix by analogy with a matrix containing one unit in its rows.

Аналогичным образом строятся матрицы кодирования, содержащие в своих строках различные сочетания из трех единиц и.т.д.Similarly, coding matrices are constructed that contain in their rows various combinations of three units, etc.

Окончательно имеем матрицу кодирования, каждый элемент которой содержит единицу. Построим так же, дополнительную матрицу кодирования, каждый элемент которой содержит нули.Finally, we have a coding matrix, each element of which contains a unit. We also construct an additional coding matrix, each element of which contains zeros.

Полученные таким образом значения контрольных разрядов позволяют построить код, корректирующий одиночные ошибки и обнаруживать ошибки большей кратности.The values of the control bits obtained in this way allow one to construct a code that corrects single errors and to detect errors of higher multiplicity.

Объединяя по модулю по mod2 одноименные контрольные проверки для всех блоков информации, получим значения контрольных разрядов для второй части контрольных разрядов кодового набора.Combining modulo mod2 modulo control checks of the same name for all blocks of information, we obtain the values of the control bits for the second part of the control bits of the code set.

Таким образом, кодовый набор передается в виде:Thus, the code set is transmitted in the form:

Результат сложения по mod2 переданных значений контрольных разрядов и контрольных разрядов сформированных относительно полученных информационных разрядов даст значение синдрома ошибки, включающего две части:The result of mod2 addition of the transmitted values of the control bits and control bits formed relative to the received information bits will give the value of the error syndrome, which includes two parts:

Значение синдрома ошибки Sf определяет вектор ошибки (ошибочные разряды в блоке информации), а значение синдрома ошибки Sg определяет номер ошибочного блока (байта) информации.The value of the error syndrome S f determines the error vector (erroneous bits in the information block), and the value of the error syndrome S g determines the number of the error information block (byte).

Стратегия декодирования заключается на следующих положениях:The decoding strategy is based on the following provisions:

1. Sf=0; Sg=0. Ошибок нет.1. S f = 0; S g = 0. There are no errors.

2. Sf=0; Sg≠0. Произошла ошибка в контрольных разрядах или не корректируемая ошибка в байтах информации.2. S f = 0; S g ≠ 0. An error has occurred in the check digits or an uncorrectable error in the bytes of information.

3. Sf≠0; Sg≠0 (Sg=0). Произошла ошибка в информационных байтах (в одном байте - корректируемая, в двух - обнаруживаемая).3. S f ≠ 0; S g ≠ 0 (S g = 0). An error occurred in the information bytes (in one byte - correctable, in two - detectable).

Таким образом, разработанный код, при оптимальном числе контрольных разрядов обладает свойствами характерными для кодов Рида-Соломона и при этом позволяет:Thus, the developed code, with the optimal number of control bits, has the properties characteristic of Reed-Solomon codes and allows:

- использовать процедуру линейного кодирования;- use the linear coding procedure;

- повысить быстродействие кодирования и декодирования информации.- increase the speed of encoding and decoding information.

Пример: Допустим, имеем двадцати четырех разрядный двоичный набор, который разобьем на блоки информации по три разряда в каждом блоке:Example: Suppose we have twenty-four bit binary sets that we break into blocks of information of three bits in each block:

У=х1 х2 х3, z1 z2 z3, a1 а2 а3, c1 c2 c3, e1 е2 е3, f1 f2 f3, g1 g2 g3, h1 h2 h3.Y = x 1 x 2 x 3 , z 1 z 2 z 3 , a 1 a 2 a 3 , c 1 c 2 c 3 , e 1 e 2 e 3 , f 1 f 2 f 3 , g 1 g 2 g 3 , h 1 h 2 h 3 .

Построим исходные матрицы кодирования для каждого блока информации:We construct the source coding matrix for each block of information:

Складывая по mod2 элементы столбцов матриц, соответствующие единичным значениям, получим проверки, позволяющие получить значения контрольных разрядов для соответствующих блоков информации.Adding, according to mod2, the elements of the matrix columns corresponding to unit values, we obtain checks that allow us to obtain the values of the control bits for the corresponding blocks of information.

В результате значение второй части контрольных разрядов формируется проверками:As a result, the value of the second part of the control bits is formed by checks:

Полученные значения контрольных разрядов, совместно с значениями первой части контрольных разрядов, сформированных путем сложения одноименных информационных разрядов блоков информации, позволяют иметь корректирующий код, исправляющий одиночные ошибки в любом блоке информации и обнаруживать ошибки большей кратности.The obtained values of the control bits, together with the values of the first part of the control bits formed by adding the same information bits of information blocks, allow one to have a correction code that corrects single errors in any information block and to detect errors of higher multiplicity.

В результате имеем код (30,6) корректирующий одиночные ошибки и обнаруживающий ошибки большей кратности.As a result, we have a code (30.6) correcting single errors and detecting errors of higher multiplicity.

Анализ представленной таблицы показывает, что в случае возникновения одиночной ошибки, значения второй части синдромов для блоков информации различаются между собой, что позволяет корректировать данные ошибки.Analysis of the presented table shows that in the event of a single error, the values of the second part of the syndromes for information blocks differ from each other, which allows you to adjust these errors.

Таблица. 1Table. one Значения синдромов для кода (30,6), исправляющего одиночные ошибки.Syndrome values for code (30.6) correcting single errors. № п/пNo. p / p Безошибочный блок инфор-и 000Error-free block infor-000 Значение первой части контрольных разрядовThe value of the first part of the control bits Значения проверок второй части контрольных разрядовValues of checks of the second part of the control bits Ошибочный блок информацииIncorrect information block ХX ZZ AA CC EE FF GG HH 1one 100one hundred 100one hundred 100one hundred 010010 001001 011011 110110 101101 111111 000000 22 010010 010010 010010 001001 100one hundred 101101 011011 110110 111111 000000 33 001001 001001 001001 100one hundred 010010 110110 101101 011011 111111 000000 4four 110110 110110 110110 011011 101101 110110 101101 011011 000000 000000 55 101101 101101 101101 110110 011011 101101 011011 110110 000000 000000 66 011011 011011 011011 101101 110110 011011 110110 101101 000000 000000 111111 111111 111111 111111 111111 000000 000000 000000 111111 000000

При возникновении ошибок большей кратности или в нескольких информационных блока значения синдромов неразличимы, в этом случае ошибка обнаруживается.If errors of a greater multiplicity occur or in several information blocks, the values of the syndromes are indistinguishable, in this case an error is detected.

При этом, выделенные синдромы указывают на наличие не корректируемой ошибки, не выделенные синдромы, указывают блок информации, содержащий соответствующую одиночную корректируемую ошибку.At the same time, the selected syndromes indicate the presence of an uncorrectable error, the non-distinguished syndromes indicate an information block containing the corresponding single correctable error.

Пример. Допустим, необходимо закодировать двоичный набор:Example. Let's say you need to encode a binary set:

Подставляя, в полученные выражения формирования второй части контрольных разрядов, значения соответствующих разрядов двоичного набора получим:Substituting, into the obtained expressions, the formation of the second part of the control bits, the values of the corresponding bits of the binary set will receive:

Складывая, одноименные информационные разряды блоков информации, получим первую часть контрольных разрядов 101.Adding, the same information bits of information blocks, we get the first part of the control bits 101.

Таким образом, безошибочный кодовый набор передается в виде:Thus, an error-free code set is transmitted in the form:

Пусть, произошла одиночная ошибка в первом разряде третьего блока информации (А), тогда первая часть и вторая часть контрольных разрядов, сформированных относительно полученного кодового набора равны соответственно:Let there be a single error in the first bit of the third block of information (A), then the first part and second part of the control bits formed relative to the received code set are equal, respectively:

Складывая, переданные контрольные разряды с контрольными разрядами, сформированными относительно полученного кодового набора, получим синдром ошибки:Adding the transmitted control bits to the control bits formed relative to the received code set, we obtain the error syndrome:

В этом случае, первая часть синдрома оказывает на ошибочный разряд блока информации, вторая часть синдрома указывает ошибочный блок (см. табл. 1).In this case, the first part of the syndrome has an erroneous discharge of an information block, the second part of the syndrome indicates an erroneous block (see Table 1).

3. Разработка линейного корректирующего кода с исправлением ошибок в байте и обнаружением ошибок в произвольных байтах информации3. Development of a linear correction code with error correction in bytes and error detection in arbitrary bytes of information

Для коррекции ошибок в блоке информации кратности b, проведем модификацию полученных матриц () кодирования (за исключением матриц содержащих все единицы и все нули), для чего разобьем полученную совокупность матриц кодирования попарно и, в каждой паре изменим (инвертируем) по одному одноименному элементу.To correct errors in a block of information of multiplicity b, we modify the resulting coding matrices () (except for matrices containing all ones and all zeros), for which we divide the resulting set of coding matrices in pairs and, in each pair, change (invert) one element of the same name.

Например, попарно разобьем исходную совокупность матриц кодирования информации, на пары: XF; EZ; АС.For example, we split the initial set of information coding matrices in pairs into pairs: XF; Ez; AC.

В матрицах XF инвертируем элементы второго столбца третьей строки, в матрицах EZ инвертируем элементы третьего столбца третьей строки, в матрицах АС инвертируем элементы первого столбца третьей строки.In XF matrices, invert the elements of the second column of the third row, in EZ matrices we invert the elements of the third column of the third row, in AC matrices invert the elements of the first column of the third row.

В результате, получим совокупность модифицированных матриц кодирования информации:As a result, we get a set of modified information coding matrices:

Используя полученные матрицы, выпишем проверки для контрольных разрядов соответствующих блоков информации (складываются по mod2 элементы столбцов матриц имеющие единичные значения, при этом номер элемента соответствует номеру строки матрицы):Using the obtained matrices, we write out checks for the control bits of the corresponding information blocks (elements of matrix columns with unit values are added in mod2, and the element number corresponds to the row number of the matrix):

В результате значение второй части контрольных разрядов формируется проверками:As a result, the value of the second part of the control bits is formed by checks:

В табл.2 представлены соответствующие значения синдромов кода (30,6) для ошибок различной кратности.Table 2 shows the corresponding values of the code syndromes (30.6) for errors of various multiplicities.

Анализ таблицы показывает, что данный код может исправлять все одиночные и тройные ошибки в отдельном блоке информации и корректировать часть двойных ошибок.Analysis of the table shows that this code can correct all single and triple errors in a separate block of information and correct some of the double errors.

Таблица 2.Table 2. Значения синдромов ошибок ко/да (30,6) исправляющего кратные ошибки в блоке информации и обнаруживающего ошибки в двух блоках информации.The values of the c / da error syndromes (30.6) correcting multiple errors in the information block and detecting errors in two information blocks. № п/пNo. p / p Безошибочный блок инфор-и 000Error-free block infor-000 Значение первой части контрольных разрядовThe value of the first part of the control bits Значения проверок второй части контрольных разрядовValues of checks of the second part of the control bits Ошибочный блок информацииIncorrect information block ХX ZZ AA сfrom EE FF GG HH 1one 100one hundred 100one hundred 100one hundred 010010 001001 011011 110110 101101 111111 000000 22 010010 010010 010010 001001 100one hundred 101101 011011 110110 111111 000000 33 001001 001001 011011 101101 110110 010010 100one hundred 001001 111111 000000 4four 110110 110110 110110 011011 101101 110110 101101 011011 000000 000000 55 101101 101101 111111 111111 111111 001001 010010 100one hundred 000000 000000 66 011011 011011 001001 100one hundred 010010 111111 111111 111111 000000 000000 111111 111111 101101 110110 011011 100one hundred 001001 010010 111111 000000

Заметим, что использование исходных матриц для построения кода, корректирующего одиночные ошибки порождает 32 неразличимых синдрома ошибок (см. табл.1). При использовании, приведенных выше, модифицированных матриц для построения кода, корректирующего одиночные байты ошибок и обнаруживающего ошибки в двух байтах, имеем 18 неразличимых синдрома ошибок.Note that the use of source matrices for constructing a code correcting single errors generates 32 indistinguishable error syndromes (see Table 1). Using the above modified matrices to build code that corrects single bytes of errors and detects errors in two bytes, we have 18 indistinguishable error syndromes.

Если, изменить порядок построения модифицированных матриц кодирования информации, например, попарно объединить исходные матрицы на ХЕ, FZ, АС и матрицах ХЕ инвертировать элементы первого столбца третьей строки, в матрицах FZ инвертировать элементы третьего столбца третьей строки, в матрице А инвертировать элемент второго столбца первой строки, а в матрице С инвертировать элемент второго столбца третьей строки, то получим 26 неразличимых синдромов ошибок.If you change the construction order of the modified information coding matrices, for example, combine the source matrices on XE, FZ, AC and XE matrices in pairs, invert the elements of the first column of the third row, in the FZ matrices invert the elements of the third column of the third row, in the matrix A invert the element of the second column of the first rows, and in the matrix C invert the element of the second column of the third row, we get 26 indistinguishable error syndromes.

В связи с этим, при построении корректирующего кода необходимо обеспечить рациональный выбор построения модифицированных матриц, обеспечивающих требуемый уровень обнаружения и исправления ошибок.In this regard, when constructing a correcting code, it is necessary to provide a rational choice for constructing modified matrices that provide the required level of error detection and correction.

Для повышения корректирующей способности кода, необходимо ввести дополнительные проверки (контрольные разряды).To increase the corrective ability of the code, it is necessary to introduce additional checks (control bits).

Так, например, для рассматриваемого примера потребуется два дополнительных контрольных разряда r4i, r5i:So, for example, for the considered example, two additional control bits r 4 i , r 5 i are required:

В табл.3 представлены значения синдромов ошибок кода (30,8), исправляющего кратные ошибки в блоке информации и обнаруживающего ошибки в произвольных блоках информации.Table 3 shows the values of the code error syndromes (30.8), which corrects multiple errors in the information block and detects errors in arbitrary information blocks.

Таблица 3Table 3 Значения синдромов ошибок кода (30,8) исправляющего байты ошибок в блоке информации и обнаруживающего в произвольных блоках информации.The values of the error syndromes of the code (30.8) correcting error bytes in the information block and detecting in arbitrary information blocks. № п/пNo. p / p Безошибочный блок инфор-и 000Error-free block infor-000 Значение первой части контрольных разрядовThe value of the first part of the control bits Значения проверок второй части контрольных разрядовValues of checks of the second part of the control bits Ошибочны и блок информацииIncorrect and block information ХX ZZ AA CC ЕE FF GG НN 1one 100one hundred 100one hundred 1000110001 0100001000 0011000110 0110001100 1101011010 1010010100 1111011110 0000000000 22 010010 010010 0100101001 0010100101 1000110001 1011110111 0110001100 1101111011 1110111101 0000000000 33 001001 001001 01110111 1011010110 1101111011 0100101001 1000110001 0010100101 1110111101 0000000000 4four 110110 110110 1100011000 0110101101 1011110111 1101011010 1011010110 0111101111 0001000010 0000000000 55 101101 101101 1111111111 1111011110 1110111101 0010100101 0101101011 1000110001 0000100001 0000000000 66 011011 011011 0011000110 1001110011 0101001010 1111111111 1110111101 1111011110 0001000010 0000000000 111111 111111 1011010110 1101111011 0110001100 1001110011 0011100111 0101001010 1111011110 0000000000

Введение дополнительных проверок существенно повышает обнаруживающие способности кода. Так, например, при возникновении одиночной ошибки в первом разряде блока информации X, одиночной ошибки во втором разряде блока Z, двойной ошибки в первом и втором разряде блока S, тройной ошибки в блоке G получим значение синдрома ошибки S=111 10000, характеризующего наличие некорректируемой ошибки.The introduction of additional checks significantly increases the detecting ability of the code. So, for example, when a single error occurs in the first bit of the information block X, a single error in the second bit of the Z block, a double error in the first and second bit of the S block, a triple error in the G block, we obtain the value of the error syndrome S = 111 10000, which characterizes the presence of an uncorrectable mistakes.

При необходимости, полученный код допускает минимизацию контрольных разрядов, так удаляя первый контрольный разряд второй части контрольных разрядов r1g получим корректирующий код (30,7), корректирующий ошибки в байте информации и обнаруживающий ошибки в двух блоках информации (см. таюл.4).If necessary, the obtained code allows minimizing the control bits, thus removing the first control bit of the second part of the control bits r 1 g we obtain a correction code (30.7) that corrects errors in the information byte and detects errors in two information blocks (see section 4) .

Таблица 4Table 4 Значения синдромов ошибок кода (30,7) исправляющего байты ошибок в блоке информации и обнаруживающего ошибки в двух блоках информации.The values of the error syndromes of the code (30.7) correcting bytes of errors in the information block and detecting errors in two information blocks. № п/пNo. p / p Безошибочный блок инфор-и 000Error-free block infor-000 Значение первой части контрольных разрядовThe value of the first part of the control bits Значения проверок второй части контрольных разрядовValues of checks of the second part of the control bits Ошибочны и блок информацииIncorrect and block information ХX ZZ АBUT сfrom ЕE FF GG НN 1one 100one hundred 100one hundred 00010001 10001000 01100110 11001100 10101010 01000100 11101110 00000000 22 010010 010010 10011001 01010101 00010001 01110111 11001100 10111011 11011101 00000000 33 001001 001001 11101110 01100110 10111011 10011001 00010001 01010101 11011101 00000000 4four 110110 110110 10001000 11011101 01110111 10101010 01100110 11111111 00100010 00000000 55 101101 101101 11111111 11101110 11011101 01010101 10111011 00010001 00010001 00000000 66 011011 011011 01100110 00110011 10101010 11111111 11011101 11101110 00100010 00000000 111111 111111 01100110 10111011 11001100 00110011 01110111 10101010 11101110 00000000

Таким образом, предлагаемый метод построения корректирующих кодов, обнаруживающих и корректирующих ошибки в байтах информации, позволяет исключить процедуру деления и умножения, необходимую при использовании циклических кодов и заменить ее на линейную, повысить быстродействие кодирования и декодирования информации, обеспечить требуемый уровень обнаружения и коррекции ошибок.Thus, the proposed method for constructing corrective codes that detect and correct errors in information bytes allows us to exclude the division and multiplication procedure necessary when using cyclic codes and replace it with a linear one, increase the speed of encoding and decoding information, and provide the required level of error detection and correction.

Литература:Literature:

1. Щербаков Н.С. Достоверность работы цифровых устройств. М: Машиностроение, 1989, с.122, рис.45., 224 с.1. Scherbakov N.S. The reliability of digital devices. M: Mechanical Engineering, 1989, p. 122, fig. 45., 224 p.

Claims (1)

Устройство хранения и передачи данных с исправлением ошибок в байте информации и обнаружением ошибок в байтах информации, содержащие узел памяти, входной блок кодирования, выходной блок кодирования, блок вычисления синдрома ошибки, дешифратор, коммутатор, блок коммутаторов, корректор, блок корректоров, отличающееся тем, что оно дополнительно содержит первый блок элементов ИЛИ, второй блок элементов ИЛИ, инвертор, элемент И, блок элементов И, вход установки устройства в нулевое состояние, вход записи, вход считывания, адресные входы, двадцатичетырехразрядные информационные входы, вход синхронизации, информационные выходы, выход сигнала «ошибка», вход установки в нулевое состояние, вход записи, вход считывания, адресные входы, подключены соответственно к первому, второму, третьему и четвертому входам узла памяти, вход синхронизации подключен к пятому входу узла памяти и к первому входу блока элементов И, информационные входы подключены к шестым входам узла памяти и к входам входного блока кодирования, который формирует значения контрольных разрядов r1, r2, r3, r4, r5, r6, r7, r8 путем сложения по модулю 2 информационных символов x1, x2, x3, z1, z2, z3, a1, а2, а3, c1, c2, c3, e1 е2 е3, f1 f2 f3, g1 g2 g3, h1 h2 h3, поступающих на входы входного блока кодирования, в соответствии с правилом: r1=x1⊕z1 ⊕а1 ⊕c1 ⊕e1⊕fi ⊕g1⊕h1; r2=x2⊕z2 ⊕а2 ⊕c2⊕e2⊕f2 ⊕g2⊕h2; r33⊕z3⊕а3⊕с3⊕е3⊕f3⊕g3⊕h3; r4=x1⊕ z3⊕ а2⊕ а3⊕ с2⊕ e1⊕ е3⊕ f1⊕ f2⊕ g1⊕ g2⊕ g3; r5=x2⊕ x3⊕ z1⊕ а3⊕ c1⊕ с3⊕ е1⊕ е2⊕ f2⊕ g1⊕ g2⊕ g3; r6=x3⊕ z2⊕ z3⊕ a1⊕ c1⊕ c2⊕ e2⊕ f1⊕ f3⊕ g1⊕ g2⊕ g3; r7=x3⊕ z3⊕ а1⊕ а3⊕ c2⊕ e1⊕ f2⊕ g1⊕ g2⊕ g3; r8=x1⊕ x2⊕ z2⊕ a2⊕ а3⊕ c3⊕ е3⊕ f2⊕ f3⊕ g1⊕ g2⊕ g3, которые поступают на седьмые входы узла памяти, информационные выходы узла памяти подключены соответственно к первым входам корректора, блока корректоров и к входам выходного блока кодирования, который формирует значения проверочных контрольных разрядов r, r, r, r, r, r r r путем сложения по модулю 2 информационных символов х х х, z z z, a a a, c c c, e e e, f f f, g g g, h h h, поступающих на входы входного блока кодирования с информационных выходов узла памяти, в соответствии с правилом: r⊕z, ⊕а ⊕с ⊕e⊕f ⊕g⊕h; r⊕z ⊕а ⊕с⊕e⊕f ⊕g⊕h; r⊕z⊕а⊕с⊕e⊕f⊕g⊕h; r⊕ z⊕ а⊕ а⊕ с⊕ e⊕ е⊕ f⊕ f⊕g⊕ g; r⊕ х⊕ z⊕ a⊕ с⊕ с⊕е⊕е⊕ f⊕g⊕ g⊕ g; r=x⊕ z⊕ z⊕ а⊕ с⊕ C⊕ e⊕ f⊕ f⊕g⊕ g⊕ g; r⊕ z⊕ а⊕ а⊕ с⊕ е⊕ f⊕g⊕ g⊕ g; r⊕ х⊕ z⊕ а⊕ а⊕ с⊕ е⊕ f⊕f ⊕g⊕ g⊕ g, выходы выходного блока кодирования подключены к первым входам блока вычисления синдрома ошибки к вторым входам которого подключены выходы контрольных разрядов узла памяти, первые выходы блока вычисления синдрома ошибки подключены к первым входам дешифратора, к первым входам коммутатора, к входам первого блока элементов ИЛИ и к первым входам блока коммутаторов, вторые выходы блока вычисления синдрома ошибки подключены к вторым входам дешифратора и к вторым входам первого блока элементов ИЛИ, выходы дешифратора подключены к входам второго блока элементов ИЛИ, при этом первый выход дешифратора подключен к второму входу коммутатора, а вторые выходы подключены к вторым входам блока коммутаторов, выход второго блока элементов ИЛИ через инвертор подключен к первому входу элемента И, второй вход которого подключен к выходу первого блока элементов ИЛИ, выход элемента И является выходом сигнала «ошибка», выходы коммутатора подключены к вторым входам корректора, выходы блока коммутаторов подключены к вторым входам блока корректоров, выходы корректора и блока корректоров подключены к вторым входам блока элементов И, выходы которого являются информационными выходами устройства.
Figure 00000001
A device for storing and transmitting data with error correction in an information byte and error detection in information bytes containing a memory node, an input coding unit, an output coding unit, an error syndrome calculation unit, a decoder, a switch, a switch unit, a corrector, a corrector block, characterized in that it additionally contains a first block of OR elements, a second block of OR elements, an inverter, an AND element, a block of AND elements, an input for setting the device to zero, a write input, a read input, address inputs, twenty four-digit information inputs, synchronization input, information outputs, error output, zero input, write input, read input, address inputs are connected respectively to the first, second, third and fourth inputs of the memory node, the synchronization input is connected to the fifth the input of the memory node and to the first input of the block of AND elements, information inputs are connected to the sixth inputs of the memory node and to the inputs of the input coding block, which generates the values of the control bits r 1 , r 2 , r 3 , r 4 , r 5 , r 6 , r 7 , r 8 by adding modulo 2 information symbols x 1 , x 2 , x 3 , z 1 , z 2 , z 3 , a 1 , and 2 , a 3 , c 1 , c 2 , c 3 , e 1 e 2 e 3 , f 1 f 2 f 3 , g 1 g 2 g 3 , h 1 h 2 h 3 , received at the inputs of the input coding unit, in accordance with the rule: r 1 = x 1 ⊕z 1 ⊕ а 1 ⊕c 1 ⊕ e 1 ⊕f i ⊕g 1 ⊕h 1 ; r 2 = x 2 ⊕z 2 ⊕a 2 ⊕c 2 ⊕e 2 ⊕f 2 ⊕g 2 ⊕h 2 ; r 3 = x 3 ⊕z 3 ⊕а 3 ⊕с 3 ⊕е 3 ⊕f 3 ⊕g 3 ⊕h 3 ; r 4 = x 1 ⊕ z 3 ⊕ a 2 ⊕ a 3 ⊕ s 2 ⊕ e 1 ⊕ e 3 ⊕ f 1 ⊕ f 2 ⊕ g 1 ⊕ g 2 ⊕ g 3 ; r 5 = x 2 ⊕ x 3 ⊕ z 1 ⊕ a 3 ⊕ c 1 ⊕ s 3 ⊕ e 1 ⊕ e 2 ⊕ f 2 ⊕ g 1 ⊕ g 2 ⊕ g 3 ; r 6 = x 3 ⊕ z 2 ⊕ z 3 ⊕ a 1 ⊕ c 1 ⊕ c 2 ⊕ e 2 ⊕ f 1 ⊕ f 3 ⊕ g 1 ⊕ g 2 ⊕ g 3 ; r 7 = x 3 ⊕ z 3 ⊕ a 1 ⊕ a 3 ⊕ c 2 ⊕ e 1 ⊕ f 2 ⊕ g 1 ⊕ g 2 ⊕ g 3 ; r 8 = x 1 ⊕ x 2 ⊕ z 2 ⊕ a 2 ⊕ a 3 ⊕ c 3 ⊕ e 3 ⊕ f 2 ⊕ f 3 ⊕ g 1 ⊕ g 2 ⊕ g 3 that go to the seventh inputs of the memory node, information outputs of the node memory are connected respectively to the first inputs of the corrector, the corrector block and the inputs of the output coding block, which generates the values of the test check bits r 1P , r 2P , r 3P , r 4P , r 5P , r 6P r 7P r 8P by modulo 2 information characters x 1P x 2P x 3P , z 1P z 2P z 3P , a 1P a 2P a 3P , c 1P c 2P c 3P , e 1P e 2P e 3P , f 1P f 2P f 3P , g 1P g 2P g 3P , h h 1P 2P 3P h arriving on the input coding unit inputs the information onnyh memory unit outputs, in accordance with the rule: r = x 1P 1P 1P ⊕z, ⊕a ⊕s 1P 1P 1P ⊕e ⊕f ⊕g 1P 1P 1P ⊕h; r 2P = x 2P ⊕z 2P ⊕a 2P ⊕s 2P ⊕e 2P ⊕f 2P ⊕g 2P ⊕h 2P ; r 3P = x 3P ⊕z 3P ⊕a 3P ⊕s 3P ⊕e 3P ⊕f 3P ⊕g 3P ⊕h 3P ; r 4P = x 1P ⊕ z 3P ⊕ a 2P ⊕ a 3P ⊕ s 2P ⊕ e 1P ⊕ e 3P ⊕ f 1P ⊕ f 2P ⊕g 1P ⊕ g 3P ; r 5P = x 2P ⊕ x 3P ⊕ z 1P ⊕ a 3P ⊕ s 1P ⊕ s 3P ⊕e 1P ⊕e 2P ⊕ f 2P ⊕g 1P ⊕ g 2P ⊕ g 3P ; r 6P = x 3P ⊕ z 2P ⊕ z 3P ⊕ a 1P ⊕ s 1P ⊕ C 2P ⊕ e 2P ⊕ f 1P ⊕ f 3P ⊕g 1P ⊕ g 2P ⊕ g 3P ; r 7P = x 3P ⊕ z 3P ⊕ a 1P ⊕ a 3P ⊕ s 2P ⊕ e 1P ⊕ f 2P ⊕g 1P ⊕ g 2P ⊕ g 3P ; r 8P = x 1P ⊕ x 2P ⊕ z 2P ⊕ a 2P ⊕ a 3P ⊕ s 3P ⊕ e 3P ⊕ f 2P ⊕f 3P ⊕g 1P ⊕ g 2P ⊕ g 3P , the outputs of the output coding unit are connected to the first inputs of the syndrome calculation unit errors to the second inputs of which the outputs of the control bits of the memory node are connected, the first outputs of the error syndrome calculation unit are connected to the first inputs of the decoder, to the first inputs of the switch, to the inputs of the first block of OR elements and to the first inputs of the switch block, the second outputs of the error syndrome calculation unit are connected to the second inputs of the decoder and to the second inputs ne of the first block of OR elements, the outputs of the decoder are connected to the inputs of the second block of OR elements, the first output of the decoder is connected to the second input of the switch, the second outputs are connected to the second inputs of the block of switches, the output of the second block of OR elements through the inverter is connected to the first input of the AND element, the second input of which is connected to the output of the first block of OR elements, the output of the AND element is the output of the "error" signal, the outputs of the switch are connected to the second inputs of the corrector, the outputs of the block of switches are connected to the second correctors inputs, outputs, and corrector correctors block unit are connected to second inputs of the AND block whose outputs are information device outputs.
Figure 00000001
RU2011114400/08U 2011-04-14 2011-04-14 DEVICE FOR STORAGE AND TRANSFER OF DATA WITH CORRECTION OF ERRORS IN THE BYTE OF INFORMATION AND DETECTION OF ERRORS IN THE BYtes OF INFORMATION RU106771U1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2011114400/08U RU106771U1 (en) 2011-04-14 2011-04-14 DEVICE FOR STORAGE AND TRANSFER OF DATA WITH CORRECTION OF ERRORS IN THE BYTE OF INFORMATION AND DETECTION OF ERRORS IN THE BYtes OF INFORMATION

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2011114400/08U RU106771U1 (en) 2011-04-14 2011-04-14 DEVICE FOR STORAGE AND TRANSFER OF DATA WITH CORRECTION OF ERRORS IN THE BYTE OF INFORMATION AND DETECTION OF ERRORS IN THE BYtes OF INFORMATION

Publications (1)

Publication Number Publication Date
RU106771U1 true RU106771U1 (en) 2011-07-20

Family

ID=44753029

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2011114400/08U RU106771U1 (en) 2011-04-14 2011-04-14 DEVICE FOR STORAGE AND TRANSFER OF DATA WITH CORRECTION OF ERRORS IN THE BYTE OF INFORMATION AND DETECTION OF ERRORS IN THE BYtes OF INFORMATION

Country Status (1)

Country Link
RU (1) RU106771U1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2618388C1 (en) * 2015-12-09 2017-05-03 Межрегиональное общественное учреждение "Институт инженерной физики" Controlled device for storage and transmission of information
US10387301B2 (en) 2012-06-01 2019-08-20 European Molecular Biology Laboratory High-capacity storage of digital information in DNA

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10387301B2 (en) 2012-06-01 2019-08-20 European Molecular Biology Laboratory High-capacity storage of digital information in DNA
US11892945B2 (en) 2012-06-01 2024-02-06 European Molecular Biology Laboratory High-capacity storage of digital information in DNA
RU2618388C1 (en) * 2015-12-09 2017-05-03 Межрегиональное общественное учреждение "Институт инженерной физики" Controlled device for storage and transmission of information

Similar Documents

Publication Publication Date Title
US4402045A (en) Multi-processor computer system
US4486882A (en) System for transmitting binary data via a plurality of channels by means of a convolutional code
RU2448359C1 (en) Apparatus for storing and transmitting data with error correction in data byte and error detection in data bytes
EP0220876A2 (en) Self-checking error-correcting encoder/decoder
US5856987A (en) Encoder and decoder for an SEC-DED-S4ED rotational code
US20150007001A1 (en) Apparatus and method for error correction and error detection
US20050188292A1 (en) Method and apparatus for encoding special uncorrectable errors in an error correction code
JP2011514743A (en) Method and system for detecting and correcting phased burst errors, erasures, symbol errors, and bit errors in received symbol sequences
US3745528A (en) Error correction for two tracks in a multitrack system
US20050149834A1 (en) (18, 9) Error correction code for double error correction and triple error detection
JPS6349245B2 (en)
RU164633U1 (en) STORAGE AND TRANSMISSION DEVICE WITH ERROR DETECTION
RU106771U1 (en) DEVICE FOR STORAGE AND TRANSFER OF DATA WITH CORRECTION OF ERRORS IN THE BYTE OF INFORMATION AND DETECTION OF ERRORS IN THE BYtes OF INFORMATION
RU2450331C1 (en) Apparatus for storing and transmitting data with single error correction in data byte and arbitrary error detection in data bytes
USRE28923E (en) Error correction for two bytes in each code word in a multi-code word system
RU107606U1 (en) STORAGE AND TRANSMISSION DEVICE WITH SINGLE ERROR CORRECTION IN THE BYTE OF INFORMATION AND DETECTION OF ARRIVAL ERRORS IN THE BYTE OF INFORMATION
GB1274706A (en) Correction of block errors in transmission of data
RU2450332C1 (en) Information storage device with single and double error detection
RU2542665C1 (en) Device of data storage and transmission with detection and correction of errors in information bytes
US4868829A (en) Apparatus useful for correction of single bit errors in the transmission of data
Rubinoff n-dimensional codes for detecting and correcting multiple errors0
RU2637426C1 (en) Device for storing and transmitting data with error detection
RU2816550C1 (en) Information storage and reading device with single error correction
RU147518U1 (en) STORAGE AND TRANSMISSION DEVICE FOR DETECTION AND CORRECTION OF ERRORS IN INFORMATION BYtes
RU169207U1 (en) ERROR DATA STORAGE AND TRANSMISSION DEVICE

Legal Events

Date Code Title Description
MM1K Utility model has become invalid (non-payment of fees)

Effective date: 20150415