RU2444127C1 - Method for soft-decision decoding systematic block codes - Google Patents

Method for soft-decision decoding systematic block codes Download PDF

Info

Publication number
RU2444127C1
RU2444127C1 RU2010135507/08A RU2010135507A RU2444127C1 RU 2444127 C1 RU2444127 C1 RU 2444127C1 RU 2010135507/08 A RU2010135507/08 A RU 2010135507/08A RU 2010135507 A RU2010135507 A RU 2010135507A RU 2444127 C1 RU2444127 C1 RU 2444127C1
Authority
RU
Russia
Prior art keywords
vector
code
matrix
bits
cluster
Prior art date
Application number
RU2010135507/08A
Other languages
Russian (ru)
Inventor
Анатолий Афанасьевич Гладких (RU)
Анатолий Афанасьевич Гладких
Original Assignee
Государственное образовательное учреждение высшего профессионального образования "Ульяновский государственный технический университет"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Государственное образовательное учреждение высшего профессионального образования "Ульяновский государственный технический университет" filed Critical Государственное образовательное учреждение высшего профессионального образования "Ульяновский государственный технический университет"
Priority to RU2010135507/08A priority Critical patent/RU2444127C1/en
Application granted granted Critical
Publication of RU2444127C1 publication Critical patent/RU2444127C1/en

Links

Landscapes

  • Error Detection And Correction (AREA)

Abstract

FIELD: information technology.
SUBSTANCE: for all resolved code combinations of a systematic (n,k)-code, based on f most significant bits thereof, the cluster number is determined, the value of f lying in the range 1<f≤k/2. Vector V is obtained and the accuracy of receiving the cluster number is estimated based on reliability gradations and the parity bit. In case of a positive solution, the (n-f,k-f)-code is then processed using ordered statistics by first creating a recourse vector Wyk by multiplying f bits by the first f rows of the code generating matrix G and temporary removal therefrom of cluster bits, after which vector Wyk is subtracted from vector V, for which cluster bits are also neglected, while assigning the least significant bit of the newly formed vector Vyr the lowest reliability gradation estimate. The remaining symbols arranged in descending order of their estimates. The error vector E for the shortened code is found using an equivalent code and after subtraction thereof, the decoder performs bitwise summation of vectors Wyk, Vyk and E, forming the transferred vector by repositioning the most significant bits of the cluster number, where is parity check of the cluster number is not performed, the decoder inverts the most unreliable bit from the checked bits.
EFFECT: high decoding speed and reliability of received information.
4 tbl

Description

Изобретение относится к технике связи и может использоваться при проектировании новых и модернизации существующих систем передачи дискретной информации. Заявленный способ может быть использован для декодирования помехоустойчивых систематических блоковых кодов, обеспечивая высокую скорость и достоверность восстановления информации.The invention relates to communication technology and can be used in the design of new and modernization of existing discrete information transmission systems. The claimed method can be used to decode noise-tolerant systematic block codes, providing high speed and reliability of information recovery.

Заявленное техническое решение расширяет арсенал применения помехоустойчивых систематических блоковых кодов.The claimed technical solution expands the arsenal of application of noise-tolerant systematic block codes.

Известны способы декодирования блоковых кодов (см. Дж.Кларк, мл., Дж Кейн. «Кодирование с исправлением ошибок в системах цифровой связи». М.: Радио и связь, 1987, с.96-128), в которых комбинации ошибок отыскиваются путем, отличным от процедуры умножения принятого кодового вектора на проверочную матрицу и получивших наименование неалгебраических алгоритмов.Known methods for decoding block codes (see J. Clark, Jr., J. Kane. "Coding with error correction in digital communication systems. M: Radio and communication, 1987, p.96-128), in which combinations of errors are found in a way different from the procedure for multiplying the received code vector by the verification matrix and received the name of non-algebraic algorithms.

Недостатком таких способов является сложность декодера, которая резко возрастает с ростом веса вектора ошибок и поэтому они оказываются бесполезными при исправлении более трех случайных ошибок. Другим недостатком является сложность отыскания ошибочных позиций в принятом кодовом векторе.The disadvantage of such methods is the complexity of the decoder, which increases sharply with increasing weight of the error vector and therefore they are useless when correcting more than three random errors. Another disadvantage is the difficulty of finding erroneous positions in the adopted code vector.

Известен также способ декодирования блоковых кодов со стираниями элементов (см. патент РФ 2327297), в котором пространство кодовых комбинаций разбивается на кластеры и при правильном определении номера кластера декодирование осуществляется в подмножестве комбинаций, принадлежащих выделенному кластеру с использованием метрики Евклида.There is also a method of decoding block codes with erasing elements (see RF patent 2327297), in which the space of code combinations is divided into clusters and, when the cluster number is correctly determined, decoding is performed in a subset of the combinations belonging to the selected cluster using the Euclidean metric.

Недостатком данного способа является слабая защищенность номера кластера, при искажении которого декодер осуществляет поиск решения в подмножестве комбинаций, отличном от истинного, что существенно увеличивает вероятность неправильного декодирования.The disadvantage of this method is the weak security of the cluster number, upon distortion of which the decoder searches for a solution in a subset of combinations other than true, which significantly increases the likelihood of incorrect decoding.

Наиболее близким по технической сущности к заявленному является способ мягкого декодирования систематических блоковых кодов с использованием упорядоченных статистик (см. Р.Морелос-Сарагоса. Искусство помехоустойчивого кодирования. Методы, алгоритмы, применение. М.: Техносфера, 2005, с.213, …, 216), в соответствии с которым мягкое декодирование блоковых кодов заключается в том, что символы принятой кодовой комбинации V систематического (n,k)-кода по основному алгоритму упорядочиваются по убыванию их градаций надежности и на основании выполненных перестановок формируется вектор V′, который совместно с вектором V образует двудольный граф для формирования матрицы перестановок Р, умножение на которую порождающей матрицы кода G приводит к получению новой матрицы G′, первые k столбцов которой проверяются на предмет линейной независимости и в случае положительного результата этой проверки матрица G′ приводится к систематической форме

Figure 00000001
, при этом первые k наиболее надежных элементов вектора V′ путем умножения на
Figure 00000002
образуют вектор эквивалентного кода Vэкв, который при поэлементном сложении по модулю два с вектором V′ формирует переставленный вектор ошибок Е′ и после умножения вектора Е′ на РT формируется вектор ошибок Е, действовавший в канале связи на вектор V, при этом в случае отрицательного результата проверки линейной независимости строк матрицы G′ осуществляется замена k-того столбца этой матрицы на (k+1)-й столбец и в случае необходимости на последующие столбцы до выполнения условия линейной независимости k первых столбцов матрицы G′ и при выполнении этого условия адекватно меняются местами элементы в векторе V′ и столбцы в матрице Р.The closest in technical essence to the claimed one is a method of soft decoding of systematic block codes using ordered statistics (see R. Morelos-Zaragoza. The art of noise-resistant coding. Methods, algorithms, application. M .: Technosphere, 2005, p.213, ..., 216), according to which soft decoding of block codes consists in the fact that the symbols of the received code combination of the V systematic (n, k) -code are sorted according to the main algorithm in descending order of their reliability gradations and based on x permutations, a vector V ′ is formed, which, together with vector V, forms a bipartite graph to form a permutation matrix P, multiplying by which the generating matrix of the code G yields a new matrix G ′, the first k columns of which are checked for linear independence in the case of a positive result of this check, the matrix G ′ is reduced to a systematic form
Figure 00000001
, while the first k most reliable elements of the vector V ′ by multiplying by
Figure 00000002
they form a vector of the equivalent code V equiv , which, by elementwise addition modulo two with the vector V ′, generates a rearranged error vector E ′ and after multiplying the vector E ′ by P T , the error vector E acts in the communication channel by the vector V, in this case of the negative result of checking the linear independence of the rows of the matrix G ′, the kth column of this matrix is replaced by the (k + 1) th column and, if necessary, the subsequent columns until the linear independence of the k first columns of the matrix G ′ is satisfied and if When this condition is fulfilled, the elements in the vector V ′ and the columns in the matrix R are adequately interchanged.

Достоинством данного способа декодирования является возможность исправлять число ошибок, кратность которых превосходит число ошибок, определяемых метрикой Хэмминга.The advantage of this decoding method is the ability to correct the number of errors, the multiplicity of which exceeds the number of errors determined by the Hamming metric.

Недостаток прототипа заключается в низкой скорости декодирования из-за необходимости вычисления детерминантов матриц размерности k×k при оценке свойств нелинейности строк переставленной матрицы G′. С ростом значения k (на практике используют коды с большим значением этого параметра) число элементарных операций при вычислении детерминанта имеет экспоненциальную зависимость. Поэтому даже незначительное сокращение размерности матрицы, по которой определяют выполнение свойства линейной независимости матрицы G′, обеспечивает выигрыш скорости декодирования.The disadvantage of the prototype is the low decoding speed due to the need to calculate the determinants of matrices of dimension k × k when evaluating the nonlinearity properties of rows of a permuted matrix G ′. With increasing value of k (in practice, codes with a large value of this parameter are used), the number of elementary operations in calculating the determinant has an exponential dependence. Therefore, even a slight reduction in the dimension of the matrix, which determines the fulfillment of the linear independence property of the matrix G ′, provides a gain in decoding speed.

Целью изобретения является разработка способа декодирования кодовых комбинаций систематических блоковых кодов, позволяющего повысить скорость декодирования и достоверность принимаемой информации при исправлении ошибок.The aim of the invention is to develop a method for decoding code combinations of systematic block codes, which allows to increase the decoding speed and reliability of received information when correcting errors.

Поставленная цель достигается тем, что символы принятой кодовой комбинации V систематического (n,k)-кода по основному алгоритму упорядочиваются по убыванию их градаций надежности и на основании выполненных перестановок формируется вектор V′, который совместно с вектором V образуют двудольный граф для формирования матрицы перестановок Р, умножение на которую порождающей матрицы кода G приводит к получению новой матрицы G′, первые k столбцов которой проверяются на предмет линейной независимости и в случае положительного исхода этой проверки матрица G′ приводится к систематической форме

Figure 00000002
, при этом первые k наиболее надежных элементов вектора V путем умножения на
Figure 00000002
образуют вектор эквивалентного кода Vэкв, который при поэлементном сложении по модулю два с вектором V′ формирует переставленный вектор ошибок Е′ и после умножения вектора Е′ на РT формируется вектор ошибок Е, действовавший в канале связи на вектор V, при этом в случае отрицательного результата проверки линейной независимости строк матрицы G′ осуществляется замена k-го столбца этой матрицы на (k+1)-й столбец и в случае необходимости на последующие столбцы до выполнения условия линейной независимости k первых столбцов матрицы G′ и при выполнении этого условия адекватно меняются местами элементы в V′ и столбцы Р, отличающийся тем, что для всех разрешенных кодовых комбинаций (n,k)-кода по их f старшим разрядам определяют номер кластера, при этом значение f выбирают в пределах 1<ƒ≤k/2, и при формировании кодового вектора на передаче младший разряд комбинации (правый) выкалывается и заменяется на бит проверки четности f разрядов кластера, а приемник, приняв вектор V, по градациям надежности и биту четности оценивает правильность приема номера кластера и в случае положительного решения переходит к обработке (n-ƒ, k-ƒ)-кода по основному алгоритму, предварительно сформировав корректирующий вектор Wук путем умножения разрядов номера кластера на первые f строк порождающей матрицы G кода и последующего временного удаления из него разрядов кластера, после чего вектор Wук вычитается из вектора V, при этом разряды кластера вектора V также не учитываются, с присвоением младшему разряду вновь образованного вектора Vук наиболее низкой оценки градации надежности, после чего декодер работает по основному алгоритму, формируя векторы ошибок Е, который поразрядно складывается с векторами Wук, Vук, формируя переданный вектор V за счет возвращения на свои места старших разрядов номера кластера, при этом, если проверка на четность номера кластера не выполняется, декодер подвергает инверсии наиболее ненадежный бит из числа участвующих в проверке.This goal is achieved by the fact that the symbols of the adopted code combination V of a systematic (n, k) -code are sorted according to the main algorithm in descending order of their reliability gradations and, based on the performed permutations, the vector V ′ is formed, which together with the vector V form a bipartite graph to form the permutation matrix P, the multiplication by which of the generating matrix of the code G leads to a new matrix G ′, the first k columns of which are checked for linear independence, and in case of a positive outcome this check the matrix G ′ is reduced to a systematic form
Figure 00000002
, while the first k most reliable elements of the vector V by multiplying by
Figure 00000002
they form a vector of the equivalent code V equiv , which, by elementwise addition modulo two with the vector V ′, generates a rearranged error vector E ′ and after multiplying the vector E ′ by P T , the error vector E acts in the communication channel by the vector V, in this case A negative result of checking the linear independence of the rows of the matrix G ′ is replaced by the kth column of this matrix by the (k + 1) th column and, if necessary, by subsequent columns until the linear independence condition of the k first columns of the matrix G ′ is satisfied and if Under this condition, the elements in V ′ and the P columns are adequately interchanged, characterized in that for all permitted code combinations of the (n, k) code, the cluster number is determined from their f highest digits, and the value of f is selected within 1 <ƒ≤ k / 2, and when forming the code vector on the transmission, the least significant bit of the combination (right) is punctured and replaced with the parity check bit f of the cluster bits, and the receiver, having adopted the vector V, evaluates the correctness of receiving the cluster number using gradations of reliability and the parity bit positive decision niya proceeds to processing the (n-ƒ, k-ƒ) code according to the main algorithm, having previously generated the correction vector W yk by multiplying the bits of the cluster number by the first f rows of the generating matrix G code and then temporarily removing the bits of the cluster from it, and then the vector W yk subtracted from the vector V, thus the vector as a cluster level V are not considered, assigning LSB newly formed vector V yk lowest trustworthiness evaluation gradation decoder then operates on the basic algorithm by forming vectors s error E which bitwise sum vectors W yk V yk, forming a transmitted vector V due to return to their seats MSBs non cluster, wherein if the parity check cluster numbers is not performed, the decoder puts inversion most unreliable bits of the number involved in the verification.

Проведенный анализ уровня техники позволил установить, что аналоги, характеризующиеся совокупностью признаков, тождественных всем признакам заявленного технического решения, отсутствуют, что указывает на соответствие заявленного способа условию патентоспособности «новизна». Результаты поиска известных решений в данной и смежной областях техники с целью выявления признаков, совпадающих с отличными от прототипа признаками заявленного объекта, показали, что они не следуют явным образом из уровня техники. Из уровня техники также не выявлена известность влияния предусматриваемых существенными признаками заявленного изобретения преобразований на достижение указанного технического результата. Следовательно, заявленное изобретение соответствует условию патентоспособности «изобретательский уровень».The analysis of the prior art made it possible to establish that analogues that are characterized by a combination of features identical to all the features of the claimed technical solution are absent, which indicates the compliance of the claimed method with the condition of patentability “novelty”. The search results for well-known solutions in this and related fields of technology in order to identify features that match the features of the claimed object that are different from the prototype showed that they do not follow explicitly from the prior art. The prior art also did not reveal the popularity of the impact provided by the essential features of the claimed invention, the transformations on the achievement of the specified technical result. Therefore, the claimed invention meets the condition of patentability "inventive step".

Иллюстрация способа осуществляется на примере кода БЧХ (15,7,5) и применима к любому систематическому блоковому коду.The method is illustrated by the example of the BCH code (15.7.5) and is applicable to any systematic block code.

Поставленная цель достигается следующим образом. Код с порождающим полиномом g(x)=7218 и ƒ=3 имеет порождающую матрицу G в систематической форме вида:The goal is achieved as follows. A code with a generating polynomial g (x) = 721 8 and ƒ = 3 has a generating matrix G in a systematic form of the form:

Figure 00000003
Figure 00000003

Пусть на выходе кодера образовался вектор видаLet a vector of the form

Figure 00000004
Figure 00000004

Передатчик заменяет младший (правый) бит комбинации на бит проверки четность для старших трех разрядов, определяющих номер кластера. Следовательно, в канал связи будет передан векторThe transmitter replaces the low (right) bit of the combination with a parity bit for the upper three bits that determine the cluster number. Therefore, a vector will be transmitted to the communication channel

Figure 00000005
Figure 00000005

Приемник принимает вектор, устанавливая по какому-либо известному принципу градацию надежности для каждого символа. Пусть соответствие символов и градаций надежности символов (далее оценки) имеет видThe receiver receives the vector, establishing a gradation of reliability for each symbol according to some well-known principle. Let the correspondence of symbols and gradations of reliability of symbols (further estimates) have the form

Figure 00000006
Figure 00000006

следовательно, вектор ошибок представлен последовательностьюtherefore, the error vector is represented by the sequence

Figure 00000007
Figure 00000007

Приняв вектор с ошибками, декодер на первом шаге декодирования проверяет номер кластера на четность. В примере проверка на четность дает отрицательный результат, поэтому декодер инвертирует второй разряд в номере кластера, так как он имеет худшую оценку надежности. Вектор, используемый для последующего анализа, принимает видHaving accepted the vector with errors, the decoder at the first decoding step checks the cluster number for parity. In the example, the parity check gives a negative result, so the decoder inverts the second bit in the cluster number, since it has the worst reliability rating. The vector used for subsequent analysis takes the form

Figure 00000008
Figure 00000008

Номер восстановленного кластера имеет значение 410. Декодер переходит на укороченный код (12,4,5), порождающая матрица которого имеет видThe number of the restored cluster is 4 10 . The decoder switches to a shortened code (12,4,5), the generating matrix of which has the form

Figure 00000009
Figure 00000009

Далее формируется корректирующий вектор W путем умножения номера кластера на первые три строки порождающей матрицы G. ТогдаThen, a correction vector W is formed by multiplying the cluster number by the first three rows of the generating matrix G. Then

Figure 00000010
Figure 00000010

и после исключения из него разрядов кластера вектор имеет видand after exclusion of cluster discharges from it, the vector has the form

Figure 00000011
Figure 00000011

Складывая по модулю два с соответствующими разрядами принятого вектора V и Wук, получаем вектор укороченного кода Vук.Adding modulo two with the corresponding bits of the received vector V and W yk , we obtain the vector of the shortened code V yk .

Figure 00000012
Figure 00000012

Figure 00000013
Figure 00000013

Figure 00000014
Figure 00000014

Figure 00000015
Figure 00000015

Младшему разряду этого вектора искусственно присваивается наиболее низкий индекс достоверности символа (в нашем случае 0, показан курсивом). После чего выполняется основной алгоритм декодера, представленный ниже:The least significant bit of this vector is artificially assigned the lowest symbol confidence index (in our case, 0, shown in italics). After that, the main algorithm of the decoder is presented below:

Порядковая нумерацияSequence Numbering 1one 22 33 4four 55 66 77 88 99 1010 11eleven 1212 Vук V uk 00 00 1one 1one 1one 1one 1one 00 00 00 00 1one ОценкиGrades 77 1one 1one 1one 77 77 77 77 77 55 55 00 Новая нумерация символовNew character numbering 1one 55 66 77 88 99 1010 11eleven 22 33 4four 1212 Значения переставленных символов Vпром Values of rearranged V prom characters 00 1one 1one 1one 00 00 00 00 00 1one 1one 1one

В этом алгоритме переходы от элементов строки «Порядковая нумерация» к элементам строки «Новая нумерация символов» представляются двудольным графом, на основании которого по общеизвестным правилам формируется матрица перестановок Р размерности (n-ƒ)×(n-ƒ). Путем умножения матрицы Р на матрицу Gук получают результат предварительного преобразования, который необходимо оценить с точки зрения сохранения свойства нелинейности строк новой матрицы G′.In this algorithm, the transitions from the elements of the line “Sequential Numbering” to the elements of the line “New Numbering of Characters” are represented by a bipartite graph, based on which, according to well-known rules, a permutation matrix P of dimension (n-ƒ) × (n-ƒ) is formed. By multiplying the matrix P by the matrix G yk , the result of the preliminary transformation is obtained, which must be estimated from the point of view of preserving the nonlinearity property of the rows of the new matrix G ′.

Figure 00000016
Figure 00000016

Для этого из G′ выделяются первые k-ƒ=λстолбцов с образованием матрицы Аλ×λ, для которой проверяют условие det Aλ×λ≠0 и выполняется действие по вычислению обратной матрицы

Figure 00000017
, структура которой точно указывает на порядок комбинирования строк матрицы G′ для получения в систематической форме порождающей матрицы
Figure 00000018
. Например, для G′ имеемFor this, the first k-ƒ = λ columns are extracted from G ′ with the formation of the matrix A λ × λ , for which the condition det A λ × λ ≠ 0 is checked and the action is performed to calculate the inverse matrix
Figure 00000017
, the structure of which precisely indicates the order of combining the rows of the matrix G ′ to obtain in a systematic form the generating matrix
Figure 00000018
. For example, for G, we have

Figure 00000019
Figure 00000019

Если условие det Аλ×λ≠0 не выполняется, то 4-й столбец матрицы G′ меняется местами с 5-м столбцом. Если и в этих условиях детерминант оказывается равным нулю, то 4-й столбец матрицы G′ меняется местами с 6-м столбцом. После вычисления

Figure 00000020
вычисляется порождающая матрица эквивалентного кода в систематической формеIf the condition det A λ × λ ≠ 0 is not fulfilled, then the 4th column of the matrix G ′ is interchanged with the 5th column. If even under these conditions the determinant is equal to zero, then the 4th column of the matrix G ′ changes places with the 6th column. After calculating
Figure 00000020
the generating matrix of the equivalent code is calculated in a systematic form

Figure 00000021
Figure 00000021

Вектор 0111, выделенный в таблице, умножается на новую порождающую матрицу, в результате образуется векторVector 0111, highlighted in the table, is multiplied by a new generating matrix, resulting in a vector

Figure 00000022
Figure 00000022

Вектор Vэкв поразрядно сравнивается со значениями вектора Vпром.Vector V equiv bitwise compared with the values of the vector V prom .

Комбинация эквивалентного кода Vэкв Combination of equivalent code V equiv 00 1one 1one 1one 00 00 1one 1one 1one 00 00 00 Значения переставленных символов Vпром Values of rearranged V prom characters 00 1one 1one 1one 00 00 00 00 00 1one 1one 1one Условный вектор ошибок eуcлв Conditional error vector e uclv 00 00 00 00 00 00 1one 1one 1one 1one 1one 1one

Выполнив операцию eуслв×PT=e, декодер получает вектор ошибок, действовавший в канале связи при передаче кодового вектора. Для получения истинного вектора укороченного кода необходимо сложить по модулю 2 три вектора: вектор ошибок е, корректирующий вектор Wук и вектор укороченного кода Vук.Having performed the operation e serv × P T = e, the decoder receives the error vector that was in effect in the communication channel during the transmission of the code vector. To obtain the true vector of the shortened code, it is necessary to add three vectors modulo 2: the error vector e, the correction vector W yk and the vector of the shortened code V yk .

Комбинация укороченного кода Vук The combination of shortened code V UK 00 00 1one 1one 1one 1one 1one 00 00 00 00 1one Wук W yk 00 00 00 00 1one 1one 1one 00 1one 00 00 00 Вектор ошибок еError vector e 00 1one 1one 1one 00 00 00 00 00 1one 1one 00 Результат сложенияAddition result 00 1one 00 00 00 00 00 00 1one 1one 1one 1one

К результату сложения справа необходимо добавить три старших разряда, отвечающих за номер кластера.To the result of addition on the right, it is necessary to add the three most significant bits responsible for the cluster number.

Комбинация укороченного
кода Vук
Shortened combination
code V uk
Позиции разрядов кластераCluster Discharge Positions 00 1one 00 00 00 00 00 00 1one 1one 1one 1one
Комбинация с номером кластераCluster number combination 1one 00 00 00 1one 00 00 00 00 00 00 1one 1one 1one 1one Вектор, принятый из канала связиVector received from communication channel 1one 00 00 00 1one 00 00 00 00 00 00 1one 1one 1one 1one

Применение предложенного способа мягкого декодирования систематических блоковых позволяет сократить время обработки кодовых комбинаций в декодере за счет снижения размерности вычисляемых матриц. Например, вычисление детерминанта матрицы размерности 4×4 потребует выполнения 59 элементарных операций, а аналогичные вычисления, проведенные для матрицы размерности 7×7 потребуют выполнения 12599 подобных операций (снижение вычислительных затрат в 213 раз). Кроме того, способ обеспечивает защиту кластера без введения дополнительной избыточности, а также исправление стираний за пределами тех возможностей, которые определяются метрикой Хэмминга.Application of the proposed method for soft decoding of systematic block allows to reduce the processing time of code combinations in the decoder by reducing the dimension of the calculated matrices. For example, calculating the determinant of a 4 × 4 matrix will require 59 elementary operations, and similar calculations performed for a 7 × 7 matrix will require 12,599 similar operations (213 times lower computational cost). In addition, the method provides cluster protection without introducing additional redundancy, as well as correcting erasures beyond the capabilities defined by the Hamming metric.

Claims (1)

Способ мягкого декодирования систематических блоковых кодов, заключающийся в том, что символы принятой кодовой комбинации V систематического (n,k)-кода по основному алгоритму упорядочиваются по убыванию их градаций надежности и на основании выполненных перестановок формируется вектор V', который совместно с вектором V образуют двудольный граф для формирования матрицы перестановок Р, умножение на которую порождающей матрицы кода G приводит к получению новой матрицы G', первые k столбцов которой проверяются на предмет линейной независимости и в случае положительного исхода этой проверки матрица G' приводится к систематической форме G's, при этом первые k наиболее надежных элементов вектора V' путем умножения на G's образуют вектор эквивалентного кода Уэкв, который при поэлементном сложении по модулю два с вектором V' формирует переставленный вектор ошибок Е' и после умножения вектора Е' на Pт формируется вектор ошибок Е, действовавший в канале связи на вектор V, при этом в случае отрицательного результата проверки линейной независимости строк матрицы G' осуществляется замена k-го столбца этой матрицы на (k+1)-й столбец и в случае необходимости на последующие столбцы до выполнения условия линейной независимости k первых столбцов матрицы G' и при выполнении этого условия адекватно меняются местами элементы в V' и столбцы Р, отличающийся тем, что для всех разрешенных кодовых комбинаций (n,k)-кода по их f старшим разрядам определяют номер кластера, при этом значение f выбирают в пределах 1<ƒ≤k/2 и при формировании кодового вектора на передаче младший разряд комбинации (правый) выкалывается и заменяется на бит проверки четности f разрядов кластера, а приемник, приняв вектор V по градациям надежности и биту четности, оценивает правильность приема номера кластера и в случае положительного решения переходит к обработке (n-ƒ, k-ƒ)-кода по основному алгоритму, предварительно сформировав корректирующий вектор Wук путем умножения разрядов номера кластера на первые f строк порождающей матрицы G кода и последующего временного удаления из него разрядов кластера, после чего вектор Wук вычитается из вектора V, при этом разряды кластера вектора V также не учитываются, с присвоением младшему разряду вновь образованного вектора Vук наиболее низкой оценки градации надежности, после чего декодер работает по основному алгоритму, формируя вектора ошибок Е, который поразрядно складывается с векторами Wук, Vук, формируя переданный вектор V за счет возвращения на свои места старших разрядов номера кластера, при этом, если проверка на четность номера кластера не выполняется, декодер подвергает инверсии наиболее ненадежный бит из числа участвующих в проверке. A method for softly decoding systematic block codes, namely, that the symbols of the received code combination V of the systematic (n, k) code are ordered by the main algorithm in descending order of their gradation of reliability and, based on the permutations performed, the vector V 'is formed, which together with the vector V form bipartite graph to form the permutation matrix P, multiplying by which the generating matrix of the code G leads to a new matrix G ', the first k columns of which are checked for linear independence and in case of positive outcome of this check matrix G 'is a systematic form G' s, with the first k most reliable components of the vector V 'by multiplying G' s form a vector equivalent code Y eq, which, when elementwise addition modulo two and the vector V 'forms the rearranged error vector E' and after multiplying the vector E 'by P t , the error vector E is formed, which acted in the communication channel by the vector V, and in the case of a negative result of checking the linear independence of the rows of the matrix G', k-g is replaced about the column of this matrix on the (k + 1) -th column and, if necessary, on subsequent columns until the linear independence of the k first columns of the matrix G 'is satisfied, and when this condition is satisfied, the elements in V' and the columns P differ, that for all allowed code combinations of the (n, k) code, the cluster number is determined from their f highest digits, and the value of f is selected within 1 <ƒ≤k / 2 and, when generating the code vector for transmission, the least significant bit of the combination (right ) is punctured and replaced with the even check bit there are f bits of the cluster, and the receiver, having accepted the vector V by the gradations of reliability and the parity bit, evaluates the correctness of receiving the cluster number and, in the case of a positive solution, proceeds to processing the (n-ƒ, k-ƒ) code according to the main algorithm, having previously generated the correction vector W yk by multiplying the bits of the cluster number by the first f rows of the generating matrix G code and then temporarily removing the bits of the cluster from it, after which the vector W yk is subtracted from the vector V, while the cluster bits of the vector V are also not taken into account, with By lowering the low-order value of the newly formed vector V yk, the lowest estimate of the reliability gradation, after which the decoder works according to the main algorithm, forming the error vector E, which is bitwise added to the vectors W yk , V yk , forming the transmitted vector V by returning the high-order bits to their places cluster number; in this case, if the cluster number parity is not performed, the decoder inverts the most unreliable bit from the number involved in the check.
RU2010135507/08A 2010-08-24 2010-08-24 Method for soft-decision decoding systematic block codes RU2444127C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2010135507/08A RU2444127C1 (en) 2010-08-24 2010-08-24 Method for soft-decision decoding systematic block codes

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2010135507/08A RU2444127C1 (en) 2010-08-24 2010-08-24 Method for soft-decision decoding systematic block codes

Publications (1)

Publication Number Publication Date
RU2444127C1 true RU2444127C1 (en) 2012-02-27

Family

ID=45852450

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2010135507/08A RU2444127C1 (en) 2010-08-24 2010-08-24 Method for soft-decision decoding systematic block codes

Country Status (1)

Country Link
RU (1) RU2444127C1 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2485683C1 (en) * 2012-04-02 2013-06-20 Открытое акционерное общество "Калужский научно-исследовательский институт телемеханических устройств" Decoding device with soft decisions for double-stage cascade code
RU2580797C1 (en) * 2015-03-13 2016-04-10 Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Ульяновский государственный технический университет" Method of soft decoding of block codes
RU2646372C1 (en) * 2016-10-31 2018-03-02 Государственное бюджетное образовательное учреждение высшего образования Нижегородский государственный инженерно-экономический университет (НГИЭУ) Method of soft cognitive decoding of systematic block codes
RU2672300C2 (en) * 2017-04-24 2018-11-13 Государственное бюджетное образовательное учреждение высшего образования Нижегородский государственный инженерно-экономический университет (НГИЭУ) Memory permutation decoder
RU2725699C1 (en) * 2019-08-27 2020-07-03 Акционерное общество "Калужский научно-исследовательский институт телемеханических устройств" Method for soft decoding of noise-immune code
RU2738724C1 (en) * 2020-06-02 2020-12-16 Акционерное общество "Калужский научно-исследовательский институт телемеханических устройств" Method for soft decoding of a noise-immune code

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2814871A1 (en) * 2000-10-02 2002-04-05 Sacet Method for iterative decoding associated with all concatenations of determined number of codes in blocks, for use in digital radio-communication systems
EP1333586A2 (en) * 2002-01-31 2003-08-06 Mitsubishi Denki Kabushiki Kaisha Decoding method, decoding apparatus and digital transmission system of product code
RU2344556C1 (en) * 2007-06-07 2009-01-20 Государственное образовательное учреждение высшего профессионального образования "Ульяновский государственный технический университет" Decoder with correction of deletions
RU2379841C1 (en) * 2008-07-21 2010-01-20 Федеральное государственное унитарное предприятие "Научно-производственное предприятие "Сигнал" Decoder with erasure correction

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2814871A1 (en) * 2000-10-02 2002-04-05 Sacet Method for iterative decoding associated with all concatenations of determined number of codes in blocks, for use in digital radio-communication systems
EP1333586A2 (en) * 2002-01-31 2003-08-06 Mitsubishi Denki Kabushiki Kaisha Decoding method, decoding apparatus and digital transmission system of product code
RU2344556C1 (en) * 2007-06-07 2009-01-20 Государственное образовательное учреждение высшего профессионального образования "Ульяновский государственный технический университет" Decoder with correction of deletions
RU2379841C1 (en) * 2008-07-21 2010-01-20 Федеральное государственное унитарное предприятие "Научно-производственное предприятие "Сигнал" Decoder with erasure correction

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
МОРЕЛОС-САРАГОСА Р. Искусство помехоустойчивого кодирования. Методы, алгоритмы, применение. - М.: Техносфера, 2005, с.213-216. *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2485683C1 (en) * 2012-04-02 2013-06-20 Открытое акционерное общество "Калужский научно-исследовательский институт телемеханических устройств" Decoding device with soft decisions for double-stage cascade code
RU2580797C1 (en) * 2015-03-13 2016-04-10 Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Ульяновский государственный технический университет" Method of soft decoding of block codes
RU2646372C1 (en) * 2016-10-31 2018-03-02 Государственное бюджетное образовательное учреждение высшего образования Нижегородский государственный инженерно-экономический университет (НГИЭУ) Method of soft cognitive decoding of systematic block codes
RU2672300C2 (en) * 2017-04-24 2018-11-13 Государственное бюджетное образовательное учреждение высшего образования Нижегородский государственный инженерно-экономический университет (НГИЭУ) Memory permutation decoder
RU2725699C1 (en) * 2019-08-27 2020-07-03 Акционерное общество "Калужский научно-исследовательский институт телемеханических устройств" Method for soft decoding of noise-immune code
RU2738724C1 (en) * 2020-06-02 2020-12-16 Акционерное общество "Калужский научно-исследовательский институт телемеханических устройств" Method for soft decoding of a noise-immune code

Similar Documents

Publication Publication Date Title
RU2444127C1 (en) Method for soft-decision decoding systematic block codes
RU2580797C1 (en) Method of soft decoding of block codes
US10348336B2 (en) System and method for early termination of decoding in a multi user equipment environment
US20230274750A1 (en) Multi-mode channel coding
EP2453578A1 (en) Method and device for decoding reed-solomon (rs) code
EP3687072A1 (en) Coding and decoding with staggered parity
RU2344556C1 (en) Decoder with correction of deletions
JP5374156B2 (en) Apparatus and method for decoding and encoding data
RU2438252C1 (en) High correcting capacity decoder
CN108549096B (en) Method and device for error correction and decoding of GPS navigation message
Galligan et al. Upgrade error detection to prediction with GRAND
WO2020156641A1 (en) Device and method for processing data of a quantum key distribution system
RU2379841C1 (en) Decoder with erasure correction
RU2538331C2 (en) Serial turbo code soft decoder
CN111224741B (en) BCH code decoding method and decoder for satellite navigation and satellite navigation receiver
US20210119645A1 (en) Encoder, decoder, encoding method and decoding method based on low-density parity-check code
TWI487291B (en) Cyclic code decoder and method thereof
RU2646372C1 (en) Method of soft cognitive decoding of systematic block codes
CN113078914B (en) Blind identification method for parameters of single incomplete Turbo code component encoder
EP4205284A1 (en) Staircase polar encoding and decoding
Erokhin et al. One approach on ECC identification problem in a complex telecommunication system
RU2419966C2 (en) Method to decode noiseless cascade codes by most valid symbols of external code
EP3697005A1 (en) Multi-mode channel coding with mode specific coloration sequences
RU2485702C1 (en) System for correcting deletions with cluster number protection
Assanovich et al. Use of linear error-correcting subcodes in flow watermarking for channels with substitution and deletion errors

Legal Events

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

Effective date: 20120825