ПОМЕХОУСТОЙЧИВОЕ КОДИРОВАНИЕ.
Помехоустойчивое кодирование является эффективным средством повышения верности передаваемой по спутниковому каналу информации. При постоянной информационной скорости введение избыточности при кодировании повышает скорость модуляции и расширяет полосу используемых частот. Возрастает и вероятность ошибки в канале, поскольку энергия кодового символа уменьшается. Применение корректирующего кода оправдано, если при декодировании исправляется значительная часть канальных ошибок, в том числе и дополнительные ошибки, обусловленные введенной на передающей стороне избыточностью. Помехоустойчивое кодирование понижает требуемое отношение сигнал–шум на входе демодулятора приемного устройства и обеспечивает таким образом энергетический выигрыш кодирования (ЭВК). Все коды можно разделить на две группы: блочные и непрерывные. Блочные коды характеризуются тем, что последовательность передаваемых символов разделена на блоки. Операции кодирования и декодирования в каждом блоке производятся отдельно. Отличительной особенностью непрерывных кодов является то, что первичная последовательность символов, несущих информацию, непрерывно преобразуется по определенному закону в другую последовательность, содержащую избыточное число символов. Здесь процессы кодирования и декодирования не требует деления кодовых символов на блоки [6,7]. Основным показателем корректирующей способности кода является минимальное кодовое расстояние по Хэммингу d, равное минимальному числу позиций, в которых кодовые комбинации отличаются друг от друга. Если в пределах блока кода при передаче появляется q ошибочных символов, то считают, что произошла ошибка кратности q. Процедура блокового кодирования состоит в том, что блок из k информационных символов отображается в кодовый блок из n>k символов. Каждый блок после кодирования состоит из двух частей: первая часть из k символов содержит передаваемую информацию, то есть, например, отсчеты телевизионного сигнала, а вторая часть состоит из r=n–k проверочных символов, вычисляемых путем суммирования по модулю 2 информационных символов, отношение R=k/n называется скоростью кода. Известно [7], что если код имеет минимальное расстояние d, то он может исправить все комбинации из qu или меньшего числа ошибок и одновременно обнаружить все комбинации из q0 числа ошибок (при q0³qu) при выполнении следующего условия: (2.3) Среди блоковых циклических кодов большое распространение получили коды БЧХ и их разновидность — коды Рида-Соломона (РС). Коды Рида-Соломона — подкласс недвоичных кодов с параметрами: символы кода m= , где l — простое число (например, l=8); длина блока (число m-ичных символов) равно n=m–1; n–k=2×qu, где qu — число гарантированно исправляемых ошибок (их кратность); минимальное кодовое расстояние d=2qu+1=n–k+1. Коды РС являются оптимальными среди всех m-ичных (n, k) кодов в смысле исправления и обнаружения ошибок гарантированной кратности. Коды РС широко используются при цифровой записи на компакт-диски, а также совместно с двоичными кодами для построения так называемых каскадных кодов [7,10]. Двухкаскадный код строится следующим образом: сначала к1 двоичных символов источника рассматриваются как укрупненный символ многопозиционного кода с основанием m=2k1. Затем к последовательности из к2 таких укрупненных символов добавляется n2-k2 проверочных символов m-ичного кода (каждый проверочный символ это последовательность из к1 двоичных символов). На этом завершается процесс образования внешнего кода. После этого формируется внутренний код с кодовым расстоянием d1: к каждым к1 элементарным двоичным символам внешнего кода добавляется n1–k1 проверочных двоичных символов. Результирующая кодовая комбинация содержит n1×n2 двоичных символов, из которых к1к2 являются информационными. Декодирование каскадного кода выполняется в два этапа: на первом этапе последовательно осуществляется декодирование всех блоков внутреннего кода (n1, k1) с обнаружением и исправлением ошибок, а затем декодируется блок внешнего m-ичного кода (n2, k2), причем исправляются ошибки, оставшиеся после декодирования внутреннего кода. Внутренний код обычно рассчитан на исправление одиночных ошибок, внешний— на исправление пачек ошибок (которые являются одиночными ошибками в укрупненных m-ичных символах). Каскадный код эквивалентен двоичному коду с полной длиной блока n=n1n2 и минимальным кодовым расстоянием d³d1d2. Эффективны каскадные коды, для которых внешний код блочный (например, код Рида-Соломона), а внутренний сверточный. Применение каскадных кодов позволяет получить большой ЭВК и обеспечить экспоненциальное убывание вероятности ошибочного декодирования при увеличении полной длины блока n=n1n2, при этом скорость передачи R=k1k2/n1n2 может быть сделана сколь угодно близкой к пропускной способности канала связи [7]. Каскадные коды во многих случаях наиболее перспективны среди известных помехоустойчивых кодов. Именно такая структура защиты от канальных ошибок предусмотрена в стандарте DVB-S2.
|