Кодер ТК: Можно считать, что в канал связи передаются два кодовых блока:

Кодер канала

Кодер ТК:  Можно считать, что в канал связи передаются два кодовых блока:

Рассмотрим рис. 4.9, на котором помимо контроля четности по строкам для всей приведенной информации рис. 4.8 введен еще контроль четности по столбцам (нижняя 8-я строка)

Рис. 4.9. Побайтовое обнаружение и исправление одиночной ошибки в блочном кодере
 

При наличии одиночной ошибки в этой 8×8 = 64-битовой матрице можно указать не только строку, содержащую ошибку, но и столбец с ошибкой, а значит — ошибочный бит, лежащий на пересечении строки и столбца (например, если обнаружена ошибка в 4 строке (1 в 8 столбце), 8-байтовой последовательности, а также в 4-ом столбце (1 в 8 строке), то, таким образом, обнаружен ошибочный бит в 4 строке 4-го столбца матрицы).

Итак, если обнаружен ошибочный бит, то он может быть элементарно исправлен: если в данном примере — 4 строка — 4 столбца — ошибка — 0, то вместо него ставится 1 (или наоборот).

Таким образом, матрица рис. 4.9 позволяет, при ее реализации в виде систематических байтовых кодеров [рис. 4.9 — (п, к) = (64, 49)] обнаружить и исправить одиночные ошибки. Однако, кратные ошибки этой схемой исправить невозможно. Для коррекции кратных ошибок применяются более совершенные и сложные схемы блочных кодеров.

На рис. 4.10 показана схема сверточного кодера (4, 2, 5), где п = 4, к = 2, К = 5, R = k/n = 0,5.

При сверточном кодировании величина к последовательных символов (в данной схеме К = 5) входной информационной последовательности по к = 2 бит в каждом символе участвует в образовании п-битовых (п = 4) символов выходной последовательности при п> к, причем на каждый символ входной последовательности приходится по одному символу выходной последовательности.

Рис. 4.10. Схема сверточного кодера (4, 2, 5)

Каждый бит выходной последовательности получается как результат суммирования по модулю 2 (от двух до Кк бит, то есть от 2 до 5×2 = 10 бит) К (К = 5) входных символов, для чего используется п (п = 4) сумматоров по модулю 2.

Итак, для данной схемы рис. 4.10 — сверточного кодера типа (п, к, К), где параметры кодера: п — число сумматоров по модулю 2, число бит выходной последовательности: п = 4; к — число бит в каждом символе входной информационной последовательности: к = 2; К — число символов входной информационной последовательности или длина ограничения.

Параметр К определяет длину сдвигового регистра (в символах), содержимое которого участвует в формировании одного выходного символа (сдвиговый регистр на 5 символов), вид кодера запишется (4, 2, 5) = (п, к, К), при скорости кодирования R = k/n = 2/4 = 0,5. Следует отметить, что после того, как очередной выходной символ сформирован (например, на рис. 4.

10 сформирован первый п-4 битовый символ), входная последовательность из состояния К(0, 1) = 5, К(0, 0) = 4, К( 1, 0) = 3, К( 1, 1) = 2, К(0, 1) = 1 сдвигается на один символ вправо, то есть вместо К = 5 имеем К(0, 1) = 4, вместо К = 4 имеем К(0, 0) = 3, вместо К = 3 имеем К( 1, 0) = 2, вместо К-2 имеем К( 1, 1) = 1 и в результате чего символ К( 0, 1) = 1 выходит за пределы регистра.

Символы 2…

5 далее перемещаются вправо, каждый на место соседнего, в результате чего по каждому шагу смещения символов входной информационной последовательности формируется новый выходной и-битовый символ, то есть в данном случае 10-битовая входная информационная последовательность «сворачивается» в 4-битовую выходную последовательность, а из 5 входных символов (по 2 бита в каждом) формируется один выходной п = 4-битовый символ.

Если число бит в символах сдвигового регистра входной информационной последовательности k- 1, то есть символы однобитовые (а не двухбитовые, как на рис. 4.10), то такой сверточный кодер называется двоичным.

На рис. 4.11 показана в качестве примера возможная схема двоичного сверточного кодера (4,1, 5).

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

Рис. 4.11. Схема двоичного сверточного кодера (4, 1, 5)

Перемежение

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

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

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

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

Существует несколько схем перемежения и их модификиции [4.4]: диагональная; блочная; сверточная и другие.

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

Следует отметить, что в стандарте GSM применяется сложная схема блочно-диагонального перемежения.

Диагональная схема перемежения

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

На рис. 4.12 показана схема диагонального перемежения, где каждый блок состоит из 6 субблоков А/, второй — из субблоков Ъь третий — из субблоков С/.

Каждый субблок может состоять либо из нескольких символов, либо из одного символа и даже из одного бита. Как видно из рис. 4.12, выходная последовательность субблоков bt блока 2 перемежается с второй частью блока 3 и второй частью блока 1.

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

Рис. 4.12. Схема диагонального перемежения

Блочная схема перемежения

На рис. 4.13 представлена схема блочного перемежения.
 

Рис. 4.13. Схема блочного перемежения

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

Работу этой схемы можно представить в виде:

— записи блоков входной последовательности — в качестве строк матрицы размерности кхп,

— считывания информации, которое производится по столбцам.

Таким образом, если входная последовательность в этом примере имеет вид:

Субблоки, или символы, в частном случае, также могут состоять из одного бита.

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

Общим недостатком обеих рассмотренных схем является жесткая периодичность следования переставленных символов в пределах интервала перемежения.

Кодек канала стандарта GSM

В кодеке канала кодируются/декодируются как речевая информация, так и информация каналов управления, то есть информация каналов трафика ТСН и информация каналов управления ССН.

В то время как в информации канала трафика кодируется лишь часть битов, информация каналов управления кодируется в полном обьеме.

Рассмотрим кодирование сегмента речевого сигнала (см. табл. 4.1), полученного на выходе кодера речи и имеющего:

— параметр фильтра STP — 36 бит,

— параметр фильтра LTP — 36 бит,

— параметр сигнала возбуждения (СВ) — 188 бит,

то есть за 20 мс передаются в сегменте речевого сигнала 260 бит.

В кодере канала 260 бит информации разделяются на 2 класса (рис. 4.14):

— класс 1 — в него включено 182 бита, защищаемых помехоустойчивым кодированием;

— класс 2 — в него включены оставшиеся 260 — 182 = 78 бит, которые передаются без помехоустойчивого кодирования.

Рис. 4.14. Схема кодирования сегмента речевого сигнала

В свою очередь класс 1 делится на:

— подкласс 1а, к которому относятся параметры фильтра кратковременного предсказания STP (36 бит) и часть информации (14 бит) о параметрах фильтра долговременного предсказания LTP, то есть в подклассе 1а выделяется 50 = (36 + 14) бит существенной речевой информации, которая подвергается наиболее мощному помехозащищенному кодированию;

— подкласс 1в, в который включены остальные 182-50 = 132 бита, кодируется слабее, чем информация подкласса 1а. В подкласс 1в включаются 22 бита информации о параметрах фильтра LTP и 110 бит о параметрах сигнала возбуждения.

Итак, распределение цифровой информации (бит) по подклассам 1а, 1в и классу 2 реализовано (рис. 4.14) для сегмента речи в виде: 1а — 50 бит; 1в — 132 бит; 2 — 78 бит.

Кодирование информации подкласса 1а

1. Информация 50 бит кодируется блочным кодом — укороченным систематическим циклическим кодом (п, к) = (53, 50), то есть 3-битовый код четности позволяет обнаруживать ошибки. На выходе блочного кодера, таким образом, цифровая последовательность имеет 53 бита (избыточные 3 бита).

2. В специальном блоке информация подклассов 1а (53 бита) и 1в (132 бита) переупаковывается, располагаясь в такой последовательности:

— биты с четными индексами;

— код четности подкласса 1а;

— биты с нечетными индексами в обратной последовательности;

— четыре добавочных нулевых бита, то есть всего 53 + 132 + 4 = 189 бит.

3. Цифровая последовательность в 189 бит подается на вход сверточного кодера (кодера свертки) (л, к, К) = (2, 1, 5), имеющего скорость кодирования R = к!п = 0,5 и длину ограничения К — 5. В результате сверточного кодирования на выходе кодера получается цифровая последовательность в 189×2 = 378 бит.

Окончательно цифровые последовательности сегмента речи по блоку 1 — 378 бит и блоку 2 — 78 бит совместно составляют 456 бит, то есть скорость потока информации речи на выходе кодера канала равна 456/20-10_3 = 22,8 кбит/с.

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

В стандарте GSM используется достаточно сложная и совершенная схема блочного диагонального перемежения (рис. 4.15).

Полученные 456 бит информации одного 20-мил л исекундного сегмента речи разбиваются на 8 подсегментов по 57 бит каждый (456/8 = 57)

Рис. 4.15. Схема блочного диагонального перемежения

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

Как показано в работе [4.8], таблица перемежения для речевой последовательности бит имеет вид:

После перемежения (рис. 4.

15) 456 бит информации одного речевого сегмента распределяются по одноименным слотам (временным интервалам) четырех последовательных кадров канала трафика: два поля по 57 бит в слоте и каждое 57-битовое поле снабжается дополнительным скрытым флажком S, помечающим информацию речи (в отличие от информации управления канала, например, быстрого совмещенного канала управления FACCH, информация которого кодируется иначе).

Итак, длина слота канала трафика, с учетом добавления вспомогательной и служебной информации, составляет 3 + 57+1 + 26 + 1+ 57 + 3 + 8,25 = 156,25 бит, и поскольку информация одного 20-миллисекундного сегмента речи занимает по одному слоту в четырех последующих кадрах, скорость результирующего потока цифровой информации составляет (4х156,25)/20х1СГ3 = 625/20х10“3 = 31,25 кбит/с.

Эта информация (а именно 4×156,25 = 625 бит) сжимается во времени в 8 раз, так что на протяжении одного кадра длительностью 4,615 мс передается информация восьми временных слотов, в результате чего частота битовой последовательности возрастает до (8×31,25) = 250 кбит/с.

На каждые 12 кадров канала трафика, несущих речевую информацию (в мультикадре канала трафика информационными речевыми кадрами являются 1-12 и 14-25, в 13* кадре передается канал управления SACCH, а кадр 26* — пустой, для резервирования) добавляется по одному кадру с информацией управления канала SACCH (имеющую скорость 20,833 кбит/с). Таким образом, скорость информационной битовой последовательности (по речевому сигналу) на выходе кодера канала составляет: 250 + 20,833 = 270,833 кбит/с.

Следует отметить, что выше была рассмотрена процедура работы кодера канала только по помехоустойчивому кодированию речевой информации.

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

Так, для кодирования информации каналов: медленного совмещенного канала управления SACCH; быстрого совмещенного канала управления FACCH; канала вызова РСН; канала разрешения доступа AGCH; выделенных закрепленных каналов управления SDCCH используются блочный кодер (п, к) = (224, 184), сверточный кодер (п, к, К) = (2, 1, 5), а также схема перемежения, аналогичная схеме перемежения по речевому каналу.

В каналах синхронизации SCH и случайного доступа RACH используются другие схемы блочного кодирования, а также сверточные кодеры (2, 1, 5), отличающиеся от сверточных кодеров перечисленных выше каналов управления.

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

В заключение рассмотрения кодера канала стандарта GSM в табл. 4.4 [4.4] приведены основные характеристики систем кодирования речи стандартов GSM и D-AMPS (США). Последняя строка таблицы показывает эффективность использования полосы частот, которая характеризуется скоростью передачи информации на выходе кодера канала, приходящейся на

1 Гц полосы, занимаемой частотным каналом 270,833* 103/(200*103) = 1,354 (бит/с)/Гц).

Таблица 4.4. Характеристики систем кодирования речи в стандартах GSM и D-AMPS

Декодер канала

Процесс декодирования информации после демодуляции выполняется в порядке, обратном кодированию (см. рис. 4.5):

1) снимается сжатие информации во времени, то есть информация возрастает во времени в 8 раз;

2) снимается перемежение, то есть восстанавливается последовательность битов после шифрования информации;

3) реализуется дешифрование информации;

4) реализуется разделение информационных потоков речи и управляющей информации;

5) при декодировании информации речи процесс идет следующими этапами:

— в начале (после эквалайзера) выполняется сверточное декодирование информации (класса 1), при этом исправляются ошибки в пределах возможностей кода свертки;

— далее по коду четности проверяется наличие остаточных ошибок в информации подкласса 1а, и, если такие ошибки обнаруживаются, информация данного сегмента не идет в последующую обработку, а заменяется интерполированной информацией смежных сегментов;

6) реализуется блочное декодирование речевой информации;
7) реализуется сверточное и блочное декодирование управляющей информации, которая далее поступает в CPU. После сверточного и блочного декодирования речевой информации сигналы (цифровая последовательность) подаются на вход декодера речи.

Источник: http://afu.com.ua/gsm4/koder-kanala

Методы канального кодирования: турбо-коды

Кодер ТК:  Можно считать, что в канал связи передаются два кодовых блока:
Турбо-код состоит из каскада параллельно соединённых систематических кодов. Эти составляющие называются компонентными кодами. В качестве компонентных кодов могут использоваться свёрточные коды, коды Хемминга, Рида — Соломона,  Боуза — Чоудхури — Хоквингема и другие.

В зависимости от выбора компонентного кода турбо-коды делятся на свёрточные турбо-коды (англ. Turbo Convolutional Codes, ТСС) и блоковые коды-произведения (англ. Turbo Product Codes, TPC).

Согласно последним исследованиям и разработкам, наилучшие практические результаты достигаются при использовании турбокодов на основе кодов Хэмминга или кодов Боуза-Чоудх-ури-Хоквингема.

Энергетический выигрыш, получаемый при использовании турбокодирования в канале с белым гауссовским шумом, составляет от 2 до 4 дБ по сравнению с другими распространенными методами (например, по сравнению с каскадным кодом)

Очевидно, что при энергетическом выигрыше в 3 дБ мощность передатчика может быть уменьшена в 2 раза при прочих равных условиях, либо допустимый коэффициент шума приемника может быть увеличен на 3 дБ

Энергетический выигрыш в 3 дБ позволяет увеличить дальность связи на 40%, либо сократить размеры приемной или передающей антенны на 30%, поскольку коэффициент усиления и эффективная площадь антенны связаны следующим соотношением

Турбо-коды были предложены К. Берроу (C. Berrou), А. Главьё (A. Glavieux) и П. Ситимашимой (P. Thitimajshima) (англ. Ecole Nationale Superieure des Telecommunications de Bretagne (ENST), Высшая национальная школа телекоммуникаций Бретани (Франция)) в 1993 году в статье «Кодирование и декодирование с исправлением ошибок вблизи предела Шеннона: турбо-коды» (англ. «Near Shannon Limit Error-correcting Coding and Decoding: Turbo-code»)  Отмечу преимущества и недостатки  турбо-кодов.  Основное их замечательное свойство состоит в том, что среди всех практически используемых современных методов коррекции ошибок турбо-коды наиболее близко подходят к границе Шеннона теоретическому пределу максимальной пропускной способности зашумленного канала (так же достаточно близко к ней подходят и коды с низкой плотностью проверок на чётность, но их в данной теме рассматривать я не буду).  Другие их преимущества состоят в том, что турбо-коды позволяют увеличить скорость передачи информации, не требуя увеличения мощности передатчика, или они могут быть использованы для уменьшения требуемой мощности при передаче с заданной скоростью. Важным преимуществом турбо-кодов является независимость сложности декодирования от длины информационного блока, что позволяет снизить вероятность ошибки декодирования путём увеличения его длины. Рис.1.Теоритическая взаимосвязь по Шеннону максимальной пропускной способности канала с ОСШ # Из недостатков основным является относительно высокая сложность декодирования и большая задержка, которые делают их неудобными для некоторых применений. Но, например, для использования в спутниковых каналах этот недостаток не является определяющим, так как длина канала связи сама по себе вносит задержку, вызванную конечностью скорости света.Ещё один важный недостаток турбо-кодов — сравнительно небольшое кодовое расстояние (то есть минимальное расстояние между двумя кодовыми словами в смысле выбранной метрики). Это приводит к тому, что, хотя при большой входной вероятности ошибки (то есть в плохом канале) эффективность турбо-кода высока, при малой входной вероятности ошибки эффективность турбо-кода крайне ограничена. Поэтому в хороших каналах для дальнейшего уменьшения вероятности ошибки применяют не турбо-коды, а LDPC-коды.

Главный принцип турбо-кодирования – использование двух параллельно работающих элементарных кодеров. При этом информационный блок кодируется дважды, причем второй раз — после предварительного случайного перемежения (перемешивания, перетасовывания и т.п.).

При декодировании кодированный блок можно «расщепить» на два кодовых блока. Это обстоятельство позволяет использовать два декодера, каждый из которых производит декодирование своего кодового блока.

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

В этом состоит принцип турбо- или итеративного декодирования. 

Турбокоды используют «мягкий вход»-«мягкий выход». Это означает что, чем информационнее последовательность для второго кодирующего устройства, тем более некоррелированный информационный обмен между декодерами.

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

Кодер

Один из вариантов построения кодера приведен на рис.2, и, как видно, он представляет собой параллельное соединение двух рекурсивных систематических сверточных кодеров (Recursive Systematic Convolutional Codes — RSC). Оба кодера работают со скоростью равной 1/2.

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

На вход второго кодера с выхода перемежителя поступает бит, номер которого j зависит от номера i на входе перемежителя по псевдослучайному закону (i,j=1,..k). (Для этого блок из k информационных символов предварительно перед операцией кодирования должен быть записан в память.

) У нижнего кодера систематический выход не используется, а на втором выходе формируется второй проверочный бит. С выхода всего турбо-кодера на модулятор сначала поступает бит с систематического выхода верхнего кодера, а затем два проверочных бита: сначала с верхнего кодера, затем – с нижнего.

В результате кодовая скорость r всего турбо-кодера в целом оказывается равной 1/3. В любом случае благодаря использованию систематических сверточных кодеров в кодовом блоке можно явно выделить систематическую и проверочные части.

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

Декодер

Рис. 3. Турбо-декодер. Три итерации (Q=3) # Рис. 4. Турбо-декодер. Одна итерация #

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

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

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

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

Вариант построения итеративного декодера представлен на рис. 3 и 4. Декодер для каждой итерации (рис. 4) представляет собой каскадное соединение двух элементарных декодеров: первого и второго.

Каждый из этих декодеров выносит решение о переданном символе на основе критерия максимальной апостериорной вероятности (Maximum A Posteriori — MAP), чем обеспечивается минимум вероятности ошибочного декодирования каждым элементарным декодером.

На первой итерации от демодулятора на вход первого декодера поступают оценки («мягкие» решения) символов от демодулятора систематической и первой проверочной частей первого кодового блока.

На выходе первого декодера формируется оценка («мягкое» решение) информационного символа, которая затем используется в качестве априорной информации о нем для второго декодера. Этот декодер производит оценку символа с выхода перемежителя на основе проверочной части второго кодового слова. На второй и последующих итерациях (рис.

3) декодирования эта оценка обновляется и используется как априорная информация о переданном символе для первого декодера. Таким образом, на вход каждого из двух элементарных декодеров поступают «мягкие» решения, результат декодирования на выходе элементарного декодера – также «мягкое» решение.

По этой причине такие схемы получили название декодеров с мягким входом и мягким выходом (Soft Input Soft Output — SISO)4. Окончательное принятие решения о переданном информационном символе выносится нижним декодером. Окончание процесса декодирования происходит либо после выполнения заданного количества Q итерационных циклов, либо после того, как величина поправки результата декодирования достигнет установленного порога.

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

Перемежение в турбо-кодах

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

Задача перемежителя — преобразовать входную последовательность так, чтобы комбинации бит X0, соответствующие кодовым словам с низким весом (весом называется число ненулевых бит кодового слова) на выходе первого кодера, были преобразованы в комбинации, дающие кодовые слова с высоким весом на выходах остальных кодеров.

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

Из-за того что кодовые блоки формируются из почти независимых частей, на выходе турбо-кодера среднее расстояние между кодовыми словами больше, чем минимальное расстояние для каждого компонентного кодера, а следовательно растёт эффективность кодирования. Перестановка для каждой указанной длины блока k задается определенным переупорядочиванием целых чисел 1,2…

,k как предусмотрено следующим алгоритмом (ECSS-E-ST-50-01C). k = 8 * k0, где k0 = одному из следующих значений : 223, 223 * 2, 223 * 4, 223 * 5, в зависимости от необходимой глубины перемежителя

 Применение

Компаниями France Telecom и Telediffusion de France запатентован широкий класс ТК. Более того, ТК утверждены для помехоустойчивого кодирования несколькими cтандартами космической связи, а также мобильной связи третьего поколения.

Схема кодирования с кодерами на 16 состояний (K=5), максимальной длиной перемежения 16384 и кодовыми скоростями r=1/2,1/3,1/4,1/6 утверждена в 1999 г. американским комитетом CCSDS (Consultative Committee for Space Data Systems) в стандарте передачи телеметрической информации с космических аппаратов. В феврале 2000 г.

консорциум DVB утвердил ТК в стандарте DVB-RCS для передачи информации по обратному спутниковому каналу (Return Channel for Satellite — RCS), т.е. в направлении от спутника к абоненту. ТК формируются на основе циклического рекурсивного систематического сверточного кодера (Circular Recursive Systematic Convolutional — CRSC).

Использование стандарта совместно с вещательным стандартом DVB-S позволяет проектировать полноценную широкополосную систему спутникового интерактивного цифрового телевидения. Компанией TurboConcept в партнерстве с европейским спутниковым оператором Eutelsat разработан турбо-декодер TC1000 в соответствии со стандартом DVB-RCS.

Использование ТК принято также в новом стандарте спутниковой системы связи Inmarsat.

В нарождающихся универсальных мобильных системах (IMT-2000) третьего поколения (3G), предназначенных для передачи и приема мультимедийной информации, ТК также получили широкое применение. В стандарте cdma2000 для высокоскоростного режима передачи информации (больше 14.

4 кбит/с) как к абоненту (forward link), так и от абонента (reverse link) используется ТК с 8-ю состояниями (K=4) и кодовыми скоростями r=1/2,1/3,1/4 [15].

В стандарте UMTS для высокоскоростного режима передачи информации (больше 32 кбит/с) и приема с высоким качеством (BER около 10-6) используется ТК с 8-ю состояниями (K=4) и двумя кодовыми скоростями r=1/2 и 1/3 (рис. 5).

Рис. 5. Турбо-кодер, используемый в стандарте UMTS для мобильных систем третьего поколения #

 Список источников.

Эта статья является первой моей работой на данную тему. Надеюсь, сведения, представленные в ней помогут вам понять, что же такое турбо-коды и для чего они используются

З.Ы. С удовольствием учту пожелания по поводу статьи, вдруг кто-то захочет получить какую-то более конкретную информацию

Источник: http://omoled.ru/browse/P7

1.13. Комбинации кодов, принцип турбокодирования

Кодер ТК:  Можно считать, что в канал связи передаются два кодовых блока:

В противоположность классическим алгебраическим блочным кодам, ТК следует отнести к случайным кодам. Один из вариантов построения кодера ТК представлен  на рис. 1.21.

Рис. 1.21. Схема простейшего турбокодера

Длина блока ТК реально может достигать чрезвычайно большой величины, поскольку она не влияет на вычислительную сложность алгоритма декодирования. При декодировании ТК, как и при декодировании сверточных кодов, не возникает трудно­стей использования мягких решений и возможность применения на этой основе итеративного алгоритма декодирования.

Кодер содержит два параллельно соединенных сверточных кодера. Отличие кодера 1 от кодера 2 заключается в том, что в первом кодере имеется систематический выход, через который в канал связи поступает информационная последовательность. Это обеспечивает систематическое представление  кодовой последовательности. Скорость кодеров равна  1/2.

  Это означает, что общая скорость кодера ТК равна 1/3, поскольку на выходах 1 и 2 формируются только проверочные биты.  Выбор битов с выхода перемежителя может подчиняться псевдослучайному закону и соответствовать заданной функции , следовательно, информационный блок должен быть введен в перемежитель до начала процедуры кодирования.

С выхода всего турбо-кодера на модулятор сначала поступает бит с систематического выхода верхнего кодера, а затем два проверочных бита: сначала с 1 кодера, затем – со второго. Анализ многочисленных результатов экспериментальных ис­следований ТК, выполненных различными авторами, показал, что структура перемежителя сравнительно слабо влияет на его эффек­тивность такого кодирования.

Те же результаты свидетельствуют о пропорциональном увеличении эффективности ТК с ростом как длины кодового ограни­чения сверточного кода, так и длины перемежителя. В любом случае благодаря использованию систематических сверточных кодеров в кодовом блоке можно явно выделить систематическую и проверочную части.

Более того, можно считать, что в канал связи передаются два кодовых блока: первый кодовый блок, состоящий из информационной части и проверочной части кодера 1, и второй кодовый блок, состоящий из перемешанной информационной части и проверочной части кодера 2. Ясно, что передавать перемешанную (систематическую) часть второго кодового блока в канал связи нет смысла.

Для ее восстановления в декодере можно использовать опе­рацию обратную операции перемежения информационной части кодового блока (деперемежения), соответствующую функции . Традиционно в соответствии со схемой представленной на рис. 1.15 избыточные коды подбираются по кри­терию максимума минимального расстояния .

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

Благодаря особенностям формирования кодовых блоков из двух практически независимых частей, величина  их суммы будет заметно больше, чем исходного сверточного кода.  Это достигается за счет применения рекурсивной схем кодера, получившей свое название от рекуррентных регистров сдвига, имеющих обратную связь через схему неравнозначности. Рекурсивная схема кодера показана на рис. 1.22.

Рис. 1.22. Схема рекурсивного кодера сверточного кода

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

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

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

Рис. 1.23. Диаграмм состояний рекурсивного кодера сверточного кода

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

Это обстоятельство позволяет использовать два декодера, каждый из которых производит декодирование своего кодового блока.

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

Рис. 1.24. Схема простейшего турбодекодера

Декодер для каждой итерации представляет собой каскадное соединение двух элементарных декодеров: первого и второго.

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

На первой итерации от демодулятора на вход первого декодера поступают оценки (мягкие решения) символов от демодулятора систематической и первой проверочной частей первого кодового блока.

На выходе первого декодера формируется оценка (мягкое решение) информационного символа, которая затем используется в качестве априорной информации о нем для второго декодера. Этот декодер производит оценку символа с выхода деперемежителя на основе проверочной части второго кодового слова.

На второй и последующих итерациях декодирования эта оценка обновляется и используется как априорная информация о переданном сим­воле для первого декодера. Таким образом, на вход каждого из двух элементарных декодеров поступают мягкие решения, результат декодирования на выходе элементарного декодера – также мягкое решение.

По этой причине такие схемы по­лучили название декодеров с мягким входом и мягким выходом (Soft Input Soft Output -SISO). Именно такой декодер обозначен на рис. 1.3. Изложенный алгоритм декодирования оказался чрезвычайно эффективным, и каждая последующая ите­рация увеличивает априорную информацию о переданном символе. При этом, первое и второе  итеративные преобразования обеспечивают траектории  близкие к траектории  и только на 18 итерации декодер приближается к траектории  .

Окончание процесса декодирования происходит либо после вы­полнения заданного количества Q итерационных циклов, либо после того, как величина поправки результата декодирования достигнет установленного порога. Вычислительная сложность турбо-декодера в расче­те на один информационный бит не зависит от длины информационного блока . В этом смысле ТК подобен сверточному коду.

В то же время, с ростом , для ТК, как для всех блочных кодов, возрастает требуемый объем памяти декодера и, соответственно, время задержки декодирования [64]. Компаниями France Telecom и Telediffusion de France запа­тентован широкий класс ТК.

Более того, ТК утверждены для по­мехоустойчивого кодирования несколькими стандартами космичес­кой связи, а также мобильной связи третьего поколения [99].

Схема кодирования, с кодерами на 16 состояний (К=5), максимальной длиной перемежения 16384 и кодовыми скоростями R = 1/2; 1/3; 1/4; 1/6 утверждена в 1999 г. аме­риканским комитетом CCSDS (Consultative Committee for Space Data Systems) в стандарте передачи телеметрической информации с кос­мических аппаратов. В феврале 2000 г.

консорциум DVB утвер­дил ТК в стандарте DVB-RCS для передачи информации по обратному спутниковому каналу (Return Channel for Satellite — RCS), т.е. в направлении от спутника к абоненту. ТК формируются на основе циклического рекурсивного систематического сверточного кодера (Circular Recursive Systematic Convolutional – CRSC).

Использование стандарта совместно с вещательным стандартом DVB-S позволяет проектировать полноценную широкополосную систему спутникового интерактивного цифрового телевидения. Компанией Turbo Concept в партнерстве с европейским спутниковым оператором Eutelsat разработан турбо-декодер ТС1000 в соответствии со стандартом DVB-RCS.

Использование ТК принято также в новом стандарте спутниковой системы связи Inmarsat. В универсальных мобильных системах (IMT-2000) третьего поколения (3G), предназначенных для передачи и приема мультимедийной информации, ТК также получили широкое применение. В стандарте CDMA-2000 для высокоскоростного режима передачи информации (больше 14.

4 кбит/с) как к абоненту (forward link), так и от абонента (reverse link) используется ТК с восемью состояни­ями (К = 4) и кодовыми скоростями  = 1/2; 1/3; 1/4.

В стандарте UMTS для высокоскоростного режима передачи информации (больше 32 кбит/с) и приема с высоким качеством (BER около 106) используется ТК с восемью состояниями (К = 4) и двумя кодовыми скоростями = 1/2 и  = 1/3.

Источник: http://scask.ru/a_book_md.php?id=16

Scicenter1
Добавить комментарий