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

лабы / лаба 4 / Методическое руководство Лаб 4 ПК

.doc
Скачиваний:
0
Добавлен:
13.05.2026
Размер:
710.14 Кб
Скачать

ФЕДЕРАЛЬНОЕ АГЕНСТВО СВЯЗИ

Федеральное государственное образовательное бюджетное учреждение

высшего профессионального образования

Московский технический университет связи и информатики

Кафедра радиотехнических систем

Лабораторная работа № 4 ПК

«Изучение свёрточных кодов»

по дисциплине «Помехоустойчивое кодирование»

Москва 2020

ФЕДЕРАЛЬНОЕ АГЕНСТВО СВЯЗИ

Федеральное государственное образовательное бюджетное учреждение

высшего профессионального образования

Московский технический университет связи и информатики

Кафедра радиотехнических систем

«Утверждено на Совете

факультета радио и телевидения»

Декан А.В. Пестряков

Протокол № 7 от «24» марта 2020 г.

Лабораторная работа № 4 ПК

«Изучение свёрточных кодов»

по дисциплине «Помехоустойчивое кодирование»

«Утверждено на заседании кафедры

радиотехнических систем

ВРИО зав. кафедрой Д.С. Чиров

Протокол № 4 от «17 » марта 2020 г.

Москва 2020

УДК 6820.3.042.5 : 6220.39 План подготовки УМД 2019/2020 уч. года

Лабораторная работа № 4 ПК

«Изучение свёрточных кодов»

по дисциплине «Помехоустойчивое кодирование»

Составители: В.Э. Русанов, к.т.н., доцент,

А.Н. Лебедев

Рецензент: ,

Издание утверждено Советом факультета радио и телевидения.

Протокол № 7 от 24 марта 2020 г.

Лабораторная работа №4 ПК «Изучение свёрточных кодов»

Цель работы:

  1. Изучение алгоритмов функционирования нерекурсивного несистематического свёрточного кодера на умножителях. Построение схем указанных кодеров.

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

  3. Формирование диаграммы состояний и решетчатой диаграммы нерекурсивного свёрточного кодера.

  4. Анализ свёрточного кода по решетчатой диаграмме. Изучение алгоритма декодирования Витерби нерекурсивного свёрточного кода.

  5. Исправление ошибок в заданных (принятых) кодовых словах нерекурсивного свёрточного кода.

Исходные данные для выполнения работы

1. Тип кода – нерекурсивный свёрточный , на основе многочленов умножителей и .(см. таблицу 1).

2.Информационная последовательность, для которой требуется рассчитать выходные сигналы кодера (см. таблицу 1). Исходное состояние всех ячеек регистра кодера – нулевые.

3. Порождающие многочлены свёрточного кодера (см. таблицу 1). Для краткости порождающие многочлены для вариантов задачи заданы в таблице в восьмеричной форме. Например, означает: или .

Таблица 1

Вариант

a

g1

g2

Вариант

a

g1

g2

1

10001

15

17

17

11101

16

11

2

01101

15

13

18

11011

12

17

3

10001

15

11

19

11001

12

15

4

10111

13

17

20

10111

12

11

5

11001

13

11

21

10011

6

5

6

10010

11

17

22

10110

15

7

7

11101

7

17

23

11011

6

11

8

01101

7

13

24

10110

12

7

9

10011

7

15

25

10011

12

5

10

10110

7

11

26

11011

13

6

11

10101

5

11

27

11101

15

6

12

11010

5

13

28

10001

17

5

13

10010

5

15

29

11100

16

7

14

11001

16

17

30

10111

12

13

15

10011

16

15

31

10101

16

5

16

11011

16

13

32

10011

17

3

4. Декодируемая последовательность приведена в таблице 2:

Таблица 2

Вариант

g1

g2

1

15

17

1 1 1 1 0 1 0 1 1 1 0 0 1 0 0 1 1 1 1 0

2

15

13

0 0 1 1 0 1 1 0 0 1 1 0 1 1 1 0 1 1 1 1

3

15

11

1 1 1 0 0 1 1 1 1 1 0 1 1 0 0 0 1 0 0 1

4

13

17

1 1 0 1 0 0 1 1 0 1 1 0 1 0 0 1 0 0 0 0

5

13

11

1 1 0 1 1 0 0 1 0 0 0 1 1 0 1 1 0 0 1 0

6

11

17

0 1 0 1 1 1 1 0 0 1 0 0 1 1 0 1 1 1 1 1

7

7

17

0 1 1 0 0 0 1 1 0 1 0 0 1 0 0 1 0 0 0 1

8

7

13

0 0 0 1 1 1 1 1 0 1 0 0 0 1 0 0 1 0 1 1

9

7

15

0 1 1 1 0 0 1 0 1 0 0 0 1 0 0 0 0 1 0 1

10

7

11

0 1 1 0 1 0 0 0 0 0 0 0 0 1 1 1 0 1 1 1

11

5

11

0 1 1 0 0 1 1 1 0 1 0 0 1 1 0 1 1 0 0 1

12

5

13

0 1 1 1 1 0 1 1 0 1 0 0 0 1 0 1 1 0 1 0

13

5

15

0 1 1 1 0 0 0 0 1 1 0 1 0 1 1 1 1 1 1 0

14

16

17

1 1 0 0 0 1 1 0 1 0 0 0 0 0 1 0 1 0 0 0

15

16

15

1 1 1 1 1 0 0 0 0 0 1 0 1 1 0 0 0 0 0 1

16

16

13

1 1 0 1 0 1 1 1 0 0 1 0 1 1 1 1 0 0 0 1

17

16

11

1 1 0 1 1 0 0 1 0 0 0 0 1 1 0 1 0 0 0 0

18

12

17

1 1 1 0 1 0 0 0 1 1 0 1 0 0 1 1 1 0 1 0

19

12

15

1 1 1 0 1 1 0 1 1 0 1 0 1 1 0 0 1 1 0 0

20

12

11

1 1 0 0 1 1 1 0 0 1 0 0 1 1 1 1 1 0 1 1

21

6

5

1 1 1 0 0 1 1 0 0 1 0 0 1 1 1 0 0 1 1 1

22

15

7

1 0 1 1 1 1 0 0 1 0 0 0 1 0 1 0 0 0 1 0

23

6

11

0 1 1 1 0 1 1 0 1 0 0 1 0 1 1 0 1 0 0 0

24

12

7

1 0 0 1 0 1 0 0 1 0 0 0 0 0 1 1 1 1 1 1

25

12

5

1 0 0 0 1 1 0 1 1 0 1 0 1 0 1 1 1 1 1 0

26

13

6

1 0 0 1 1 0 0 0 1 1 0 0 1 0 0 0 1 1 0 1

27

15

6

1 0 1 1 0 1 1 0 0 1 0 0 1 0 1 0 0 0 0 1

28

17

5

1 0 1 0 0 0 0 1 1 0 0 1 1 1 0 1 1 1 1 0

29

16

7

1 0 1 1 0 0 1 0 0 1 0 0 1 0 1 1 0 1 1 0

30

12

13

1 1 0 0 0 1 0 1 0 0 1 0 1 1 0 1 1 0 0 0

31

16

5

1 0 1 0 1 1 1 1 0 0 1 0 0 1 0 1 1 1 0 0

32

17

3

1 0 1 0 1 1 0 1 1 0 0 0 0 1 0 0 0 1 0 0

Порядок выполнения работы

1. Построить схему нерекурсивного свёрточного кодера с умножителями на элементах дискретной логики согласно Примеру 1. Образующие полиномы кодера задаются из таблицы 1 по номеру варианта (списочный номер студента).

2. Определить выходные биты кодера по входным битам, заданным в таблице 1. Построить для заданных 5-ти бит входных данных диаграмму состояний и решетчатую диаграмму кодера согласно примеру 1.

3. Построить схему нерекурсивного свёрточного кодера с умножителями на элементах дискретной логики с помощью программы «Spectr2c.exe». Полиномы умножителей и входные биты приведены в таблице 1.

3. Сравнить таблицу битовой консоли с таблицей 2 из Примера 1. Дополнить входную последовательность произвольным образом и построить по данным таблицы битовой консоли полную диаграмму состояний и решетчатую диаграмму кодера согласно примеру 1.

4.Запустить программу «Lab4_PK.exe», задать образующие полиномы и входные биты из Таблицы 1. Выполнить кодирование, определив выходные биты . Для проверки правильности кодирования ввести в диалоговом окне выходные биты кодера, рассчитанные по п. 2 (10 бит).

5. В Программе «Lab4_PK.exe» ввести декодируемую битовую последовательность (с ошибками), заданную в таблице 2.

6. С помощью программы «Lab4_PK.exe» построить пути максимального правдоподобия по алгоритму Витерби для декодируемой последовательности на решетчатой диаграмме кодера согласно Примеру 3.

Теоретические сведения о свёрточном кодировании

Нерекурсивный несистематический свёрточный кодер состоит из двух умножителей, коммутируемых для передачи в канал связи:

Умножитель на регистрах сдвига и сумматорах строится по коэффициентам его образующего полинома по следующим правилам. Коэффициенты полинома g(x) выписываются в ряд. Между коэффициентами (чуть ниже) размещаются ячейки регистра сдвига (цепочка ячеек памяти, по которой входная информация пошагово продвигается по принципу «бегущей строки»):

Напротив единиц рисуются выводы (вертикальные линии), которые попарно, слева направо объединяются сумматорами. Выход самого правого сумматора и является выходом умножителя входной битовой последователности (в виде коэффициентов полинома a(x)) на образующий полином g(x). Второй умножитель может быть построен на том же регистре аналогичным образом:

Пример 1: свёрточный нерекурсивный несистематический кодер на основе многочленов: и . Единичные коэффициенты этих многочленов 101 и 111 показывают ответвления от ячеек регистра в умножителях. Построим схему кодера и определим его выходные биты по входным (таблица 3):

Полотно 87

Вход

Вых Мл

Вых Ст

Вых 1

Вых 2

0

0

0

0

0

0

0

0

0

0

1

0

0

1

1

1

1

0

0

1

0

1

1

0

1

0

0

1

1

1

1

0

0

1

1

0

1

0

1

0

1

0

1

0

0

0

1

0

1

0

1

0

1

0

0

0

1

0

1

0

0

0

1

1

1

1

0

0

1

1

1

1

0

0

1

1

1

1

1

0

1

1

1

1

0

Первая строка таблицы 3 описывает начальное состояние кодера. Пусть исходное состояние ячеек – нулевое («00» во 2-й и 3-ей колонках 1-й строки). Пусть на вход подан «0» («0» во 1-й колонке 2-й строки) , на выходах «1» и «2» - код «00» («00» во 4-й и 5-й колонках 2-й строки). В этом случае новое состояние кодера прежнее («00» во 2-й и 3-ей колонках 3-й строки).Если и далее подавать на вход нули, то состояние ячеек, а также пара выходных бит будут нулевыми. На диаграмме состояний сказанное можно отобразить следующим образом. Стрелка означает сохранение прежнего состояния (пара бит в кружке) при подаче на вход нулевого бита. Надпись возле стрелки означает, что биты на выходах «1» и «2» нулевые.

Полотно 494

Пусть теперь на вход подана «1» («1» в 1-й колонке 3-й строки). Тогда, на выходах кодера – комбинация «11». С приходом следующего бита (допустим, единичного) единица, которая была на входе первой ячейки переместится на выход, и состояние регистра будет «10»(2-я и 3-я колонки 4-й строки):

Переход в состояние «10» отмечен стрелкой с надписью «1/11». Это означает, что на вход кодера была подана «1», а надпись возле стрелки под дробью «11»–это выходные биты кодера.

Пусть теперь снова на вход подана «1» (4-я строка таблицы). Тогда биты на выходах «1» и «2» образуют комбинацию «01». С приходом следующего бита в первую ячейку запишется ноль, который был на её входе, единица с первой ячейки перепишется во вторую, и состояние регистра станет «11». Диаграмма состояний на данном этапе имеет следующий вид:

Полотно 1457

Дальнейшие изменения при подаче бит входного сигнала (5 строка таблицы и далее) на диаграмме состояний выглядят следующим образом:

Полотно 1457

По диаграмме состояний можно построить решетчатую диаграмму. Четыре состояния (00, 10, 01, 11) расположены по вертикали. По горизонтали отображаются последовательные шаги изменения этих состояний во времени.

Переходы из одного состояние в другое показаны стрелками. Надпись возле каждой стрелки через дробь: входной бит/ пара выходных бит кодера.

Каждой входной информационной последовательности соответствует свой путь из стрелок на решетчатой диаграмме (например, путь «011» на диаграмме выделен жирной линией).

Пример 2. Построение схемы свёрточного нерекурсивного несистематического кодера на основе многочленов: и в программной среде «Spectr2c».

На экране лабораторного компьютера схема строится с помощью программы “Spectr 2c.exe” из сумматоров «XOR» и регистров сдвига в виде цепочки ячеек памяти «T». Программу можно найти на лабораторном компьютере по адресу «Сервер - методические указания – ПК – Практикум лаб 4».

Соседние файлы в папке лаба 4