RU2541869C1 - Reed-solomon code decoder - Google Patents

Reed-solomon code decoder Download PDF

Info

Publication number
RU2541869C1
RU2541869C1 RU2013145270/08A RU2013145270A RU2541869C1 RU 2541869 C1 RU2541869 C1 RU 2541869C1 RU 2013145270/08 A RU2013145270/08 A RU 2013145270/08A RU 2013145270 A RU2013145270 A RU 2013145270A RU 2541869 C1 RU2541869 C1 RU 2541869C1
Authority
RU
Russia
Prior art keywords
inputs
outputs
block
galois field
elements
Prior art date
Application number
RU2013145270/08A
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 RU2013145270/08A priority Critical patent/RU2541869C1/en
Application granted granted Critical
Publication of RU2541869C1 publication Critical patent/RU2541869C1/en

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Abstract

FIELD: radio engineering, communication.
SUBSTANCE: device comprises data buffer memory, a syndrome computing unit, a Galois processor, a discrete Fourier transform unit, an error position search unit, a symbol position sorting unit, an error value computing unit, a first Galois field element adder.
EFFECT: high efficiency of error correction owing to correction of two additional errors beyond the boundary of half the minimum distance using relaxed solutions.
10 dwg

Description

Изобретение относится к системам телекоммуникаций и вычислительной техники и может найти применение в устройствах приема информации из канала передачи или воспроизведения информации с высоким уровнем ошибок.The invention relates to telecommunication systems and computer technology and may find application in devices for receiving information from a transmission channel or reproducing information with a high level of errors.

В настоящее время на практике применяются устройства декодирования кодов Рида-Соломона (PC-кодов), реализующие классические алгоритмы декодирования (Питерсона-Горенстейна-Цирлера, Берлекэмпа-Месси, Евклида), позволяющие исправлять не более tC ошибочных символов в кодовом слове ( t С = ( d 1 ) / 2 ,

Figure 00000001
d - минимальное кодовое расстояние).Currently, in practice, Reed-Solomon code decoding devices (PC-codes) are used that implement the classical decoding algorithms (Peterson-Gorenstein-Zirler, Berlekamp-Messi, Euclid) that allow correcting no more than t C erroneous characters in the codeword ( t FROM = ( d - one ) / 2 ,
Figure 00000001
d is the minimum code distance).

Известно устройство декодирования, реализующее алгебраический алгоритм декодирования кодов Рида-Соломона, используя мягкие решения (см. патент 6634007 США. МПК7 H03M 13/00. Algebraic Soft-Decision Decoding of Reed-Solomon codes. / Ralf Koetter, Alexander Vardy. - Заявлено 23.01.2000 N 09/602914; опубл. 14.10.2003), содержащее: блок повторного кодирования, блок интерполяции, блок факторизации, блок выборки точек интерполяции и селектор.A decoding device is known that implements the algebraic algorithm for decoding Reed-Solomon codes using soft solutions (see U.S. Patent 6634007. IPC 7 H03M 13/00. Algebraic Soft-Decision Decoding of Reed-Solomon codes. / Ralf Koetter, Alexander Vardy. - Stated 01/23/2000 N 09/602914; publ. 10/14/2003), comprising: a re-coding unit, an interpolation unit, a factorization unit, a block for selecting interpolation points and a selector.

Алгоритм работы устройства состоит в следующем: используя оценки надежностей символов принятого кодового слова, вычисляется матрица М, которая определяет интерполяционные точки и их кратность; выполняется процедура интерполяции для нахождения полинома QM(X,Y); в полиноме QM(X,Y) выделяются сомножители вида Y-f(X); из полиномов f(X) реконструируются кодовые слова; наиболее вероятное из них выбирается как результат работы алгоритма.The algorithm of the device is as follows: using estimates of the reliability of the characters of the received code word, the matrix M is calculated, which determines the interpolation points and their multiplicity; the interpolation procedure is performed to find the polynomial Q M (X, Y); in the polynomial Q M (X, Y), factors of the form Yf (X) are distinguished; codewords are reconstructed from polynomials f (X); the most probable of them is selected as a result of the algorithm.

Недостатком данного устройства является его сложность, обусловленная сложностью реализации процедур интерполяции и факторизации многочленов больших степеней.The disadvantage of this device is its complexity, due to the complexity of the implementation of the procedures for interpolation and factorization of polynomials of large degrees.

Наиболее близким по технической сущности к заявляемому изобретению является выбранное в качестве прототипа устройство декодирования кодов Рида-Соломона (см. патент 2441318 РФ. МКИ H03M 13/45. Устройство декодирования кодов Рида-Соломона. / С.И. Егоров, О.Б. Графов. - №2010134469/08, заявл. 17.08.2010; опубл. 27.01.12, Бюл. №3), позволяющее исправить одну дополнительную ошибку за границей половины минимального кодового расстояния с использованием мягких решений.The closest in technical essence to the claimed invention is the reed-Solomon code decoding device selected as a prototype (see RF patent 2441318. MKI H03M 13/45. Reed-Solomon code decoding device. / S.I. Egorov, O.B. Grafov. - No.2010134469 / 08, announced August 17, 2010; published on January 27, 12, Bull. No. 3), which allows one additional error to be fixed beyond the half of the minimum code distance using soft solutions.

Устройство-прототип содержит: буферную память данных, блок вычисления синдромов, блок сортировки позиций символов, процессор Галуа, блок дискретного преобразования Фурье, блок поиска позиций ошибок и блок вычисления значений ошибок.The prototype device contains: a buffer data memory, a unit for computing syndromes, a unit for sorting character positions, a Galois processor, a unit for discrete Fourier transform, a unit for finding error positions, and a unit for computing error values.

Недостатком прототипа является относительно невысокая корректирующая способность устройства.The disadvantage of the prototype is the relatively low corrective ability of the device.

Технической задачей изобретения является повышение эффективности исправления ошибок за счет исправления двух дополнительных ошибок за границей половины минимального расстояния с использованием мягких решений.An object of the invention is to increase the efficiency of error correction by correcting two additional errors abroad half the minimum distance using soft solutions.

Поставленная техническая задача решается тем, что в устройство декодирования кодов Рида-Соломона, содержащее буферную память данных, блок вычисления синдромов, процессор Галуа, блок дискретного преобразования Фурье, блок поиска позиций ошибок, блок сортировки позиций символов, блок вычисления значений ошибок, первый сумматор элементов поля Галуа, причем входы буферной памяти данных и входы блока вычисления синдромов являются входами символов данных устройства декодирования кодов Рида-Соломона, выходы буферной памяти данных соединены с первыми входами первого сумматора элементов поля Галуа, выходы блока вычисления синдромов соединены с первыми входами процессора Галуа, первые выходы процессора Галуа соединены с первыми входами блока дискретного преобразования Фурье, вторые выходы процессора Галуа соединены со вторыми входами блока дискретного преобразования Фурье, третьи выходы процессора Галуа соединены с третьими входами блока дискретного преобразования Фурье, четвертые выходы процессора Галуа соединены с четвертыми входами блока поиска позиций ошибок, пятые выходы процессора Галуа соединены с первыми входами блока вычисления значений ошибок, шестые выходы процессора Галуа соединены со вторыми входами блока вычисления значений ошибок, седьмые выходы процессора Галуа соединены с третьими входами блока вычисления значений ошибок, вторые выходы блока дискретного преобразования Фурье соединены с третьими входами процессора Галуа, третьи выходы блока дискретного преобразования Фурье соединены с четвертыми входами процессора Галуа, четвертые выходы блока дискретного преобразования Фурье соединены с первыми входами блока поиска позиций ошибок, пятый выход блока дискретного преобразования Фурье соединен со вторым входом блока поиска позиций ошибок, шестые выходы блока дискретного преобразования Фурье соединены с третьими входами блока поиска позиций ошибок, первые выходы блока поиска позиций ошибок соединены с пятыми входами процессора Галуа, вторые выходы блока поиска позиций ошибок соединены со вторыми входами блока сортировки позиций символов, выходы блока вычисления значений ошибок соединены со вторыми входами первого сумматора элементов поля Галуа, выходы первого сумматора элементов поля Галуа являются выходами данных устройства декодирования кодов Рида-Соломона, первые входы блока сортировки позиций символов являются входами оценок надежности символов данных устройства декодирования кодов Рида-Соломона, первые выходы блока дискретного преобразования Фурье соединены с третьими входами блока сортировки позиций символов, первые выходы блока сортировки позиций символов соединены со вторыми входами процессора Галуа, вторые выходы блока сортировки позиций символов соединены с пятыми входами блока поиска позиций ошибок, причем блок поиска позиций ошибок содержит первый блок вычисления невязок, второй блок вычисления невязок, первый блок подсчета невязок, второй блок подсчета невязок, первый коммутатор, первый регистр-защелку, блок памяти коэффициентов, первое местное устройство управления, причем первые входы первого местного устройства управления являются четвертыми входами блока поиска позиций ошибок, вторые входы первого местного устройства управления и первые входы блока памяти коэффициентов являются пятыми входами блока поиска позиций ошибок, третьи входы блока поиска позиций ошибок являются младшими разрядами вторых входов блока памяти коэффициентов, первые входы блока поиска позиций ошибок являются средними разрядами вторых входов блока памяти коэффициентов, второй вход блока поиска позиций ошибок является старшим разрядом вторых входов блока памяти коэффициентов, младшие разряды первых выходов блока памяти коэффициентов соединены с первыми входами первого блока вычисления невязок и с первыми входами второго блока вычисления невязок, средние разряды первых выходов блока памяти коэффициентов соединены с третьими входами первого блока вычисления невязок и с третьими входами второго блока вычисления невязок, старший разряд первых выходов блока памяти коэффициентов соединен с пятым входом первого блока вычисления невязок и с пятым входом второго блока вычисления невязок, младшие разряды вторых выходов блока памяти коэффициентов соединены со вторыми входами первого блока вычисления невязок и со вторыми входами второго блока вычисления невязок, средние разряды вторых выходов блока памяти коэффициентов соединены с четвертыми входами первого блока вычисления невязок и с четвертыми входами второго блока вычисления невязок, старший разряд вторых выходов блока памяти коэффициентов соединен с шестым входом первого блока вычисления невязок и с шестым входом второго блока вычисления невязок, первый выход первого блока вычисления невязок соединен с четвертым входом первого блока подсчета невязок, вторые выходы первого блока вычисления невязок соединены с третьими входами первого блока подсчета невязок, третий выход первого блока вычисления невязок соединен с третьим входом первого местного устройства управления, первый выход первого блока подсчета невязок соединен с пятым входом первого местного устройства управления, вторые выходы первого блока подсчета невязок соединены с первыми входами первого коммутатора, третий выход второго блока вычисления невязок соединен с четвертым входом первого местного устройства управления, вторые выходы второго блока вычисления невязок соединены с третьими входами второго блока подсчета невязок, первый выход второго блока вычисления невязок соединен с четвертым входом второго блока подсчета невязок, вторые выходы второго блока подсчета невязок соединены со вторыми входами первого коммутатора, первый выход второго блока подсчета невязок соединен с шестым входом первого местного устройства управления, третий выход первого местного устройства управления соединен с седьмым входом первого блока вычисления невязок, четвертые выходы первого местного устройства управления соединены с восьмыми входами первого блока вычисления невязок, пятые выходы первого местного устройства управления соединены с девятыми входами первого блока вычисления невязок, шестые выходы первого местного устройства управления соединены с четвертыми входами блока памяти коэффициентов, седьмые выходы первого местного устройства управления соединены с третьими входами блока памяти коэффициентов, восьмые выходы первого местного устройства управления соединены со вторыми входами первого блока подсчета невязок, девятый выход первого местного устройства управления соединен с первым входом первого блока подсчета невязок, десятый выход первого местного устройства управления соединен с пятым входом первого блока подсчета невязок, одиннадцатый выход первого местного устройства управления соединен со вторым входом первого регистра-защелки, двенадцатый выход первого местного устройства управления соединен с третьим входом первого коммутатора, тринадцатый выход первого местного устройства управления соединен с пятым входом второго блока подсчета невязок, четырнадцатый выход первого местного устройства управления соединен с первым входом второго блока подсчета невязок, пятнадцатые выходы первого местного устройства управления соединены со вторыми входами второго блока подсчета невязок, шестнадцатые выходы первого местного устройства управления соединены с девятыми входами второго блока вычисления невязок, семнадцатые выходы первого местного устройства управления соединены с восьмыми входами второго блока вычисления невязок, восемнадцатый выход первого местного устройства управления соединен с седьмым входом второго блока вычисления невязок, девятнадцатые выходы первого местного устройства управления соединены с шестыми входами второго блока подсчета невязок, двадцатые выходы первого местного устройства управления соединены с шестыми входами первого блока подсчета невязок, первые выходы первого местного устройства управления являются вторыми выходами блока поиска позиций ошибок, вторые выходы первого местного устройства управления являются первыми выходами блока поиска позиций ошибок, выходы первого коммутатора соединены с первыми входами первого регистра-защелки, выходы первого регистра-защелки соединены с десятыми входами первого блока вычисления невязок и десятыми входами второго блока вычисления невязок, причем блок вычисления невязок содержит третий сумматор элементов поля Галуа, первый инвертор элементов поля Галуа, первую схему сравнения кодов, селектор нулевого элемента поля Галуа, первый логический элемент И, логический элемент ИЛИ-НЕ, одиннадцатый перемножитель элементов поля Галуа, причем первые входы первой схемы сравнения кодов являются десятыми входами блока вычисления невязок, выход первой схемы сравнения кодов соединен с первым входом первого логического элемента И, выход логического элемента ИЛИ-НЕ соединен со вторым входом первого логического элемента И и является первым выходом блока вычисления невязок, выходы первого инвертора элементов поля Галуа соединены с первыми входами одиннадцатого перемножителя элементов поля Галуа, выход первого логического элемента И является третьим выходом блока вычисления невязок, выходы одиннадцатого перемножителя элементов поля Галуа соединены со вторыми входами первой схемы сравнения кодов и являются вторыми выходами блока вычисления невязок, согласно изобретению в блок вычисления невязок введены блок произведений дробей Ri, блок произведений коэффициентов Ai, второй, третий и четвертый коммутаторы, второй и четвертый сумматоры элементов поля Галуа, первый, второй, третий, четвертый, пятый, шестой, седьмой, восьмой, девятый и десятый перемножители элементов поля Галуа, причем первые входы блока произведений коэффициентов Ai являются первыми входами блока вычисления невязок, вторые входы блока произведений коэффициентов Ai являются вторыми входами блока вычисления невязок, первые входы блока произведений дробей Ri являются третьими входами блока вычисления невязок, вторые входы блока произведений дробей Ri являются четвертыми входами блока вычисления невязок, третий вход блока произведений дробей Ri является пятым входом блока вычисления невязок, четвертый вход блока произведений дробей Ri является шестым входом блока вычисления невязок, третий вход блока произведений коэффициентов Ai соединен с шестым входом блока произведений дробей Ri и является седьмым входом блока вычисления невязок, четвертые входы блока произведений коэффициентов Ai соединены с седьмыми входами блока произведений дробей Ri и являются восьмыми входами блока вычисления невязок, пятые входы блока произведений дробей Ri соединены с девятыми входами второго коммутатора, восьмыми входами третьего коммутатора, восьмыми входами четвертого коммутатора и являются девятыми входами блока вычисления невязок, первые выходы блока произведений дробей Ri соединены с первым входами третьего сумматора элементов поля Галуа и первыми входам седьмого перемножителя элементов поля Галуа, вторые выходы блока произведений дробей Ri соединены со вторыми входами третьего сумматора элементов поля Галуа и первыми входами восьмого перемножителя элементов поля Галуа, третьи выходы блока произведений дробей Ri соединены с первыми входами девятого перемножителя элементов поля Галуа, четвертые выходы блока произведений дробей Ri соединены с первыми входами десятого перемножителя элементов поля Галуа, пятые выходы блока произведений дробей Ri соединены с первыми входами первого перемножителя элементов поля Галуа, шестые выходы блока произведений дробей Ri соединены с первыми входами второго перемножителя элементов поля Галуа, седьмые выходы блока Ri соединены с первым входами третьего перемножителя элементов поля Галуа, восьмые выходы блока произведений дробей Ri соединены с первыми входами четвертого перемножителя элементов поля Галуа, девятые выходы блока произведений дробей Ri соединены со вторыми входами пятого перемножителя элементов поля Галуа, десятые выходы блока произведений дробей Ri соединены с первыми входами шестого перемножителя элементов поля Галуа, одиннадцатый выход блока произведений дробей Ri соединен с первым входом логического элемента ИЛИ-НЕ, первые выходы блока произведений коэффициентов Ai соединены со вторыми входами первого перемножителя элементов поля Галуа и вторыми входами шестого перемножителя элементов поля Галуа, вторые выходы блока коэффициентов Ai соединены со вторыми входами второго перемножителя элементов поля Галуа и первыми входами пятого перемножителя элементов поля Галуа, третьи выходы блока коэффициентов Ai соединены со вторыми входами третьего перемножителя элементов поля Галуа и вторыми входами четвертого перемножителя элементов поля Галуа, четвертые выходы блока коэффициентов Ai соединены с первыми входами второго коммутатора, пятые выходы блока коэффициентов Ai соединены со вторыми входами второго коммутатора, шестые выходы блока коэффициентов Ai соединены с третьими входами второго коммутатора, седьмые выходы блока коэффициентов Ai соединены с четвертыми входами второго коммутатора и пятыми входами третьего коммутатора, восьмые выходы блока коэффициентов Ai соединены с четвертыми входами третьего коммутатора и третьими входами четвертого коммутатора, девятые выходы блока произведений коэффициентов Ai соединены с седьмыми входами второго коммутатора, седьмыми входами третьего коммутатора и шестыми входами четвертого коммутатора, десятые выходы блока коэффициентов Ai соединены с шестыми входами второго коммутатора, одиннадцатые выходы блока коэффициентов Ai соединены с пятыми входами второго коммутатора, на восьмые входы второго коммутатора подается константа - нулевой символ конечного поля, первые выходы второго коммутатора соединены со вторыми входами седьмого перемножителя элементов поля Галуа, вторые выходы второго коммутатора соединены со вторыми входами восьмого перемножителя элементов поля Галуа, третьи выходы второго коммутатора соединены со вторыми входами девятого перемножителя элементов поля Галуа, четвертые выходы второго коммутатора соединены со вторыми входами десятого перемножителя элементов поля Галуа, выходы первого перемножителя элементов поля Галуа соединены с первыми входами второго сумматора элементов поля Галуа, выходы второго перемножителя элементов поля Галуа соединены со вторыми входами второго сумматора элементов поля Галуа, выходы третьего перемножителя элементов поля Галуа соединены с третьими входами второго сумматора элементов поля Галуа, выходы четвертого перемножителя элементов поля Галуа соединены с четвертыми входами второго сумматора элементов поля Галуа, выходы пятого перемножителя элементов поля Галуа соединены с пятыми входами второго сумматора элементов поля Галуа, выходы шестого перемножителя элементов поля Галуа соединены с шестыми входами второго сумматора элементов поля Галуа, выходы второго сумматора элементов поля Галуа соединены с первыми входам третьего коммутатора и вторыми входами четвертого коммутатора, выходы третьего сумматора элементов поля Галуа соединены с шестыми входами третьего коммутатора и седьмыми входами четвертого коммутатора, выходы седьмого перемножителя элементов поля Галуа соединены с первыми входами четвертого сумматора элементов поля Галуа, выходы восьмого перемножителя элементов поля Галуа соединены со вторыми входами четвертого сумматора элементов поля Галуа, выходы девятого перемножителя элементов поля Галуа соединены с третьими входами четвертого сумматора элементов поля Галуа, выходы десятого перемножителя элементов поля Галуа соединены с четвертыми входами четвертого сумматора элементов поля Галуа, выходы четвертого сумматора элементов поля Галуа соединены с первыми, четвертыми и пятыми входами четвертого коммутатора и вторыми и третьими входами третьего коммутатора, выходы третьего коммутатора соединены со входами селектора нулевого элемента поля Галуа и входами первого инвертора элементов поля Галуа, выход селектора нулевого элемента поля Галуа соединен со вторым входом логического элемента ИЛИ-НЕ, выходы четвертого коммутатора соединены со вторыми входами одиннадцатого перемножителя элементов поля Галуа, причем блок произведений дробей Ri содержит пятый, шестой и седьмой коммутаторы, первый, второй, третий и четвертый регистры Rg1, первый-десятый блоки вентилей, двенадцатый-семнадцатый перемножители элементов поля Галуа, вторую схему сравнения кодов, схему формирования веса, причем первые входы пятого коммутатора являются первыми входами блока произведений дробей Ri, вторые входы пятого коммутатора являются вторыми входами блока произведений дробей Ri, третий вход пятого коммутатора соединен с третьим входом шестого коммутатора и является шестым входом блока произведений дробей Ri, первый вход шестого коммутатора является третьим входом блока произведений дробей Ri, второй вход шестого коммутатора является четвертым входом блока произведений дробей Ri, выходы пятого коммутатора соединены с первыми входами первого, второго, третьего и четвертого регистров Rg1, выход шестого коммутатора соединен со вторыми входами первого, второго, третьего и четвертого регистров Rg1, третьи входы первого, второго, третьего и четвертого регистров Rg1 являются седьмыми входами блока произведений дробей Ri, первые выходы первого регистра Rg1 соединены с четвертыми входами четвертого блока вентилей и вторыми входами пятнадцатого, шестнадцатого и семнадцатого перемножителей элементов поля Галуа, второй выход первого регистра Rg1 соединен с третьими входами первого, второго, третьего блоков вентилей, первым входом схемы формирования веса и первыми входами пятого, шестого и седьмого блоков вентилей, первые выходы второго регистра Rg1 соединены со вторыми входами тринадцатого и четырнадцатого перемножителей элементов поля Галуа, четвертыми входами третьего блока вентилей и первыми входами семнадцатого перемножителя элементов поля Галуа, второй выход второго регистра Rg1 соединен со вторыми входами первого, второго и пятого блока вентилей, третьим входом четвертого блока вентилей, первыми входами восьмого и девятого блоков вентилей и четвертым входом схемы формирования веса, первые выходы третьего регистра Rg1 соединены со вторыми входами двенадцатого перемножителя, четвертыми входами второго блока вентилей и первыми входами четырнадцатого и шестнадцатого перемножителей элементов поля Галуа, второй выход третьего регистра Rg1 соединен с первым входом первого блока вентилей, вторыми входами третьего, четвертого, шестого и восьмого блоков вентилей, первым входом десятого блока вентилей и третьим входом схемы формирования веса, первые выходы четвертого регистра Rg1 соединены с четвертыми входами первого блока вентилей, первыми входами двенадцатого, тринадцатого и пятнадцатого перемножителей элементов поля Галуа, второй выход четвертого регистра Rg1 соединен с первыми входами второго, третьего и четвертого блоков вентилей, вторыми входами седьмого, девятого и десятого блоков вентилей и вторым входом схемы формирования веса, выходы двенадцатого перемножителя элементов поля Галуа соединены с третьими входами пятого блока вентилей, выходы тринадцатого перемножителя элементов поля Галуа соединены с третьими входами шестого блока вентилей, выходы четырнадцатого перемножителя элементов поля Галуа соединены с третьими входами седьмого блока вентилей, выходы пятнадцатого перемножителя элементов поля Галуа соединены с третьими входами восьмого блока вентилей, выходы шестнадцатого перемножителя элементов поля Галуа соединены с третьими входами девятого блока вентилей, выходы семнадцатого перемножителя элементов поля Галуа соединены с третьими входами десятого блока вентилей, на первые входы седьмого коммутатора подается константа '1', на вторые входы седьмого коммутатора подается константа '0', третьи входы седьмого коммутатора являются пятыми входами блока произведений дробей Ri, выходы седьмого коммутатора соединены с первыми входами второй схемы сравнения кодов, выходы схемы формирования веса соединены со вторыми входами второй схемы сравнения кодов, выходы первого блока вентилей являются первыми выходами блока произведений дробей Ri, выходы второго блока вентилей являются вторыми выходами блока произведений дробей Ri, выходы третьего блока вентилей являются третьими выходами блока произведений дробей Ri, выходы четвертого блока вентилей являются четвертыми выходами блока произведений дробей Ri, выходы пятого блока вентилей являются пятыми выходами блока произведений дробей Ri, выходы шестого блока вентилей являются шестыми выходами блока произведений дробей Ri, выходы седьмого блока вентилей являются седьмыми выходами блока произведений дробей Ri, выходы восьмого блока вентилей являются восьмыми выходами блока произведений дробей Ri, выходы девятого блока вентилей являются девятыми выходами блока произведений дробей Ri, выходы десятого блока вентилей являются десятыми выходами блока произведений дробей Ri, выход второй схемы сравнения кодов является одиннадцатым выходом блока произведений дробей Ri, причем блок произведений коэффициентов Ai содержит восьмой коммутатор, второй, третий, четвертый и пятый регистры-защелки, пятый-десятый сумматоры элементов поля Галуа, восемнадцатый-двадцать пятый перемножители элементов поля Галуа, причем первые входы восьмого коммутатора являются первыми входами блока произведений коэффициентов Ai, вторые входы восьмого коммутатора являются вторыми входами блока произведений коэффициентов Ai, третий вход восьмого коммутатора является третьим входом блока произведений коэффициентов Ai, вторые входы второго, третьего, четвертого и пятого регистров-защелок являются разрядами четвертых входов блока произведений коэффициентов Ai, выходы восьмого коммутатора соединены с первыми входами второго, третьего, четвертого и пятого регистров-защелок, выходы второго регистра-защелки соединены с первыми входами пятого, шестого и восьмого сумматоров элементов поля Галуа, выходы третьего регистра-защелки соединены со вторыми входами пятого сумматора элементов поля Галуа и первыми входами седьмого и девятого сумматоров элементов поля Галуа, выходы четвертого регистра-защелки соединены с первыми входами десятого сумматора элементов поля Галуа и вторыми входами шестого и седьмого сумматоров элементов поля Галуа, выходы пятого регистра-защелки соединены со вторыми входами восьмого, девятого и десятого сумматоров элементов поля Галуа, выходы пятого сумматора элементов поля Галуа соединены с первыми входами восемнадцатого, двадцать третьего и двадцать четвертого перемножителей элементов поля Галуа и являются девятыми выходами блока произведений коэффициентов Ai, выходы шестого сумматора элементов поля Галуа соединены с первыми входами девятнадцатого и двадцать второго перемножителей элементов поля Галуа, вторыми входами двадцать четвертого перемножителя элементов поля Галуа и являются десятыми выходами блока произведений коэффициентов Ai, выходы седьмого сумматора элементов поля Галуа соединены с первыми входами двадцатого и двадцать первого перемножителей элементов поля Галуа, третьими входами двадцать четвертого перемножителя элементов поля Галуа и являются одиннадцатыми выходами блока произведений Ai, выходы восьмого сумматора элементов поля Галуа соединены со вторыми входами двадцатого, двадцать второго и двадцать третьего перемножителей элементов поля Галуа, выходы девятого сумматора элементов поля Галуа соединены со вторыми входами девятнадцатого и двадцать первого перемножителей элементов поля Галуа и третьими входами двадцать третьего перемножителя элементов поля Галуа, выходы десятого сумматора элементов поля Галуа соединены с третьими входами двадцать первого и двадцать второго перемножителей элементов поля Галуа и вторыми входами восемнадцатого перемножителя элементов поля Галуа, выходы восемнадцатого перемножителя элементов поля Галуа соединены с третьими входами двадцать пятого перемножителя элементов поля Галуа и являются первыми выходами блока произведений коэффициентов Ai, выходы девятнадцатого перемножителя элементов поля Галуа соединены со вторыми входами двадцать пятого перемножителя элементов поля Галуа и являются вторыми выходами блока произведений коэффициентов Ai, выходы двадцатого перемножителя элементов поля Галуа соединены с первыми входами двадцать пятого перемножителя элементов поля Галуа и являются третьими выходами блока произведений коэффициентов Ai, выходы двадцать первого перемножителя элементов поля Галуа являются четвертыми выходами блока произведений коэффициентов Ai, выходы двадцать второго перемножителя элементов поля Галуа являются пятыми выходами блока произведений коэффициентов Ai, выходы двадцать третьего перемножителя элементов поля Галуа являются шестыми выходами блока произведений коэффициентов Ai, выходы двадцать четвертого перемножителя элементов поля Галуа являются седьмыми выходами блока произведений коэффициентов Ai, выходы двадцать пятого перемножителя элементов поля Галуа являются восьмыми выходами блока произведений коэффициентов Ai.The stated technical problem is solved in that in a Reed-Solomon code decoding device containing a data buffer, a syndrome calculation unit, a Galois processor, a discrete Fourier transform unit, an error position search unit, a symbol position sorting unit, an error value calculation unit, a first element adder Galois fields, and the inputs of the data buffer memory and the inputs of the syndrome calculation unit are the data symbol inputs of the Reed-Solomon code decoding device, the outputs of the data buffer memory are connected with the first inputs of the first adder of the elements of the Galois field, the outputs of the syndrome calculation unit are connected to the first inputs of the Galois processor, the first outputs of the Galois processor are connected to the first inputs of the discrete Fourier transform, the second outputs of the Galois processor are connected to the second inputs of the discrete Fourier transform, third outputs of the Galois processor connected to the third inputs of the discrete Fourier transform unit, the fourth outputs of the Galois processor are connected to the fourth inputs of the unit for searching for error positions, heels the outputs of the Galois processor are connected to the first inputs of the error value calculation unit, the sixth outputs of the Galois processor are connected to the second inputs of the error value calculation unit, the seventh outputs of the Galois processor are connected to the third inputs of the error value calculation unit, the second outputs of the discrete Fourier transform unit are connected to the third inputs of the Galois processor , the third outputs of the discrete Fourier transform block are connected to the fourth inputs of the Galois processor, the fourth outputs of the discrete Fourier transform block are connected to the first inputs of the error position search unit, the fifth output of the discrete Fourier transform unit is connected to the second input of the error position search unit, the sixth outputs of the discrete Fourier transform unit are connected to the third inputs of the error position search unit, the first outputs of the error position search unit are connected to the fifth processor inputs Galois, the second outputs of the block for searching for error positions are connected to the second inputs of the block for sorting the positions of symbols, the outputs of the block for calculating error values are connected to the second inputs of of the first adder of Galois field elements, the outputs of the first adder of Galois field elements are the data outputs of the Reed-Solomon code decoding device, the first inputs of the character position sorting unit are inputs of the symbol reliability estimates of the Reed-Solomon code decoding device, the first outputs of the discrete Fourier transform unit are connected to the third inputs of the block for sorting symbol positions, the first outputs of the block for sorting symbol positions are connected to the second inputs of the Galois processor, second outputs of the sort block the positions of the symbol positions are connected to the fifth inputs of the error position search unit, the error position search unit comprising a first residual calculation unit, a second residual calculation unit, a first residual calculation unit, a second residual calculation unit, a first switch, a first latch register, a coefficient memory unit, a first local control device, the first inputs of the first local control device being the fourth inputs of the error position search unit, the second inputs of the first local control device and the first inputs of the coefficients memory are the fifth inputs of the error position search block, the third inputs of the error position search block are the lower bits of the second inputs of the coefficient memory block, the first inputs of the error position search block are the middle bits of the second inputs of the coefficient memory block, the second input of the error position search block is the highest bit second inputs of the coefficient memory block, the least significant bits of the first outputs of the coefficient memory block are connected to the first inputs of the first residual calculation block and from the first and the inputs of the second residuals calculator, the middle bits of the first outputs of the residuals calculator are connected to the third inputs of the first residuals calculator and the third inputs of the second residuals calculator, the highest bit of the first outputs of the residuals calculator is connected to the fifth input of the first residuals calculator and with the fifth input the second block of calculating residuals, the least significant bits of the second outputs of the block of coefficient memory are connected to the second inputs of the first block of calculating the residuals and to the second inputs of the second block and residual calculations, the middle bits of the second outputs of the coefficient memory block are connected to the fourth inputs of the first residual calculation block and to the fourth inputs of the second residual calculation block, the highest bit of the second outputs of the coefficient memory block is connected to the sixth input of the first residual calculation block and to the sixth input of the second calculation block residuals, the first output of the first residual calculation block is connected to the fourth input of the first residual calculation block, the second outputs of the first residual calculation block are connected to third they are the inputs of the first block of residuals, the third output of the first block of residuals is connected to the third input of the first local control device, the first output of the first block of residuals is connected to the fifth input of the first local control device, the second outputs of the first block of residuals are connected to the first inputs of the first switch, the third output of the second residual computing unit is connected to the fourth input of the first local control device, the second outputs of the second residual computing unit is connected to the third they are the inputs of the second block of residuals, the first output of the second block of residuals is connected to the fourth input of the second block of residuals, the second outputs of the second block of residuals are connected to the second inputs of the first switch, the first output of the second block of residuals is connected to the sixth input of the first local control device, the third output of the first local control device is connected to the seventh input of the first residual calculation unit, the fourth outputs of the first local control device are connected to the fifth inputs of the first local control device are connected to the ninth inputs of the first local calculator, the sixth outputs of the first local control unit are connected to the fourth inputs of the coefficient memory, the seventh outputs of the first local control device are connected to the third inputs of the coefficient memory, the eighth outputs of the first local control device are connected to the second inputs of the first residual counting unit, the ninth output of the first local control control device is connected to the first input of the first residual counting unit, the tenth output of the first local control device is connected to the fifth input of the first residual counting unit, the eleventh output of the first local control device is connected to the second input of the first register-latch, the twelfth output of the first local control device is connected to the third the input of the first switch, the thirteenth output of the first local control device is connected to the fifth input of the second residual counting unit, the fourteenth output is not the first local control unit is connected to the second inputs of the second residual unit, the sixteenth outputs of the first local control unit are connected to the ninth inputs of the second residual unit, the seventeenth outputs of the first local control unit are connected with eight inputs of the second residual calculation unit, the eighteenth output of the first local control device is connected to the seventh the input of the second residual calculation unit, the nineteenth outputs of the first local control device are connected to the sixth inputs of the second residual counting unit, the twentieth outputs of the first local control device are connected to the sixth inputs of the first residual calculation unit, the first outputs of the first local control device are the second outputs of the error position search unit, the second outputs of the first local control device are the first outputs of the error position search unit, the outputs of the first switch are connected to by the first inputs of the first register-latch, the outputs of the first register-latch are connected to the tenth inputs of the first block for calculating residuals and tenth inputs of the second block for calculating residuals, and the block for calculating residuals contains a third adder of Galois field elements, a first inverter of Galois field elements, a first code comparison circuit, selector of the zero element of the Galois field, the first logical element AND, the logical element OR-NOT, the eleventh multiplier of the elements of the Galois field, the first inputs of the first circuit comparing codes are ten by the inputs of the residual calculation block, the output of the first code comparison circuit is connected to the first input of the first logical element AND, the output of the logical element OR is NOT connected to the second input of the first logical element And is the first output of the residual calculation block, the outputs of the first inverter of the Galois field elements are connected to the first inputs of the eleventh multiplier of the elements of the Galois field, the output of the first logical element And is the third output of the block for calculating the residuals, the outputs of the eleventh multiplier of the elements of the field G alua are connected to the second inputs of the first code comparison circuit and are the second outputs of the residual computing unit, according to the invention, the fraction unit product R is introduced into the residual computing unit i , block of products of coefficients A i , second, third and fourth switches, second and fourth adders of Galois field elements, first, second, third, fourth, fifth, sixth, seventh, eighth, ninth and tenth multipliers of Galois field elements, the first inputs of the block of the product of coefficients A i are the first inputs of the block for calculating residuals, the second inputs of the block of products of coefficients A i are the second inputs of the block for calculating residuals, the first inputs of the block of products of fractions R i are the third inputs of the block for calculating residuals, the second inputs of the block of products of fractions R i are the fourth inputs of the block for calculating residuals, the third input of the block of fractions R i is the fifth input of the residual calculation block, the fourth input of the fraction product block R i is the sixth input of the residual calculation block, the third input of the block of coefficient products A i connected to the sixth input of the block of fractions R i and is the seventh input of the residual calculation block, the fourth inputs of the product block of coefficients A i connected to the seventh inputs of the block of products of fractions R i and are the eighth inputs of the residual calculation block, the fifth inputs of the fraction product block R i connected to the ninth inputs of the second switch, the eighth inputs of the third switch, the eighth inputs of the fourth switch and are the ninth inputs of the unit for calculating residuals, the first outputs of the unit of fractions R i connected to the first inputs of the third adder of the Galois field elements and the first inputs of the seventh multiplier of the Galois field elements, the second outputs of the fraction product block R i connected to the second inputs of the third adder of the elements of the Galois field and the first inputs of the eighth multiplier of the elements of the Galois field, the third outputs of the block of fractions R i connected to the first inputs of the ninth multiplier of elements of the Galois field, the fourth outputs of the block of fractions R i connected to the first inputs of the tenth multiplier of elements of the Galois field, the fifth outputs of the block of fractions R i connected to the first inputs of the first multiplier of the elements of the Galois field, the sixth outputs of the block of products of fractions R i connected to the first inputs of the second multiplier of the elements of the Galois field, the seventh outputs of the block R i connected to the first inputs of the third multiplier of the elements of the Galois field, the eighth outputs of the block of products of fractions R i connected to the first inputs of the fourth multiplier of the elements of the Galois field, the ninth outputs of the block of products of fractions R i connected to the second inputs of the fifth multiplier of the elements of the Galois field, the tenth outputs of the block of fractions of fractions R i connected to the first inputs of the sixth multiplier of the elements of the Galois field, the eleventh output of the block of fractions R i connected to the first input of the logic element OR NOT, the first outputs of the block of products of the coefficients A i connected to the second inputs of the first multiplier of Galois field elements and the second inputs of the sixth multiplier of Galois field elements, the second outputs of the coefficient block A i connected to the second inputs of the second multiplier of the elements of the Galois field and the first inputs of the fifth multiplier of the elements of the Galois field, the third outputs of the block of coefficients A i connected to the second inputs of the third multiplier of Galois field elements and the second inputs of the fourth multiplier of Galois field elements, the fourth outputs of the block of coefficients A i connected to the first inputs of the second switch, the fifth outputs of the block of coefficients A i connected to the second inputs of the second switch, the sixth outputs of the block of coefficients A i connected to the third inputs of the second switch, the seventh outputs of the block of coefficients A i connected to the fourth inputs of the second switch and the fifth inputs of the third switch, the eighth outputs of the block of coefficients A i connected to the fourth inputs of the third switch and the third inputs of the fourth switch, the ninth outputs of the block of products of the coefficients A i connected to the seventh inputs of the second switch, the seventh inputs of the third switch and the sixth inputs of the fourth switch, tenth outputs of the block of coefficients A i connected to the sixth inputs of the second switch, the eleventh outputs of the block of coefficients A i connected to the fifth inputs of the second switch, a constant is applied to the eighth inputs of the second switch, the zero symbol of the final field, the first outputs of the second switch are connected to the second inputs of the seventh multiplier of Galois field elements, the second outputs of the second switch are connected to the second inputs of the eighth Galois field multiplier, third outputs the second switch is connected to the second inputs of the ninth multiplier of the Galois field elements, the fourth outputs of the second switch are connected to the second inputs of the tenth a multiplier of Galois field elements, the outputs of the first multiplier of Galois field elements are connected to the first inputs of the second adder of Galois field elements, the outputs of the second multiplier of Galois field elements are connected to the second inputs of the second Galois field element adder, the outputs of the third Galois field element multiplier are connected to the third inputs of the second Galois field element Galois fields, the outputs of the fourth multiplier of the elements of the Galois field are connected to the fourth inputs of the second adder of the elements of the Galois field, the outputs of the fifth the Galois field element scissors are connected to the fifth inputs of the second Galois field element adder, the outputs of the sixth Galois field element multiplier are connected to the sixth inputs of the second Galois field element, the outputs of the second Galois field element adder are connected to the first inputs of the third switch and second inputs of the fourth switch, outputs of the third the adder of the Galois field elements are connected to the sixth inputs of the third switch and the seventh inputs of the fourth switch, the outputs of the seventh multiplier of the field elements Galois are connected to the first inputs of the fourth adder of Galois field elements, the outputs of the eighth Galois field element multiplier are connected to the second inputs of the fourth adder of Galois field elements, the outputs of the ninth galois field multiplier are connected to the third inputs of the fourth Galois field elements, the outputs of the tenth Galois field element multiplier are connected with fourth inputs of the fourth adder of Galois field elements, the outputs of the fourth adder of Galois field elements are connected to the first, fourth and fifth and the inputs of the fourth switch and the second and third inputs of the third switch, the outputs of the third switch are connected to the inputs of the selector of the zero element of the Galois field and the inputs of the first inverter of the elements of the Galois field, the output of the selector of the zero element of the Galois field is connected to the second input of the logic element OR-NOT, the outputs of the fourth switch connected to the second inputs of the eleventh multiplier of the elements of the Galois field, and the block of products of fractions R i contains the fifth, sixth and seventh switches, the first, second, third and fourth registers Rg1, the first to tenth valve blocks, the twelfth to seventeenth multipliers of Galois field elements, the second code comparison scheme, the weight generation scheme, the first inputs of the fifth switch being the first inputs of the block fractions R i , the second inputs of the fifth switch are the second inputs of the block of products of fractions R i , the third input of the fifth switch is connected to the third input of the sixth switch and is the sixth input of the block of fractions R i , the first input of the sixth switch is the third input of the block of fractions R i , the second input of the sixth switch is the fourth input of the block of fractions R i , the outputs of the fifth switch are connected to the first inputs of the first, second, third and fourth registers Rg1, the output of the sixth switch is connected to the second inputs of the first, second, third and fourth registers Rg1, the third inputs of the first, second, third and fourth registers Rg1 are the seventh inputs of the block fractions R i , the first outputs of the first register Rg1 are connected to the fourth inputs of the fourth valve block and the second inputs of the fifteenth, sixteenth and seventeenth multipliers of Galois field elements, the second output of the first register Rg1 is connected to the third inputs of the first, second, third valve blocks, the first input of the weight formation circuit and the first the inputs of the fifth, sixth and seventh valve blocks, the first outputs of the second register Rg1 are connected to the second inputs of the thirteenth and fourteenth multipliers of Galois field elements, fourth inputs by the third valve block and the first inputs of the seventeenth Galois field element multiplier, the second output of the second register Rg1 is connected to the second inputs of the first, second and fifth valve blocks, the third input of the fourth valve block, the first inputs of the eighth and ninth valve blocks and the fourth input of the weight formation circuit, the first outputs of the third register Rg1 are connected to the second inputs of the twelfth multiplier, the fourth inputs of the second valve block and the first inputs of the fourteenth and sixteenth elem multipliers of the Galois field, the second output of the third register Rg1 is connected to the first input of the first valve block, the second inputs of the third, fourth, sixth and eighth valve blocks, the first input of the tenth valve block and the third input of the weight formation circuit, the first outputs of the fourth register Rg1 are connected to the fourth inputs the first block of gates, the first inputs of the twelfth, thirteenth and fifteenth multipliers of Galois field elements, the second output of the fourth register Rg1 is connected to the first inputs of the second, third and fourth blocks in the gates, the second inputs of the seventh, ninth and tenth valve blocks and the second input of the weight formation circuit, the outputs of the twelfth Galois field element multiplier are connected to the third inputs of the fifth Galois field element, the outputs of the thirteenth Galois field multiplier are connected to the third inputs of the sixth Galois field, the outputs of the fourteenth multiplier the elements of the Galois field are connected to the third inputs of the seventh valve block, the outputs of the fifteenth multiplier of the elements of the Galois field are connected to the third inputs of the eighth block gates, the outputs of the sixteenth Galois field element multiplier are connected to the third inputs of the ninth valve block, the outputs of the seventeenth Galois field element multiplier are connected to the third inputs of the tenth valve block, the constant '1' is applied to the first inputs of the seventh switch, the constant 'is fed to the second inputs of the seventh 0 ', the third inputs of the seventh switch are the fifth inputs of the block of products of fractions R i , the outputs of the seventh switch are connected to the first inputs of the second code comparison circuit, the outputs of the weight formation circuit are connected to the second inputs of the second code comparison circuit, the outputs of the first valve block are the first outputs of the fraction product block R i , the outputs of the second block of valves are the second outputs of the block of fractions R i , the outputs of the third valve block are the third outputs of the fraction product block R i , the outputs of the fourth valve block are the fourth outputs of the block of fractions R i , the outputs of the fifth block of gates are the fifth outputs of the block of products of fractions R i , the outputs of the sixth valve block are the sixth outputs of the block of fractions R i , the outputs of the seventh valve block are the seventh outputs of the fraction product block R i , the outputs of the eighth block of valves are the eighth outputs of the block of fractions R i , the outputs of the ninth block of valves are the ninth outputs of the block of products of fractions R i , the outputs of the tenth valve block are the tenth outputs of the block of fractions R i , the output of the second code comparison scheme is the eleventh output of the fraction product block R i , moreover, the block of products of the coefficients A i contains the eighth switch, the second, third, fourth and fifth register-latches, the fifth-tenth adders of the elements of the Galois field, the eighteenth to twenty-fifth multipliers of the elements of the Galois field, the first inputs of the eighth switch being the first inputs of the block of products of coefficients A i , the second inputs of the eighth switch are the second inputs of the block of products of the coefficients A i , the third input of the eighth switch is the third input of the block of products of coefficients A i , the second inputs of the second, third, fourth and fifth register-latches are the bits of the fourth inputs of the block of products of the coefficients A i , the outputs of the eighth switch are connected to the first inputs of the second, third, fourth and fifth register-latches, the outputs of the second register-latch are connected to the first inputs of the fifth, sixth and eighth adders of Galois field elements, the outputs of the third register-latch are connected to the second inputs of the fifth adder of elements the Galois field and the first inputs of the seventh and ninth adders of the Galois field elements, the outputs of the fourth register-latch are connected to the first inputs of the tenth adder of the Galois field elements and the second inputs of the sixth and of the fifth adder of Galois field elements, the outputs of the fifth register-latch are connected to the second inputs of the eighth, ninth and tenth adders of Galois field elements, the outputs of the fifth adder of Galois field elements are connected to the first inputs of the eighteenth, twenty third and twenty-fourth multipliers of Galois field elements and are the ninth outputs block of products of coefficients A i , the outputs of the sixth adder of the elements of the Galois field are connected to the first inputs of the nineteenth and twenty-second multipliers of the elements of the Galois field, the second inputs of the twenty-fourth multiplier of the elements of the Galois field and are the tenth outputs of the block of the product of coefficients A i , the outputs of the seventh adder of the elements of the Galois field are connected to the first inputs of the twentieth and twenty-first multipliers of elements of the Galois field, the third inputs of the twenty-fourth multiplier of elements of the Galois field are the eleventh outputs of the block of products A i , the outputs of the eighth adder of Galois field elements are connected to the second inputs of the twentieth, twenty second and twenty third Galois field multipliers, the outputs of the ninth adder of Galois field elements are connected to the second inputs of the nineteenth and twenty first Galois field multipliers and the third inputs of the twenty third Galois field multiplier , the outputs of the tenth adder of Galois field elements are connected to the third inputs of the twenty-first and twenty-second multipliers of Galois field elements and the second the inputs of the eighteenth multiplier of the elements of the Galois field, the outputs of the eighteenth multiplier of the elements of the Galois field are connected to the third inputs of the twenty-fifth multiplier of the elements of the Galois field and are the first outputs of the block of products of the coefficients A i , the outputs of the nineteenth Galois field element multiplier are connected to the second inputs of the twenty-fifth Galois field element multiplier and are the second outputs of the product block of coefficients A i , the outputs of the twentieth multiplier of Galois field elements are connected to the first inputs of the twenty-fifth multiplier of Galois field elements and are the third outputs of the block of products of coefficients A i , the outputs of the twenty-first multiplier of Galois field elements are the fourth outputs of the block of products of the coefficients A i , the outputs of the twenty-second multiplier of the Galois field elements are the fifth outputs of the block of products of the coefficients A i , the outputs of the twenty-third multiplier of the Galois field elements are the sixth outputs of the block of products of the coefficients A i , the outputs of the twenty-fourth multiplier of the elements of the Galois field are the seventh outputs of the block of products of the coefficients A i , the outputs of the twenty-fifth multiplier of Galois field elements are the eighth outputs of the block of products of the coefficients A i .

Сущность изобретения состоит в том, что блок поиска позиций ошибок реализует поиск конфигураций ошибок веса tC+2, при этом блок вычисления невязок определяет неизвестные невязки аналитического продолжения алгоритма Берлекэмпа-Месси на четыре дополнительные итерации. В процедуру поиска позиций ошибочных символов за границей половины минимального кодового расстояния вводится управление информацией о надежности принятых из канала символов.The essence of the invention lies in the fact that the error position search unit implements a search for error configurations of weight t C +2, while the residual calculation unit determines the unknown residuals of the analytic continuation of the Berlekamp-Messi algorithm for four additional iterations. In the procedure for searching for positions of erroneous symbols beyond the half of the minimum code distance, control is introduced of information on the reliability of symbols received from the channel.

На фиг.1 приведена функциональная схема предлагаемого устройства декодирования PC-кода. На фиг.2 изображена функциональная схема блока поиска позиций ошибок; на следующей фиг.3 - функциональная схема одного из его основных блоков: блока вычисления невязок. На фиг.4 и 5 приведены функциональные схемы блока произведений дробей Ri и блока произведений коэффициентов Ai, соответственно. На фиг.6 показана функциональная схема регистра Rg1. На фиг.7 приведена функциональная схема блока подсчета невязок. На фиг.8 изображена схема блока дискретного преобразования Фурье. На фиг.9 изображена временная диаграмма обработки кодовых слов предлагаемым устройством декодирования PC-кода. На фиг.10 приведен график с результатами исследования эффективности коррекции ошибок заявляемого устройства в канале с аддитивным белым гауссовым шумом (AWGN) и модуляцией BPSK.Figure 1 shows the functional diagram of the proposed device for decoding a PC code. Figure 2 shows a functional diagram of a block search for error positions; in the following figure 3 is a functional diagram of one of its main blocks: a block for calculating residuals. Figure 4 and 5 shows the functional diagrams of the block of products of fractions R i and the block of products of the coefficients A i , respectively. 6 shows a functional diagram of the register Rg1. Figure 7 shows the functional diagram of the unit for calculating residuals. On Fig shows a block diagram of a discrete Fourier transform. Figure 9 shows a timing diagram of the processing of code words by the proposed decoding device of the PC code. Figure 10 shows a graph with the results of a study of the effectiveness of the error correction of the inventive device in the channel with additive white Gaussian noise (AWGN) and BPSK modulation.

В описании устройства и на чертежах используются следующие обозначения:In the description of the device and in the drawings, the following notation is used:

БВС - блок вычисления синдромов;BVS - block for calculating syndromes;

БСПС - блок сортировки позиций символов;ACAS - block for sorting character positions;

БДПФ - блок дискретного преобразования Фурье;BDPF - block of discrete Fourier transform;

БППО - блок поиска позиций ошибок;BPPO - block for finding error positions;

БВЗО - блок вычисления значений ошибок;BVZO - block for calculating error values;

Ct2 - двоичный счетчик;Ct2 is a binary counter;

Mux - мультиплексор (коммутатор);Mux - multiplexer (switch);

RAM - память с произвольным доступом;RAM - random access memory;

МУУ - местное устройство управления;MUU - local control device;

Inv - инвертор в конечном поле;Inv - inverter in the final field;

Rg - регистр;Rg is the register;

БВ - блок вентилей;BV - valve block;

БВН - блок вычисления невязок;BVN - block for calculating residuals;

БПН - блок подсчета невязок;BPN - block for calculating residuals;

БПК - блок памяти коэффициентов;BOD - block memory coefficients;

БПД Ri - блок произведений дробей Ri;BPD R i - block of products of fractions R i ;

БПК Ai - блок произведений коэффициентов Ai;BOD A i - block of products of coefficients A i ;

PC-код - код Рида-Соломона;PC code - Reed-Solomon code;

m - разрядность элемента расширенного поля Галуа GF(2m);m is the bit depth of the element of the extended Galois field GF (2 m );

n - количество символов в кодовом слове РС-кода;n is the number of characters in the code word of the PC code;

k - количество информационных символов в кодовом слове;k is the number of information symbols in the codeword;

d - минимальное кодовое расстояние PC-кода, d=r+1;d is the minimum code distance of the PC code, d = r + 1;

tC - число гарантированно исправляемых ошибок в кодовом слове, t С = d 1 2

Figure 00000002
;t C - the number of guaranteed correctable errors in the codeword, t FROM = d - one 2
Figure 00000002
;

τ - число исправляемых ошибок за границей половины минимального кодового расстояния,τ is the number of correctable errors beyond half the minimum code distance,

α - примитивный элемент поля Галуа GF(2m);α is a primitive element of the Galois field GF (2 m );

r(x)=rn-1xn-1+rn-2xn-2+…+r1x+r0 - многочлен принятого из канала кодового слова;r (x) = r n-1 x n-1 + r n-2 x n-2 + ... + r 1 x + r 0 is the polynomial of the codeword received from the channel;

c(x)=cn-1xn-1+cn-2xn-2+…+c1x+c0 - многочлен кодового слова;c (x) = c n-1 x n-1 + c n-2 x n-2 + ... + c 1 x + c 0 - codeword polynomial;

S(x) - многочлен синдрома;S (x) is the polynomial of the syndrome;

Λ ( 2 t С ) ( x )

Figure 00000003
- многочлен локаторов ошибок после 2tC итераций алгоритма Берлекэмпа-Месси; Λ ( 2 t FROM ) ( x )
Figure 00000003
- polynomial of error locators after 2t C iterations of the Berlekamp-Messi algorithm;

B ( 2 t С ) ( x )

Figure 00000004
- вспомогательный многочлен после 2tC итераций алгоритма Берлекэмпа-Месси; B ( 2 t FROM ) ( x )
Figure 00000004
- auxiliary polynomial after 2t C iterations of the Berlekamp-Messi algorithm;

L 2 t С

Figure 00000005
- формальная степень многочлена локаторов ошибок Λ ( 2 t С ) ( x )
Figure 00000006
; L 2 t FROM
Figure 00000005
- the formal degree of the polynomial of error locators Λ ( 2 t FROM ) ( x )
Figure 00000006
;

Λ ( 2 t С + 2 ) ( x )

Figure 00000007
- многочлен локаторов ошибок, полученный аналитическим продолжением алгоритма Берлекэмпа-Месси еще на 2 итерации; Λ ( 2 t FROM + 2 ) ( x )
Figure 00000007
- polynomial of error locators obtained by analytic continuation of the Berlekamp-Messi algorithm for another 2 iterations;

Δ - невязка аналитического продолжения алгоритма Берлекэмпа-Месси;Δ is the residual of the analytic continuation of the Berlekamp-Messi algorithm;

Λ'(x) - формальная производная многочлена локаторов ошибок;Λ '(x) is the formal derivative of the polynomial of error locators;

Ω(x) - многочлен значений ошибок;Ω (x) is the polynomial of error values;

{PE} - множество позиций ошибок в кодовом слове.{PE} is the set of error positions in the codeword.

Устройство декодирования кодов Рида-Соломона (фиг.1) содержит: буферную память данных 100, блок вычисления синдромов 200, процессор Галуа 300, блок дискретного преобразования Фурье 400, блок поиска позиций ошибок 500, блок сортировки позиций символов 600, блок вычисления значений ошибок 700, первый сумматор элементов поля Галуа 800.The Reed-Solomon code decoding device (FIG. 1) contains: a data buffer 100, a syndrome calculation unit 200, a Galois processor 300, a discrete Fourier transform unit 400, an error position search unit 500, a character position sorting unit 600, an error value calculation unit 700 , the first adder of the Galois field elements 800.

На вход буферной памяти данных 100, вход блока вычисления синдромов 200 поступают символы ri кодового слова, принятого из канала (сигналы DIn). Выходы буферной памяти данных 100 соединены с первыми входами первого сумматора элементов поля Галуа 800. Выходы блока вычисления синдромов 200 соединены с первыми входами процессора Галуа 300. Первые выходы процессора Галуа 300 (сигналы Control) соединены с первыми входами блока дискретного преобразования Фурье 400. Вторые выходы процессора Галуа 300 ( Λ ( 2 t С ) ( x ) )

Figure 00000008
соединены со вторыми входами блока дискретного преобразования Фурье 400. Третьи выходы процессора Галуа 300 ( B ( 2 t С ) ( x ) )
Figure 00000009
соединены с третьими входами блока дискретного преобразования Фурье 400. Четвертые выходы процессора Галуа 300 (сигналы Control) соединены с четвертыми входами блока поиска позиций ошибок 500. Пятые выходы процессора Галуа 300 (Ω(x)) соединены с первыми входами блока вычисления значений ошибок 700. Шестые выходы процессора Галуа 300 (Λ'(x)) соединены со вторыми входами блока вычисления значений ошибок 700. Седьмые выходы процессора Галуа 300 ({PE}) соединены с третьими входами блока вычисления значений ошибок 700.At the input of the buffer data memory 100, the input of the block for computing syndromes 200, the symbols r i of the codeword received from the channel (signals DIn) are received. The outputs of the data buffer 100 are connected to the first inputs of the first adder of the Galois field elements 800. The outputs of the syndrome calculation unit 200 are connected to the first inputs of the Galois processor 300. The first outputs of the Galois processor 300 (Control signals) are connected to the first inputs of the discrete Fourier transform 400. Second outputs Galois processor 300 ( Λ ( 2 t FROM ) ( x ) )
Figure 00000008
connected to the second inputs of the discrete Fourier transform 400. Third outputs of the Galois processor 300 ( B ( 2 t FROM ) ( x ) )
Figure 00000009
connected to the third inputs of the discrete Fourier transform 400. The fourth outputs of the Galois processor 300 (Control signals) are connected to the fourth inputs of the error position search unit 500. The fifth outputs of the Galois processor 300 (Ω (x)) are connected to the first inputs of the error value calculation unit 700. The sixth outputs of the Galois processor 300 (Λ '(x)) are connected to the second inputs of the error value calculation unit 700. The seventh outputs of the Galois processor 300 ({PE}) are connected to the third inputs of the error value calculation unit 700.

Вторые выходы блока дискретного преобразования Фурье 400 (сигналы State) соединены с третьими входами процессора Галуа 300. Третьи выходы блока дискретного преобразования Фурье 400 ({PE}) соединены с четвертыми входами процессора Галуа 300. Четвертые выходы блока дискретного преобразования Фурье 400 (Ri) соединены с первыми входами блока поиска позиций ошибок 500. Пятый выход блока дискретного преобразования Фурье 400 (Msk1) соединен со вторым входом блока поиска позиций ошибок 500. Шестые выходы блока дискретного преобразования Фурье 400 (Ai) соединены с третьими входами блока поиска позиций ошибок 500.The second outputs of the discrete Fourier transform 400 (State signals) are connected to the third inputs of the Galois processor 300. The third outputs of the discrete Fourier transform 400 ({PE}) are connected to the fourth inputs of the Galois 300 processor. Fourth outputs of the discrete Fourier transform 400 (R i ) are connected to first inputs of block search position error 500. The fifth output unit 400 discrete Fourier transform (Msk1) connected to the second input of the search position error block 500. The six outputs of the discrete Fourier transform 400 (a i) coupled to tr timi unit 500 includes a search error positions.

Первые выходы блока поиска позиций ошибок 500 (сигналы State) соединены с пятыми входами процессора Галуа 300. Вторые выходы блока поиска позиций ошибок 500 соединены со вторыми входами блока сортировки позиций символов 600 (сигналы {PE}).The first outputs of the error position search unit 500 (State signals) are connected to the fifth inputs of the Galois processor 300. The second outputs of the error position search unit 500 are connected to the second inputs of the character position sorting unit 600 ({PE} signals).

Первые входы блока сортировки позиций символов 600 (сигналы SoftIn) являются входами оценок надежности символов данных устройства декодирования кодов Рида-Соломона. Оценка надежности представляется двоичным числом без знака с фиксированной точкой. Большее значение числа соответствует большей надежности символов кодового слова.The first inputs of the block for sorting symbol positions 600 (SoftIn signals) are inputs of estimates of the reliability of the data symbols of the Reed-Solomon code decoding device. The reliability estimate is represented by an unsigned fixed-point binary number. A larger value corresponds to a greater reliability of the codeword characters.

Первые выходы блока дискретного преобразования Фурье 400 (AddrR1) соединены с третьими входами блока сортировки позиций символов 600. Первые выходы блока сортировки позиций символов 600 ({PE}) соединены со вторыми входами процессора Галуа 300. Вторые выходы блока сортировки позиций символов 600 (AddrW) соединены с пятыми входами блока поиска позиций ошибок 500.The first outputs of the discrete Fourier transform 400 (AddrR1) are connected to the third inputs of the character position sorting unit 600. The first outputs of the character position sorting unit 600 ({PE}) are connected to the second inputs of the Galois processor 300. The second outputs of the character position sorting unit 600 (AddrW) connected to the fifth inputs of the error position search unit 500.

Выходы блока вычисления значений ошибок 700 соединены со вторыми входами первого сумматора элементов поля Галуа 800. Выходы первого сумматора элементов поля Галуа 800 являются выходами данных устройства декодирования кодов Рида-Соломона (сигналы DOut).The outputs of the error value calculation unit 700 are connected to the second inputs of the first adder of Galois field elements 800. The outputs of the first adder of Galois field elements 800 are data outputs of a Reed-Solomon code decoding device (DOut signals).

Блок поиска позиций ошибок (фиг.2) содержит первый блок вычисления невязок 510.1, второй блок вычисления невязок 510.2, первый блок подсчета невязок 520.1, второй блок подсчета невязок 520.2, первый коммутатор 530, первый регистр-защелку 540, блок памяти коэффициентов 550, первое местное устройство управления 560.The error position search unit (Fig. 2) contains a first residual calculation block 510.1, a second residual calculation block 510.2, a first residual calculation block 520.1, a second residual calculation block 520.2, a first switch 530, a first latch register 540, a coefficient memory 550, the first local control device 560.

Первые входы первого местного устройства управления 560 (сигналы Control) являются четвертыми входами блока поиска позиций ошибок 500. Вторые входы первого местного устройства управления 560 и первые входы блока памяти коэффициентов 550 (сигналы AddrW) являются пятыми входами блока поиска позиций ошибок. Третьи входы блока поиска позиций ошибок 500 (сигналы Ai) являются младшими разрядами вторых входов блока памяти коэффициентов 550. Первые входы блока поиска позиций ошибок 500 являются средними разрядами вторых входов блока памяти коэффициентов 550 (Ri). Второй вход блока поиска позиций ошибок 500 (Msk1) является старшим разрядом вторых входов блока памяти коэффициентов 550 (Mask1). Младшие разряды первых выходов DR1 блока памяти коэффициентов 550 (сигналы A i '

Figure 00000010
) соединены с первыми входами первого блока вычисления невязок 510.1 и с первыми входами второго блока вычисления невязок 510.2.The first inputs of the first local control device 560 (Control signals) are the fourth inputs of the error position search unit 500. The second inputs of the first local control device 560 and the first inputs of the coefficient memory 550 (AddrW signals) are the fifth inputs of the error position search unit. The third inputs of the error position search block 500 (signals A i ) are the least significant bits of the second inputs of the coefficient memory 550. The first inputs of the error position search block 500 are the middle bits of the second inputs of the coefficient memory 550 (R i ). The second input of the error position search block 500 (Msk1) is the highest bit of the second inputs of the coefficient memory block 550 (Mask1). The least significant bits of the first outputs D R1 of the block of memory coefficients 550 (signals A i ''
Figure 00000010
) are connected to the first inputs of the first block of residual calculation 510.1 and to the first inputs of the second block of residual calculation 510.2.

Средние разряды первых выходов DR1 блока памяти коэффициентов 550 ( R i ' )

Figure 00000011
соединены с третьими входами первого блока вычисления невязок 510.1 и с третьими входами второго блока вычисления невязок 510.2. Старший разряд первых выходов DR1 блока памяти коэффициентов 550 (Msk1') соединен с пятым входом первого блока вычисления невязок 510.1 и с пятым входом второго блока вычисления невязок 510.2. Младшие разряды вторых выходов DR2 блока памяти коэффициентов 550 ( A i ' ' )
Figure 00000012
соединены со вторыми входами первого блока вычисления невязок 510.1 и со вторыми входами второго блока вычисления невязок 510.2. Средние разряды вторых выходов DR2 блока памяти коэффициентов 550 ( R i ' ' )
Figure 00000013
соединены с четвертыми входами первого блока вычисления невязок 510.1 и с четвертыми входами второго блока вычисления невязок 510.2. Старший разряд вторых выходов DR2 блока памяти коэффициентов 550 (Msk1") соединен с шестым входом первого блока вычисления невязок 510.1 и с шестым входом второго блока вычисления невязок 510.2.The average bits of the first outputs D R1 memory block coefficients 550 ( R i '' )
Figure 00000011
connected to the third inputs of the first block calculating residuals 510.1 and with the third inputs of the second block calculating residuals 510.2. The high-order bit of the first outputs D R1 of the coefficient memory unit 550 (Msk1 ') is connected to the fifth input of the first residual calculation block 510.1 and to the fifth input of the second residual calculation block 510.2. Low-order bits of the second outputs D R2 of the memory block coefficients 550 ( A i '' '' )
Figure 00000012
connected to the second inputs of the first block calculating residuals 510.1 and with the second inputs of the second block calculating residuals 510.2. The average bits of the second outputs D R2 memory block coefficients 550 ( R i '' '' )
Figure 00000013
connected to the fourth inputs of the first block calculating residuals 510.1 and with the fourth inputs of the second block calculating residuals 510.2. The senior bit of the second outputs D R2 of the coefficient memory 550 (Msk1 ") is connected to the sixth input of the first residual calculation block 510.1 and to the sixth input of the second residual calculation block 510.2.

Первый выход первого блока вычисления невязок 510.1 (¬Msk21) соединен с четвертым входом первого блока подсчета невязок 520.1. Вторые выходы первого блока вычисления невязок 510.1 (Δ1) соединены с третьими входами первого блока подсчета невязок 520.1. Третий выход первого блока вычисления невязок 510.1 (SXi1) соединен с третьим входом местного устройства управления 560. Первый выход первого блока подсчета невязок 520.1 (St1) соединен с пятым входом первого местного устройства управления 560. Вторые выходы первого блока подсчета невязок 520.1 ( Δ 1 ' )

Figure 00000014
соединены с первыми входами первого коммутатора 530.The first output of the first residual calculation block 510.1 (¬Msk2 1 ) is connected to the fourth input of the first residual calculation block 520.1. The second outputs of the first block for calculating residuals 510.1 (Δ 1 ) are connected to the third inputs of the first block for calculating residuals 520.1. The third output of the first residual calculation unit 510.1 (SX i1 ) is connected to the third input of the local control device 560. The first output of the first residual calculation unit 520.1 (St 1 ) is connected to the fifth input of the first local residual control device 560. The second outputs of the first residual calculation unit 520.1 ( Δ one '' )
Figure 00000014
connected to the first inputs of the first switch 530.

Третий выход второго блока вычисления невязок 510.2 (SXi2) соединен с четвертым входом первого местного устройства управления 560. Вторые выходы второго блока вычисления невязок 510.2 (Δ2) соединены с третьими входами второго блока подсчета невязок 520.2. Первый выход второго блока вычисления невязок 510.2 (¬Msk22) соединен с четвертым входом второго блока подсчета невязок 520.2. Вторые выходы второго блока подсчета невязок 520.2 ( Δ 2 ' )

Figure 00000015
соединены со вторыми входами первого коммутатора 530. Первый выход второго блока подсчета невязок 520.2 (St2) соединен с шестым входом первого местного устройства управления 560.The third output of the second residuals calculator 510.2 (SX i2 ) is connected to the fourth input of the first local control device 560. The second outputs of the second residuals calculator 510.2 (Δ 2 ) are connected to the third inputs of the second residuals calculator 520.2. The first output of the second residual calculation block 510.2 (¬Msk2 2 ) is connected to the fourth input of the second residual calculation block 520.2. The second outputs of the second block counting residuals 520.2 ( Δ 2 '' )
Figure 00000015
connected to the second inputs of the first switch 530. The first output of the second residual counting unit 520.2 (St 2 ) is connected to the sixth input of the first local control device 560.

Третий выход первого местного устройства управления 560 (CMx1) соединен с седьмым входом первого блока вычисления невязок 510.1. Четвертые выходы первого местного устройства управления 560 (Ld1) соединены с восьмыми входами первого блока вычисления невязок 510.1. Пятые выходы первого местного устройства управления 560 (SI1) соединены с девятыми входами первого блока вычисления невязок 510.1. Шестые выходы первого местного устройства управления 560 (AR1) соединены с четвертыми входами AR1 блока памяти коэффициентов 550. Седьмые выходы первого местного устройства управления 560 (AR2) соединены с третьими входами AR2 блока памяти коэффициентов 550. Восьмые выходы первого местного устройства управления 560 (AI1) соединены со вторыми входами первого блока подсчета невязок 520.1. Девятый выход первого местного устройства управления 560 (I1) соединен с первым входом первого блока подсчета невязок 520.1. Десятый выход местного первого устройства управления 560 (E1) соединен с пятым входом первого блока подсчета невязок 520.1. Одиннадцатый выход первого местного устройства управления 560 (L) соединен со вторым входом первого регистра-защелки 540. Двенадцатый выход первого местного устройства управления 560 (CMx) соединен с третьим входом первого коммутатора 530. Тринадцатый выход первого местного устройства управления 560 (E2) соединен с пятым входом второго блока подсчета невязок 520.2. Четырнадцатый выход первого местного устройства управления 560 (I2) соединен с первым входом второго блока подсчета невязок 520.2. Пятнадцатые выходы первого местного устройства управления 560 (AI2) соединены со вторыми входами второго блока подсчета невязок 520.2. Шестнадцатые выходы первого местного устройства управления 560 (SI2) соединены с девятыми входами второго блока вычисления невязок 510.2. Семнадцатые выходы первого местного устройства управления 560 (Ld2) соединены с восьмыми входами второго блока вычисления невязок 510.2. Восемнадцатый выход первого местного устройства управления 560 (CMx2) соединен с седьмым входом второго блока вычисления невязок 510.2. Девятнадцатые выходы первого местного устройства управления 560 (w2) соединены с шестыми входами второго блока подсчета невязок 520.2. Двадцатые выходы первого местного устройства управления 560 (w1) соединены с шестыми входами первого блока подсчета невязок 520.1. Первые выходы первого местного устройства управления 560 ({PE'}) являются вторыми выходами блока поиска позиций ошибок 500. Вторые выходы первого местного устройства управления 560 (State) являются первыми выходами блока поиска позиций ошибок 500.The third output of the first local control device 560 (CMx 1 ) is connected to the seventh input of the first residual calculation unit 510.1. The fourth outputs of the first local control device 560 (Ld 1 ) are connected to the eighth inputs of the first residual calculation unit 510.1. The fifth outputs of the first local control device 560 (SI 1 ) are connected to the ninth inputs of the first residual calculation unit 510.1. The sixth outputs of the first local control device 560 (AR 1 ) are connected to the fourth inputs A R1 of the coefficient memory 550. The seventh outputs of the first local control device 560 (AR2) are connected to the third inputs A R2 of the coefficient memory 550. Eighth outputs of the first local control device 560 (AI 1 ) connected to the second inputs of the first block counting residuals 520.1. The ninth output of the first local control device 560 (I 1 ) is connected to the first input of the first residual counting unit 520.1. The tenth output of the local first control device 560 (E 1 ) is connected to the fifth input of the first residual counting unit 520.1. The eleventh output of the first local control device 560 (L) is connected to the second input of the first register-latch 540. The twelfth output of the first local control device 560 (CMx) is connected to the third input of the first switch 530. The thirteenth output of the first local control device 560 (E 2 ) is connected with the fifth input of the second residual counting unit 520.2. The fourteenth output of the first local control device 560 (I 2 ) is connected to the first input of the second residual counting unit 520.2. The fifteenth outputs of the first local control device 560 (AI 2 ) are connected to the second inputs of the second residual counting unit 520.2. The sixteenth outputs of the first local control device 560 (SI 2 ) are connected to the ninth inputs of the second residual calculation unit 510.2. The seventeenth outputs of the first local control device 560 (Ld 2 ) are connected to the eighth inputs of the second residual calculation unit 510.2. The eighteenth output of the first local control device 560 (CMx 2 ) is connected to the seventh input of the second residual calculation unit 510.2. The nineteenth outputs of the first local control device 560 (w 2 ) are connected to the sixth inputs of the second residual counting unit 520.2. The twentieth outputs of the first local control unit 560 (w 1 ) are connected to the sixth inputs of the first residual counting unit 520.1. The first outputs of the first local control device 560 ({PE '}) are the second outputs of the error position search unit 500. The second outputs of the first local control device 560 (State) are the first outputs of the error position search unit 500.

Выходы первого коммутатора 530 соединены с первыми входами первого регистра-защелки 540. Выходы первого регистра-защелки 540 соединены с десятыми входами первого блока вычисления невязок 510.1 и десятыми входами второго блока вычисления невязок 510.2.The outputs of the first switch 530 are connected to the first inputs of the first register-latch 540. The outputs of the first register-latch 540 are connected to the tenth inputs of the first block of residual calculation 510.1 and tenth inputs of the second block of residual calculation 510.2.

Блок вычисления невязок (фиг.3) содержит блок произведений дробей Ri 511, блок произведений коэффициентов Ai 512, второй 513.1, третий 513.2 и четвертый 513.3 коммутаторы, второй 515.1, третий 515.2 и четвертый 515.3 сумматоры элементов поля Галуа, первый инвертор элементов поля Галуа 516, первый, второй, третий, четвертый, пятый, шестой, седьмой, восьмой, девятый, десятый и одиннадцатый перемножители элементов поля Галуа 514.1-514.11, первую схему сравнения кодов 517.2, селектор нулевого элемента поля Галуа 517.1, первый логический элемент И 519, логический элемент ИЛИ-НЕ 518.The residual calculating unit (Fig. 3) contains a unit of fractional product R i 511, a unit of product of coefficients A i 512, second 513.1, third 513.2 and fourth 513.3 switches, second 515.1, third 515.2 and fourth 515.3 totalizers of Galois field elements, the first inverter of field elements Galois 516, first, second, third, fourth, fifth, sixth, seventh, eighth, ninth, tenth and eleventh multipliers of Galois field elements 514.1-514.11, the first code comparison scheme 517.2, zero element selector of the Galois field 517.1, the first logical element And 519 , logical element OR NOT 518.

Первые входы блока произведений коэффициентов Ai 512 являются первыми входами блока вычисления невязок (сигналы A i '

Figure 00000016
). Вторые входы блока произведений коэффициентов Ai 512 являются вторыми входами блока вычисления невязок (сигналы A i ' '
Figure 00000017
). Первые входы блока произведений дробей Ri 511 являются третьими входами блока вычисления невязок (сигналы R i '
Figure 00000018
). Вторые входы блока произведений дробей Ri 511 являются четвертыми входами блока вычисления невязок (сигналы R i ' '
Figure 00000019
). Третий вход блока произведений дробей Ri 511 является пятым входом блока вычисления невязок (Msk1'). Четвертый вход блока произведений дробей Ri 511 является шестым входом блока вычисления невязок (Msk1''). Третий вход блока произведений коэффициентов Ai 512 соединен с шестым входом блока произведений дробей Ri 511 и является седьмым входом блока вычисления невязок (CMx). Четвертые входы блока произведений коэффициентов Ai 512 соединены с седьмыми входами блока произведений дробей Ri 511 и являются восьмыми входами блока вычисления невязок, на которые подаются сигналы Ld. Пятые входы блока произведений дробей Ri 511 соединены с девятыми входами второго коммутатора 513.1, восьмыми входами третьего коммутатора 513.2, восьмыми входами четвертого коммутатора 513.3 и являются девятыми входами блока вычисления невязок, на которые подаются сигналы SI.The first inputs of the block of products of coefficients A i 512 are the first inputs of the block for calculating residuals (signals A i ''
Figure 00000016
) The second inputs of the block of products of the coefficients A i 512 are the second inputs of the block for calculating residuals (signals A i '' ''
Figure 00000017
) The first inputs of the fractions product block R i 511 are the third inputs of the residual calculation block (signals R i ''
Figure 00000018
) The second inputs of the fractions product block R i 511 are the fourth inputs of the residual calculation block (signals R i '' ''
Figure 00000019
) The third input of the fraction product block R i 511 is the fifth input of the residual calculation unit (Msk1 '). The fourth input of the fraction product block R i 511 is the sixth input of the residual calculation unit (Msk1 ''). The third input of the coefficient product block A i 512 is connected to the sixth input of the fraction product block R i 511 and is the seventh input of the residual calculation block (CMx). The fourth inputs of the block of products of coefficients A i 512 are connected to the seventh inputs of the block of products of fractions R i 511 and are the eighth inputs of the block for calculating residuals to which Ld signals are supplied. The fifth inputs of the fraction product block R i 511 are connected to the ninth inputs of the second switch 513.1, the eighth inputs of the third switch 513.2, the eighth inputs of the fourth switch 513.3 and are the ninth inputs of the residual calculation block to which the SI signals are applied.

Первые входы первой схемы сравнения кодов 517.2 являются десятыми входами блока вычисления невязок, на которые подаются сигналы Δ''. Выход первой схемы сравнения кодов 517.2 соединен с первым входом первого логического элемента И 519.The first inputs of the first code comparison circuit 517.2 are the tenth inputs of the residual calculation unit to which the signals Δ '' are supplied. The output of the first code comparison circuit 517.2 is connected to the first input of the first AND gate 519.

Первые выходы блока произведений дробей Ri 511 соединены с первыми входами третьего сумматора элементов поля Галуа 515.2 и первыми входами седьмого перемножителя элементов поля Галуа 514.7. Вторые выходы блока Ri 511 соединены со вторыми входами третьего сумматора элементов поля Галуа 515.2 и первыми входами восьмого перемножителя элементов поля Галуа 514.8. Третьи выходы блока произведений дробей Ri 511 соединены с первыми входами девятого перемножителя элементов поля Галуа 514.9. Четвертые выходы блока произведений дробей Ri 511 соединены с первыми входами десятого перемножителя элементов поля Галуа 514.10. Пятые выходы блока произведений дробей Ri 511 соединены с первыми входами первого перемножителя элементов поля Галуа 514.1. Шестые выходы блока произведений дробей Ri 511 соединены с первыми входами второго перемножителя элементов поля Галуа 514.2. Седьмые выходы блока произведений дробей Ri 511 соединены с первыми входами третьего перемножителя элементов поля Галуа 514.3. Восьмые выходы блока произведений дробей Ri 511 соединены с первыми входами четвертого перемножителя элементов поля Галуа 514.4. Девятые выходы блока произведений дробей Ri 511 соединены со вторыми входами пятого перемножителя элементов поля Галуа 514.5. Десятые выходы блока произведений дробей Ri 511 соединены с первыми входами шестого перемножителя элементов поля Галуа 514.6. Одиннадцатый выход блока произведений дробей Ri 511 соединен с первым входом логического элемента ИЛИ-НЕ 518.The first outputs of the fraction product block R i 511 are connected to the first inputs of the third adder of Galois field elements 515.2 and the first inputs of the seventh multiplier of Galois field elements 514.7. The second outputs of block R i 511 are connected to the second inputs of the third adder of Galois field elements 515.2 and the first inputs of the eighth Galois field element multiplier 514.8. The third outputs of the block of fractions' products R i 511 are connected to the first inputs of the ninth multiplier of the elements of the Galois field 514.9. The fourth outputs of the block of fractions' products R i 511 are connected to the first inputs of the tenth multiplier of Galois field elements 514.10. The fifth outputs of the fractions product block R i 511 are connected to the first inputs of the first multiplier of Galois field elements 514.1. The sixth outputs of the block of fractions' products R i 511 are connected to the first inputs of the second multiplier of the elements of the Galois field 514.2. The seventh outputs of the block of fractions' products R i 511 are connected to the first inputs of the third multiplier of the elements of the Galois field 514.3. The eighth outputs of the block of fractions' products R i 511 are connected to the first inputs of the fourth multiplier of the elements of the Galois field 514.4. The ninth outputs of the fraction product block R i 511 are connected to the second inputs of the fifth multiplier of the Galois field elements 514.5. The tenth outputs of the block of fractions' products R i 511 are connected to the first inputs of the sixth multiplier of Galois field elements 514.6. The eleventh output of the fractions product block R i 511 is connected to the first input of the OR-NOT 518 logic element.

Первые выходы блока произведений коэффициентов Ai 512 соединены со вторыми входами первого перемножителя элементов поля Галуа 514.1 и вторыми входами шестого перемножителя элементов поля Галуа 514.6. Вторые выходы блока произведений коэффициентов Ai 512 соединены со вторыми входами второго перемножителя элементов поля Галуа 514.2 и первыми входами пятого перемножителя элементов поля Галуа 514.5. Третьи выходы блока произведений коэффициентов Ai 512 соединены со вторыми входами третьего перемножителя элементов поля Галуа 514.3 и вторыми входами четвертого перемножителя элементов поля Галуа 514.4. Четвертые выходы блока произведений коэффициентов Ai 512 соединены с первыми входами второго коммутатора 513.1. Пятые выходы блока произведений коэффициентов Ai 512 соединены со вторыми входами второго коммутатора 513.1. Шестые выходы блока произведений коэффициентов Ai 512 соединены с третьими входами второго коммутатора 513.1. Седьмые выходы блока произведений коэффициентов Ai 512 соединены с четвертыми входами второго коммутатора 513.1 и пятыми входами третьего коммутатора 513.2. Восьмые выходы блока произведений коэффициентов Ai 512 соединены с четвертыми входами третьего коммутатора 513.2 и третьими входами четвертого коммутатора 513.3. Девятые выходы блока произведений коэффициентов Ai 512 соединены с седьмыми входами второго коммутатора 513.1, седьмыми входами третьего коммутатора 513.2 и шестыми входами четвертого коммутатора 513.3. Десятые выходы блока произведений коэффициентов Ai 512 соединены с шестыми входами второго коммутатора 513.1. Одиннадцатые выходы блока произведений коэффициентов Ai 512 соединены с пятыми входами второго коммутатора 513.1.The first outputs of the block of coefficient products A i 512 are connected to the second inputs of the first multiplier of elements of the Galois field 514.1 and the second inputs of the sixth multiplier of elements of the Galois field 514.6. The second outputs of the block of coefficient products A i 512 are connected to the second inputs of the second multiplier of the elements of the Galois field 514.2 and the first inputs of the fifth multiplier of the elements of the Galois field 514.5. The third outputs of the block of coefficient products A i 512 are connected to the second inputs of the third multiplier of the elements of the Galois field 514.3 and the second inputs of the fourth multiplier of the elements of the Galois field 514.4. The fourth outputs of the block of products of the coefficients A i 512 are connected to the first inputs of the second switch 513.1. The fifth outputs of the block of products of the coefficients A i 512 are connected to the second inputs of the second switch 513.1. The sixth outputs of the block of products of the coefficients A i 512 are connected to the third inputs of the second switch 513.1. The seventh outputs of the block of products of the coefficients A i 512 are connected to the fourth inputs of the second switch 513.1 and the fifth inputs of the third switch 513.2. The eighth outputs of the block of products of the coefficients A i 512 are connected to the fourth inputs of the third switch 513.2 and the third inputs of the fourth switch 513.3. The ninth outputs of the block of coefficient products A i 512 are connected to the seventh inputs of the second switch 513.1, the seventh inputs of the third switch 513.2 and the sixth inputs of the fourth switch 513.3. The tenth outputs of the block of products of the coefficients A i 512 are connected to the sixth inputs of the second switch 513.1. The eleventh outputs of the block of products of the coefficients A i 512 are connected to the fifth inputs of the second switch 513.1.

На восьмые входы второго коммутатора 513.1 подается константа - нулевой символ конечного поля.A constant is applied to the eighth inputs of the second switch 513.1 - the zero symbol of the final field.

Первые выходы второго коммутатора 513.1 соединены со вторыми входами седьмого перемножителя элементов поля Галуа 514.7. Вторые выходы второго коммутатора 513.1 соединены со вторыми входами восьмого перемножителя элементов поля Галуа 514.8. Третьи выходы второго коммутатора 513.1 соединены со вторыми входами девятого перемножителя элементов поля Галуа 514.9. Четвертые выходы второго коммутатора 513.1 соединены со вторыми входами десятого перемножителя элементов поля Галуа 514.10.The first outputs of the second switch 513.1 are connected to the second inputs of the seventh multiplier of the Galois field elements 514.7. The second outputs of the second switch 513.1 are connected to the second inputs of the eighth Galois field element multiplier 514.8. The third outputs of the second switch 513.1 are connected to the second inputs of the ninth Galois field element multiplier 514.9. The fourth outputs of the second switch 513.1 are connected to the second inputs of the tenth multiplier of the Galois field elements 514.10.

Выходы первого перемножителя элементов поля Галуа 514.1 соединены с первыми входами второго сумматора элементов поля Галуа 515.1. Выходы второго перемножителя элементов поля Галуа 514.2 соединены со вторыми входами второго сумматора элементов поля Галуа 515.1. Выходы третьего перемножителя элементов поля Галуа 514.3 соединены с третьими входами второго сумматора элементов поля Галуа 515.1. Выходы четвертого перемножителя элементов поля Галуа 514.4 соединены с четвертыми входами второго сумматора элементов поля Галуа 515.1. Выходы пятого перемножителя элементов поля Галуа 514.5 соединены с пятыми входами второго сумматора элементов поля Галуа 515.1. Выходы шестого перемножителя элементов поля Галуа 514.6 соединены с шестыми входами второго сумматора элементов поля Галуа 515.1. Выходы второго сумматора элементов поля Галуа 515.1 соединены с первыми входами третьего коммутатора 513.2 и вторыми входами четвертого коммутатора 513.3.The outputs of the first multiplier of the elements of the Galois field 514.1 are connected to the first inputs of the second adder of the elements of the Galois field 515.1. The outputs of the second multiplier of the elements of the Galois field 514.2 are connected to the second inputs of the second adder of the elements of the Galois field 515.1. The outputs of the third Galois field element multiplier 514.3 are connected to the third inputs of the second Galois field element adder 515.1. The outputs of the fourth Galois field element multiplier 514.4 are connected to the fourth inputs of the second Galois field element adder 515.1. The outputs of the fifth multiplier of the elements of the Galois field 514.5 are connected to the fifth inputs of the second adder of the elements of the Galois field 515.1. The outputs of the sixth multiplier of the elements of the Galois field 514.6 are connected to the sixth inputs of the second adder of the elements of the Galois field 515.1. The outputs of the second adder of the Galois field elements 515.1 are connected to the first inputs of the third switch 513.2 and the second inputs of the fourth switch 513.3.

Выходы третьего сумматора элементов поля Галуа 515.2 соединены с шестыми входами третьего коммутатора 513.2 и седьмыми входами четвертого коммутатора 513.3.The outputs of the third adder of the Galois field elements 515.2 are connected to the sixth inputs of the third switch 513.2 and the seventh inputs of the fourth switch 513.3.

Выходы седьмого перемножителя элементов поля Галуа 514.7 соединены с первыми входами четвертого сумматора элементов поля Галуа 515.3. Выходы восьмого перемножителя элементов поля Галуа 514.8 соединены со вторыми входами четвертого сумматора элементов поля Галуа 515.3. Выходы девятого перемножителя элементов поля Галуа 514.9 соединены с третьими входами четвертого сумматора элементов поля Галуа 515.3. Выходы десятого перемножителя элементов поля Галуа 514.10 соединены с четвертыми входами четвертого сумматора элементов поля Галуа 515.3. Выходы четвертого сумматора элементов поля Галуа 515.3 соединены с первыми, четвертыми и пятыми входами четвертого коммутатора 513.3 и вторыми и третьими входами третьего коммутатора 513.2.The outputs of the seventh multiplier of the elements of the Galois field 514.7 are connected to the first inputs of the fourth adder of the elements of the Galois field 515.3. The outputs of the eighth Galois field element multiplier 514.8 are connected to the second inputs of the fourth Galois field element adder 515.3. The outputs of the ninth multiplier of the elements of the Galois field 514.9 are connected to the third inputs of the fourth adder of the elements of the Galois field 515.3. The outputs of the tenth multiplier of the elements of the Galois field 514.10 are connected to the fourth inputs of the fourth adder of the elements of the Galois field 515.3. The outputs of the fourth adder of the Galois field elements 515.3 are connected to the first, fourth and fifth inputs of the fourth switch 513.3 and the second and third inputs of the third switch 513.2.

Выходы третьего коммутатора 513.2 соединены со входами селектора нулевого элемента поля Галуа 517.1 и входами первого инвертора элементов поля Галуа 516.The outputs of the third switch 513.2 are connected to the inputs of the selector of the zero element of the Galois field 517.1 and the inputs of the first inverter of the elements of the Galois field 516.

Выход селектора нулевого элемента поля Галуа 517.1 соединен со вторым входом логического элемента ИЛИ-НЕ 518.The output of the Galois field element zero selector 517.1 is connected to the second input of the OR-NOT 518 logic element.

Выходы четвертого коммутатора 513.3 соединены со вторыми входами одиннадцатого перемножителя элементов поля Галуа 514.11.The outputs of the fourth switch 513.3 are connected to the second inputs of the eleventh multiplier of the Galois field elements 514.11.

Выход логического элемента ИЛИ-НЕ 518 соединен со вторым входом первого логического элемента И 519 и является первым выходом блока вычисления невязок (Msk2). Выходы первого инвертора элементов поля Галуа 516 соединены с первыми входами одиннадцатого перемножителя элементов поля Галуа 514.11. Выход первого логического элемента И является третьим выходом блока вычисления невязок (SXi).The output of the OR gate 518 is connected to the second input of the first AND gate 519 and is the first output of the residual calculation block (Msk2). The outputs of the first inverter of the elements of the Galois field 516 are connected to the first inputs of the eleventh multiplier of the elements of the Galois field 514.11. The output of the first logical element AND is the third output of the residual computation unit (SX i ).

Выходы одиннадцатого перемножителя элементов поля Галуа 514.11 соединены со вторыми входами первой схемы сравнения кодов 517.2 и являются вторыми выходами блока вычисления невязок (сигналы Δ).The outputs of the eleventh Galois field element multiplier 514.11 are connected to the second inputs of the first code comparison circuit 517.2 and are the second outputs of the residual calculation unit (signals Δ).

Блок произведений дробей Ri (фиг.4) содержит пятый коммутатор 511.10, шестой коммутатор 511.11, седьмой коммутатор 511.12, первый регистр Rg1 511.20, второй регистр Rg1 511.21, третий регистр Rg1 511.22, четвертый регистр Rg1 511.23, первый-десятый блоки вентилей 511.30-511.39, двенадцатый-семнадцатый перемножители элементов поля Галуа 511.40-511.45, схему формирования веса 511.50 и вторую схему сравнения кодов 511.60.The fraction product block R i (Fig. 4) contains the fifth switch 511.10, the sixth switch 511.11, the seventh switch 511.12, the first register Rg1 511.20, the second register Rg1 511.21, the third register Rg1 511.22, the fourth register Rg1 511.23, the first to tenth valve blocks 511.30- 511.39, twelfth to seventeenth multipliers of Galois field elements 511.40-511.45, a weight generation scheme 511.50 and a second code comparison scheme 511.60.

Первые входы пятого коммутатора 511.10 являются первыми входами блока произведений дробей Ri (сигналы R i '

Figure 00000020
). Вторые входы пятого коммутатора 511.10 являются вторыми входами блока произведений дробей Ri (сигналы R i ' '
Figure 00000021
). Третий вход пятого коммутатора 511.10 соединен с третьим входом шестого коммутатора 511.11 и является шестым входом блока произведений дробей Ri (сигнал CMx). Первый вход шестого коммутатора 511.11 является третьим входом блока произведений дробей Ri (сигнал Msk1'). Второй вход двадцатого коммутатора 511.11 является четвертым входом блока произведений дробей Ri (сигнал Msk1''). Выходы пятого коммутатора 511.10 соединены с первыми входами первого, второго, третьего и четвертого регистров Rg1 511.20-511.23. Выход шестого коммутатора 511.11 соединен со вторыми входами первого, второго, третьего и четвертого регистров Rg1 511.20-511.23. Третьи входы первого, второго, третьего и четвертого регистров Rg1 511.20-511.23 являются седьмыми входами блока произведений дробей Ri (сигналы Ld).The first inputs of the fifth switch 511.10 are the first inputs of the block of fractions R i (signals R i ''
Figure 00000020
) The second inputs of the fifth switch 511.10 are the second inputs of the block of fractions R i (signals R i '' ''
Figure 00000021
) The third input of the fifth switch 511.10 is connected to the third input of the sixth switch 511.11 and is the sixth input of the fraction unit R i (CMx signal). The first input of the sixth switch 511.11 is the third input of the fraction product block R i (signal Msk1 '). The second input of the twentieth switch 511.11 is the fourth input of the fraction product block R i (signal Msk1 ''). The outputs of the fifth switch 511.10 are connected to the first inputs of the first, second, third and fourth registers Rg1 511.20-511.23. The output of the sixth switch 511.11 is connected to the second inputs of the first, second, third and fourth registers Rg1 511.20-511.23. The third inputs of the first, second, third and fourth registers Rg1 511.20-511.23 are the seventh inputs of the block of fractions R i (signals Ld).

Первые выходы первого регистра Rg1 511.20 соединены с четвертыми входами четвертого блока вентилей 511.33 и вторыми входами пятнадцатого, шестнадцатого и семнадцатого перемножителей элементов поля Галуа 511.43-511.45. Второй выход регистра Rg1 511.20 соединен с третьими входами первого, второго, третьего блоков вентилей 511.30-511.32, с первым входом схемы формирования веса 511.50 и первыми входами пятого, шестого и седьмого блока вентилей 511.34-511.36.The first outputs of the first register Rg1 511.20 are connected to the fourth inputs of the fourth block of valves 511.33 and the second inputs of the fifteenth, sixteenth and seventeenth multipliers of Galois field elements 511.43-511.45. The second output of the register Rg1 511.20 is connected to the third inputs of the first, second, third valve blocks 511.30-511.32, with the first input of the weight formation circuit 511.50 and the first inputs of the fifth, sixth and seventh valve block 511.34-511.36.

Первые выходы второго регистра Rg1 511.21 соединены со вторыми входами тринадцатого 511.41 и четырнадцатого 511.42 перемножителей элементов поля Галуа, четвертыми входами третьего блока вентилей 511.32 и первыми входами семнадцатого перемножителя элементов поля Галуа 511.45. Второй выход второго регистра Rg1 511.21 соединен со вторыми входами первого 511.30, второго 511.31 и пятого 511.34 блоков вентилей, третьим входом четвертого блока вентилей 511.33, первыми входами восьмого 511.37 и девятого 511.38 блоков вентилей и четвертым входом схемы формирования веса 511.50.The first outputs of the second register Rg1 511.21 are connected to the second inputs of the thirteenth 511.41 and fourteenth 511.42 Galois field element multipliers, the fourth inputs of the third valve block 511.32 and the first inputs of the seventeenth Galois field element multiplier 511.45. The second output of the second register Rg1 511.21 is connected to the second inputs of the first 511.30, second 511.31 and fifth 511.34 valve blocks, the third input of the fourth valve block 511.33, the first inputs of the eighth 511.37 and ninth 511.38 valve blocks and the fourth input of the weight formation circuit 511.50.

Первые выходы третьего регистра Rg1 511.22 соединены со вторыми входами двенадцатого перемножителя 511.40, четвертыми входами второго блока вентилей 511.31 и первыми входами четырнадцатого 511.42 и шестнадцатого 511.44 перемножителей элементов поля Галуа. Второй выход третьего регистра Rg1 511.22 соединен с первым входом первого блока вентилей 511.30, вторыми входами третьего 511.32, четвертого 511.33, шестого 511.35 и восьмого 511.37 блоков вентилей, первым входом десятого блока вентилей 511.39 и третьим входом схемы формирования веса 511.50.The first outputs of the third register Rg1 511.22 are connected to the second inputs of the twelfth multiplier 511.40, the fourth inputs of the second valve block 511.31 and the first inputs of the fourteenth 511.42 and sixteenth 511.44 multipliers of Galois field elements. The second output of the third register Rg1 511.22 is connected to the first input of the first valve block 511.30, the second inputs of the third 511.32, fourth 511.33, sixth 511.35 and eighth 511.37 valve blocks, the first input of the tenth valve block 511.39 and the third input of the weight formation circuit 511.50.

Первые выходы четвертого регистра Rg1 511.23 соединены с четвертыми входами первого блока вентилей 511.30, первыми входами двенадцатого 511.40, тринадцатого 511.41 и пятнадцатого 511.43 перемножителей элементов поля Галуа. Второй выход четвертого регистра Rg1 511.23 соединен с первыми входами второго 511.31, третьего 511.32 и четвертого 511.33 блоков вентилей, вторыми входами седьмого 511.36, девятого 511.38 и десятого 511.39 блоков вентилей и вторым входом схемы формирования веса 511.50.The first outputs of the fourth register Rg1 511.23 are connected to the fourth inputs of the first valve block 511.30, the first inputs of the twelfth 511.40, thirteenth 511.41 and fifteenth 511.43 multipliers of Galois field elements. The second output of the fourth register Rg1 511.23 is connected to the first inputs of the second 511.31, third 511.32 and fourth 511.33 valve blocks, the second inputs of the seventh 511.36, ninth 511.38 and tenth 511.39 valve blocks and the second input of the weight formation circuit 511.50.

Выходы двенадцатого перемножителя элементов поля Галуа 511.40 соединены с третьими входами пятого блока вентилей 511.34. Выходы тринадцатого перемножителя элементов поля Галуа 511.41 соединены с третьими входами шестого блока вентилей 511.35. Выходы четырнадцатого перемножителя элементов поля Галуа 511.42 соединены с третьими входами седьмого блока вентилей 511.36. Выходы пятнадцатого перемножителя элементов поля Галуа 511.43 соединены с третьими входами восьмого блока вентилей 511.37. Выходы шестнадцатого перемножителя элементов поля Галуа 511.44 соединены с третьими входами девятого блока вентилей 511.38. Выходы семнадцатого перемножителя элементов поля Галуа 511.45 соединены с третьими входами десятого блока вентилей 511.39.The outputs of the twelfth multiplier of the elements of the Galois field 511.40 are connected to the third inputs of the fifth block of valves 511.34. The outputs of the thirteenth multiplier of the Galois field elements 511.41 are connected to the third inputs of the sixth valve block 511.35. The outputs of the fourteenth multiplier of the Galois field elements 511.42 are connected to the third inputs of the seventh valve block 511.36. The outputs of the fifteenth multiplier of the elements of the Galois field 511.43 are connected to the third inputs of the eighth block of valves 511.37. The outputs of the sixteenth multiplier of the elements of the Galois field 511.44 are connected to the third inputs of the ninth block of valves 511.38. The outputs of the seventeenth multiplier of the elements of the Galois field 511.45 are connected to the third inputs of the tenth valve block 511.39.

На первые входы седьмого коммутатора 511.12 подается константа '1'. На вторые входы седьмого коммутатора 511.12 подается константа '0'. Третьи входы седьмого коммутатора 511.12 являются пятыми входами блока произведений дробей Ri. Выходы седьмого коммутатора 511.12 соединены с первыми входами второй схемы сравнения кодов 511.60. Выходы схемы формирования веса 511.50 соединены со вторыми входами второй схемы сравнения кодов 511.60.The first inputs of the seventh switch 511.12 are fed with the constant '1'. The second inputs of the seventh switch 511.12 are fed with the constant '0'. The third inputs of the seventh switch 511.12 are the fifth inputs of the fraction product block R i . The outputs of the seventh switch 511.12 are connected to the first inputs of the second code comparison circuit 511.60. The outputs of the weight formation circuit 511.50 are connected to the second inputs of the second code comparison circuit 511.60.

Выходы первого блока вентилей 511.30 являются первыми выходами блока произведений дробей Ri. Выходы второго блока вентилей 511.31 являются вторыми выходами блока произведений дробей Ri. Выходы третьего блока вентилей 511.32 являются третьими выходами блока произведений дробей Ri. Выходы четвертого блока вентилей 511.33 являются четвертыми выходами блока произведений дробей Ri. Выходы пятого блока вентилей 511.34 являются пятыми выходами блока произведений дробей Ri. Выходы шестого блока вентилей 511.35 являются шестыми выходами блока произведений дробей Ri. Выходы седьмого блока вентилей 511.36 являются седьмыми выходами блока произведений дробей Ri. Выходы восьмого блока вентилей 511.37 являются восьмыми выходами блока произведений дробей Ri. Выходы девятого блока вентилей 511.38 являются девятыми выходами блока произведений дробей Ri. Выходы десятого блока вентилей 511.39 являются десятыми выходами блока произведений дробей Ri. Выход второй схемы сравнения кодов 511.60 является одиннадцатым выходом блока произведений дробей Ri.The outputs of the first block of valves 511.30 are the first outputs of the block of fractions R i . The outputs of the second block of valves 511.31 are the second outputs of the block of fractions R i . The outputs of the third block of valves 511.32 are the third outputs of the block of fractions R i . The outputs of the fourth valve block 511.33 are the fourth outputs of the fraction product block R i . The outputs of the fifth block of valves 511.34 are the fifth outputs of the block of fractions R i . The outputs of the sixth valve block 511.35 are the sixth outputs of the fraction product block R i . The outputs of the seventh block of valves 511.36 are the seventh outputs of the block of products of fractions R i . The outputs of the eighth block of valves 511.37 are the eighth outputs of the block of fractions R i . The outputs of the ninth block of valves 511.38 are the ninth outputs of the block of fractions R i . The outputs of the tenth valve block 511.39 are the tenth outputs of the fraction product block R i . The output of the second code comparison scheme 511.60 is the eleventh output of the fraction product block R i .

Информация с выходов пятого 511.10 и шестого 511.11 коммутаторов заносится в регистры Rg1 511.20-511.23 при активных сигналах, подаваемых на их третьи входы.Information from the outputs of the fifth 511.10 and sixth 511.11 switches is entered into the registers Rg1 511.20-511.23 with active signals supplied to their third inputs.

Блок произведений коэффициентов Ai (фиг.5) содержит восьмой коммутатор 512.10, второй 512.20, третий 512.21, четвертый 512.22 и пятый 512.23 регистры-защелки, пятый-десятый сумматоры элементов поля Галуа 512.30-512.35, восемнадцатый-двадцать пятый перемножители элементов поля Галуа 512.40-512.47.The coefficient product block A i (Fig. 5) contains the eighth switch 512.10, the second 512.20, the third 512.21, the fourth 512.22 and the fifth 512.23 latch registers, the fifth to tenth adders of the Galois field elements 512.30-512.35, the eighteenth to twenty-fifth Galois field element multipliers 512.40 -512.47.

Первые входы восьмого коммутатора 512.10 являются первыми входами блока произведений коэффициентов Ai (сигналы A x '

Figure 00000022
). Вторые входы восьмого коммутатора 512.10 являются вторыми входами блока произведений коэффициентов Ai (сигналы A x ' '
Figure 00000023
). Третий вход восьмого коммутатора 512.10 является третьим входом блока произведений коэффициентов Ai (сигнал CMx). Вторые входы второго 512.20, третьего 512.21, четвертого 512.22 и пятого 512.23 регистров-защелок являются разрядами четвертых входов блока произведений коэффициентов Ai (сигналы Ld). Выходы восьмого коммутатора 512.10 соединены с первыми входами второго 512.20, третьего 512.21, четвертого 512.22 и пятого 512.23 регистров-защелок.The first inputs of the eighth switch 512.10 are the first inputs of the block of products of the coefficients A i (signals A x ''
Figure 00000022
) The second inputs of the eighth switch 512.10 are the second inputs of the block of products of the coefficients A i (signals A x '' ''
Figure 00000023
) The third input of the eighth switch 512.10 is the third input of the block of coefficient products A i (CMx signal). The second inputs of the second 512.20, third 512.21, fourth 512.22 and fifth 512.23 of the latch registers are the bits of the fourth inputs of the block of the product of the coefficients A i (signals Ld). The outputs of the eighth switch 512.10 are connected to the first inputs of the second 512.20, third 512.21, fourth 512.22 and fifth 512.23 register-latches.

Выходы второго регистра-защелки 512.20 соединены с первыми входами пятого 512.30, шестого 512.31 и восьмого 512.33 сумматоров элементов поля Галуа. Выходы третьего регистра-защелки 512.21 соединены со вторыми входами пятого сумматора элементов поля Галуа 512.30 и первыми входом седьмого 512.32 и девятого 512.34 сумматоров элементов поля Галуа. Выходы четвертого регистра-защелки 512.22 соединены с первыми входами десятого сумматора элементов поля Галуа 512.35 и вторыми входами шестого 512.31 и седьмого 512.32 сумматоров элементов поля Галуа. Выходы пятого регистра-защелки 512.23 соединены со вторым входами восьмого 512.33, девятого 512.34 и десятого 512.35 сумматоров элементов поля Галуа.The outputs of the second register-latch 512.20 are connected to the first inputs of the fifth 512.30, sixth 512.31 and eighth 512.33 adders of the Galois field elements. The outputs of the third register-latch 512.21 are connected to the second inputs of the fifth adder of Galois field elements 512.30 and the first input of the seventh 512.32 and ninth 512.34 adders of Galois field elements. The outputs of the fourth register-latch 512.22 are connected to the first inputs of the tenth adder of Galois field elements 512.35 and the second inputs of the sixth 512.31 and seventh 512.32 adders of Galois field elements. The outputs of the fifth register-latch 512.23 are connected to the second inputs of the eighth 512.33, ninth 512.34 and tenth 512.35 adders of the Galois field elements.

Выходы пятого сумматора элементов поля Галуа 512.30 соединены с первыми входами восемнадцатого 512.40, двадцать третьего 512.45 и двадцать четвертого 512.46 перемножителей элементов поля Галуа и являются девятыми выходами блока произведений коэффициентов Ai.The outputs of the fifth adder of Galois field elements 512.30 are connected to the first inputs of the eighteenth 512.40, twenty-third 512.45 and twenty-fourth 512.46 multipliers of Galois field elements and are the ninth outputs of the block of the product of coefficients A i .

Выходы шестого сумматора элементов поля Галуа 512.31 соединены с первыми входами девятнадцатого 512.41 и двадцать второго 512.44 перемножителей элементов поля Галуа, вторыми входами двадцать четвертого перемножителя элементов поля Галуа 512.46 и являются десятыми выходами блока произведений коэффициентов Ai.The outputs of the sixth adder of Galois field elements 512.31 are connected to the first inputs of the nineteenth 512.41 and twenty second 512.44 Galois field element multipliers, the second inputs of the twenty-fourth Galois field element multiplier 512.46 and are the tenth outputs of the block of coefficient products A i .

Выходы седьмого сумматора элементов поля Галуа 512.32 соединены с первыми входами двадцатого 512.42 и двадцать первого 512.43 перемножителей элементов поля Галуа, третьими входами двадцать четвертого перемножителя элементов поля Галуа 512.46 и являются одиннадцатыми выходами блока произведений коэффициентов Ai.The outputs of the seventh adder of Galois field elements 512.32 are connected to the first inputs of the twentieth 512.42 and twenty first 512.43 Galois field element multipliers, the third inputs of the twenty-fourth Galois field element multiplier 512.46 and are the eleventh outputs of the block of coefficient products A i .

Выходы восьмого сумматора элементов поля Галуа 512.33 соединены со вторыми входами двадцатого 512.42, двадцать второго 512.44 и двадцать третьего перемножителя элементов поля Галуа 512.45.The outputs of the eighth adder of Galois field elements 512.33 are connected to the second inputs of the twentieth 512.42, twenty second 512.44 and twenty-third multiplier of Galois field elements 512.45.

Выходы девятого сумматора элементов поля Галуа 512.34 соединены со вторыми входами девятнадцатого 512.41 и двадцать первого 512.43 перемножителя элементов поля Галуа и третьими входами двадцать третьего перемножителя элементов поля Галуа 512.45.The outputs of the ninth adder of Galois field elements 512.34 are connected to the second inputs of the nineteenth 512.41 and twenty-first 512.43 of the Galois field element multiplier and the third inputs of the twenty-third Galois field element multiplier 512.45.

Выходы десятого сумматора элементов поля Галуа 512.35 соединены с третьими входами двадцать первого 512.43 и двадцать второго 512.44 перемножителей элементов поля Галуа и вторыми входами восемнадцатого перемножителя элементов поля Галуа 512.40.The outputs of the tenth Galois field element adder 512.35 are connected to the third inputs of the twenty-first 512.43 and twenty second 512.44 Galois field multipliers and the second inputs of the eighteenth Galois field element multiplier 512.40.

Выходы восемнадцатого перемножителя элементов поля Галуа 512.40 соединены с третьими входами двадцать пятого перемножителя элементов поля Галуа 512.47 и являются первыми выходами блока произведений коэффициентов Ai.The outputs of the eighteenth Galois field element multiplier 512.40 are connected to the third inputs of the twenty-fifth Galois field element multiplier 512.47 and are the first outputs of the block of coefficient products A i .

Выходы девятнадцатого перемножителя элементов поля Галуа 512.41 соединены со вторыми входами двадцать пятого перемножителя элементов поля Галуа 512.47 и являются вторыми выходами блока произведений коэффициентов Ai.The outputs of the nineteenth Galois field element multiplier 512.41 are connected to the second inputs of the twenty fifth Galois field element multiplier 512.47 and are the second outputs of the block of coefficient products A i .

Выходы двадцатого перемножителя элементов поля Галуа 512.42 соединены с первыми входами двадцать пятого перемножителя элементов поля Галуа 512.47 и являются третьими выходами блока произведений коэффициентов Ai.The outputs of the twentieth Galois field element multiplier 512.42 are connected to the first inputs of the twenty-fifth Galois field element multiplier 512.47 and are the third outputs of the block of coefficient products A i .

Выходы двадцать первого перемножителя элементов поля Галуа 512.43 являются четвертыми выходами блока произведений коэффициентов Ai.The outputs of the twenty-first multiplier of the Galois field elements 512.43 are the fourth outputs of the block of products of the coefficients A i .

Выходы двадцать второго перемножителя элементов поля Галуа 512.44 являются пятыми выходами блока произведений коэффициентов Ai.The outputs of the twenty-second multiplier of the Galois field elements 512.44 are the fifth outputs of the block of products of the coefficients A i .

Выходы двадцать третьего перемножителя элементов поля Галуа 512.45 являются шестыми выходами блока произведений коэффициентов Ai.The outputs of the twenty-third multiplier of the Galois field elements 512.45 are the sixth outputs of the block of the product of the coefficients A i .

Выходы двадцать четвертого перемножителя элементов поля Галуа 512.46 являются седьмыми выходами блока произведений коэффициентов Ai.The outputs of the twenty-fourth multiplier of the Galois field elements 512.46 are the seventh outputs of the block of the product of the coefficients A i .

Выходы двадцать пятого перемножителя элементов поля Галуа 512.47 являются восьмыми выходами блока произведений коэффициентов Ai.The outputs of the twenty-fifth multiplier of Galois field elements 512.47 are the eighth outputs of the block of the product of the coefficients A i .

Информация с выходов восьмого коммутатора 512.10 заносится в регистры-защелки 512.20-512.23 при активных сигналах, подаваемых на их вторые входы.Information from the outputs of the eighth switch 512.10 is recorded in the latches registers 512.20-512.23 with active signals supplied to their second inputs.

Регистр Rg1 (фиг.6) содержит шестой регистр-защелку 511.25, логический элемент ИЛИ 511.26, второй-восьмой логические элементы И 511.27-511.33, логический элемент НЕ 511.34.The register Rg1 (Fig.6) contains the sixth latch register 511.25, the OR gate 511.26, the second to eighth logical gates AND 511.27-511.33, the logical element NOT 511.34.

Первый-восьмой входы шестого регистра-защелки 511.25 являются первыми входами регистра Rg1. Девятый вход шестого регистра-защелки 511.25 является вторым входом регистра Rg1 (сигнал Msk1). Десятый вход шестого регистра-защелки 511.25 является третьим входом регистра Rg1 (сигнал Ldp). Первый выход шестого регистра-защелки 511.25 соединен с первым входом логического элемента ИЛИ 511.26. Со второго по восьмой выходы шестого регистра-защелки 511.25 соединены с первыми входами второго-восьмого логических элементов И 511.27-511.33. Девятый выход шестого регистра-защелки 511.25 соединен с входом логического элемента НЕ 511.34 и вторым входом логического элемента ИЛИ 511.26. Выход логического элемента НЕ 511.34 соединен со вторыми входами второго-восьмого логических элементов И 511.27-511.33 и является вторым выходом регистра Rg1. Выход логического элемента ИЛИ 511.26 и выходы второго-восьмого логических элементов И 511.27-511.33 являются первыми выходами регистра Rg1.The first to eighth inputs of the sixth register-latch 511.25 are the first inputs of the register Rg1. The ninth input of the sixth register-latch 511.25 is the second input of the register Rg1 (signal Msk1). The tenth input of the sixth register-latch 511.25 is the third input of the register Rg1 (signal Ld p ). The first output of the sixth register-latch 511.25 is connected to the first input of the OR gate 511.26. From the second to the eighth outputs of the sixth register-latch 511.25 are connected to the first inputs of the second to eighth logical elements AND 511.27-511.33. The ninth output of the sixth register-latch 511.25 is connected to the input of the logic element NOT 511.34 and the second input of the logic element OR 511.26. The output of the logical element NOT 511.34 is connected to the second inputs of the second to eighth logical elements AND 511.27-511.33 and is the second output of the register Rg1. The output of the OR logic element 511.26 and the outputs of the second to eighth logical elements AND 511.27-511.33 are the first outputs of the register Rg1.

В шестой регистр-защелку 511.25 информация с его первых девяти входов заносится при активном сигнале Ldp, подаваемом на его десятый вход.In the sixth latch register 511.25, information from its first nine inputs is entered with the active signal Ld p supplied to its tenth input.

Блок подсчета невязок (фиг.7) содержит одиннадцатый блок вентилей 521, блок памяти с произвольным доступом 522, схему инкремента 523, третью схему сравнения кодов 524, девятый логический элемент И 525, девятый коммутатор 526, седьмой регистр-защелку 527, десятый логический элемент И 528.The residual counting unit (Fig. 7) contains the eleventh block of gates 521, the random access memory block 522, the increment scheme 523, the third code comparison circuit 524, the ninth logical element And 525, the ninth switch 526, the seventh latch register 527, the tenth logical element And 528.

Второй вход одиннадцатого блока вентилей соединен с третьим входом девятого коммутатора и является первым входом блока подсчета невязок, на который подается сигнал I. Выходы одиннадцатого блока вентилей соединены с первыми входами DI блока памяти с произвольным доступом 522. Выходы блока памяти с произвольным доступом 522 соединены с первыми входами схемы инкремента 523. Выходы схемы инкремента 523 соединены с первыми входами одиннадцатого блока вентилей 521 и первыми входами третьей схемы сравнения кодов 524. Вторые входы третьей схемы сравнения кодов являются шестыми входами блока подсчета невязок (w). Выход третьей схемы сравнения кодов 524 соединен с первым входом девятого логического элемента И 525. Выход девятого элемента логическое И 525 является первым выходом блока подсчета невязок, на котором формируется сигнал St. Первые входы девятого коммутатора 526 являются вторыми входами блока подсчета невязок, на который подаются сигналы AI. Выходы девятого коммутатора 526 соединены со вторыми входами A блока памяти с произвольным доступом 522. Входы седьмого регистра-защелки 527 являются третьими входами блока подсчета невязок, на который подаются сигналы Δ. Выходы седьмого регистра-защелки 527 (сигналы Δ') соединены со вторыми входами девятого коммутатора 526 и являются вторыми выходами блока подсчета невязок. Первый вход десятого логического элемента И 528 является четвертым входом блока подсчета невязок, на который подается сигнал ¬Msk2. Второй вход десятого логического элемента И 528 является пятым входом блока подсчета невязок, на который подается сигнал E. Выход десятого логического элемента И 528 соединен со вторым входом схемы инкремента 523 и вторым входом девятого логического элемента И 525.The second input of the eleventh valve block is connected to the third input of the ninth switch and is the first input of the residual counting block to which signal I. The outputs of the eleventh valve block are connected to the first inputs DI of the random access memory block 522. The outputs of the random access memory block 522 are connected to the first inputs of the increment circuit 523. The outputs of the increment circuit 523 are connected to the first inputs of the eleventh valve block 521 and the first inputs of the third code comparison circuit 524. The second inputs of the third comparison circuit i codes are the sixth inputs of the residual counting unit (w). The output of the third code comparison circuit 524 is connected to the first input of the ninth AND gate 525. The output of the ninth logical gate AND 525 is the first output of the residual counting block on which the signal St. The first inputs of the ninth switch 526 are the second inputs of the residual counting unit to which AI signals are supplied. The outputs of the ninth switch 526 are connected to the second inputs A of the random access memory block 522. The inputs of the seventh latch register 527 are the third inputs of the residual counting unit to which the signals Δ are supplied. The outputs of the seventh register-latch 527 (signals Δ ') are connected to the second inputs of the ninth switch 526 and are the second outputs of the block counting residuals. The first input of the tenth logical element AND 528 is the fourth input of the residual counting unit, to which the signal ¬Msk2 is applied. The second input of the tenth AND gate 528 is the fifth input of the residual counting unit to which the signal E is fed. The output of the tenth logic gate And 528 is connected to the second input of the increment circuit 523 and the second input of the ninth logic gate And 525.

Блок вентилей 521 передает информацию с первых входов на выходы, когда на второй его вход подается логический ноль, в противном случае на его выходах формируются нули.The valve block 521 transmits information from the first inputs to the outputs when a logical zero is supplied to its second input, otherwise zeros are formed at its outputs.

Схема инкремента 523 осуществляет суммирование кода, подаваемого на его первые входы, с единицей только при наличии логической 1 на ее втором входе.The increment scheme 523 sums the code supplied to its first inputs with one only if there is a logical 1 at its second input.

Третья схема сравнения кодов 524 формирует на своем выходе сигнал логической 1 при равенстве кодов на ее входах.The third code comparison circuit 524 generates a logic 1 signal at its output when the codes at its inputs are equal.

Блок дискретного преобразования Фурье (фиг.8) содержит второе местное устройство управления 410, первый модуль дискретного преобразования Фурье многочлена Λ ( 2 t С ) ( x )

Figure 00000003
420.1, второй модуль дискретного преобразования Фурье многочлена B ( 2 t С ) ( x )
Figure 00000024
420.2, десятый коммутатор 430.1, второй инвертор элементов поля Галуа 440, двадцать шестой перемножитель элементов поля Галуа 450.1, двадцать седьмой перемножитель элементов поля Галуа 450.2, одиннадцатый коммутатор 430.2, умножитель на α 470.1, схему возведения в куб элементов поля Галуа 470.2, восьмой регистр-защелку 480, двоичный счетчик номеров позиций принятого слова 490 с коэффициентом пересчета n.The discrete Fourier transform block (Fig. 8) contains a second local control device 410, the first module of the discrete Fourier transform of the polynomial Λ ( 2 t FROM ) ( x )
Figure 00000003
420.1, second module of the discrete Fourier transform of a polynomial B ( 2 t FROM ) ( x )
Figure 00000024
420.2, tenth switch 430.1, second inverter of Galois field elements 440, twenty-sixth multiplier of Galois field elements 450.1, twenty-seventh multiplier of Galois field elements 450.2, eleventh switch 430.2, multiplier by α 470.1, scheme for cubing Galois field elements 470.2, eighth register latch 480, binary counter of the position numbers of the received word 490 with the conversion factor n.

Первые входы второго местного устройства управления 410 являются первыми входами блока дискретного преобразования Фурье 400, на которые подаются сигналы Control. Первые выходы второго местного устройства управления 400 являются вторыми выходами блока дискретного преобразования Фурье 400, на которые выдаются сигналы State. Вторые выходы второго местного устройства управления 410 являются третьими выходами блока дискретного преобразования Фурье 400, на которые выдаются сигналы {PE}. Третьи выходы второго местного устройства управления 410 соединены со вторыми входами первого модуля дискретного преобразования Фурье 420.1 и вторыми входами второго модуля дискретного преобразования Фурье 420.2. Четвертый выход второго местного устройства управления 410 соединен с третьим входом десятого коммутатора 430.1 и третьим входом одиннадцатого коммутатора 430.2. Пятый выход второго местного устройства управления 410 соединен со вторым входом схемы возведения в куб 470.2.The first inputs of the second local control device 410 are the first inputs of the discrete Fourier transform 400, to which Control signals are supplied. The first outputs of the second local control device 400 are the second outputs of the discrete Fourier transform 400, to which State signals are output. The second outputs of the second local control device 410 are the third outputs of the discrete Fourier transform 400, to which {PE} signals are output. The third outputs of the second local control device 410 are connected to the second inputs of the first discrete Fourier transform module 420.1 and the second inputs of the second discrete Fourier transform module 420.2. The fourth output of the second local control device 410 is connected to the third input of the tenth switch 430.1 and the third input of the eleventh switch 430.2. The fifth output of the second local control device 410 is connected to the second input of the cube 470.2.

Первые входы первого модуля дискретного преобразования Фурье 420.1 и второго модуля дискретного преобразования Фурье 420.2 являются вторыми и третьими входами блока дискретного преобразования Фурье 400, на которые подаются сигналы Λ(x) и B(x), соответственно. Первые выходы первого модуля дискретного преобразования Фурье 420.1 (сигналы Λ(α-i)) соединены с первыми входами десятого коммутатора 430.1. Второй выход первого модуля дискретного преобразования Фурье 420.1 (sel0) соединен с третьим входом второго местного устройства управления 410 и первым входом одиннадцатого коммутатора 430.2. Первые выходы второго модуля дискретного преобразования Фурье 420.2 (B(α-i)) соединены со вторыми входами десятого коммутатора 430.1. Второй выход второго модуля дискретного преобразования Фурье 420.2 (sel0) соединен со вторым входом одиннадцатого коммутатора 430.2. Первые выходы десятого коммутатора 430.1 соединены с входами второго инвертора элементов поля Галуа 440. Вторые выходы десятого коммутатора 430.1 соединены с первыми входами двадцать седьмого перемножителя элементов поля Галуа 450.2. Выходы схемы возведения в куб 470.2 соединены со вторыми входами двадцать седьмого перемножителя элементов поля Галуа 450.2. Выходы двадцать седьмого перемножителя элементов поля Галуа 450.2 соединены со вторыми входами двадцать шестого перемножителя элементов поля Галуа 450.1. Выходы второго инвертора элементов поля Галуа 440 соединены с первыми входами двадцать шестого перемножителя элементов поля Галуа 450.1. Выходы двадцать шестого перемножителя элементов поля Галуа являются четвертыми выходами блока дискретного преобразования Фурье 400, на которые выдаются сигналы Ri. Выход одиннадцатого коммутатора 430.2 является пятым выходом блока дискретного преобразования Фурье 400, на который выдается сигнал Msk1. Выходы двоичного счетчика 490 соединены со вторыми входами второго местного устройства управления 410 и являются первыми выходами блока дискретного преобразования Фурье 400, на которые выдаются сигналы AddrR1. Выходы умножителя на α 470.1 соединены с входами восьмого регистра-защелки 480. Выходы восьмого регистра-защелки 480 соединены с входами умножителя на α 470.1, входами схемы возведения в куб элементов поля Галуа 470.2 и являются шестыми выходами блока дискретного преобразования Фурье 400, на которые выдаются сигналы Ai.The first inputs of the first discrete Fourier transform module 420.1 and the second discrete Fourier transform module 420.2 are the second and third inputs of the discrete Fourier transform 400, to which signals Λ (x) and B (x) are applied, respectively. The first outputs of the first discrete Fourier transform module 420.1 (signals Λ (α -i )) are connected to the first inputs of the tenth switch 430.1. The second output of the first discrete Fourier transform module 420.1 (sel0) is connected to the third input of the second local control device 410 and the first input of the eleventh switch 430.2. The first outputs of the second discrete Fourier transform module 420.2 (B (α -i )) are connected to the second inputs of the tenth switch 430.1. The second output of the second discrete Fourier transform module 420.2 (sel0) is connected to the second input of the eleventh switch 430.2. The first outputs of the tenth switch 430.1 are connected to the inputs of the second inverter of the elements of the Galois field 440. The second outputs of the tenth switch 430.1 are connected to the first inputs of the twenty-seventh multiplier of the elements of the Galois field 450.2. The outputs of the cubing scheme 470.2 are connected to the second inputs of the twenty-seventh multiplier of the elements of the Galois field 450.2. The outputs of the twenty-seventh multiplier of the elements of the Galois field 450.2 are connected to the second inputs of the twenty-sixth multiplier of the elements of the Galois field 450.1. The outputs of the second inverter of the elements of the Galois field 440 are connected to the first inputs of the twenty-sixth multiplier of the elements of the Galois field 450.1. The outputs of the twenty-sixth multiplier of the Galois field elements are the fourth outputs of the discrete Fourier transform block 400, to which signals R i are issued. The output of the eleventh switch 430.2 is the fifth output of the discrete Fourier transform 400, to which the signal Msk1 is output. The outputs of the binary counter 490 are connected to the second inputs of the second local control device 410 and are the first outputs of the discrete Fourier transform 400, to which the AddrR1 signals are output. The outputs of the multiplier on α 470.1 are connected to the inputs of the eighth register-latch 480. The outputs of the eighth register-latch 480 are connected to the inputs of the multiplier by α 470.1, the inputs of the cube of Galois field elements 470.2 and are the sixth outputs of the discrete Fourier transform 400, to which are issued signals A i .

Описание модулей дискретного преобразования Фурье 420.1 и 420.2 дано в прототипе.The description of the discrete Fourier transform modules 420.1 and 420.2 is given in the prototype.

Десятый коммутатор 430.1 - перекрестный. Когда сигнал на третьем входе - активный, коммутатор работает в режиме перекрестной передачи: значения его первых входов подаются на вторые выходы, значения его вторых входов подаются на первые выходы. При неактивном сигнале на третьем входе коммутатор работает в режиме прямой передачи.Tenth switch 430.1 is cross. When the signal at the third input is active, the switch operates in the cross-transmission mode: the values of its first inputs are fed to the second outputs, the values of its second inputs are fed to the first outputs. With an inactive signal at the third input, the switch operates in direct transmission mode.

Все линии связи, соединяющие блоки на фиг.1-8, по которым передаются данные в виде элементов поля Галуа, являются m-разрядными.All communication lines connecting the blocks of FIGS. 1-8, through which data in the form of Galois field elements are transmitted, are m-bit.

Все используемые триггеры, регистры и счетчики работают по переднему фронту тактового сигнала, который на фиг.1-8 не показан, но подразумевается.All used triggers, registers and counters operate on the leading edge of the clock signal, which is not shown in Figs. 1-8, but is implied.

Сумматоры элементов поля, умножители на постоянные коэффициенты и блоки нахождения обратного элемента поля могут быть реализованы известным образом, в частности сумматоры могут быть реализованы на m двухвходовых элементах ИСКЛЮЧАЮЩЕЕ ИЛИ (сумматорах по модулю 2), умножители на постоянные коэффициенты могут быть реализованы на многовходовых элементах ИСКЛЮЧАЮЩЕЕ ИЛИ, блоки нахождения обратного элемента могут быть реализованы табличным способом.Adders of field elements, multipliers by constant coefficients and blocks for finding the inverse element of the field can be implemented in a known manner, in particular adders can be implemented on m two-input elements EXCLUSIVE OR (adders modulo 2), multipliers by constant coefficients can be implemented on multi-input elements EXCLUSIVE OR, blocks to find the inverse element can be implemented in a tabular manner.

Процедура списочного декодирования представляет собой расширение обычной процедуры декодирования, основанной на алгоритме Берлекэмпа-Месси (см. Егоров С.И. Коррекция ошибок в информационных каналах периферийных устройств ЭВМ. Монография. Курск: Курск. гос. техн. ун-т, 2008. - 252 с.).The list decoding procedure is an extension of the usual decoding procedure based on the Berlekamp-Messi algorithm (see Egorov S.I. Error Correction in the Information Channels of Computer Peripherals. Monograph. Kursk: Kursk State Technical University, 2008. - 252 p.).

Эта процедура (при исправлении tC+τ ошибок, τ - число дополнительно исправляемых ошибок) в укрупненном виде состоит из следующих шагов:This procedure (when correcting t C + τ errors, τ is the number of additionally corrected errors) in an enlarged form consists of the following steps:

1) Вычисление многочлена синдрома S(x).1) Calculation of the polynomial of S (x) syndrome.

2) Вычисление полинома локаторов ошибок Λ ( 2 t С ) ( x )

Figure 00000003
и вспомогательного полинома B ( 2 t С ) ( x )
Figure 00000025
путем выполнения 2tC итераций алгоритма Берлекэмпа-Месси.2) Calculation of a polynomial of error locators Λ ( 2 t FROM ) ( x )
Figure 00000003
and auxiliary polynomial B ( 2 t FROM ) ( x )
Figure 00000025
by performing 2t C iterations of the Berlekamp-Messi algorithm.

3) Вычисление преобразования Фурье многочленов Λ ( 2 t С ) ( x )

Figure 00000003
и B ( 2 t С ) ( x )
Figure 00000026
.3) Calculation of the Fourier transform of polynomials Λ ( 2 t FROM ) ( x )
Figure 00000003
and B ( 2 t FROM ) ( x )
Figure 00000026
.

4) Поиск невязок

Figure 00000027
Δ 2 t С + 1 , Δ 2 t С + 2 , , Δ 2 t С + 2 τ
Figure 00000028
таких, что Λ ( 2 t С + 2 τ ) ( α i ) = 0
Figure 00000029
для точно tC+τ значений i. Соответствующие значения i дают позиции ошибок.4) Search for residuals
Figure 00000027
Δ 2 t FROM + one , Δ 2 t FROM + 2 , ... , Δ 2 t FROM + 2 τ
Figure 00000028
such that Λ ( 2 t FROM + 2 τ ) ( α - i ) = 0
Figure 00000029
for exactly t C + τ values of i. Corresponding values of i give error positions.

5) Вычисление значений ошибок и их исправление.5) Calculation of error values and their correction.

Списочное декодирование обеспечивает исправление tC+τ ошибки путем аналитического продолжения алгоритма Берлекэмпа-Месси еще на 2τ итерации.List decoding provides the correction of t C + τ errors by analytically continuing the Berlekamp-Messi algorithm for another 2τ iterations.

Аналитическое продолжение на две итерации описывается формулой ниже:The analytical continuation for two iterations is described by the formula below:

Figure 00000030
Figure 00000030

где δk=1, если Δk≠0 и 2Lk-1≤k-1, или δk=0 в противном случае. Lk - формальная степень многочлена локаторов ошибок Λ(k)(x).where δ k = 1 if Δk ≠ 0 and 2L k-1 ≤k-1, or δ k = 0 otherwise. L k is the formal degree of the polynomial of error locators Λ (k) (x).

Аналитическое продолжение на 2τ итерации может быть получено применением формулы (1) τ раз:An analytical continuation at 2τ iteration can be obtained by applying the formula (1) τ times:

Figure 00000031
Figure 00000031

где δ={δk, k=2tC+1,…,2tC+2τ}, Δ={Δk, k=2tC+1,…,2tC+2τ}.where δ = {δ k , k = 2t C + 1, ..., 2t C + 2τ}, Δ = {Δ k , k = 2t C + 1, ..., 2t C + 2τ}.

Каждому множеству неизвестных невязок соответствует многочлен Λ ( 2 t С + 2 τ ) ( x )

Figure 00000032
. По определению многочлен локаторов ошибок Λ(x) обращается в нуль, когда x принимает значения обратные к локаторам ошибочных символов. Представляют интерес такие многочлены Λ ( 2 t С + 2 τ ) ( x )
Figure 00000033
, которые имеют степень tC+x и имеют точно tC+τ корень в GF(q). Множество допустимых корней многочлена Λ ( 2 t С + 2 τ ) ( x )
Figure 00000033
составляет {α0-1-2,…,α-(n-2)-(n-1)}. Подставляя это множество в уравнение (2), можно получить следующее:Each set of unknown residuals corresponds to a polynomial Λ ( 2 t FROM + 2 τ ) ( x )
Figure 00000032
. By definition, the polynomial of error locators Λ (x) vanishes when x takes values inverse to the error symbol locators. Such polynomials are of interest Λ ( 2 t FROM + 2 τ ) ( x )
Figure 00000033
which have degree t C + x and have exactly t C + τ root in GF (q). The set of valid roots of a polynomial Λ ( 2 t FROM + 2 τ ) ( x )
Figure 00000033
is {α 0 , α -1 , α -2 , ..., α - (n-2) , α - (n-1) }. Substituting this set into equation (2), we can obtain the following:

Figure 00000034
Figure 00000034

где Λ ( 2 t С ) ( α i )

Figure 00000035
и B ( 2 t С ) ( α i )
Figure 00000036
- компоненты дискретного преобразования Фурье (DFT) многочленов Λ ( 2 t С ) ( x )
Figure 00000003
и B ( 2 t С ) ( x )
Figure 00000025
.Where Λ ( 2 t FROM ) ( α - i )
Figure 00000035
and B ( 2 t FROM ) ( α - i )
Figure 00000036
- components of the discrete Fourier transform (DFT) of polynomials Λ ( 2 t FROM ) ( x )
Figure 00000003
and B ( 2 t FROM ) ( x )
Figure 00000025
.

В случае наличия в кодовом слове конфигурации ошибок веса tC+τ ровно tC+τ правых частей уравнений системы (3) для некоторого набора значений невязок Δ 2 t С + 1 , Δ 2 t С + 2 , , Δ 2 t С + 2 τ

Figure 00000037
обращаются в 0. Для определения локаторов этих ошибочных символов необходимо найти соответствующе невязки и зафиксировать номера i уравнений системы (3) с правыми частями, обратившимися в нуль.In the case of the presence in the codeword of the configuration of errors of weight t C + τ exactly t C + τ the right sides of the equations of system (3) for a certain set of residual values Δ 2 t FROM + one , Δ 2 t FROM + 2 , ... , Δ 2 t FROM + 2 τ
Figure 00000037
turn to 0. To determine the locators of these erroneous symbols, it is necessary to find the corresponding residuals and fix the numbers i of the equations of system (3) with the right-hand sides vanishing.

Используемый метод мягкого декодирования предполагает выбор подмножества уравнений из системы (3), соответствующих наиболее вероятным позициям ошибочных символов в кодовом слове.The soft decoding method used involves the selection of a subset of equations from system (3) that correspond to the most probable positions of erroneous characters in the codeword.

Поиск позиций ошибок осуществляется в порядке возрастания надежностей символов принятого кодового слова. Последовательность номеров позиций символов, упорядоченных по надежности, хранится в таблице L[]. Диапазон поиска ограничен первыми наименее надежными nC позициями символов из таблицы.The search for error positions is carried out in increasing order of the reliability of the symbols of the received codeword. The sequence of character position numbers, ordered by reliability, is stored in table L []. The search range is limited to the first least reliable n C character positions from the table.

Процедура мягкого декодирования кодов Рида-Соломона, используемая предлагаемым устройством декодирования кодов Рида-Соломона, приведена ниже и предусматривает выполнение следующих этапов:The soft Reed-Solomon code decoding procedure used by the proposed Reed-Solomon code decoding device is described below and involves the following steps:

1) Вычисляется полином синдромов S(x). Если компоненты синдрома нулевые (ошибок нет), осуществляется переход к п.14.1) The polynomial of S (x) syndromes is calculated. If the components of the syndrome are zero (no errors), go to step 14.

2) Вычисляются полином локаторов ошибок Λ ( 2 t С ) ( x )

Figure 00000003
, вспомогательный полином B ( 2 t С ) ( x )
Figure 00000025
и формальная степень полинома локаторов L 2 t С
Figure 00000038
путем выполнения 2tC итераций алгоритма Берлекэмпа-Месси.2) The polynomial of error locators is calculated Λ ( 2 t FROM ) ( x )
Figure 00000003
auxiliary polynomial B ( 2 t FROM ) ( x )
Figure 00000025
and the formal degree of the locator polynomial L 2 t FROM
Figure 00000038
by performing 2t C iterations of the Berlekamp-Messi algorithm.

3)Если L 2 t С t С

Figure 00000039
, находятся корни полинома Λ ( 2 t С ) ( x )
Figure 00000003
. Если их число равняется L 2 t С
Figure 00000038
, то обратные к ним значения принимаются как локаторы ошибок. По формуле Форни вычисляются значения ошибок. Ложная конфигурация ошибок отфильтровывается, верная добавляется в список.3) If L 2 t FROM t FROM
Figure 00000039
are the roots of the polynomial Λ ( 2 t FROM ) ( x )
Figure 00000003
. If their number equals L 2 t FROM
Figure 00000038
, then the values inverse to them are accepted as error locators. The Forni formula calculates error values. The false error configuration is filtered out, the correct one is added to the list.

4) Вычисляется управляющая переменная s ( s h i f t ) : s = t С L 2 t С .

Figure 00000040
Если s≥?τ или s<-τ, осуществляется переход к п.13.4) The control variable s is calculated ( s h i f t ) : s = t FROM - L 2 t FROM .
Figure 00000040
If s≥? Τ or s <-τ, go to step 13.

5) Вычисляются преобразования Фурье полиномов Λ ( 2 t С ) ( x )

Figure 00000003
и B ( 2 t С ) ( x )
Figure 00000025
.5) Fourier transforms of polynomials are calculated Λ ( 2 t FROM ) ( x )
Figure 00000003
and B ( 2 t FROM ) ( x )
Figure 00000025
.

6) Когда s≥0, вычисляются множества значений дробей R i = α ( 2 s + 1 ) i B ( 2 t С ) ( α i ) / Λ ( 2 t С ) ( α i )

Figure 00000041
или R i = α ( 2 s 1 ) i Λ ( 2 t С ) ( α i ) / B ( 2 t С ) ( α i )
Figure 00000042
в противном случае (α - примитивный элемент поля GF(q); i=0,…n-1).6) When s≥0, sets of fractions are calculated R i = α ( 2 s + one ) i B ( 2 t FROM ) ( α - i ) / Λ ( 2 t FROM ) ( α - i )
Figure 00000041
or R i = α ( - 2 s - one ) i Λ ( 2 t FROM ) ( α - i ) / B ( 2 t FROM ) ( α - i )
Figure 00000042
otherwise (α is a primitive element of the field GF (q); i = 0, ... n-1).

7) Устанавливается начальное значение счетчика дополнительно исправляемых ошибок v=1.7) The initial value of the counter of additionally corrected errors v = 1 is set.

8) Вычисляются вспомогательные переменные: l=2v, o1=v-|s+1|, o2=v-|s|, w=tC+1-v.8) Auxiliary variables are calculated: l = 2v, o1 = v- | s + 1 |, o2 = v- | s |, w = t C + 1-v.

9) Устанавливается начальное значение счетчика систем уравнений: sc=1.9) The initial value of the counter of systems of equations is set: sc = 1.

10) Вычисляются последовательности S L [ i 1 ] , L [ i 2 ] , , L [ i l 1 ]

Figure 00000043
возможных значении невязки Δ L [ i 1 ] , L [ i 2 ] , , L [ i l ]
Figure 00000044
для наиболее вероятных наборов индексов i1,i2,…,il-1 и осуществляется поиск значений Δ, которые встречаются точно w раз в какой-то из этих последовательностей, где:10) Sequences are calculated S L [ i one ] , L [ i 2 ] , ... , L [ i l - one ]
Figure 00000043
possible discrepancies Δ L [ i one ] , L [ i 2 ] , ... , L [ i l ]
Figure 00000044
for the most probable sets of indices i 1 , i 2 , ..., i l-1 and a search is made for the values of Δ that occur exactly w times in any of these sequences, where:

Figure 00000045
Figure 00000045

В тех случаях, когда при вычислении каких-то из дробей R l [ i j ]

Figure 00000046
возникает деление на ноль, вычисление F ( L [ i 1 ] , L [ i 2 ] , , L [ i l ] , R L [ i 1 ] , R L [ i 2 ] , , R L [ i l ] )
Figure 00000047
упрощается.In those cases when when calculating some of the fractions R l [ i j ]
Figure 00000046
division by zero occurs, calculation F ( L [ i one ] , L [ i 2 ] , ... , L [ i l ] , R L [ i one ] , R L [ i 2 ] , ... , R L [ i l ] )
Figure 00000047
simplified.

Если найдены значения Δ, которые встречаются точно w раз в какой-то из этих последовательностей, то значениями локаторов ошибок являются значения индексов L[i1],L[i2],…,L[il-1] этой последовательности и множество значений индекса L[il], соответствующего таким Δ. По формуле Форни вычисляются значения ошибок. Ложные конфигурации ошибок отфильтровываются, верные добавляются в список.If Δ values are found that occur exactly w times in any of these sequences, then the values of the error locators are the values of the indices L [i 1 ], L [i 2 ], ..., L [i l-1 ] of this sequence and the set values of the index L [i l ] corresponding to such Δ. The Forni formula calculates error values. False error configurations are filtered out, correct ones are added to the list.

В случае добавления конфигураций ошибок в список и выполнении условий выхода exit=1 или exit=2 перебор индексов i1,i2,…il-1 прекращается. Если exit=1, осуществляется переход к п.13, если exit=2 - переход к п.11.In the case of adding error configurations to the list and fulfilling the exit conditions exit = 1 or exit = 2, the enumeration of indices i 1 , i 2 , ... i l-1 stops. If exit = 1, go to step 13, if exit = 2 - go to step 11.

11) Если v=-s, осуществляется переход к п.12, в противном случае: sc=sc+1, l=l-1, о1=o1-1, o2=o2-1, w=w+1.11) If v = -s, go to step 12, otherwise: sc = sc + 1, l = l-1, o1 = o1-1, o2 = o2-1, w = w + 1.

Если sc≤(v-|s|), осуществляется переход к п.10.If sc≤ (v- | s |), go to step 10.

12) v=v+1. Если v≤τ, то осуществляется переход к п.8.12) v = v + 1. If v≤τ, then go to step 8.

13) Если список локаторов и значений ошибок пуст, то принимается решение о наличии неисправимых ошибок в кодовом слове. В случае наличия в списке одной конфигурации ошибок соответствующие ошибочные символы кодового слова исправляются. В случае наличия нескольких конфигураций ошибок для коррекции выбирается ближайшая из них к принятому из канала слову.13) If the list of locators and error values is empty, then a decision is made about the presence of fatal errors in the codeword. If there is one error in the list, the corresponding erroneous codeword characters are corrected. If there are several error configurations for correction, the closest of them to the word received from the channel is selected.

14) Конец.14) The end.

В описании процедуры мягкого декодирования использованы следующие переменные:The following variables were used in the description of the soft decoding procedure:

L - таблица, содержащая номера позиций символов, упорядоченных по надежности;L is a table containing the position numbers of characters ordered by reliability;

sc - счетчик систем уравнений;sc is the counter of systems of equations;

exit - режим завершения работы процедуры декодирования:exit - decoding procedure shutdown mode:

0 - без досрочного выхода из процедуры декодирования;0 - without early exit from the decoding procedure;

1 - досрочный выход после 1-го найденного вектора ошибок;1 - early exit after the 1st found error vector;

2 - после найденных векторов ошибок для каждой системы уравнений.2 - after the found error vectors for each system of equations.

Предлагаемое устройство декодирования кодов Рида-Соломона реализовано на основе процедуры, описанной выше, для v≤2. В этом случае формула для вычисления невязок (4) упрощается. Вид формулы зависит от значений следующих переменных, используемых в алгоритме декодирования: v (счетчик числа дополнительно исправляемых ошибок), s (управляющая переменная s h i f t s = t С L 2 t С

Figure 00000048
) и sc (счетчик систем уравнений). Для упрощения записи ниже будем использовать следующее обозначение:The proposed device for decoding Reed-Solomon codes is implemented based on the procedure described above for v≤2. In this case, the formula for calculating the residuals (4) is simplified. The form of the formula depends on the values of the following variables used in the decoding algorithm: v (counter of the number of additionally correctable errors), s (control variable s h i f t s = t FROM - L 2 t FROM
Figure 00000048
) and sc (counter of systems of equations). To simplify the notation, we will use the following notation:

Figure 00000049
Figure 00000049

Приведем формулы для вычисления неизвестной невязки (4) при исправлении двух дополнительных ошибок v=2.We give formulas for calculating the unknown discrepancy (4) when correcting two additional errors v = 2.

Для случая s=0, sc=1:For the case s = 0, sc = 1:

Figure 00000050
Figure 00000050

где R i = A i B 2 t С ( α i ) Λ 2 t С ( α i )

Figure 00000051
Where R i = A i B 2 t FROM ( α - i ) Λ 2 t FROM ( α - i )
Figure 00000051

Совместимое подмножество из tC+2 уравнений может содержать одно уравнение, для которого Λ 2 t C ( α i ) = 0.

Figure 00000052
В этом случае:A compatible subset of t C +2 equations may contain one equation for which Λ 2 t C ( α - i ) = 0.
Figure 00000052
In this case:

Figure 00000053
Figure 00000053

Для случая s=-1, sc=1:For the case s = -1, sc = 1:

Figure 00000054
Figure 00000054

где R i = A i Λ 2 t С ( α i ) B 2 t С ( α i )

Figure 00000055
.Where R i = A i Λ 2 t FROM ( α - i ) B 2 t FROM ( α - i )
Figure 00000055
.

Совместимое подмножество из tC+2 уравнений может содержать одно уравнение, для которого B 2 t С ( α i ) = 0

Figure 00000056
. В этом случае:A compatible subset of t C +2 equations may contain one equation for which B 2 t FROM ( α - i ) = 0
Figure 00000056
. In this case:

Figure 00000057
Figure 00000057

для случая s=1, sc=1:for the case s = 1, sc = 1:

Figure 00000058
Figure 00000058

где R i = A i 3 B 2 t С ( α i ) Λ 2 t С ( α i )

Figure 00000059
.Where R i = A i 3 B 2 t FROM ( α - i ) Λ 2 t FROM ( α - i )
Figure 00000059
.

Для случая s=-2, sc=1:For the case s = -2, sc = 1:

Figure 00000060
Figure 00000060

где R i = A i 3 Λ 2 t С ( α i ) B 2 t С ( α i )

Figure 00000061
Where R i = A i 3 Λ 2 t FROM ( α - i ) B 2 t FROM ( α - i )
Figure 00000061

Для случая s=0, sc=2:For the case s = 0, sc = 2:

Figure 00000062
Figure 00000062

где R i = A i B 2 t С ( α i ) Λ 2 t С ( α i )

Figure 00000063
.Where R i = A i B 2 t FROM ( α - i ) Λ 2 t FROM ( α - i )
Figure 00000063
.

Приведем формулы для вычисления неизвестной невязки (4) при исправлении одной дополнительной ошибки v=1.We present formulas for calculating the unknown discrepancy (4) when correcting one additional error v = 1.

Для случая s=0, sc=1:For the case s = 0, sc = 1:

Figure 00000064
Figure 00000064

Для случая s=-1, sc=1:For the case s = -1, sc = 1:

Figure 00000065
Figure 00000065

Заявляемое устройство декодирования PC-кодов содержит: буферную память данных 100, блок вычисления синдромов 200, процессор Галуа 300, блок дискретного преобразования Фурье 400, блок поиска позиций ошибок 500, блок сортировки позиций символов 600, блок вычисления значений ошибок 700, первый сумматор элементов поля Галуа 800.The inventive device for decoding PC codes contains: a buffer memory of data 100, a block for computing syndromes 200, a Galois processor 300, a block for discrete Fourier transform 400, a block for finding error positions 500, a block for sorting symbol positions 600, a block for calculating error values 700, a first adder of field elements Galois 800.

Устройство обрабатывает входные данные, представляющие собой последовательность n m-разрядных символов кодового слова {ri}, принятого из канала, которые сопровождаются значениями их надежности {reli}.При этом оно выполняет описанную выше процедуру декодирования. На выход устройства выдается последовательность n m-разрядных символов кодового слова с исправленными ошибками {ci}.The device processes the input data, which is a sequence of n m-bit characters of the code word {r i } received from the channel, which are accompanied by the values of their reliability {rel i }. In doing so, it performs the decoding procedure described above. The output device is a sequence of n m-bit characters of the code word with the corrected errors {c i }.

Буферная память данных 100 (фиг.1) предназначена для временного хранения принятых из канала символов исправляемых кодовых слов. Может быть реализована известным образом на основе двухпортовой RAM.The buffer data memory 100 (FIG. 1) is intended for temporary storage of symbols of corrected code words received from the channel. It can be implemented in a known manner based on dual-port RAM.

Блок вычисления синдромов 200 выполняет 1-й этап процедуры декодирования, заключающийся в вычислении многочлена синдрома S(x) принятого кодового слова, может быть реализован известным образом по схеме Горнера (см. Егоров С.И. Коррекция ошибок в информационных каналах периферийных устройств ЭВМ. Монография. Курск: Курск. гос. техн. ун-т, 2008. - 252 с.).The unit for computing syndromes 200 performs the first stage of the decoding procedure, which consists in calculating the polynomial of the syndrome S (x) of the received codeword, which can be implemented in a known manner according to Horner's scheme (see Egorov S.I. Error Correction in Information Channels of Computer Peripherals. Monograph.Kursk: Kursk State Technical University, 2008. - 252 p.).

Блок сортировки позиций символов 600 осуществляет сортировку позиций символов принимаемого из канала кодового слова в соответствии с их надежностью, формируя тем самым таблицу перестановок L.The character position sorting unit 600 sorts the character positions of the codeword received from the channel in accordance with their reliability, thereby forming a permutation table L.

Процессор Галуа 300 - специализированный процессор, выполняющий операции в конечном поле Галуа, может быть реализован известным образом на основе RISC-архитектуры.Galois processor 300 - a specialized processor that performs operations in the final Galois field, can be implemented in a known manner based on the RISC architecture.

Процессор Галуа 300 реализует алгоритм Берлекэмпа-Месси, вычисляя в соответствии с ним многочлены Λ ( 2 t С ) ( x )

Figure 00000003
и B ( 2 t С ) ( x )
Figure 00000066
за 2tC итераций (2-й этап процедуры декодирования).The Galois 300 processor implements the Berlekamp-Messi algorithm, calculating polynomials in accordance with it Λ ( 2 t FROM ) ( x )
Figure 00000003
and B ( 2 t FROM ) ( x )
Figure 00000066
for 2t C iterations (2nd stage of the decoding procedure).

Кроме того, на основе информации о расположении ошибок в кодовом слове {PE}, полученной от блока поиска позиций ошибок 500, процессор Галуа вычисляет итоговый многочлен локаторов ошибок:In addition, based on the error location information in the {PE} codeword received from the error position search unit 500, the Galois processor calculates the final polynomial of error locators:

Figure 00000067
Figure 00000067

Используя многочлены Λ(x)= и S(x), процессор Галуа 300 вычисляет многочлен значений ошибок Ω(x)=Λ(x)·S(x) mod xd-1 и формальную производную Λ'(x) многочлена локаторов Λ(x) с последующей загрузкой полученных многочленов вместе с найденными позициями ошибок {PE} в блок вычисления значений ошибок 700.Using the polynomials Λ (x) = and S (x), the Galois 300 processor computes the polynomial of error values Ω (x) = Λ (x) · S (x) mod x d-1 and the formal derivative Λ '(x) of the locator polynomial Λ (x) followed by loading the obtained polynomials together with the found error positions {PE} into the error value calculation unit 700.

Кроме этого процессор Галуа 300 управляет БДПФ 400 и БППО 500 (с использованием сигналов управления Control). Процессор Галуа устанавливает режим работы БДПФ 400, он же загружает в него коэффициенты многочленов Λ ( 2 t С ) ( x )

Figure 00000003
и B ( 2 t С ) ( x )
Figure 00000068
. Процессор Галуа контролирует состояние БДПФ (сигналы состояния State) и выгружает из него значения позиций ошибок веса меньшего или равного tC. Также процессор Галуа контролирует состояние БППО (сигналы состояния State) и выгружает из него значения позиций ошибок (пропуская их предварительно через таблицу перестановок L блока БСПС 600).In addition, the Galois 300 processor controls the BDPF 400 and the BPPO 500 (using the Control signals). The Galois processor sets the BDPF 400 operating mode, it also loads the polynomial coefficients into it Λ ( 2 t FROM ) ( x )
Figure 00000003
and B ( 2 t FROM ) ( x )
Figure 00000068
. The Galois processor monitors the state of the FFT (state signals) and unloads from it the values of error positions of weight less than or equal to t C. Also, the Galois processor monitors the state of the BPPO (state signals) and unloads the values of the error positions from it (passing them through the ACL 600 block L permutation table first).

Блок ДПФ 400 вычисляет преобразование Фурье многочленов Λ ( 2 t С ) ( x )

Figure 00000003
и B ( 2 t С ) ( x )
Figure 00000069
(5-й этап процедуры мягкого декодирования). Кроме того, в зависимости от режима работы он вычисляет дроби Ri а также коэффициенты Aii (этап 6 процедуры декодирования). Эти дроби и коэффициенты загружаются в память блока БППО 500, адресуемую с помощью таблицы перестановок L блока БСПС 600. Блок ДПФ также вычисляет величины, обратные к корням полинома Λ ( 2 t С ) ( x )
Figure 00000003
, и контролирует их число, если L 2 t С t n ˜
Figure 00000070
.DFT 400 computes the Fourier transform of polynomials Λ ( 2 t FROM ) ( x )
Figure 00000003
and B ( 2 t FROM ) ( x )
Figure 00000069
(5th stage of the soft decoding procedure). In addition, depending on the operating mode, it calculates the fractions R i as well as the coefficients A i = α i (step 6 of the decoding procedure). These fractions and coefficients are loaded into the memory of the BPPO 500 block, addressed using the permutation table L of the ACAS 600 block. The DFT block also calculates the values that are inverse to the roots of the polynomial Λ ( 2 t FROM ) ( x )
Figure 00000003
, and controls their number if L 2 t FROM t n ˜
Figure 00000070
.

Блок поиска позиций ошибок 500 выполняет 7-12 этапы алгоритма декодирования, вычисляя последовательности невязок и подсчитывая количества одинаковых значений невязок в этих последовательностях.The error position search unit 500 performs 7-12 steps of the decoding algorithm, calculating the residual sequences and counting the number of identical residual values in these sequences.

Блок вычисления значений ошибок 700, используя многочлены Ω(x) и Λ'(x), вычисляет значения ошибок в найденных позициях ошибок {PE}. Он может быть реализован известным образом с использованием формулы Форни. Значения ошибок суммируются с помощью сумматора 800 с соответствующими символами кодового слова, считываемого из буферной памяти данных. Тем самым исправляются ошибочные символы кодового слова. Таким образом, выполняется 13-й этап процедуры декодирования.The error value calculation unit 700, using the polynomials Ω (x) and Λ '(x), calculates the error values at the found error positions {PE}. It can be implemented in a known manner using Forney's formula. The error values are summed using the adder 800 with the corresponding characters of the codeword read from the data buffer memory. This corrects erroneous codeword characters. Thus, the 13th step of the decoding procedure is performed.

Представленный декодер работает по конвейерному принципу: все основные его модули работают параллельно, обрабатывая последовательно принятые из канала различные кодовые слова. Конвейерный принцип работы декодера иллюстрируется фиг.9.The presented decoder works according to the conveyor principle: all its main modules work in parallel, processing various codewords sequentially received from the channel. The conveyor principle of operation of the decoder is illustrated in Fig.9.

Рассмотрим для примера обработку декодером k-го кодового слова, в котором произошло tC+2 ошибок.Consider, for example, the processing by the decoder of the kth codeword in which t C +2 errors occurred.

Сначала в 1-м кадре (кадр соответствует времени поступления одного кодового слова) k-е слово записывается в буфер данных 100 и одновременно в темпе поступления в декодер обрабатывается блоком вычисления синдромов 200 и блоком сортировки позиций символов 600.First, in the 1st frame (the frame corresponds to the time of arrival of one codeword), the kth word is written to the data buffer 100 and at the same time, at the rate of arrival at the decoder, it is processed by the syndrome calculation unit 200 and the character position sorting unit 600.

Затем в первой половине 2-го кадра процессор Галуа 300 реализует алгоритм Берлекэмпа-Месси для вычисленного синдрома, анализирует L 2 t С

Figure 00000038
и в начале второй половины 2-го кадра загружает коэффициенты многочленов Λ ( 2 t С ) ( x )
Figure 00000003
и B ( 2 t С ) ( x )
Figure 00000069
в блок ДПФ 400 (низкий уровень на строке "БДПФ" фиг.9).Then, in the first half of the 2nd frame, the Galois 300 processor implements the Berlekamp-Messi algorithm for the calculated syndrome, analyzes L 2 t FROM
Figure 00000038
and at the beginning of the second half of the 2nd frame it loads the polynomial coefficients Λ ( 2 t FROM ) ( x )
Figure 00000003
and B ( 2 t FROM ) ( x )
Figure 00000069
in the block DFT 400 (low level on the line "BDPF" Fig.9).

В течение второй половины 2-го кадра и первой половины 3-го кадра блок ДПФ 400 выполняет преобразование Фурье многочленов Λ ( 2 t С ) ( x )

Figure 00000003
и B ( 2 t С ) ( x )
Figure 00000069
k-го кодового слова (высокий уровень на строке 'БДПФ'). Кроме того, он вычисляет коэффициенты Ri и Ai, которые загружаются в память БППО, адресуемую с помощью таблицы перестановок L блока БСПС. Если L 2 t С t С
Figure 00000039
блок ДПФ 400 также вычисляет величины, обратные к корням полинома Λ ( 2 t С ) ( x )
Figure 00000003
, и контролирует их число.During the second half of the 2nd frame and the first half of the 3rd frame, the DFT 400 performs Fourier transform of polynomials Λ ( 2 t FROM ) ( x )
Figure 00000003
and B ( 2 t FROM ) ( x )
Figure 00000069
k-th code word (high level on the line 'BDPF'). In addition, it calculates the coefficients R i and A i , which are loaded into the BPOE memory, addressed using the permutation table L of the ACAS unit. If L 2 t FROM t FROM
Figure 00000039
block DFT 400 also calculates the reciprocal of the roots of the polynomial Λ ( 2 t FROM ) ( x )
Figure 00000003
, and controls their number.

В течение второй половины 3-го кадра и первой половины 4-го кадра блок поиска позиций ошибок 500 выполняет вычисление последовательности значений невязок для k-го кодового слова, их подсчет и фиксацию тех их значений, которые встретились в цикле сканирования заданное число раз.During the second half of the 3rd frame and the first half of the 4th frame, the error position search unit 500 performs the calculation of the sequence of residual values for the k-th codeword, their calculation and fixing of those values that occurred in the scan cycle a specified number of times.

В течение второй половины 4-го кадра и первой половины 5-го кадра блок поиска позиций ошибок 500 с помощью зафиксированного значения Δ определяет позиции tC+τ ошибочных символов k-го кодового слова. Значения этих позиций корректируются с помощью таблицы L во время их пересылки в процессор Галуа.During the second half of the 4th frame and the first half of the 5th frame, the error position search unit 500 uses the fixed value Δ to determine the positions t C + τ of the erroneous characters of the kth codeword. The values of these positions are adjusted using table L during their transfer to the Galois processor.

В течение второй половины 5-го кадра процессор Галуа 300 вычисляет многочлены Ω(x) и Λ'(x) и загружает их в блок вычисления значений ошибок 700.During the second half of the 5th frame, the Galois processor 300 calculates the polynomials Ω (x) and Λ '(x) and loads them into the error value calculation unit 700.

В течение 6-го кадра блок вычисления значений ошибок 700 вычисляет значения ошибок для соответствующих позиций k-го кодового слова, выгружаемого из буферной памяти данных 100, и осуществляет их исправление с помощью сумматора 800.During the 6th frame, the error value calculation unit 700 calculates the error values for the corresponding positions of the k-th codeword, unloaded from the data buffer 100, and corrects them using the adder 800.

Аналогичным образом осуществляется обработка k+1, k+2 и т.д. принятых из канала кодовых слов.Similarly, processing is carried out k + 1, k + 2, etc. codewords received from the channel.

Приведем в соответствии с изобретением описание устройства и работы основных нетривиальных блоков декодера.We present in accordance with the invention a description of the device and the operation of the main non-trivial blocks of the decoder.

Блок дискретного преобразования Фурье 400Discrete Fourier Transform 400

Функциональная схема блока дискретного преобразования Фурье 400 приведена на фиг.8. Блок содержит: второе местное устройство управления (МУУ) 410; модуль дискретного преобразования Фурье многочлена Λ ( 2 t С ) ( x )

Figure 00000003
420.1; модуль дискретного преобразования Фурье многочлена B ( 2 t С ) ( x )
Figure 00000069
420.2; десятый коммутатор 430.1; второй инвертор элементов поля Галуа 440; двадцать шестой 450.1 и двадцать седьмой 450.2 перемножители элементов поля Галуа; одиннадцатый коммутатор 430.2, умножитель на α 470.1; схему возведения в куб элементов поля Галуа 470.2; восьмой регистр-защелку 480, работающую по фронту тактового сигнала; двоичный счетчик номеров позиций принятого слова 490 с коэффициентом пересчета n.The functional block diagram of the discrete Fourier transform 400 is shown in Fig.8. The block comprises: a second local control device (MUU) 410; module of the discrete Fourier transform of a polynomial Λ ( 2 t FROM ) ( x )
Figure 00000003
420.1; module of the discrete Fourier transform of a polynomial B ( 2 t FROM ) ( x )
Figure 00000069
420.2; tenth switch 430.1; the second inverter of the Galois field elements 440; twenty-sixth 450.1 and twenty-seventh 450.2 multipliers of the elements of the Galois field; eleventh switch 430.2, multiplier by α 470.1; a scheme for raising into a cube the elements of the Galois field 470.2; the eighth register-latch 480, working on the front of the clock signal; binary counter of position numbers of the received word 490 with a conversion factor n.

Местное устройство управления 410 предназначено для взаимодействия с процессором Галуа 300 и управления блоком ДПФ 400. Оно также накапливает возможные позиции ошибок веса, меньшего или равного tC, запоминая значения i в момент равенства нулю значения многочлена Λ ( 2 t С ) ( α i )

Figure 00000035
(сигнал sel0) и подсчитывая их количество.The local control unit 410 is designed to interact with the Galois processor 300 and to control the DFT 400. It also accumulates possible error positions of a weight less than or equal to t C , remembering the values of i at the moment the polynomial value is zero Λ ( 2 t FROM ) ( α - i )
Figure 00000035
(signal sel0) and counting their number.

Двоичный счетчик 490 предназначен для формирования значения i.Binary counter 490 is designed to generate the value of i.

Регистр 480 и умножитель на α 470.1 обеспечивают формирование величины Aii.Register 480 and the multiplier by α 470.1 provide the formation of the value A i = α i .

Схема 470.2 возводит в куб элементы поля Галуа, поступающие на ее первые входы, если на ее второй (управляющий) вход подается логическая 1; в противном случае она передает данные с ее первых входов на выходы без изменений.Scheme 470.2 cubes the Galois field elements arriving at its first inputs if logical 1 is supplied to its second (control) input; otherwise, it transfers data from its first inputs to outputs without changes.

Блок ДПФ 400 - может работать в трех режимах.Block DPF 400 - can operate in three modes.

Нулевой режим. В этом режиме блок ДПФ 400 работает, когда L 2 t C < t C 1.

Figure 00000071
При этом в него загружаются только значения коэффициентов полинома Λ ( 2 t С ) ( x )
Figure 00000003
и ищутся позиции ошибок веса, меньшего tC-1. Значения сигналов на первых, четвертых-шестых выходах БДПФ (AddR1, Ri, Msk1, Ai) игнорируются.Zero mode. In this mode, the DFT 400 works when L 2 t C < t C - one.
Figure 00000071
In this case, only the coefficients of the polynomial are loaded into it Λ ( 2 t FROM ) ( x )
Figure 00000003
and looking for error positions of weight less than t C -1. The values of the signals at the first, fourth to sixth outputs of the BDPF (AddR1, R i , Msk1, A i ) are ignored.

Первый режим. В этом режиме блок ДПФ 400 работает, если значение управляющей переменной s≥0. В блок ДПФ загружаются значения коэффициентов обоих полиномов Λ ( 2 t С ) ( x )

Figure 00000003
и B ( 2 t С ) ( x )
Figure 00000069
. Вычисляются коэффициенты R i = α ( 2 s + 1 ) B ( 2 t С ) ( α i ) / Λ ( 2 t С ) ( α i ) .
Figure 00000072
Для их вычисления перекрестный коммутатор 430.1 работает в прямом направлении, подавая на вход инвертора 440 коэффициенты Λ(α-i). Если управляющая переменная s=0, схема возведения в куб 470.2 передает значения αi со своих входов на выходы без изменения. Если s=1, то на выходе формируется значение α3i (осуществляется возведение в куб). На пятом выходе БППФ значение Msk1 (исключение уравнений из системы) формируется путем подачи через коммутатор 430.2 сигнала со второго выхода модуля дискретного преобразования Фурье 420.1, который имеет единичный уровень, когда Λ(α-i)=0. Если s≤0, одновременно осуществляется поиск позиций ошибок веса, меньшего или равного tC.First mode. In this mode, the DFT 400 works if the value of the control variable s≥0. The coefficients of both polynomials are loaded into the DFT block Λ ( 2 t FROM ) ( x )
Figure 00000003
and B ( 2 t FROM ) ( x )
Figure 00000069
. Odds are calculated R i = α ( 2 s + one ) B ( 2 t FROM ) ( α - i ) / Λ ( 2 t FROM ) ( α - i ) .
Figure 00000072
To calculate them, the cross switch 430.1 works in the forward direction, applying the coefficients Λ (α -i ) to the input of the inverter 440. If the control variable s = 0, the cubing scheme 470.2 transfers the values of α i from its inputs to the outputs without change. If s = 1, then the value α 3i is formed at the output (cube is carried out). At the fifth output of the FFT, the value of Msk1 (eliminating equations from the system) is formed by applying a signal from the second output of the discrete Fourier transform module 420.1 through switch 430.2, which has a unit level when Λ (α -i ) = 0. If s≤0, at the same time a search is made for positions of errors of weight less than or equal to t C.

Второй режим. В этом режиме блок ДПФ 400 работает, когда s<0. В блок ДПФ загружаются значения коэффициентов полиномов Λ ( 2 t С ) ( x )

Figure 00000003
и B ( 2 t С ) ( x )
Figure 00000069
. Вычисляются коэффициенты R i = α ( 2 s 1 ) Λ ( 2 t С ) ( α i ) / B ( 2 t С ) ( α i ) .
Figure 00000073
The second mode. In this mode, the DFT 400 operates when s <0. The DFT block loads the polynomial coefficient values Λ ( 2 t FROM ) ( x )
Figure 00000003
and B ( 2 t FROM ) ( x )
Figure 00000069
. Odds are calculated R i = α ( - 2 s - one ) Λ ( 2 t FROM ) ( α - i ) / B ( 2 t FROM ) ( α - i ) .
Figure 00000073

Для их вычисления коммутатор 430.1 работает в перекрестном режиме, подавая на вход инвертора 440 значения B(α-i). Если управляющая переменная s=-1, схема возведения в куб 470.2 передает значения αi со своих входов на выходы без изменения. Если s=-2, то на выходе формируется значение α3i (осуществляется возведение в куб). На пятом выходе БППФ значение Msk1 формируется путем подачи через коммутатор 430.2 сигнала со второго выхода модуля дискретного преобразования Фурье 420.2, который имеет единичный уровень, когда B(α-i)=0.To calculate them, the switch 430.1 operates in a cross mode, applying B (α -i ) to the input of the inverter 440. If the control variable s = -1, the cubing scheme 470.2 transfers the values of α i from its inputs to the outputs without changing. If s = -2, then the value α 3i is formed at the output (cube is performed). At the fifth output of the FFT, the value of Msk1 is formed by supplying through the switch 430.2 a signal from the second output of the discrete Fourier transform module 420.2, which has a unit level when B (α -i ) = 0.

В каждом такте работы блока ДПФ 400 на первых выходах модуля дискретного преобразования Фурье многочлена Λ(x) 420.1 появляется значение Λ(α-i), на первых выходах модуля дискретного преобразования Фурье многочлена B(x) 420.2 появляется значение B(α-i), на выходе регистра 480 формируется значение Ai. За время цикла работы блока ДПФ 400 i пробегает значения 0,…,n-1.In each clock cycle of the DFT 400, the value Λ (α -i ) appears on the first outputs of the discrete Fourier transform module of the polynomial Λ (x) 420.1, the value B (α -i ) appears on the first outputs of the discrete Fourier transform module of the polynomial B (x) 420.2 , at the output of register 480, the value A i is generated. During the cycle of operation of the DFT 400 i block, it runs through the values 0, ..., n-1.

В первом и втором режимах Ai, Ri и Msk1 записываются в блок памяти коэффициентов 550 блока поиска позиций ошибок 500. Для формирования адресов памяти 550 при записи используется счетчик 490, значение которого подается на вход таблицы перестановок L, хранящейся в блоке сортировки позиций символов 600.In the first and second modes, A i , R i, and Msk1 are written to the coefficient memory block 550 of the error position search block 500. To create memory addresses 550, the counter 490 is used when writing, the value of which is supplied to the input of the permutation table L stored in the block for sorting symbol positions 600.

Функциональная схема модуля дискретного преобразования Фурье многочлена Λ ( 2 t С ) ( x )

Figure 00000003
420.1 (модуль дискретного преобразования Фурье многочлена B ( 2 t С ) ( x )
Figure 00000069
) 420.2 реализуется по точно такой же схеме) используется такая же, как в прототипе.Functional diagram of the module of the discrete Fourier transform of a polynomial Λ ( 2 t FROM ) ( x )
Figure 00000003
420.1 (module of the discrete Fourier transform of a polynomial B ( 2 t FROM ) ( x )
Figure 00000069
) 420.2 is implemented in exactly the same way) is used the same as in the prototype.

Блок поиска позиций ошибок веса 500Weight Error Position Search Block 500

Функциональная схема блока поиска позиций ошибок 500 приведена на фиг.2. БППО содержит: два блока вычисления невязки Δ (БВН). 510.1, 510.2; два блока подсчета невязок Δ'(БПН) 520.1,520.2; первый коммутатор 530; первый регистр-защелку 540; блок памяти коэффициентов (БПК) 550, первое местное устройство управления (МУУ) 560.The functional block diagram of the search for error positions 500 is shown in figure 2. BPPO contains: two blocks for calculating the residual Δ (BVN). 510.1, 510.2; two blocks for calculating residuals Δ '(BPN) 520.1,520.2; the first switch 530; first latch register 540; coefficient memory unit (BOD) 550, the first local control device (MUU) 560.

Блоки 510.1, 510.2 выполняют вычисления Δ в соответствии с формулами (5-13) в зависимости от значения переменных v (число дополнительно исправляемых ошибок), s (управляющая переменная s h i f t s = t С L 2 t С

Figure 00000074
) и sc (счетчика систем уравнений).Blocks 510.1, 510.2 perform calculations Δ in accordance with formulas (5-13) depending on the value of variables v (the number of additionally corrected errors), s (control variable s h i f t s = t FROM - L 2 t FROM
Figure 00000074
) and sc (counter systems of equations).

Блоки 520.1, 520.2 осуществляют подсчет различных значений величины Δ в поле Галуа и фиксируют ситуацию равенства w количества какого-то значения Δ.Blocks 520.1, 520.2 carry out the calculation of various values of Δ in the Galois field and fix the situation of equality w of the quantity of some value of Δ.

Определенное для этой ситуации значение Δ' поступает из соответствующей пары блоков 510 и 520 через коммутатор 530 на входы регистра 540 и запоминается в нем.The value Δ 'defined for this situation comes from the corresponding pair of blocks 510 and 520 through the switch 530 to the inputs of the register 540 and is stored in it.

Блок памяти коэффициентов 550 предназначен для временного хранения величин Ai, Ri и битов Msk1. Он содержит 3 секции, операции с которыми выполняются одновременно. В одну секцию величины Ai, Rt и биты Msk1 поступают из блока ДПФ 400, из другой секции, задержанные на один кадр, они считываются и поступают в блоки 510.1-510.2 для вычисления Δ, из следующей секции эти величины, задержанные еще на один кадр, считываются и используются для повторного вычисления последовательности Δ, необходимой для фиксации позиций ошибочных символов. БПК 550 может быть реализован известным образом на основе трехпортовой RAM.The coefficient memory unit 550 is intended for temporary storage of the values of A i , R i and bits Msk1. It contains 3 sections, the operations with which are performed simultaneously. In one section, the values of A i , Rt and bits Msk1 come from the DFT 400, from the other section, delayed by one frame, they are read and fed into blocks 510.1-510.2 to calculate Δ, from the next section, these values are delayed by another frame are read and used to recalculate the sequence Δ necessary to fix the positions of erroneous characters. BOD 550 can be implemented in a known manner based on three-port RAM.

Местное устройство управления 560 предназначено для взаимодействия с процессором Галуа 300 и управления блоком БППО. В том числе оно вычисляет последовательность адресов чтения блока памяти коэффициентов 550. Оно также накапливает позиции конфигурации ошибок веса w, записывая в стек значения AR2 в момент равенства величин Δ'' и Δ (сигнал SXi).The local control device 560 is designed to interact with the Galois 300 processor and control the BPPO unit. In particular, it calculates the sequence of read addresses of the memory block of coefficients 550. It also accumulates the positions of the configuration of errors of weight w, writing AR2 values onto the stack at the moment of equal values of Δ '' and Δ (signal SX i ).

Две пары блоков БВН+БПН 510 и 520 необходимы для обеспечения конвейерного режима работы блока поиска позиций ошибок. Каждая пара блоков 510 и 520 обрабатывает коэффициенты Ai и дроби Ri одного кодового слова в течение двух кадров (см. фиг.9). В каждом кадре одна пара осуществляет вычисления Δ и подсчет их значений, БВН другой пары осуществляет вычисления Δ для фиксации позиций ошибочных символов в предыдущем кодовом слове, одновременно осуществляется очистка памяти БПН этой же пары.Two pairs of BVN + BPN blocks 510 and 520 are necessary to ensure the conveyor operation mode of the error position search block. Each pair of blocks 510 and 520 processes the coefficients A i and fractions R i of one codeword for two frames (see Fig. 9). In each frame, one pair performs Δ calculations and counts their values, the I / O of the other pair performs Δ calculations to fix the positions of erroneous characters in the previous code word, and the BPN memory of the same pair is simultaneously cleared.

На фиг.2 пара блоков 510.1+520.1 осуществляет подсчет различных значений Δ для k-го кодового слова во второй половине 3-го кадра и первой половине 4-го. Фиксация позиций ошибочных символов для k-го слова осуществляется во второй половине 4-го кадра и первой половине 5-го с использованием блока 510.1, в это же время записывается нулями память БПН 520.1. Аналогичным образом работает пара блоков 510.2+520.2, обрабатывая k+1-ое кодовое слово со смещением на кадр.In figure 2, a pair of blocks 510.1 + 520.1 counts different values of Δ for the k-th codeword in the second half of the 3rd frame and the first half of the 4th. The positions of erroneous characters for the k-th word are fixed in the second half of the 4th frame and the first half of the 5th using block 510.1, at the same time, the memory of the BPN 520.1 is written in zeros. In a similar way, a pair of blocks 510.2 + 520.2 works, processing the k + 1st codeword with an offset per frame.

Рассмотрим устройство и работу основных блоков БППО.Consider the device and the operation of the main BPPO blocks.

Функциональная схема блока вычисления невязок Δ (БВН) 510 приведена на фиг.3. БВН содержит: блок произведений дробей Ri 511, блок произведений коэффициентов Ai 512, второй коммутатор 513.1, третий 513.2 и четвертый 513.3 коммутаторы, второй 515.1, третий 515.2 и четвертый 515.3 сумматоры элементов поля Галуа, первый инвертор элементов поля Галуа 516, первый, второй, третий, четвертый, пятый, шестой, седьмой, восьмой, девятый, десятый и одиннадцатый перемножители элементов поля Галуа 514.1-514.11, первую схему сравнения кодов 517.2, селектор нулевого элемента поля Галуа 517.1, первый логический элемент И 519, логический элемент ИЛИ-НЕ 518.The functional block diagram of the calculation of residuals Δ (BVN) 510 is shown in Fig.3. The BVN contains: a unit of fractions' products R i 511, a unit of products of coefficients A i 512, a second commutator 513.1, a third 513.2 and a fourth 513.3 commutators, a second 515.1, a third 515.2 and a fourth 515.3 adders of Galois field elements, the first inverter of Galois field elements 516, the first, the second, third, fourth, fifth, sixth, seventh, eighth, ninth, tenth and eleventh multipliers of Galois field elements 514.1-514.11, the first code comparison scheme 517.2, the Galois field element zero selector 517.1, the first logical element AND 519, the logical element OR- NOT 518.

Блок вычисления невязок реализует вычисления невязок в соответствии с приведенными выше формулами (5-13) для исправления одной (tC+1) или двух (tC+2) дополнительных ошибок.The residual calculation unit implements the residual calculations in accordance with the above formulas (5-13) to correct one (t C +1) or two (t C +2) additional errors.

Значения числителей формул (5-13) появляются на выходе коммутатора 513.3. Значения знаменателей формул (5-13) появляются на выходе коммутатора 513.2. Операция деления, присутствующая в формулах (5-13), реализуется с помощью инвертора элементов поля Галуа 516 и перемножителя 514.11. Итоговые значения невязок Δ формируются на выходе перемножителя 514.11 и поступают на вторые выходы блока вычисления невязок.The values of the numerators of formulas (5-13) appear at the output of the switch 513.3. The values of the denominators of formulas (5-13) appear at the output of the switch 513.2. The division operation, which is present in formulas (5-13), is implemented using an inverter of Galois field elements 516 and a multiplier 514.11. The final values of the residuals Δ are formed at the output of the multiplier 514.11 and fed to the second outputs of the residual calculation unit.

На первые входы коммутатора 513.3 поступает значение числителя формулы (5), получаемое на выходах четвертого сумматора элементов поля Галуа 515.3. На вторые входы коммутатора 513.3 поступает значение числителя формулы (7), получаемое на выходах второго сумматора элементов поля Галуа 515.1. На третьи входы коммутатора 513.3 поступает значение числителя формулы (9), формируемое на восьмых выходах блока произведений коэффициентов Ai 512. На четвертые входы коммутатора 513.3 поступает значение числителя формулы (10), получаемое на выходах четвертого сумматора элементов поля Галуа 515.3. На пятые входы коммутатора 513.3 поступает значение числителя формулы (11), получаемое на выходах четвертого сумматора элементов поля Галуа 515.3. На шестые входы коммутатора 513.3 поступает значение числителя формулы (12), формируемое на девятых выходах блока произведений коэффициентов Ai 512. На седьмые входы коммутатора 513.3 поступает значение числителя формулы (13), получаемое на выходах третьего сумматора элементов поля Галуа 515.2.The first inputs of the switch 513.3 receive the value of the numerator of formula (5) obtained at the outputs of the fourth adder of the Galois field elements 515.3. The second inputs of the switch 513.3 receive the numerator of formula (7), obtained at the outputs of the second adder of the Galois field elements 515.1. The third inputs of the switch 513.3 receive the value of the numerator of formula (9) generated at the eighth outputs of the block of coefficient products A i 512. The fourth inputs of the switch 513.3 receive the value of the numerator of formula (10) obtained at the outputs of the fourth adder of the Galois field elements 515.3. The fifth inputs of the switch 513.3 receive the value of the numerator of formula (11), obtained at the outputs of the fourth adder of the Galois field elements 515.3. The sixth inputs of switch 513.3 receive the value of the numerator of formula (12) generated at the ninth outputs of the block of coefficient products A i 512. The seventh inputs of the switch 513.3 receive the value of the numerator of formula (13) obtained at the outputs of the third adder of the Galois field elements 515.2.

На первые входы коммутатора 513.2 поступает значение знаменателя формулы (5), получаемое на выходах второго сумматора элементов поля Галуа 515.1. На вторые входы коммутатора 513.2 поступает значение знаменателя формулы (7), получаемое на выходах четвертого сумматора элементов поля Галуа 515.3. На третьи входы коммутатора 513.2 поступает значение знаменателя формулы (9), получаемое на выходах четвертого сумматора элементов поля Галуа 515.3. На четвертые входы коммутатора 513.2 поступает значение знаменателя формулы (10), формируемое на восьмых выходах блока произведений коэффициентов Ai 512. На пятые входы коммутатора 513.2 поступает значение знаменателя формулы (11), формируемое на седьмых выходах блока произведений коэффициентов Ai 512. На шестые входы коммутатора 513.2 поступает значение знаменателя формулы (12), получаемое на выходах третьего сумматора элементов поля Галуа 515.2. На седьмые входы коммутатора 513.2 поступает значение знаменателя формулы (13), формируемое на девятых выходах блока произведений коэффициентов Ai 512.The first inputs of the switch 513.2 receive the value of the denominator of formula (5), obtained at the outputs of the second adder of the Galois field elements 515.1. The second inputs of the switch 513.2 receive the value of the denominator of formula (7), obtained at the outputs of the fourth adder of the Galois field elements 515.3. The third inputs of the switch 513.2 receive the value of the denominator of formula (9), obtained at the outputs of the fourth adder of the Galois field elements 515.3. The fourth inputs of the switch 513.2 receive the denominator of formula (10) generated at the eighth outputs of the block of coefficient products A i 512. The fifth inputs of the switch 513.2 receive the denominator of formula (11) formed at the seventh outputs of the block of coefficient products A i 512. At sixth the inputs of the switch 513.2 receives the value of the denominator of formula (12), obtained at the outputs of the third adder of the Galois field elements 515.2. The seventh inputs of the switch 513.2 receive the value of the denominator of formula (13), formed at the ninth outputs of the block of products of the coefficients A i 512.

Второй 513.1, третий 513.2 и четвертый 513.3 коммутаторы управляются сигналами SI, поступающими на девятые входы блока вычисления невязок. Эти сигналы содержат значения управляющей переменной s и счетчика систем уравнений sc.The second 513.1, third 513.2 and fourth 513.3 switches are controlled by SI signals received at the ninth inputs of the residual calculation unit. These signals contain the values of the control variable s and the counter of systems of equations sc.

Второй 513.1 коммутатор постоянно передает на свои выходы содержимое 1-4-х входов за исключением вычисления невязок по формуле (11) (sc=2), в этом случае на выходы передается содержимое 5-8-х входов.The second 513.1 switch constantly transfers the contents of 1-4 inputs to its outputs, with the exception of calculating the residuals according to formula (11) (sc = 2), in this case, the contents of 5-8 inputs are transmitted to the outputs.

Блок произведений дробей Ri 511 вычисляет все попарные произведения дробей Ri. Функциональная схема блока произведений дробей Ri приведена на фиг.4.The fraction product block R i 511 calculates all the pairwise products of the fraction R i . Functional block diagram of the product of fractions R i shown in Fig.4.

Блок произведений дробей Ri 511 содержит регистры Rg1, предназначенные для хранения значения дробей Ri вместе с масками, перемножители элементов поля Галуа, блоки вентилей.Block fractions R i 511 contains registers Rg1, designed to store the values of fractions R i together with masks, multipliers of Galois field elements, valve blocks.

Функциональная схема регистра Rg1 приведена на фиг.6 и работает по следующему принципу. Если сигнал маски Msk1 равен 1, на выходах регистра будет формироваться значение единичного элемента поля Галуа, в противном случае на выходы регистра Rg1 будет выдаваться запомненное значение дроби Ri.The functional diagram of the register Rg1 is shown in Fig.6 and works according to the following principle. If the mask signal Msk1 is equal to 1, the value of a single element of the Galois field will be generated at the outputs of the register, otherwise, the stored value of the fraction R i will be output to the outputs of the register Rg1.

С помощью перемножителей элементов поля Галуа 511.40-511.45 формируются все возможные попарные произведения дробей Ri, используемые в формулах для вычисления невязок.Using multipliers of the Galois field elements 511.40-511.45, all possible pairwise products of fractions R i are used, which are used in the formulas for calculating the residuals.

Блоки вентилей необходимы для вычисления невязок по формулам (6) и (8). Блоки вентилей 511.30-511.33 блокируют передачу на выходы блока произведений дробей значений Ri (на выходах будет нулевой элемент конечного поля) при подаче логической 1 на любой их управляющий (первый-третий) вход. Блоки вентилей 511.34-511.39 блокируют передачу на выходы блока произведений дробей значений произведений Ri (на выходах будет нулевой элемент конечного поля) при подаче логической 1 на любой их управляющий (первый-второй) вход.The valve blocks are necessary for calculating the residuals according to formulas (6) and (8). The valve blocks 511.30-511.33 block the transfer to the outputs of the product block of fractions of fractions of R i values (there will be a zero element of the final field at the outputs) when logical 1 is applied to any of their control (first-third) inputs. The valve blocks 511.34-511.39 block the transfer to the outputs of the product block of fractions of the product values R i (there will be a zero element of the final field at the outputs) when logical 1 is applied to any of their control (first-second) inputs.

Блок произведений Ai 512 вычисляет все необходимые произведения сумм элементов конечного поля в соответствии с формулами (5-13). Функциональная схема блока произведений Ai приведена на фиг.5.The block of products A i 512 calculates all the necessary products of the sums of the elements of the finite field in accordance with formulas (5-13). Functional diagram of the block of works A i shown in Fig.5.

При исправлении одной дополнительной ошибки БВН заявляемого устройства работает аналогично прототипу. Ниже мы рассмотрим работу БВН при исправлении двух дополнительных ошибок.When correcting one additional error, the BVN of the claimed device works similarly to the prototype. Below we will consider the operation of the BVN when correcting two additional errors.

БВН работает в 2-х режимах.BVN works in 2 modes.

В первом (основном) режиме БВН вычисляет значение Δ по формулам (5-13) и формирует инверсный бит маскирования для блока подсчета невязок 520.In the first (main) mode, the BVN calculates the Δ value using formulas (5-13) and generates an inverse masking bit for the residual counting unit 520.

В начале цикла сканирования с использованием сигналов Ld, подаваемых на восьмые входы БВН, в регистры Rg1 511.23, 511.22, 511.21 (фиг.4) через коммутаторы 511.10 и 511.11 защелкиваются дроби R i '

Figure 00000075
и бит маски Msk1', в регистры 512.23, 512.20, 512.20 (фиг.5) через коммутатор 512.10 защелкиваются коэффициенты A i '
Figure 00000076
(для адресов данных чтения AR1 БПК 550 i, j, k). В следующих тактах из БПК 550 считываются коэффициенты A i '
Figure 00000077
, дроби R i '
Figure 00000078
вместе с соответствующим битом маски (адреса данных чтения БПК при этом будут пробегать значения l=k+1,…,n-1) и защелкиваются в регистры 511.20 и 512.33, соответственно.At the beginning of the scanning cycle using the Ld signals supplied to the eighth inputs of the BVN, fractions snap into the registers Rg1 511.23, 511.22, 511.21 (Fig. 4) through the switches 511.10 and 511.11 R i ''
Figure 00000075
and the mask bit Msk1 ', in registers 512.23, 512.20, 512.20 (Fig. 5), through the switch 512.10, the coefficients snap A i ''
Figure 00000076
(for read data addresses AR1 BOD 550 i, j, k). In the following ticks, coefficients are read from the BOD 550 A i ''
Figure 00000077
, fractions R i ''
Figure 00000078
together with the corresponding mask bit (the address of the BOD reading data will then run through the values l = k + 1, ..., n-1) and snap into the registers 511.20 and 512.33, respectively.

На выходах блоков произведений дробей Ri формируются попарные произведения дробей, на выходах блоков произведений коэффициентов Ai формируются произведения сумм коэффициентов, необходимые для вычисления невязок по формулам (5-13). На каждом такте на выходах одиннадцатого перемножителя элементов поля Галуа 514.11 получается одно значение невязки, соответствующее одной из формул (5-13) в зависимости от значений переменных s и sc.At the outputs of blocks of fractions' products R i , pairwise products of fractions are formed, at the outputs of blocks of fractions of coefficients A i , products of the sums of coefficients necessary for calculating the residuals according to formulas (5-13) are formed. At each step at the outputs of the eleventh multiplier of the elements of the Galois field 514.11, one residual value is obtained corresponding to one of formulas (5-13) depending on the values of the variables s and sc.

С помощью бита маскирования Msk2, формируемого логическим элементом ИЛИ-НЕ 518, из подсчета убираются Δ, для которых Λ ( 2 t С ) ( α l ) = 0

Figure 00000079
(если s≥0 и одно из значений Λ ( 2 t С ) ( α i )
Figure 00000035
, Λ ( 2 t С ) ( α j )
Figure 00000080
, Λ ( 2 t С ) ( α k )
Figure 00000081
также равно нулю) или B ( 2 t С ) ( α l ) = 0
Figure 00000082
(если s<0 и одно из значений B ( 2 t С ) ( α i )
Figure 00000083
, B ( 2 t С ) ( α j )
Figure 00000084
, B ( 2 t С ) ( α k )
Figure 00000085
также равно нулю). Кроме того, из подсчета убираются нулевые значения Δ с помощью селектора нулевого элемента поля 517.1.Using the masking bit Msk2 formed by the OR-NOT 518 logic element, Δ, for which Λ ( 2 t FROM ) ( α - l ) = 0
Figure 00000079
(if s≥0 and one of the values Λ ( 2 t FROM ) ( α - i )
Figure 00000035
, Λ ( 2 t FROM ) ( α - j )
Figure 00000080
, Λ ( 2 t FROM ) ( α - k )
Figure 00000081
also zero) or B ( 2 t FROM ) ( α - l ) = 0
Figure 00000082
(if s <0 and one of the values B ( 2 t FROM ) ( α - i )
Figure 00000083
, B ( 2 t FROM ) ( α - j )
Figure 00000084
, B ( 2 t FROM ) ( α - k )
Figure 00000085
also equal to zero). In addition, zero values of Δ are removed from the calculation using the zero element selector of field 517.1.

Во втором режиме определяются значения w позиций ошибочных символов (значение позиций первых ошибок определяется в местном устройстве управления 560 при обнаружении ровно w значений Δ). Для этого повторяют цикл вычисления Δ, на котором был обнаружен набор из w одинаковых значений Δ, используя значения A i ' '

Figure 00000086
, R i ' '
Figure 00000087
, Msk1'' со вторых входов блока памяти коэффициентов 550. При этом последовательность Δ сравнивается второй схемой сравнения кодов 517.2 с запомненным в регистре 540 значением Δ". Всякий раз при сравнении сигнал SXi принимает значение логической 1, и в этот момент времени значение AR2 принимается как значение позиции PE' ошибочного символа (без учета перестановки).In the second mode, the values of w positions of erroneous symbols are determined (the value of the positions of the first errors is determined in the local control device 560 when exactly w values of Δ are detected). To do this, repeat the calculation cycle Δ, on which a set of w identical values of Δ was found, using the values A i '' ''
Figure 00000086
, R i '' ''
Figure 00000087
, Msk1 '' from the second inputs of the coefficient memory 550. In this case, the Δ sequence is compared by the second code comparison circuit 517.2 with the Δ "value stored in the register 540. Each time, when comparing, the signal SX i takes a value of logical 1, and at that moment the value AR2 is taken as the value of the position PE 'of the erroneous character (excluding permutation).

Блок подсчета невязок (БПН) 520 содержит (см. фиг.7): одиннадцатый блок вентилей 521, блок памяти с произвольной выборкой 522 с защелкой выходных данных на выходе по фронту тактового сигнала, схему инкремента 523, третью схему сравнения кодов 524, девятый коммутатор 526, седьмой регистр-защелку 527, девятый и десятый логические элементы И 525 и 528.The block of residual counting (BPN) 520 contains (see Fig. 7): the eleventh block of gates 521, a random-access memory block 522 with a latch of output data at the output along the clock edge, an increment scheme 523, a third code comparison circuit 524, and a ninth switch 526, seventh latch register 527, ninth and tenth gates AND 525 and 528.

В основе БПН лежит память 522, которая содержит 2m слов (2m - число элементов конечного поля Галуа) разрядностью log2tC. Слово памяти хранит значение счетчика соответствующего значения Δ.The BPN is based on a memory 522, which contains 2 m words (2 m is the number of elements of a finite Galois field) with a capacity of log 2 t C. The memory word stores the counter value of the corresponding Δ value.

Блок подсчета невязок работает в двух режимах.The residual counting unit operates in two modes.

В первом режиме осуществляется подсчет различных значений Δ. Поступающие на вход блока значения Δ защелкиваются в регистр 527. Содержимое ячейки памяти 522 (счетчик), соответствующее этому значению Δ, увеличивается на 1 с помощью схемы инкремента 523 и записывается в ту же ячейку памяти через открытый блок вентилей 521. Схема сравнения кодов 524 проверяет, не достигло ли значение текущего счетчика невязок значения w и, если достигло, то формирует сигнал обнаружения значения невязки Δ, соответствующего конфигурации ошибок веса w.In the first mode, various Δ values are counted. The Δ values received at the block input are latched into register 527. The contents of memory cell 522 (counter) corresponding to this Δ value are increased by 1 using the increment scheme 523 and written to the same memory cell through the open valve block 521. The code comparison circuit 524 checks if the value of the current residual counter has not reached the value w and, if it has, then it generates a signal for detecting the residual value Δ corresponding to the configuration of errors of weight w.

Уровень логического нуля на выходе элемента 528, формируемый при активном сигнале Msk2 или неактивном сигнале разрешения работы E, блокирует инкрементирование количества Δ, находящегося на выходе памяти.The logic zero level at the output of element 528, which is formed when the active signal Msk2 or inactive signal permits operation E, blocks the increment of the number Δ located at the output of the memory.

Во втором режиме работы БПН (режиме инициализации), задаваемом сигналом I на первом входе БПН, во все ячейки памяти 522 записываются нулевые слова. Адреса ячеек памяти 522 в этом режиме поступают через коммутатор 526 из местного устройства управления 560. Нулевые слова на входе памяти 522 получают с помощью блока вентилей 521.In the second operation mode of the on-load tap-changer (initialization mode) specified by the signal I at the first input of the on-load tap-changer, zero words are written to all memory cells 522. The addresses of the memory cells 522 in this mode are received through the switch 526 from the local control device 560. Zero words at the input of the memory 522 are obtained using the block of valves 521.

Предлагаемое устройство декодирования кодов Рида-Соломона представляет собой синхронный потоковый декодер, обрабатывающий входные данные в темпе их поступления. Выходные данные тактируются частотой входных данных, и, следовательно, выдаются с такой же скоростью. Задержка данных в устройстве равна времени поступления пяти кодовых слов. Размер буферной памяти данных 100 будет при этом равен 5n символам. Заявляемое устройство состоит из простых по своему функциональному назначению элементов и поэтому легко может быть реализовано на ПЛИС или специализированной БИС.The proposed device for decoding Reed-Solomon codes is a synchronous stream decoder that processes the input data at the rate of their arrival. The output is clocked by the frequency of the input, and therefore output at the same rate. The data delay in the device is equal to the arrival time of five code words. The size of the buffer memory data 100 will be equal to 5n characters. The inventive device consists of simple in its functional purpose elements and therefore can easily be implemented on FPGA or specialized LSI.

Результаты исследования эффективности коррекции ошибок заявляемым декодером в канале с аддитивным белым гауссовым шумом (AWGN) и модуляцией BPSK приведены на фиг.10 для кода Рида-Соломона (255, 239) в виде графика зависимостей FER (Frame Error Ratio) от Eb/No (отношения энергии сигнала на информационный бит к односторонней спектральной плотности шума). В качестве меры надежности символа слова PC-кода использовалось минимальное значение модулей мягких решений r j , k

Figure 00000088
, составляющих его бит.The results of the study of the error correction efficiency of the claimed decoder in the channel with additive white Gaussian noise (AWGN) and BPSK modulation are shown in Fig. 10 for the Reed-Solomon code (255, 239) in the form of a plot of the FER (Frame Error Ratio) versus Eb / No ( the ratio of signal energy per information bit to one-sided spectral noise density). As a measure of the reliability of the word symbol of the PC code, the minimum value of the soft decision modules was used r j , k
Figure 00000088
making up its bit.

На графике представлены следующие кривые: t=8 - классический декодер, исправляющий t=tc ошибок без использования мягких решений; t=9 - декодер-прототип, реализующий алгоритм мягкого декодирования с радиусом декодирования t=tc+1; t=10 - предложенный декодер с радиусом декодирования t=tc+2.The graph shows the following curves: t = 8 - a classic decoder that corrects t = t c errors without using soft solutions; t = 9 - prototype decoder that implements a soft decoding algorithm with a decoding radius of t = t c +1; t = 10 - the proposed decoder with the decoding radius t = t c +2.

Из графика видно (фиг.10), что уровень ошибочных кадров на выходе предложенного устройства декодирования более чем в два раза меньше уровня ошибок, обеспечиваемого декодером-прототипом.From the graph it is seen (figure 10) that the level of error frames at the output of the proposed decoding device is more than half the error level provided by the prototype decoder.

Предложенное устройство декодирования кодов Рида-Соломона позволяет повысить эффективность применения популярных высокоскоростных кодов Рида-Соломона за счет исправления 2-х дополнительных ошибок за пределами границы половины минимального кодового расстояния в системах передачи и хранения данных.The proposed device for decoding Reed-Solomon codes can improve the efficiency of using popular high-speed Reed-Solomon codes by correcting 2 additional errors beyond the border of half the minimum code distance in data transmission and storage systems.

Claims (1)

Устройство декодирования кодов Рида-Соломона, содержащее буферную память данных, блок вычисления синдромов, процессор Галуа, блок дискретного преобразования Фурье, блок поиска позиций ошибок, блок сортировки позиций символов, блок вычисления значений ошибок, первый сумматор элементов поля Галуа, причем входы буферной памяти данных и входы блока вычисления синдромов являются входами символов данных устройства декодирования кодов Рида-Соломона, выходы буферной памяти данных соединены с первыми входами первого сумматора элементов поля Галуа, выходы блока вычисления синдромов соединены с первыми входами процессора Галуа, первые выходы процессора Галуа соединены с первыми входами блока дискретного преобразования Фурье, вторые выходы процессора Галуа соединены со вторыми входами блока дискретного преобразования Фурье, третьи выходы процессора Галуа соединены с третьими входами блока дискретного преобразования Фурье, четвертые выходы процессора Галуа соединены с четвертыми входами блока поиска позиций ошибок, пятые выходы процессора Галуа соединены с первыми входами блока вычисления значений ошибок, шестые выходы процессора Галуа соединены со вторыми входами блока вычисления значений ошибок, седьмые выходы процессора Галуа соединены с третьими входами блока вычисления значений ошибок, вторые выходы блока дискретного преобразования Фурье соединены с третьими входами процессора Галуа, третьи выходы блока дискретного преобразования Фурье соединены с четвертыми входами процессора Галуа, четвертые выходы блока дискретного преобразования Фурье соединены с первыми входами блока поиска позиций ошибок, пятый выход блока дискретного преобразования Фурье соединен со вторым входом блока поиска позиций ошибок, шестые выходы блока дискретного преобразования Фурье соединены с третьими входами блока поиска позиций ошибок, первые выходы блока поиска позиций ошибок соединены с пятыми входами процессора Галуа, вторые выходы блока поиска позиций ошибок соединены со вторыми входами блока сортировки позиций символов, выходы блока вычисления значений ошибок соединены со вторыми входами первого сумматора элементов поля Галуа, выходы первого сумматора элементов поля Галуа являются выходами данных устройства декодирования кодов Рида-Соломона, первые входы блока сортировки позиций символов являются входами оценок надежности символов данных устройства декодирования кодов Рида-Соломона, первые выходы блока дискретного преобразования Фурье соединены с третьими входами блока сортировки позиций символов, первые выходы блока сортировки позиций символов соединены со вторыми входами процессора Галуа, вторые выходы блока сортировки позиций символов соединены с пятыми входами блока поиска позиций ошибок, причем блок поиска позиций ошибок содержит первый блок вычисления невязок, второй блок вычисления невязок, первый блок подсчета невязок, второй блок подсчета невязок, первый коммутатор, первый регистр-защелку, блок памяти коэффициентов, первое местное устройство управления, причем первые входы первого местного устройства управления являются четвертыми входами блока поиска позиций ошибок, вторые входы первого местного устройства управления и первые входы блока памяти коэффициентов являются пятыми входами блока поиска позиций ошибок, третьи входы блока поиска позиций ошибок являются младшими разрядами вторых входов блока памяти коэффициентов, первые входы блока поиска позиций ошибок являются средними разрядами вторых входов блока памяти коэффициентов, второй вход блока поиска позиций ошибок является старшим разрядом вторых входов блока памяти коэффициентов, младшие разряды первых выходов блока памяти коэффициентов соединены с первыми входами первого блока вычисления невязок и с первыми входами второго блока вычисления невязок, средние разряды первых выходов блока памяти коэффициентов соединены с третьими входами первого блока вычисления невязок и с третьими входами второго блока вычисления невязок, старший разряд первых выходов блока памяти коэффициентов соединен с пятым входом первого блока вычисления невязок и с пятым входом второго блока вычисления невязок, младшие разряды вторых выходов блока памяти коэффициентов соединены со вторыми входами первого блока вычисления невязок и со вторыми входами второго блока вычисления невязок, средние разряды вторых выходов блока памяти коэффициентов соединены с четвертыми входами первого блока вычисления невязок и с четвертыми входами второго блока вычисления невязок, старший разряд вторых выходов блока памяти коэффициентов соединен с шестым входом первого блока вычисления невязок и с шестым входом второго блока вычисления невязок, первый выход первого блока вычисления невязок соединен с четвертым входом первого блока подсчета невязок, вторые выходы первого блока вычисления невязок соединены с третьими входами первого блока подсчета невязок, третий выход первого блока вычисления невязок соединен с третьим входом первого местного устройства управления, первый выход первого блока подсчета невязок соединен с пятым входом первого местного устройства управления, вторые выходы первого блока подсчета невязок соединены с первыми входами первого коммутатора, третий выход второго блока вычисления невязок соединен с четвертым входом первого местного устройства управления, вторые выходы второго блока вычисления невязок соединены с третьими входами второго блока подсчета невязок, первый выход второго блока вычисления невязок соединен с четвертым входом второго блока подсчета невязок, вторые выходы второго блока подсчета невязок соединены со вторыми входами первого коммутатора, первый выход второго блока подсчета невязок соединен с шестым входом первого местного устройства управления, третий выход первого местного устройства управления соединен с седьмым входом первого блока вычисления невязок, четвертые выходы первого местного устройства управления соединены с восьмыми входами первого блока вычисления невязок, пятые выходы первого местного устройства управления соединены с девятыми входами первого блока вычисления невязок, шестые выходы первого местного устройства управления соединены с четвертыми входами блока памяти коэффициентов, седьмые выходы первого местного устройства управления соединены с третьими входами блока памяти коэффициентов, восьмые выходы первого местного устройства управления соединены со вторыми входами первого блока подсчета невязок, девятый выход первого местного устройства управления соединен с первым входом первого блока подсчета невязок, десятый выход первого местного устройства управления соединен с пятым входом первого блока подсчета невязок, одиннадцатый выход первого местного устройства управления соединен со вторым входом первого регистра-защелки, двенадцатый выход первого местного устройства управления соединен с третьим входом первого коммутатора, тринадцатый выход первого местного устройства управления соединен с пятым входом второго блока подсчета невязок, четырнадцатый выход первого местного устройства управления соединен с первым входом второго блока подсчета невязок, пятнадцатые выходы первого местного устройства управления соединены со вторыми входами второго блока подсчета невязок, шестнадцатые выходы первого местного устройства управления соединены с девятыми входами второго блока вычисления невязок, семнадцатые выходы первого местного устройства управления соединены с восьмыми входами второго блока вычисления невязок, восемнадцатый выход первого местного устройства управления соединен с седьмым входом второго блока вычисления невязок, девятнадцатые выходы первого местного устройства управления соединены с шестыми входами второго блока подсчета невязок, двадцатые выходы первого местного устройства управления соединены с шестыми входами первого блока подсчета невязок, первые выходы первого местного устройства управления являются вторыми выходами блока поиска позиций ошибок, вторые выходы первого местного устройства управления являются первыми выходами блока поиска позиций ошибок, выходы первого коммутатора соединены с первыми входами первого регистра-защелки, выходы первого регистра-защелки соединены с десятыми входами первого блока вычисления невязок и десятыми входами второго блока вычисления невязок, причем блок вычисления невязок содержит третий сумматор элементов поля Галуа, первый инвертор элементов поля Галуа, первую схему сравнения кодов, селектор нулевого элемента поля Галуа, первый логический элемент И, логический элемент ИЛИ-НЕ, одиннадцатый перемножитель элементов поля Галуа, причем первые входы первой схемы сравнения кодов являются десятыми входами блока вычисления невязок, выход первой схемы сравнения кодов соединен с первым входом первого логического элемента И, выход логического элемента ИЛИ-НЕ соединен со вторым входом первого логического элемента И и является первым выходом блока вычисления невязок, выходы первого инвертора элементов поля Галуа соединены с первыми входами одиннадцатого перемножителя элементов поля Галуа, выход первого логического элемента И является третьим выходом блока вычисления невязок, выходы одиннадцатого перемножителя элементов поля Галуа соединены со вторыми входами первой схемы сравнения кодов и являются вторыми выходами блока вычисления невязок, отличающееся тем, что в блок вычисления невязок введены блок произведений дробей Ri, блок произведений коэффициентов Ai, второй, третий и четвертый коммутаторы, второй и четвертый сумматоры элементов поля Галуа, первый, второй, третий, четвертый, пятый, шестой, седьмой, восьмой, девятый и десятый перемножители элементов поля Галуа, причем первые входы блока произведений коэффициентов Ai являются первыми входами блока вычисления невязок, вторые входы блока произведений коэффициентов Ai являются вторыми входами блока вычисления невязок, первые входы блока произведений дробей Ri являются третьими входами блока вычисления невязок, вторые входы блока произведений дробей Ri являются четвертыми входами блока вычисления невязок, третий вход блока произведений дробей Ri является пятым входом блока вычисления невязок, четвертый вход блока произведений дробей Ri является шестым входом блока вычисления невязок, третий вход блока произведений коэффициентов Ai соединен с шестым входом блока произведений дробей Ri и является седьмым входом блока вычисления невязок, четвертые входы блока произведений коэффициентов Ai соединены с седьмыми входами блока произведений дробей Ri и являются восьмыми входами блока вычисления невязок, пятые входы блока произведений дробей Ri соединены с девятыми входами второго коммутатора, восьмыми входами третьего коммутатора, восьмыми входами четвертого коммутатора и являются девятыми входами блока вычисления невязок, первые выходы блока произведений дробей Ri соединены с первым входами третьего сумматора элементов поля Галуа и первыми входам седьмого перемножителя элементов поля Галуа, вторые выходы блока произведений дробей Ri соединены со вторыми входами третьего сумматора элементов поля Галуа и первыми входами восьмого перемножителя элементов поля Галуа, третьи выходы блока произведений дробей Ri соединены с первыми входами девятого перемножителя элементов поля Галуа, четвертые выходы блока произведений дробей Ri соединены с первыми входами десятого перемножителя элементов поля Галуа, пятые выходы блока произведений дробей Ri соединены с первыми входами первого перемножителя элементов поля Галуа, шестые выходы блока произведений дробей Ri соединены с первыми входами второго перемножителя элементов поля Галуа, седьмые выходы блока Ri соединены с первым входами третьего перемножителя элементов поля Галуа, восьмые выходы блока произведений дробей Ri соединены с первыми входами четвертого перемножителя элементов поля Галуа, девятые выходы блока произведений дробей Ri соединены со вторыми входами пятого перемножителя элементов поля Галуа, десятые выходы блока произведений дробей Ri соединены с первыми входами шестого перемножителя элементов поля Галуа, одиннадцатый выход блока произведений дробей Ri соединен с первым входом логического элемента ИЛИ-НЕ, первые выходы блока произведений коэффициентов Ai соединены со вторыми входами первого перемножителя элементов поля Галуа и вторыми входами шестого перемножителя элементов поля Галуа, вторые выходы блока коэффициентов Ai соединены со вторыми входами второго перемножителя элементов поля Галуа и первыми входами пятого перемножителя элементов поля Галуа, третьи выходы блока коэффициентов Ai соединены со вторыми входами третьего перемножителя элементов поля Галуа и вторыми входами четвертого перемножителя элементов поля Галуа, четвертые выходы блока коэффициентов Ai соединены с первыми входами второго коммутатора, пятые выходы блока коэффициентов Ai соединены со вторыми входами второго коммутатора, шестые выходы блока коэффициентов Ai соединены с третьими входами второго коммутатора, седьмые выходы блока коэффициентов Ai соединены с четвертыми входами второго коммутатора и пятыми входами третьего коммутатора, восьмые выходы блока коэффициентов Ai соединены с четвертыми входами третьего коммутатора и третьими входами четвертого коммутатора, девятые выходы блока произведений коэффициентов Ai соединены с седьмыми входами второго коммутатора, седьмыми входами третьего коммутатора и шестыми входами четвертого коммутатора, десятые выходы блока коэффициентов Ai соединены с шестыми входами второго коммутатора, одиннадцатые выходы блока коэффициентов Ai соединены с пятыми входами второго коммутатора, на восьмые входы второго коммутатора подается константа - нулевой символ конечного поля, первые выходы второго коммутатора соединены со вторыми входами седьмого перемножителя элементов поля Галуа, вторые выходы второго коммутатора соединены со вторыми входами восьмого перемножителя элементов поля Галуа, третьи выходы второго коммутатора соединены со вторыми входами девятого перемножителя элементов поля Галуа, четвертые выходы второго коммутатора соединены со вторыми входами десятого перемножителя элементов поля Галуа, выходы первого перемножителя элементов поля Галуа соединены с первыми входами второго сумматора элементов поля Галуа, выходы второго перемножителя элементов поля Галуа соединены со вторыми входами второго сумматора элементов поля Галуа, выходы третьего перемножителя элементов поля Галуа соединены с третьими входами второго сумматора элементов поля Галуа, выходы четвертого перемножителя элементов поля Галуа соединены с четвертыми входами второго сумматора элементов поля Галуа, выходы пятого перемножителя элементов поля Галуа соединены с пятыми входами второго сумматора элементов поля Галуа, выходы шестого перемножителя элементов поля Галуа соединены с шестыми входами второго сумматора элементов поля Галуа, выходы второго сумматора элементов поля Галуа соединены с первыми входам третьего коммутатора и вторыми входами четвертого коммутатора, выходы третьего сумматора элементов поля Галуа соединены с шестыми входами третьего коммутатора и седьмыми входами четвертого коммутатора, выходы седьмого перемножителя элементов поля Галуа соединены с первыми входами четвертого сумматора элементов поля Галуа, выходы восьмого перемножителя элементов поля Галуа соединены со вторыми входами четвертого сумматора элементов поля Галуа, выходы девятого перемножителя элементов поля Галуа соединены с третьими входами четвертого сумматора элементов поля Галуа, выходы десятого перемножителя элементов поля Галуа соединены с четвертыми входами четвертого сумматора элементов поля Галуа, выходы четвертого сумматора элементов поля Галуа соединены с первыми, четвертыми и пятыми входами четвертого коммутатора и вторыми и третьими входами третьего коммутатора, выходы третьего коммутатора соединены со входами селектора нулевого элемента поля Галуа и входами первого инвертора элементов поля Галуа, выход селектора нулевого элемента поля Галуа соединен со вторым входом логического элемента ИЛИ-НЕ, выходы четвертого коммутатора соединены со вторыми входами одиннадцатого перемножителя элементов поля Галуа, причем блок произведений дробей Ri содержит пятый, шестой и седьмой коммутаторы, первый, второй, третий и четвертый регистры Rg1, первый-десятый блоки вентилей, двенадцатый-семнадцатый перемножители элементов поля Галуа, вторую схему сравнения кодов, схему формирования веса, причем первые входы пятого коммутатора являются первыми входами блока произведений дробей Ri, вторые входы пятого коммутатора являются вторыми входами блока произведений дробей Ri, третий вход пятого коммутатора соединен с третьим входом шестого коммутатора и является шестым входом блока произведений дробей Ri, первый вход шестого коммутатора является третьим входом блока произведений дробей Ri, второй вход шестого коммутатора является четвертым входом блока произведений дробей Ri, выходы пятого коммутатора соединены с первыми входами первого, второго, третьего и четвертого регистров Rg1, выход шестого коммутатора соединен со вторыми входами первого, второго, третьего и четвертого регистров Rg1, третьи входы первого, второго, третьего и четвертого регистров Rg1 являются седьмыми входами блока произведений дробей Ri, первые выходы первого регистра Rg1 соединены с четвертыми входами четвертого блока вентилей и вторыми входами пятнадцатого, шестнадцатого и семнадцатого перемножителей элементов поля Галуа, второй выход первого регистра Rg1 соединен с третьими входами первого, второго, третьего блоков вентилей, первым входом схемы формирования веса и первыми входами пятого, шестого и седьмого блоков вентилей, первые выходы второго регистра Rg1 соединены со вторыми входами тринадцатого и четырнадцатого перемножителей элементов поля Галуа, четвертыми входами третьего блока вентилей и первыми входами семнадцатого перемножителя элементов поля Галуа, второй выход второго регистра Rg1 соединен со вторыми входами первого, второго и пятого блока вентилей, третьим входом четвертого блока вентилей, первыми входами восьмого и девятого блоков вентилей и четвертым входом схемы формирования веса, первые выходы третьего регистра Rg1 соединены со вторыми входами двенадцатого перемножителя, четвертыми входами второго блока вентилей и первыми входами четырнадцатого и шестнадцатого перемножителей элементов поля Галуа, второй выход третьего регистра Rg1 соединен с первым входом первого блока вентилей, вторыми входами третьего, четвертого, шестого и восьмого блоков вентилей, первым входом десятого блока вентилей и третьим входом схемы формирования веса, первые выходы четвертого регистра Rg1 соединены с четвертыми входами первого блока вентилей, первыми входами двенадцатого, тринадцатого и пятнадцатого перемножителей элементов поля Галуа, второй выход четвертого регистра Rg1 соединен с первыми входами второго, третьего и четвертого блоков вентилей, вторыми входами седьмого, девятого и десятого блоков вентилей и вторым входом схемы формирования веса, выходы двенадцатого перемножителя элементов поля Галуа соединены с третьими входами пятого блока вентилей, выходы тринадцатого перемножителя элементов поля Галуа соединены с третьими входами шестого блока вентилей, выходы четырнадцатого перемножителя элементов поля Галуа соединены с третьими входами седьмого блока вентилей, выходы пятнадцатого перемножителя элементов поля Галуа соединены с третьими входами восьмого блока вентилей, выходы шестнадцатого перемножителя элементов поля Галуа соединены с третьими входами девятого блока вентилей, выходы семнадцатого перемножителя элементов поля Галуа соединены с третьими входами десятого блока вентилей, на первые входы седьмого коммутатора подается константа '1', на вторые входы седьмого коммутатора подается константа '0', третьи входы седьмого коммутатора являются пятыми входами блока произведений дробей Ri, выходы седьмого коммутатора соединены с первыми входами второй схемы сравнения кодов, выходы схемы формирования веса соединены со вторыми входами второй схемы сравнения кодов, выходы первого блока вентилей являются первыми выходами блока произведений дробей Ri, выходы второго блока вентилей являются вторыми выходами блока произведений дробей Ri, выходы третьего блока вентилей являются третьими выходами блока произведений дробей Ri, выходы четвертого блока вентилей являются четвертыми выходами блока произведений дробей Ri, выходы пятого блока вентилей являются пятыми выходами блока произведений дробей Ri, выходы шестого блока вентилей являются шестыми выходами блока произведений дробей Ri, выходы седьмого блока вентилей являются седьмыми выходами блока произведений дробей Ri, выходы восьмого блока вентилей являются восьмыми выходами блока произведений дробей Ri, выходы девятого блока вентилей являются девятыми выходами блока произведений дробей Ri, выходы десятого блока вентилей являются десятыми выходами блока произведений дробей Ri, выход второй схемы сравнения кодов является одиннадцатым выходом блока произведений дробей Ri, причем блок произведений коэффициентов Ai содержит восьмой коммутатор, второй, третий, четвертый и пятый регистры-защелки, пятый-десятый сумматоры элементов поля Галуа, восемнадцатый-двадцать пятый перемножители элементов поля Галуа, причем первые входы восьмого коммутатора являются первыми входами блока произведений коэффициентов Ai, вторые входы восьмого коммутатора являются вторыми входами блока произведений коэффициентов Ai, третий вход восьмого коммутатора является третьим входом блока произведений коэффициентов Ai, вторые входы второго, третьего, четвертого и пятого регистров-защелок являются разрядами четвертых входов блока произведений коэффициентов Ai, выходы восьмого коммутатора соединены с первыми входами второго, третьего, четвертого и пятого регистров-защелок, выходы второго регистра-защелки соединены с первыми входами пятого, шестого и восьмого сумматоров элементов поля Галуа, выходы третьего регистра-защелки соединены со вторыми входами пятого сумматора элементов поля Галуа и первыми входами седьмого и девятого сумматоров элементов поля Галуа, выходы четвертого регистра-защелки соединены с первыми входами десятого сумматора элементов поля Галуа и вторыми входами шестого и седьмого сумматоров элементов поля Галуа, выходы пятого регистра-защелки соединены со вторыми входами восьмого, девятого и десятого сумматоров элементов поля Галуа, выходы пятого сумматора элементов поля Галуа соединены с первыми входами восемнадцатого, двадцать третьего и двадцать четвертого перемножителей элементов поля Галуа и являются девятыми выходами блока произведений коэффициентов Ai, выходы шестого сумматора элементов поля Галуа соединены с первыми входами девятнадцатого и двадцать второго перемножителей элементов поля Галуа, вторыми входами двадцать четвертого перемножителя элементов поля Галуа и являются десятыми выходами блока произведений коэффициентов Ai, выходы седьмого сумматора элементов поля Галуа соединены с первыми входами двадцатого и двадцать первого перемножителей элементов поля Галуа, третьими входами двадцать четвертого перемножителя элементов поля Галуа и являются одиннадцатыми выходами блока произведений Ai, выходы восьмого сумматора элементов поля Галуа соединены со вторыми входами двадцатого, двадцать второго и двадцать третьего перемножителей элементов поля Галуа, выходы девятого сумматора элементов поля Галуа соединены со вторыми входами девятнадцатого и двадцать первого перемножителей элементов поля Галуа и третьими входами двадцать третьего перемножителя элементов поля Галуа, выходы десятого сумматора элементов поля Галуа соединены с третьими входами двадцать первого и двадцать второго перемножителей элементов поля Галуа и вторыми входами восемнадцатого перемножителя элементов поля Галуа, выходы восемнадцатого перемножителя элементов поля Галуа соединены с третьими входами двадцать пятого перемножителя элементов поля Галуа и являются первыми выходами блока произведений коэффициентов Ai, выходы девятнадцатого перемножителя элементов поля Галуа соединены со вторыми входами двадцать пятого перемножителя элементов поля Галуа и являются вторыми выходами блока произведений коэффициентов Ai, выходы двадцатого перемножителя элементов поля Галуа соединены с первыми входами двадцать пятого перемножителя элементов поля Галуа и являются третьими выходами блока произведений коэффициентов Ai, выходы двадцать первого перемножителя элементов поля Галуа являются четвертыми выходами блока произведений коэффициентов Ai, выходы двадцать второго перемножителя элементов поля Галуа являются пятыми выходами блока произведений коэффициентов Ai, выходы двадцать третьего перемножителя элементов поля Галуа являются шестыми выходами блока произведений коэффициентов Ai, выходы двадцать четвертого перемножителя элементов поля Галуа являются седьмыми выходами блока произведений коэффициентов Ai, выходы двадцать пятого перемножителя элементов поля Галуа являются восьмыми выходами блока произведений коэффициентов Ai. A Reed-Solomon code decoding device comprising a data buffer, a syndrome calculation unit, a Galois processor, a discrete Fourier transform unit, an error position search unit, a character position sorting unit, an error value calculation unit, a first adder of Galois field elements, the inputs of the data buffer memory and the inputs of the syndromes calculation unit are inputs of data symbols of the Reed-Solomon code decoding device, the outputs of the data buffer memory are connected to the first inputs of the first adder of the field elements Galois, the outputs of the syndrome calculation unit are connected to the first inputs of the Galois processor, the first outputs of the Galois processor are connected to the first inputs of the discrete Fourier transform, the second outputs of the Galois processor are connected to the second inputs of the discrete Fourier transform, the third outputs of the Galois processor are connected to the third inputs of the discrete transform Fourier, the fourth outputs of the Galois processor are connected to the fourth inputs of the error position search unit, the fifth outputs of the Galois processor are connected to the first inputs and a unit for calculating error values, the sixth outputs of the Galois processor are connected to the second inputs of the unit for calculating the error values, the seventh outputs of the Galois processor are connected to the third inputs of the unit for calculating the error values, the second outputs of the discrete Fourier transform unit are connected to the third inputs of the Galois processor, the third outputs of the discrete transform unit Fourier is connected to the fourth inputs of the Galois processor, the fourth outputs of the discrete Fourier transform block are connected to the first inputs of the block for searching for position errors ok, the fifth output of the discrete Fourier transform unit is connected to the second input of the error position search unit, the sixth outputs of the discrete Fourier transform unit are connected to the third inputs of the error position search unit, the first outputs of the error position search unit are connected to the fifth inputs of the Galois processor, the second outputs of the position search unit errors are connected to the second inputs of the block for sorting the positions of characters, the outputs of the unit for calculating error values are connected to the second inputs of the first adder of the Galois field elements, the outputs of the first the adders of the Galois field elements are the data outputs of the Reed-Solomon code decoding device, the first inputs of the character position sorting unit are inputs of the character reliability ratings of the Reed-Solomon code decoding device, the first outputs of the discrete Fourier transform unit are connected to the third inputs of the character position sorting unit, the first outputs character position sorting unit connected to second inputs of the Galois processor, second outputs of character position sorting unit connected to fifth inputs b an error position search unit, the error position search unit comprising a first residual calculation unit, a second residual calculation unit, a first residual calculation unit, a second residual calculation unit, a first switch, a first latch register, a coefficient memory unit, a first local control device, the first the inputs of the first local control device are the fourth inputs of the error position search unit, the second inputs of the first local control device and the first inputs of the coefficient memory block are the fifth inputs of the the error position search block, the third inputs of the error position search block are the least significant bits of the second inputs of the coefficient memory block, the first inputs of the error position search block are the middle bits of the second inputs of the coefficient memory block, the second input of the error position search block is the highest bit of the second inputs of the coefficient memory block, the least significant bits of the first outputs of the coefficient memory block are connected to the first inputs of the first residual calculation block and to the first inputs of the second residual calculation block, average the bits of the first outputs of the coefficient memory block are connected to the third inputs of the first residual calculation block and to the third inputs of the second residual calculation block, the senior bit of the first outputs of the coefficient memory block is connected to the fifth input of the first residual calculation block and to the fifth input of the second residual calculation block, the lower bits of the second the outputs of the coefficient memory block are connected to the second inputs of the first residual calculation block and to the second inputs of the second residual calculation block, the middle bits of the second outputs the coefficient memory block is connected to the fourth inputs of the first residual calculation block and the fourth inputs of the second residual calculation block, the highest bit of the second outputs of the coefficient memory block is connected to the sixth input of the first residual calculation block and the sixth input of the second residual calculation block, the first output of the first residual calculation block connected to the fourth input of the first block of residuals, the second outputs of the first block of residuals are connected to the third inputs of the first block of residuals, the third the output of the first residual calculation unit is connected to the third input of the first local control device, the first output of the first residual calculation unit is connected to the fifth input of the first local control device, the second outputs of the first residual calculation unit are connected to the first inputs of the first switch, the third output of the second residual calculation unit is connected to the fourth input of the first local control device, the second outputs of the second residuals calculation unit are connected to the third inputs of the second residuals calculation unit, the first the output of the second residuals calculation unit is connected to the fourth input of the second residuals calculation unit, the second outputs of the second residuals calculation unit are connected to the second inputs of the first switch, the first output of the second residuals calculation unit is connected to the sixth input of the first local control device, the third output of the first local control device is connected to the seventh input of the first block of residual calculation, the fourth outputs of the first local control device are connected to the eighth inputs of the first block of residual calculation, five the outputs of the first local control device are connected to the ninth inputs of the first residual calculation unit, the sixth outputs of the first local control device are connected to the fourth inputs of the coefficient memory unit, the seventh outputs of the first local control device are connected to the third inputs of the coefficient memory unit, the eighth outputs of the first local control device are connected with the second inputs of the first residual counting unit, the ninth output of the first local control device is connected to the first input of the first o residual counting unit, the tenth output of the first local control device is connected to the fifth input of the first residual counting unit, the eleventh output of the first local control device is connected to the second input of the first register-latch, the twelfth output of the first local control device is connected to the third input of the first switch, the thirteenth output the first local control device is connected to the fifth input of the second residual counting unit, the fourteenth output of the first local control device is connected to the input of the second block of residuals, the fifteenth outputs of the first local control unit are connected to the second inputs of the second block of residuals, the sixteenth outputs of the first local control unit are connected to the ninth inputs of the second block of residuals, the seventeenth outputs of the first local control device are connected to the eighth inputs of the second block of calculation residuals, the eighteenth output of the first local control device is connected to the seventh input of the second residual calculation unit, nineteen the first outputs of the first local control device are connected to the sixth inputs of the second residuals counting unit, the twenties outputs of the first local control device are connected to the sixth inputs of the first residuals counting unit, the first outputs of the first local control device are the second outputs of the error position search unit, the second outputs of the first local control device are the first outputs of the unit for searching for error positions, the outputs of the first switch are connected to the first inputs of the first register-latch, the outputs of the first register latches are connected to the tenth inputs of the first residual calculation block and the tenth inputs of the second residual calculation block, the residual calculation block comprising a third adder of Galois field elements, a first inverter of Galois field elements, a first code comparison circuit, a Galois field zero element selector, a first logical AND element, OR-NOT logic element, eleventh multiplier of Galois field elements, the first inputs of the first code comparison scheme being the tenth inputs of the residual calculation block, the output of the first the code comparison circuit is connected to the first input of the first logical element AND, the output of the logical element OR is NOT connected to the second input of the first logical element AND and is the first output of the residual calculation block, the outputs of the first inverter of the Galois field elements are connected to the first inputs of the eleventh multiplier of the Galois field elements, the output of the first logical element And is the third output of the residual calculation block, the outputs of the eleventh multiplier of the Galois field elements are connected to the second inputs of the first circuit eniya codes and the outputs are second calculation unit residuals, characterized in that the calculating unit block residuals introduced fractions works R i , block of products of coefficients A i , second, third and fourth switches, second and fourth adders of Galois field elements, first, second, third, fourth, fifth, sixth, seventh, eighth, ninth and tenth multipliers of Galois field elements, the first inputs of the block of the product of coefficients A i are the first inputs of the block for calculating residuals, the second inputs of the block of products of coefficients A i are the second inputs of the block for calculating residuals, the first inputs of the block of products of fractions R i are the third inputs of the block for calculating residuals, the second inputs of the block of products of fractions R i are the fourth inputs of the block for calculating residuals, the third input of the block of fractions R i is the fifth input of the residual calculation block, the fourth input of the fraction product block R i is the sixth input of the residual calculation block, the third input of the block of coefficient products A i connected to the sixth input of the block of fractions R i and is the seventh input of the residual calculation block, the fourth inputs of the product block of coefficients A i connected to the seventh inputs of the block of products of fractions R i and are the eighth inputs of the residual calculation block, the fifth inputs of the fraction product block R i connected to the ninth inputs of the second switch, the eighth inputs of the third switch, the eighth inputs of the fourth switch and are the ninth inputs of the unit for calculating residuals, the first outputs of the unit of fractions R i connected to the first inputs of the third adder of the Galois field elements and the first inputs of the seventh multiplier of the Galois field elements, the second outputs of the fraction product block R i connected to the second inputs of the third adder of the elements of the Galois field and the first inputs of the eighth multiplier of the elements of the Galois field, the third outputs of the block of fractions R i connected to the first inputs of the ninth multiplier of elements of the Galois field, the fourth outputs of the block of fractions R i connected to the first inputs of the tenth multiplier of elements of the Galois field, the fifth outputs of the block of fractions R i connected to the first inputs of the first multiplier of the elements of the Galois field, the sixth outputs of the block of products of fractions R i connected to the first inputs of the second multiplier of the elements of the Galois field, the seventh outputs of the block R i connected to the first inputs of the third multiplier of the elements of the Galois field, the eighth outputs of the block of products of fractions R i connected to the first inputs of the fourth multiplier of the elements of the Galois field, the ninth outputs of the block of products of fractions R i connected to the second inputs of the fifth multiplier of the elements of the Galois field, the tenth outputs of the block of fractions of fractions R i connected to the first inputs of the sixth multiplier of the elements of the Galois field, the eleventh output of the block of fractions R i connected to the first input of the logic element OR NOT, the first outputs of the block of products of the coefficients A i connected to the second inputs of the first multiplier of Galois field elements and the second inputs of the sixth multiplier of Galois field elements, the second outputs of the coefficient block A i connected to the second inputs of the second multiplier of the elements of the Galois field and the first inputs of the fifth multiplier of the elements of the Galois field, the third outputs of the block of coefficients A i connected to the second inputs of the third multiplier of Galois field elements and the second inputs of the fourth multiplier of Galois field elements, the fourth outputs of the block of coefficients A i connected to the first inputs of the second switch, the fifth outputs of the block of coefficients A i connected to the second inputs of the second switch, the sixth outputs of the block of coefficients A i connected to the third inputs of the second switch, the seventh outputs of the block of coefficients A i connected to the fourth inputs of the second switch and the fifth inputs of the third switch, the eighth outputs of the block of coefficients A i connected to the fourth inputs of the third switch and the third inputs of the fourth switch, the ninth outputs of the block of products of the coefficients A i connected to the seventh inputs of the second switch, the seventh inputs of the third switch and the sixth inputs of the fourth switch, tenth outputs of the block of coefficients A i connected to the sixth inputs of the second switch, the eleventh outputs of the block of coefficients A i connected to the fifth inputs of the second switch, a constant is applied to the eighth inputs of the second switch, the zero symbol of the final field, the first outputs of the second switch are connected to the second inputs of the seventh multiplier of Galois field elements, the second outputs of the second switch are connected to the second inputs of the eighth Galois field multiplier, third outputs the second switch is connected to the second inputs of the ninth multiplier of the Galois field elements, the fourth outputs of the second switch are connected to the second inputs of the tenth a multiplier of Galois field elements, the outputs of the first multiplier of Galois field elements are connected to the first inputs of the second adder of Galois field elements, the outputs of the second multiplier of Galois field elements are connected to the second inputs of the second Galois field element adder, the outputs of the third Galois field element multiplier are connected to the third inputs of the second Galois field element Galois fields, the outputs of the fourth multiplier of the elements of the Galois field are connected to the fourth inputs of the second adder of the elements of the Galois field, the outputs of the fifth the Galois field element scissors are connected to the fifth inputs of the second Galois field element adder, the outputs of the sixth Galois field element multiplier are connected to the sixth inputs of the second Galois field element, the outputs of the second Galois field element adder are connected to the first inputs of the third switch and second inputs of the fourth switch, outputs of the third the adder of the Galois field elements are connected to the sixth inputs of the third switch and the seventh inputs of the fourth switch, the outputs of the seventh multiplier of the field elements Galois are connected to the first inputs of the fourth adder of Galois field elements, the outputs of the eighth Galois field element multiplier are connected to the second inputs of the fourth adder of Galois field elements, the outputs of the ninth galois field multiplier are connected to the third inputs of the fourth Galois field elements, the outputs of the tenth Galois field element multiplier are connected with fourth inputs of the fourth adder of Galois field elements, the outputs of the fourth adder of Galois field elements are connected to the first, fourth and fifth and the inputs of the fourth switch and the second and third inputs of the third switch, the outputs of the third switch are connected to the inputs of the selector of the zero element of the Galois field and the inputs of the first inverter of the elements of the Galois field, the output of the selector of the zero element of the Galois field is connected to the second input of the logic element OR-NOT, the outputs of the fourth switch connected to the second inputs of the eleventh multiplier of the elements of the Galois field, and the block of products of fractions R i contains the fifth, sixth and seventh switches, the first, second, third and fourth registers Rg1, the first to tenth valve blocks, the twelfth to seventeenth multipliers of Galois field elements, the second code comparison scheme, the weight generation scheme, the first inputs of the fifth switch being the first inputs of the block fractions R i , the second inputs of the fifth switch are the second inputs of the block of products of fractions R i , the third input of the fifth switch is connected to the third input of the sixth switch and is the sixth input of the block of fractions R i , the first input of the sixth switch is the third input of the block of fractions R i , the second input of the sixth switch is the fourth input of the block of fractions R i , the outputs of the fifth switch are connected to the first inputs of the first, second, third and fourth registers Rg1, the output of the sixth switch is connected to the second inputs of the first, second, third and fourth registers Rg1, the third inputs of the first, second, third and fourth registers Rg1 are the seventh inputs of the block fractions R i , the first outputs of the first register Rg1 are connected to the fourth inputs of the fourth valve block and the second inputs of the fifteenth, sixteenth and seventeenth multipliers of Galois field elements, the second output of the first register Rg1 is connected to the third inputs of the first, second, third valve blocks, the first input of the weight formation circuit and the first the inputs of the fifth, sixth and seventh valve blocks, the first outputs of the second register Rg1 are connected to the second inputs of the thirteenth and fourteenth multipliers of Galois field elements, fourth inputs by the third valve block and the first inputs of the seventeenth Galois field element multiplier, the second output of the second register Rg1 is connected to the second inputs of the first, second and fifth valve blocks, the third input of the fourth valve block, the first inputs of the eighth and ninth valve blocks and the fourth input of the weight formation circuit, the first outputs of the third register Rg1 are connected to the second inputs of the twelfth multiplier, the fourth inputs of the second valve block and the first inputs of the fourteenth and sixteenth elem multipliers of the Galois field, the second output of the third register Rg1 is connected to the first input of the first valve block, the second inputs of the third, fourth, sixth and eighth valve blocks, the first input of the tenth valve block and the third input of the weight formation circuit, the first outputs of the fourth register Rg1 are connected to the fourth inputs the first block of gates, the first inputs of the twelfth, thirteenth and fifteenth multipliers of Galois field elements, the second output of the fourth register Rg1 is connected to the first inputs of the second, third and fourth blocks in the gates, the second inputs of the seventh, ninth and tenth valve blocks and the second input of the weight formation circuit, the outputs of the twelfth Galois field element multiplier are connected to the third inputs of the fifth Galois field element, the outputs of the thirteenth Galois field multiplier are connected to the third inputs of the sixth Galois field, the outputs of the fourteenth multiplier the elements of the Galois field are connected to the third inputs of the seventh valve block, the outputs of the fifteenth multiplier of the elements of the Galois field are connected to the third inputs of the eighth block gates, the outputs of the sixteenth Galois field element multiplier are connected to the third inputs of the ninth valve block, the outputs of the seventeenth Galois field element multiplier are connected to the third inputs of the tenth valve block, the constant '1' is applied to the first inputs of the seventh switch, the constant 'is fed to the second inputs of the seventh 0 ', the third inputs of the seventh switch are the fifth inputs of the block of products of fractions R i , the outputs of the seventh switch are connected to the first inputs of the second code comparison circuit, the outputs of the weight formation circuit are connected to the second inputs of the second code comparison circuit, the outputs of the first valve block are the first outputs of the fraction product block R i , the outputs of the second block of valves are the second outputs of the block of fractions R i , the outputs of the third valve block are the third outputs of the fraction product block R i , the outputs of the fourth valve block are the fourth outputs of the block of fractions R i , the outputs of the fifth block of gates are the fifth outputs of the block of products of fractions R i , the outputs of the sixth valve block are the sixth outputs of the block of fractions R i , the outputs of the seventh valve block are the seventh outputs of the fraction product block R i , the outputs of the eighth block of valves are the eighth outputs of the block of fractions R i , the outputs of the ninth valve block are the ninth outputs of the fractional product block Ri, the outputs of the tenth valve block are the tenth outputs of the fractional product block R i , the output of the second code comparison scheme is the eleventh output of the fraction product block R i , moreover, the block of products of the coefficients A i contains the eighth switch, the second, third, fourth and fifth register-latches, the fifth-tenth adders of the elements of the Galois field, the eighteenth to twenty-fifth multipliers of the elements of the Galois field, the first inputs of the eighth switch being the first inputs of the block of products of coefficients A i , the second inputs of the eighth switch are the second inputs of the block of products of the coefficients A i , the third input of the eighth switch is the third input of the block of products of coefficients A i , the second inputs of the second, third, fourth and fifth register-latches are the bits of the fourth inputs of the block of products of the coefficients A i , the outputs of the eighth switch are connected to the first inputs of the second, third, fourth and fifth register-latches, the outputs of the second register-latch are connected to the first inputs of the fifth, sixth and eighth adders of Galois field elements, the outputs of the third register-latch are connected to the second inputs of the fifth adder of elements the Galois field and the first inputs of the seventh and ninth adders of the Galois field elements, the outputs of the fourth register-latch are connected to the first inputs of the tenth adder of the Galois field elements and the second inputs of the sixth and of the fifth adder of Galois field elements, the outputs of the fifth register-latch are connected to the second inputs of the eighth, ninth and tenth adders of Galois field elements, the outputs of the fifth adder of Galois field elements are connected to the first inputs of the eighteenth, twenty third and twenty-fourth multipliers of Galois field elements and are the ninth outputs block of products of coefficients A i , the outputs of the sixth adder of the elements of the Galois field are connected to the first inputs of the nineteenth and twenty-second multipliers of the elements of the Galois field, the second inputs of the twenty-fourth multiplier of the elements of the Galois field and are the tenth outputs of the block of the product of coefficients A i , the outputs of the seventh adder of the elements of the Galois field are connected to the first inputs of the twentieth and twenty-first multipliers of elements of the Galois field, the third inputs of the twenty-fourth multiplier of elements of the Galois field are the eleventh outputs of the block of products A i , the outputs of the eighth adder of Galois field elements are connected to the second inputs of the twentieth, twenty second and twenty third Galois field multipliers, the outputs of the ninth adder of Galois field elements are connected to the second inputs of the nineteenth and twenty first Galois field multipliers and the third inputs of the twenty third Galois field multiplier , the outputs of the tenth adder of Galois field elements are connected to the third inputs of the twenty-first and twenty-second multipliers of Galois field elements and the second the inputs of the eighteenth multiplier of the elements of the Galois field, the outputs of the eighteenth multiplier of the elements of the Galois field are connected to the third inputs of the twenty-fifth multiplier of the elements of the Galois field and are the first outputs of the block of products of the coefficients A i , the outputs of the nineteenth Galois field element multiplier are connected to the second inputs of the twenty-fifth Galois field element multiplier and are the second outputs of the product block of coefficients A i , the outputs of the twentieth multiplier of Galois field elements are connected to the first inputs of the twenty-fifth multiplier of Galois field elements and are the third outputs of the block of products of coefficients A i , the outputs of the twenty-first multiplier of Galois field elements are the fourth outputs of the block of products of the coefficients A i , the outputs of the twenty-second multiplier of the Galois field elements are the fifth outputs of the block of products of the coefficients A i , the outputs of the twenty-third multiplier of the Galois field elements are the sixth outputs of the block of products of the coefficients A i , the outputs of the twenty-fourth multiplier of the elements of the Galois field are the seventh outputs of the block of products of the coefficients A i , the outputs of the twenty-fifth multiplier of Galois field elements are the eighth outputs of the block of products of the coefficients A i .
RU2013145270/08A 2013-10-10 2013-10-10 Reed-solomon code decoder RU2541869C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2013145270/08A RU2541869C1 (en) 2013-10-10 2013-10-10 Reed-solomon code decoder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2013145270/08A RU2541869C1 (en) 2013-10-10 2013-10-10 Reed-solomon code decoder

Publications (1)

Publication Number Publication Date
RU2541869C1 true RU2541869C1 (en) 2015-02-20

Family

ID=53288814

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2013145270/08A RU2541869C1 (en) 2013-10-10 2013-10-10 Reed-solomon code decoder

Country Status (1)

Country Link
RU (1) RU2541869C1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2610684C1 (en) * 2015-10-14 2017-02-14 Федеральное государственное образовательное бюджетное учреждение высшего профессионального образования "Санкт-Петербургский государственный университет телекоммуникаций им. проф. М.А. Бонч-Бруевича" Device for majority decoding of reed-solomon code on k-cell sections of code combination with threshold of determining uncorrected error
RU2613760C2 (en) * 2015-06-04 2017-03-21 Федеральное государственное образовательное бюджетное учреждение высшего профессионального образования "Санкт-Петербургский государственный университет телекоммуникации им. проф. М.А. Бонч-Бруевича" Device for majority decoding reed-solomon code in k-element sections of code combination

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SU1309317A1 (en) * 1985-12-12 1987-05-07 Предприятие П/Я В-2438 Device for decoding reed-solomon codes
US6634007B1 (en) * 1999-11-08 2003-10-14 Codevector Technology Algebraic soft decoding of reed-solomon codes
RU2314639C1 (en) * 2006-04-03 2008-01-10 Государственное образовательное учреждение высшего профессионального образования "Курский государственный технический университет" Device for decoding reed-solomon codes
RU2441318C1 (en) * 2010-08-17 2012-01-27 Государственное образовательное учреждение высшего профессионального образования "Юго-Западный государственный университет" (ЮЗГУ) Device to decode reed-solomon codes

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SU1309317A1 (en) * 1985-12-12 1987-05-07 Предприятие П/Я В-2438 Device for decoding reed-solomon codes
US6634007B1 (en) * 1999-11-08 2003-10-14 Codevector Technology Algebraic soft decoding of reed-solomon codes
RU2314639C1 (en) * 2006-04-03 2008-01-10 Государственное образовательное учреждение высшего профессионального образования "Курский государственный технический университет" Device for decoding reed-solomon codes
RU2441318C1 (en) * 2010-08-17 2012-01-27 Государственное образовательное учреждение высшего профессионального образования "Юго-Западный государственный университет" (ЮЗГУ) Device to decode reed-solomon codes

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2613760C2 (en) * 2015-06-04 2017-03-21 Федеральное государственное образовательное бюджетное учреждение высшего профессионального образования "Санкт-Петербургский государственный университет телекоммуникации им. проф. М.А. Бонч-Бруевича" Device for majority decoding reed-solomon code in k-element sections of code combination
RU2610684C1 (en) * 2015-10-14 2017-02-14 Федеральное государственное образовательное бюджетное учреждение высшего профессионального образования "Санкт-Петербургский государственный университет телекоммуникаций им. проф. М.А. Бонч-Бруевича" Device for majority decoding of reed-solomon code on k-cell sections of code combination with threshold of determining uncorrected error

Similar Documents

Publication Publication Date Title
US8327241B2 (en) Reduced processing in high-speed Reed-Solomon decoding
Hariri et al. Concurrent error detection in montgomery multiplication over binary extension fields
Garcia-Herrero et al. High-speed RS (255, 239) decoder based on LCC decoding
KR20030095249A (en) Reed-solomon decoder
US8977938B2 (en) Parallel decomposition of Reed Solomon umbrella codes
Ji et al. Fast parallel CRC algorithm and implementation on a configurable processor
EP1502356B1 (en) A method of soft-decision decoding of reed-solomon codes
RU2541869C1 (en) Reed-solomon code decoder
RU2441318C1 (en) Device to decode reed-solomon codes
US20050004966A1 (en) System and method for efficient VLSI architecture of finite fields
CN117014017A (en) CRC (cyclic redundancy check) calculation method for calculating remainder of polynomial division based on high-bit-width data
Hanumanthakari et al. Design and analysis of high reliable fault tolerance subsystem for micro computer systems
US20070011592A1 (en) Decoder architecture for Reed Solomon codes
Zhang High-speed VLSI architecture for low-complexity Chase soft-decision Reed-Solomon decoding
KR20010068349A (en) Standard basis gf multiplier with the generalized basis cell and the fixed basic cell and squarer architecture
EP2434650A1 (en) Reed-Solomon encoder with simplified Galois field multipliers
KR100893695B1 (en) Architecture of fast-serial finite field multiplier
Dash et al. VLSI implementation of Reed-Solomon encoder algorithm for communication systems
US10623018B2 (en) Method of arrangement of an algorithm in cyclic redundancy check
Ge et al. Design of low complexity GF (2 m) multiplier based on Karatsuba algorithm
US11750222B1 (en) Throughput efficient Reed-Solomon forward error correction decoding
Lin et al. A long block length BCH decoder for DVB-S2 application
Bharathwaj et al. An alternate approach to modular multiplication for finite fields [GF (2/sup m/)] using Itoh Tsujii algorithm
Tujillo-Olaya et al. Hardware architectures for elliptic curve cryptoprocessors using polynomial and Gaussian normal basis over GF (2 233)
Chang et al. Prime-Factor GFFT Architecture for Fast Frequency Domain Decoding of Cyclic Codes

Legal Events

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

Effective date: 20151011