Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Сети и системы передачи информации Лекции.doc
Скачиваний:
194
Добавлен:
22.09.2019
Размер:
31.77 Mб
Скачать

3.7. Каскадные коды

Идея каскадного кодирования поясняется рис. 3.13. Один из кодов, так называемый внутренний, является двоичным (nk) кодом. Другой код, так называемый внешний, является первичным (NK) кодом. В качестве внешнего кода обычно выбирается код Рида-Соломона. Кодирование осуществляется следующим образом. Блок из kK информационных символов разделяется на K подблоков, содержащих k двоичных символов каждый. Каждый подблок из k символов сначала преобразуется кодером внешнего кода в кодовое слово, содержащее N подблоков. Затем каждый из N подблоков преобразуется кодером внешнего кода в двоичное кодовое слово, содержащее n символов. Множество N кодовых слов внутреннего кода является кодовым словом каскадного (NnKk) кода с кодовой скоростью R = Kk/(Nn).

Рис. 3.13. Иллюстрация принципа каскадного кодирования-декодирования

Несмотря на сравнительно большую длину слова каскадного кода, сложность декодера увеличивается незначительно благодаря структурным свойствам каскадного кода, позволяющим осуществить декодирование в два этапа. Действительно, при декодировании на первом этапе декодером внутреннего кода N его кодовых слов преобразуются в N подблоков из k символов. Затем эти N подблоков декодируются в декодере внешнего кода в K подблоков из k символов каждый. Каскадные коды являются весьма мощным средством борьбы с независимыми и группирующимися в пакеты ошибками. С помощью внешнего кода можно исправить независимые ошибки, а с помощью внутреннего – группирующиеся ошибки.

Наиболее распространенной конфигурацией кода является следующая: внешний код – код Рида-Соломона, внутренний код – сверточный код с малой длиной кодового ограничения и декодированием по алгоритму Витерби на основе мягких решений. Между кодером внешнего кода и кодером внутреннего кода обычно включается устройство перемежения символов, поскольку на выходе декодера Витерби ошибки имеют тенденцию к группированию.

3.8. Методы перемежения

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

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

Рассмотрим некоторые эффективные методы перемежения.

БЛОКОВОЕ ПЕРЕМЕЖЕНИЕ

При блоковом перемежении кодовые слова длиной n символов записываются в виде таблицы шириной W и глубиной D символов, как показано на рис. 3.14.

Предположим, что W = n. Тогда строки таблицы представляют собой кодовые слова, содержащие k информационных символов и (n  k) проверочных символов. После заполнения таблицы осуществляется последовательное считывание символов по столбцам и их передача по каналу связи. В приемнике выполняется обратная процедура – последовательная запись символов по столбцам до полного заполнения таблицы. Затем производится считывание символов по строкам таблицы и их декодирование. Такой перемежитель позволяет разрушить пакет ошибок длиной l < D, в результате чего в каждом кодовом слове будет не более одной ошибки.

Рис. 3.14. Блоковый перемежитель

Однако периодическая последовательность одиночных ошибок, отстоящих друг от друга на D символов, будет вызывать полное поражение ошибками некоторого одного слова. Задержка при выполнении процедур перемежения-деперемежения равна 2WD символов. Объем памяти и перемежителя и деперемежителя составляет WD символов.

Другой возможный вариант выполнения перемежителя изображен на рис. 3.15. Здесь информационные символы последовательно записываются по столбцам. Причем проверочные символы формируются из k информационных символов, разнесенных друг от друга в исходной последовательности на D символов. Считывание символов также осуществляется по столбцам. Преимуществом этого метода является передача информационных символов в естественном порядке следования и отсутствие задержки в перемежителе. Общая задержка составляет WD символов и обусловлена выполнением процедуры деперемежения. Параметры D и W перемежителя должны выбираться с таким расчетом, чтобы наиболее вероятные значения длины пакетов ошибок оказались меньше D.

Рис. 3.15. Модифицированный блоковый перемежитель

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

МЕЖБЛОКОВОЕ ПЕРЕМЕЖЕНИЕ

При межблоковом перемежении в качестве входного блока принимается блок из NB символов, и каждый блок из N символов распределяется между следующими В выходными блоками. Пусть x и у представляют собой соответственно входной и выходной символы перемежителя. Тогда правило отображения m-го символа i-го входного блока в (j + Bt)-й символ (i + j)-го выходного блока можно определить следующим образом:

y(i+j, j+Bt) = x(im)

для всех i и при j = m mod B, t = m mod N.

Рис. 3.76. Пример межблокового перемежения при B = 3 и N = 2

Пример межблокового перемежения при B = 3 и N = 2 показан на рис. 3.16. Здесь символы i-го, (i+1)-го и (i+2)-го входных кодовых блоков обозначены соответственно a, b, c. Согласно приведенному правилу отображения

y(i+j, j+3t) = x(im)

для всех i и при j = m mod 3, t = m mod 2.

При

m = 0 имеем y(i,0) = x(i,0),

m = 1 имеем y(i+1,0) = x(i,1),

m = 2 имеем y(i+2,2) = x(i,2) и т.д.

Отметим, что последовательно следующие символы i-го входного блока отображаются в символах очередных В выходных блоков с нерегулярным смещением позиций (j+Bt) в каждом блоке. Такое нерегулярное смещение позволяет рандомизировать влияние периодической помехи, действующей в канале связи. Для однозначного отображения символов необходимо, чтобы В и N не имели общего делителя. Это ограничивает свободу выбора длины блока из BN символов. Недостатки такого метода перемежения состоят в том, что здесь выходные символы распределяются в пределах В блоков и общая задержка составляет B2N символов (BN символов из-за необходимости запоминания (B-1)BN входных блоков для выполнения процедуры распределения символов).

СВЕРТОЧНОЕ ПЕРЕМЕЖЕНИЕ

Структурная схема сверточного перемежителя-деперемежителя приведена на рис. 3.17. Предполагается, что имеется синхронизация мультиплексоров и демультиплексоров передатчика и приемника. Демультиплексор осуществляет последовательное подключение выхода кодера к различным строкам памяти перемежителя. Мультиплексор соответственно подключает вход декодера к различным строкам памяти деперемежителя. Каждая строка памяти представляет собой регистр сдвига, количество элементов задержки которого указано соответствующим числом, вписанным в прямоугольник. Первый элемент кодированной последовательности записывается в верхнюю строку и сразу же передается по каналу связи. Записывается он также в первую строку памяти деперемежителя, обеспечивающей задержку на (В-1)М символов. Второй элемент кодированной последовательности записывается во вторую строку памяти перемежителя, обеспечивающей задержку на М символов. Таким образом, смежные символы кодированной последовательности оказываются разнесенными на М символов. Поэтому на них не оказывают влияние пакеты ошибок, длина которых не превышает М. При приеме второй символ дополнительно задерживается на (В-2)М символов, так что общая задержка символов составляет (В-1)М символов. Следует отметить, что все символы кодовой последовательности после перемежения и деперемежения имеют одинаковую задержку, поэтому порядок следования символов на выходе кодера и входе декодера сохраняется одним и тем же.

Рис. 3.17. Структурная схема сверточного пермежителя-деперемежителя