Ипатов В. Широкополосные системы и кодовое разделение сигналов (2007) (1151883), страница 79
Текст из файла (страница 79)
'Хем самым предельная скорость передачи в полосе И', достижимая для БФМ, оценивается как В = (1одМ)/Т < 2И', что, в свою очередь, приводит к границе спектральной эффективности (скорости на один герц) В/И' < 2 (бит/с)/Гц. Возьмем теперь двоичный код со скоростью В, = 1/2, означающей, что только каждый второй элемент сигнального вектора переносит полезные данные, тогда как остальные заняты проверочными символами (на один бит приходится два отсчета сигнала), так что отношение скорости к полосе В/И~ = 1 (бит/с)/Гц.
Сверившись с границей Шеннона (1.2), можно заключить, что минимальная энергия на бит, нормированная к интенсивности шума Еь/Хо (половина мощностного отношения сигнал-шум на бит), потребная для безошибочной передачи по АБГШ каналу с этой скоростью, равна 0 дБ. Мы, однако, имеем дело с гауссовским каналом, дополнительно ограниченным по входному алфавиту рамками БФМ (гауссовский канал с бинарным входом), что поднимает минимально необходимое отношение Еь/Фв, отвечающее В/И~ = 1 (бит/с)/Гц, до 0,19 дБ [97].
Турбо-код с компонентной длиной кодового ограничения 5 и длиной блока 65536 из [95, 96] обеспечивает вероятность ошибки на бит Рь < 10 ~ (последнее значение нередко используется как практический критерий надежной работы беспроводной системы) при Е~/Же 0,7 дБ, т.е. уступает границе Шеннона лишь около 0,5 дБ. На момент обнародования подобные результаты казались фантастическими, поскольку долгая и безуспешная предыстория внушила многим экспертам убеждение в бесперспективности поисков регулярных правил кодирования, приближающих показатели связи к границе Шеннона.
Вслед за первыми турбо-кодами [95, 96] были открыты и другие, столь же или еще более эффективные, коды (последовательно-каскадные, низкоплотностные и др., см. библиографию в [97]). Уместно подчеркнуть, что асимптотически (Еь/Хе — + оо) поведение турбо-кодов не лучше, чем сверточных с той же скоростью и памятью, поскольку они не имеют никаких преимуществ в части минимального расстояния.
Обратившись к (2.23), можно видеть, что асимптотически (с ростом отношения сигнал — шум) фактор кратности и;, т.е. количе- ~~(386 Глава 9. Канальное кодирование в широкополосных сисхпелах ство сигналов на минимальном евклидовом расстоянии папа от переданного сигнала играет вторичную роль по сравнению с самим значением 4„;в из-за экспоненциального спадания Я-функции с отношением сигнал — шум (чтобы убедиться в этом, достаточно взять логарифм от Ре). По этой причине зависимость Р, от Еь/Яд рано или поздно принимает вид плато, определяемого д ва и однотипного для любого кода с тем же минимальным расстоянием.
Подобное, однако, имеет место при отношениях сигнал — шум, соответствующих чрезвычайно малой вероятности ошибки на бит, значительно ниже той, что обычно достаточна на практике. Высокая эффективность турбо-кодов при относительно низком отношении сигнал — шум на бит базируется не на большом минимальном расстоянии, а на сравнительно малом количестве слов, расположенных близко друг к другу, т.
е. малом факторе кратности папа в (2.23). Указанное перераспределение расстояний в направлении увеличения числа удаленных слов по сравнелию со сверточными кодами объясняется псевдослучайной перестановкой битов данных перед подачей на второй компонентный сверточный кодер. Если битовая конфигурация данных неблагоприятна в том плане, что вес первого компонентного кодового слова мзл, перестановка может изменить ее настолько, что вес второго компонентного слова окажется значительно больше. 9.4.4. Приложения Несмотря на короткую историю, турбо-коды быстро обрели широкую популярность и уже вошли в спецификации многих систем. В нашем контексте наиболее интересны их применения в стандартах мобильных систем третьего поколения.
В спецификацию %СПМА включены турбо-коды со скоростью 1/3, образованные из двух сверточных кодов с длиной кодового ограничения четыре в комбинации с перемежителем переменной длины в диапазоне от 40 до 5114 [92, 97]. В стандарте сйпа2000 также предусмотрены двухкомпонентные турбо-коды с длиной кодового ограничения четыре и длинами перемеженкя в диапазоне от 250 до 4090. С помощью выкалывания скорости могут варьироваться в пределах набора 1/2, 1/3, 1/4 или 1/5 (69, 97]. 95. Канальное перемежение Предыдущий анализ опирался на модель канала без памяти, в котором искажения кодовых символов канальной помехой независимы.
В реальных беспроводных каналах, подверженных эффектам затенения и замирания (см. ~ 3.5), к упомянутым аддитивным безынерционным искажениям добавляются мультипликативные: сравнительно медленные и охватывающие длинные пакеты кодовых символов спорадические спады в уровне принимаемого сигнала. Технология противодействия им, кратко описываемая ниже, универсальна вне зависимости от способа декодирования (оно может быть как жестким, так и мягким), однако в целях конкретности положим, что избрана процедура жесткого декодирования. Когда АБГШ является единственной канальной помехой, все символьные ошибки независимы и случайно рассеяны в пределах кодового слова.
Падение уровня сигнала из-за замирания приводит к группированию ошибочных символов в пакеты (пачки). Разумеется, при длине В пакета не более исправляющей (обнаруживающей) способности 1,(1л) кода декодер без труда исправит (обнаружит) В ошибок, поскольку конкретная конфигурация ошибок в пределах контролирующей способности кода не имеет значения. Для замираний, однако, весьма характерны относительно редкие, но длинные пакеты ошибок, так что поддержание условия В < 1, вынудило бы применять коды с чрезмерным количеством проверочных символов, т.е.
пониженной скоростью и расточительным расходом полосы. Эффективной и весьма практичной альтернативой является популярное канальное перемелсекие, при котором символы кодового потока перед передачей в зфир переставляются так, чтобы удалить друг от друга близко расположенные и, наоборот, сблизить удаленные. На приемной стороне выполняется деперемежение, в результате которого все кодовые символы возвращаются на свои исходные позиции.
Когда в канале возникает пакет ошибок длины В, искаженные им символы после деперемежения оказываются удаленными друг от друга, как если бы ошибки были независимыми. При использовании блокового кода соответствующей длины и расстояния эти ошибки с большой вероятностью окажутся разбросанными по различным словам и будут исправлены декодером. В случае сверточных кодов шансы на их исправление вновь весьма высоки, так как подобные коды исправляют многие конфигурации ошибок за пределами свободного расстояния, если они не образуют слишком плотные пакеты. В простейшем варианте описанная техника реализуется блоковым перемежителем, записывающим символы кодового потока в квадратную матрицу построчно с последующим считыванием по столбцам.
Естественно, деперемежение на приемной стороне переупорядочивает символы в обратном порядке. Перемежение является неотъемлемой частью процедур канального кодирования большинства современных беспроводных систем связи, включая все 20 и 30 мобильные стандарты. (звв Глава д. Канальное кодирование в широкополосных системах Задачи Двоичный блоковый код длины и = 9 используется для передачи М = 32 сообщений.
Сколько проверочных символов в его слове? Какова его ско- рость? Каково число избыточных двоичных векторов наблюдения? Двоичный блоковый код имеет минимальное расстояние Хэмминга 4?п = 7. Каково его минимальное евклидово расстояние, если бинарные симво- лы передаются неперекрывающимися частотно-манипулированными им- пульсами энергии Е,? 9.2.
Для передачи данных по ДСК используется двоичный блоковый код ?? = = (10101, 00011, 11000, 01110). Принят вектор наблюдения у = (00110). В какое кодовое слово он будет декодирован при исправлении ошибок? Каков будет ответ, если у = (1101Ц? Какова исправляющая (обнаруживающая) способность кода? Линеен ли этот код? Докажите утверждение 9.2. 9.3. Каким должно быть минимальное расстояние двоичного кода, исправля- ющего вплоть до 1, ошибок и, сверх того, обнаруживающего вплоть до 14 > 2, ошибок? 9.5. Найдите число двоичных векторов веса не больше 24 (объем двоичной сферы радиуса 24). Используя результат задачи 9.6, докажите границу Гильберта: двоичный блоковый код, обнаруживающий до 14 ошибок, существует наверняка, если 9.7.
(М Ц~~ Сс (2ь 4=0 где М, и — число кодовых слов и длина кода соответственно. Найдите результат следующих действий над двоичными полиномами: 9.8. 4( ) ( 8+ 2+ц( 4+ц ( 2+ц2( 8 ц+ 6+ 2 Раскройте скобки в двоичном полиноме (2 + ц2, где 2 — целое положи- тельное число.
ковый код длины и, использующий его как порождающий (т. е. имеюший кодовые полиномы вида и(2) = Ь(2)д(2), где б(2) — произвольные двоич- ные полиномы степени не выше и — г — ц, линеен. 9.12. Двоичный полипом 92(2) = 24 + 2+ 1 примитивен. Какова наибольшая длина СНС кода с обнаружением до трех ошибок, имеющего такой порождающий полипом? Будет полипом наблюдения д(2) = 28 + 28 + 2 + 1 объявлен ошибочным нли нет? Что можно сказать о полиноме 9(2) = 8+ 4+ +12 910. Найдите остаток от деления 28 + 28 + 1 на 22+ 2+ 1 над полем СГ(2).
9.11. Пусть д(2) — двоичный полипом степени г. Докажите, что двоичный бло- 3. ЗВф 9.13. Порождающими полиномами сверточного кода являются д~(л) = 1, дэ(з) = 1+ я. Каковы скорость и длина кодового ограничения этого кода? Изобразите схему кодера, постройте решетчатую диаграмму и найдите свободное расстояние кода. 9.14. Порождающими полиномами сверточного кода являются д~(л) = 1+я+за, дз(г) = 1+ л+ з~, дз(з) = 1+ зэ.
Каковы скорость и длина кодового ограничения этого кода? Изобразите схему кодера, постройте решетчатую диаграмму и найдите свободное расстояние кода. 9.15. Одним из двух порождающих полиномов сверточного кода является д~(з) = = 1+ я+ зэ. Какой из полиномов дз(г) = 1, дз(л) = 1+ з или дз(з) = 1+ яз лучше в качестве второго порождающего полинома для максимизации асимптотического выигрыша от кодирования? Чему равен максимальный выигрьпп от кодирования? Какой вывод следует из этой задачи в части сравнения систематических и несистематических кодов? 9.16.