Способ декодирования помехоустойчивого каскадного кода переменной длины

Способ декодирования помехоустойчивого каскадного кода переменной длины относится к области электросвязи и может быть использован для декодирования помехоустойчивого каскадного кода в системах передачи дискретной информации. Технический результат - повышение помехоустойчивости. В предлагаемом способе на передающей стороне формируют либо короткий каскадный код, либо длинный каскадный код. На приемной стороне декодирование каскадного кода начинают с декодирования внутреннего кода длинного каскадного кода и определяют число s слов внутреннего кода каскадного кода, принятых на месте слов внутреннего кода каскадного кода, которые не передают для короткого каскадного кода. В случае, если величина s превышает пороговое значение s1, принимают решение о том, что был принят длинный каскадный код, и осуществляют декодирование внешнего кода длинного каскадного кода. В противном случае, если величина s не превышает порогового значения s1, принимают решение о том, что был принят короткий каскадный код, и декодируют внешний код короткого каскадного кода. Затем по результатам декодирования слов внутреннего кода каскадного кода определяют число s2 слов внутреннего кода каскадного кода, принятых на месте слов внутреннего кода каскадного кода, которые передают как для длинного каскадного кода, так и для короткого каскадного кода, оценивают качество канала связи, и пороговое значение s1 изменяют в зависимости от качества канала связи. При этом качество канала оценивают средней вероятностью приема слов внутреннего кода каскадного кода. 1 з.п. ф-лы.

Реферат

Изобретение относится к области электросвязи и может быть использовано в системах передачи дискретной информации для декодирования помехоустойчивого каскадного кода переменной длины.

Способ, описанный в настоящей заявке, применяется для декодирования каскадного кода, блоковая длина которого заранее не известна на приемной стороне. В частности, способ может использоваться для декодирования каскадных кодов в адаптивных системах передачи информации. В таких системах для обеспечения достоверного приема при изменении помеховой обстановки в канале связи передают помехоустойчивый каскадный код, имеющий различную избыточность и блоковую длину. Приемная сторона может не иметь полной информации об этих параметрах помехоустойчивого каскадного кода. Блоковая длина каскадного кода может принимать несколько различных значений, при этом на приемной стороне предлагаемый способ обеспечивает декодирование каскадного кода независимо от его блоковой длины.

Большая часть реальных каналов связи является нестационарными, то есть состояние таких каналов изменяется со временем. Например, качество цифровых каналов связи ультракоротковолновых и дециметровых диапазонов, в частности спутниковых каналов, изменяется в зависимости от расположения спутниковой группировки, то есть зависит от времени суток. Скорость обработки информации во вновь вводимых линиях связи спутниковых каналов достигает 120 Мбит/с и более, и к тому же передаются большие массивы информации. Для повышения помехоустойчивости приема информации в таких каналах используют каскадные коды. В связи с этим актуальной задачей является разработка способа декодирования каскадного кода переменной длины с высоким быстродействием и с высокой помехоустойчивостью в нестационарных каналах связи.

Известен способ декодирования каскадного кода, при котором на передающей стороне формируют либо короткий каскадный код, либо длинный каскадный код. На приемной стороне сначала выполняют попытку декодирования короткого каскадного кода, и в случае успешного декодирования получают сообщение, в противном случае выполняют попытку декодирования длинного каскадного кода, и в результате получают сообщение [Шабанов В.К. К вопросу о декодировании каскадных кодов переменной длины. Техника средств связи, сер. ТПС, 1988, вып.4].

Однако этот способ имеет низкое быстродействие, поскольку для получения сообщения в общем случае требуется декодирование и короткого, и длинного каскадных кодов, то есть увеличивается общее время декодирования каскадного кода.

Наиболее близким к предлагаемому способу является способ (прототип), при котором на передающей стороне формируют либо короткий каскадный код, либо длинный каскадный код. На приемной стороне декодирование каскадного кода начинают с декодирования внутреннего кода длинного каскадного кода и определяют число s слов внутреннего кода каскадного кода, которые были приняты на месте слов внутреннего кода каскадного кода, которые не передают для короткого каскадного кода. В случае если величина s превышает пороговое значение s1, принимают решение о том, что был принят длинный каскадный код и осуществляют декодирование внешнего кода длинного каскадного кода, в противном случае, если величина s не превышает порогового значения s1, принимают решение о том, что был принят короткий каскадный код и декодируют внешний код короткого каскадного кода. [Патент РФ №2223598, МПК 7 Н 03 М 13/35, приор. 22.04.2002, опубл. 10.02.2004].

Недостатком этого способа является невысокая помехоустойчивость, обусловленная тем, что пороговое значение s1 имеет постоянное значение, определяемое заранее для канала связи постоянного качества.

Цель изобретения - повышение помехоустойчивости каскадного кода переменной длины за счет того, что по результатам декодирования слов внутреннего кода каскадного кода оценивают качество канала связи и в зависимости от качества канала связи изменяют пороговое значение s1.

Для достижения цели предложен способ, заключающийся в том, что на передающей стороне формируют либо короткий каскадный код, либо длинный каскадный код. На приемной стороне декодирование каскадного кода начинают с декодирования внутреннего кода длинного каскадного кода и определяют число s слов внутреннего кода каскадного кода, принятых на месте слов внутреннего кода каскадного кода, которые не передают для короткого каскадного кода. В случае если величина s превышает пороговое значение s1, принимают решение о том, что был принят длинный каскадный код, и осуществляют декодирование внешнего кода длинного каскадного кода, в противном случае, если величина s не превышает порогового значения s1, принимают решение о том, что был принят короткий каскадный код, и декодируют внешний код короткого каскадного кода. Новым является то, что по результатам декодирования слов внутреннего кода каскадного кода, определяют число s2 слов внутреннего кода каскадного кода, принятых на месте слов внутреннего кода каскадного кода, которые передают как для длинного каскадного кода, так и для короткого каскадного кода, по числу s2 слов внутреннего кода каскадного кода оценивают качество канала связи, и пороговое значение s1 изменяют в зависимости от качества канала связи. При этом качество канала связи оценивают средней вероятностью приема слов внутреннего кода каскадного кода.

Предлагаемый способ декодирования каскадного кода переменной длины реализуется следующим образом.

На передающей стороне формируют либо короткий каскадный код с блоковой длиной n=n2, либо длинный каскадный код с блоковой длиной n=n1 (n1>n2). Для этого на передающей стороне исходное сообщение объемом k m-ичных (m>1) символов вначале кодируют m-ичным помехоустойчивым кодом, например m-ичным помехоустойчивым кодом Рида-Соломона. Код Рида-Соломона является внешним кодом или кодом первой ступени помехоустойчивого каскадного кода.

В результате кодирования информации получают кодовое слово кода Рида-Соломона (n, k), информационная длина которого равна k, а блоковая - n символов.

Далее информацию кодируют двоичным кодом, например двоичным кодом Боуза-Чоудхури-Хоквингема (БЧХ-коды) с проверочным полиномом h(x). Код БЧХ является внутренним кодом или кодом второй ступени помехоустойчивого каскадного кода. Код БЧХ имеет параметры: nb - блоковая длина кода, kb - информационная длина кода.

Исходной информацией для каждого слова кода БЧХ являются символы кода Рида-Соломона, рассматриваемые как последовательность двоичных символов. В результате кодирования кодом БЧХ получают n двоичных слов кода БЧХ (nb, kb) или двоичную последовательность с1. Эта двоичная последовательность является помехоустойчивым каскадным кодом.

Далее символы каскадного кода, преобразованные в сигнал, имеющий аналоговую форму, поступают в канал связи. В реальном канале связи возможно искажение передаваемого сигнала и это приводит к тому, что каскадный код будет принят с ошибками.

Каскадный код, поступающий на вход приемника, может иметь блоковую длину, равную либо n1, либо n2 (n1>n2). Декодирующему устройству каскадного кода заранее неизвестна блоковая длина каскадного кода.

Декодирование каскадного кода начинают с декодирования слов внутреннего кода каскадного кода. Декодирование слов внутреннего кода выполняют на длине каскадного кода, имеющего большую длину n1. При этом n2 слов, соответствующие местоположению слов внутреннего кода в коротком каскадном коде, передают и для длинного, и для короткого каскадного кода, а оставшиеся n1-n2 слов передают только в случае передачи длинного каскадного кода. В результате декодирования слов внутреннего кода каскадного кода получают символы внешнего кода каскадного кода, при этом символы внешнего кода каскадного кода, соответствующие словам внутреннего кода каскадного кода, ошибки в которых обнаружены, но не могут быть исправлены, стирают. Обозначим через величину s число слов внутреннего кода, которые были приняты на месте слов внутреннего кода каскадного кода, которые не передают в случае короткого каскадного кода. При приеме длинного каскадного кода величина s может изменяться в диапазоне от 0 до n1-n2 в зависимости от качества канала связи. Количество принятых кодовых слов из числа переданных n1-n2 кодовых слов для длинного каскадного кода выражается уравнением:

где γ - вероятность приема слов внутреннего кода каскадного кода.

Вероятность приема слов внутреннего кода каскадного кода γ характеризует качество канала связи, поскольку при изменении качества канала изменяется количество принятых кодовых слов внутреннего кода каскадного кода. При декодировании внутреннего кода каскадного кода подсчитывают число s2 слов внутреннего кода каскадного кода, принятых на месте слов внутреннего кода каскадного кода, которые передают как для длинного каскадного кода, так и для короткого каскадного кода.

Вероятность приема слов внутреннего кода каскадного кода γ будем оценивать частотой приема слов внутреннего кода по формуле:

При приеме короткого каскадного кода величина s определяется долей набора трансформированных слов внутреннего кода при отсутствии передачи каскадного кода (на фоне шума)

где β - вероятность необнаруженной ошибки на фоне шума в словах внутреннего кода каскадного кода.

Вероятность β необнаруженной ошибки на фоне шума оценивают выражением [Элементы теории передачи информации. Под. ред. Л.П.Пуртова, М.: Связь, 1972, стр.127]:

Как правило, nb-kb≫1 и справедливо неравенство γ>β.

Критерием, по которому определяют наличие короткого или длинного каскадного кода в канале связи, будет значение величины s. Разность

ε=s∂л-sкор=γ(n1-n2)-β(n1-n2)=(γ-β)(n1-n2)>0,

так как γ-β>0 и n1-n2>0.

Поэтому существует некоторое пороговое значение

при превышении которого определяют наличие длинного каскадного кода в канале связи, то есть если s>s1, то передается длинный каскадный код, при s≤s1 - короткий каскадный код.

Далее, соответственно, декодируют длинный или короткий внешний код каскадного кода.

Выбор величины оптимального порогового значения s1 имеет немаловажное значение при реализации предлагаемого способа. В нестационарном канале связи оценка величины порогового значения s1 должна изменяться в зависимости от качества канала связи в текущий момент времени.

Подставляя в формулу (5) значения переменных из уравнений (1)-(3), получим следующую оценку величины порогового значения s1:

В предлагаемом способе оценку величины порогового значения s1 осуществляют по формуле (6). Эта оценка вычисляется в каждом сеансе приема каскадного кода после определения числа s2 слов внутреннего кода каскадного кода, принятых на месте слов внутреннего кода каскадного кода, которые передают как для длинного каскадного кода, так и для короткого каскадного кода, и оценки качества канала связи s2/n2 (оценки средней вероятности приема слов внутреннего кода каскадного кода).

На практике вероятность ложного набора слова внутреннего кода на фоне шума близка к нулю, а вероятность приема слов внутреннего кода лежит в диапазоне 0,5...1 и величина порогового значения s1 в соответствии с уравнением (6) будет находиться в диапазоне значений

Рассмотрим пример. В канале связи сообщения передают помехоустойчивым каскадным кодом, внутренним кодом которого является двоичный код БЧХ(31, 16), а внешним кодом - код Рида-Соломона, имеющий две градации блоковой длины. Для канала худшего качества применяют длинный код с блоковой длиной n1=32, для канала лучшего качества - короткий код с блоковой длиной n2=18. В очередном сеансе приема каскадного кода принято s2=10 слов внутреннего кода и в соответствии с формулой (6) величина порогового значения s1=4,38. Таким образом, при s≤4 декодируют короткий каскадный код, при s>4 - длинный.

В другом примере рассмотрим случай, когда сообщения передают тем же каскадным кодом, но ошибки в канале связи практически отсутствуют. Такая ситуация возникает в режиме контроля аппаратуры. В этом случае каскадный код передают по "шлейфу", и при безошибочном приеме каскадного кода s2=n2=18. С другой стороны, в промежутках времени между передачей каскадных кодов для контроля работы тактовой синхронизации передают двоичную последовательность символов, представляющую собой меандр. При передаче меандра каскадный код "набирает" на приемной стороне 3 трансформированных слова внутреннего кода и величина порогового значения, согласно формуле (6) s1=8,5, то есть при s≤8 декодируют короткий каскадный код, при s>8 - длинный.

Предлагаемый способ обеспечивает более высокую достоверность определения короткого или длинного каскадного кода по сравнению с прототипом, что увеличивает помехоустойчивость приема каскадного кода с переменными параметрами. В известном способе величина порогового значения s1 выбиралась постоянной, исходя из некоторого среднего состояния канала связи. В рассматриваемом способе качество канала связи оценивают в каждом сеансе передачи каскадного кода и при изменении качества канала также изменяют (адаптируют) величину порогового значения s1, что позволяет использовать способ в нестационарных каналах связи.

Заявленное техническое решение расширяет арсенал средств данного назначения, увеличивает помехоустойчивость способа при работе в реальных каналах связи.

Достигаемым техническим результатом предлагаемого способа декодирования помехоустойчивого каскадного кода переменной длины является повышение его помехоустойчивости.

1. Способ декодирования помехоустойчивого каскадного кода переменной длины, заключающийся в том, что на передающей стороне формируют либо короткий каскадный код, либо длинный каскадный код, на приемной стороне декодирование каскадного кода начинают с декодирования внутреннего кода длинного каскадного кода и определяют число s слов внутреннего кода каскадного кода, принятых на месте слов внутреннего кода каскадного кода, которые не передают для короткого каскадного кода, в случае, если величина s превышает пороговое значение s1, принимают решение о том, что был принят длинный каскадный код и осуществляют декодирование внешнего кода длинного каскадного кода, в противном случае, если величина s не превышает порогового значения s1, принимают решение о том, что был принят короткий каскадный код и декодируют внешний код короткого каскадного кода, отличающийся тем, что по результатам декодирования слов внутреннего кода каскадного кода, определяют число s2 слов внутреннего кода каскадного кода, принятых на месте слов внутреннего кода каскадного кода, которые передают как для длинного каскадного кода, так и для короткого каскадного кода, по числу s2 слов внутреннего кода каскадного кода оценивают качество канала связи и пороговое значение s1 изменяют в зависимости от качества канала связи.

2. Способ по п.1, отличающийся тем, что качество канала связи оценивают средней вероятностью приема слов внутреннего кода каскадного кода.