Прокис Дж. Цифровая связь (2000) (1151856), страница 83
Текст из файла (страница 83)
114) 0,5 оя о,з о,г од о о,г оя о,о ОВ 1О Скорость кода гг, Рис. 8.1.16. Верхняя и нижняя границы нормнровагцгого инниьильного расстояния в функции от скорости кода 396 сг„,„/гг > а, где а связано со скоростью кода уравнением ггг, = 1 — Н(а) = 1+ а 1о8г а+ (1 — а) !о8г(! — а), О < а < г . (8.1, 115) Эта нижняя граница — частный случай нижней границы, открытой Гильбертом (1952) и Варшамовым (1957), которая применима для недвоичных и двоичных блоковых кодов. Асимптотические границы, данные выше, приведены на рис. 8.1 16 для двоичных кодов. С целью сравнения на рисунке даны также кривые минимального расстояния, как функции скорости кода для БЧХ кодов с длиной блоков гг = 31 и 63.
Видно, что для гг = 31 и 63 нормированное минимальное расстояние хорошо ложится над нижней границей Варшамова — Гильберта. По мере увеличения длины блока и, эффективность БЧХ кодов ослабевает. Например, когда и = 1023, кривая нормированного минимального расстояния ложится близко к границе Варшамова — Гильберта. Если и возрастает выше и = 1023, нормированное минимальное расстояние БЧХ кода продолжает уменьшается и падает ниже границы Варшамова — Гильберта. Это значит„что гг',„/гг приближается к нулю по мере того как и стремится к бесконечности.
Следовательно, БЧХ коды, которые являются наиболее важным классом циклических кодов, не очень эффективны при больших длинах блоков. 8.1.8. Ьедвоичные блоковые коды и каскадные блоковые коды Недвоичные блоковые коды состоят нз набора кодовых слов фиксированной длины, в которых каждый элемент кодового слова выбирается из алфавита, содержащего символов, обозначаемых (О, 1, 2,...,д — Ц.
Обычно д = 2', так что к информационных бит отображается одним из д символов. Длина недвоичного кодового слова обозначается через Ф, а число информационных символов, закодированных блоком из Лг символов, обозначается К. Минимальное расстояние недвоичного кода обозначается Р Систематический блоковый код (У,К)содержит К информационных символов и У вЂ” К проверочных символов. Среди различных типов недвоичных линейных блоковых кодов коды Рида †Соломо являются одними из самых важных для практических приложений. Как было указано раньше, они составляют подкласс БЧХ кодов, которые, в свою очередь, являются классом циклических кодов.
Эти коды описываются параметрами У=д — 1=2" — 1 1=1,2,3,.. У вЂ” 1 Р, =М вЂ” К+1 Я, =К/У Такой код гарантированно исправляет до 1=~;(Р.„,-1)~=~;(Л-К)! (8. 1. 117) ошибок символов. Конечно, этн коды могут быть расширены и укорочены так, как было описано ранее для двоичных блоковых кодов. Распределение весов (А,) класса кодов Рида — Соломона известно. Коэффициенты во взвешивающем полиноме определяются так: где РвР,„и д=2" Одно объяснение важности кодов Рида — Соломона — их хорошие дистанционные свойства.
Второе объяснение их важности — существование эффективных алгоритмов декодирования жестких решений, которые делают возможным реализовать относительно длинные коды во многих практических приложениях, где требуется кодирование. Недвоичный код хорошо согласован с техникой М-ичной модуляции для передачи 2" возможных символов. В частности, часто используется М-ичная ортогональная система сигналов, например, М-ичная ЧМ, Каждый из 2' символов в и-ичном алфавите отображается в один из М=2 ортогональных сигналов. Таким образом, передача кодового слова связана с передачей У ортогональных сигналов, где каждый сигнал выбирается из набора М = 2" возможных сигналов.
Оптимальный демодулятор для такого сигнала, искаженного в канале с АБГШ, состоит из М согласованных фильтров (или взаимных корреляторов) чьи выходы подаются к декодеру в форме мягких или жестких решений. Если демодулятор вынес жесткие решения, то вероятность ошибки символа Р~ и параметры кода достаточны для характеристики качества декодера.
Действительно, модулятор, канал с АБГШ и демодулятор формируют эквивалентный симметричный канал без памяти с дискретным (М-ичным) входом и дискретным (М-ичным) выходом, характеризуемый переходными 397 ь вероятностями Р, =1 — Р, и Р,„((М вЂ” 1). Эта модель канала, которая иллюстрируется на рис, 8.1.17, является обобщением ДСК. Качество декодера жестких решений можно характеризовать следующей верхней границей для вероятности ошибки кодового слова; (8. 1. 119) Р 2и- Н М-1 Рис, 8.1.17. М-ичный по входу, М-нчный по выходу симметричный канал без паматн (8.1. 120) Р = — Р.
иЬ Пример 8.1.13. Рассчитаем качество кода Рида-Соломона при У = 2' — 1 = 31, 13 „=3, 5, 9, 17. Соответствующие значения К равны 29, 27, 23 и 15. При модуляции используются М = д = 32 ортогональных сигнала ЧМ и некогерентное детектирование на приеме. Вероятность ошибочного приема символа определяется (5.4.46), и ее можно выразить в виде (8.1. 122) где у — ОСШ на кодовый символ. Используя (8,1.122) в (8.1.120) и объединяя результат с (8.1.121), мы получим вероятность ошибки на бит. Результаты этих расчетов даны на рис 8.1.18, Заметим, что более мощные коды (больше й„н) дают худшее качество при низких ОСШ на бит, чем слабые коды. С другой стороны, при высоких ОСШ более мощные коды дают лучшее качество.
Таким образом, имеется пересечение среди различных кодов, как показано для примера на рис. 8.1.18 для значений 1 = 1 и 1 = 8. 398 где ~ — число ошибок, гарантированно исправляемое кодом. Ошибке кодового слова соответствует вероятность ошибки символа Р. = ~~ '„«"! ~Я1- Р„,) «=ы« Далее, если символы отображаются битами, то вероятность ошибки (8.1,120), ранна на бит, исходя из (8.1.
121) ш' ш4 'У 10' Ф е 106 В 5,0 6,0 7,0 4,0 осш яа 6кс 7~1лБ) Рис. 8.1.18. Характеристики неипорых кодов Рида-Соломона, исправляющих 1ошибок, с Ь'=31, 32-позиционной ЧМ в канале с АБГШ (некотерентнля демодуляция) Пересечение также возникает для кодов с г = 1, 2 и 4 при малых значениях ОСШ на бит. Аналогично, кривые для г = 4, 8 и 1= 8, 2 пересекается в области больших значений ОСП?. Это характерное поведение кодированных сигналов при некогерентном детектировании. Если демодулятор не выносит жесткое решение по каждому кодовому символу, но, вместо этого, отправляет неквантованные выходы согласованных фильтров к декодеру, можно использовать декодирование мягких решений, Такое декодирование включает в себя формирование д" = 2гх корреляционных метрик, где каждая метрика соответствует одному из д кодовых слов и состоит из суммы выходов У согласованных фильтров, соответствующих У кодовым символам, Выходы согласованных фильтров можно (1) суммировать когерентно, (2) детектировать по огибающей, а затем суммировать или (3) квадратировать и затем суммировать.
Если используется когерентное детектирование, а в канале действует АБГШ, расчет вероятности ошибки является простым обобщением двоичного случая, рассмотренного в разделе 8.1.4. С другой стороны, если используется детектирование огибающей или квадратичное детектирование и некогерентное сложение для формирования величин,по которым принимается решение, расчет качества декодера значительно более сложен. Каскадные блоковые коды. Каскадный код состоит из двух отдельных кодов, которые объединяются для образования большего кода Обычно один из кодов выбирается недвоичным, а второй двоичным. Они соединяются каскадно, как показано на рис. 8.1.19. Недвоичный (У, Х) код образует внешний код, а двоичный — внутренний код.
Кодовые слова формируются путем подразделения блока на К/с информационных бита по К группам, называемым символами, причем каждый такой символ состоит из Ф бит. К символов (с Ф битами каждый) кодируются в АГ символов внешним кодом, как это обычно делается при недвоичном кодировании.
Внутренний кодер берет каждый ?г-битовый символ и кодирует его в двоичный блоковый код длины п Таким образом, мы получаем каскадный блоковый код, имеющий'длину Юп бита и содержащий К/с информационных 399 бита. Это значит, мы создали эквивалентный (Уп,К1с) длинный двоичный код. Биты в каждом кодовом слове передаются по каналу посредствам ФМ или, возможно, ЧМ. Рис. 8,1Л 9, Блок-схема системы связи, использтющей каскадный код Также укажем, что минимальное расстояние для каскадного кода равно с~,„В,„, где  — это минимальное расстояние для внешнего кода, а а',„— минимальное расстояние для внутреннего кода. Далее, скорость каскадного кода равна КЦМп, что равно произведению скоростей двух кодов. Декодер жестких решений для каскадного кода удобно разделить на внутренний декодер и внешний декодер.
Внутренний декодер выполняет жесткое решение по каждой группе из п бита, соответствующие кодовому слову внутреннего кода, и выносит решение о 1 информационных битах, основываясь на алгоритме максимального правдоподобия (минимума расстояния). Эти 1с бит представляют один символ внешнего кода. Когда принят .блок из тт' 1с-битовых символов от внутреннего декодера, внешний декодер принимает жесткое решение по К 1г-битовым информационным символам, основываясь на декодирование по правилу максимального правдоподобия. При каскадном кодировании возможно и декодирование мягких решений.
Обычно оно выполняется по внутреннему коду, если он выбран так, что имеет немного кодовых слов, т:е 2" не очень велико. Внешний код обычно декодируется посредствам декодера жестких решений, особенно если длина блока велика и имеется много кодовых слов. С другой стороны„можно достичь достаточный выигрыш в качестве при использовании декодирования мягких решений по внутреннему и внешнему кодам, чтобы оправдать дополнительную сложность декодирования.
Этот случай интересен для цифровых систем связи в радиоканалах с замираниями, как мы покажем в главе 14. Мы завершим этот подраздел следующим примером. Пример 8,1.14. Предположим, что код Хемминга (7, 4), описанный в примерах 8.1.1 и 8.1.2, используется как внутренний код при каскадном кодировании, причем в качестве внешнего кода используется код Рида — Соломона. Поскольку К=4, выберем длину кода Рида — Соломона тт'= 2' — 1=15. Число информационных символов К в кодовых словах внешнего кода можно выбрать в области 1 < К < 14 для того, чтобы достичь желательную скорость кода.