Изобретение относится к области электросвязи и может быть использовано в системах передачи для декодирования информации, закодированной помехоустойчивым каскадным кодом переменной блоковой длины.
Способ, описанный в настоящей заявке, применяется для декодирования информации, закодированной помехоустойчивым каскадным кодом, блоковая длина которого заранее неизвестна на приемной стороне. В частности, способ может использоваться для декодирования информации, закодированной помехоустойчивым каскадным кодом, в адаптивных системах передачи информации. Блоковая длина помехоустойчивого каскадного кода для кодирования информации может иметь несколько различных значений, при этом на приемной стороне предлагаемый способ обеспечивает надежное декодирование для получения исходной информации благодаря более точному определению блоковой длины.
Известен способ декодирования информации, закодированной помехоустойчивым каскадным кодом, при котором на передающей стороне формируют либо информацию, закодированную помехоустойчивым коротким каскадным кодом, либо информацию, закодированную помехоустойчивым длинным каскадным кодом. На приемной стороне сначала выполняют декодирование информации, закодированной помехоустойчивым коротким каскадным кодом, и в случае успешного декодирования получают исходную информацию. В противном случае дополнительно декодируют информацию, закодированную помехоустойчивым длинным каскадным кодом, в результате чего получают исходную информацию [Шабанов В.К. К вопросу о декодировании каскадных кодов переменной длины. Техника средств связи, сер. ТПС, 1988, вып.4].
Однако этот способ имеет существенный недостаток, так как для получения исходной информации требуется декодирование информации, закодированной помехоустойчивым коротким каскадным кодом, а также информации, закодированной помехоустойчивым длинным каскадным кодом, то есть необходимо выполнение двух операций декодирования, что приводит либо к снижению быстродействия, если эти операции выполнять последовательно одним оборудованием, либо к усложнению оборудования для выполнения двух операций декодирования одновременно, то есть параллельно.
Наиболее близким к предлагаемому способу декодирования информации, закодированной помехоустойчивым каскадным кодом переменной блоковой длины, является способ (прототип), заключающийся в том, что на передающей стороне формируют либо информацию, закодированную помехоустойчивым коротким каскадным кодом, либо информацию, закодированную помехоустойчивым длинным каскадным кодом. На приемной стороне декодирование начинают с информации, закодированной внутренним кодом помехоустойчивого длинного каскадного кода, и определяют число S слов информации, закодированных внутренним кодом помехоустойчивого длинного каскадного кода, которые не передают для информации, закодированной помехоустойчивым коротким каскадным кодом. Если величина S превышает пороговое значение S1, то принимают решение о том, что была передана информация, закодированная помехоустойчивым длинным каскадным кодом, и осуществляют декодирование информации, закодированной внешним кодом помехоустойчивого длинного каскадного кода. В противном случае, если величина S не превышает порогового значения S1, то принимают решение о том, что была передана информация, закодированная помехоустойчивым коротким каскадным кодом, и декодируют информацию, закодированную внешним кодом помехоустойчивого короткого каскадного кода. По результатам декодирования слов информации, закодированной внутренним кодом помехоустойчивого каскадного кода, определяют число S2 слов информации, закодированной внутренним кодом помехоустойчивого каскадного кода, которые передают как для информации, закодированной помехоустойчивым длинным каскадным кодом, так и для информации, закодированной помехоустойчивым коротким каскадным кодом. По числу S2 слов информации, закодированной внутренним кодом помехоустойчивого каскадного кода, определяют качество канала и изменяют пороговое значение S1 в зависимости от качества канала. При этом качество канала оценивают средней вероятностью правильного приема слов информации, закодированной внутренним кодом помехоустойчивого каскадного кода. [Патент РФ №2280325, МПК 7 Н03М 13/35, Квашенников В.В. и др. Способ декодирования помехоустойчивого каскадного кода переменной длины. Приор. 15.02.2005 г., опубл. 20.07.2006 г.]
Недостатком этого способа является то, что для определения переменной блоковой длины информации, закодированной помехоустойчивым каскадным кодом, необходимо вычислить пороговое значение S1, зависящее от качества канала. Зависимость значения S1 от качества канала при вероятности ошибок более 3·10-2 может привести к ошибке в вычислении значения S1, что приведет к получению трансформаций для слов информации, закодированной внутренним кодом помехоустойчивого каскадного кода, и к ошибке при декодировании.
Цель изобретения - повышение достоверности декодирования информации, закодированной помехоустойчивым каскадным кодом переменной блоковой длины, за счет того, что более точно определяется переменная блоковая длина помехоустойчивого каскадного кода, а затем по результатам сортировки наиболее качественных слов информации, закодированной внутренним кодом помехоустойчивого каскадного кода, выбирается оптимальный режим декодирования принятой информации, закодированной помехоустойчивым каскадным кодом, с учетом его блоковой длины.
Для достижения цели предложен способ, заключающийся в том, что на передающей стороне формируют информацию, закодированную либо помехоустойчивым коротким каскадным кодом, либо помехоустойчивым длинным каскадным кодом, на приемной стороне декодирование начинают с информации, закодированной внутренним кодом помехоустойчивого длинного каскадного кода, отличающийся тем, что блоковую длину принятого помехоустойчивого каскадного кода более точно определяют на начальном этапе декодирования во время снятия фазирующей и нумерующей последовательностей при считывании информации из накопителя на месте слов внутреннего каскадного кода, которые не передают для информации, закодированной помехоустойчивым коротким каскадным кодом, сравнениями с известными последовательностями с учетом возможных искажений информации в канале, а затем с учетом принятой блоковой длины помехоустойчивого каскадного кода проводят сортировку и по результатам набора наиболее качественных слов внутреннего кода выбирают оптимальный алгоритм декодирования внешнего кода.
На приемной стороне информация, закодированная помехоустойчивым каскадным кодом, поступает в накопитель, состоящий, например, из двух оперативных запоминающих устройств (ОЗУ) с объемами памяти, равными максимальной блоковой длине информации каждое.
После определения конца блока информации, закодированной помехоустойчивым каскадным кодом, начинается процесс декодирования этого блока информации из соответствующего ОЗУ, при этом на второе ОЗУ продолжает поступать информация из канала. До окончания каждого декодирования блока информации из соответствующего ОЗУ производится очистка этого ОЗУ от предыдущей информации, например, записью логических нулей во все ячейки. Этим обеспечивается правильное декодирование при приеме информации, закодированной помехоустойчивым коротким кодом. Кроме того, заранее известная информация в ОЗУ (логические нули или синхронизирующая последовательность из чередующихся логических нулей и единиц) за пределами объема, соответствующего записанной информации, закодированной помехоустойчивым коротким каскадным кодом, легко определяется простейшим побитным сравнением последовательностей.
Предлагаемый способ декодирования информации, закодированной помехоустойчивым каскадным кодом переменной блоковой длины, реализуется следующим образом.
На передающей стороне формируется информация, закодированная помехоустойчивым каскадным кодом, которая представляет собой сумму по модулю два трех последовательностей: последовательности внутренних двоичных кодов каскадного кода c1, синхронизирующей двоичной последовательности с2 и последовательности c3, нарушающей циклические свойства исходного кода.
Сначала на передающей стороне исходная информация объемом k m-ичных (m>1) символов кодируется m-ичным помехоустойчивым кодом, например m-ичным помехоустойчивым кодом Рида-Соломона (PC). Код PC является внешним кодом или кодом первой ступени помехоустойчивого каскадного кода. В результате кодирования исходной информации получают кодовое слово кода PC (n, k), информационная длина которого равна k, а блоковая - n символов.
Далее информацию, состоящую из кодовых слов кода PC (n, k), кодируют двоичным кодом, например двоичным кодом Боуза-Чоудхури-Хоквингема (БЧХ-коды) с проверочным многочленом h1(x). Код БЧХ является внутренним кодом или кодом второй ступени помехоустойчивого каскадного кода. Код БЧХ имеет параметры: n1 - блоковая длина кода, k1 - информационная длина кода.
Информацией для каждого слова кода БЧХ являются символы кода PC, рассматриваемые как последовательность двоичных символов. В результате кодирования кодом БЧХ получают n двоичных слов кода БЧХ (n1, k1).
Далее осуществляют сложение по модулю два синхронизирующей последовательности с2 со словами кода БЧХ. В качестве синхронизирующей последовательности выбирают двоичный код с блоковой длиной n1 и информационной длиной k2, например код Рида-Маллера (РМ) 1-го порядка (последовательность максимального периода) с проверочным многочленом h2(x). Между номерами слов кода БЧХ в каскадном коде и информационной частью синхронизирующей последовательности (кода РМ) устанавливается взаимно однозначное соответствие. Первое слово кода БЧХ складывается с последовательностью, полученной в результате кодирования первым кодом РМ, второе - в результате кодирования вторым кодом РМ и так далее. Такая операция сложения выполняется со всеми словами кода БЧХ. Если проверочные многочлены суммируемых кодов h1(x) и h2(x) взаимно просты и являются делителями двучлена xn1+1, в результате таких операций будет получено n слов циклического кода БЧХ с блоковой длиной n1 и информационной длиной k1+k2. Этот код будет иметь минимальное кодовое расстояние, равное
d=2·log2(r),
где r=n1-k1-k2 - число проверочных символов кода,
и обладать корректирующими свойствами.
Третья последовательность c3, с которой складываются слова кода БЧХ, будет постоянная последовательность длиной n1 бит для всех слов кода БЧХ, нарушающая циклические свойства кода БЧХ. Такой последовательностью может быть любая последовательность, не являющаяся кодовым словом кода БЧХ, например последовательность 10000…000.
Информация, закодированная помехоустойчивым каскадным кодом, в виде суммы трех последовательностей поступает на приемной стороне в накопитель и одновременно в схему цикловой синхронизации для определения конца блока информации. [А.Н.Забабурин, В.В.Квашенников, С.А.Трушин. Устройство цикловой синхронизации помехоустойчивого каскадного кода для каналов связи низкого качества. Труды 5 Российской научно-технической конференции «Новые информационные технологии в системах связи и управления». Часть 2. Калуга: Издательство ЦНТИ, 2006 - с.26-32.]
После определения конца блока информации начинается считывание из соответствующего ОЗУ всего объема информации и одновременное декодирование внутренних слов кода БЧХ с оценкой их качества. Для информации, закодированной помехоустойчивым коротким кодом, в случае правильного непрерывного приема в незаполненном объеме ОЗУ содержится нулевая информация. При дополнительной передаче синхронизирующей последовательности, например, в виде чередующихся логических нулей и единиц, до начала передачи информации, закодированной помехоустойчивым каскадным кодом, в начале ОЗУ будет содержаться синхронизирующая последовательность.
Обычно синхронизирующая последовательность представляет собой 200 «точек», то есть 400 бит информации в виде чередующихся логических нулей и единиц. Блок информации, закодированной помехоустойчивым длинным кодом РС-БЧХ (32, 16), содержит последовательность длиной 992 бита, а блок информации, закодированной помехоустойчивым коротким кодом РС-БЧХ (18, 16), содержит 558 бит, то есть блоковая длина информации длинного кода больше блоковой длины информации короткого кода на 434 бита, что превышает синхронизирующую последовательность из «точек» на 34 бита. Следовательно, для определения «точек», записанных в ОЗУ, необходимо отсчитать от начала декодирования, например, 62 бита, что соответствует длине двух слов кода БЧХ, а затем запустить одновременно два счетчика, которые должны считать сравнения чередующихся логических нулей и единиц. Тестовую последовательность в виде меандра, необходимую для сравнения с синхронизирующей последовательностью, формирует одноразрядный двоичный счетчик.
В общем случае синхронизирующая последовательность может стартовать либо с логического нуля, либо с логической единицы, поэтому две такие последовательности будут инверсными по отношению друг к другу. В начале декодирования после пропуска двух слов кода БЧХ в схеме также запускается третий двоичный счетчик для формирования тестовой последовательности из чередующихся логических нулей и единиц длиной 392 бита, которая должна сравниваться с синхронизирующей последовательностью, записанной в ОЗУ, и подсчитываться одним из двух счетчиков, на входе которого определяется совпадение бит последовательностей. В канале при передаче возможны искажения информации, что следует учесть в способе определения синхронизирующей последовательности. Например, если максимальная вероятность ошибки в канале Рош=5·10-2, то в последовательности из 392 бит могут исказиться не более 19 бит, поэтому если счетчик досчитает до значения 373 (392-19=373), то это значение можно считать пороговым при определении синхронизирующей последовательности и, следовательно, приеме информации, закодированной помехоустойчивым коротким каскадным кодом. В случае приема информации, закодированной помехоустойчивым коротким кодом, для определения нулевой информации в начальном объеме ОЗУ требуется четвертый счетчик, который запускается с началом каждого декодирования. Если в начале декодирования четвертый счетчик фиксирует 434 логических нуля, считываемых из ОЗУ, то это также соответствует приему информации, закодированной помехоустойчивым коротким каскадным кодом. Если в начале декодирования при считывании информации из ОЗУ фиксируется либо менее 373 бит чередующихся логических нулей и единиц, либо менее 434 логических нулей, то это означает прием информации, закодированной помехоустойчивым длинным каскадным кодом.
Основным требованием при передаче является отсутствие разрывов между блоками информации, закодированной помехоустойчивым каскадным кодом, поэтому «шум» может появляться в ОЗУ только в паузах между передачей информации.
Определенную трудность в определении блоковой длины вызывает случай, когда для информации, закодированной помехоустойчивым коротким каскадным кодом, в начале ОЗУ присутствует «шум», который теоретически может появиться при невозможности определения синхронизации при приеме отдельных блоков информации, закодированной помехоустойчивым коротким каскадным кодом. В настоящее время устройства цикловой синхронизации обеспечивают с вероятностью, близкой к единице, синхронизацию для каналов с вероятностью ошибки Рош=10-1. [А.Н.Забабурин, В.В.Квашенников, С.А.Трушин. Устройство цикловой синхронизации помехоустойчивого кода для каналов связи низкого качества. Труды 5 Российской научно-технической конференции «Новые информационные технологии в системах связи и управления». Часть 2. Калуга: Издательство ЦНТИ, 2006 - с.26-32.]
Очистка ОЗУ проводится каждый раз при начальной установке и при считывании полного объема информации из ОЗУ. Поэтому появление в ОЗУ шума для информации, закодированной помехоустойчивым коротким каскадным кодом, при работе на реальных каналах (Рош<<10-1) маловероятно.
После определения конца блока информации сначала проводится декодирование внутреннего каскадного кода БЧХ с определением значения качества приема для каждого слова кода БЧХ. Затем проводится процедура сортировки, то есть отбор слов кода БЧХ с наилучшими показателями качества их приема для последующего декодирования внешнего кода PC.
Так как по значениям счетчиков до проведения сортировки уже известна блоковая длина информации, то при проведении процедуры сортировки следует учитывать, что в ОЗУ на месте отсутствующих слов кода БЧХ значения логических нулей при декодировании внутреннего кода БЧХ для информации, закодированной помехоустойчивым коротким каскадным кодом, могут давать трансформации, поэтому эти трансформации из набора слов кода БЧХ, отбираемых для декодирования кода PC, необходимо игнорировать.
По числу отобранных слов кода БЧХ определяется наиболее оптимальный алгоритм декодирования кода PC.
Рассмотрим пример. В канале передают информацию, закодированную помехоустойчивым каскадным кодом, внутренним кодом которого является двоичный код БЧХ (31, 16), а внешним кодом - код PC. Для канала низкого качества применяют длинный код с блоковой длиной n1=32, для канала высокого качества - короткий код с блоковой длиной n2=18.
При отборе во время сортировки только восемнадцати слов кода БЧХ возможны два алгоритма декодирования:
- по восемнадцати словам с возможным исправлением одной трансформации;
- по шестнадцати наиболее качественным словам без исправления трансформаций.
При сортировке слов для информации, закодированной помехоустойчивым коротким каскадным кодом, отбирают слова только с номерами от 14 до 32, а слова с номерами, имеющими значения менее 14, игнорируют, так как такие слова дают трансформации, соответствующие словам кода БЧХ с тремя ошибками в третьем, седьмом и десятом номерах. Попадание трансформаций в отобранные при сортировке слова кода БЧХ могут приводить к неправильному декодированию внешнего кода PC.
Возможности декодирования кода PC по 32 словам кода БЧХ позволяют исправить до восьми возможных трансформаций.
Предлагаемый способ не требует полного декодирования слов внутреннего каскадного кода информации, закодированной помехоустойчивым каскадным кодом, для определения блоковой длины помехоустойчивого каскадного кода. В известном способе для определения блоковой длины помехоустойчивого каскадного кода в каждом сеансе приема информации должна адаптироваться величина первого S1, что требует выполнения определенной процедуры вычислений, зависящей от качества канала. В предлагаемом способе блоковую длину помехоустойчивого каскадного кода можно более точно определить по известным последовательностям. Эта процедура не зависит от качества реальных каналов связи, и ее алгоритм определяется с учетом вероятности ошибки в каналах низкого качества. Знание блоковой длины помехоустойчивого каскадного кода позволяет при сортировке слов кода БЧХ избежать попадания трансформаций в отбираемые по качеству слова кода БЧХ, что исключает ошибки при декодировании для получения исходной информации. Предлагаемый способ позволяет также по результатам сортировки слов кода БЧХ выбрать оптимальный алгоритм декодирования внешнего кода PC.
Предлагаемый способ повышает достоверность декодирования информации при работе в реальных каналах.
название | год | авторы | номер документа |
---|---|---|---|
СПОСОБ КОДОВОЙ ЦИКЛОВОЙ СИНХРОНИЗАЦИИ | 2011 |
|
RU2450436C1 |
УСТРОЙСТВО КОДОВОЙ ЦИКЛОВОЙ СИНХРОНИЗАЦИИ | 2008 |
|
RU2383104C2 |
УСТРОЙСТВО ДЕКОДИРОВАНИЯ С МЯГКИМИ РЕШЕНИЯМИ ДЛЯ ДВУХСТУПЕНЧАТОГО КАСКАДНОГО КОДА | 2012 |
|
RU2485683C1 |
Способ устойчивой кодовой цикловой синхронизации при применении жестких решений | 2022 |
|
RU2784953C1 |
УСТРОЙСТВО КОДОВОЙ ЦИКЛОВОЙ СИНХРОНИЗАЦИИ С МЯГКИМИ РЕШЕНИЯМИ | 2010 |
|
RU2428801C1 |
Способ передачи многоблочных сообщений каскадным кодом в комплексах связи | 2017 |
|
RU2671989C1 |
Способ кодовой цикловой синхронизации для каскадного кода при применении жестких решений | 2016 |
|
RU2633148C2 |
Способ кодовой цикловой синхронизации для каскадного кода при применении жестких решений | 2021 |
|
RU2759801C1 |
СПОСОБ УСТОЙЧИВОЙ КОДОВОЙ ЦИКЛОВОЙ СИНХРОНИЗАЦИИ ПРИ ПРИМЕНЕНИИ ЖЕСТКИХ И МЯГКИХ РЕШЕНИЙ И МОДУЛЯЦИИ ПО ТИПУ СТЫКА С1-ФЛ | 2023 |
|
RU2812964C1 |
Способ кодовой цикловой синхронизации для каскадного кода Рида-Соломона и Боуза-Чоудхури-Хоквингема [РС(32,16,17), БЧХ(31,16,7)] при одновременном применении жестких и мягких решений | 2020 |
|
RU2747623C1 |
Изобретение относится к области электросвязи и может быть использовано в системах передачи дискретной информации. Технический результат - повышение достоверности при работе в реальных каналах. Для этого в способе на передающей стороне формируют либо информацию, закодированную помехоустойчивым коротким каскадным кодом, либо информацию, закодированную помехоустойчивым длинным каскадным кодом. На приемной стороне декодирование начинают с информации, закодированной внутренним кодом помехоустойчивого длинного каскадного кода, и во время снятия фазирующей и нумерующей последовательностей при считывании информации из накопителя на месте слов внутреннего кода, которые не передают для информации, закодированной помехоустойчивым коротким каскадным кодом, сравнениями с известными последовательностями с учетом возможных искажений информации в канале более точно определяют блоковую длину принятого помехоустойчивого каскадного кода, а затем по результатам сортировки наиболее качественных слов внутреннего кода выбирают оптимальный алгоритм декодирования внешнего кода.
Способ декодирования информации, закодированной помехоустойчивым каскадным кодом переменной блоковой длины, заключающийся в том, что на передающей стороне формируют информацию, закодированную либо помехоустойчивым коротким каскадным кодом, либо помехоустойчивым длинным каскадным кодом, на приемной стороне декодирование начинают с информации, закодированной внутренним кодом помехоустойчивого длинного каскадного кода, отличающийся тем, что блоковую длину принятого помехоустойчивого каскадного кода более точно определяют на начальном этапе декодирования во время снятия фазирующей и нумерующей последовательностей при считывании информации из накопителя на месте слов внутреннего каскадного кода, которые не передают для информации, закодированной помехоустойчивым коротким каскадным кодом, сравнениями с известными последовательностями с учетом возможных искажений информации в канале, а затем с учетом принятой блоковой длины помехоустойчивого каскадного кода проводят сортировку и по результатам набора наиболее качественных слов внутреннего кода выбирают оптимальный алгоритм декодирования внешнего кода.
СПОСОБ ДЕКОДИРОВАНИЯ ПОМЕХОУСТОЙЧИВОГО КАСКАДНОГО КОДА ПЕРЕМЕННОЙ ДЛИНЫ | 2005 |
|
RU2280325C1 |
СПОСОБ ДЕКОДИРОВАНИЯ ПОМЕХОУСТОЙЧИВОГО КАСКАДНОГО КОДА ПЕРЕМЕННОЙ ДЛИНЫ | 2002 |
|
RU2223598C2 |
УСТРОЙСТВО ДЛЯ ДЕКОДИРОВАНИЯ ЛИНЕЙНЫХ КОДОВ | 1992 |
|
RU2035123C1 |
ДЕКОДИРУЮЩЕЕ УСТРОЙСТВО ПОМЕХОУСТОЙЧИВОГО КАСКАДНОГО КОДА ПЕРЕМЕННОЙ ДЛИНЫ | 2005 |
|
RU2304841C2 |
СПОСОБ ПЕРЕДАЧИ ИНФОРМАЦИИ С ИСПОЛЬЗОВАНИЕМ АДАПТИВНОГО ПОМЕХОУСТОЙЧИВОГО КОДИРОВАНИЯ | 2005 |
|
RU2299515C1 |
УСТРОЙСТВО ДЛЯ РАЗГРУЗКИ СЫПУЧИХ МАТЕРИАЛОВ ИЗ ЗАКРЫТОГО ХРАНИЛИЩА И СПОСОБ ЕЕ ОСУЩЕСТВЛЕНИЯ | 1992 |
|
RU2076837C1 |
Способ производства анодной массы | 1983 |
|
SU1168633A1 |
US 5446747 A, 29.08.1995 | |||
US 5537427 A, 16.07.1996. |
Авторы
Даты
2009-07-10—Публикация
2007-10-09—Подача