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

LEKTsIYa_11

.pdf
Скачиваний:
0
Добавлен:
22.04.2024
Размер:
874.13 Кб
Скачать

ЛЕКЦИЯ № 15.

6.4. Сверточные коды.

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

состояний. Регистр сдвига состоит из

k битовых ячеек и линейного

преобразователя, состоящего из n

функциональных генераторов, и

выполняющего алгебраические функции.

 

1 2 … k

K

инф.

бит

1

2

k

1

2

k

1

 

2

 

3

 

n

 

 

 

 

 

 

 

 

 

 

 

Кодированная последовательность

 

 

 

 

 

 

 

 

Рисунок 6.2.

Структурная схема сверточного кода.

Параметр - кодовое ограничение сверточного кода.

Рассмотрим

пример1. Дан двоичный сверточный код с 3 ,

k 1, n 3, R

 

k

 

1

- кодовая скорость.

 

 

c

 

n 3

 

 

Структура кодера имеет вид:

1

Вых.

 

Вх.

 

2

 

 

3

Сначала все ячейки регистра сдвига находятся в нулевом состоянии: 000.

Пусть первый входной бит «1», тогда на выходе 111. Пусть второй входной бит «0». Тогда он записывается в первую ячейку, а «1» продвигается во вторую ячейку. В результате ячейки сдвига находятся в состоянии 010. Тогда на выходе имеем 001. Пусть третий входной бит «1». Тогда состояние ячеек сдвига будет следующее: 101, а на выходе формируется последовательность

100 и т.д.

Генератор можно отобразить векторами g1 (100) , g2 (101) , g1 (111) .

Генераторы (порождающие полиномы) задаются в восьмеричной форме:

g(4,5,7) , т.е. 4 100; 5 101; 7 111.

Вобщем случае, когда k 1эти n генераторов отображаются k - мерными векторами.

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

Пример 2. Древовидная диаграмма для примера 1.

 

 

 

 

000

 

000

 

 

 

 

 

 

000

 

 

 

111

 

111

 

 

000

 

 

 

 

 

001

 

 

 

 

 

 

 

 

 

 

 

 

110

 

 

001

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

011

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

110

 

 

100

 

 

 

 

111

 

 

 

 

 

010

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

101

 

 

 

 

 

 

 

 

 

 

 

 

 

011

000

 

001

111

 

 

1

100

001

 

 

 

010

110

 

011

 

111

 

100

 

 

 

101

010

 

110

 

 

 

101

Видно, что структура повторяет себя после третьего такта.

В таблице приведено пояснение по шагам как формируется выходная последовательность.

Бывшее

 

Вход

 

Новое

 

Выход

Номер шага

состояние

 

 

 

 

состояние

 

 

 

 

регистра

 

 

 

 

регистра

 

 

 

 

 

000 (a)

 

 

 

0

 

 

000

(a)

 

 

 

000

 

1

 

000

(a)

 

 

 

1

 

 

100

(c)

 

 

 

111

 

 

 

000

(a)

 

 

 

0

 

 

000

(a)

 

 

 

000

 

2

 

000

(a)

 

 

 

1

 

 

100

(c)

 

 

 

111

 

 

 

100

(c)

 

 

 

0

 

 

010

(b)

 

 

001

 

 

 

100

(c)

 

 

 

1

 

 

110

(d)

 

 

110

 

 

 

000

(a)

 

 

 

0

 

 

000

(a)

 

 

000

 

3

 

000(a)

 

 

 

 

1

 

 

100

(c)

 

 

 

111

 

 

 

100

(c)

 

 

 

0

 

 

010

(b)

 

 

001

 

 

 

100

(c)

 

 

 

1

 

 

110

(d)

 

 

110

 

 

 

010

(b)

 

 

0

 

 

001

(a)

 

 

011

 

 

 

010

(b)

 

 

1

 

 

101

(c)

 

 

100

 

 

 

110

(d)

 

 

0

 

 

011

(b)

 

 

010

 

 

 

110

(d)

 

 

1

 

 

111

(d)

 

 

101

 

 

 

000

(a)

 

 

0

 

 

000

(a)

 

 

000

 

4

 

000(a)

 

 

1

 

 

100

(c)

 

 

111

 

 

 

100

(c)

 

 

0

 

 

010

(b)

 

 

001

 

 

 

100

(c)

 

 

 

1

 

 

110

(d)

 

 

110

 

 

 

010

(b)

 

 

0

 

 

001

(a)

 

 

011

 

 

 

010

(b)

 

 

1

 

 

101

(c)

 

 

100

 

 

 

110

(d)

 

 

0

 

 

011

(b)

 

 

010

 

 

 

110

(d)

 

 

1

 

 

111

(d)

 

 

101

 

 

 

001

(a)

 

 

0

 

 

000

(a)

 

 

000

 

 

 

001

(a)

 

 

 

1

 

 

100

(c)

 

 

 

111

 

 

 

101

(c)

 

 

0

 

 

010

(b)

 

 

001

 

 

 

101

(c)

 

 

1

 

 

110

(d)

 

 

110

 

 

 

011

(b)

 

 

0

 

 

001

(a)

 

 

011

 

 

 

011

(b)

 

 

1

 

 

101

(c)

 

 

100

 

 

 

111

(d)

 

 

0

 

 

011

(b)

 

 

010

 

 

 

111

(d)

 

 

1

 

 

111

(d)

 

 

101

 

 

Здесь обозначено a - 00, b – 01, c – 10, d – 11.

С учетом состояний можно изобразить решетчатую диаграмму:

 

000

000

000

 

 

000

000

 

a

 

 

 

 

 

 

 

 

111

111

 

111

 

111

011

111

011

 

 

 

011

 

 

 

 

 

 

 

 

 

 

 

 

b

 

 

100

 

 

100

100

 

 

 

001

 

 

 

 

 

 

 

 

 

001

 

001

001

 

c

 

 

 

 

 

110

 

 

 

 

 

 

 

 

 

 

 

 

110

010

110

010

010

110

 

 

 

 

 

 

 

 

 

 

 

 

 

 

d

 

 

 

 

 

 

 

 

 

 

 

101

 

 

101

101

 

Диаграмма состояний для данного примера выглядит следующим образом:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Состояние

 

 

 

 

 

 

 

 

 

 

 

 

 

011

 

 

 

 

 

 

 

 

 

 

 

001

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

b (01)

 

 

100

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Состояние

 

 

111

 

 

 

 

 

 

 

 

 

 

 

Состояние

 

 

 

a (00)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

c (10)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

010

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

000

 

 

 

 

 

 

 

 

 

 

 

 

Состояние

 

 

 

 

110

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

d (11)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

101

Обозначения: «сплошная линия» - входной бит «0», «пунктирная линия» - входной бит «1».

Передаточная функция сверточного кода.

Передаточная функция определяет дистанционные свойства и характеристики качества (вероятность ошибки) сверточного кода. Вернемся к примеру 1 и 2. Пометим на диаграмме состояний ветви как D0 , D1, D2 , D3 , где показатель у D - расстояние Хемминга между выходной битовой последовательностью соответствующей ветви и последовательностью из одних нулей. Собственную петлю у узла a можно исключить, т.к. она ничего не вносит в дистанционные свойства кодовой последовательности относительно последовательности из одних нулей. Узел a делится на 2 узла: один входной (a) другой выходной (e).

d

 

 

 

 

 

 

 

 

 

b

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

e

 

 

 

 

 

 

c

 

 

 

 

 

 

 

 

a

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Диаграмма состоит из пяти узлов: a, b, c, d, e. Тогда уравнения состояния имеют вид:

 

 

 

 

 

 

 

 

X

c

D3 X

a

DX

; X

b

DX

c

DX

d

;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

b

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(6.18)

 

 

 

 

 

 

 

 

X

 

D2 X

 

D2 X

 

 

; X

 

D2 X

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

d

c

d

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

b

 

 

 

 

 

 

 

 

 

 

Передаточная функция определяется как

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

T (D)

Xe

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(6.19)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

X a

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Из 2 - го и 3 - его уравнения (6.18) получим:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

X

b

DX

c

 

 

 

 

 

 

X

D2

 

 

X

b

DX

c

 

 

X

D2

X

 

 

X

(1 D2 )

 

X

 

 

 

, X

 

 

 

c

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

c

 

 

 

 

b

 

;

d

 

 

D

 

d

1

D2

 

 

 

 

 

 

 

 

D

 

 

1 D2

c

 

D

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

из 1 –го уравнения (6.18) получим:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

X (1 D2 )

DXb

Xb (1 2D2 )

учитывая (6.19), имеем

X Xc DXb

 

b

 

D

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

D3

 

 

 

 

 

 

 

 

 

D3

 

 

 

 

 

 

 

 

 

 

 

 

 

D4

 

 

 

 

 

 

 

 

 

 

 

 

выражение для передаточной функции:

 

 

 

 

 

D2 X

b

 

D6

 

T (D)

 

 

 

 

 

 

 

.

 

X

b

(1 2D2 )

(1 2D2 )

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

D4

 

 

 

 

 

 

 

Далее, раскладывая функцию T (D) в ряд Тейлора в точке D 0 , получим

 

 

 

 

 

 

 

 

 

 

 

 

 

 

T (D) D6 2D8

4D10 8D12

 

ad Dd ,

(6.20)

 

 

 

 

 

 

 

 

 

 

 

 

d 6

 

 

 

 

 

 

d 6

 

 

 

 

 

 

 

где a

2

2

,если d четно,

 

d

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0,если d нечетно.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Передаточная функция (6.20) этого кода показывает, что существует единственный путь с расстоянием Хемминга d 6 от пути из одних нулей, который сливается с путем из одних нулей при данном узле. Это путь acbe. Второе слагаемое говорит о том, что есть 2 пути от a до e с d 8 : acdbe и acbcbe и т.д. Таким образом, передаточная функция T (D) дает дистанционные свойства сверточного кода. Минимальное расстояние кода называется

минимальным свободным расстоянием dсв . Для разобранного примера

dсв 6.

Для получения более детальной информации введем множитель N для всех переходов ветвей, вызванных входным битом «1» и множитель J для каждой ветви диаграммы так, что он будет служить счетной величиной, указывающей число ветвей для любого пути от узла a к узлу e. Тогда

d

 

 

 

 

 

 

 

 

 

b

 

 

 

e

 

 

 

 

 

 

c

 

 

 

 

 

 

 

 

a

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Уравнения диаграммы состояний в этом случае имеют вид:

X c JND3 X a JNDX b ; X b JDX c JDX d ;

X d JND2 X c JND2 X d ; X e JD2 X b .

Тогда передаточная функция записывается в следующей форме:

T (D, N, J ) J 3 ND6 J 3ND6 J 4 N 2D8 J 5 N 2D8 J 5 N 3D10 2J 6 N 3D10

1 JND2 (1 J )

J 7 N 3D10

Первое слагаемое говорит о том, что путь с расстоянием d 6 имеет длину 3 и , что один из 3 –х бит – «1». Второе и третье слагаемые указывают на то, что из двух слагаемых с d 8 одно длиной 4, а второе длиной 5. Два из 4 –х и два из 5 –ти бит в пути длиной 4 и 5 являются «1».

Множитель J особенно важен, если передается последовательность конечной длины, например, m бит. Тогда сверточный код повторяется после m узлов или m ветвей и передаточная функция получается при усечении по слагаемому J m

Оптимальное декодирование сверточных кодов. Алгоритм Витерби.

Оптимальное декодирование сверточных кодов включает в себя поиск по решетке наиболее правдоподобной последовательности. Рассмотрим опять пример 1. Если за метрику взять расстояние Хемминга (поиск жестких решений) между принятой кодовой последовательностью Y и путем, то выбирается тот путь, у которого dmin . Это правило максимизирует вероятность правильного решения или минимизирует вероятность ошибки в информационной последовательности.

Пусть Y 101000100 . Рассмотрим все пути у сливающегося узла a, b, c, d после трех переходов. Тогда по решетке (уровень 3):

Y: 1 0 1 0 0 0 1 0 0

a: 0 0 0 0 0 0 0 0 0 d 3

1 1 1 0 0 1 0 1 1 d 5 b: 0 0 0 1 1 1 0 0 1 d 7

1 1 1 1 1 0 0 1 0

d 5

c: 0 0 0 0 0 0 1 1 1

d 4

1 1 1 0 0 1 1 0 0

d 2

d: 0 0 0 1 1 1 1 1 0 d 6

1 1 1 1 1 0 1 0 1 d 4

Далее для каждого узла оставляем путь с d dmin : a: 0 0 0 0 0 0 0 0 0 d 3

b: 1 1 1 1 1 0 0 1 0 d 5

c: 1 1 1 0 0 1 1 0 0 d 2 d: 1 1 1 1 1 0 1 0 1 d 4 .

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

Соседние файлы в предмете Основы теории информации