Настоящее изобретение относится, в основном, к устройству и способу опережающей коррекции ошибок (ОКО) в системе цифровой связи и, в частности, к устройству и способу турбодекодирования.
В общих чертах, турбокоды используются для высокоскоростной передачи данных, особенно в 1xEV-DO (эволюция, только данные) или в 1xEV-DV (эволюция, данные и речь). Берру (Berrou) и др. предложили турбокоды в 1993 г. Турбокодер представляет собой параллельное соединение двух составных рекурсивных систематических сверточных (РСС) кодеров со случайным перемежителем между ними. Таким образом, турбокод получается посредством кодирующих информационных битов и перемеженных информационных битов в составных РСС-кодерах. Турбодекодирование включает в себя последовательное соединение двух составных декодеров, каждый для итеративного декодирования, обменивая его внешнюю информацию с другим составным декодером. Существует три алгоритма, применяемых для каждого составного декодера: алгоритм Лог-МАВ, Макс-Лог-МАВ и алгоритм Витерби с мягкими решениями (АВМР).
Алгоритм Лог-МАВ представляет собой осуществление в логарифмической области алгоритма МАВ (алгоритма максимума апостериорной вероятности), который является оптимальным для декодирования информационного слова в решетке. Алгоритм Макс-Лог-МАВ легко получается из алгоритма Лог-МАВ посредством аппроксимации вычисления метрик. Несмотря на преимущество простого осуществления по сравнению с алгоритмом Лог-МАВ, алгоритм Макс-Лог-МАВ приводит к ухудшению рабочих характеристик, когда в приемнике возможно точное отношение сигнал-шум (ОСШ).
Для алгоритма Лог-МАВ вычисляются метрики состояния и логарифмическое отношение правдоподобия (ЛОП). Метрики состояния α и β для состояния (s и s') в решетке в момент k времени декодирования находятся в рекурсивном отношении, выраженном как
(1)
где γ - метрика ветви, определяемая символом, принимаемым по каналу. Используя метрики состояния и метрику ветви, ЛОП k-го символа вычисляется по формуле
,
где (2)
В уравнении (2) Mn(i) представляет собой i-ую метрику с расположением в убывающем порядке метрик (log(αk-1(s')γk(s',s)βk(s))) для информационного символа n (0 или 1) во множестве состояний (s, s') в момент k времени. Следовательно, M0(0) и M1(0) являются наилучшими метриками для информационного символа 1 и 0 в момент k времени, и fc представляет собой корректирующую величину, определяемую разностью между наилучшей метрикой и другими метриками для каждого информационного символа. Следовательно, ЛОП обновляется, используя разность наилучших метрик между информационными символами 0 и 1 в момент k времени и корректирующей величиной fc.
Итак, алгоритм Лог-МАВ генерирует все метрики состояния в решетке для каждого составного декодера по уравнению (1) и вычисляет ЛОП кодового символа в решетке, используя его метрики состояния по уравнению (2). Каждый составной декодер подает внешнюю информацию, полученную из ЛОП, на другой составной декодер для итеративного декодирования. Таким образом выполняется турбодекодирование.
Алгоритм Макс-Лог-МАВ представляет собой упрощенный вариант алгоритма Лог-МАВ посредством приведения вычисления метрик состояния по уравнению (1) к максимальной эффективности, выраженной как
(3)
Аналогичным образом, ЛОП k-го символа декодирования просто вычисляется посредством максимальной эффективности. ЛОП обновляется, используя только разность наилучших метрик, предположив fc равной 0. Таким образом,
(4)
Итак, алгоритм Макс-Лог-МАВ производит поиск всех метрик состояния в решетке для каждого составного декодера посредством максимальной эффективности по уравнению (3) и вычисляет ЛОП кодового символа в решетке, используя разность наилучших метрик между информационными символами 0 и 1 по уравнению (4). Внешняя информация, полученная от ЛОП, подается на другой составной декодер для итеративного декодирования. Таким образом выполняется турбодекодирование.
Так называемый алгоритм Макс-Лог-МАВ с коэффициентом обратной связи (КОС) учитывает дополнительный коэффициент, полученный из ЛОП, вычисленного по уравнению (4), для улучшения рабочих характеристик декодирования алгоритма Макс-Лог-МАВ. Весовой коэффициент, умножаемый как коэффициент обратной связи, составляет примерно 0,588235 и применяется только к внешней информации от второго составного декодера.
Так как алгоритм Лог-МАВ представляет собой осуществление в логарифмической области оптимального посимвольного алгоритма декодирования МАВ, то он работает также как и алгоритм МАВ. Однако, когда алгоритм Лог-МАВ осуществляется аппаратными средствами, то функция log(1+e-Δ), определяющая каждую метрику, должна осуществляться аппаратными средствами или в виде справочной таблицы. Алгоритм Макс-Лог-МАВ, с другой стороны, не требует справочной таблицы, но работает хуже, чем алгоритм Лог-МАВ. Преимущества и недостатки алгоритма Лог-МАВ и алгоритма Макс-Лог-МАВ следующие.
(1) Алгоритм Лог-МАВ: Так как он представляет собой оптимальный посимвольный алгоритм принятия решения, то он является наилучшим алгоритмом турбодекодирования. Однако осуществление log(1+e-Δ) повышает сложность аппаратных средств. Кроме того, log(1+e-Δ) представляет собой нелинейную функцию, и, таким образом, требуется точная оценка ОСШ принимаемого символа для вычисления метрик ветви, посредством которых определяется Δ. Если оценка ОСШ включает ошибки, то это рассогласование ОСШ заметно ухудшает рабочие характеристики.
(2) Алгоритм Макс-Лог-МАВ: Вычисление log() не требуется для вычисления метрик, так как все метрики вычисляются посредством максимальной эффективности. Следовательно, не возникает проблема повышенной сложности аппаратных средств, что встречается при алгоритме Лог-МАВ. Кроме того, вычисление метрик посредством максимальной эффективности исключает необходимость нелинейной функции log(1+e-Δ), что означает, что нет проблем, связанных с рассогласованием ОСШ. Однако, так как алгоритм Макс-Лог-МАВ представляет собой аппроксимацию алгоритма Лог-МАВ, он работает примерно на 0,3-0,4 дБ хуже, чем алгоритм Лог-МАВ.
Как описано выше, алгоритм Лог-МАВ и алгоритм Макс-Лог-МАВ вызывают повышенную сложность аппаратных средств и ухудшение рабочих характеристик в качестве их соответствующих недостатков.
Задачей настоящего изобретения поэтому является создание устройства и способа турбодекодирования, которые работают лучше, чем алгоритм Макс-Лог-МАВ при турбодекодировании.
Другая задача настоящего изобретения заключается в создании устройства и способа турбодекодирования, которые менее сложные, чем алгоритм Лог-МАВ.
Вышеупомянутые задачи, по существу, решаются посредством составного декодера для декодирования турбокода и его способа составного декодирования. Наилучшая метрика и вторая наилучшая метрика вычисляются для значения принимаемого кодового символа в произвольном состоянии решетки турбодекодирования во время турбодекодирования кодового символа. Вычисляется внешняя информация, необходимая для турбодекодирования кодового символа. Вычисляется разность между внешней информацией и разностью между наилучшей метрикой и второй наилучшей метрикой. Обновляется ЛОП кодового символа посредством умножения вычисленной разности на предварительно определенный весовой коэффициент и принятия решения о значении кодового символа.
Внешняя информация вычисляется с использованием разности между двумя метриками: входного символа, отражающего ОСШ, и априорной информации входного символа.
Весовой коэффициент меньше 1 и приближается к 1. Предпочтительно он больше, чем 0,588235. Предпочтительно он составляет 1/2+1/4+1/16.
Если ОСШ может быть точно оценен, то весовой коэффициент вычисляется с использованием логарифмической функции. Если ОСШ не может быть точно оценен, то весовой коэффициент вычисляется с использованием аппроксимированной линейной функции.
В составном декодере для декодирования турбокода первый сумматор вычисляет ЛОП принимаемого кодового символа посредством вычисления разности между вероятностью кодового символа, равного 1, и вероятностью кодового символа, равного 0, в произвольном состоянии решетки турбодекодирования во время турбодекодировании кодового символа. Второй сумматор суммирует информацию передачи и априорную информацию кодового символа. Третий сумматор вычисляет разность между выходами первого и второго сумматоров в качестве внешней информации. Первый умножитель умножает выход третьего сумматора на предварительно определенный весовой коэффициент в качестве коэффициента обратной связи. Вычислитель корректирующей величины вычисляет корректирующую величину, используя разность между наилучшей метрикой и второй наилучшей метрикой кодового символа. Четвертый сумматор суммирует корректирующую величину с выходом первого умножителя.
Вычислитель корректирующей величины включает в себя пятый сумматор для вычисления разности между наилучшей метрикой и второй наилучшей метрикой для информационного символа 0 в качестве значения кодового символа, шестой сумматор для вычисления разности между наилучшей метрикой и второй наилучшей метрикой для информационного символа 1 в качестве значения кодового символа и справочную таблицу для хранения основанных на логарифмической функции корректирующих величин для выходов пятого и шестого сумматоров и для вывода корректирующих величин для выходов пятого и шестого сумматоров. Вычислитель корректирующей величины дополнительно включает в себя седьмой сумматор для вычисления разности между корректирующими величинами, второй умножитель для умножения выхода седьмого сумматора на предварительно определенный весовой коэффициент, восьмой сумматор для вычисления разности между выходами пятого и шестого сумматоров, третий умножитель для умножения выхода восьмого сумматора на наклон линейной функции, аппроксимированной из логарифмической функции, и селектор для выбора одного из выходов второго и третьего умножителей согласно надежности ОСШ кодового символа. Весовой коэффициент составляет предпочтительно 1/2+1/4+1/16.
Надежность ОСШ определяется в соответствии с тем, что возможна или нет точная оценка ОСШ. Селектор выводит величину, принятую от второго умножителя, если возможна точная оценка ОСШ, и величину, принятую от третьего умножителя, если невозможна точная оценка ОСШ.
Вышеупомянутые и другие задачи, признаки и преимущества настоящего изобретения станут более очевидными из последующего подробного описания, рассматриваемого совместно с прилагаемыми чертежами, на которых:
на фиг.1 представлена блок-схема, иллюстрирующая пример турбодекодера, использующего модифицированный алгоритм Макс-Лог-МАВ в соответствии с вариантом выполнения настоящего изобретения;
на фиг.2 представлена схема последовательности операций, иллюстрирующая пример операций по нахождению наилучшей метрики Mn(0) и второй наилучшей метрики Mn(1) в момент k времени декодирования в соответствии с вариантом выполнения настоящего изобретения;
на фиг.3 представлена схема последовательности операций, иллюстрирующая пример операций для вычисления ЛОП и внешней информации для итеративного декодирования по модифицированному алгоритму Макс-Лог-МАВ в соответствии с вариантом выполнения настоящего изобретения;
на фиг.4 представлена блок-схема примера функциональных блоков для одновременного нахождения наилучшей и второй наилучшей метрик для ЛОП в произвольный момент времени декодирования в соответствии с вариантом выполнения настоящего изобретения;
на фиг.5 представлена блок-схема примера функциональных блоков для получения внешней информации для информационного символа в произвольный момент времени декодирования в соответствии с вариантом выполнения настоящего изобретения;
на фиг.6 представлена блок-схема примера функциональных блоков для вычисления корректирующей величины, используемой для получения внешней информации, в соответствии с вариантом выполнения настоящего изобретения;
на фиг.7 и 8 представлены графики, иллюстрирующие примеры рабочих характеристик коэффициента битовых ошибок (КБО) и коэффициента кадровых ошибок (ККО) алгоритмов турбодекодирования, когда размер пакета кодирования (ПК) составляет 3864 и общая скорость кодирования составляет 1/2, в соответствии с вариантом выполнения настоящего изобретения;
на фиг.9 и 10 представлены графики, иллюстрирующие примеры рабочих характеристик КБО и ККО для log2 МаксЛогМАВ, мод. МаксЛогМАВ, МаксЛогМАВ с КОС и МаксЛогМАВ относительно итераций при Eb/N0, равным 1,3 дБ, в соответствии с вариантом выполнения настоящего изобретения;
на фиг.11 и 12 представлены графики, иллюстрирующие примеры рабочих характеристик КБО и ККО алгоритмов турбодекодирования, когда размер ПК составляет 792 и эффективная скорость кодирования составляет 1/5, в соответствии с вариантом выполнения настоящего изобретения;
на фиг.13 и 14 представлены графики, иллюстрирующие примеры рабочих характеристик КБО и ККО относительно итераций при Eb/N0, равным 0,7 дБ, когда размер ПК составляет 3864, в соответствии с вариантом выполнения настоящего изобретения; и
на фиг.15 и 16 представлены графики, иллюстрирующие примеры рабочих характеристик КБО и ККО относительно рассогласования ОСШ при Eb/N0, равным 1,2 дБ, когда размер ПК составляет 3864 и эффективная скорость кодирования составляет 1/2, в соответствии с вариантом выполнения настоящего изобретения.
Ниже описываются варианты осуществления настоящего изобретения с ссылкой на прилагаемые чертежи. В нижеследующем описании для краткости опущены общеизвестные функции или конструкции.
Настоящее изобретение предназначено для создания улучшенного алгоритма Макс-Лог-МАВ, который, посредством модифицирования обновления ЛОП существующего алгоритма Макс-Лог-МАВ, работает примерно только на 0,1 дБ или менее хуже, чем алгоритм Лог-МАВ и предлагает лучшие рабочие характеристики турбодекодирования, чем алгоритм Макс-Лог-МАВ и алгоритм Макс-Лог-МАВ с КОС. Так как улучшенный алгоритм Макс-Лог-МАВ, в основном, представляет собой алгоритм турбодекодирования, основанный на алгоритме Макс-Лог-МАВ, он выгодно обеспечивает незначительное повышение сложности аппаратных средств без рассогласования ОСШ.
Признаки настоящего изобретения представлены вкратце следующим образом.
(1) Для обновления ЛОП в произвольный момент времени декодирования учитываются вторые наилучшие метрики для информационных символов 0 и 1, а также наилучшие метрики. Примечательно, что вторые наилучшие метрики исключены из рассмотрения для обновления ЛОП в существующем алгоритме Макс-Лог-МАВ. Из нижеописанных результатов моделирования очевидно, что это обновление ЛОП настоящего изобретения приводит к рабочим характеристикам турбодекодирования, которые также хороши, что и рабочие характеристики алгоритма Лог-МАВ.
(2) Если корректирующая величина fc, которая вычисляется с использованием вторых наилучших метрик для информационных символов 0 и 1 в произвольный момент времени декодирования, как определяется, является нелинейной функцией, то рассогласование ОСШ приводит к изменениям рабочих характеристик. Поэтому fc аппроксимируется линейной функцией. Результаты моделирования также делают ясным, что аппроксимация fc линейной функцией приводит к отличным рабочим характеристикам турбодекодирования независимо от рассогласования ОСШ.
Поэтому описывается линейная аппроксимация fc в соответствии с настоящим изобретением. Кроме того, рабочие характеристики турбодекодирования оцениваются в том случае, когда fc определяется в виде ее первоначальной логарифмической функции, и исследуется применимость этого определения fc.
На фиг.1 представлена блок-схема, иллюстрирующая пример турбодекодера, использующего модифицированный алгоритм Макс-Лог-МАВ в соответствии с вариантом выполнения настоящего изобретения. Как описано выше, модифицированный алгоритм Макс-Лог-МАВ относится к алгоритму Макс-Лог-МАВ, который обновляет ЛОП, используя наилучшие и вторые наилучшие метрики для информационного символа в момент времени декодирования в соответствии с вариантом выполнения настоящего изобретения.
Модифицированный алгоритм Макс-Лог-МАВ применяется к каждому составному декодеру (DEC1 и DEC2). Контроллер коэффициента обратной связи (ККОС) для взвешивания внешней информации также применяется к каждому составному декодеру.
Как показано на фиг.1, первые и вторые составные декодеры (DEC1 и DEC2) 101 и 104 соответственно получают внешнюю информацию и ЛОП для информационного символа, используя модифицированный алгоритм Макс-Лог-МАВ. Т. е. каждый составной декодер 101 и 104 соответствует одному из составных кодеров турбокодера. Перемежитель 102 перемежает сигнал, принимаемый от первого составного декодера 101. Посредством учета перемежения данных между составными кодами турбокода перемежитель 102 изменяет порядок последовательности данных, так что выход первого составного декодера 101 согласуется со входом второго составного декодера 104. Первый ККОС 103 умножает перемеженный сигнал на весовой коэффициент, полученный из внешней информации, вычисленной в первом составном декодере 101 в соответствии с модифицированным алгоритмом Макс-Лог-МАВ. Весовой коэффициент представляет собой эмпирическую величину. Она больше в алгоритме Макс-Лог-МАВ, чем в алгоритме Лог-МАВ. Учитывая это, внешняя информация для информационного символа умножается на весовой коэффициент, меньший чем 1, тем самым достигая лучшие рабочие характеристики. Второй составной декодер 104 декодирует выход первого ККОС 103. Деперемежитель 105 выполняет деперемежение, так что выход второго составного декодера 104 согласуется со входом первого составного декодера 101. Второй ККОС 106 умножает деперемеженный сигнал на весовой коэффициент, полученный из внешней информации, вычисленной во втором составном декодере 101 в соответствии с модифицированным алгоритмом Макс-Лог-МАВ. Выход второго ККОС 106 подается на вход первого составного декодера 101.
Сумматоры 107 и 108 суммируют надежность передачи и априорную вероятность (АПВ) принимаемого кодового символа для генерирования ЛОП для информационного сигнала, используя внешнюю информацию, полученную от второго составного декодера 105. Априорной информацией является ЛОП вероятности информационного символа, равного 0, к вероятности информационного символа, равного 1. В общей теории кодирования информационные символы 0 и 1 равновероятны. Поэтому начальной априорной информацией всегда является 0. По мере продолжения итеративного декодирования внешняя информация от каждого составного декодера используется в качестве априорной информации информационного символа для другого составного декодера. Следовательно, априорная информация больше не является равной 0. Решающий блок 109 принимает решение о знаке ЛОП. Если знак ЛОП положительный, то решающий блок 109 генерирует информационный символ 0, и, если знак ЛОП отрицательный, то он генерирует информационный символ 1. Величина принятия решения подается как на выходной буфер 110, так и на блок 111 проверки циклического избыточного кода (ЦИК). В варианте выполнения настоящего изобретения выходным буфером 110 может быть память для хранения величины принятия решения 0 или 1. Блок 111 проверки ЦИК проверяет априорно введенный ЦИК для обнаружения ошибок в кадре декодируемых информационных символов.
Теперь ниже описывается осуществление модифицированного алгоритма Макс-Лог-МАВ в составных декодерах.
Модифицированный алгоритм Макс-Лог-МАВ эволюционировал из алгоритма Макс-Лог-МАВ посредством модифицирования его процесса обновления ЛОП. Следовательно, для простоты осуществления и сохранения нечувствительности турбодекодирования к рассогласованию ОСШ выбирается все же уравнение (3) для вычисления метрик состояния α и β для второго модифицированного алгоритма Макс-Лог-МАВ. Также уравнение (2) используется с корректирующей величиной fc, аппроксимированной так, чтобы определять ЛОП для модифицированного алгоритма Макс-Лог-МАВ.
Аппроксимация fc включает в себя определение fc, используя наилучшие метрики Mn(0) и вторые наилучшие метрики Mn(1) для информационных символов 0 и 1 из числа всех метрик Mn(i), составляющих fc в уравнении (2). Другими словами, алгоритм турбодекодирования настоящего изобретения обновляет ЛОП в произвольные моменты времени декодирования, учитывая вторые наилучшие метрики для информационных символов 0 и 1, которые исключаются при обновлении ЛОП в алгоритме Макс-Лог-МАВ, а также их наилучшие метрики.
Для обновления ЛОП в модифицированном алгоритме Макс-Лог-МАВ fc аппроксимируется следующим образом:
(5)
Как видно из уравнения (5), fc определяется, используя наилучшую метрику Mn(0) и вторую наилучшую метрику Mn(1) для информационного символа n в момент времени декодирования. Метрики Mn(i) (i>1) меньшие, чем вторая наилучшая метрика Mn(1), отбрасываются при аппроксимации, так как они оказывают пренебрежимо малое влияние на fc. В то время как алгоритм Макс-Лог-МАВ производит поиск по всем множествам состояний (s', s) на решетке в произвольный момент времени декодирования и вычисляет наилучшую метрику Mn(0) для информационного символа, обновляя метрики для каждого множества состояний, модифицированный алгоритм Макс-Лог-МАВ вычисляет вторую наилучшую метрику Mn(1) в дополнение к наилучшей метрике Mn(0) и одновременно без увеличения времени декодирования. С этой целью пусть метрика для состояния s равна m(s). Тогда Mn(0) и Mn(1) вычисляются одновременно так, как изображено в Таблице 1.
В Таблице 1 MIN представляет собой очень малую величину, эквивалентную -∞ для инициализации метрик состояния, и S - общее количество состояний в решетке составных сверточных кодов.
На фиг.2 представлена схема последовательности операций, иллюстрирующая пример операций для вычисления наилучшей метрики Mn(0) и второй наилучшей метрики Mn(1) в момент k времени декодирования в соответствии с вариантом выполнения настоящего изобретения.
Как показано на фиг.2, состояние решетки и наилучшие и вторые наилучшие метрики для информационных символов 0 и 1 устанавливаются в первоначальную величину в момент k времени декодирования на шаге 200, как показано посредством (1) в Таблице 1. На шаге 202 вычисляется метрика для информационного символа n (0 или 1), каждый раз увеличивая состояние на 1. Следовательно, операцией на фиг.2 является процесс нахождения текущего состояния s. Вычисленная метрика сравнивается с существующей наилучшей метрикой для информационного символа n на шаге 204. Если текущая метрика больше, чем существующая наилучшая метрика, то процесс переходит на шаг 206. В противном случае он переходит на шаг 208. На шаге 206 текущая метрика устанавливается в качестве наилучшей метрики и существующая наилучшая метрика устанавливается в качестве второй наилучшей метрики.
С другой стороны, на шаге 208 текущая метрика сравнивается с существующей второй наилучшей метрикой. Если текущая метрика больше, чем существующая вторая наилучшая метрика, то вторая наилучшая метрика обновляется до текущей метрики на шаге 210. Если текущая метрика равна или меньше, чем существующая вторая наилучшая метрика на шаге 206 или 210, или на шаге 208, то процедура переходит на шаг 212.
На шаге 212 определяется, является ли текущее состояние последним состоянием. Если является, то процедура заканчивается. Если не является, то состояние увеличивается на 1 на шаге 214.
Таким образом, наилучшие и вторые наилучшие метрики Mn(0) и Mn(1) получаются одновременно в произвольный момент времени декодирования. Используя эти метрики, корректирующая величина fc аппроксимируется в виде уравнения (5).
Однако нелинейная аппроксимация fc в уравнении (5) оказывает влияние на рабочие характеристики декодирования в соответствии с абсолютной величиной входного символа в турбодекодере. Т. е. приемник не может оценить точное ОСШ, приводя к рассогласованию ОСШ. В результате, если изменяется входной символ декодера, то также изменяются рабочие характеристики турбодекодирования. Поэтому необходимо аппроксимировать fc с логарифмической функции до линейной функции.
Ниже приведено описание аппроксимации логарифмической функции по сравнению с линейной функцией.
При представлении fc посредством логарифмической функции как в алгоритме Лог-МАВ или посредством справочной таблицы, соответствующей логарифмической функции, рассогласование ОСШ изменяет Es/N0, которое умножается на входной символ декодера, несмотря на постоянный ОСШ для входного символа, что замечательно изменяет рабочие характеристики турбодекодирования. Для того чтобы сохранить рабочие характеристики декодирования независимо от значения входного символа, логарифмическая функция должна быть модифицирована. Уравнение (6) представляет аппроксимацию логарифмической функции.
(6)
Функция, имеющая метрику в качестве коэффициента, должна быть линейной относительно метрики для получения ЛОП таким, который делает рабочие характеристики декодирования независимыми от изменения входного символа. Если fc изменяется нелинейным образом в зависимости от метрики, изменяющейся со значением входного символа, то fc также изменяется нелинейным образом относительно ЛОП согласно изменяемому входному символу, несмотря на одинаковый ОСШ. Поэтому не обеспечиваются постоянные рабочие характеристики.
При аппроксимации, выраженной как уравнение (6), постоянная с является пренебрежимо малой. Она смещается посредством аппроксимации l(x) в виде функции первого порядка с постоянной с, так как fc определяется разностью между функциями l(x), имеющими метрики для информационных символов 0 и 1 в качестве их коэффициентов.
Эта аппроксимация грубая. Вследствие ошибок, вызванных грубой аппроксимацией, модифицированный алгоритм Макс-Лог-МАВ настоящего изобретения работает хуже, чем модифицированный алгоритм Макс-Лог-МАВ с l(x), определенной как логарифмическая функция. Однако определение l(x) в виде нелинейной функции может привести к хорошим рабочим характеристикам, если обеспечивается точная оценка ОСШ, но рабочие характеристики декодирования изменяются, когда рассогласование ОСШ изменяет значение входного символа.
В результате аппроксимации ЛОП обновляется в модифицированном алгоритме Макс-Лог-МАВ посредством
, где (7)
Вторая наилучшая метрика Mn(1) вычисляется одновременно с наилучшей метрикой Mn(0) по уравнению (7) в алгоритме аппроксимации.
Теперь описываются весовые коэффициенты, применяемые к внешней информации. Внешняя информация об информационном символе может быть получена, используя ЛОП из процесса обновления ЛОП модифицированного алгоритма Макс-Лог-МАВ. Так как алгоритм Макс-Лог-МАВ создает внешнюю информацию в результате повторных аппроксимаций, то внешняя информация имеет относительно большую величину по сравнению с внешней информацией в алгоритме Лог-МАВ. Для того чтобы уменьшить это влияние, внешняя информация для информационного символа умножается на весовой коэффициент. В обычном алгоритме Макс-Лог-МАВ с КОС предварительно определенный весовой коэффициент, например 0,588235, умножается на внешнюю информацию от второго составного декодера для каждой итерации. Однако в модифицированном алгоритме Макс-Лог-МАВ в ЛОП входит корректирующая величина fc, отражающая вторую наилучшую метрику, и, таким образом, весовой коэффициент для внешней информации должен быть ближе к 1, чем fc. Учитывая весовой коэффициент Wf, внешняя информация образуется как
,
где
или (8)
В уравнении (8) K'=Kf. Lcyk - сигнал, отражающий надежность канала на входе турбодекодера, и La(Uk) - априорная информация текущего информационного символа. Формула получается посредством вычитания внешней информации из разности между наилучшей метрикой и второй наилучшей метрикой и затем суммирования новой корректирующей величины fc' с результирующей разностью. Ниже fc' называется корректирующей величиной.
Приводится следующее описание определения ЛОП и внешней информации для итеративного декодирования в модифицированном алгоритме Макс-Лог-МАВ.
На фиг.3 представлена схема последовательности операций, иллюстрирующая пример операций для вычисления ЛОП для информационного символа и внешней информации, используемой для итеративного декодирования в модифицированном алгоритме Макс-Лог-МАВ в соответствии с вариантом выполнения настоящего изобретения.
Как показано на фиг.3, вычисляется метрика γ ветви для произвольного перехода состояния в решетке на шаге 400, и метрики α и β состояния обновляются для всех множеств состояний (s, s') в отношении к переходу состояния на шаге 402. На шаге 404 одновременно обнаруживаются наилучшая метрика Mn(0) и вторая наилучшая метрика Mn(1) для получения ЛОП в процедуре на фиг.2, обновляя метрики состояния. ЛОП вычисляется с использованием разности между Mn(0) и Mn(1), входа декодера с учитываемым в нем ОСШ и априорной информации информационного символа по уравнению (8) на шаге 406. Этот шаг выполняется в функциональных блоках 601, 602 и 603, изображенных на фиг.5. На шаге 408 внешняя информация умножается на весовой коэффициент Wf, что выполняется в функциональном блоке 604, изображенном на фиг.5. Корректирующая величина fc' выбирается как одна из двух величин, определенных в уравнении (8), в зависимости от того, аппроксимируется ли логарифмическая функция линейной функцией или нет. Если приемник может выполнить точную оценку ОСШ, то fc' выбирается в качестве первоначальной логарифмической функции. В противном случае она выбирается в качестве аппроксимированной линейной функции. Таким образом, если на шаге 410 возможна точная оценка ОСШ, то процедура переходит на шаг 412, и, если это невозможно, то процедура переходит на шаг 414. На шаге 414 логарифмическая функция используется в качестве fc', и на шаге 412 линейная функция используется в качестве fc'. Логарифмическая функция выбирается тогда, когда функциональные блоки 701, 702, 703, 705 и 707, изображенные на фиг.6, выводят FLAG (флаг) в виде 0, тогда как линейная функция выбирается тогда, когда функциональные блоки 701, 702, 704, 706 и 708, изображенные на фиг.6, выводят FLAG в виде 1.
На фиг.4 представлена блок-схема примера функциональных блоков для нахождения наилучшей метрики и второй наилучшей метрики в отношении ЛОП в произвольные моменты времени декодирования в соответствии с вариантом выполнения настоящего изобретения.
Как показано на фиг.4, жирная сплошная линия обозначает секцию нахождения второй наилучшей метрики, т. е. функциональные блоки 511-514. Поэтому другие функциональные блоки 501, 502 и 503 действуют согласно алгоритма Макс-Лог-МАВ. Эти функциональные блоки обновляют метрики для всех состояний решетки, каждый раз увеличивая индекс состояния на 1. Здесь, сигнал SELO равен 0 для первого состояния и 1 для последующих состояний. Сигнал SEL1 равен 0 для первого и второго состояний и 1 для последующих состояний.
Функциональными блоками 502, 503, 511, 513 и 514 являются селекторы для вывода входа через порт 0, если сигнал выбора равен 0, и входа через порт 1, если сигнал выбора равен 1. Функциональными блоками 501 и 512 являются селекторы для вывода 1, если сигнал на порте а меньше, чем сигнал на порте b, и 0, если сигнал на порте а равен или больше, чем сигнал на порте b.
На фиг.5 представлена блок-схема примера функциональных блоков для генерирования внешней информации об информационном символе в произвольный момент времени декодирования в соответствии с вариантом выполнения настоящего изобретения.
Как показано на фиг.5, первый сумматор 601 выводит разность между наилучшими метриками для 0 и 1 в качестве информации ЛОП об информационном символе. Второй сумматор 602 суммирует информацию передачи и априорную информацию принимаемого символа. Третий сумматор 603 вычитает сумму, принятую от второго сумматора 602, из информации ЛОП, принятой от первого сумматора 601. Выход третьего сумматора 603 представляет собой внешнюю информацию, определенную в существующем алгоритме Макс-Лог-МАВ. Умножитель 604 умножает внешнюю информацию на весовой коэффициент, как делается в существующем алгоритме Макс-Лог-МАВ с КОС. Если весовой коэффициент равен 1, то он выполняет алгоритм Макс-Лог-МАВ. Четвертый сумматор 605 добавляет корректирующую величину fc', полученную функциональными блоками, изображенными на фиг.6, к выходу умножителя 604. Таким образом, получается окончательная внешняя информация для модифицированного алгоритма Макс-Лог-МАВ.
Т. е. внешняя информация получается для модифицированного алгоритма Макс-Лог-МАВ посредством дополнительного использования умножителя 604, связанного с весовым коэффициентом Wf, и сумматора 605, связанного с корректирующей величиной fc', по сравнению с алгоритмом Макс-Лог-МАВ. Также по сравнению с алгоритмом Макс-Лог-МАВ с КОС дополнительно используется сумматор 605.
На фиг.6 представлена блок-схема примера функциональных блоков для вычисления корректирующей величины fc' для использования при вычислении внешней информации в соответствии с вариантом выполнения настоящего изобретения.
Как показано на фиг.6, первый сумматор 701 вычисляет разность между наилучшей метрикой и второй наилучшей метрикой для информационного символа 0, и второй сумматор 702 вычисляет разность между наилучшей метрикой и второй наилучшей метрикой для информационного символа 1. Справочная таблица 703 (СТ) находит корректирующие величины из логарифмической функции, определенной в уравнении (8), используя разности. Третий сумматор 707 вычисляет разность между корректирующими величинами. Первый умножитель 707 умножает разность на весовой коэффициент, тем самым принимая решение об окончательной корректирующей величине.
Четвертый сумматор 704 вычисляет разность между выходами первого и второго сумматоров 701 и 702. Второй умножитель 706 умножает разность на величину наклона, тем самым принимая решение о корректирующей величине, аппроксимированной до линейной функции.
Одна из корректирующих величин, определенных в уравнении (8), выбирается согласно сигналу FLAG. Для выбора логарифмической функции селектор 708 выбирает вход на порте 0. В противоположность этому, для выбора линейной функции селектор 708 выбирает вход на порте 1. Для первого случая требуется СТ, тогда как для второго случая требуется просто сумматоры и умножитель. Примечательно, что, когда FLAG равен 0, то может быть обеспечена точная оценка ОСШ на приемнике. Эта структура, изображенная на фиг.6, дополнительно осуществляется аппаратными средствами для модифицированного алгоритма Макс-Лог-МАВ. Если весовой коэффициент Wf и величина K' могут быть выражены как показатели степени числа 2, то умножители на фиг.5 и 6 могут быть осуществлены в виде простых селекторов битов или сумматоров, включающих их.
Для того чтобы оценить рабочие характеристики турбодекодирования модифицированного алгоритма Макс-Лог-МАВ в соответствии с настоящим изобретением, были выполнены моделирования при следующих условиях.
Все моделирования были с плавающей точкой, и рабочие характеристики декодирования оценивались в смысле коэффициента битовых ошибок (КБО) и коэффициента кадровых ошибок (ККО). Для исследования влияния рассогласования ОСШ также оценивались рабочие характеристики декодирования в отношении смещения Eb/N0. Использовался турбокодер со скоростью 1/5, предусмотренный CDMA2000 1xEV-DV, и выполнялась работа с квазидополняющим турбокодом (КДТК) для преобразования общей скорости кодирования в величину, отличную от 1/5. Размером кадра является один из размеров ПК, как определено в спецификации 1xEV-DV. Используемой схемой модуляции была двухпозиционная ФМн, и предполагался канал с аддитивным белым гауссовым шумом. Для турбодекодирования максимальным количеством декодирующих итераций было 8. КБО и ККО измерялись посредством выполнения моделирования до тех пор, пока не получалось 50 кадровых ошибок.
Весовой коэффициент Wf и величина K' определялись эмпирически. Так как итерации декодирования для турбодекодирования представляют собой, в основном, операции субоптимального декодирования, а не декодирование по методу максимального правдоподобия, то существует вероятность того, что рабочие характеристики ухудшаются во время итеративного декодирования. Моделирование рассогласования ОСШ показало, что лучшие рабочие характеристики достигаются для смещения Eb/N0, равного примерно -1 дБ, чем без смещения Eb/N0. Это вследствие того, что ухудшение рабочих характеристик, возможно создаваемое во время итераций декодирования, смещается посредством ошибочного взвешивания на -1 дБ. Таким образом, весовой коэффициент Wf эмпирически определяется следующим образом:
(9)
В результате представления Wf в виде суммы показателей степени числа 2 умножение на весовой коэффициент легко осуществляется аппаратными средствами.
K' в уравнении (8) представляет собой произведение наклона K в уравнении (4) и весового коэффициента Wf. K в уравнении (6) определяется как средний наклон касательной функции l(x)=log(1+e-x). Поэтому
(10)
где а - устанавливается на максимальную значимую величину. Если а больше чем 9, то l(x) меньше чем 10-4. Таким образом, для а равного 9, K определяется следующим образом:
(11)
Некоторые моделирования показали, что определение -K по уравнению (11) приводит к высоким рабочим характеристикам. K' в уравнении (11) также может быть выражено как:
(12)
K' может быть просто получено побитовым выбором, который представляет собой упрощенное аппаратное осуществление умножения.
Результаты моделирования с аппроксимацией и без аппроксимации сравниваются с ссылкой на фиг.7-16. На фиг.7 и 8 изображены рабочие характеристики турбодекодирования в смысле КБО и ККО для размера ПК, равного 3864, и общей скорости кодирования (R), равной 1/2. На фиг.7 и 8 Лог-МАВ обозначает алгоритм Лог-МАВ, log2 МаксЛогМАВ обозначает алгоритм Макс-Лог-МАВ, использующий fc, определенную как логарифмическая функция l(x), мод. МаксЛогМАВ обозначает алгоритм Макс-Лог-МАВ, использующий fc, определенную как аппроксимированная функция первого порядка, МаксЛогМАВ с КОС обозначает существующий алгоритм Макс-Лог-МАВ с КОС и МаксЛогМАВ обозначает существующий алгоритм Макс-Лог-МАВ. Как изображено, log2 МаксЛогМАВ является приближенным к ЛогМАВ по рабочим характеристикам декодирования, но эти рабочие характеристики не обеспечиваются в случае рассогласования ОСШ. Мод. МаксЛогМАВ работает просто примерно на 0,1 дБ хуже, чем ЛогМАВ при ККО, равным 10-2, тогда как он работает примерно на 0,5 дБ лучше, чем МаксЛогМАВ с КОС. Мод. МаксЛогМАВ работает постоянно независимо от рассогласования ОСШ.
На фиг.9 и 10 изображены рабочие характеристики КБО и ККО для log2 МаксЛогМАВ, мод. МаксЛогМАВ, МаксЛогМАВ с КОС и МаксЛогМАВ относительно итераций при Eb/N0=1,3 дБ. Отмечается из фиг.9 и 10, что log2 МаксЛогМАВ имеет наилучшие рабочие характеристики относительно итераций. Мод. МаксЛогМАВ работает не лучше, чем МаксЛогМАВ с КОС, но получает рабочие характеристики ККО для МаксЛогМАВ с КОС по 8 итерациям только с 7 итерациями.
На фиг.11 и 12 изображены рабочие характеристики КБО и ККО для размера ПК, равного 792, и эффективной скорости кодирования, равной 1/5. Аналогично для случая, когда размер ПК равен 3864, нет изменений в ранжировании рабочих характеристик пяти алгоритмов. Все же, по сравнению со случаем, когда размер ПК равен 3864, мод. МаксЛогМАВ работает примерно на 0,1 дБ лучше, чем МаксЛогМАВ с КОС.
На фиг.13 и 14 изображена рабочая характеристика КБО и ККО пяти алгоритмов, когда Eb/N0=0,7 дБ и размер ПК=792, и на фиг.15 и 16 изображена рабочая характеристика КБО и ККО пяти алгоритмов для размера ПК=3864, эффективной скорости кодирования=1/2 и рассогласования ОСШ при Eb/N0, равным 1,2 дБ, т. е. когда ошибки, эквивалентные смещению Eb/N0, генерируются при оценке ОСШ входного символа декодера при предположении, что точная оценка ОСШ достигается тогда, когда смещение Eb/N0 равно 0. Как изображено, мод. МаксЛогМАВ работает независимо от рассогласования ОСШ, так как l(x) аппроксимируется функцией первого порядка. Однако log2 МаксЛогМАВ проявляет изменяемые рабочие характеристики согласно рассогласованию ОСШ, так как l(x) определяется как нелинейная функция log(), и fc изменяется нелинейным образом в зависимости от изменения метрики в функции log(). Все же изменения fc не являются большими по сравнению с ЛогМАВ. Поэтому, поскольку гарантируется оценка ОСШ в пределах примерно от -6 дБ до +6 дБ, то log2 МаксЛогМАВ может быть использован в качестве алгоритма турбодекодирования.
Из моделирования отмечается, что модифицированный алгоритм Макс-Лог-МАВ работает примерно только на 0,1 дБ хуже, чем алгоритм Лог-МАВ независимо от размера ПК, означая, что эти рабочие характеристики лучше, чем рабочие характеристики алгоритма Макс-Лог-МАВ (с КОС или без него). Несмотря на некоторые ошибки при оценке ОСШ входного символа, модифицированный алгоритм Макс-Лог-МАВ имеет высокие рабочие характеристики независимо от ошибок оценки ОСШ, что очевидно из результатов моделирования.
Как описано выше, модифицированный алгоритм Макс-Лог-МАВ работает лучше, чем алгоритм Макс-Лог-МАВ с небольшим аппаратным дополнением по сравнению с алгоритмом Макс-Лог-МАВ и упрощенной структурой по сравнению с алгоритмом Лог-МАВ. Поэтому модифицированный алгоритм Макс-Лог-МАВ применим к канальному декодеру в мобильном терминале для универсальной системы подвижной связи (УСПС) и высокоскоростного пакетного доступа линии «вниз» (ВПДЛВ), а также канальному декодеру для системы и терминала CDMA2000 1xEV-DV. Он выгодно хорошо работает с упрощенной структурой.
Хотя изобретение было показано и описано с ссылкой на его некоторые варианты выполнения, для специалиста в этой области техники понятно, что в нем могут быть сделаны различные изменения в форме и деталях в пределах сущности и объема изобретения, определенного в прилагаемой формуле изобретения.
название | год | авторы | номер документа |
---|---|---|---|
Способ декодирования LDPC-кодов и устройство для его осуществления | 2016 |
|
RU2628459C1 |
УСТРОЙСТВО И СПОСОБ ТУРБОДЕКОДИРОВАНИЯ | 2003 |
|
RU2273093C2 |
КОМПОНЕНТНЫЙ ДЕКОДЕР И СПОСОБ ДЕКОДИРОВАНИЯ В СИСТЕМЕ МОБИЛЬНОЙ СВЯЗИ | 2000 |
|
RU2247471C2 |
СПОСОБ ДЕКОДИРОВАНИЯ СВЕРТОЧНЫХ КОДОВ | 2012 |
|
RU2516624C1 |
СПУТНИКОВАЯ СИСТЕМА СВЯЗИ, ИСПОЛЬЗУЮЩАЯ КОДИРОВАНИЕ С ПАРАЛЛЕЛЬНЫМ ОБЪЕДИНЕНИЕМ | 1997 |
|
RU2191471C2 |
УСТРОЙСТВО ДЛЯ КОРРЕКЦИИ ОШИБОК | 1991 |
|
RU2037271C1 |
СПОСОБ ДЕКОДИРОВАНИЯ LDPC-КОДОВ И УСТРОЙСТВО ДЛЯ ЕГО ОСУЩЕСТВЛЕНИЯ | 2017 |
|
RU2651222C1 |
Декодер сверточного кода | 1988 |
|
SU1660178A1 |
СПОСОБ И УСТРОЙСТВО ДЛЯ ОЦЕНКИ ОТНОШЕНИЯ СИГНАЛ-ШУМ ПРИ ДЕКОДИРОВАНИИ СВЕРТОЧНЫХ КОДОВ | 2010 |
|
RU2446448C1 |
СПОСОБ ДЕМОДУЛИРОВАНИЯ СИГНАЛОВ ДАННЫХ, МОДУЛИРОВАННЫХ ЦИФРОВЫМ СПОСОБОМ | 1995 |
|
RU2144739C1 |
Изобретение относится к устройству и способу опережающей коррекции ошибок для уменьшения коэффициентов битовых ошибок и коэффициентов кадровых ошибок, используя турбодекодирование в системе связи. Техническим результатом является улучшение алгоритма турбодекодирования при снижении сложности аппаратных средств. Технический результат достигается тем, что в составном декодере для декодирования турбокода первый сумматор вычисляет логарифмическое отношение правдоподобия принимаемого кодового символа посредством вычисления разности между вероятностью символа, равного 1, и вероятностью символа, равного 0, в произвольном состоянии решетки турбодекодирования, второй сумматор суммирует информацию передачи и априорную информацию кодового символа, а третий сумматор вычисляет разность между выходами первого и второго сумматоров в качестве внешней информации, далее первый умножитель умножает результат, полученный с выхода третьего сумматора, на предварительно определенный весовой коэффициент, вычислитель корректирующей величины вычисляет корректирующую величину, используя разность между наилучшей метрикой и второй наилучшей метрикой кодового символа, а четвертый сумматор суммирует корректирующую величину с результатом, полученным с выхода первого умножителя. 2 н. и 6 з.п. ф-лы, 16 ил.
Весовой коэффициент = K·Wf,
где Wf меньше 1 и близко к 1 и К - средний наклон касательных логарифмической функции l(x)=log(1+e-x).
ДЕКОДЕР ВИТЕРБИ | 1997 |
|
RU2127944C1 |
КЛАРК МЛ., ДЖ | |||
КЕЙН, КОДИРОВАНИЕ С ИСПРАВЛЕНИЕМ ОШИБОК В СИСТЕМАХ ЦИФРОВОЙ СВЯЗИ, МОСКВА, РАДИО И СВЯЗЬ, 1987, С.239-246. |
Авторы
Даты
2005-10-27—Публикация
2003-07-19—Подача