После запуска программы нажимаем на верхнюю левую иконку, а в появившемся окне – на кнопку «Ок». На рабочем поле методом «drag and drop» из меню слева выдвигаются элементы, необходимые для построения схемы:
-источник битовой последовательности, который находим по адресу «Битовые данные – вход – генераторы – генератор битовой последовательности»;
- ячейки регистра сдвига с адресом «Битовые данные –биты - регистр»;
- сумматоры по модулю два (в меню «Битовые данные –биты - XOR»);
- окно индикации: «Биты – прочие – битовая консоль».
На вход кодера подаётся цифровая последовательность с помощью окна программного модуля «генератор битовой последовательности». Для этого нужно дважды щёлкнуть левой кнопкой мыши по иконке «SeqGen» и ввести в открывшееся окно входные биты.
Входные
и выходные данные кодера выводятся в
окне программного модуля «битовая
консоль» (иконка «битовая консоль» на
схеме справа).При выборе ячеек регистра
сдвига задать начальное состояние «0»
(изменить установленную по умолчании
«1»). При установке битовой консоли надо
выбрать число входов. Оно выбирается
из следующих условий. Один (первый,
верхний) вход отводится для отображения
входных бит в виде первого столбца
выводимой таблицы. Два входа (по числу
ячеек регистра в данном примере выделяются
для отражения их состояний, то есть
двоичных сигналов с выходов этих ячеек).
Ещё два входа выделяются для выходов
умножителей свёрточного кодера. Таким
образом, в данном примере с полиномами
2-й степени битовая консоль имеет 5
выходов. Если степень полинома выше
(например, 4-я), то в схеме потребуется
битовая консоль с 7-ю выходами. Для
пошагового запуска схемы на верхней
панели управления окна «Спектр - 2»
нажимать кнопку в виде зелёного
треугольника с цифрой «1». После каждого
нажатия высвечивается очередная строка
битовой консоли (таблица 4)
Данная таблица совпадает с таблицей 3 Примера 1. По ней также можно построить диаграмму состояний и решетчатую диаграмму рассмотренного свёрточного кодера.
Пример 3. Декодирование по алгоритму Витерби. Алгоритм основан на выборе наиболее вероятного пути на решетчатой диаграмме, соответствующего принятой последовательности. По результатам выбора оценивается достоверность принятых бит и исправляются выявленные ошибки. Критерий, по которому выбираются либо отсеиваются ветви пути на решетчатой диаграмме, - это метрика Хэмминга, то есть вес разности (суммы по модулю 2) двух кодов. Метрика Хемминга показывает число различающихся бит в двух сравниваемых последовательностях.
Пусть задан код с порождающими многочленами gв=78 gн=58 . Пусть принята последовательность 00 10 00 00. Воспользуемся решетчатой диаграммой и оценим метрики путей на ней. Метрика ветви считается как вес (количество единиц) суммы по модулю 2 между принятой парой бит и выходными битами, соответствующими ветви диаграммы, который суммируется (это уже арифметическая сумма) с метрикой, полученной для начала ветви на предыдущем шаге.
На первом шаге метрика самого верхнего пути равна нулю (принятая пара и её версия совпадают: 00=00).
На двух первых шагах ветви диаграммы с метриками путей выглядят следующим образом (рисунок выше). Возможные пути: (00 00), (00 11), (11 01), (11 10) не совпадают с первыми битами принятой последовательности (00 10), что свидетельствует о наличии в ней ошибки. Поэтому на втором шаге из-за ошибки ни одна из метрик (по вертикали справа: 1; 1; 4; 2) не равна нулю.
На третьем шаге происходит выделение по метрикам наиболее вероятных путей (с меньшими метриками) и отсев менее вероятных путей (по их большим метрикам).
Выделение путей осуществляется по следующим правилам. Из двух путей, пришедших в узел, сохраняем тот, что с меньшей метрикой. Если оба пути имеют одинаковые метрики, то оставляем любой из них. Из пар вычисленных метрик (в порядке сверху вниз): 1,6; 5,4; 2,3; 2,5 выделяем меньшие. В данном случае на 3-м шаге нужно отсеять пути, отмеченные пунктиром. В результате исходные метрики для 4-го шага: 1; 4; 2; 2.
На 4-м шаге пары вычисленных метрик (в порядке сверху вниз) составляют последовательность: 1,4; 3,2; 4,3; 4,3. Остаются меньшие метрики из этих пар: 1; 2; 3; 3.
Поскольку декодируемая последовательность данного примера закончилась, то окончательный выбор – путь с наименьшей метрикой, равной 1 (этот путь располагается на решетчатой диаграмме вверху по горизонтали). Ему соответствуют закодированные сигналы 00 00 00 00 и исходные сигналы 0 0 0 0. Таким образом, в принятой последовательности (00 10 00 00) была исправлена ошибка в 3-м бите.
Содержание отчета
Наименование и цель работы.
Исходные данные для выполнения работы.
Результаты выполнения работы.
Выводы.
Вопросы к защите лабораторной работы №4 ПК
1. Как связаны разрядность порождающих полиномов и длина регистра сдвига сверточного кодера?
2. Из каких схем дискретной логики составлен свёрточный кодер?
3. Какой элемент схемы стоит на выходе свёрточного кодера?
4. По какому критерию выделяются правдоподобные пути на решетчатой диаграмме?
5.Как формулируется правило отсеивания «лишних» путей согласно алгоритму Витерби?
6. Как определяется скорость сверточного кодирования?
7. Как определяется число состояний свёрточного кодера?
8. Чем определяется исправляющая способность свёрточного кода?
9. Что показывает решетчатая диаграмма?
10. Как вычислить вес пути на решетчатой диаграмме?
12. Почему алгоритм декодирования Витерби называют алгоритмом максимального правдоподобия?
Учебное издание
Русанов Владимир Эдуардович
Лебедев Александр Николаевич
Лабораторная работа № 4 ПК
по дисциплине «Помехоустойчивое кодирование»
«Исследование свёрточных кодов»
Учебное пособие
