RU2693190C1 - Method of diagnosing non-binary block codes - Google Patents
Method of diagnosing non-binary block codes Download PDFInfo
- Publication number
- RU2693190C1 RU2693190C1 RU2018124144A RU2018124144A RU2693190C1 RU 2693190 C1 RU2693190 C1 RU 2693190C1 RU 2018124144 A RU2018124144 A RU 2018124144A RU 2018124144 A RU2018124144 A RU 2018124144A RU 2693190 C1 RU2693190 C1 RU 2693190C1
- Authority
- RU
- Russia
- Prior art keywords
- polynomial
- polynomials
- code blocks
- blocks
- addition
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/60—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
- G06F7/72—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
- G06F7/724—Finite field arithmetic
-
- 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/134—Non-binary linear block codes not provided for otherwise
-
- 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/65—Purpose and implementation aspects
- H03M13/6508—Flexibility, adaptability, parametrability and configurability of the implementation
- H03M13/6516—Support of multiple code parameters, e.g. generalized Reed-Solomon decoder for a variety of generator polynomials or Galois fields
Abstract
Description
Способ диагностики недвоичных блоковых кодов относится к технике связи и может быть использован для определения неизвестной структуры кодера недвоичных блоковых систематических кодов, включая коды Рида-Соломона, и несистематических кодов на основе анализа принимаемой кодовой последовательности.A method for diagnosing non-binary block codes relates to communication technology and can be used to determine the unknown coder structure of non-binary block systematic codes, including Reed-Solomon codes, and non-systematic codes based on an analysis of the received code sequence.
Известны различные способы блокового кодирования и декодирования, используемые для исправления возникающих при передаче ошибок, и описанные, например, в книгах: Ипатов В.П., Орлов В.К., Самойлов И.М. Системы мобильной связи - М.: Горячая линия-Телеком, 2003; Морелос-Сарагоса Р. Искусство помехоустойчивого кодирования. Методы, алгоритмы, применение - М: Техносфера, 2006; Скляр Б. Цифровая связь. Теоретические основы и практическое применение - М: Изд. дом «Вильяме», 2003.There are various methods of block coding and decoding used to correct errors that occur during transmission, and described, for example, in books: V. Ipatov, V. Orlov, I. Samoilov. Mobile communication systems - M .: Hotline-Telecom, 2003; Morelos-Zaragoza R. The art of robust coding. Methods, algorithms, application - M: Technosphere, 2006; Sklyar B. Digital communication. Theoretical foundations and practical application - M: Ed. House "William", 2003.
В них описываются операции получения кодового блока из входной информационной последовательности символов путем осуществления операций свертки определенного количества информационных символов с полиномиальными генераторами (порождающими полиномами) и последовательной передачи подобных кодовых блоков. При этом для реализации несистематического кода группа последовательно идущих исходных информационных символов умножается на порождающий полином, представленный в виде вектора с двоичными элементами. Для реализации систематического кода исходная группа информационных символов сдвигается на определенное количество двоичных разрядов. Далее результат сдвига делится на порождающий полином и частное от деления складывается по модулю 2 со сдвинутой группой символов. После приема последовательность раскодируется одними из возможных методов, при декодировании весь принятый кодовый блок делится на порождающий полином, и результат деления используется для локализации и исправления ошибок.They describe the operations of obtaining a code block from the input information sequence of characters by performing convolution operations of a certain number of information symbols with polynomial generators (generating polynomials) and the sequential transmission of similar code blocks. At the same time, to implement a non-systematic code, the group of consecutive source information symbols is multiplied by the generator polynomial, represented as a vector with binary elements. To implement a systematic code, the original group of information symbols is shifted by a certain number of binary digits. Further, the result of the shift is divided into the generating polynomial and the quotient is added
Недостатком описанного способа является необходимость знания на приемной стороне правильного вида используемого порождающего полинома. Если он неизвестен, например, утерян или поврежден, то декодирование с исправлением ошибок невозможно и исправляющая способность кода не может быть реализована. Это приводит к снижению помехоустойчивости передачи информации.The disadvantage of the described method is the necessity of knowing on the receiving side the correct type of the generating polynomial used. If it is unknown, for example, lost or damaged, then error correction decoding is impossible and the correcting ability of the code cannot be implemented. This leads to a decrease in noise immunity of information transfer.
Наиболее близким к заявляемому является способ по патенту РФ №2631142 на «Способ диагностики циклических кодов» по заявке №2016107245, приоритет от 29.02.2016, зарегистрирован в государственном реестре изобретений 19.09.2017, МПК H04L 17/00, авторы Корнеева Н.Н., Полушин П.А., Никитин О.Р.The closest to the claimed is the method according to the patent of the Russian Federation No. 2631142 on "Method for diagnosing cyclic codes" on application No. 2016107245, priority from 02/29/2016, registered in the state register of inventions September 19, 2017, IPC
Способ-прототип предназначен для диагностики двоичных блоковых кодов. В способе-прототипе производится запоминание принятых N кодовых блоков, далее извлечение пар кодовых блоков, попарное сравнение и сложение блоков, запоминание вида полиномов и выбор максимального числа результатов, при этом операция попарного сравнения и сложения блоков состоит из последовательных операций сравнения полиномов, поразрядного сдвига полинома, сравнения результата со сдвинутым полиномом и поразрядного сложения по модулю 2.The prototype method is designed to diagnose binary block codes. In the prototype method, the received N code blocks are memorized, further extraction of pairs of code blocks, pairwise comparison and addition of blocks, memorization of the type of polynomials and selection of the maximum number of results, the pairwise comparison and addition of blocks operation consists of sequential polynomial comparison operations, bitwise shift of the polynomial , comparing the result with the shifted polynomial and
С помощью операций способа определяется общий полином для каждой пары анализируемых кодовых блоков и запоминается его вид. После рассмотрения всех кодовых блоков в качестве результата диагностики выбирается полином, запомненный в памяти максимальное число раз.Using the operations of the method, a common polynomial is determined for each pair of code blocks analyzed and its type is remembered. After considering all the code blocks, the polynomial, the maximum number of times stored in memory, is selected as the diagnostic result.
Основным недостатком прототипа является то, что в недвоичных кодах каждый символ представлен не единственным битом, а нескольким битами (m битами), и описывается не двоичным числом, а специальными коэффициентами - объектами конечной алгебры полей Галуа (см., например, упомянутые книги Б. Скляра или Р. Морелоса-Сарагосы). К этим коэффициентам неприменимы правила обычной двоичной Булевой алгебры, а операции сложения, умножения и т.д., хотя и базируются на логической обработке групп двоичных бит, составляющих каждый символ, но должны выполняться на основе специальных правил, вырабатываемых с использованием т.наз. примитивных полиномов. Таким образом, все операции прототипа, выполняемые на основе Булевой алгебры, непригодны для обработки недвоичных символов.The main disadvantage of the prototype is that in non-binary codes each character is represented not by a single bit, but by several bits (m bits), and is described not by a binary number, but by special coefficients — objects of a finite Galois field algebra (see, for example, the books mentioned B. Sklyara or R. Morelos-Zaragoza). The rules of ordinary binary Boolean algebra are not applicable to these coefficients, and the operations of addition, multiplication, etc., although they are based on the logical processing of groups of binary bits that make up each character, but must be performed on the basis of special rules generated using the so-called. primitive polynomials. Thus, all prototype operations performed on the basis of Boolean algebra are unsuitable for processing non-binary characters.
Кроме этого, когда для операции попарного сложения по модулю 2 выровнены старшие степени двоичных полиномов, то в способе-прототипе всегда старшие члены полиномов вычитаются и пропадают, и максимальная степень полиномов уменьшается. В случае недвоичных полиномов коэффициенты при старшем полиноме могут иметь не два допустимых значения (0 и 1), а гораздо больше возможных значений. Поэтому в общем случае непосредственное вычитание полиномов не может уменьшить максимальной степени полинома, и принцип, реализуемый в способе-прототипе, для недвоичных кодов реализован быть не может.In addition, when the higher degrees of binary polynomials are aligned for the operation of
Требуемый уровень помехоустойчивости передачи информации с использованием исправляющих способностей декодеров в отсутствие информации о кодере не обеспечивается, поскольку работоспособность декодеров нарушается.The required level of noise immunity of information transmission using the correcting capabilities of decoders in the absence of information about the encoder is not ensured, since the performance of decoders is impaired.
Задачей предлагаемого способа диагностики недвоичных блоковых кодов является определение структуры используемого недвоичного кодера на основе анализа принимаемых кодовых блоков для обеспечения работоспособности декодеров и повышения помехоустойчивости передачи информации.The objective of the proposed method for the diagnosis of non-binary block codes is to determine the structure of the used non-binary coder based on the analysis of the received code blocks to ensure the performance of decoders and improve the noise immunity of information transmission.
Поставленная задача решается тем, что в способ диагностики недвоичных блоковых кодов, включающий в себя запоминание N кодовых блоков, извлечение пар блоков, попарное сравнение и сложение блоков, поразрядный сдвиг полинома, запоминание вида полинома и выбор максимального числа результатов, вводят сравнение степеней полиномов, деление на коэффициенты при старшей степени полинома, определение равенства полиномов и сложение полиномов в поле Галуа, при этом сначала запоминают N кодовых блоков, затем извлекают пары кодовых блоков, после этого кодовые блоки попарно сравнивают и складывают, далее запоминают вид полученных в результате сравнения и сложения полиномов, после чего выбирают максимальное число полученных одинаковых результатов сравнения и сложения, причем при попарном сравнении и сложении кодовых блоков сравнивают максимальные степени членов выбранных полиномов, описывающих сравниваемые кодовые блоки, затем поразрядно сдвигают меньший полином, после чего делят все коэффициенты каждого полинома на коэффициент при его члене максимальной степени, далее сравнивают больший полином со сдвинутым меньшим полиномом, в случае их равенства вид меньшего полинома до сдвига запоминают, в случае их неравенства складывают в поле Галуа коэффициенты при членах с одинаковыми степенями полиномов и возвращаются к сравнению меньшего полинома и полученного результата сложения в поле Галуа.The problem is solved in that a method for diagnosing non-binary block codes, including storing N code blocks, extracting pairs of blocks, pairwise comparison and addition of blocks, a bitwise polynomial shift, remembering the type of polynomial and choosing the maximum number of results, introduces a comparison of the degrees of polynomials, division the coefficients at the highest degree of a polynomial, the definition of equality of polynomials and the addition of polynomials in the Galois field, while first remember N code blocks, then remove pairs of code blocks, then code blocks are compared and put in pairs, then the type of polynomials obtained as a result of comparison and addition is memorized, after which the maximum number of identical results of comparison and addition obtained is chosen, and when pairwise comparison and addition of code blocks, the maximum powers of the members of the selected polynomials describing the compared code blocks are compared, then shift the smaller polynomial bitwise, then divide all the coefficients of each polynomial by the coefficient of its member of the maximum degree, then I compare greater shifted polynomial by polynomial smaller, in case of equality of the polynomial to form a smaller shear stored, in case of inequality is folded in the Galois field coefficients of the terms of the same degrees of polynomials and to return smaller than the polynomial and the result of addition in the Galois field.
На чертежах представлены: на фиг. 1 - схематическая последовательность операций заявляемого способа; на фиг. 2 - пример структурной схемы устройства для реализации предлагаемого способа; на фиг. 3 - пример реализации регистров для запоминания символов кодового слова.The drawings show: in FIG. 1 is a schematic sequence of operations of the proposed method; in fig. 2 is an example of a block diagram of a device for implementing the proposed method; in fig. 3 shows an example of the implementation of registers for storing codeword symbols.
На фиг. 1 обозначены: 1 - запоминание N кодовых блоков; 2 - извлечение пар блоков; 3 - запоминание вида полиномов; 4 - выбор максимального числа результатов; 5 - сравнение степеней полиномов; 6 - поразрядный сдвиг полинома; 7 - деление на коэффициенты при старшей степени полинома; 8 - определение равенства полиномов; 9 - сложение полиномов в поле Галуа; 10 - попарное сложение и сравнение блоков.FIG. 1 are designated: 1 - storing of N code blocks; 2 - extraction of pairs of blocks; 3 - remembering the type of polynomials; 4 - selection of the maximum number of results; 5 - comparison of the degrees of polynomials; 6 - bitwise polynomial shift; 7 - division by coefficients at the highest degree of the polynomial; 8 - definition of equality of polynomials; 9 - addition of polynomials in the Galois field; 10 - pairwise addition and comparison of blocks.
На фиг. 2 представлены: блок сложения в поле Галуа 11; первый 12, второй 13, третий 14 и четвертый 15 коммутаторы; первый 16 и второй 17 блоки сравнения; первый 18 и второй 19 определители максимальной степени полинома; первый 20, второй 21, третий 22 и четвертый 23 регистры; вычитатель 24; блок управления 25; блок выделения максимальной суммы 26; сдвиговый регистр 27, первый 28 и второй 29 делители; первый 30 и второй 31 блоки памяти.FIG. 2 presents: a block of addition in the Galois
На фиг. 3 представлены: регистр 32 для запоминания символов кодового слова; двоичные ячейки 33 для запоминания битов, составляющих символы кодового слова.FIG. 3 presents: a
Операции предлагаемого способа осуществляются следующим образом. Во время операции 1 производится запоминание N пришедших кодовых блоков. При этом имеется возможность далее извлекать из памяти любые из запомненных кодовых блоков. Далее попарно сравниваются различные два кодовых блока из запомненных. При количестве N блоков возможны N(N-1)/2 различных сочетаний пар разных блоков. Эти блоки извлекаются из памяти попарно операцией 2 (последовательность извлечения значения не играет) и далее обрабатываются общей операцией 10 попарного сравнения и сложения блоков.The operation of the proposed method are as follows. During
Операция 10 попарного сложения и сравнения блоков состоит из нескольких операций. Как известно, каждый кодовый блок представляет собой последовательность из n символов, каждый символ состоит из m двоичных бит, где m - выбранное при кодировании целое число. Кодовый блок может быть описан в виде некоторого полинома, , где через X обозначается сдвиг по времени на длительность одного символа, через X2 сдвиг по времени на длительность двух символов, через X3 - трех символов, и т.д., при этом максимальная степень полинома на единицу меньше количества двоичных разрядов кодового блока. Коэффициенты a i при членах полинома различных степеней являются элементами поля Галуа, и действия над ними подчиняются правилам конечной алгебры (см., например, упомянутые книги Б. Скляра или Р. Морелоса-Сарагосы).
В операции 5 сравнения полиномов сравниваются максимальные степени при старших членах полиномов, описывающих два выбранных кодовых блока. При этом определяется, какой из них больше другого (максимальная степень которого блока больше) и на сколько разрядов. Сравниваемые два кодовых слова y1 и y2 можно описать в виде полиномов:In
где n и m - номера максимальных разрядов в первом и втором сравниваемых кодовых словах, содержащих единицу в двоичной записи кодового слова, считая от первого разряда; X обозначает задержку на один такт (на длительность одного символа); коэффициенты a i и bi являются элементами поля Галуа и могут принимать значения в интервале от нуля до 2m-1.where n and m are the numbers of maximum digits in the first and second compared code words containing one in the binary record of the code word, counting from the first digit; X denotes a delay per clock (for the duration of one character); the coefficients a i and b i are elements of the Galois field and can take values in the range from zero to 2 m -1.
Операцией 5 определяются степени n и m. Пусть больше окажется первый полином y1. В операции 6 поразрядного сдвига меньшего полинома производится сдвиг полинома y2 вверх на определенное количество разрядов. Количество разрядов, на которое производится сдвиг, равно разности их максимальных степеней, т.е. равно n-m. В результате сдвига получается полином Xn-m y2. Таким образом, если m>m, то такой сдвиг производится, если n=m, (хотя при этом полиномы различаются), то они не сдвигаются. После такого сдвига второй полином приобретает вид .
В операции 7 все коэффициенты при членах обоих полиномов меньших степеней делятся на коэффициенты при их старших степенях, т.е. у полинома y1 на a n, у полинома y2 на bm. После этого старшие члены обоих полиномов становятся одинаковыми и равными Xn.In
В следующей операции 8 определяется, не стали ли полиномы полностью равны после предыдущей операции 7. Если эти полиномы становятся точно равны между собой (равны все коэффициенты при членах всех степеней), т.е. одинаковы, то цикл обработки данной пары кодовых блоков прекращается, и на операцию 3 подается меньший полином до его сдвига. Если они остаются не равными один другому, то операцией 9 производится поразрядное сложение полиномов в поле Галуа по правилам конечной алгебры (сложение коэффициентов при членах с одинаковыми степенями). Согласно правилам конечной алгебры сложение полиномов равнозначно вычитанию коэффициентов при членах одинаковых степеней. Таким образом, после операции 9 старшие члены обоих полиномов исчезают, и результат сложения всегда имеет меньшую степень, чем складываемые полиномы.In the
После этого обработка возвращается к операции 5, где уже сравниваются другие полиномы. Один из них полином - результат произведенного операцией 9 сложения в поле Галуа (вычитания старших членов полиномов). Другой сравниваемый полином - меньший полином до его сдвига. Далее вновь повторяются описанные последующие операции. Таким образом, для выбранной пары исходных кодовых блоков в общем случае неоднократно повторяются операции 5-6-7-8-9. Вид анализируемых полиномов при каждом повторении изменяется. При каждом повторении обязательно уменьшаются сами полиномы, уменьшается и степень максимального полинома. Это происходит до тех пор, пока операция 8 не зафиксирует равенство анализируемых полиномов. После этого полученный до сдвига вид меньшего полинома запоминается операцией 3, и операция 10 в целом переходит к анализу следующей пары кодовых блоков.After this, the processing returns to
После каждого завершения в целом операции 10 (попарное сравнение и сложение блоков) в операции 3 (запоминание вида полиномов) производится запоминание результата операции 10. Если уже ранее при предыдущих выполнениях операции 10 был запомнен такой же результат (такой же полином), относящийся к другой паре сравниваемых кодовых блоков, то этот факт запоминается и увеличивает сумму, накопленную предыдущими результатами, относящимися к полиному этого полученного вида. Количество поступивших результатов каждого вида подсчитывается.After each completion of
Операции 10 попарного сравнения и сложений блоков осуществляется над всеми различающимися N блоками, которые запомнены в операции 1.
Число таких попарных обработок равно N(N-1)/2. Когда все эти попарные обработки завершены, то в результате выполнения операции 3 запомненными оказываются все обнаруженные виды общих полиномов у всех сочетаний полиномов в парах. После завершения всех N(N-1)/2 сравнений операция 4 выбора максимального числа результатов определяет наиболее часто запомненные результаты, т.е. полиномов какого вида больше запомнено. (Если, например, каждый факт запоминания, производится в форме прибавления единицы к уже имеющейся сумме в ячейке памяти, относящейся к полиному данного вида, то фактически, эта операция определяет, какому полиному из запомненных процедурой 3, соответствует наибольшая запомненная в памяти сумма.) Этот полином представляет собой набор коэффициентов при членах полинома различных степеней, определяющий тот порождающий полином, который используется в передатчике для кодирования анализируемого сигнала. Он выводится далее, как конечный результат процедуры диагностики.The number of such pairwise treatments is N (N-1) / 2. When all these pairings are completed, as a result of performing
Блоки устройства на фиг. 2., как примера реализации предлагаемого способа, работают следующим образом. На первый блок памяти 30 поступают принятые кодовые блоки в форме последовательностей символов. В нем запоминается N различных кодовых блоков. (Последовательность запомненных блоков значения не имеет, это могут быть либо подряд следующие блоки, либо расположенные другим образом.)The blocks of the device in FIG. 2., as an example of the implementation of the proposed method, work as follows. The
Из этого блока памяти извлекаются пары различных блоков, один из этих блоков подается на вход первого коммутатора 12, другой блок подается на вход второго коммутатора 13. Последовательность извлечения из памяти пар блоков значения не имеет, текущие номера извлекаемых блоков задаются блоком управления 25. В блоке памяти 30 занесено N кодовых блоков, значит, осуществляя N(N-1)/2 циклов, имеется возможность анализировать N(N-1)/2 различных пар блоков. В каждом цикле производится одинаковый набор действий.Different blocks are extracted from this memory block, one of these blocks is fed to the input of the
Цикл анализа очередной пары кодовых блоков состоит в следующем. В самом начале цикла первый 12 и второй 13 коммутаторы подключают первый и второй многоканальные выходы первого блока памяти 30 на многоканальные параллельные входы, соответственно, первого 20 и второго 21 регистров, где анализируемая в данный момент пара кодовых блоков записывается в форме последовательности символов, каждый из которых состоит из т бит.The analysis cycle of the next pair of code blocks is as follows. At the very beginning of the cycle, the first 12 and second 13 switches connect the first and second multichannel outputs of the
В первом блоке сравнения 16 сравнивается степени при старшем члене полинома каждого кодового блока (старшие степени) записанных в первом 20 и втором 21 регистрах. Выходной сигнал этого первого блока сравнения управляет третьим коммутатором 14.In the
Если старшие степени полиномов кодовых блоков, записанные в регистрах 20 и 21, не равны между собой, то первый блок сравнения 16 с помощью третьего коммутатора 14 подает кодовый блок с большей старшей степенью ко входу первого определителя максимальной степени 18 и к параллельному входу третьего регистра 22, а кодовый блок с меньшей старшей степенью подается коммутатором 14 ко входу второго определителя максимальной степени 19 и к параллельному входу четвертого регистра 23. Поступившие на регистры сигналы записываются в эти регистры. Полином, записанный в четвертом регистре 23, также перезаписывается в сдвиговый регистр 27.If the higher degrees of the polynomials of code blocks recorded in
Если же окажется, что старшие степени записанных в регистрах 20 и 21 полиномов равны между собой, то с помощью третьего коммутатора 14 на вход первого определителя максимальной степени полинома 18 подается сигнал с выхода первого регистра 20, а на вход второго определителя максимальной степени полинома 19 подается сигнал с выхода второго регистра 21.If it turns out that the highest powers written in
В определителях максимальной степени 18 и 19 определяются порядки полиномов, т.е. максимальные степени у X.The determinants of
Далее в вычитателе 24 находится арифметическая разность их порядков (разность максимальных степеней полиномов), и на основе выходного сигнала вычитателя в сдвиговом регистре 27 производится сдвиг всего записанного в четвертом регистре 23 полинома в сторону увеличения степени на полученную величину этой арифметической разности. Таким образом, после этого сдвига, порядки (максимальные степени) полиномов, записанных в третьем регистре 22 и в сдвиговом регистре 27 становятся одинаковыми.Next, in the
Далее в первом 28 делителе производится деление всех коэффициентов при членах первого полинома на коэффициент при старшей степени этого полинома, и во втором 29 делителе производится деление всех коэффициентов при членах второго полинома на коэффициент при старшей степени этого полинома. Эти полиномы подаются на второй блок сравнения 17 и на блок 11, где производится сложение коэффициентов при одинаковых степенях полиномов в поле Галуа по правилам конечной алгебры.Further, in the first 28 divisor, all coefficients are divided at the members of the first polynomial by the coefficient for the highest power of this polynomial, and in the second 29 divider, all coefficients are divided for the terms of the second polynomial by the coefficient for the highest power of this polynomial. These polynomials are fed to the
Во втором блоке сравнения 17 сравниваются полиномы, записанные в регистрах 22 и 28. Если они полностью равны между собой (т.е. одинаковы), то второй блок сравнения сообщает об этом блоку управления 25. После чего данный цикл заканчивается, блок управления открывает четвертый коммутатор 15 и сигнал с выхода четвертого регистра 23 подается на второй блок памяти 31. В этом втором блоке памяти каждому возможному виду полиномов соответствует своя ячейка памяти. Первоначально до начала процедуры диагностики все ячейки содержат нули. Когда в очередном цикле определен очередной полином, то в ячейку, ему соответствующую, прибавляется единица к той сумме, которая там уже была записана ранее.In the
Если второй блок сравнения 17 не зафиксировал равенства полиномов в третьем и четвертом регистрах, результат сложения в блоке 11 подается на другой вход первого коммутатора 12, а на другой вход второго коммутатора 13 подается полином, записанный в четвертом регистре 23. После этого на выходы обоих коммутаторов подключаются не сигналы с первого блока памяти 30, а вновь поступившие сигналы с их других входов. После этого вся последовательность действий повторяется. Работа коммутаторов, регистров и блоков памяти управляется блоком управления 25.If the
Когда перебраны все N(N-1)/2 сочетаний рассматриваемых кодовых блоков, во втором блоке памяти 31 в различные ячейки оказывается записанными разное количество единиц. После этого блок выделения максимальной суммы 26 определяет, в какой ячейке записано максимальное число. Полином, соответствующий этой ячейке, подается на выход, как конечный результат всей процедуры диагностики.When all N (N-1) / 2 combinations of the considered code blocks have been enumerated, in the
Регистр 32 на фиг. 3 состоит из n групп, в которых находятся последовательно расположенные m ячеек 33 для запоминания m бит, составляющих символ кодового слова. Регистры 20-23 допускают параллельный ввод и вывод информации по группам. Сдвиговый регистр 27 осуществляет сдвиг содержимого ячеек группами по m бит.
Рассмотрим операции предлагаемого способа подробнее. Как известно, (см. указанные выше книги) при несистематическом кодировании каждое i-тый кодовый блок может быть описан в виде произведения двух полиномов: yi(X)=mi(X)g(X), где g(X) - порождающий полином (полиномиальный генератор) используемого кодера, общий для всех кодовых слов; mi(Х) - часть i-го кодового слова, содержащая передаваемую в нем информацию. То есть, все кодовые блоки имеют как минимум один общий полином g(X). Максимальная степень полинома g(X) равна b. Степень полинома mj(X) зависит от передаваемой в данном блоке информации и может достигать максимальной величины, равной k.Consider the operation of the proposed method in more detail. As you know, with the non-systematic coding, each i-th code block can be described as a product of two polynomials (y i (X) = m i (X) g (X), where g (X) - generator polynomial (polynomial generator) of the used encoder, common to all code words; m i (X) is the part of the i-th code word containing the information transmitted in it. That is, all code blocks have at least one common polynomial g (X). The maximum degree of the polynomial g (X) is b. The degree of the polynomial m j (X) depends on the information transmitted in this block and can reach a maximum value equal to k.
При систематическом кодировании кодовый блок в кодере формируется по-другому. Для этого исходный двоичный информационный полином mi(Х) первоначально домножается на Xb, что соответствует сдвигу на b разрядов в сторону увеличения. В результате получается полином mi(Х)Xb с максимальной степенью, в общем случае равной n=k+b. Далее он делится на полиномиальный генератор g(X). Максимальная степень образующегося остатка ri(Х) равна b, т.е. равна количеству нулей в записи mi(X)Xb, начиная с первого разряда. После этого остаток ri(Х) складывается с полиномом, образуя передаваемый по каналу передачи кодовый блок yi(Х)=mi(Х)Xb+ri(Х). Таким образом, и в этом случае кодовый блок кратен полиному g(X), т.е. полиномиальный генератор является одним из множителей полинома yi(Х), и можно записать yi(X)=Mi(X)g(X). Именно этот факт используется в приемнике для вычисления синдромов ошибок и их исправления.With systematic coding, the code block in the encoder is formed differently. For this, the initial binary information polynomial m i (X) is initially multiplied by X b , which corresponds to a shift to b bits upwards. The result is a polynomial m i (X) X b with a maximum degree, in general, equal to n = k + b. Further, it is divided into the polynomial generator g (X). The maximum degree of the resulting residue r i (X) is equal to b, i.e. equal to the number of zeros in the record m i (X) X b , starting with the first digit. After that, the remainder r i (X) is added to the polynomial, forming the code block transmitted by the transmission channel y i (X) = m i (X) X b + r i (X). Thus, in this case, too, the code block is a multiple of the polynomial g (X), i.e. the polynomial generator is one of the factors of the polynomial y i (X), and you can write y i (X) = Mi (X) g (X). It is this fact that is used in the receiver to calculate error syndromes and correct them.
Если попарно сравнивать различные кодовые блоки, то хотя наборы множителей, на которые разлагаются их полиномы, и будут различаться, но множитель g(X) будет присутствовать во всех кодовых блоках. Естественно, иногда могут появляться одинаковые множители и в информационной части Mi(Х) разных кодовых слов.If we compare pairs of different code blocks in pairs, although the sets of factors into which their polynomials can be expanded will differ, the factor g (X) will be present in all code blocks. Naturally, the same factors may sometimes appear in the information part M i (X) of different code words.
Обозначим одинаковые множители в информационной части двух сравниваемых кодовых блоков через MC(Х), а различающиеся части через Md1(Х) и Md2(X). В другой паре кодовых слов часть MC(Х) будет в общем случае отличаться от общей части в первой паре, в третьей паре отличаться от первых двух, и т.д. Таким образом, если сравнивать достаточно большое количество пар, то, несмотря на то, что в каждой паре по отдельности кроме полинома g(X) могут быть общими и другие полиномы-множители, но во всей совокупности анализируемых кодовых блоков общим множителем будет только искомый порождающий полиномиальный генератор g(X).Denote the same factors in the information part of the two compared code blocks by M C (X), and the different parts by M d1 (X) and M d2 (X). In another pair of code words, the part M C (X) will generally differ from the common part in the first pair, in the third pair differ from the first two, and so on. Thus, if we compare a sufficiently large number of pairs, despite the fact that in each pair, apart from the polynomial g (X), there may be common polynomials and other polynomials, but in the totality of the code blocks being analyzed, only the sought generator will be the common factor polynomial generator g (x).
В соответствии с этим операции на фиг. 1 производят следующие действия. В операции 1 запоминается N поступивших на приемник кодовых блоков. Количество N должно быть достаточно большим, например, значительно большим, чем общее число n символов в кодовом блоке.Accordingly, the operations in FIG. 1 perform the following actions. In
Поскольку информационные части разных блоков в подавляющем большинстве случаев различаются, то и появление одинаковых множителей в информационной части также маловероятно, гораздо вероятнее, что общая часть будет состоять только из полиномиального генератора. Большое количество N необходимо, чтобы вероятность появления при анализе именно искомого порождающего полинома была значительно больше, чем других результатов анализа. При дальнейшем увеличении N эта вероятность увеличивается, что дает возможность уменьшить ошибку диагностики до требуемых уровней.Since the information parts of different blocks in the vast majority of cases are different, then the appearance of identical factors in the information part is also unlikely, it is much more likely that the common part will consist only of a polynomial generator. A large number of N is necessary so that the probability of the appearance of the required generating polynomial in the analysis is significantly greater than other analysis results. With further increase in N, this probability increases, which makes it possible to reduce the diagnostic error to the required levels.
Появление ошибочных символов при передаче по каналу связи лишь приводит к появлению других результатов анализа и запоминанию других видов полиномов. Это негативное явление может быть ослаблено до приемлемого уровня увеличением N. Таким образом, операция 1 обеспечивает запоминание N кодовых слов и попарную их передачу для последующей обработки. Количество пар различающихся кодовых блоков при этом равно N(N-1)/2.The appearance of erroneous symbols during transmission over a communication channel only leads to the appearance of other analysis results and the memorization of other types of polynomials. This negative phenomenon can be attenuated to an acceptable level by an increase in N. Thus,
Операция 10 в целом производит сравнение и сложение подаваемых на нее кодовых блоков. Она состоит из нескольких последовательных операций. В операции 5 производится сравнение полиномов двух анализируемых кодовых блоков, и определяются максимальные степени полиномов обоих блоков. Пусть полином одного из кодовых блоков имеет вид , а второй полином равен , где a S÷a 0 и bS÷b0 - некоторые коэффициенты при членах полиномов, являющиеся элементами поля Галуа. Операцией 5 сравниваются величины старших степеней S и Т.
Предположим, оказалось, что S>T, т.е. полином y1 длиннее, чем полином y2. Тогда следующей операцией 6 поразрядного сдвига меньшего полинома производится домножение второго полинома на XS-T, т.е сдвиг в большую сторону на S-T степеней всех его членов. Если же второй полином больше первого, то тогда первый полином домножается на необходимую разностную величину, т.е. степени всех его членов увеличиваются на соответствующее разностное число. В том случае, если максимальные степени обоих полиномов равны, (т.е. S=T), то в операции 6 никакого сдвига степеней не производится. Таким образом, после операции 6 максимальные степени обоих полиномов станут совпадать.Suppose it turns out that S> T, i.e. polynomial y 1 is longer than polynomial y 2 . Then, by the
Следующей операцией 7 производится деление всех коэффициентов первого полинома на величину a S и деление всех коэффициентов второго полинома на величину bT. Предположим, что S>T, т.е. старшая степень второго полинома была меньше. Тогда полиномы после деления приобретают вид: , , где AS-1=a S-1/a S, AS-2=a S-2/AS, …, BS-1=bS-1/bS, BS-2=bS-2/bS и т.д. Коэффициенты при членах старших степеней становятся одинаковыми и равными единице.The
Далее в операции 8 определения равенства полиномов проверяется, не стали ли полностью равны y1(Х) и y2(Х), т.е. сравнивается величина большего полинома и результата сдвига меньшего полинома. Если в результате сдвига меньший полином становится полностью равным большему полиному, то общая операция 10 попарного сравнения и сложения блоков прекращается. Вид меньшего полинома передается к операции 3 и запоминается.Further, in
Если же сравниваемые полиномы не равны между собой, то далее производится операция 9. В ней выполняется в соответствие с правилами конечной алгебры сложение в поле Галуа коэффициентов при членах одинаковых степеней обоих полиномов. Операция сложения эквивалентна операции вычитания, и поскольку их члены максимальных степеней стали одинаковыми, то после осуществления этой операции максимальная степень разности уменьшается на единицу. Естественно, изменяются и значения коэффициентов при членах других степеней. После этого вновь осуществляется операция 5 сравнения полиномов, но уже с двумя другими полиномами, из которых один равен упомянутому полиному меньшей старшей степени до его поразрядного сдвига, а другой - результату сложения в поле Галуа операции 9. После нее вновь выполняются описанные операции, пока операцией 8 не будет установлено равенство обрабатываемых полиномов.If the compared polynomials are not equal to each other, then
Когда процедура, производимая общей операцией 10 сравнения и сложения полиномов, заканчивается, это приводит к тому, что в результате остаются общие для обоих анализируемых в ней кодовых блоков полиномы. Действительно, пусть сравниваемые кодовые блоки описываются полиномами: y1(Х)=Md1(Х)MC(Х)g(Х) и y2(X)=Md2(X)MC(X)g(X).When the procedure performed by the
Как указывалось известно, сложение и вычитание в поле Галуа являются эквивалентными операциями, т.к. приводят к одинаковым результатам. Поэтому разностный полином y3=y1-y2=(Md1+Md2)MCg=(Md1-Md2)MCg=M3MCg, будет содержать те же совпадающие общие множители, что и исходные полиномы до сложения, а изменяются только различающиеся в y1 и y2 части полиномов.As mentioned, addition and subtraction in the Galois field are equivalent operations, since lead to the same results. Therefore, the difference polynomial y 3 = y 1 −y 2 = (M d1 + M d2 ) M C g = (M d1 –M d2 ) M C g = M 3 M C g will contain the same common factors as the original polynomials before addition, and only the parts of the polynomials that differ in y 1 and y 2 change.
Поскольку перед сложением (вычитанием) старшая степень меньшего полинома был временно приравнена к старшей большего, то после этой операции старшая степень результата сложения всегда уменьшается на единицу по сравнению с порядком максимального из анализируемых полиномов. Если после нее результат оказывается не равен меньшему из текущих полиномов, то вновь повторяется выравнивание старших степеней двух анализируемых полиномов и их вычитание. Порядок различающейся части (М3) вновь уменьшается на единицу, и т.д. Таким образом, после проведения определенного числа повторяющихся операций 5-9 полином М3 становится равным единице. Число повторяющихся операций определяется конкретным видом полиномов Md1 и Md2 и равно порядку максимального их них.Since before the addition (subtraction) the highest degree of the smaller polynomial was temporarily equated to the highest higher, after this operation the highest degree of the result of addition is always reduced by one compared to the maximum order of the polynomials being analyzed. If after it the result is not equal to the smaller of the current polynomials, then the alignment of the higher powers of the two analyzed polynomials and their subtraction are repeated. The order of the differing part (M 3 ) is again reduced by one, and so on. Thus, after conducting a certain number of repetitive operations, 5–9 polynomial M 3 becomes equal to unity. The number of repetitive operations is determined by the specific type of polynomials M d1 and M d2 and is equal to the order of their maximum.
Продемонстрируем данную процедуру определения одинаковых делителей у пары кодовых блоков на конкретном примере. Как известно, коэффициенты в поле Галуа могут быть пронумерованы по-разному. В указанных выше книгах применяется нумерация в форме степеней базового элемента а. Для удобства конкретных вычислений также применяется нумерация в форме индексов при базовом элементе а, например, в вычислительной среде Matlab (где а 0=0, а 1=1).Let us demonstrate this procedure for determining identical divisors for a pair of code blocks using a specific example. As is known, the coefficients in the Galois field can be numbered differently. In the above books, numbering is applied in the form of the degrees of the base element a . For the convenience of specific calculations, index numbering is also used for the base element a , for example, in the Matlab computing environment (where a 0 = 0 and 1 = 1).
Пусть в рассмотренном примере конкретном примере применения предложенного способа длина кодовых блоков составляет n=7, символы содержат три бита (m=3), количество элементов поля Галуа равно восьми (а 0÷a 7). Общий полином (полиномиальный генератор) образован многочленом g(X)=a 1X+a 6. При этом исходные выражения для первого и второго в паре выбранных кодовых блоков пусть имеют вид, соответственно:Suppose that in the considered example of a specific example of the application of the proposed method, the length of the code blocks is n = 7, the characters contain three bits (m = 3), the number of elements of the Galois field is eight ( a 0 ÷ a 7 ). The common polynomial (polynomial generator) is formed by the polynomial g (X) = a 1 X + a 6 . At the same time, the initial expressions for the first and second in a pair of selected code blocks are given the form, respectively:
иand
где и - информационные (различающиеся) части первого и второго кодовых слов.Where and - informational (different) parts of the first and second code words.
Старшие степени полиномов пока одинаковы и операциии 5 и 6 оставляют их без изменений. В операции 7 нормируются оба кодовых блока таким образом, чтобы коэффициент при старшей степени стал равным единице, т.е. делятся все коэффициенты первого полинома на а 3 и второго полинома на а 5. Тогда (с учетом того, что а 1=1):Higher degrees of polynomials are still the same and
Полиномы в текущем состоянии не равны один другому, поэтому операция 8 оставляет из без изменений.The polynomials in the current state are not equal to one another, so
С помощью операции 9 находим разностное выражение:Using
После нормировки (деления на коэффициент а 2) оно станет равным:After normalization (dividing by the coefficient a 2 ) it becomes equal to:
В результате операций данного шага исчез член полинома первого кодового блока со старшей степенью, равной шести, количество членов в полиноме уменьшилось на один. После этого повторяется последовательность аналогичных операций, в результате уменьшается полином второго кодового блока. Для этого временно умножим полином y1 (1)(Х) на I и вычтем из полинома y2 (0)(Х):As a result of the operations of this step, the member of the polynomial of the first code block with the highest power of six disappeared, the number of members in the polynomial decreased by one. After this, a sequence of similar operations is repeated, as a result, the polynomial of the second code block is reduced. To do this, temporarily multiply the polynomial y 1 (1) (X) by I and subtract from the polynomial y 2 (0) (X):
После нормировки:After normalization:
Теперь и во втором кодовом блоке исчез член полинома со старшей степенью, равной шести, количество членов в полиноме также уменьшилось на один. Далее с полученными полиномами и проделываем аналогичные операции, в результате чего получаем еще более укороченные полиномы вида (без нормировки по коэффициенту при старшей степени):Now, in the second code block, the polynomial member with the highest power of six has disappeared, the number of terms in the polynomial has also decreased by one. Further, with the obtained polynomials, we perform similar operations, as a result of which we obtain even more shortened polynomials of the form (without normalization with respect to the coefficient of the highest power):
После нормировки:After normalization:
Старшая степень вновь уменьшилась на единицу, уменьшилось и количество членов в полиномах. Продолжая аналогичные действия, получаем:The senior degree again decreased by one, the number of terms in the polynomials also decreased. Continuing similar actions, we get:
После нормировки:After normalization:
После их вычитания степень полинома уменьшилась сразу на две единицы (что обусловлено получившимся сочетанием коэффициентов), т.е.: . После нормировки .After subtracting them, the degree of the polynomial decreased immediately by two units (due to the resulting combination of coefficients), i.e .: . After normalization .
В результате для формирования второго полинома при вычитании yR4 его нужно домножать не на X, а на X2, т.е.:As a result, to form the second polynomial when subtracting y R4, it must be multiplied not by X, but by X 2 , i.e .:
После нормировки:After normalization:
Далее получаем разность (повторно умножая полином , но теперь на величину X): . Проводя нормировку, получаем выражение . Операцией 8 определяется, что полиномы стали равны. Полином стал равным оставшемуся первому полиному , т.е. выражение для общего полинома g(X) выводится к операции 3 и запоминается.Next, we obtain the difference (repeatedly multiplying the polynomial , but now on the value of X): . By normalizing, we get the expression .
После анализа всех отобранных пар блоков операцией 4 выводится тот полином, который был заполнен наибольшее число раз. Поскольку полиномиальный генератор присутствует во всех кодовых блоках, то он будет встречаться максимальное число раз и выведется, как результат диагностической процедуры. Информационные части разных блоков различаются, и появление одинаковых множителей в информационной части маловероятно, гораздо вероятнее, что общая часть будет состоять только из порождающего полинома.After analyzing all the selected pairs of blocks by
Вероятность появления в каждом цикле анализа только порождающего полинома g(X) гораздо выше, и именно он будет определен максимальное число раз, а все другие результаты, появляющиеся случайно, будут зафиксированы меньшее число раз. Поэтому операция 4 определит именно полином g(X), являющийся искомым результатом диагностики. Для каждой пары кодовых слов производится постепенное циклическое уменьшение порядка соответствующих полиномов до тех пор, пока в паре не останутся только общий полином для каждой пары. Если максимальная степень различающихся частей равна k, то в общем случае общий полином будет получен максимум за к повторений описанного набора операций.The probability of occurrence in each analysis cycle of only the generating polynomial g (X) is much higher, and it will be determined the maximum number of times, and all other results appearing randomly will be recorded fewer times. Therefore,
Таким образом, заявляемый способ позволяет определять структуру используемого кодера без предварительной информации о ней и обеспечивать эффективную работу декодера по исправлению ошибок, тем самым повышая помехоустойчивость передачи информации.Thus, the inventive method allows you to determine the structure of the used encoder without prior information about it and to ensure the effective operation of the decoder for error correction, thereby increasing the noise immunity of information transmission.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2018124144A RU2693190C1 (en) | 2018-07-02 | 2018-07-02 | Method of diagnosing non-binary block codes |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2018124144A RU2693190C1 (en) | 2018-07-02 | 2018-07-02 | Method of diagnosing non-binary block codes |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2693190C1 true RU2693190C1 (en) | 2019-07-01 |
Family
ID=67252197
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2018124144A RU2693190C1 (en) | 2018-07-02 | 2018-07-02 | Method of diagnosing non-binary block codes |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2693190C1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2761903C1 (en) * | 2021-01-28 | 2021-12-13 | федеральное государственное казенное военное образовательное учреждение высшего образования "Краснодарское высшее военное орденов Жукова и Октябрьской Революции Краснознаменное училище имени генерала армии С.М. Штеменко" Министерства обороны Российской Федерации | Method for two-dimensional interference-resistant information encoding in spatial parallel radio channels of robotic complexes |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009171540A (en) * | 2007-12-21 | 2009-07-30 | Sony Corp | Transmission apparatus and method, reception device and method, and program |
RU2616180C1 (en) * | 2015-11-30 | 2017-04-12 | Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Владимирский государственный университет имени Александра Григорьевича и Николая Григорьевича Столетовых" (ВлГУ) | Method for diagnosing convolutional codes |
US20170170849A1 (en) * | 2015-12-14 | 2017-06-15 | International Business Machines Corporation | Post-decoding error check with diagnostics for product codes |
RU2631142C2 (en) * | 2016-02-29 | 2017-09-19 | Федеральное государственное бюджетное образовательное учреждение высшего образования "Владимирский Государственный Университет имени Александра Григорьевича и Николая Григорьевича Столетовых" (ВлГУ) | Method of diagnosing cyclic codes |
US20180138926A1 (en) * | 2015-07-31 | 2018-05-17 | Fujian Landi Commercial Equipment Co., Ltd. | Rs error correction decoding method |
-
2018
- 2018-07-02 RU RU2018124144A patent/RU2693190C1/en not_active IP Right Cessation
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009171540A (en) * | 2007-12-21 | 2009-07-30 | Sony Corp | Transmission apparatus and method, reception device and method, and program |
US20180138926A1 (en) * | 2015-07-31 | 2018-05-17 | Fujian Landi Commercial Equipment Co., Ltd. | Rs error correction decoding method |
RU2616180C1 (en) * | 2015-11-30 | 2017-04-12 | Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Владимирский государственный университет имени Александра Григорьевича и Николая Григорьевича Столетовых" (ВлГУ) | Method for diagnosing convolutional codes |
US20170170849A1 (en) * | 2015-12-14 | 2017-06-15 | International Business Machines Corporation | Post-decoding error check with diagnostics for product codes |
RU2631142C2 (en) * | 2016-02-29 | 2017-09-19 | Федеральное государственное бюджетное образовательное учреждение высшего образования "Владимирский Государственный Университет имени Александра Григорьевича и Николая Григорьевича Столетовых" (ВлГУ) | Method of diagnosing cyclic codes |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2761903C1 (en) * | 2021-01-28 | 2021-12-13 | федеральное государственное казенное военное образовательное учреждение высшего образования "Краснодарское высшее военное орденов Жукова и Октябрьской Революции Краснознаменное училище имени генерала армии С.М. Штеменко" Министерства обороны Российской Федерации | Method for two-dimensional interference-resistant information encoding in spatial parallel radio channels of robotic complexes |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Massey | Threshold decoding | |
US4928280A (en) | Fast processor for multi-bit error correction codes | |
US4649541A (en) | Reed-Solomon decoder | |
US4873688A (en) | High-speed real-time Reed-Solomon decoder | |
US5440570A (en) | Real-time binary BCH decoder | |
US5343481A (en) | BCH error-location polynomial decoder | |
US10763896B2 (en) | Construction method for (n,n(n-1),n-1) permutation group code based on coset partition and codebook generator thereof | |
JPS60204125A (en) | Decoding device | |
WO1995012850A1 (en) | Reed-solomon decoder | |
JPH07312560A (en) | Error correction coder, error correction decoder, data transmission system with error correction code and decoding method for error correction code | |
US20190108093A1 (en) | Encoding and decoding of permuted cyclic codes | |
US8103943B2 (en) | Symbol reconstruction in Reed-Solomon codes | |
WO2013189274A1 (en) | Circuit, encoder and method for parallel bch coding | |
US3571795A (en) | Random and burst error-correcting systems utilizing self-orthogonal convolution codes | |
RU2693190C1 (en) | Method of diagnosing non-binary block codes | |
KR100322739B1 (en) | Finite Field Computation Method and Its Apparatus | |
WO2009146517A1 (en) | Method of encoding and/or decoding multidimensional and a system comprising such method | |
EP1947796A2 (en) | Method and apparatus for dividing information bit string | |
US6735737B2 (en) | Error correction structures and methods | |
JP3245290B2 (en) | Decoding method and device | |
US4298981A (en) | Decoding shortened cyclic block codes | |
RU2631142C2 (en) | Method of diagnosing cyclic codes | |
KR102353983B1 (en) | How to arrange an algorithm in Cyclic Redundancy Check (CRC) | |
CN117254823B (en) | Parallel RS encoding method, device and system and computer storage medium | |
TWI523437B (en) | Encoding and syndrome computing co-design circuit for bch code and method for deciding the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20200703 |