RU2610684C1 - Device for majority decoding of reed-solomon code on k-cell sections of code combination with threshold of determining uncorrected error - Google Patents
Device for majority decoding of reed-solomon code on k-cell sections of code combination with threshold of determining uncorrected error Download PDFInfo
- Publication number
- RU2610684C1 RU2610684C1 RU2015144270A RU2015144270A RU2610684C1 RU 2610684 C1 RU2610684 C1 RU 2610684C1 RU 2015144270 A RU2015144270 A RU 2015144270A RU 2015144270 A RU2015144270 A RU 2015144270A RU 2610684 C1 RU2610684 C1 RU 2610684C1
- Authority
- RU
- Russia
- Prior art keywords
- block
- unit
- inputs
- output
- outputs
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/43—Majority logic or threshold decoding
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Error Detection And Correction (AREA)
Abstract
Description
Изобретение относится к системам телекоммуникаций и вычислительной технике, может найти применение в устройствах приема информации из канала передачи или воспроизведения информации с высоким уровнем ошибок.The invention relates to telecommunication systems and computer technology, can find application in devices for receiving information from a transmission channel or reproducing information with a high level of errors.
В настоящее время на практике применяются устройства декодирования кодов Рида-Соломона (PC-кодов), реализующие классические алгоритмы декодирования (Питерсона-Горенстейна-Цирлера, Берлекэмпа-Месси, Евклида), позволяющие исправлять не более t ошибочных символов в кодовом слове (t=(d-1)/2, 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 erroneous characters in the codeword (t = ( d-1) / 2, d - minimum code distance).
Известно устройство декодирования кодов Рида-Соломона, позволяющее исправить одну ошибку за границей гарантированно исправляемой кратности ошибок [см. 1. Патент на изобретение РФ №2441318, МПК Н03М 13/45, опубл. 27.01.2012], которое содержит буферную память данных, блок вычисления синдромов, процессор Галуа, блок дискретного преобразования Фурье, блок поиска позиций ошибок, блок вычисления значений ошибок, первый сумматор элементов поля Галуа, причем входы буферной памяти данных и входы блока вычисления синдромов являются входами символов данных устройства декодирования кодов Рида-Соломона, выходы буферной памяти данных соединены с первыми входами первого сумматора элементов поля Галуа, выходы блока вычисления синдромов соединены с первыми входами процессора Галуа, первые выходы процессора Галуа соединены с первыми входами блока дискретного преобразования Фурье, вторые выходы процессора Галуа соединены со вторыми входами блока дискретного преобразования Фурье, третьи выходы процессора Галуа соединены с третьими входами блока дискретного преобразования Фурье, четвертые выходы процессора Галуа соединены с четвертыми входами блока поиска позиций ошибок, пятые выходы процессора Галуа соединены с первыми входами блока вычисления значений ошибок, шестые выходы процессора Галуа соединены со вторыми входами блока вычисления значений ошибок, седьмые выходы процессора Галуа соединены с третьими входами блока вычисления значений ошибок, вторые выходы блока дискретного преобразования Фурье соединены с третьими входами процессора Галуа, третьи выходы блока дискретного преобразования Фурье соединены с четвертыми входами процессора Галуа, четвертые выходы блока дискретного преобразования Фурье соединены с первыми входами блока поиска позиций ошибок, пятый выход блока дискретного преобразования Фурье соединен со вторым входом блока поиска позиций ошибок, шестые выходы блока дискретного преобразования Фурье соединены с третьими входами блока поиска позиций ошибок, первые выходы блока поиска позиций ошибок соединены с пятыми входами процессора Галуа, вторые выходы блока поиска позиций ошибок соединены с шестыми входами процессора Галуа, третьи выходы блока поиска позиций ошибок соединены с седьмыми входами процессора Галуа, четвертые выходы блока поиска позиций ошибок соединены с восьмыми входами процессора Галуа, выходы блока вычисления значений ошибок соединены со вторыми входами первого сумматора элементов поля Галуа, выходы первого сумматора элементов поля Галуа являются выходами данных устройства декодирования кодов Рида-Соломона, отличающееся тем, что в устройство введен блок сортировки позиций символов, причем первые входы блока сортировки позиций символов являются входами оценок надежности символов данных устройства декодирования кодов Рида-Соломона, пятые выходы блока поиска позиций ошибок соединены со вторыми входами блока сортировки позиций символов, первые выходы блока дискретного преобразования Фурье соединены с третьими входами блока сортировки позиций символов, первые выходы блока сортировки позиций символов соединены со вторыми входами процессора Галуа, вторые выходы блока сортировки позиций символов соединены с пятыми входами блока поиска позиций ошибок.A device for decoding Reed-Solomon codes is known, which allows one error to be fixed abroad with a guaranteed correctable error rate [see 1. Patent for the invention of the Russian Federation No. 2441318, IPC Н03М 13/45, publ. 01/27/2012], which contains a data buffer memory, a syndrome calculation unit, a Galois processor, a discrete Fourier transform unit, an error position search 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 syndrome calculation unit are inputs of data symbols of the device for decoding Reed-Solomon codes, the outputs of the data buffer memory are connected to the first inputs of the first adder of the Galois field elements, the outputs of the syndrome calculation unit are connected to the first inputs and a Galois processor, the first outputs of the Galois processor are connected to the first inputs of the discrete Fourier transform block, the second outputs of the Galois processor are connected to the second inputs of the discrete Fourier transform block, the third outputs of the Galois processor are connected to the third inputs of the discrete Fourier transform block, the fourth outputs of the Galois processor are connected to the fourth inputs of the error position search unit, fifth outputs of the Galois processor are connected to the first inputs of the error value calculation unit, sixth outputs of the Galois processor 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 unit are connected to the fourth inputs of the Galois processor, fourth outputs the discrete Fourier transform block is connected to the first inputs of the error position search block, the fifth output of the discrete Fourier transform block 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 error position search unit are connected to the sixth inputs of the Galois processor, third outputs the error position search unit is connected to the seventh inputs of the Galois processor, the fourth outputs of the error position search unit are connected to the eighth inputs of the Galois processor, the outputs of the calculation unit are errors are connected to the second inputs of the first adder of Galois field elements, the outputs of the first adder of Galois field elements are data outputs of a Reed-Solomon code decoding device, characterized in that a unit for sorting character positions is introduced into the device, the first inputs of a block for sorting character positions are input ratings the reliability of the data symbols of the Reed-Solomon code decoding device, the fifth outputs of the error position search unit are connected to the second inputs of the character position sorting unit, the first Exit block discrete Fourier transform are connected to third inputs of the sorting unit of character positions, the first unit outputs the sort of character positions are connected to second inputs of the processor Galois second sorting unit outputs character positions are connected to fifth input search block error positions.
Однако данное устройство может исправлять ограниченное количество ошибок, находящихся за границей гарантированно исправляемой кратности. При этом до начала процесса декодирования необходимо принять всю кодовую комбинацию, что замедляет процесс обработки кодовой комбинации.However, this device can correct a limited number of errors that are outside the guaranteed correctable multiplicity. In this case, before the start of the decoding process, it is necessary to accept the entire code combination, which slows down the process of processing the code combination.
Известно также устройство декодирования систематических (n,k)-кодов Рида-Соломона [см. 2. Патент США №2013/0198583 А1, МПК Н03М 13/15, опубл. 01.08.2013], обеспечивающее быструю обработку кодовой комбинации, основанную на определении информационной комбинации на основе k-элементной последовательности принятой кодовой комбинации. Декодер, используемый в данном устройстве, содержит блок обработки входной последовательности, обеспечивающий выделение и распаковку k элементов кодовой комбинации из поступаемых на вход n элементов кодовой комбинации, где n - полная длина кодовой комбинации, а k - общее число информационных элементов в кодовой комбинации, блок вычисления информационных элементов, основанный на использовании быстрого преобразования Уолша-Адамара и быстрого преобразования Фурье, блок обработки информационных элементов и блок восстановления информационных элементов. При этом входы блока обработки входной последовательности являются входами данных устройства декодирования кодов Рида-Соломона, выходы блока обработки входной последовательности подключены к соответствующим входам блока вычисления k информационных элементов, а его выходы связаны с соответствующими входами блока обработки информационных элементов, выходы которого подключены к соответствующим входам блока восстановления информационных элементов, выходы которого являются выходами данных устройства декодирования кодов Рида-Соломона.A device for decoding systematic (n, k) Reed-Solomon codes is also known [see 2. US patent No. 2013/0198583 A1, IPC H03M 13/15, publ. 08/01/2013], which provides quick processing of a code combination based on determining an information combination based on the k-element sequence of the received code combination. The decoder used in this device contains an input sequence processing unit that extracts and unpacks k elements of the code combination from n elements of the code combination received at the input, where n is the total length of the code combination and k is the total number of information elements in the code combination, block computing information elements based on the use of the fast Walsh-Hadamard transform and fast Fourier transform, the processing unit for the processing of information elements and the recovery unit information s elements. In this case, the inputs of the input sequence processing unit are the data inputs of the Reed-Solomon code decoding device, the outputs of the input sequence processing unit are connected to the corresponding inputs of the information element computing unit k, and its outputs are connected to the corresponding inputs of the information element processing unit, the outputs of which are connected to the corresponding inputs a data element recovery unit whose outputs are data outputs of a Reed-Solomon code decoding device but.
Данное устройство наиболее близко по технической сущности к заявляемому изобретению и выбрано в качестве прототипа.This device is the closest in technical essence to the claimed invention and is selected as a prototype.
Однако в данном устройстве предусмотрена возможность исправления только стираний и не обеспечивается исправление ошибок.However, this device provides the ability to correct only erasures and does not provide error correction.
Техническим результатом изобретения является обеспечение возможности исправления ошибок, в том числе и за пределами гарантированно исправляемой кратности ошибок, при сохранении возможности быстрой обработки кодовой комбинации.The technical result of the invention is the ability to correct errors, including those outside the guaranteed correctable error rate, while maintaining the ability to quickly process the code combination.
Указанный технический результат достигается в устройстве мажоритарного декодирования кода Рида-Соломона по k-элементным участкам кодовой комбинации с порогом определения неисправляемой ошибки, содержащем блок обработки входной последовательности, блок вычисления информационных элементов, при этом входы блока обработки входной последовательности являются входами для приема кодовой комбинации длиной n, где n - полная длина кодовой комбинации используемого кода, а его выходы подключены к соответствующим входам блока вычисления информационных элементов, отличающемся тем, что блок вычисления информационных элементов выполнен с возможностью вычисления информационных комбинаций на основе двойственного базиса, и введены блок хранения вычисленных элементов, состоящий из n идентичных блоков памяти, и блок принятия решения, выполненный с возможностью принятия решения о наличии неисправляемой ошибки в принятой кодовой комбинации по методу сравнения с порогом и содержащий блок поиска максимального значения счетчиков, блок вывода результата декодирования, блок вычисления разности между значениями счетчиков и блок сравнения с порогом, при этом входы блока поиска максимального значения служат для подключения выходов соответствующих счетчиков из n блоков памяти блока хранения вычисленных элементов и соответствующего из вторых входов блока вычисления разности между значениями счетчиков, первый выход блока поиска максимального значения счетчиков связан со вторым входом блока вывода результата декодирования, второй выход блока поиска максимального значения счетчиков подключен к первому входу блока вычисления разности между значениями счетчиков, первые входы блока вывода результата декодирования служат для подключения соответствующих k-линейных выходов данных n блоков памяти блока хранения вычисленных элементов, выходы блока вычисления разности между значениями счетчиков подключены к первым входам блока сравнения с порогом, а второй вход блока сравнения с порогом является входом значения порога блока принятия решения, выход блока вывода результата декодирования является выходом результата декодирования блока принятия решения, а выход блока сравнения с порогом является выходом признака ошибки декодирования блока принятия решения, причем выходы блока вычисления информационных элементов подключены к входам соответствующего из n блоков памяти, входящих в блок хранения вычисленных элементов.The specified technical result is achieved in the device for majority decoding of the Reed-Solomon code over k-element sections of the code combination with a threshold for determining an uncorrectable error, containing an input sequence processing unit, an information element calculation unit, and the inputs of the input sequence processing unit are inputs for receiving a code combination of length n, where n is the total length of the code combination of the code used, and its outputs are connected to the corresponding inputs of the inform block elements, characterized in that the information element calculation unit is configured to calculate information combinations based on a dual basis, and a computed element storage unit consisting of n identical memory units and a decision unit configured to make a decision about the presence of an uncorrectable error are introduced in the adopted code combination by the method of comparison with a threshold and containing a block for finding the maximum value of counters, a block for outputting a decoding result, a calculation block the difference between the values of the counters and the comparison unit with a threshold, while the inputs of the maximum value search unit are used to connect the outputs of the corresponding counters from n memory blocks of the storage unit of the calculated elements and the corresponding from the second inputs of the calculation unit of the difference between the values of the counters, the first output of the search unit of the maximum counters connected to the second input of the decoding result output unit, the second output of the maximum counter value search unit is connected to the first input of the computation unit the difference between the values of the counters, the first inputs of the output unit of the decoding result are used to connect the corresponding k-linear outputs of data n blocks of memory of the storage unit of the calculated elements, the outputs of the calculation unit of the difference between the values of the counters are connected to the first inputs of the comparison unit with a threshold, and the second input of the comparison unit with a threshold is the input of the threshold value of the decision block, the output of the decoding result output block is the output of the decoding result of the decision block, and you od block comparison with the threshold is the output of error flag decision decoding unit, wherein the calculating unit outputs information elements are connected to respective inputs of n storage blocks within the storage unit is calculated elements.
При этом блок вычисления информационных элементов может содержать k блоков умножения на коэффициенты двойственного базиса, вычисленные по формуле . (см. 3. Когновицкий О.С. Двойственный базис и его применение в телекоммуникациях. СПб.: Линк, 2009, 423 с.), где k - количество информационных элементов в кодовой комбинации кода Рида-Соломона, εi - элементы левого степенного базиса поля Галуа, pk - коэффициенты порождающего полинома Р(х), Р'(х) - производная порождающего полинома Р(х), блок суммирования в поле Галуа и блок умножения на коэффициенты позиции k-элементной комбинации, вычисляемые по формуле , в которой i - положение первого элемента k-элементного участка относительно начала кодовой комбинации (см. 3. Когновицкий О.С. Двойственный базис и его применение в телекоммуникациях. СПб.: Линк, 2009, 423 с.), при этом k-линейные входы блоков умножения на коэффициенты двойственного базиса являются входами блока вычисления информационных элементов, а их k-линейные выходы связаны с соответствующими входами блока суммирования в поле Галуа, k-линейный выход которого связан с входом блока умножения на коэффициенты позиции k-элементной комбинации, выход которого является выходом блока вычисления информационных элементов.In this case, the information element calculation unit may contain k blocks of multiplication by the coefficients of the dual basis, calculated by the formula . (see 3. OS Kognovitsky. The dual basis and its application in telecommunications. St. Petersburg: Link, 2009, 423 pp.), where k is the number of information elements in the code combination of the Reed-Solomon code, ε i are elements of the left power basis of the Galois field, p k are the coefficients of the generating polynomial P (x), P '(x) is the derivative of the generating polynomial P (x), the summation block in the Galois field and the block of multiplication by the position coefficients of the k-element combination calculated by the formula , in which i is the position of the first element of the k-element segment relative to the beginning of the code combination (see 3. Kognovitsky OS, The dual basis and its application in telecommunications. St. Petersburg: Link, 2009, 423 pp.), with k- the linear inputs of the blocks of multiplication by the coefficients of the dual basis are the inputs of the block for computing information elements, and their k-linear outputs are connected to the corresponding inputs of the summing block in the Galois field, the k-linear output of which is connected to the input of the block of multiplication by the coefficients of the position of the k-element combination, output d which is the output calculation unit information items.
Каждый блок умножения на коэффициенты двойственного базиса может содержать узел памяти, хранящий вычисленные для используемого кода Рида-Соломона коэффициенты двойственного базиса и перемножитель k-элементной комбинации на вычисленные коэффициенты на основе двойственного базиса, при этом первые входы перемножителя k-элементной комбинации являются входами блока умножения на коэффициенты двойственного базиса, а выходы узла памяти соединены со вторыми входами перемножителя k-элементной комбинации.Each block of multiplication by the coefficients of the dual basis can contain a memory node that stores the coefficients of the dual basis calculated for the used Reed-Solomon code and the multiplier of the k-element combination by the calculated coefficients based on the dual basis, while the first inputs of the multiplier of the k-element combination are inputs of the multiplication block on the coefficients of the dual basis, and the outputs of the memory node are connected to the second inputs of the multiplier of the k-element combination.
А каждый блок умножения на коэффициенты позиции k-элементной комбинации также содержит узел памяти, хранящий вычисленные коэффициенты позиции k-элементной комбинации и перемножитель k-элементной комбинации на эти коэффициенты.And each block multiplying by the position coefficients of the k-element combination also contains a memory node that stores the calculated position coefficients of the k-element combination and a multiplier of the k-element combination by these coefficients.
Каждый блок памяти, входящий в блок хранения вычисленных элементов, может содержать управляющее устройство, регистр памяти, компаратор и счетчик, при этом входы управляющего устройства являются входами блока памяти, а выходы управляющего устройства связаны с соответствующими входами регистра памяти, счетчика и компаратора, причем выход регистра памяти связан с соответствующим входом компаратора и является выходом данных соответствующего блока памяти, первый выход компаратора подключен к соответствующему входу счетчика, выход которого является выходом блока памяти, а второй выход компаратора является выходом включения следующего блока памяти.Each memory block included in the block of storage of the calculated elements may contain a control device, a memory register, a comparator and a counter, while the inputs of the control device are the inputs of the memory block, and the outputs of the control device are associated with the corresponding inputs of the memory register, counter and comparator, and the output the memory register is connected with the corresponding input of the comparator and is the data output of the corresponding memory block, the first output of the comparator is connected to the corresponding input of the counter, the output of which It is the output of the storage unit, and the second comparator output is an output enable the next memory block.
Введенные отличия изменяют механизм вычисления информационных элементов и принцип обработки вычисленных информационных элементов.The introduced differences change the mechanism for calculating information elements and the principle of processing the calculated information elements.
В качестве метода вычисления используются не быстрые преобразования Уолша-Адамара и Фурье, а метод на основе применения двойственного базиса поля Галуа, который реализуется упомянутым построением блока вычисления информационных элементов и блока хранения вычисленных элементов (подробнее смотри приложение).As a calculation method, not fast Walsh-Hadamard and Fourier transforms are used, but a method based on the use of the dual basis of the Galois field, which is implemented by the aforementioned construction of a block for computing information elements and a block for storing calculated elements (for more details see the appendix).
В качестве принципа обработки вычисленных информационных элементов вводится механизм последовательного накопления результатов и подсчета их веса, после чего по мажоритарному принципу производится выбор результата с максимальным весом. В том случае, если существует один или более результатов, отличающихся от максимального на величину меньшую или равную порогу, декодер принимает решение о невозможности определения верной информационной комбинации и выдает сигнал «отказ от декодирования». Данный принцип обработки вычисленных информационных элементов реализуется с помощью упомянутого построения блока принятия решения.As a principle of processing the calculated information elements, a mechanism for sequential accumulation of results and calculation of their weight is introduced, after which, according to the majority principle, the result with the maximum weight is selected. In the event that there is one or more results that differ from the maximum by an amount less than or equal to the threshold, the decoder decides that it is impossible to determine the correct information combination and gives a signal “decoding rejection”. This principle of processing the calculated information elements is implemented using the aforementioned construction of the decision block.
Таким образом, предлагаемое устройство отличается от устройства декодирования прототипа другим методом вычисления информационных элементов и другим методом обработки результата, что позволяет обеспечить исправление ошибок, в том числе и за пределами гарантированно исправляемой кратности ошибок, при сохранении возможности быстрой обработки кодовой комбинации.Thus, the proposed device differs from the decoding device of the prototype by another method of computing information elements and a different method of processing the result, which allows for error correction, including outside the guaranteed correctable error rate, while maintaining the ability to quickly process the code combination.
Предлагаемое устройство поясняется чертежами, где на фиг. 1 приведена структурная схема устройства мажоритарного декодирования кода Рида-Соломона по k-элементным участкам кодовой комбинации, на фиг. 2 показана структура блока вычисления информационных элементов, на фиг. 3 приведена структура блока хранения вычисленных элементов, на фиг. 4 - схема блока памяти, входящего в блок хранения вычисленных элементов, на фиг. 5 - структура блока принятия решения, а на фиг. 6 - алгоритм работы устройства.The proposed device is illustrated by drawings, where in FIG. 1 is a structural diagram of a device for majority decoding of a Reed-Solomon code over k-element sections of a code combination; FIG. 2 shows the structure of the information element calculation unit; FIG. 3 shows the structure of the storage unit for calculated elements, FIG. 4 is a diagram of a memory unit included in the storage unit of calculated elements, in FIG. 5 shows the structure of a decision block, and FIG. 6 - algorithm of the device.
Согласно фиг. 1 предлагаемое устройство содержит блок 1 обработки входной последовательности, блок 2 вычисления информационных элементов, блок 3 хранения вычисленных элементов и блок 4 принятия решения, причем вход блока 1 обработки входной последовательности является входом символов кодовой комбинации устройства мажоритарного декодирования кода Рида-Соломона. Блок 1 обработки входной последовательности может быть построен в виде циклического регистра сдвига из n ячеек памяти, причем выходы первых k ячеек будут составлять k-линейный выход блока 1 обработки входной последовательности и соединены со входом блока 2 вычисления информационных элементов. k-линейный выход блока 2 вычисления информационных элементов соединен со входом блока 3 хранения вычисленных элементов, выходы которого соединены с соответствующими входами блока 4 принятия решения. Выходы блока 4 принятия решения являются выходами устройства мажоритарного декодирования кода Рида-Соломона.According to FIG. 1, the proposed device comprises an input
Блок 2 вычисления информационных элементов, показанный на фиг. 2, содержит k блоков 2.1.l-2.1.k умножения на коэффициенты двойственного базиса, блок 2.2 суммирования в поле Галуа, блок 2.3 умножения на коэффициенты позиции k-элементной комбинации, при этом k-линейные входы блоков 2.1.l-2.1.k умножения на коэффициенты двойственного базиса являются входами блока 2 вычисления информационных элементов, а их k-линейные выходы связаны с соответствующими входами блока 2.2 суммирования в поле Галуа, k-линейный выход которого связан с входом блока 2.3 умножения на коэффициенты позиции k-элементной комбинации, выход которого является выходом блока 2 вычисления информационных элементов.The information
Блок 3 хранения вычисленных элементов (фиг. 3) содержит n идентичных блоков памяти 3.1.l-3.1.n, входы которых являются входами блока 3 хранения вычисленных элементов.
Каждый блок 3.1.l-3.1.n памяти (фиг. 4), входящий в блок 3 хранения вычисленных элементов, содержит управляющее устройство 3.1.2, регистр 3.1.3 памяти, компаратор 3.1.4 и счетчик 3.1.5, при этом входы управляющего устройства 3.1.2 являются входами блока 3.1.1 памяти, а его соответствующие выходы связаны с входами регистра 3.1.3 памяти, счетчика 3.1.5, компаратора 3.1.4, причем соответствующие выходы регистра 3.1.3 памяти связаны с соответствующими входами компаратора 3.1.4 и являются выходами данных соответствующего блока памяти 3.1.1, а первый выход компаратора 3.1.4 соединен с соответствующим входом счетчика 3.1.5, выходы данных и выход счетчика 3.1.5 каждого блока памяти 3.1.1 являются выходами блока 3 хранения вычисленных элементов, а второй выход компаратора 3.1.4 является выходом включения следующего блока памяти.Each memory block 3.1.l-3.1.n (Fig. 4) included in the
Блок 4 принятия решения (фиг. 5) содержит блок 4.1 поиска максимального значения счетчиков, блок 4.2 вывода результата декодирования, блок 4.3 вычисления разности между значениями счетчиков и блок 4.4 сравнения с порогом. Соответствующие входы блока 4.1 поиска максимального значения счетчиков и соответствующие вторые входы блока 4.3 вычисления разности между значениями счетчиков служат для подключения выходов счетчиков 3.1.5 блоков памяти 3.1.l-3.1.n блока 3 хранения вычисленных элементов. Первый выход блока 4.1 поиска максимального значения счетчиков связан со вторым входом блока 4.2 вывода результата декодирования. Второй выход блока 4.1 поиска максимального значения счетчиков связан с первым входом блока 4.3 вычисления разности между значениями счетчиков. Выходы блока 4.3 вычисления разности между значениями счетчиков связаны с соответствующими первыми входами блока 4.4 сравнения с порогом, второй вход которого является входом значения порога. Первые входы блока 4.2 вывода результата декодирования служат для подключения соответствующих k-линейных выходов данных блоков памяти 3.1.l-3.1.n блока 3 хранения вычисленных элементов. Выход блока 4.2 вывода результата декодирования является выходом результата декодирования устройства 4 принятия решения. Выход блока 4.4 сравнения с порогом является выходом признака ошибки декодирования устройства 4 принятия решения.The decision block 4 (Fig. 5) contains a block 4.1 for finding the maximum value of the counters, a block 4.2 for outputting the decoding result, a block 4.3 for calculating the difference between the values of the counters, and a block 4.4 for comparing with a threshold. The corresponding inputs of the block 4.1 search for the maximum value of the counters and the corresponding second inputs of the block 4.3 calculate the difference between the values of the counters are used to connect the outputs of the counters 3.1.5 memory blocks 3.1.l-3.1.
Рассмотрим работу предлагаемого устройства с использованием фиг. 1, 2, 3, 4, 5.Consider the operation of the proposed device using FIG. 1, 2, 3, 4, 5.
Входная кодовая комбинация длины n поступает в блок 1 обработки входной последовательности, в котором по мере приема кодовой комбинации из нее выделяются k-элементные комбинации, которые поступают на вход блока 2 вычисления информационных элементов. В блоке 2 вычисления информационных элементов k-элементная комбинация передается на входы блоков 2.1.l-2.1.k умножения на коэффициенты двойственного базиса, хранящиеся в узлах памяти этих блоков, полученные результаты складываются в блоке 2.2 суммирования в поле Галуа, результат поступает на вход блока 2.3 умножения на коэффициенты позиции k-элементной комбинации, также хранящиеся в узле памяти этого блока. Полученные в результате k информационных элементов поступают на входы соответствующих блоков 3.1.l-3.1.n памяти блоков 3 хранения вычисленных элементов. При первом появлении сигналов на входе данных блоков 3.1.l-3.1.n памяти, при условии, что есть сигнал на их входах включения, управляющее устройство 3.1.2 передает данные с входа данных в регистр 3.1.3 памяти и увеличивает значение счетчика 3.1.5 на единицу. При повторном появлении сигналов на входе данных управляющее устройство 3.1.2 передает их на второй вход компаратора 3.1.4, где эти данные сравниваются с содержимым регистра 3.1.3 памяти. В случае равенства значение счетчика 3.1.5 увеличивается на единицу по сигналу с первого выхода компаратора 3.1.4. В случае неравенства подается сигнал со второго выхода компаратора 3.1.4 на выход включения следующего блока памяти. Выходы регистра 3.1.3 памяти являются выходами данных блока памяти. Они подключены к соответствующим входам блока 4.2 вывода результата декодирования в блоке 4 принятия решения. Выходы счетчиков 3.1.5 блоков 3.1.l-3.1.n памяти поступают на соответствующие входы блока 4.1 поиска максимального значения счетчиков в блоке 4 принятия решения и соответствующие входы блока 4.3 сравнения. Путем последовательного сравнения в блоке 4.1 поиска максимального значения счетчиков выбирается вход от счетчика с максимальным значением. Номер этого входа передается с первого выхода блока 4.1 поиска максимального значения счетчиков на второй вход блока 4.2 вывода результата декодирования, а значение со входа счетчика с максимальным значением передается на первый вход блока 4.3 вычисления разности между значениями счетчиков. Соответствующий номеру входа с максимальным значением счетчика вход блока 4.2 вывода результата коммутируется с выходом информационных элементов. При этом, если это максимальное значение счетчика равно (n/2+1) или более, результат считается гарантированно верным. Согласно полученному на входе 1 блока 4.3 вычисления разности между значениями счетчиков значению счетчика с максимальным значением в блоке 4.3 сравнения проводится нахождение разности значений между счетчиком с максимальным значением и всеми остальными счетчиками. Вычисленные разности передаются с выхода блока 4.3 вычисления разности между значениями счетчиков на первые входы блока 4.4 сравнения с порогом, где производится их сравнение с поданным на вход 2 блока 4.4 сравнения с порогом значения порога. В случае обнаружения разности со значением, меньшим либо равным порогу, на выход блока 4.4 сравнения с порогом выводится сигнал об ошибке декодирования.The input code combination of length n enters the input
Рассмотрим пример выполнения блоков предлагаемого устройства.Consider an example of blocks of the proposed device.
Блок 1 обработки входной последовательности может быть построен в виде циклического регистра сдвига из n ячеек памяти, например, на ПЛИС или логических ИМС типа К155ИР1 (SN7495) (см. 4. Интегральные микросхемы: Справочник / Под ред. Б.Ф. Тарабрина. - М.: Радио и связь, 1983).The input
Блок 2.1 умножения на коэффициенты двойственного базиса символов может быть построен на ПЛИС или логических ИМС типа К155ЛИ1 (SN7408) и К155ЛП5 (SN7486), а также микросхеме ППЗУ, например, типа 2716.Block 2.1 multiplication by the coefficients of the dual basis of characters can be built on FPGAs or logical ICs like K155LI1 (SN7408) and K155LP5 (SN7486), as well as an EPROM chip, for example, type 2716.
Блок 2.2 суммирования в поле Галуа может быть построен на ПЛИС или логических ИМС типа К155ЛП 5 (SN7486).Block 2.2 summation in the Galois field can be built on FPGAs or logic IC type K155LP 5 (SN7486).
Блок 2.3 умножения на коэффициенты позиции k-элементной комбинации может быть построен на ПЛИС или логических ИМС типа К155ЛИ1 (SN7408) и К155ЛП5 (SN7486), а также микросхеме ППЗУ, например, типа 2716.Block 2.3 of multiplication by the position coefficients of the k-element combination can be built on FPGAs or logical ICs of the type K155LI1 (SN7408) and K155LP5 (SN7486), as well as an EPROM chip, for example, type 2716.
В каждом блоке памяти 3.1 регистр 3.1.3 памяти может быть построен на ПЛИС или логических ИМС типа К155ИР1 (SN7495), компаратор 3.1.4 может быть построен на ПЛИС или логических ИМС типа К561ИП2 (МС14585А), счетчик 3.1.5 может быть построен на ПЛИС или логических ИМС типа К155ИЕ2 (SN7490).In each memory block 3.1, memory register 3.1.3 can be built on FPGAs or logical ICs of type K155IR1 (SN7495), comparator 3.1.4 can be built on FPGAs or logical ICs of type K561IP2 (MC14585A), counter 3.1.5 can be built on FPGA or logical IC type K155IE2 (SN7490).
В блоке 4 принятия решения блок 4.1 поиска максимального значения счетчиков может быть построен на цепочке цифровых компараторов, например, на логических ИМС типа К561ИП2 (МС 14585А) и ключах, например, на логических ИМС типа К176КТ1.In
Блок 4.2 вывода результата декодирования может быть построен на демультиплексоре, например, на логических ИМС типа К561КП2 и ключах, например, на логических ИМС типа К176КТ1.Block 4.2 output of the decoding result can be built on a demultiplexer, for example, on logical ICs of the type K561KP2 and keys, for example, on logical ICs of the type K176KT1.
Блок 4.3 вычисления разности между значениями счетчиков может быть построен на мультиплексоре, например, на логических ИМС типа К561КП2, демультиплексоре, например, на логических ИМС типа К561КП2, и цепочке вычитателей, например, на логических ИМС типа 74F385.Block 4.3 calculating the difference between the values of the counters can be built on a multiplexer, for example, on logical ICs of type K561KP2, a demultiplexer, for example, on logical ICs of type K561KP2, and a chain of subtractors, for example, on logical ICs of type 74F385.
Блок 4.4 сравнения с порогом может быть построен на цепочке цифровых компараторов, например, на логических ИМС типа К561ИП2 (МС 14585А).Block 4.4 comparison with the threshold can be built on a chain of digital comparators, for example, on logic IC type K561IP2 (MS 14585A).
Claims (5)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2015144270A RU2610684C1 (en) | 2015-10-14 | 2015-10-14 | Device for majority decoding of reed-solomon code on k-cell sections of code combination with threshold of determining uncorrected error |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2015144270A RU2610684C1 (en) | 2015-10-14 | 2015-10-14 | Device for majority decoding of reed-solomon code on k-cell sections of code combination with threshold of determining uncorrected error |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2610684C1 true RU2610684C1 (en) | 2017-02-14 |
Family
ID=58458527
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2015144270A RU2610684C1 (en) | 2015-10-14 | 2015-10-14 | Device for majority decoding of reed-solomon code on k-cell sections of code combination with threshold of determining uncorrected error |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2610684C1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SU415819A1 (en) * | 1971-12-31 | 1974-02-15 | ||
US6634007B1 (en) * | 1999-11-08 | 2003-10-14 | Codevector Technology | Algebraic soft decoding of reed-solomon codes |
US20130198583A1 (en) * | 2012-01-30 | 2013-08-01 | Broadcom Corporation | Systematic Rate-Independent Reed-Solomon Erasure Codes |
RU2541869C1 (en) * | 2013-10-10 | 2015-02-20 | Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Юго-Западный государственный университет" (ЮЗ ГУ) | Reed-solomon code decoder |
-
2015
- 2015-10-14 RU RU2015144270A patent/RU2610684C1/en not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SU415819A1 (en) * | 1971-12-31 | 1974-02-15 | ||
US6634007B1 (en) * | 1999-11-08 | 2003-10-14 | Codevector Technology | Algebraic soft decoding of reed-solomon codes |
US20130198583A1 (en) * | 2012-01-30 | 2013-08-01 | Broadcom Corporation | Systematic Rate-Independent Reed-Solomon Erasure Codes |
RU2541869C1 (en) * | 2013-10-10 | 2015-02-20 | Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Юго-Западный государственный университет" (ЮЗ ГУ) | Reed-solomon code decoder |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8812940B2 (en) | Programmable error correction capability for BCH codes | |
US9823960B2 (en) | Apparatus and method for parallel CRC units for variably-sized data frames | |
EP0034036A2 (en) | Encoders and decoders for cyclic block codes | |
US9471416B2 (en) | Partitioned error code computation | |
US20130254632A1 (en) | Transmission system, decoding device, memory controller, and memory system | |
KR100260415B1 (en) | High speed serial error position polynomual calculation circuit | |
US20230412196A1 (en) | Low-power block code forward error correction decoder | |
RU2314639C1 (en) | Device for decoding reed-solomon codes | |
US9337869B2 (en) | Encoding and syndrome computing co-design circuit for BCH code and method for deciding the same | |
RU2610684C1 (en) | Device for majority decoding of reed-solomon code on k-cell sections of code combination with threshold of determining uncorrected error | |
RU2613760C2 (en) | Device for majority decoding reed-solomon code in k-element sections of code combination | |
US8347169B1 (en) | System and method for encoding using common partial parity products | |
US8745476B1 (en) | Systems and methods for cyclic redundancy check implementation | |
KR101432909B1 (en) | HIGH-SPEED LOW-COMPELEXITY MODIFIED STEP-BY-STEP DECODING METHOD AND Circuit for parallel bch decoder | |
US9459836B2 (en) | Simplified inversionless berlekamp-massey algorithm for binary BCH code and circuit implementing therefor | |
KR101619049B1 (en) | Parallel BCH decoder | |
Mohammed et al. | FPGA implementation of 3 bits BCH error correcting codes | |
RU2428801C1 (en) | Device of code cycle synchronisation with soft decisions | |
US10623018B2 (en) | Method of arrangement of an algorithm in cyclic redundancy check | |
TWI523437B (en) | Encoding and syndrome computing co-design circuit for bch code and method for deciding the same | |
Zhang et al. | Low-power partial-parallel Chien search architecture with polynomial degree reduction | |
Prashanthi et al. | An advanced low complexity double error correction of an BCH decoder | |
JP3558026B2 (en) | Self orthogonal code decoding circuit and self orthogonal code decoding method | |
Şerban et al. | An implementation of BCH codes in a FPGA | |
JP3268926B2 (en) | Error correction circuit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20171015 |