
- •Структурная схема преобразований в спдс
- •Характеристики системы передачи дискретных сообщений
- •Равномерное и неравномерное кодирование
- •Равномерные коды
- •Кодирование по методу Шеннона-Фано.
- •Кодирование по методу Хаффмана.
- •Дискретный канал дискретного времени
- •Дискретные каналы с памятью
- •Число символов, в которых одно слово отличается от другого, называется расстоянием Хэмминга.
- •Классификация помехоустойчивых кодов
- •Линейные коды
- •Декодирование линейных кодов
- •Код Хэмминга
- •Циклические коды
- •Выбор g(X) для построения циклического кода длины n.
- •Итеративные коды
- •Понятие о сверточных кодах
- •Устройства преобразования сигналов для физической линии
- •Сигналы и виды модуляции, используемые в модемах канала тч
- •Рассмотрим примеры сигналов амплитудной, частотной и фазовой модуляции.
Классификация помехоустойчивых кодов
ИЗБЫТОЧНЫЕ КОДЫ
БЛОЧНЫЕ
НЕПРЕРЫВНЫЕ
(СВЕРТОЧНЫЕ)
РАЗДЕЛИМЫЕ
ЛИНЕЙНЫЕ
НЕЛИНЕЙНЫЕ
ИТЕРАТИВНЫЕ
ЦИКЛИЧЕСКИЕ
ХЭММИНГА


НЕРАЗДЕЛИМЫЕ
С постоянным весом
В блочных кодах информационная последовательность на входе кодера разбивается на отдельные блоки, которые кодируются и декодируются независимо друг от друга. Блочные коды являются равномерными, то есть все блоки содержат одинаковое число элементов кода.
В непрерывных (древовидных) кодах передаваемая последовательность образуется без предварительного разбиения информационной последовательности на независимые блоки. Процессы кодирования и декодирования являются непрерывными. Проверочные символы размещаются между информационными по определенному алгоритму. Часто последовательность на выходе кодера вообще нельзя разделить на информационные и проверочные символы. При этом каждый информационный символ влияет на формирование нескольких десятков символов выходной последовательности.
Блочные коды делятся на разделимые и неразделимые в зависимости от метода введения избыточности. В разделимых кодах информационные элементы обычно размещаются в начале слова. Проверочные элементы вычисляются по определенным правилам и размещаются обычно в конце кодового слова. В неразделимых кодах символы кодовых слов не делят на информационные и проверочные. К таким кодам относятся коды с постоянным соотношением нулей и единиц в кодовых словах. Например, при связи по коротковолновым радиоканалам используется 7-ми элементный равновесный код. Из общего числа N0=27=128 кодовых слов используется только N=35 слов равного веса , каждое из которых содержит 4 нуля и 3 единицы. Из этих слов составлен международный алфавит МА№3.
Разделимые двоичные коды делятся в свою очередь на линейные и нелинейные.
Линейными кодами называются коды, в которых сумма по модулю 2 двух или более разрешенных кодовых слов дает другое разрешенное кодовое слово.
Нелинейные коды этим свойством не обладают. К ним относятся итеративные коды. Итеративные коды – это коды с контрольным суммированием, причем каждое кодовое слово участвует в нескольких системах проверок.
Среди линейных кодов большую группу составляют циклические коды. Их отличительное свойство состоит в том, что циклическая перестановка символов кодового слова приводит к получению другого разрешенного кодового слова.
Лекция 7
Линейные коды
Блочным линейным кодом называется (n,k) код, проверочные символы которого являются линейными комбинациями информационных символов. Здесь:
n – длина кода, то есть длина кодовых слов
k – число информационных символов
Обозначим U – последовательность из k информационных символов.
U=(u1, u2,…….uk)
Обозначим V – кодовое слово линейного кода длиной n символов.
V=(v1, v2,……….vn)
Кодовое слово V
формируется из последовательности U
по следующему правилу:
Коэффициенты l,i представляют собой фиксированные двоичные символы, не зависящие от u .При выборе разных совокупностей l,i получаются различные линейные коды.
Отношение R=k/n называется скоростью кода, а величина W=1-R – называется избыточностью кода.
Линейный код может быть задан в виде таблицы кодовых слов или при помощи указания коэффициентов l,i . Второй способ более экономичен.
При задании
линейного кода с помощью набора
коэффициентов l,i
записывается образующая
матрица G
. Матрица G
имеет размер kxn
. Первые k
столбцов представляют собой единичную
матрицу kxk
, следующие n-k
столбцов представляют совокупность
коэффициентов l,i
(матрица
проверочных
элементов).
Это запись образующей матрицы в канонической форме.
В строке матрицы проверочных элементов должно быть не менее чем (dmin-1) единиц, а расстояние Хэмминга между строками не менее (dmin-2), где dmin - кодовое расстояние.
При заданной информационной последовательности и образующей матрице кодовое слово V получают следующим образом
Vi=Ui при 1<=i<=k
и
Vi=U1*1,i U2*2,i …. Uk*k,i при k+1<=i<=n
Пример
Пусть разделимый
линейный код (5,3) задан при помощи
образующей матрицы G
Запишем в виде формул процедуру нахождения символов кодового слова, если задана некоторая информационная последовательность U=(u1,u2,u3). Кодовое слово будет содержать 5 символов V=(v1,v2,v3,v4,v5).
Если в информационной последовательности имеется только один символ 1 на j – ой позиции, а на остальных позициях находятся нули U=(000….1j….0), то соответствующее кодовое слово V будет представлять собой j – ю строку матрицы G. Обозначим j – ю строку матрицы G, как gj. Произвольное кодовое слово можно представить в виде суммы по модулю 2 строк образующей матрицы с номерами j ,значения которых совпадают с номерами ненулевых разрядов в информационной последовательности.
Вернемся к примеру, приведенному выше. Пусть U=(101), тогда V=(10111), кодовое слово получилось как сумма по модулю 2 первой и третьей строк образующей матрицы.
Свойства линейных кодов
-
Любые К линейно-независимых кодовых слов задают все множество 2к слов линейного кода и могут составить его образующую матрицу. Произвольная образующая матрица может быть приведена к каноническому виду суммированием строк по mod2.
Кодовые слова Vj
являются линейно-независимыми, если
сумма по модулю 2 вида
только когда все коэффициенты j равны 0.
-
Сумма по модулю 2 любого числа кодовых слов также является словом данного линейного кода.
-
Нулевая последовательность всегда является кодовым словом.
-
Кодовое расстояние dmin равно минимальному весу ненулевого кодового слова.
-
Из любого линейного (n,k) кода с кодовым расстоянием dmin можно получить код (n-i, k-i) с кодовым расстоянием не меньше dmin . Для этого из образующей матрицы G исходного кода вычеркивают любые i строк и i, ставших нулевыми столбцов. Например, задан код (5,3) с образующей матрицей G, кодовое расстояние которого равно dmin=2.
Получим укороченный
код (4,2), вычеркнув первую строку и первый
столбец, ставший нулевым, в матрице G.
Образующая матрица укороченного кода
G'
имеет вид
Кодовое расстояние укороченного кода dmin=2.
Задача 1
Образующая матрица линейного кода имеет вид
Какие из приведенных
последовательностей являются кодовыми
словами данного кода?
-
1000
-
100011
-
10101
-
11011
-
00000
-
Задача 2
Какие из приведенных
матриц являются образующими матрицами
линейного кода (5,3)?
Лекция 8