Декодер 1 работает в режиме исправления ошибок. Если ошибок нет или вектор ошибок принадлежит к векторам ошибок, исправляемых кодом, то сигнал на выходе декодера 1 совпадает с сигналом на входе кодера (выходе источника).
Если сигнал на выходе декодера 1 не совпадает с входным сигналом, поступающим на вход кодера, значит, произошло ошибочное декодирование.
Это соответствует появлению вектора ошибок, который циклический код используемый в системе, исправить не может. Код (7,4) исправляет все одиночные ошибки. Исправление одиночной ошибки производится следующим образом
принятая 7-разрядная комбинация делится на порождающий полином;
если остаток от деления (синдром ошибки) не равен нулю, то по таблице соответствия «вектор ошибки — синдром» определяется вектор ошибки, которому соответствует данный синдром;
принятая 7-разрядная комбинация складывается по модулю 2 с найденным вектором ошибки.
Декодер 2 работает в режиме обнаружения ошибок. Если декодером 2 обнаружена ошибка, он формирует сигнал «Обнаружена ошибка», кодовая комбинация при этом не выдается (высвечивается «? ? ? ?»). Если вектор ошибок принадлежит к необнаруживаемым заданным кодом векторам ошибок, сигнал на выходе декодера 2 будет отличным от сигнала, поданного на вход кодера.
Декодер 2 не может обнаружить векторы ошибок, совпадающие с разрешенными кодовыми комбинациями. Это следует из свойства линейного кода: сумма двух кодовых слов также является кодовым словом.
1. Проверка работы кодера.
Задайте в «Источнике» различные информационные последовательности. Проследите последовательности, полученные на выходе кодера. Сравните полученные кодовые слова с результатом индивидуального задания.
2. Проверка правильности декодирования при отсутствии ошибок.
Установите в «Источнике ошибок» все разряды в ноль, т.е. ошибки отсутствуют. Задайте в «Источнике» различные информационные последовательности. Проследите последовательности, полученные на выходах декодеров (декодер 1, декодер 2). Убедитесь, что при отсутствии ошибок последовательности на выходах декодеров совпадают с последовательностью на входе кодера. При выполнении этого пункта обратите внимание, что при отсутствии ошибок синдром равен нулю.
3. Методика исследования способности кода исправлять ошибки. Задайте в «Источнике ошибок» однократную ошибку (например, 1000000).
Убедитесь, что на выходе декодера 1 будет та же последовательность, что и в «Источнике». Сместите циклически 6 раз вектор ошибки и убедитесь, что при любой однократной ошибке декодер 1 правильно ее исправит. При выполнении этого пункта обратите внимание, что синдром ошибки зависит от вектора ошибки и не зависит от передаваемой комбинации.
4. Методика проверки ошибочного декодирования в режиме исправления ошибок.
Задайте в «Источнике ошибок» несколько векторов ошибок с кратностью от 2 до 7. Убедитесь, что при таких ошибках последовательность на выходе декодера 1 не будет совпадать с последовательностью, которую вы задали в «Источнике».
5. Методика исследования способности кода обнаруживать ошибки. Задайте в «Источнике ошибок» различные ошибки кратностью от 1 до 7
Убедитесь, что подавляющее большинство векторов ошибок будет обнаружено (на панели «Декодер 2» будет гореть индикатор «Обнаружена ошибка»).
6. Методика проверки факта необнаружения ошибки кодом.
Задайте в «Источнике ошибок» различные ошибки кратностью от 3 до 7. Убедитесь, что имеются вектора ошибок, которые кодом не обнаруживаются (при наличии ошибки на панели «Декодер 2» не будет гореть индикатор «Обнаружена ошибка»).
7. Получение таблицы с разрешенными кодовыми комбинациями. Перейдите на закладку «Таблицы» и занесите полученную таблицу в отчет.
Отчет должен содержать:
Цель работы и функциональную схему лабораторного макета;
Индивидуальное задание.
Результаты работы, демонстрирующие следующее:
работу кодера и правильность декодирования при отсутствии ошибок;
способность кода исправлять однократную ошибку;
факт ошибочного декодирования в режиме исправления ошибок;
способность кода обнаруживать ошибки;
факт необнаружения кодом ошибки;
разрешенные кодовые комбинации и расстояния Хэмминга.
4. Выводы по работе.
Поясните понятия: блочные, непрерывные, систематические, несистематические, итеративные, линейные, циклические коды.
Что такое кодовое расстояние?
Определение и основные свойства циклического кода.
Какое правило кодирования циклическим кодом принято в лабораторной работе?
5. Какое правило декодирования принято в декодере в режиме исправления ошибок?
6. Какое правило декодирования принято в декодере в режиме обнаружения ошибок?
Как
связаны кратности гарантированно
исправляемых кодом ошибок
и гарантированно обнаруживаемых кодом
ошибок
с кодовым
расстоянием
?
Какие векторы ошибок не могут быть обнаружены линейным циклическим кодом?
Сколько различных векторов ошибок может быть:
исправлено;
не исправлено;
обнаружено;
не обнаружено кодом (7,4)?
Как рассчитать вероятность не обнаружения ошибки при заданной вероятности ошибки в канале?
Как рассчитать вероятность ошибочного декодирования при заданном канале?
Как по одной известной разрешенной комбинации циклического кода определить все остальные кодовые комбинации этого кода?
Известны
комбинации на входе кодера Р
и выходе
декодера Р'
,
Р
Р'
.
Как определить
вектор ошибки Е?
Дана длина кодовой комбинации и, вероятность ошибки в канале Р0. Как определить вероятность появления в кодовой комбинации ошибки кратностью i?