Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

(по цифровому вещанию) Dvorkovich_V_Cifrovye_videoinformacionnye_sistemy

.pdf
Скачиваний:
258
Добавлен:
15.03.2016
Размер:
23.26 Mб
Скачать

Введение

одного бита информации, усредненной для статистически большого объема передаваемой информации (BER — Bit Error Rate). Величиной, характеризующей эффективность цифровой системы связи, является пропускная способность (бит/с). Пропускная способность характеризует количество информации, которое может быть передано в системе связи в единицу времени (со 100%-й достоверностью). Верхняя граница пропускной способности в системе при заданном отношении сигнал/шум и доступной полосе передачи устанавливается теоремой Шеннона.

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

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

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

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

стоверностью (вероятностью ошибки).

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

Используется несколько различных видов цифровой модуляции — амплитудная, фазовая или частотная манипуляция или их сочетание.

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

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

Модуляция с таким видом преобразования радиосигнала наиболее широко используется в системах цифровой связи и называется квадратурной амплитудной модуляцией (QAM — Quadrature Amplitude Modulation).

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

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

Средства связи выполняют задачу передачи символов источника сообщений с использованием собственного алфавита символов, который наилучшим образом согласован с условиями физической передачи и характеристиками среды распространения. В силу этого обстоятельства характерным для цифровых систем связи является преобразование символов источника сообщений A X = {x1, x2, . . . , xm} в символы Q другого алфавита, состоящего из d элементов (рис. 19.1). Согласно [7.2], преобразователь, осуществляющий кодирование, обеспечивает согласование источника с каналом связи в статистическом смысле.

Процесс сопоставления символов A множества X символам Q другого алфавита U называется кодированием сообщений источника. Множество U = {u1, u2, . . . , ud}

называется алфавитом кода, а его элементы uj , j = 1, n — кодовыми символами. Каждый из полученных символов Q размерности n, отображающих сообщения A, называется кодовой последовательностью (кодовым словом), а полное множество слов объемом dn — кодом. В подавляющем числе современных систем связи основание алфавита кода d равно 2, что соответствует формированию кодером источника двоичных кодов.

В указанных выше условиях задача кодирования источника будет состоять во взаимно-однозначном назначении различных двоичных комбинаций длины n битов символам A источника сообщений.

Глава 19. Помехоустойчивое кодирование в системах передачи

Рис. 19.1. Преобразование символов источника сообщений в символы алфавита кодера

19.1.1.Теоретические предпосылки помехоустойчивого кодирования

При наличии идеального дискретного канала связи, вероятность возникновения ошибки в котором пренебрежимо мала, возникает вопрос: при каких условиях будет обеспечена без потерь наиболее эффективная передача по этому каналу связи информации дискретного источника с энтропией H(X). Ответ на этот вопрос дает основная теорема Шеннона для дискретного канала связи без помех [7.2].

Теорема Шеннона для канала связи без помех. Если имеется дискретный канал связи с пропускной способностью C (бит в секунду), то сообщения любого источника с энтропией H (бит на символ) можно так закодировать, что окажется возможным передавать эти сообщения со скоростью, сколь угодно близкой к C/H символов в секунду или, что то же самое, со скоростью C битов в секунду. Передавать символы со скоростью больше, чем C/H, невозможно.

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

В качестве иллюстрации выполнения теоремы Шеннона можно рассмотреть следующий пример [7.3]. Пусть имеются: источник сообщения со статистически независимыми элементами ai (дискретный источник без памяти — ДИБП) с основанием алфавита m = 10, кодер источника с основанием d = 2 и идеальный канал связи с пропускной способностью C = 1 бит/с. При однобуквенном представлении символов источника (k = 1) энтропия источника составляет H1Hmax = = log2 10 ≈ 3,332 бита. Согласно теореме Шеннона, скорость передачи символов Q в таком канале может быть сколь угодно близка к C/H ≈ 1/3,332. При k = 1

19.1. Принципы кодирования источника сообщений

одной букве ai {0, 1, 2, . . . , 9} кодером ставится в соответствие кодовая комбинация размерности n (рис. 19.1). Для представления одной десятичной цифры требуется n = 4 кодовых символа qj {0, 1}, тогда как, в силу теоремы, можно осуществить более эффективное кодирование, приближаясь к пределу 3,332 бита на символ источника.

В условиях ДИБП и фиксированной размерности кода n эффективное кодирование можно обеспечить путем укрупнения алфавита источника (k > 1). При двухразрядном десятичном представлении символа A источника одной букве (aiai+1) {0, 1, 2, . . . , 99} будет соответствовать минимальное значение длины кода n = 7. При таком кодировании на каждый знак ai сообщения будет приходиться в среднем уже 3,5 бита кодера. При трехбуквенном представлении (k = 3) одному символу источника (aiai+1ai+2) {0, 1, 2, . . . , 999} будет соответствовать минимальное значение длины кода n = 10 (так как 210 = 1024). Следовательно, при таком кодировании потребуется в среднем n/k ≈ 3,333 бита кодера, что существенно ближе к теоретическому пределу 3,332. Продолжая укрупнение алфавита источника, можно еще больше приблизиться к пределу Шеннона, но никак не превзойти его.

Полученный пример показывает, что в идеальном канале с пропускной способностью C можно, применяя равномерный код (код с постоянной длиной n кодовых комбинаций), передавать сообщения любого источника с алфавитом m со скоростью, сколь угодно близкой к C/HmaxC/ log2 m символов в секунду со

средней длиной кодового слова на один символ сообщения:

 

 

ncp =

n

2

H(X)

+ δ3

=

2

log2 m

+ δ3

,

(19.1)

 

 

 

 

 

k

H(Q)

log2 d

где δ > 0 — бесконечно малая величина.

Практический вывод, сделанный на основе рассмотренного выше примера, обобщается следующим утверждением [7.4]:

Для заданных ДИБП с энтропией H(X) и кодового алфавита из d символов возможно так закодировать блоки из k букв источника, что средняя длина кодовых слов на одну букву источника ncp будет удовлетворять условию:

H(X)

ncp

H(X)

+

1

.

(19.2)

log d

 

log d

 

 

 

 

k

 

Источник сообщения в виде модели ДИБП является идеальным и не имеет избыточности, его производительность максимальна и равна Hmax = log m. С помощью рассмотренной выше процедуры сообщение может быть закодировано для передачи по идеальному каналу связи с пропускной способностью, большей Hmax.

В случае источника с избыточностью H < Hmax возникает необходимость такого кодирования, при котором будет устранена или существенно уменьшена избыточность источника. Избыточность источников информации может быть связана с неравномерным распределением вероятностей алфавита или может определяться статистической зависимостью последовательных знаков источника.

Как правило, в качестве физических процессов, несущих информацию, выступают речевые и видеосигналы, различные текстовые и голосовые сообщения. Подобные источники характеризуются очень сильной статистической связью между соседними символами ai, ai−1, ai−2, . . . , ai−h и достаточно точно описываются марковской моделью. Интуитивно понятно, что любая вероятностная связь

Глава 19. Помехоустойчивое кодирование в системах передачи

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

Избыточность, связанная с неравномерным распределением вероятностей алфавита, характерна, например, для текстовых сообщений.

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

Для случая неравномерного кода из теоремы Шеннона следует правило, по которому каждому символу дискретного источника с энтропией H ставится в соответствие среднее количество битов для передачи сообщения по каналу связи [7.4]:

ncp =

H(X)

+ ε, ncp = H(X) + ε, d = 2,

(19.3)

log d

 

 

 

 

где ε > 0 — бесконечно малая величина, d — основание кода. Из выражения (19.3) следует, что минимальная средняя длина двоичного кодового слова Q, приходящаяся на один символ сообщения A, не может быть выше энтропии источника H(X).

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

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

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

Воснове помехоустойчивого кодирования лежит фундаментальная теорема Шеннона для дискретного канала с помехами.

Теорема Шеннона для канала связи с помехами. Если источник с энтропией H создает сообщения со скоростью R, меньшей пропускной способности

Рис. 19.2. Иллюстрация конечного множества кодовых комбинаций кодера канала

19.1. Принципы кодирования источника сообщений

C дискретного канала связи с помехами, то при любом δ>0 существует способ кодирования и декодирования источника, при котором сообщения передаются получателю с вероятностью ошибки, меньшей, чем δ, и, в среднем, без растущих задержек во времени. Если R > C, то такого способа кодирования не существует.

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

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

Пусть из набора элементарных (в частности, двоичных) символов составляется множество V

размерности N двоичных кодовых комбинаций. При этом только N0 кодов могут быть исполь-

зованы для передачи — такие кодовые комбинации называются разрешенными. Остальные

N − N0 кодов не используются для передачи сообщений — они называются запрещенными (рис. 19.2).

При таком способе организации кодера канала появляется потенциальная возможность обнаруживать и исправлять ошибки. Принцип об-

наружения ошибок состоит в следующем. Получателю известно множество разрешен-

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

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

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

Кодовые комбинации с выхода кодера поступают на модулятор, который с помощью определенного метода модуляции реализует их отображение в аналоговый сигнал S(t). В соответствии с заданным видом модуляции в модуляторе осуществляется преобразование блока битов {b0, b1, . . . , bk−1}, k = log2 M (M — позиционность модуляции) в канальный символ Sj (t), j = 1, M . Выбор вида канальной модуляции определяется компромиссом между результирующей пропускной способностью системы и требованием высокой достоверности передачи данных (см. главу 20). Наиболее распространены следующие виды модуляции: BPSK (Binary Phase-Shift Keying), QPSK (Quadrature Phase-Shift Keying), m- QAM (Quadrature Amplitude Modulation), m = 16, 64, 256. С увеличением позици-

Глава 19. Помехоустойчивое кодирование в системах передачи

онности модуляции растет спектральная эффективность — способность передачи данных с большей скоростью в фиксированной полосе частот. К примеру, при переходе от BPSK сигналов к QPSK скорость передачи цифрового потока возрастает в 2 раза при неизменной занимаемой полосе частот, при переходе от QPSK к 16-QAM — в 4 раза. Цена подобного улучшения — существенное увеличение необходимого для обеспечения высокой достоверности передачи данных отношения сигнал/шум на входе приемника.

В физическом канале сигнал S(t) подвергается воздействию шума n(t). Для количественной оценки степени влияния шума n(t) на сигнал S(t) обычно используют отношение сигнал/шум:

Pпc = Es/T = Es ,

Pпш N0 F N0

определяемое как отношение мощности сигнала Pc к мощности шума Pш; Es, T — энергия и длительность канального символа соответственно, N0 — спектральная плотность шума в полосе частот F = 1/T , занимаемой символом Sj (t).

В приемном устройстве осуществляются процессы демодуляции, детектирова-

ния и декодирования принятого из канала сигнала ˜ . Если детектор вырабаты-

S(t)

вает решение о переданном блоке битов {b0, b1, . . . , bk−1} на основании принятого

символа ˜j , то говорят, что детектор выносит жесткое решение относитель-

S (t)

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

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

19.1.2. Классификация помехоустойчивых кодов

Известно обширное количество различных классов помехоустойчивых кодов, отличающихся друг от друга функциональным назначением, структурой, алгоритмами кодирования и декодирования, энергетической эффективностью и множеством других свойств. В соответствии с этим существует много вариантов классифицирующих признаков помехоустойчивых кодов. Один из вариантов классификации помехоустойчивых кодов приведен на рис. 19.3. [7.5].

В соответствии с этой классификацией корректирующие коды делятся на две группы: блочные и непрерывные. Блочные коды характеризуются тем, что последовательность передаваемых символов перед кодированием разделяется на блоки. Операции кодирования и декодирования в каждом блоке производятся независимо. Это означает, что кодер для блочного кода является устройством без памяти, отображающим последовательности из k входных символов в последовательности из n выходных символов. Термин «без памяти» указывает на то, что каждый выходной блок кодера из n символов зависит только от соответствующего входного блока из k символов и не зависит от других блоков. Основными параметрами блочного кода являются размерность кода n, длина информационной части k, скорость кода rk/n и минимальное кодовое расстояние dmin. Если все комбинации имеют одинаковую длину, блочный код называется равномерным, в противном случае код является неравномерным.

19.1. Принципы кодирования источника сообщений

Рис. 19.3. Классификации помехоустойчивых кодов

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

Кодер для непрерывного кода является устройством с памятью, в котором из группы k входных символов формируются группы из n выходных символов. Каждая группа выходных символов непрерывного кодера зависит от текущей входной группы символов и от K −1 предыдущих входных наборов. Параметр K называется конструктивной длиной непрерывного (сверточного) кода, а величину K · n — длиной кодового ограничения.

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

Глава 19. Помехоустойчивое кодирование в системах передачи

занимают одни и те же позиции. В неразделимых кодах деление на информационные и проверочные символы отсутствует.

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

В свою очередь, линейные коды могут быть разделены на два подкласса:

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

Наиболее известными представителями систематических кодов являются циклические коды и коды Хемминга.

Важное семейство кодов линейных блочных кодов образуют двоичные блочные коды. Особенность этих кодов заключается в том, что процессы кодирования и декодирования описываются с помощью аппарата линейной алгебры, при этом компонентами соответствующих векторов и матриц являются символы «0» и «1». Операции над двоичными компонентами производятся по стандартным правилам двоичной арифметики (табл. 19.1).

Таблица 19.1. Правила двоичной арифметики

 

Сложение

 

 

Умножение

 

 

0

1

 

 

0

 

1

0

0

1

0

 

0

 

0

 

 

 

 

 

 

 

 

1

1

0

1

 

0

 

1

19.2.1.Математическое описание линейных блочных кодов

Сматематической точки зрения на основании определения операций с двоичными символами согласно табл. 19.1 было построено поле Галуа (Galois Field) характеристики p = 2: GF(2)[7.6, 7.7]. Под полем Галуа характеристики 2 подразумевается конечное поле, состоящее всего из двух элементов {0, 1}, в котором операции сложения и умножения (по модулю 2) должны удовлетворять коммуникативному, ассоциативному и дистрибутивному законам.

Одно из основных свойств конечного поля состоит в том, что в нем всегда присутствует по крайней мере один примитивный элемент α GF(p), степени которого порождают все ненулевые элементы поля bi = αi GF (p), 0 i p −2.

Для поля GF(2) примитивный элемент α = 2, а элементы поля определяются как {0, α1}.

19.2. Линейные блочные коды

Рис. 19.4. Кодовое векторное пространство

Общая теория полей Галуа позволяет строить поля характеристики p порядка m — GF(pm), где p — простое, m — любое конечное целое. Переход к расширенным полям GF(pm) дает возможность формировать коды, обладающие по сравнению с двоичными кодами рядом новых свойств. В частности, коды Рида–Соломона с символами из GF(2m), m > 2 находят широкое применение в телекоммуникационных системах. Подробнее вопросы, связанные с алгеброй полей Галуа, можно изучить по монографиям [7.7, 7.8].

Исходным множеством для построения кодовых конструкций служит n-мер- ное двоичное векторное пространство Vn, в котором заданы операции арифметики по модулю 2 (табл. 19.1). В это пространство вложено k-мерное замкнутое линейное пространство Vk, содержащее 2k кодовых слов (рис. 19.4).

Блочный двоичный код длины n c 2k разрешенными комбинациями является линейным (n, k)-кодом, если его кодовые слова образуют k-мерное подмножество Vk векторного n-мерного пространства Vn [7.9]. Это означает, что кодер двоичного блокового (n, k)-кода отображает множество 2k возможных двоичных информационных слов в множество 2k n-мерных кодовых слов. Вместо k битов информационного вектора в канал передаются n битов кодового вектора. В этом случае говорят об избыточном кодировании со скоростью r = k/n; чем ниже скорость, тем больше избыточность кода и его корректирующая способность.

Любое кодовое слово v Vk может быть записано как линейная комбинация k элементов (g0, g1, . . . , gk−1) базиса пространства Vk:

v = c0g0 + c1g1 + . . . ck−1gk−1,

(19.4)

где c = (c0, c1, . . . , ck−1) — вектор-сообщение на входе кодера.

Уравнение (19.4) отражает процесс кодирования блочного кода c и может быть записано через порождающую матрицу G:

v = cG,

где векторы g0, g1, . . . , gk−1 образуют строки порождающей матрицы кода

 

 

g1

 

g1,0

 

g1,1

· · ·

 

g1,n−1

 

 

 

g

g0

 

 

g

g0,0

 

g0,1 . . .

 

g0,n−1

 

 

 

 

 

 

g

 

 

g

 

 

Gk×n =

...

 

=

...

 

... ...

 

...

.

(19.5)

 

 

k−1

 

 

 

k−1,0

 

k−1,1

· · ·

 

k−1,n−1