Каскадные коды.ppt
- Количество слайдов: 15
КАСКАДНЫЕ КОДЫ
Недвоичный (N, К) код образует внешний код, а двоичный внутренний код. Кодовые слова формируются путём подразделения блока на Kk информационных бита по К группам, называемым символами, причём каждый такой символ состоит из k бит. К символов (с k битами каждый) кодируются в N символов внешним кодом, как это обычно делается при недвоичном кодировании. Внутренний кодер берет каждый k –битовый символ и кодирует его в двоичный блоковый код длины n. Таким образом, мы получаем каскадный блоковый код, имеющий длину Nn бита и содержащий Kk информационных бита. Это значит, мы создали эквивалентный (Nn, Kk) длинный двоичный код. Также укажем, что минимальное расстояние для каскадного кода равно dmim. Dmim, где Dmim – это минимальное расстояние для внешнего кода, a dmim – минимальное расстояние для внутреннего кода. Далее, скорость каскадного кода равна Kk/Nn, что равно произведению скоростей двух кодов.
Декодер жёстких решений для каскадного кода удобно разделить на внутренний декодер и внешний декодер. Внутренний декодер выполняет жёсткое решение по каждой группе из n бит, соответствующие кодовому слову внутреннего кода, и выносит решение о k информационных битах, основываясь на алгоритме максимального правдоподобия (минимума расстояния). Эти k бит представляют один символ внешнего кода. Когда принят блок из N k -битовых символов от внутреннего декодера, внешний декодер принимает жёсткое решение по К k -битовым информационным символам, основываясь на декодирование по правилу максимального правдоподобия.
Внутренний код рис. 6. 1 связан с модулятором (демодулятором) и каналом; он, как правило, настраивается для исправления большинства канальных ошибок. Внешний код, чаще всего с низкой избыточностью, снижает вероятность появления ошибок до заданного значения. Основной причиной использования каскадного кодирования являются низкая избыточность (высокая скорость) кодирования и меньшая сложность реализации, которая потребовалась бы для осуществления с какой-то одной ступенью кодирования. На рис. 6. 1 между двумя этапами кодирования располагается устройство перемежения. Делается это для того, чтобы разнести пакеты ошибок, которые могут возникать в результате внутреннего декодирования.
Турбокоды впервые были введены в 1993 году Берру, Главье и Цитимаджимой (Berrou, Glavieux, Thitimajshima). Для этих кодов достигалась вероятность появления ошибок 10 -5 при скорости кодирования 1/2 и модуляции BPSK в канале с белым аддитивным гауссовым шумом (additive white Gaussian noise – AWGN) с Eb/N 0, равным 0, 7 д. Б. Коды образуются посредством компоновки двух или более составных кодов, являющихся разными вариантами чередования одной и той же информационной последовательности. Тогда как для сверточных кодов на финальном этапе декодер выдает жестко декодированные биты (или в более общем случае – декодированные символы), в каскадной схеме, такой как турбокод, для хорошей работы алгоритм декодирования не должен ограничивать себя, подавая на декодеры жесткую схему решений. Для лучшего использования информации, получаемой с каждого декодера, алгоритм декодирования должен применять, в первую очередь, мягкую схему декодирования, вместо жесткой. Для систем с двумя составными кодами концепция, лежащая в основе турбодекодирования, заключается в том, чтобы передать мягкую схему принятия решений с выхода одного декодера на вход другого и повторять эту процедуру до тех пор, пока не будут получены надежные решения
На рис. 6. 10 представлена функциональная схема составного турбокодера. В приведенной схеме кодер дублируется дважды. Первый кодер получает поток входных битов, для каждого из которых генерирует один контрольный бит С 1. Вход второго кодера – это подвергнутый чередованию исходный входной поток, дающий последовательность контрольных битов С 2. Затем исходный входной бит и два контрольных бита объединяются (мультиплексируются) и в результате получается последовательность , т. е. за первым входным битом следует контрольный бит кодера 1, за ним идет контрольный бит кодера 2 и т. д. Степень кодирования результирующей последовательности равна 1/3. Если использовать только половину контрольных битов, чередуя выходы двух кодеров, можно получить степень кодирования 1/2.
На рис. 6. 12 представлена функциональная схема турбодекодера, который декодирует турбокод, который получается в кодере, изображенным на рис. 6. 10. Недостающие контрольные биты C 1 и С 2 вычисляются при необходимости в блоке обращения прореживания. Декодер 1 начинает работу первым, используя значения I 1 и С 1 для создания битов коррекции Х 1. Биты I 1 и X 1 , а также значения С 2 подаются на декодер 2. Для правильного упорядочения битов требуется повторно произвести операцию чередования. Декодер 2 использует все входные данные для создания битов коррекции Х 2 которые после восстановления исходного порядка битов вводятся в декодер 1 для второй итерации алгоритма декодирования. По завершении достаточного числа итераций из I и Х 2 генерируется выходной бит.
В таблице 6. 1 приведены значения ЭВК для турбокода с Rc = ½ , K = 5 при использовании в гауссовом канале модуляции BPSK, вероятности ошибки 10 -5 при отношении Eb/N 0. = 9, 6 д. Б без использования кодирования. Таблица 6. 1 Значения ЭВК турбокода Количеств о итераций 1 2 3 5 18 ЭВК 5, 1 7, 0 7, 9 8, 6 8, 9 Из таблицы 6. 1 видно, что при 18 итерациях требуемое отношение Eb/N 0. = 0, 7 д. Б для вероятности ошибки 10 -5. Это отношение сигнал/шум всего на 0, 5 д. Б больше практического предела Шеннона равного 0, 2 д. Б [18].
Каскадные коды.ppt