RU2725699C1 - Способ мягкого декодирования помехоустойчивого кода - Google Patents
Способ мягкого декодирования помехоустойчивого кода Download PDFInfo
- Publication number
- RU2725699C1 RU2725699C1 RU2019127141A RU2019127141A RU2725699C1 RU 2725699 C1 RU2725699 C1 RU 2725699C1 RU 2019127141 A RU2019127141 A RU 2019127141A RU 2019127141 A RU2019127141 A RU 2019127141A RU 2725699 C1 RU2725699 C1 RU 2725699C1
- Authority
- RU
- Russia
- Prior art keywords
- error
- correcting code
- symbols
- code
- decoding
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/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
-
- 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/136—Reed-Muller [RM] codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/1505—Golay Codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/1515—Reed-Solomon codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/152—Bose-Chaudhuri-Hocquenghem [BCH] codes
Landscapes
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
Изобретение относится к области связи и может быть использовано для мягкого декодирования помехоустойчивого кода в каналах связи с высоким уровнем помех. Техническим результатом является уменьшение сложности декодирования при его высокой помехоустойчивости. Способ содержит этапы, на которых на вход декодирующего устройства подают n символов принятого помехоустойчивого кода с оценками достоверностей символов, в зависимости от качества канала связи оценивают величину s числа наименее достоверных символов помехоустойчивого кода, чтобы вероятность правильного декодирования помехоустойчивого кода была не менее, чем заданная величина, из s символов выбирают максимально возможное число t символов, соответствующих линейно независимым столбцам проверочной матрицы помехоустойчивого кода, которые стирают и формируют 2вариантов помехоустойчивого кода, в которых s-t наименее достоверных символов помехоустойчивого кода принимают всевозможные двоичные комбинации, начиная с комбинации из всех 0 и заканчивая комбинацией из всех 1, выполняют жесткое декодирование сформированных 2вариантов помехоустойчивого кода с исправлением t стираний. На выход декодирующего устройства подают помехоустойчивый код, соответствующий минимальному расстоянию Хемминга из совокупности 2расстояний Хемминга. 4 з.п. ф-лы.
Description
Изобретение относится к области техники связи и может быть использовано для мягкого декодирования помехоустойчивого кода в каналах связи с высоким уровнем помех.
Одним из основных направлений повышения помехоустойчивости передачи сообщений в каналах связи различного качества, в том числе низкого качества, является применение помехоустойчивого кодирования. На передающей стороне канала связи исходное сообщение кодируют помехоустойчивым кодом. На приемной стороне помехоустойчивый код декодируют с исправлением ошибок и восстанавливают исходное сообщение. При мягком декодировании помехоустойчивого кода используется дополнительная информация о достоверностях символов, что существенно повышает помехоустойчивость связи, поскольку позволяет исправлять примерно вдвое большее число ошибок по сравнению с жестким декодированием помехоустойчивого кода. Однако, для мягкого декодирования требуется выполнять большой объем вычислений, что значительно усложняет декодирование кода по сравнению с жестким декодированием. Уменьшить сложность мягкого декодирования кода возможно за счет введения стираний наименее достоверных символов и перебора различных вариантов оставшейся части наименее достоверных символов. При этом помехоустойчивость остается на высоком уровне, поскольку число исправляемых стираний в помехоустойчивом коде вдвое больше числа исправляемых ошибок.
Предлагаемый способ мягкого декодирования помехоустойчивого кода является универсальным и может использоваться для многих классов линейных помехоустойчивых кодов: Хемминга, Боуза-Чоудхури-Хоквинхема (БЧХ), Рида-Маллера, Голея, Рида-Соломона и других.
Известен способ мягкого декодирования помехоустойчивого кода, заключающийся в том, что на вход декодирующего устройства поступают n символов принятого помехоустойчивого кода с оценками достоверностей этих символов. В декодирующем устройстве помехоустойчивого кода эти символы сортируют по достоверности, выбирая сначала символы с наибольшей достоверностью, затем символы с меньшей, но следующей по величине достоверностью и так далее, пока не будет набрано n-s наиболее достоверных символов помехоустойчивого кода, где s есть число наименее достоверных символов помехоустойчивого кода. Затем формируют 2s вариантов помехоустойчивого кода, в каждом из которых s наименее достоверных символов помехоустойчивого кода принимают всевозможные двоичные комбинации, начиная с комбинации из множества 0 и заканчивая комбинацией из множества 1, a n-s наиболее достоверных символов помехоустойчивого кода не изменяют. Далее выполняют жесткое декодирование всех 2s вариантов помехоустойчивого кода и корректируют ошибки в каждом из этих вариантов. Затем каждый из 2s вариантов декодированного помехоустойчивого кода сравнивают по расстоянию Хемминга с принятым помехоустойчивым кодом и получают совокупность 2s расстояний Хемминга. На выход декодирующего устройства подается помехоустойчивым код, соответствующий минимальному кодовому расстоянию Хемминга из совокупности 2s расстояний Хемминга. (Кларк Дж., мл. Кейн Дж. Кодирование с исправлением ошибок в системах цифровой связи. - Пер. с англ. - Радио и связь. - 1987. - с. 160-165).
Недостатком этого способа является чрезмерно большая сложность, поскольку жесткое декодирование 2s вариантов помехоустойчивого кода с исправлением ошибок в каждом из вариантов помехоустойчивого кода требует большого числа вычислений.
Наиболее близким к предлагаемому способу является способ (прототип) мягкого декодирования помехоустойчивого кода, заключающийся в том, что на вход декодирующего устройства подают n символов принятого помехоустойчивого кода с оценками достоверностей этих символов. В декодирующем устройстве помехоустойчивого кода сначала в зависимости от качества канала связи, оценивают величину s числа наименее достоверных символов помехоустойчивого кода, чтобы вероятность правильного декодирования помехоустойчивого кода была не менее, чем заданная величина. Затем символы помехоустойчивого кода сортируют по достоверности, выбирая сначала символы с наибольшей достоверностью, затем символы с меньшей, но следующей по величине достоверностью и так далее, пока не будет набрано n-s наиболее достоверных символов помехоустойчивого кода. Далее формируют варианты помехоустойчивого кода, в каждом из которых наименее достоверные символы помехоустойчивого кода принимают всевозможные двоичные комбинации, начиная с комбинации из всех 0 и заканчивая комбинацией из всех 1, а наиболее достоверных символов помехоустойчивого кода остаются неизменными. Затем выполняют жесткое декодирование всех вариантов помехоустойчивого кода и каждый из вариантов декодированного помехоустойчивого кода сравнивают по расстоянию Хемминга с принятым помехоустойчивым кодом и получают совокупность расстояний Хемминга. На выход декодирующего устройства подают помехоустойчивый код, соответствующий минимальному расстоянию Хемминга из совокупности расстояний Хемминга (Патент РФ №2546070 МПК Н03М 13/00 Квашенников В.В., Сосин П.А. Способ мягкого декодирования помехоустойчивого кода. - Приор. 12.11.2013. - Опубл. 10.04.2015.-Бюл. №10).
Недостатком этого способа также является большая сложность, поскольку жесткое декодирование с исправлением ошибок различных вариантов помехоустойчивого кода требует выполнения большого числа вычислений.
Целью изобретения является снижение сложности декодирования за счет того, что часть наименее достоверных символов помехоустойчивого кода стирают и выполняют жесткое декодирование помехоустойчивого кода с исправлением стираний, которое проще, чем декодирование помехоустойчивого кода с исправлением ошибок.
Для достижения цели предложен способ мягкого декодирования помехоустойчивого кода, заключающийся в том, что на вход декодирующего устройства подают n символов принятого помехоустойчивого кода с оценками достоверностей этих символов. В декодирующем устройстве помехоустойчивого кода сначала, в зависимости от качества канала связи, оценивают величину s числа наименее достоверных символов помехоустойчивого кода, чтобы вероятность правильного декодирования помехоустойчивого кода была не менее, чем заданная величина. Затем символы помехоустойчивого кода сортируют по достоверности, выбирая сначала символы с наибольшей достоверностью, затем символы с меньшей, но следующей по величине достоверностью и так далее, пока не будет набрано n-s наиболее достоверных символов помехоустойчивого кода. Далее формируют варианты помехоустойчивого кода, в каждом из которых наименее достоверные символы помехоустойчивого кода принимают всевозможные двоичные комбинации, начиная с комбинации из всех 0 и заканчивая комбинацией из всех 1, а наиболее достоверные символы помехоустойчивого кода остаются неизменными. Затем выполняют жесткое декодирование всех вариантов помехоустойчивого кода, и каждый из вариантов декодированного помехоустойчивого кода сравнивают по расстоянию Хемминга с принятым помехоустойчивым кодом и получают совокупность расстояний Хемминга. На выход декодирующего устройства подают помехоустойчивый код, соответствующий минимальному расстоянию Хемминга из совокупности расстояний Хемминга. Новым является то, что сначала из s наименее достоверных символов помехоустойчивого кода выбирают максимально возможное число t символов, соответствующих линейно независимым столбцам проверочной матрицы помехоустойчивого кода. Эти t символов стирают и формируют 2s-t вариантов помехоустойчивого кода, в которых только s-t наименее достоверных символов помехоустойчивого кода принимают всевозможные двоичные комбинации, начиная с комбинации из всех 0 и заканчивая комбинацией из всех 1. Далее выполняют жесткое декодирование сформированных 2s-t вариантов помехоустойчивого кода с исправлением t стираний. На выход декодирующего устройства подают помехоустойчивый код, соответствующий минимальному расстоянию Хемминга из совокупности 2s-t расстояний Хемминга. При этом для s<d, где d - минимальное кодовое расстояние помехоустойчивого кода, принимают t=s, стирают все наименее достоверные символы помехоустойчивого кода и выполняют только одну попытку жесткого декодирования помехоустойчивого кода с исправлением t стираний. Причем для s≥d число t стертых символов помехоустойчивого кода принимают равным рангу матрицы, состоящей из s столбцов проверочной матрицы помехоустойчивого кода, соответствующих наименее достоверным символам помехоустойчивого кода. При этом жесткое декодирование помехоустойчивого кода с исправлением стираний выполняют путем решения системы линейных уравнений относительно неизвестных значений стертых символов, причем решение системы линейных уравнений относительно неизвестных значений стертых символов осуществляют методом Гаусса исключения неизвестных.
Рассмотрим осуществление предлагаемого способа мягкого декодирования помехоустойчивого кода.
При мягком декодировании помехоустойчивого кода помимо жестких решений о значении каждого символа (0 либо 1) оценивают достоверности символов. Для формирования достоверностей символов можно использовать первичные статистические характеристики канала связи, например амплитуду сигнала на выходе интегратора демодулятора, уровень фонового шума (за пределами полосы частот передачи сигнала), искажения пилот-сигнала по частоте и фазе, отклонения спектра принятого сигнала от ожидаемого спектра и так далее. Для формирования достоверностей символов можно также использовать вторичные статистические характериcтики канала связи в виде дроблений и искажений краев посылок на выходе устройства тактовой цифровой синхронизации. Достоверности символов можно также формировать на выходе декодирующего устройства внутреннего кода каскадного помехоустойчивого кода в зависимости от числа ошибок, корректируемых внутренним кодом. Наиболее достоверными будут символы, полученные при декодировании кодов, в которых не было исправлено ни одной ошибки, менее достоверными - с исправлением одиночной ошибки, затем - двойной ошибки и так далее. Оценки достоверностей символов тогда используют для мягкого декодирования внешнего кода каскадного кода.
Величину s числа наименее достоверных символов помехоустойчивого кода, в которых наиболее вероятно возникновение ошибок, определяют в зависимости от качества канала связи, исходя из условия, чтобы вероятность правильного декодирования помехоустойчивого кода была не менее, чем заданная величина. Основной характеристикой качества каналов связи является средняя вероятность ошибки на бит в канале связи. Для различных каналов связи средняя вероятность ошибки на бит известна. Например, для каналов связи диапазона декаметровых волн (ДКМВ) средняя вероятность ошибки на бит будет не более 5⋅10-2, для каналов связи диапазона метровых волн (MB 1, МВ2) в пределах прямой видимости - не более 10-3, для спутниковых каналов - не более 10-5 и так далее. Вероятность правильного приема помехоустойчивого кода с коррекцией s ошибок в зависимости от средней вероятности ошибки на бит р запишется в виде
где n - блоковая длина помехоустойчивого кода.
Для системы связи обычно задают требуемое значение вероятности правильного приема помехоустойчивого кода достаточно близкое к 1 (например, 0.99 и более). Число ошибок s, которое должен исправлять помехоустойчивый код, определяют из неравенства
Из нелинейного соотношения (2) выразить величину s в явном виде не представляется возможным, однако можно определить величину s численным методами. Для различных значений s, начиная с 0 с интервалом через 1, по формуле (1) вычисляют вероятности правильного приема помехоустойчивого кода. Значение при котором впервые выполняется неравенство (2), является оценкой числа наименее достоверных символов помехоустойчивого кода, в которых возможны ошибки.
Для жесткого декодирования помехоустойчивого кода минимальное кодовое расстояние связано с числом исправляемых ошибок s формулой
Если полученное из формулы (3) число корректируемых ошибок то корректирующая способность жесткого декодирования помехоустойчивого кода не меньше числа ошибок в сообщении, и для правильного приема сообщения достаточно обычного жесткого декодирования кода.
Для требуется мягкое декодирование помехоустойчивого кода за пределами его минимального кодового расстояния.
После определения числа s наименее достоверных символов помехоустойчивого кода, в которых возможны ошибки, символы помехоустойчивого кода сортируют по достоверности, выбирая сначала символы с наибольшей достоверностью, затем символы с меньшей, но следующей по величине достоверностью и так далее, пока не будет набрано n-s наиболее достоверных символов помехоустойчивого кода. Из оставшихся s наименее достоверных символов помехоустойчивого кода выбирают максимально возможное число t символов, соответствующих линейно независимым столбцам проверочной матрицы помехоустойчивого кода.
Проверочную матрицу помехоустойчивого кода записывают в виде
где hi - столбцы проверочной матрицы кода.
Пусть помехоустойчивый код есть A=a 0 a l…a n-1 , тогда выполняется равенство
Для s<d принимают t=s, стирают все наименее достоверные символы помехоустойчивого кода и выполняют только одну попытку жесткого декодирования помехоустойчивого кода с исправлением t стираний.
Для s≥d число t стертых символов помехоустойчивого кода будет равно рангу матрицы, состоящей из s столбцов проверочной матрицы помехоустойчивого кода, соответствующих наименее достоверным символам помехоустойчивого кода. Эти t символов стирают, а используя s-t оставшихся символов, формируют 2s-t вариантов помехоустойчивого кода, в которых s-t наименее достоверных символов помехоустойчивого кода принимают всевозможные двоичные комбинации, начиная с комбинации из всех 0 и заканчивая комбинацией из всех 1. Далее выполняют жесткое декодирование сформированных 2s-t вариантов помехоустойчивого кода с исправлением t стираний.
На выход декодирующего устройства подают помехоустойчивый код, соответствующий минимальному расстоянию Хемминга из совокупности 2s-t расстояний Хемминга.
Рассмотрим более подробно жесткое декодирование помехоустойчивого кода с исправлением стираний. Обозначим неизвестные значения стертых символов bj, j∈tj, где j∈tj - множество индексов стертых символов. Тогда (5) перепишется
Правая часть уравнения содержит наиболее достоверные символы помехоустойчивого кода и ее можно вычислить по принятым символам. Таким образом, уравнение (6) представляет собой систему t линейных уравнений относительно неизвестных значений стертых символов bj, j∈tj.
Для жесткого декодирования помехоустойчивого кода с исправлением стираний достаточно решить систему линейных уравнений (6) относительно неизвестных значений стертых символов. Поскольку неизвестным значениям стертых символов соответствуют линейно независимые столбцы проверочной матрицы помехоустойчивого кода, то система (6) совместна и имеет единственное решение. Решение системы линейных уравнений (6) осуществляют, например, методом Гаусса исключения неизвестных. Метод Гаусса включает прямой ход вычислений, при котором за счет перестановок строк системы линейных уравнений (6) и сложения некоторых строк этой системы строят систему линейных уравнений с верхнетреугольной матрицей, а также включает обратный ход вычислений, при котором, начиная с последнего уравнения, выполняют подстановку найденных значений неизвестных в уравнение, которое в системе линейных уравнений (6) стоит выше.
Например, для помехоустойчивого кода Хемминга (15, 11), блоковая длина которого равна n=15, информационная длина кода есть k=11, а минимальное кодовое расстояние равно d=3, проверочная матрица размера 4×15 запишется
Столбцы проверочной матрицы кода Хемминга представляют собой различные ненулевые двоичные комбинации символов. Любые два столбца проверочной матрицы линейно независимы, поэтому любые комбинации двух стираний символов помехоустойчивого кода будут исправляться. Возможно исправление и большего числа стираний, но только, если столбцы проверочной матрицы, соответствующие позициям стертых символов, являются линейно независимыми. В любом случае максимальное число исправляемых стираний равно числу строк проверочной матрицы и не превышает избыточности кода r=n-k=15-11=4.
Пусть качество канала связи характеризуется средней вероятностью ошибки на бит, равной р=5⋅10-2. По формуле (2) при n=15 и s=2 будем иметь а при s=3 будет Поэтому, для мягкого декодирования выберем величину s=3, и для обеспечения требуемой помехоустойчивости будем исправлять 3 наименее достоверных символа кода Хемминга. Пусть принятый код Хемминга A=001100111010110. Допустим, множество индексов наименее достоверных символов j∈(1, 8, 10) и A=0b1110011b80b100110. Столбцы проверочной матрицы Н, соответствующие стираниям будут
Ранг матрицы F равен 2, так как любые два столбца этой матрицы линейно независимы. Поэтому t=2 и потребуется 2s-t=23-2=2 попытки жесткого декодирования помехоустойчивого кода с исправлением стираний. Таким образом, потребуется решить 2 системы линейных уравнений (6) для неизвестных значений стираний, допустим b1 и b8. Для этого выберем, например, 1 и 3 строки матрицы F, в которых возьмем только первые два столбца. Получим систему линейных алгебраических уравнений
b8+b10=1
b8+b10=1⋅
Для b10=0 получим решения b1=1, b8=1, для b10=1 решения будут b1=0,b8=0. Первое решение приводит к коду А=011100111000110, а второе - к коду A=001100110010110. Выбираем второе решение, которое ближе по расстоянию Хемминга к принятому коду.
В данном примере при небольшом объеме вычислений удалось исправить s=3 ошибки. Причем 2 ошибки исправляют за счет стираний, а 1 ошибку - путем перебора различных вариантов.
Обеспечить высокую помехоустойчивость при небольшой сложности мягкого декодирования стало возможным за счет совмещения исправления стираний символов и перебора ошибок на оставшихся местах. Исправление стираний сводится к решению систем линейных уравнений, а поскольку системы линейных уравнений определены над простейшим двоичным полем с двумя элементами 0 и 1, то сложность решения этой системы уравнений, например, по методу Гаусса, невысокая и оценивается примерно квадратом порядка системы линейных алгебраических уравнений. Количество переборов различных вариантов ошибок существенно снижается за счет того, что часть ошибок переводится в стирания символов.
Достигаемым техническим результатом способа мягкого декодирования помехоустойчивого кода является уменьшение сложности при его высокой помехоустойчивости.
Claims (5)
1. Способ мягкого декодирования помехоустойчивого кода, заключающийся в том, что на вход декодирующего устройства подают n символов принятого помехоустойчивого кода с оценками достоверностей этих символов, в декодирующем устройстве помехоустойчивого кода сначала, в зависимости от качества канала связи, оценивают величину s числа наименее достоверных символов помехоустойчивого кода, чтобы вероятность правильного декодирования помехоустойчивого кода была не менее, чем заданная величина, затем символы помехоустойчивого кода сортируют по достоверности, выбирая сначала символы с наибольшей достоверностью, затем символы с меньшей, но следующей по величине достоверностью и так далее, пока не будет набрано n-s наиболее достоверных символов помехоустойчивого кода, далее формируют варианты помехоустойчивого кода, в каждом из которых наименее достоверные символы помехоустойчивого кода принимают всевозможные двоичные комбинации, начиная с комбинации из всех 0 и заканчивая комбинацией из всех 1, а наиболее достоверные символы помехоустойчивого кода остаются неизменными, затем выполняют жесткое декодирование всех вариантов помехоустойчивого кода, и каждый из вариантов декодированного помехоустойчивого кода сравнивают по расстоянию Хемминга с принятым помехоустойчивым кодом и получают совокупность расстояний Хемминга, на выход декодирующего устройства подают помехоустойчивый код, соответствующий минимальному расстоянию Хемминга из совокупности расстояний Хемминга, отличающийся тем, что сначала из s наименее достоверных символов помехоустойчивого кода выбирают максимально возможное число t символов, соответствующих линейно независимым столбцам проверочной матрицы помехоустойчивого кода, эти t символов стирают и формируют 2s-t вариантов помехоустойчивого кода, в которых только s-t наименее достоверных символов помехоустойчивого кода принимают всевозможные двоичные комбинации, начиная с комбинации из всех 0 и заканчивая комбинацией из всех 1, далее выполняют жесткое декодирование сформированных 2s-t вариантов помехоустойчивого кода с исправлением t стираний и на выход декодирующего устройства подают помехоустойчивый код, соответствующий минимальному расстоянию Хемминга из совокупности 2s-t расстояний Хемминга.
2. Способ по п. 1, отличающийся тем, что для s<d, где d - минимальное кодовое расстояние помехоустойчивого кода, принимают t=s, стирают все наименее достоверные символы помехоустойчивого кода и выполняют только одну попытку жесткого декодирования помехоустойчивого кода с исправлением t стираний.
3. Способ по п. 1, отличающийся тем, что для s≥d число t стертых символов помехоустойчивого кода принимают равным рангу матрицы, состоящей из s столбцов проверочной матрицы помехоустойчивого кода, соответствующих наименее достоверным символам помехоустойчивого кода.
4. Способ по п. 1, отличающийся тем, что жесткое декодирование помехоустойчивого кода с исправлением стираний выполняют путем решения системы линейных уравнений относительно неизвестных значений стертых символов.
5. Способ по п. 4, отличающийся тем, что решение системы линейных уравнений относительно неизвестных значений стертых символов осуществляют методом Гаусса исключения неизвестных.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2019127141A RU2725699C1 (ru) | 2019-08-27 | 2019-08-27 | Способ мягкого декодирования помехоустойчивого кода |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2019127141A RU2725699C1 (ru) | 2019-08-27 | 2019-08-27 | Способ мягкого декодирования помехоустойчивого кода |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2725699C1 true RU2725699C1 (ru) | 2020-07-03 |
Family
ID=71510485
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2019127141A RU2725699C1 (ru) | 2019-08-27 | 2019-08-27 | Способ мягкого декодирования помехоустойчивого кода |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2725699C1 (ru) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2746797C1 (ru) * | 2020-11-03 | 2021-04-21 | Акционерное общество "Калужский научно-исследовательский институт телемеханических устройств" | Способ декодирования линейных помехоустойчивых кодов с исправлением стираний |
RU2812043C1 (ru) * | 2023-04-03 | 2024-01-22 | Акционерное общество "Калужский научно-исследовательский институт телемеханических устройств" | Способ мягкого декодирования помехоустойчивого кода |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6654926B1 (en) * | 2000-10-11 | 2003-11-25 | Itran Communications Ltd. | Soft decision maximum likelihood encoder and decoder |
US20050283702A1 (en) * | 2004-06-16 | 2005-12-22 | Yingquan Wu | Soft-decision decoding using selective bit flipping |
RU2327297C2 (ru) * | 2006-03-21 | 2008-06-20 | Федеральное государственное унитарное предприятие "Научно-исследовательский институт "Рубин" | Способ декодирования блоковых кодов со стираниями элементов |
RU2444127C1 (ru) * | 2010-08-24 | 2012-02-27 | Государственное образовательное учреждение высшего профессионального образования "Ульяновский государственный технический университет" | Способ мягкого декодирования систематических блоковых кодов |
RU2546070C1 (ru) * | 2013-11-12 | 2015-04-10 | Открытое акционерное общество "Калужский научно-исследовательский институт телемеханических устройств" | Способ мягкого декодирования помехоустойчивого кода |
RU2580797C1 (ru) * | 2015-03-13 | 2016-04-10 | Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Ульяновский государственный технический университет" | Способ мягкого декодирования блоковых кодов |
-
2019
- 2019-08-27 RU RU2019127141A patent/RU2725699C1/ru active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6654926B1 (en) * | 2000-10-11 | 2003-11-25 | Itran Communications Ltd. | Soft decision maximum likelihood encoder and decoder |
US20050283702A1 (en) * | 2004-06-16 | 2005-12-22 | Yingquan Wu | Soft-decision decoding using selective bit flipping |
RU2327297C2 (ru) * | 2006-03-21 | 2008-06-20 | Федеральное государственное унитарное предприятие "Научно-исследовательский институт "Рубин" | Способ декодирования блоковых кодов со стираниями элементов |
RU2444127C1 (ru) * | 2010-08-24 | 2012-02-27 | Государственное образовательное учреждение высшего профессионального образования "Ульяновский государственный технический университет" | Способ мягкого декодирования систематических блоковых кодов |
RU2546070C1 (ru) * | 2013-11-12 | 2015-04-10 | Открытое акционерное общество "Калужский научно-исследовательский институт телемеханических устройств" | Способ мягкого декодирования помехоустойчивого кода |
RU2580797C1 (ru) * | 2015-03-13 | 2016-04-10 | Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Ульяновский государственный технический университет" | Способ мягкого декодирования блоковых кодов |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2746797C1 (ru) * | 2020-11-03 | 2021-04-21 | Акционерное общество "Калужский научно-исследовательский институт телемеханических устройств" | Способ декодирования линейных помехоустойчивых кодов с исправлением стираний |
RU2812043C1 (ru) * | 2023-04-03 | 2024-01-22 | Акционерное общество "Калужский научно-исследовательский институт телемеханических устройств" | Способ мягкого декодирования помехоустойчивого кода |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Trifonov et al. | Generalized concatenated codes based on polar codes | |
US10992416B2 (en) | Forward error correction with compression coding | |
US9985657B2 (en) | Memory control module and control method | |
US11990921B2 (en) | List decoding of polarization-adjusted convolutional codes | |
GB2445005A (en) | Concatenated code receiver erases inner codewords and corrects them with outer codes to create candidates for correlation with received signal | |
US3831143A (en) | Concatenated burst-trapping codes | |
RU2725699C1 (ru) | Способ мягкого декодирования помехоустойчивого кода | |
Swart et al. | Simulation results for permutation trellis codes using M-ary FSK | |
RU2379841C1 (ru) | Декодер с исправлением стираний | |
EP3737013A1 (en) | Encoding method, decoding method and device | |
RU2295196C1 (ru) | Способ контроля качества канала связи | |
RU2546070C1 (ru) | Способ мягкого декодирования помехоустойчивого кода | |
RU2419966C2 (ru) | Способ декодирования помехоустойчивых каскадных кодов по наиболее достоверным символам внешнего кода | |
RU2608872C1 (ru) | Способ кодирования и декодирования блокового кода с использованием алгоритма Витерби | |
CN112003626B (zh) | 一种基于导航电文已知比特的ldpc译码方法、系统和介质 | |
RU2702724C2 (ru) | Способ совместного арифметического и помехоустойчивого кодирования и декодирования | |
RU2712096C1 (ru) | Способ совместного арифметического и помехоустойчивого кодирования и декодирования | |
RU2734450C2 (ru) | Способ декодирования помехоустойчивых кодов | |
RU2667370C1 (ru) | Способ декодирования линейного каскадного кода | |
RU2812043C1 (ru) | Способ мягкого декодирования помехоустойчивого кода | |
US9020052B2 (en) | MIMO communication method and devices | |
RU2571605C2 (ru) | Способ помехоустойчивого кодирования и декодирования цифровых данных | |
RU2746797C1 (ru) | Способ декодирования линейных помехоустойчивых кодов с исправлением стираний | |
RU2804323C1 (ru) | Способ передачи сообщений с использованием стохастических помехоустойчивых кодов | |
RU2738724C1 (ru) | Способ мягкого декодирования помехоустойчивого кода |