RU2054224C1 - Error-correcting decoder - Google Patents

Error-correcting decoder Download PDF

Info

Publication number
RU2054224C1
RU2054224C1 RU93049111A RU93049111A RU2054224C1 RU 2054224 C1 RU2054224 C1 RU 2054224C1 RU 93049111 A RU93049111 A RU 93049111A RU 93049111 A RU93049111 A RU 93049111A RU 2054224 C1 RU2054224 C1 RU 2054224C1
Authority
RU
Russia
Prior art keywords
outputs
inputs
block
groups
output
Prior art date
Application number
RU93049111A
Other languages
Russian (ru)
Other versions
RU93049111A (en
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 RU93049111A priority Critical patent/RU2054224C1/en
Application granted granted Critical
Publication of RU2054224C1 publication Critical patent/RU2054224C1/en
Publication of RU93049111A publication Critical patent/RU93049111A/en

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Abstract

FIELD: computer engineering. SUBSTANCE: decoder has buffer storage unit 1, syndrome shaper 2, correction calculator 3, mode selector unit 4, locator generator 5, and adding unit 6. Biconditional implication units 8 and 9, adding unit 7, OR gate 10, and synchronizer 11 are introduced in decoder which ensures correction of one or two errors in code word or declines decoding in case of greater number of errors or no solution is found for selected generating polynomial over Galois field. EFFECT: improved speed of response, simplified design of decoders used in communication systems. 4 cl, 9 dwg, 4 tbl

Description

Изобретение относится к вычислительной технике и может быть использовано в системах связи, в которых применяются коды, исправляющие ошибки, в частности коды Рида-Соломона (РС). The invention relates to computer technology and can be used in communication systems that use error correction codes, in particular Reed-Solomon (RS) codes.

Известен декодер линейного кода, содержащий блок буферной памяти, вычислитель синдрома, блок суммирования, арифметический блок, блок памяти многочлена, вычислитель степени многочлена, счетчик ошибок, блок сравнения, блок маскировки и бок управления [1] Недостатком этого устройства является большой объем вычислений, требующий сложной схемотехники и значительного времени. A known linear code decoder containing a buffer memory unit, a syndrome calculator, a summation block, an arithmetic block, a polynomial memory block, a polynomial degree calculator, an error counter, a comparison block, a masking unit and a control side [1] The disadvantage of this device is the large amount of computation that requires complex circuitry and significant time.

Наиболее близким к предлагаемому изобретению является устройство для декодирования кода РС, содержащее блок буферной памяти, информационные входы которого объединены с одноименными входами формирователя синдромов и являются информационными входами устройства, вычислитель поправок, первая группа выходов которого и выходы блока буферной памяти соединены соответственно с второй и первой группами информационных входов первого блока суммирования, блок выбора режима и генератор локаторов [2] Недостатком этого устройства является его невысокое быстродействие, а также сложность, что обусловлено большим объемом потребных вычислений. Closest to the proposed invention is a device for decoding a PC code, comprising a buffer memory unit, the information inputs of which are combined with the inputs of the syndrome generator of the same name and are information inputs of the device, a corrector, the first group of outputs of which and the outputs of the buffer memory unit are connected respectively to the second and first groups of information inputs of the first summing unit, mode selection unit and locator generator [2] The disadvantage of this device is its lack high speed, as well as complexity, due to the large amount of computation required.

Для повышения быстродействия и снижения сложности в декодер с исправлением ошибок, содержащий блок буферной памяти, информационные входы которого объединены с одноименными входами формирователя синдромов и являются информационными входами декодера, вычислитель поправок, первая группа выходов которого и выходы блока буферной памяти соединены соответственно со второй и первой группами информационных входов первого блока суммирования, блок выбора режима и генератор локаторов, введены второй блок суммирования, блоки равнозначности, элемент ИЛИ и синхронизатор, группы выходов формирователя синдромов подключены к одноименным группам информационных входов вычислителя поправок и блока выбора режима, первый и второй выходы которого соединены с одноименными управляющими входами вычислителя поправок, вторая группа выходов которого и выходы первого блока суммирования подключены соответственно к второй и первой группам информационных входов второго блока суммирования, выходы которого являются информационными выходами декодера, третья и четвертая группы выходов вычислителя поправок соединены с первыми группами входов соответственно первого и второго блоков равнозначности, выходы которых подключены к управляющим входам одноименных блоков суммирования, первый и второй выходы вычислителя поправок соединены соответственно с первым входом элемента ИЛИ и управляющим входом блока выбора режима, третий и четвертый выходы которого подключены соответственно к управляющему входу синхронизатора и второму входу элемента ИЛИ, выход которого является выходом отказа от декодирования декодера, информационный вход синхронизатора является входом синхронизации декодера, первый четвертый выходы синхронизатора соединены с входами синхронизации соответственно блока буферной памяти, формирователя синдромов, вычислителя поправок и генератора локаторов, выходы которого подключены к вторым группам входов блоков равнозначности. To improve performance and reduce complexity, an error-correcting decoder containing a buffer memory unit, the information inputs of which are combined with the inputs of the syndrome shaper of the same name and are information inputs of the decoder, is a corrector, the first group of outputs of which and the outputs of the buffer memory are connected to the second and first groups of information inputs of the first summing block, mode selection block and locator generator, the second summing block, equivalence blocks, OR element and synchronizer, groups of outputs of the syndrome generator are connected to the same groups of information inputs of the corrector and the mode selection block, the first and second outputs of which are connected to the same inputs of the corrector, the second group of outputs and the outputs of the first summing unit are connected to the second and first groups of information inputs of the second summing unit, the outputs of which are information outputs of the decoder, the third and fourth groups of outputs are calculated The corrections are connected to the first groups of inputs of the first and second equivalence blocks, the outputs of which are connected to the control inputs of the summation blocks of the same name, the first and second outputs of the corrections calculator are connected respectively to the first input of the OR element and the control input of the mode selection block, the third and fourth outputs of which are connected respectively, to the control input of the synchronizer and the second input of the OR element, the output of which is the output of the refusal to decode the decoder, information in the synchronizer stroke is the decoder synchronization input, the first fourth synchronizer outputs are connected to the synchronization inputs of the buffer memory block, syndrome shaper, corrector calculator and locator generator, the outputs of which are connected to the second groups of inputs of the equivalence blocks.

Кроме того, в рассматриваемом декодере блок выбора режима содержит элементы ИЛИ-НЕ, элементы И и элемент ИЛИ, входы первого четвертого элементов ИЛИ-НЕ являются соответствующими группами информационных входов блока, выход первого элемента ИЛИ-НЕ соединен с первым входом пятого элемента ИЛИ-НЕ и первыми входами первого третьего элементов И, выход второго элемента ИЛИ-НЕ подключен к второму входу пятого элемента ИЛИ-НЕ, вторым входом первого и второго элементов И и первым входам четвертого и пятого элементов И и является вторым выходом блока, выход третьего элемента ИЛИ-НЕ соединен с третьими входами пятого элемента ИЛИ-НЕ и первого элемента И и вторыми входами третьего и четвертого элементов И, выход четвертого элемента ИЛИ-НЕ подключен к четвертым входам первого элемента И и пятого элемента ИЛИ-НЕ и второму входу пятого элемента И, выходы второго пятого элементов И соединены с входами элемента ИЛИ, выход которого и выход первого элемента И являются соответственно четвертым и третьим выходами блока, выход пятого элемента ИЛИ-НЕ подключен к первому входу шестого элемента И, второй вход и выход которого являются соответственно управляющим входом и первым выходом блока. In addition, in the decoder in question, the mode selection block contains OR-NOT elements, AND elements, and an OR element, inputs of the first fourth OR-NOT elements are corresponding groups of information inputs of the block, the output of the first OR-NOT element is connected to the first input of the fifth OR-NOT element and the first inputs of the first third elements AND, the output of the second element OR is NOT connected to the second input of the fifth element OR NOT, the second input of the first and second elements AND and the first inputs of the fourth and fifth elements AND is the second output of a, the output of the third OR-NOT element is connected to the third inputs of the fifth OR-NOT element and the first AND element and the second inputs of the third and fourth AND elements, the output of the fourth OR-NOT element is connected to the fourth inputs of the first AND element and the fifth OR-NOT element and the second input of the fifth AND element, the outputs of the second fifth AND element are connected to the inputs of the OR element, the output of which and the output of the first AND element are the fourth and third outputs of the block, the output of the fifth element OR is NOT connected to the first input of the sixth AND element, the second input and output of which are respectively the control input and the first output of the block.

Еще одним отличием данного декодера является выполнение вычислителя поправок на арифметико-логическом узле, первом и втором блоках переключений, первом четвертом регистрах и блоке управления и синхронизации, первый третий входы которого являются соответственно первым и вторым управляющими входами и входом синхронизации вычислителя, первая четвертая группы информационных входов первого блока переключений являются одноименными группами информационных входов вычислителя, группы выходов первого блока переключений соединены с соответствующими группами информационных входов арифметико-логического узла, первый и второй выходы которого являются соответствующими выходами вычислителя, первая группа выходов блока управления и синхронизации подключена к соответствующим управляющим входам арифметико-логического узла, первая четвертая группы выходов которого соединены с соответствующими группами информационных входов второго блока переключений, первая четвертая группы выходов которого подключены к информационным входам соответственно первого четвертого регистров, вторая и третья группы выходов блока управления и синхронизации соединены с управляющими входами соответственно первого и второго блока переключений, первый четвертый выходы блока управления и синхронизации подключены к входам синхронизации соответственно первого четвертого регистров, выходы которых соединены соответственно с пятой восьмой группами информационных входов первого блока переключений и являются соответственно третьей, четвертой, первой и второй группами выходов вычислителя. Another difference of this decoder is the implementation of the calculator of corrections on the arithmetic-logical node, the first and second switching units, the first fourth registers and the control and synchronization unit, the first third inputs of which are the first and second control inputs and the synchronization input of the computer, the first fourth group of information the inputs of the first switching unit are the same groups of information inputs of the computer, the output groups of the first switching unit are connected to the existing groups of information inputs of the arithmetic-logical unit, the first and second outputs of which are the corresponding outputs of the calculator, the first group of outputs of the control and synchronization unit is connected to the corresponding control inputs of the arithmetic-logical unit, the first fourth groups of outputs of which are connected to the corresponding groups of information inputs of the second switching unit , the first fourth group of outputs of which are connected to the information inputs, respectively, of the first fourth registers , the second and third groups of outputs of the control and synchronization unit are connected to the control inputs of the first and second switching units, the first fourth outputs of the control and synchronization units are connected to the synchronization inputs, respectively, of the first fourth registers, the outputs of which are connected respectively to the fifth eighth groups of information inputs of the first switching unit and are, respectively, the third, fourth, first and second groups of outputs of the calculator.

При этом арифметико-логический узел содержит первый четвертый перемножители, первый третий сумматоры, первый третий блоки возведения в квадрат, блок возведения в четвертую степень, блок умножения на матрицу, блок равнозначности и первый пятый переключатели, информационные входы первого блока возведения в квадрат, первая и вторая группы входов первого перемножителя, информационные входы второго блока возведения в квадрат и первые группы информационных входов первого и второго переключателей являются соответственно первой шестой группами информационных входов узла, выходы первого блока возведения в квадрат и первого перемножителя соединены с первой и второй группами информационных входов первого сумматора, выходы которого подключены к первым группам входов блока равнозначности и четвертого перемножителя и являются первой группой выходов узла, выходы второго блока возведения в квадрат соединены со второй группой информационных входов первого переключателя и информационными входами третьего блока возведения в квадрат, выходы первого и второго переключателей соединены с первой и второй группами входов второго перемножителя, выходы которого подключены к первой группе информационных входов второго сумматора и входам блока возведения в четвертую степень, выходы которого соединены с первой группой информационных входов третьего переключателя, выходы третьего блока возведения в квадрат соединены со второй группой информационных входов второго переключателя, первой группой информационных входов четвертого переключателя и второй группой информационных входов второго сумматора, выходы которого подключены к второй группе информационных входов третьего переключателя, второй группе входов блока равнозначности и является четвертой группой выходов узла, выходы третьего и четвертого переключателей соединены с первой и второй группами входов третьего перемножителя, выходы которого подключены к первым группам информационных входов третьего сумматора и пятого переключателя, выходы которого соединены с второй группой входов четвертого перемножителя, выходы которого подключены к второй группе информационных входов третьего сумматора и информационным входом блока умножения на матрицу, старший разряд выходов четвертого переключателя является вторым выходом узла, вторые группы информационных входов четвертого и пятого переключателей являются соответственно седьмой и восьмой группами информационных входов узла, управляющие входы всех блоков возведения в квадрат, всех сумматоров, блока умножения на матрицу и всех переключателей являются соответствующими управляющими входами узла, выход блока равнозначности является первым выходом узла, выходы блока умножения на матрицу и третьего сумматора являются соответственно второй и третьей группами выходов узла. The arithmetic-logical unit contains the first fourth multipliers, the first third adders, the first third squaring blocks, the fourth power squaring block, the matrix multiplying block, the equivalence block and the first fifth switches, the information inputs of the first squaring block, the first and the second group of inputs of the first multiplier, the information inputs of the second squaring unit and the first group of information inputs of the first and second switches are the first sixth group, respectively the information inputs of the node, the outputs of the first squaring block and the first multiplier are connected to the first and second groups of information inputs of the first adder, the outputs of which are connected to the first groups of inputs of the equivalence block and the fourth multiplier and are the first group of outputs of the node, the outputs of the second squaring block connected to the second group of information inputs of the first switch and information inputs of the third squaring unit, the outputs of the first and second switches soy inens with the first and second groups of inputs of the second multiplier, the outputs of which are connected to the first group of information inputs of the second adder and the inputs of the fourth degree block, the outputs of which are connected to the first group of information inputs of the third switch, the outputs of the third square block are connected to the second group of information the inputs of the second switch, the first group of information inputs of the fourth switch and the second group of information inputs of the second adder, the outputs of which connected to the second group of information inputs of the third switch, the second group of inputs of the equivalence block and is the fourth group of outputs of the node, the outputs of the third and fourth switches are connected to the first and second groups of inputs of the third multiplier, the outputs of which are connected to the first groups of information inputs of the third adder and fifth switch, the outputs of which are connected to the second group of inputs of the fourth multiplier, the outputs of which are connected to the second group of information inputs of the third sum ora and the information input of the matrix multiplication block, the highest bit of the outputs of the fourth switch is the second output of the node, the second groups of information inputs of the fourth and fifth switches are the seventh and eighth groups of information inputs of the node, the control inputs of all squaring blocks, all adders, the multiplication block to the matrix and all the switches are the corresponding control inputs of the node, the output of the equivalence block is the first output of the node, the outputs of the multiplication block are and the matrix and the third adder are, respectively, the second and third groups of outputs of the node.

На фиг. 1 представлена функциональная схема декодера с исправлением ошибок; на фиг. 2 примеры выполнения традиционным способом для поля CF(24) соответственно формирователя синхрома и генератора локаторов; на фиг.3,5 соответственно примеры выполнения блока выбора режима и вычислителя поправок, а также входящего в его состав арифметико-логического узла; на фиг.6 сигналы синхронизации работы декодера; на фиг.7 9 три варианта сигналов, управляющих работой регистров в вычислителе поправок.In FIG. 1 is a functional diagram of an error correction decoder; in FIG. 2 examples of performing in the traditional way for the CF field (2 4 ), respectively, of the synchromer and generator of the locators; in Fig.3.5, respectively, examples of the execution of the mode selection unit and the calculator of amendments, as well as its arithmetic-logical unit; figure 6 signals of synchronization of the decoder; Fig.7 9 three variants of the signals that control the operation of the registers in the calculator corrections.

В основе работы декодера с исправлением ошибок лежит следующий алгоритм декодирования. The error decoding decoder is based on the following decoding algorithm.

Сначала вычисляются элементы Sj (j 0,1,2,3) синдрома
Sj=

Figure 00000002
UiZ j+1 i (1) где n длина (число разрядов) кодового слова, подлежащего декодированию;
Ui и Zi -соответственно символы и локаторы позиций кодового слова.First, the elements S j (j 0,1,2,3) of the syndrome are calculated
S j =
Figure 00000002
U i Z j + 1 i (1) where n is the length (number of bits) of the codeword to be decoded;
U i and Z i are, respectively, symbols and position locators of the code word.

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

Figure 00000003
Figure 00000004
Figure 00000005
(2) причем ни один элемент Sj синдрома не равен нулю. В этом случае локатор Zγ ошибки и ее значение Е1 находят из выражений
Zγ=
Figure 00000006
E1=
Figure 00000007
(3)
При наличии в кодовом слове двух ошибок условие (2) не выполняется. Тогда вычисляются корни следующего многочлена локаторов ошибки
Λ (X) X2 + Λ1 X + Λо, (4)
Коэффициенты этого многочлена определяются системой уравнений
Figure 00000008
(5)
Решая систему (5) и вводя подстановку X Λ1 · y, преобразуем уравнение (4) к виду
y2 + y + C 0, (6) где
C
Figure 00000009
Figure 00000010
(7)
A S 2 1 + Ao S2;
B S1 S3 + S 2 2 (8)
Решив полученное квадратное уравнение (6) по известной методике (Э.М. Габидулин и В.Б.Афанасьев. Кодирование в радиоэлектронике. М. Радио и связь, 1986, с. 58-64), получаем его корни y1 и y2. Поскольку по теореме Виета y1 + y2 -1, а также с учетом подстановки Х Λ1 y, локаторы ошибок определяются из соотношений Zj1=
Figure 00000011
Zy2=
Figure 00000012
Подставив Λ1 выраженную через элементы синдрома в системе уравнений (5), имеем
Zj1=
Figure 00000013
Figure 00000014

Zj2=
Figure 00000015
Figure 00000016
(9)
Значения ошибок находятся из следующей системы уравнений
Figure 00000017
Figure 00000018
(10)
После соответствующих преобразований и подстановок, получим
E1= y 2 1 (y1+1)
Figure 00000019
(SoZj2+S1)
E2= y1(y1+1)
Figure 00000020
(SoZj1+S1) (11)
В случае, когда S1 0, свободный член С уравнения (6) вычисляется по формуле
C
Figure 00000021
(12)
При этом выражения (9) и (11) примут вид:
Zj1=
Figure 00000022
Zj2=
Figure 00000023
Figure 00000024
(13)
E1= y 2 1 S 2 o
Figure 00000025
E2= (y1+1)2• S 2 o
Figure 00000026
(14)
По найденным локаторам и значениям ошибок осуществляют их исправление.If all elements S j are equal to zero, then there are no errors in the received codeword, and information symbols of the codeword are issued to the consumer. If one character is distorted in the codeword, the condition must be met
Figure 00000003
Figure 00000004
Figure 00000005
(2) moreover, not a single element of the S j syndrome is equal to zero. In this case, the error locator Z γ and its value E 1 are found from the expressions
Z γ =
Figure 00000006
E 1 =
Figure 00000007
(3)
If there are two errors in the codeword, condition (2) is not satisfied. Then the roots of the next polynomial of error locators are calculated
Λ (X) X 2 + Λ 1 X + Λ о , (4)
The coefficients of this polynomial are determined by the system of equations
Figure 00000008
(5)
Solving system (5) and introducing the substitution X Λ 1 · y, we transform equation (4) to the form
y 2 + y + C 0, (6) where
C
Figure 00000009
Figure 00000010
(7)
As 2 1 + A o S 2 ;
BS 1 S 3 + S 2 2 (8)
Solving the obtained quadratic equation (6) by a well-known method (E.M. Gabidulin and VB Afanasyev. Coding in radio electronics. M. Radio and communications, 1986, pp. 58-64), we obtain its roots y 1 and y 2 . Since, by the Vieta theorem, y 1 + y 2 -1, and also taking into account the substitution X Λ 1 y, the error locators are determined from the relations Z j1 =
Figure 00000011
Z y2 =
Figure 00000012
Substituting Λ 1 expressed through the elements of the syndrome in the system of equations (5), we have
Z j1 =
Figure 00000013
Figure 00000014

Z j2 =
Figure 00000015
Figure 00000016
(9)
Error values are found from the following system of equations
Figure 00000017
Figure 00000018
(ten)
After the corresponding transformations and substitutions, we obtain
E 1 = y 2 1 (y 1 +1)
Figure 00000019
(S o Z j2 + S 1 )
E 2 = y 1 (y 1 +1)
Figure 00000020
(S o Z j1 + S 1 ) (11)
In the case when S 1 0, the free term C of equation (6) is calculated by the formula
C
Figure 00000021
(12)
In this case, expressions (9) and (11) will take the form:
Z j1 =
Figure 00000022
Z j2 =
Figure 00000023
Figure 00000024
(thirteen)
E 1 = y 2 1 S 2 o
Figure 00000025
E 2 = (y 1 +1) 2 • S 2 o
Figure 00000026
(14)
Based on the locators and error values found, they are corrected.

Случаи, когда So S1 0, или So S20, или S1 S3 0, или S1 S2 0 при неравенстве нулю остальных двух элементов синдрома, а также случай, когда уравнение (6) не имеет решений, соответствуют случаям отказа от декодирования.Cases when S o S 1 0, or S o S 2 0, or S 1 S 3 0, or S 1 S 2 0 if the other two elements of the syndrome do not equal zero, as well as the case when equation (6) has no solutions, correspond to cases of rejection of decoding.

Декодер с исправлением ошибок по выше приведенному алгоритму содержит блок 1 буферной памяти, формирователь 2 синдромов, вычислитель 3 поправок, блок 4 выбора режима, генератор 5 локаторов первый и второй блоки 6, 7 суммирования, первый и второй блоки 8, 9 равнозначности, элемент ИЛИ 10 и синхронизатор 11. Информационные входы блока 1 и формирователя 2 объединены и являются информационными входами 12 декодера, информационный вход синхронизатора 11 является входом 13 синхронизации декодера. Группы выходов формирователя 2, число которых равно числу элементов Sj синдрома, подключены к одноименным группам информационных входов вычислителя 3 и блока 4, первый и второй выходы которого соединены с одноименными управляющими входами вычислителя 3. Выходы блока 1 и первая группа выходов вычислителя 3 подключены к первой и второй группам информационных входов блока 6, выходы которого и вторая группа выходов вычислителя 3 соединены с первой и второй группами информационных входов блока 7, выходы которого являются информационными выходами 14 декодера.The error correction decoder according to the above algorithm contains block 1 of the buffer memory, shaper 2 syndromes, calculator 3 corrections, block 4 mode selection, generator 5 locators first and second blocks 6, 7 summation, the first and second blocks 8, 9 equivalence, element OR 10 and synchronizer 11. The information inputs of block 1 and driver 2 are combined and are information inputs of decoder 12, the information input of synchronizer 11 is input 13 of decoder synchronization. The groups of outputs of the shaper 2, the number of which is equal to the number of elements S j of the syndrome, are connected to the same groups of information inputs of the calculator 3 and block 4, the first and second outputs of which are connected to the same control inputs of the calculator 3. The outputs of block 1 and the first group of outputs of the calculator 3 are connected to the first and second groups of information inputs of block 6, the outputs of which and the second group of outputs of the transmitter 3 are connected to the first and second groups of information inputs of block 7, the outputs of which are information outputs 14 decoder.

Третья и четвертая группы выходов вычислителя 3 подключены к первым группам входов блоков 8 и 9 соответственно, вторые группы входов которых соединены с выходами генератора 5, а выходы с управляющими входами соответственно блоков 6 и 7. Первый и второй выходы вычислителя 3 подключены соответственно к первому входу элемента ИЛИ 10 и управляющему входу блока 4, третий выход которого соединен с управляющим входом синхронизатора 11, первый четвертый выходы которого подключены к входам синхронизации соответственно блока 1, формирователя 2, вычислителя 3 и генератора 5. Четвертый выход блока 4 соединен с вторым входом элемента ИЛИ 10, выход которого является выходом 15 отказа от декодирования декодера. The third and fourth groups of outputs of the calculator 3 are connected to the first groups of inputs of blocks 8 and 9, respectively, the second groups of inputs of which are connected to the outputs of the generator 5, and the outputs with control inputs of blocks 6 and 7, respectively. The first and second outputs of the calculator 3 are connected respectively to the first input element OR 10 and the control input of block 4, the third output of which is connected to the control input of the synchronizer 11, the first fourth outputs of which are connected to the synchronization inputs, respectively, of block 1, shaper 2, will calculate Yelaya 3 and generator 5. The fourth output of block 4 is connected to the second input of the OR element 10, the output of which is the output 15 of the decoding failure of the decoder.

Блок 1 буферной памяти в рассматриваемом случае представляет собой четыре параллельно соединенных n-разрядных регистра сдвига для промежуточного хранения кодового слова, каждый символ Ui ((

Figure 00000027
)) которого является элементом поля GF (24).The buffer memory unit 1 in this case consists of four parallel-connected n-bit shift registers for intermediate storage of the codeword, each symbol U i ((
Figure 00000027
)) which is an element of the field GF (2 4 ).

Формирователь 2 синдромов может быть выполнен (фиг.2) на четырех регистрах 16-19, четырех умножителях 20-23 на постоянное значение и четырех сумматорах 24-27, первые группы входов которых соответственно объединены и являются входами формирователя. Выходы сумматоров 24-27 подключены к информационным входам соответствующих регистров 16-19, входы синхронизации которых объединены и являются входом синхронизации формирователя 2. Выходы регистров 16-19 через соответствующие умножители 20-23 подключены к вторым группам входов соответствующих сумматоров 24-27 и одновременно являются соответствующими группами выходов формирователя 2. В умножителях 20-23 выходные сигналы регистров 16-19 умножаются на соответствующие локаторы Zo-Z3 позиций, после чего суммируются в сумматорах 24-27 с очередными символами. На выходах регистров 16-19 формируются элементы So-S3 синдрома согласно выражению (1).Shaper 2 syndromes can be performed (figure 2) on four registers 16-19, four multipliers 20-23 by a constant value and four adders 24-27, the first groups of inputs of which are respectively combined and are inputs of the shaper. The outputs of adders 24-27 are connected to the information inputs of the respective registers 16-19, the synchronization inputs of which are combined and are the synchronization input of the driver 2. The outputs of the registers 16-19 through the corresponding multipliers 20-23 are connected to the second groups of inputs of the corresponding adders 24-27 and at the same time are the corresponding groups of outputs of the shaper 2. In the multipliers 20-23, the output signals of the registers 16-19 are multiplied by the corresponding locators Z o -Z 3 positions, and then summed in the adders 24-27 with the next characters . At the outputs of the registers 16-19 formed elements S o -S 3 syndrome according to the expression (1).

Блок 4 выбора режима может быть реализован (фиг.3) на элементах 28-32 ИЛИ-НЕ, элементах И 33-38 и элементе ИЛИ 39. Входы первого-четвертого элементов ИЛИ-НЕ 28-31 являются соответственно первой четвертой группами входов блока 4, на которые с формирователя 2 поступают соответствующие элементы So-S3 синдрома. Выход первого элемента ИЛИ-НЕ 28 соединен с входами первого-третьего элементов И 33-35, выход второго элемента ИЛИ-НЕ 29 с входами первого, второго, четвертого и пятого элементов И 33,34,36,37, выход третьего элемента ИЛИ-НЕ 30 с входами первого, третьего и четвертого элементов И 33,35,36, а выход четвертого элемента ИЛИ-НЕ 31 со входами первого и пятого элементов И 33,37. Кроме того, выходы элементов ИЛИ-НЕ 28-31 подключены 5 к входам пятого элемента ИЛИ-НЕ 32, выход которого соединен с одним входом шестого элемента И 38, другой вход которого является управляющим входом блока 4, а выход 40 первым выходом блока 4. Выход 41 второго элемента ИЛИ-НЕ 29 является вторым выходом блока 4, выход 42 первого элемента И 33 третьим выходом блока 4. Выходы второго пятого элементов И 34-37 подключены к входам элементов ИЛИ 39, выход которого 43 является четвертым выходом блока 4.The mode selection block 4 can be implemented (FIG. 3) on the OR-NOT elements 28-32, the AND 33-38 elements, and the OR element 39. The inputs of the first to fourth OR-NOT 28-31 elements are, respectively, the first fourth groups of inputs of block 4 to which from the shaper 2 the corresponding elements of the S o -S 3 syndrome are received. The output of the first element OR-NOT 28 is connected to the inputs of the first-third elements AND 33-35, the output of the second element OR-NOT 29 with the inputs of the first, second, fourth and fifth elements AND 33,34,36,37, the output of the third element OR- NOT 30 with inputs of the first, third and fourth elements AND 33,35,36, and the output of the fourth element OR NOT 31 with inputs of the first and fifth elements AND 33,37. In addition, the outputs of the OR-NOT 28-31 elements are connected 5 to the inputs of the fifth OR-NOT 32 element, the output of which is connected to one input of the sixth AND 38 element, the other input of which is the control input of block 4, and the output 40 is the first output of block 4. The output 41 of the second element OR NOT 29 is the second output of block 4, the output 42 of the first element AND 33 is the third output of block 4. The outputs of the second fifth element AND 34-37 are connected to the inputs of the elements OR 39, the output of which 43 is the fourth output of block 4.

Генератор 5 локаторов формирует на своих выходах локаторы Zo-Zn-1-позиций и может быть выполнен (фиг.4) на триггерах 44-47 и элементе ИСКЛЮЧАЮЩЕЕ ИЛИ 48, выход которого соединен с D-входом первого триггера 44, выход которого подключен к входу элемента 48 и является первым выходом генератора 5. Выход второго триггера 45 соединен с другим входом элемента 48 и является вторым выходом генератора 5. Выходы третьего и четвертого триггеров 46, 47 подключены к D-входам триггеров 45 и 46 соответственно и являются третьим и четвертым выходами генератора 5. D-вход четвертого триггера 47 соединен с выходом первого триггера 44. С-входы триггеров 44-47 объединены и являются входом синхронизации генератора 5, а объединенные R-входы триггеров 44, 47 и S-входы триггеров 45, 46 входом обнуления генератора 5. Такая реализация генератора 6 соответствует порождающему многочлену m(x) X4+ X + 1 в поле GF (24).The locator generator 5 generates locators of Z o -Z n-1 positions at its outputs and can be performed (Fig. 4) on triggers 44-47 and an EXCLUSIVE OR 48 element, the output of which is connected to the D-input of the first trigger 44, the output of which connected to the input of element 48 and is the first output of generator 5. The output of the second trigger 45 is connected to another input of element 48 and is the second output of generator 5. The outputs of the third and fourth triggers 46, 47 are connected to the D-inputs of triggers 45 and 46, respectively, and are the third and the fourth outputs of the generator 5. D-input four the second trigger 47 is connected to the output of the first trigger 44. The C-inputs of the triggers 44-47 are combined and are the synchronization input of the generator 5, and the combined R-inputs of the triggers 44, 47 and the S-inputs of the triggers 45, 46 are the input of the zeroing of the generator 5. Such an implementation of the generator 6 corresponds to the generating polynomial m (x) X 4 + X + 1 in the field GF (24).

Вычислитель 3 поправок реализуется для данного случая (фиг.5) на арифметико-логическом узле 49, первом и втором блоках 50, 51 переключений, первом четвертом регистрах 52-55 и блоке 56 управления и синхронизации. Первая четвертая группы 57 информационных входов блока 50 являются соответствующими группами информационных входов вычислителя 3. Группы выходов блока 50 соединены с соответствующими группами информационных входов узла 49, четыре группы выходов которого подключены к соответствующим группам информационных входов блока 51. Группы выходов блока 51 соединены с информационными входами соответствующих регистров 52-55, выходы которых подключены к пятой восьмой группам информационных входов блока 50. Первый и второй входы 58, 59 блока 56 являются одноименными управляющими входами вычислителя 3. Первая группа выходов блока 56 соединена с соответствующими управляющими входами узла 49, выход 60 которого является первым выходом вычислителя 3. Выходы 61-64 соответственно третьего, четвертого, первого и второго регистров 54, 55, 52, 53 являются соответственно первой четвертой группами выходов вычислителя 3, а второй выход 65 узла 49 вторым выходом вычислителя 3. Вторая и третья группы выходов блока 56 соединены с управляющими входами блоков 50, 51, первый четвертый выходы блока 56 подключены ко входам синхронизации регистров 52-55. The calculator 3 corrections is implemented for this case (figure 5) on the arithmetic-logical node 49, the first and second blocks 50, 51 switching, the first fourth registers 52-55 and block 56 control and synchronization. The first fourth group 57 of the information inputs of block 50 are the corresponding groups of information inputs of the calculator 3. The groups of outputs of block 50 are connected to the corresponding groups of information inputs of node 49, the four groups of outputs of which are connected to the corresponding groups of information inputs of block 51. The groups of outputs of block 51 are connected to information inputs corresponding registers 52-55, the outputs of which are connected to the fifth eighth group of information inputs of block 50. The first and second inputs 58, 59 of block 56 are one connected control inputs of the calculator 3. The first group of outputs of the block 56 is connected to the corresponding control inputs of the node 49, the output of which 60 is the first output of the calculator 3. The outputs 61-64 of the third, fourth, first and second registers 54, 55, 52, 53, respectively the first fourth groups of outputs of the calculator 3, and the second output 65 of the node 49 by the second output of the calculator 3. The second and third groups of outputs of the block 56 are connected to the control inputs of the blocks 50, 51, the first fourth outputs of the block 56 are connected to the synchronization inputs ation registers 52-55.

Арифметико-логический узел 49 включает в себя (фиг.5) первый четвертый перемножители 66-69, первый третий сумматоры 70-72, первый третий блоки 73-75 возведения в квадрат, блок 76 возведения в четвертую степень, первый пятый переключатели 77-81, блок 82 равнозначности и блок 83 умножения на матрицу. Управляющие входы блоков 74, 75, 73, сумматоров 70, 71, 72, блока 83 и переключателей 77-81 являются соответствующими управляющими входами узла 49. Информационные входы блока 73, первая и вторая группы входов перемножителя 66, информационные входы блока 74, первые группы информационных входов переключателей 77, 78 и вторые группы информационных входов переключателей 80, 81 являются соответственно первой восьмой группами информационных входов узла 49. Выходы блока 73 и перемножителя 66 соединены с группами информационных входов сумматора 70, выходы которого подключены первым группам входов перемножителя 69 и блока 82 и являются первой группой выходов узла 49. Выходы блока 83 и сумматора 72 являются второй и третьей группами выходов узла 49. Выходы блока 74 подключены к второй группе информационных входов переключателя 77 и информационным входам блока 75, выходы которого соединены со второй группой информационных входов переключателя 78, первой группой информационных входов переключателя 80 и одной из групп информационных входов сумматора 71. Выходы переключателей 77 и 78 подключены к группам входом перемножителя 67, выходы которого соединены с входами блока 76 и другой группой информационных входом сумматора 71. Выходы блока 76 подключены к первой группе информационных входов переключателя 79, выходы сумматора 71 соединены с второй группой информационных входов переключателей 79, второй группой входов блока 82 и является четвертой группой выходов узла 49. Выходы переключателей 79, 80 подключены к группам входов перемножителя 68, выходы которого соединены с первыми группами информационных входов сумматора 72 и переключателя 81, выходы которого подключены ко второй группе входов перемножителя 69, выходы которого соединены со второй группой информационных входов сумматора 72 и информационными входами блока 83. Старший разряд выходов перемножителя 69 является первым выходом узла 49, а выход блока 82 вторым выходом узла 49. The arithmetic logic unit 49 includes (Fig. 5) a first fourth multiplier 66-69, a first third adder 70-72, a first third squaring block 73-75, a fourth power block 76, and the first fifth switches 77-81 , block 82 equivalence and block 83 multiplication by the matrix. The control inputs of blocks 74, 75, 73, adders 70, 71, 72, block 83 and switches 77-81 are the corresponding control inputs of node 49. The information inputs of block 73, the first and second groups of inputs of multiplier 66, the information inputs of block 74, first groups information inputs of switches 77, 78 and second groups of information inputs of switches 80, 81 are respectively the first eighth groups of information inputs of node 49. The outputs of block 73 and multiplier 66 are connected to groups of information inputs of adder 70, the outputs of which are are connected to the first groups of inputs of the multiplier 69 and block 82 and are the first group of outputs of node 49. The outputs of block 83 and adder 72 are the second and third groups of outputs of node 49. The outputs of block 74 are connected to the second group of information inputs of switch 77 and information inputs of block 75, outputs which are connected to the second group of information inputs of the switch 78, the first group of information inputs of the switch 80 and one of the groups of information inputs of the adder 71. The outputs of the switches 77 and 78 are connected to the groups by the variable input resident 67, the outputs of which are connected to the inputs of block 76 and another group of information inputs of the adder 71. The outputs of block 76 are connected to the first group of information inputs of the switch 79, the outputs of the adder 71 are connected to the second group of information inputs of the switches 79, the second group of inputs of block 82 the group of outputs of node 49. The outputs of the switches 79, 80 are connected to the input groups of the multiplier 68, the outputs of which are connected to the first groups of information inputs of the adder 72 and the switch 81, the outputs of which are connected us to the second group of inputs of the multiplier 69, the outputs of which are connected with the second group of information inputs of the adder 72 and inputs the information block 83. The MSB output of the multiplier 69 is a first output node 49 and output unit 82 the second output node 49.

Переключатели 77-81 могут быть реализованы в микроэлектронном исполнении в виде полупроводниковых ключей. Switches 77-81 can be implemented in microelectronic design in the form of semiconductor switches.

Все перемножители 66-69 и умножители 20-23 и 83 и все блоки 73-76 возведения в степень осуществляют все операции в поле GF(24) и могут быть выполнены в виде известных комбинационных схем. Сумматоры 24-27 являются сумматорами по модулю 2, а блоки 6.7 суммирования и сумматоры 70-72 являются сумматорами по модулю 2 с управляемыми вентилями по входу b. Логика работы этих блоков в зависимости от сигналов управления показана в табл.1. Блоки возведения в квадрат 73-75 содержат мультиплексоры, которые работают в зависимости от сигналов управления согласно табл.2, где комбинация v=11 не используется.All the multipliers 66-69 and the multipliers 20-23 and 83 and all the power raising blocks 73-76 carry out all the operations in the GF field (2 4 ) and can be performed in the form of well-known combinational circuits. Adders 24-27 are adders modulo 2, and the adders 6.7 and adders 70-72 are adders modulo 2 with controlled valves at input b. The logic of the operation of these blocks depending on the control signals is shown in Table 1. Blocks squaring 73-75 contain multiplexers that operate depending on the control signals according to table 2, where the combination v = 11 is not used.

Блок 83 умножения на матрицу, который работает согласно табл.3, осуществляет умножение входного кода на матрицу, позволяющую найти корни уравнения (6) y1 и y2, и зависит от порождающего многочлена m(x) (см.выше упомянутую книгу Э.М.Габидулина и В.Б.Афанасьева).Block 83 multiplication by a matrix, which works according to Table 3, multiplies the input code by a matrix that allows you to find the roots of equation (6) y 1 and y 2 , and depends on the generating polynomial m (x) (see the aforementioned book E. M. Gabidulin and V. B. Afanasyev).

Синхронизатор 11 работает в соответствии с диаграммой на фиг.6. The synchronizer 11 operates in accordance with the diagram in Fig.6.

Блок 56 управления и синхронизации может быть выполнен известными схемотехническими способами, обеспечивающими его работу согласно табл.4. В этой таблице знаком "х" отмечены произвольные состояния соответствующих сигналов, а "Н" и "В" обозначают соответственно нижнее и верхнее положения переключателей 77-81 на фиг.5. Числа в таблице соответствуют нумерации элементов на фиг.5. Комбинация одновременного появления сигналов ОNE=1 и SEC=1 не используется. Сигналы синхронизации на регистры 52-55 формируются в блоке 56 согласно диаграммам фиг.7. Block 56 control and synchronization can be performed by known circuit methods that ensure its operation according to table 4. In this table, the x sign denotes arbitrary states of the corresponding signals, and H and B indicate the lower and upper positions of the switches 77-81 in FIG. 5, respectively. The numbers in the table correspond to the numbering of the elements in figure 5. The combination of the simultaneous occurrence of ONE = 1 and SEC = 1 signals is not used. The synchronization signals to the registers 52-55 are generated in block 56 according to the diagrams of Fig.7.

Декодер с исправлением ошибок работает следующим образом. The error correction decoder works as follows.

На вход 13 поступает либо тактовый сигнал с опорной частотой F, либо сигнал словной (блочной) синхронизации для привязки фазы генератора частоты F в сихронизаторе 11. По сигналу с частотой F в синхронизаторе 11 вырабатываются сигналы F1-F4 (фиг.6). Input 13 receives either a clock signal with a reference frequency F, or a word (block) synchronization signal for linking the phase of the frequency generator F in synchronizer 11. Signals F1-F4 are generated from the signal with frequency F in synchronizer 11 (Fig. 6).

По сигналу F1 в первых n тактах в блок 1 записывается очередное кодовое слово. Одновременно с этим по сигналу F2 то же кодовое слово подается в формирователь 2, на выходах которого в n-ном такте формируются элементы So S3 cиндрома согласно (1). Эти элементы поступают на блок 4 выбора режима, в котором в зависимости от соотношений между элементами Sо-S3 формируются соответствующие сигналы.By the signal F1, in the first n clock cycles, the next codeword is recorded in block 1. At the same time, by signal F2, the same code word is supplied to driver 2, at the outputs of which elements of the o S 3 syndrome are formed in the nth cycle according to (1). These elements enter the mode selection unit 4, in which corresponding signals are formed depending on the ratios between the elements S о -S 3 .

Если все элементы Sо-S3 синдрома равны нулю, это означает отсутствие ошибки в принятом слове. На выходе 42 блока 4 в этом случае вырабатывается единичный сигнал END, разрешающий выдачу принятого кодового слова потребителю без исправлений. Синхронизатор 11 по этому сигналу сразу начинает формировать вторую половину сигнала F1, по которому коды с блока 1 проходят на выходы 14. Поскольку вычислитель 3 в этом режиме никаких сигналов не выдает, а блоки 6.7 управляющие сигналы не поступают. Поэтому блоки 6 и 7 пропускают выходные сигналы блока 1 без изменений.If all elements of S о -S 3 syndrome are equal to zero, this means that there is no error in the received word. At the output 42 of block 4, in this case, a single END signal is generated, allowing the delivery of the received codeword to the consumer without corrections. The synchronizer 11 on this signal immediately begins to form the second half of the signal F1, according to which the codes from block 1 pass to the outputs 14. Since the calculator 3 in this mode does not issue any signals, and blocks 6.7 do not receive control signals. Therefore, blocks 6 and 7 pass the output signals of block 1 unchanged.

Если в принятом кодовом слове искажены более двух символов, появляется сигнал ERR на выходе 43 блока 4. Этот сигнал проходит на выход 15, индицируя невозможность исправления данного кодового слова. По сигналу ERR во внешней схеме может быть осуществлен запрет передачи данного слова потребителю либо организован переспрос передатчика. В частном случае данный сигнал ERR может быть введен в синхронизатор 11, который в этом случае выдаст сигнал обнуления блока 1 и сразу перейдет к новому циклу формирования сигналов F1-F4. If more than two characters are distorted in the received codeword, an ERR signal appears at the output 43 of block 4. This signal passes to output 15, indicating the impossibility of correcting this codeword. By the ERR signal in the external circuit, a ban on the transmission of this word to the consumer can be implemented or a transmitter can be retransmitted. In the particular case, this ERR signal can be entered into the synchronizer 11, which in this case will issue a zeroing signal for block 1 and immediately proceed to the new signal generation cycle F1-F4.

Отсутствие сигналов END и ERR на выходах 42 и 43 блока 4 означает наличие одной или двух ошибок в принятом кодовом слове. В этом случае вычислитель 3 по сигналу F3 с синхронизатора 11 осуществляет вычисление локаторов Z

Figure 00000028
, Zγ2 и значений Е1, Е2 ошибок. При этом в нулевом состоянии (см.табл.4) узел 49 определяет истинность выражения SоС2 S 2 1 и S1S3 S 2 2 (15). Если блок 82 равнозначности индицирует равенство, т.е. с выхода 60 вычислителя 3 на блок 4 поступает единичный сигнал ЕQ, а блок 4 в это же время определяет, что для любого j имеет место Sj ≠ 0, то с выхода 40 блока 4 на вход 58 вычислителя 3 поступает единичный сигнал ONE, свидетельствующий о наличии только одной ошибки в принятом кодовом слове. При этом работа вычислителя 3 производится в соответствии с первым вариантом табл.4 и фиг.8а.The absence of END and ERR signals at the outputs 42 and 43 of block 4 means the presence of one or two errors in the received codeword. In this case, the calculator 3 by the signal F3 from the synchronizer 11 calculates the locators Z
Figure 00000028
, Z γ2 and values of E 1 , E 2 errors. Moreover, in the zero state (see table 4), node 49 determines the truth of the expression S о С 2 S 2 1 and S 1 S 3 S 2 2 (fifteen). If the block 82 equivalence indicates equality, i.e. from the output 60 of calculator 3 to unit 4, a single signal EQ is received, and block 4 at the same time determines that for any j there is S j имеет 0, then from the output 40 of block 4 to the input 58 of calculator 3, a single signal ONE is received, indicating about the presence of only one error in the accepted codeword. In this case, the operation of the calculator 3 is carried out in accordance with the first embodiment of table 4 and figa.

На выходах 63 регистра 52 в первом состоянии этого варианта декодирования и а выходах 61 регистра 54 во втором состоянии формируются соответственно локатор Zγ1 1 и значение Е1 ошибки согласно (3). Когда синхронизатор 11 начинает выдавать сигнал F4 (и вторую половину сигнала F1), генератор 5 начинает потактовое формирование локаторов Zi позиций в кодовом слове, которое при этом потактово выводится из блока 1. Локаторы Zi соответствуют позиции символа кодового слова, выводимого в данный момент из блока 1. При равенстве очередного локатора Zi, сформированного генератором 5, с локатором Zγ1 ошибки на выходах 63 вычислителя блок 8 выдает управляющий сигнал на блок 6, по которому в блоке 6 искаженный символ, выводимый в этом такте из блока 1, суммитируется по модулю два со значением Е1 ошибки с выходов 61 вычислителя 3. В результате исправленный символ поступает на выходы 14 декодера. В остальные такты блок 6 пропускает символы без изменения. Блоки 7 и 9 в этом варианте декодирования не используются, т.к. на выходах 64 вычислителя отсутствует код локатора Zγ2 (нет второй ошибки) и управляющий сигнал на блок 7 с блока 9 не выдается.At the outputs 63 of the register 52 in the first state of this decoding option and the outputs 61 of the register 54 in the second state, respectively, the locator Z γ1 1 and the error value E 1 are formed according to (3). When the synchronizer 11 starts to generate the signal F4 (and the second half of the signal F 1 ), the generator 5 starts beat-by-line generation of position locators Z i in the codeword, which is thus derived from the block 1 cycle-by-line. Locators Z i correspond to the position of the codeword symbol output to this the moment from block 1. If the next locator Z i generated by the generator 5 is equal to the error locator Z γ1 at the outputs of the calculator 63, block 8 generates a control signal to block 6, according to which, in block 6, the distorted symbol output from block 1 in this measure, will sum up ruetsya modulo two to the value E 1 output from the error calculator 61 3. As a result, the corrected symbol is supplied to the decoder 14 outputs. In the remaining measures, block 6 skips the characters without changing. Blocks 7 and 9 are not used in this decoding option, because at the outputs 64 of the calculator there is no locator code Z γ2 (there is no second error) and the control signal to block 7 from block 9 is not issued.

Если в нулевом состоянии (таблица) блок 82 не выдает сигнал ЕQ, это означает (при нулевых сигналах END и ERR с выходов 42, 43 блока 4) наличие двух ошибок в принятом кодовом слове. В этом случае на выходе 40 блока 4 сигнал ONE отсутствует. Если элемент S1 синдрома не равен нулю, то отсутствует и сигнал SEC на выходе 41 блока 4. Вычислитель 3 тогда работает по второму варианту табл.4 и фиг.8. определяя локаторы Zγ1, Zγ2и значения Е1, Е2 ошибок согласно выражениям (7)-(9) и (11). В каждом состоянии (на каждом шаге, в каждой итерации) этого варианта в соответствующие регистры 52-55 записываются комбинации элементов Sj, вычисленные в этом состоянии, причем как запись в эти регистры с группы выходов узла 49, так и считывание из них на соответствующие групп входов узла 49 осуществляются с помощью блоков 50, 51 в соответствии с табл.4 и фиг.8. Поскольку узел 49 является асинхронной комбинационной схемой, длительность каждого состояния определяется лишь задержкой в элементах узла 49 и временем срабатывания блоков 50, 51.If in the zero state (table), block 82 does not give an EQ signal, this means (at zero signals END and ERR from outputs 42, 43 of block 4) that there are two errors in the received codeword. In this case, there is no ONE signal at the output 40 of block 4. If the element S 1 of the syndrome is not equal to zero, then there is no SEC signal at the output 41 of block 4. The calculator 3 then works according to the second variant of Table 4 and Fig. 8. determining the locators Z γ1 , Z γ2 and the error values E 1 , E 2 according to expressions (7) - (9) and (11). In each state (at each step, in each iteration) of this variant, combinations of elements S j calculated in this state are written in the corresponding registers 52-55, moreover, both writing to these registers from the group of outputs of node 49 and reading them into the corresponding groups of inputs of the node 49 are carried out using blocks 50, 51 in accordance with table 4 and Fig. 8. Since the node 49 is an asynchronous combinational circuit, the duration of each state is determined only by the delay in the elements of the node 49 and the response time of the blocks 50, 51.

Следует отметить, что как во втором, так и в третьем вариантах декодирования наличие в каком-либо состоянии табл.4 обозначения 54(1) означает, что при считывании из третьего регистра 54 данных через блок 50 в узел 49 вместо младшего разряда этих данных записывается величина, указанная в скобках. It should be noted that in both the second and third decoding versions, the presence in some state of Table 4 of the designation 54 (1) means that when reading data from the third register 54 through block 50, it is written to block 49 instead of the least significant bit of this data value in parentheses.

По завершении выдачи синхронизатором 11 сигнала F3 на выходах 63 и 64 вычислителя 3 устанавливаются значения локаторов Zγ1,Zγ2 обеих ошибок, а на выходах 61 и 62 вычислителя 3 значения Е1, Е2 этих ошибок. Далее по сигналу F4 с синхронизатора 11 генератор 5 начинает формировать локаторы Zi позиций, а кодовое слово по сигналу F1 поступает из блока 1. Аналогично первому варианту (при одной ошибке) в момент равенства локатора Zi с одним из локаторов Z 1 или Z 2 соответствующий блок 8 или 9 выдает управляющий сигнал на соответствующий блок 6 или 7, где производится суммирование по модулю два искаженного символа и значения Е1 или Е2 ошибки. Исправленное кодовое слово поступает на выход 14.Upon completion of the issuance by the synchronizer 11 of the signal F3 at the outputs 63 and 64 of the calculator 3, the values of the locators Z γ1 , Z γ2 of both errors are set, and at the outputs 61 and 62 of the calculator 3 the values of E 1 , E 2 of these errors. Further, according to the signal F4 from synchronizer 11, the generator 5 begins to generate position locators Z i , and the code word from signal F1 comes from block 1. Similarly to the first option (with one error) at the time the locator Z i is equal to one of the locators Z 1 or Z 2 the corresponding block 8 or 9 gives a control signal to the corresponding block 6 or 7, where modulo summation is made of two distorted characters and error values E 1 or E 2 . The corrected code word is output 14.

В том случае, когда на выходе 41 блока 4 присутствует единичный сигнал SEC, свидетельствующий о равенстве нулю элемента S1, вычисление свободного члена С в уравнении (6) по выражению (7) некорректно. Поэтому вычисления в соответствии с выражениями (12)-(14) для этого режима производится согласно третьему варианту табл.4 и фиг.9. В остальном работа декодера происходит так же, как и во втором варианте.In the case when at the output 41 of block 4 there is a single signal SEC, indicating that the element S 1 is equal to zero, the calculation of the free term C in equation (6) using expression (7) is incorrect. Therefore, calculations in accordance with expressions (12) - (14) for this mode are performed according to the third embodiment of Table 4 and Fig. 9. The rest of the work of the decoder is the same as in the second embodiment.

Если во втором или третьем вариантах декодирования в третьем состоянии (табл. 4) в старшем разряде выходов перемножителя 69 узла 49, т.е. на выходе 65 вычислителя 3 формируется единичный сигнал ER(3), то он поступает через элемент ИЛИ 10 на выход 15 отказа от декодирования. Это связано с тем, что в данном случае для порождающего многочлена m(x) x4 + x + 1 не выполняется условие существования решения квадратного уравнения (6).If in the second or third variants of decoding in the third state (Table 4) in the high order of the outputs of the multiplier 69 of node 49, i.e. at the output 65 of the calculator 3 a single signal ER (3) is generated, then it enters through the element OR 10 to the output 15 of the rejection of decoding. This is due to the fact that in this case, for the generating polynomial m (x) x 4 + x + 1, the condition for the existence of a solution to the quadratic equation (6) is not satisfied.

Обнуление (начальная установка) генератора 5 может осуществляться специальным сигналом в промежутки между выдачами сигналов F4 либо автоматически по снятию сигнала F4. Zeroing (initial setting) of the generator 5 can be carried out by a special signal in the intervals between the issuance of signals F4 or automatically by removing the signal F4.

В данном изобретении благодаря использованию при вычислениях сигналов индикации различных режимов, соответствующих разному числу ошибок в принятом кодовом слове, время вычислений и сложность схемы снижения по сравнению с прототипом. In this invention, due to the use of various modes of indications in the calculation of signals corresponding to a different number of errors in the received codeword, the computation time and the complexity of the reduction circuit compared to the prototype.

Быстродействие декодера может быть увеличено за счет совмещения операций вывод кодового слова из блока 1 и записи в блок 1 следующего кодового слова. Кроме того, может быть предусмотрено сокращение времени выдачи сигнала F3 при наличии одной ошибки и отказ от выдачи сигналов F3 и F4 в случае отказ от декодирования. The speed of the decoder can be increased by combining operations outputting the code word from block 1 and writing to block 1 of the next code word. In addition, it may be possible to reduce the time of the output of the signal F3 in the presence of one error and the refusal to issue the signals F3 and F4 in case of refusal to decode.

Claims (4)

1. ДЕКОДЕР С ИСПРАВЛЕНИЕМ ОШИБОК, содержащий блок буферной памяти, информационные входы которого объединены с соответствующими информационными входами формирователя синдрома и являются информационными входами декодера, вычислитель поправок, первая группа выходов которого и выходы блока буферной памяти соединены соответственно с первой и второй группами информационных входов первого блока суммирования, блок выбора режима и генератор локаторов, отличающийся тем, что в него введены второй блок суммирования, блоки равнозначности, элемент ИЛИ и синхронизатор, причем группы выходов формирователя синдромов подключены к одноименным группам информационных входов вычислителя поправок и блока выбора режима, первый и второй выходы которого соединены с первым и вторым управляющими входами вычислителя поправок, вторая группа выходов которого и выходы первого блока суммирования подключены соответственно к первой и второй группам информационных входов второго блока суммирования, выходы которого являются информационными выходами декодера, третья и четвертая группы выходов вычислителя поправок соединены с первыми группами входов соответственно первого и второго блоков равнозначности, выходы которых подключены к управляющим входам соответственно первого и второго блоков суммирования, первый и второй выходы вычислителя поправок соединены соответственно с первым входом элемента ИЛИ и управляющим входом блока выбора режима, третий и четвертый выходы которого подключены соответственно к управляющему входу синхронизатора и второму входу элемента ИЛИ, выход которого является выходом отказа от декодирования декодера, при этом информационный вход синхронизатора является входом синхронизации декодера, а с первого по четвертый выходы синхронизатора соединены с входами синхронизации соответственно блока буферной памяти, формирователя синдромов, вычислителя поправок и генератора локаторов, выходы которого подключены к вторым группам входов первого и второго блоков равнозначности. 1. A DECODER WITH ERROR CORRECTION, containing a buffer memory block, the information inputs of which are combined with the corresponding information inputs of the syndrome generator and are information inputs of a decoder, a corrector, the first group of outputs of which and the outputs of the buffer memory block are connected respectively to the first and second groups of information inputs of the first summation block, mode selection block and locator generator, characterized in that a second summation block, equivalence blocks, elem t OR, and a synchronizer, and the groups of outputs of the syndrome generator are connected to the same groups of information inputs of the correction calculator and the mode selection block, the first and second outputs of which are connected to the first and second control inputs of the correction calculator, the second group of outputs of which and the outputs of the first summing block are connected respectively to the first and second groups of information inputs of the second summing unit, the outputs of which are the information outputs of the decoder, the third and fourth groups of outputs in the corrector numerator is connected to the first groups of inputs of the first and second equivalence blocks, the outputs of which are connected to the control inputs of the first and second summing blocks, the first and second outputs of the corrector are connected respectively to the first input of the OR element and the control input of the mode selection block, the third and fourth the outputs of which are connected respectively to the control input of the synchronizer and the second input of the OR element, the output of which is the output of decoding rejection a decoder, while the information input of the synchronizer is the synchronization input of the decoder, and from the first to the fourth outputs of the synchronizer are connected to the synchronization inputs of the buffer memory block, syndrome shaper, corrector calculator, and locator generator, the outputs of which are connected to the second input groups of the first and second equivalence blocks. 2. Декодер по п.1, отличающийся тем, что блок выбора режима выполнен на шести элементах И, элементе ИЛИ и пяти элементах ИЛИ - НЕ, входы с первого по четвертый элементов ИЛИ - НЕ являются соответствующими группами информационных входов блока, выход первого элемента ИЛИ - НЕ соединен с первым входом пятого элемента ИЛИ - НЕ и первыми входами с первого по третий элементов И, выход второго элемента ИЛИ - НЕ соединен с вторым входом пятого элемента ИЛИ - НЕ, вторыми входами первого и второго элементов И, первыми входами четвертого и пятого элементов И и является вторым выходом блока, выход третьего элемента ИЛИ - НЕ соединен с третьими входами пятого элемента ИЛИ - НЕ и первого элемента И и вторыми входами третьего четвертого элементов И, выход четвертого элемента ИЛИ - НЕ соединен с четвертыми входами первого элемента И и пятого элемента ИЛИ - НЕ и вторым входом пятого элемента И, выход которого и выходы с второго по четвертый элементов И соединены с входами элемента ИЛИ, выход которого является четвертым выходом блока, первым выходом которого является выход шестого элемента И, первый вход которого соединен с выходом пятого элемента ИЛИ - НЕ, а второй вход является управляющим входом блока, третьим выходом которого является выход первого элемента И. 2. The decoder according to claim 1, characterized in that the mode selection block is made up of six AND elements, an OR element, and five OR elements - NOT, inputs from the first to fourth elements OR - are NOT corresponding groups of information inputs of the block, the output of the first OR element - NOT connected to the first input of the fifth OR element - NOT and the first inputs from the first to third AND elements, the output of the second element OR - NOT connected to the second input of the fifth OR element - NOT, the second inputs of the first and second AND elements, the first inputs of the fourth and fifth elements and is the second output of the block, the output of the third element OR is NOT connected to the third inputs of the fifth element OR is NOT the first element AND and the second inputs of the third fourth elements AND the output of the fourth element is NOT connected to the fourth inputs of the first element AND and the fifth element OR - NOT and the second input of the fifth AND element, whose output and the outputs from the second to fourth AND elements are connected to the inputs of the OR element, the output of which is the fourth output of the block, the first output of which is the output of the sixth AND element, the first input coupled to an output element of the fifth or - and the second input is a control input of unit, third output which is the output of first I. 3. Декодер по п.1, отличающийся тем, что вычислитель поправок содержит арифметико-логический узел, первый и второй блоки переключений, четыре регистра и блок управления и синхронизации, входы с первого по третий которого являются соответственно первым, вторым управляющими входами и входом синхронизации вычислителя, группы информационных входов с первой по четвертую первого блока переключений являются соответствующими группами информационных входов вычислителя, а группы выходов с первой по восьмую соединены с соответствующими группами информационных входов арифметико-логического узла, первый и второй выходы которого являются соответствующими выходами вычислителя, первая группа выходов блока управления и синхронизации соединена с соответствующими управляющими входами арифметико-логического узла, группы выходов которого с первой по четвертую соединены с соответствующими группами информационных входов второго блока переключений, группы выходов которого с первой по четвертую соединены с информационными входами регистров соответственно с первого по четвертый, вторая и третья группы выходов блока управления и синхронизации соединены с управляющими входами соответственно первого и второго блоков переключений, выходы блока управления и синхронизации с первого по четвертый соединены с входами синхронизации соответствующих регистров, выходы которых соединены с группами информационных входов соответственно с пятой по восьмую первого блока переключений и являются соответственно третьей, четвертой, первой и второй группами выходов вычислителя. 3. The decoder according to claim 1, characterized in that the amendment calculator comprises an arithmetic-logical unit, first and second switching units, four registers and a control and synchronization unit, the first to third inputs of which are the first, second control inputs and the synchronization input, respectively of the calculator, the groups of information inputs from the first to the fourth of the first switching block are the corresponding groups of information inputs of the calculator, and the groups of outputs from the first to eighth are connected to the corresponding groups the information inputs of the arithmetic-logical unit, the first and second outputs of which are the corresponding outputs of the calculator, the first group of outputs of the control and synchronization unit is connected to the corresponding control inputs of the arithmetic-logical node, the groups of outputs of which are connected from the first to the fourth with the corresponding groups of information inputs of the second switching unit , the output groups of which from the first to the fourth are connected to the information inputs of the registers, respectively, from the first to the fourth, second the first and third groups of outputs of the control and synchronization unit are connected to the control inputs of the first and second switching units, the outputs of the control and synchronization units from first to fourth are connected to the synchronization inputs of the corresponding registers, the outputs of which are connected to the groups of information inputs, respectively, from fifth to eighth of the first block switching and are respectively the third, fourth, first and second groups of outputs of the calculator. 4. Декодер по п. 3, отличающийся тем, что арифметико-логический узел выполнен на четырех перемножителях, трех сумматорах, трех блоках возведения в квадрат, блоке возведения в четвертую степень, блоке умножения на матрицу, блоке равнозначности, пяти переключателях, информационные входы первого блока возведения в квадрат, первая и вторая группы входов первого перемножителя, информационные входы которого блока возведения в квадрат и первые группы информационных входов первого и второго переключателей являются соответственно с первой по шестую группами информационных входов узла, выходы первого блока возведения в квадрат и первого перемножителя соединены соответственно с первой и второй группами информационных входов первого сумматора, выходы которого подключены к первым группам входов блока равнозначности и второго перемножителя и являются первой группой выходов узла, выходы второго блока возведения в квадрат соединены с второй группой информационных входов первого переключателя и информационными входами третьего блока возведения в квадрат, выходы первого и второго переключателей соединены с первой и второй группами входов третьего перемножителя, выходы которого соединены с первой группой информационных входов второго сумматора и входами блока возведения в четвертую степень, выходы которого соединены с первой группой информационных входов третьего переключателя, выходы третьего блока возведения в квадрат соединены с второй группой информационных входов второго переключателя, первой группой информационных входов четвертого переключателя и второй группой информационных входов второго сумматора, выходы которого подключены к второй группе информационных входов третьего переключателя, второй группе входов блока равнозначности и являются четвертой группой выходов узла, выходы третьего и четвертого переключателей соединены с первой и второй группами входов четвертого перемножителя, выходы которого соединены с первыми группами информационных входов третьего сумматора и пятого переключателя, выходы которого соединены с второй группой входов второго перемножителя, выходы которого соединены с второй группой информационных входов третьего сумматора и информационными входами блока умножения на матрицу, старший разряд выходов второго перемножителя является первым выходом узла, вторым выходом которого является выход блока равнозначности, а вторые группы информационных входов четвертого и пятого переключателей являются соответственно седьмой и восьмой группами информационных входов узла, управляющими входами которого являются управляющие входы всех блоков возведения в квадрат, блока умножения на матрицу, всех сумматоров и переключателей, а выходы блока умножения на матрицу и третьего сумматора являются соответственно второй и третьей группами выходов узла. 4. The decoder according to claim 3, characterized in that the arithmetic-logical unit is made up of four multipliers, three adders, three squaring blocks, a fourth degree block, a matrix multiplication block, an equivalence block, five switches, information inputs of the first squaring unit, the first and second groups of inputs of the first multiplier, the information inputs of which squaring unit and the first groups of information inputs of the first and second switches are respectively from the first to group of information inputs of the node, the outputs of the first squaring block and the first multiplier are connected respectively to the first and second groups of information inputs of the first adder, the outputs of which are connected to the first groups of inputs of the equivalence block and the second multiplier and are the first group of node outputs, the outputs of the second block of erection squared connected to the second group of information inputs of the first switch and information inputs of the third squaring unit, the outputs of the first and second switches connected to the first and second groups of inputs of the third multiplier, the outputs of which are connected to the first group of information inputs of the second adder and the inputs of the fourth degree block, the outputs of which are connected to the first group of information inputs of the third switch, the outputs of the third square block are connected to the second group information inputs of the second switch, the first group of information inputs of the fourth switch and the second group of information inputs of the second sum RA, the outputs of which are connected to the second group of information inputs of the third switch, the second group of inputs of the equivalence block and are the fourth group of outputs of the node, the outputs of the third and fourth switches are connected to the first and second groups of inputs of the fourth multiplier, the outputs of which are connected to the first groups of information inputs of the third adder and a fifth switch, the outputs of which are connected to the second group of inputs of the second multiplier, the outputs of which are connected to the second group of information inputs ode of the third adder and the information inputs of the matrix-multiplying block, the highest bit of the outputs of the second multiplier is the first output of the node, the second output of which is the output of the equivalence block, and the second groups of information inputs of the fourth and fifth switches are the seventh and eighth groups of information inputs of the node, which control inputs which are the control inputs of all squaring blocks, the matrix multiplication block, all adders and switches, and the outputs of the mind block dix the matrix and of the third adder are respectively the second and third groups of node outputs.
RU93049111A 1993-10-18 1993-10-18 Error-correcting decoder RU2054224C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU93049111A RU2054224C1 (en) 1993-10-18 1993-10-18 Error-correcting decoder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU93049111A RU2054224C1 (en) 1993-10-18 1993-10-18 Error-correcting decoder

Publications (2)

Publication Number Publication Date
RU2054224C1 true RU2054224C1 (en) 1996-02-10
RU93049111A RU93049111A (en) 1997-04-10

Family

ID=20148548

Family Applications (1)

Application Number Title Priority Date Filing Date
RU93049111A RU2054224C1 (en) 1993-10-18 1993-10-18 Error-correcting decoder

Country Status (1)

Country Link
RU (1) RU2054224C1 (en)

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Авторское свидетельство СССР N 1432786, кл. H 03M 13/00, 1988. Авторское свидетельство СССР N 1290540, кл. H 03M 13/08, 1987 (прототип). *

Similar Documents

Publication Publication Date Title
US5343481A (en) BCH error-location polynomial decoder
US6029186A (en) High speed calculation of cyclical redundancy check sums
US5440570A (en) Real-time binary BCH decoder
US5699368A (en) Error-correcting encoder, error-correcting decoder, and data transmitting system with error-correcting codes
US6026420A (en) High-speed evaluation of polynomials
US4165444A (en) Apparatus for electronic encypherment of digital data
US5694330A (en) Error correction method including erasure correction, and apparatus therefor
US5912905A (en) Error-correcting encoder, error-correcting decoder and data transmitting system with error-correcting codes
US4677623A (en) Decoding method and apparatus for cyclic codes
US5805617A (en) Apparatus for computing error correction syndromes
Kwon et al. An area-efficient VLSI architecture of a Reed-Solomon decoder/encoder for digital VCRs
US7089276B2 (en) Modular Galois-field subfield-power integrated inverter-multiplier circuit for Galois-field division over GF(256)
EP0034036A2 (en) Encoders and decoders for cyclic block codes
US8103943B2 (en) Symbol reconstruction in Reed-Solomon codes
JPH0728227B2 (en) Decoding device for BCH code
US4488302A (en) Burst error correction using cyclic block codes
US5890800A (en) Method and device for the division of elements of a Galois field
US5964826A (en) Division circuits based on power-sum circuit for finite field GF(2m)
US3781791A (en) Method and apparatus for decoding bch codes
US20080140740A1 (en) Systems and methods for processing data sets in parallel
RU2054224C1 (en) Error-correcting decoder
US4298981A (en) Decoding shortened cyclic block codes
CN100459438C (en) Reed-solomon decoder key equation and error value solving-optimizing circuit
JP3343857B2 (en) Decoding device, arithmetic device, and methods thereof
US6138133A (en) Circuit for calculating the inverse of an arbitrary element of a finite field