- •Помехоустойчивое кодирование в системах телекоммуникаций
- •Пояснительная записка
- •Лабораторная работа 1 Исследование эффективных кодов на примере кода Хаффмена
- •1. Цель работы:
- •2. Литература:
- •3. Подготовка к работе:
- •4. Основное оборудование:
- •5. Задание:
- •6. Порядок выполнения работы:
- •7. Содержание отчета:
- •8. Контрольные вопросы:
- •9. Методические указания:
- •9.2. Основы эффективного кодирования
- •9.3. Методы эффективного кодирования при известной статистике сообщений
- •9.4. Методы эффективного кодирования при неизвестной статистике сообщений
- •9.5. Метод Хаффмена
- •9.6 Описание лабораторной работы
- •Лабораторная работа 2 Исследование эффективности линейных блоковых кодов
- •6.2. Исследование системы передачи данных с двоичным симметричным каналом связи при использовании кода Хэмминга.
- •7. Содержание отчета:
- •8. Контрольные вопросы:
- •Лабораторная работа 3 Исследование эффективности циклических кодов
- •7. Содержание отчета:
- •8. Контрольные вопросы:
- •9. Методические указания:
- •8.2 Инструкция по пользованию практической части программы
- •8.3 Инструкция по использованию тестирующей части программы
- •Лабораторная работа 4 Исследование алгоритма Витерби
- •6.2 Экспериментальной части программы
- •6.3 Инструкция по использованию тестирующей части программы
- •9.2 Представление сверточного кода порождающими многочленами
- •9.3. Кодовое дерево сверточного кода и решетчатая диаграмма
- •9.4 Свободное расстояние. Спектр.
- •9.5 Катастрофические кодеры
- •9.6 Декодирование сверточных кодов по максимуму правдоподобия. Алгоритм Витерби
- •9.7 Поиск кратчайшего пути на графе по принципу динамического программирования
- •9.8 Алгоритм Витерби
- •Лабораторные работы 5,6 Исследование схем кодеров и декодеров с обнаружением ошибок
- •6. Порядок выполнения работы:
- •6.2. Исследование системы передачи данных с кодами рс при использование канала с Гауссовскими помехами.
- •7. Содержание отчета:
- •8. Контрольные вопросы:
- •Лабораторные работы 7,8 Исследование схем кодеров и декодеров с исправлением ошибок
- •6. Порядок выполнения работы:
- •7. Содержание отчета:
- •8. Контрольные вопросы:
6.2 Экспериментальной части программы
В процессе разработки виртуальной лабораторной работы была создана практическая часть по построению кодера сверточного кода и декодера сверточного кода. Для того чтобы войти в поле «Построение сверточного кодера», в главном диалоговом окне есть кнопка «Практика», при нажатии которой появляется подменю, в котором можно выбрать построение кодера или декодера.
6.2.1 Построение кодера
Этот пункт был решен путем создания интерактивной оболочки подменю и проходит в четыре этапа. На первом этапе «Построение сверточного кодера» пользователь использует технологию «перетаскивания» элементы устройства такие как: триггеры, сумматоры, ключи, и устанавливает их на принципиальную схему, в соответствии со своим вариантом и вписывает выходную информационную последовательность, в отдельное поле ввода. Если задание выполнено неверно, об этом сообщит динамическое окно с надписью «Не верно», студент не сможет перейти к следующему этапу построения кодера. При правильном построении кодера и ввода выходной информационной последовательности появится кнопка «Далее>>». На рисунке 1.2 представлен внешний вид этого окна.
Вторым этапом выполнения практической части, является заполнение таблицы «переходов между состояниями и соответствия выходного вектора». Пользователь должен правильно заполнить эту таблицу путем сложения чисел по модулю два, для перехода в следующий этап. При условии правильного заполнения таблицы появится кнопка «Далее >>». Это показано на рисунке 3.
Рисунок 2 – Первый этап сверточного кодирования
Рисунок 3 – Второй этап сверточного кодирования
Третьим этапом прохождения практической части является построение диаграммы состояний в соответствии с заданным вариантом и вписывание в отдельные поля выходную последовательность и последовательность состояний, если кодирование начинается и заканчивается в нулевом состоянии (Рисунок 4). При правильном заполнении полей пользователь сможет перейти в заключительный (четвертый) этап пункта «Построение сверточного кодера». В этом окне пользователю (студенту) необходимо правильно расставить переходы из состояния в состояние, обозначив их линиями и расставить состояния кодера. На рисунке 5 показан внешний вид этого окна.
6.2.2 Построение декодера
Процесс декодирования в виртуальной лабораторной работе отличается от кодирующей части, он значительно меньше. Этот этап состоит из вписывания метрик в решетчатую диаграмму и запись всех выживших путей, в поля которые размещается в нижней части окна. После успешного прохождения пункта «Практика», пользователь может перейти в пункт «Тест», о чем его извещает окно с надписью «Преступить к тестированию». Это показано на рисунке 6.
Рисунок 4 – Третий этап сверточного кодирования
Рисунок 5 – Четвёртый этап построения кодера
Рисунок 6 – Построение декодера
6.3 Инструкция по использованию тестирующей части программы
Если пользователь (студент) осуществил вход в тестирующий модуль, теоретический материал будет ему недоступен, до того момента пока он не закончит тестирование. При обращении к пункту меню «Тест» главного диалогового окна программы, появляется диалоговое окно, запрашиваемое данные пользователя (студента), его фамилию, имя, № группы. В диалоговом окне присутствуют кнопки такие как: «Далее», «Закрыть» и «Журнал». Кнопка «Далее» выполняет непосредственный вход в процедуру тестирования; кнопка «Закрыть» осуществляет выход программы на главное диалоговое окно, не выполняя процедуру тестирования; кнопка «Журнал» осуществляет вход в окно, где записывается и хранится информация о ранее пройденных тестах.
После процедуры инициализации в стартовом окне компонента «Тест», пользователь должен нажать кнопку «Далее», чтобы приступить к тестированию. На странице тестирования отображены: вопрос, пять вариантов ответов и таймер. В процессе прохождения теста пользователь (студент) должен ответить на десять вопросов. Для удобства пользователя (студента) таймер выполнен в двух вариантах: в цифровом виде и в виде временной полосы, постепенно уменьшающейся по истечению времени.
7. Содержание отчета:
7.1 Наименование и цель работы.
7.2 Построить кодер и диаграмму перехода состояний.
7.3 Построить решетчатую диаграмму и расставить метрики.
7.4 Вывлды по работе
8. Контрольные вопросы:
8.1 Какая операция производится при работе кодера?
8.2 Какой алгоритм используется при декодировании при по максимуму правдоподобия?
8.3 Какое расстояние служит хорошей мерой близости между кодовыми словами?
8.4 Как находится свободное расстояние сверточного кода?
8.5 Какой вес имеет кодовые слова катастрофического кодера?
9. Методические указания:
9.1 Способы задания и основные характеристики сверточных кодов
Сверточные коды широко применяются в самых различных областях техники передачи и хранения информации. Наиболее наглядными примерами их эффективного применения являются системы космической связи, системы мобильной связи, модемы для телефонных каналов. В частности, протоколы V.32, V.34, ADSL, HDSL используют для защиты от ошибок сверточные коды в сочетании с декодированием по максимуму правдоподобия по алгоритму Витерби. В данной работе изучаются способы математического описания кодеров сверточных кодов, самих кодов и даются определения характеристик сверточных кодов.