Коды с обнаружением и исправлением ошибок, коды Хемминга. Помехоустойчивое кодирование. Результат декодирования

Страницы работы

Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.

Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.

Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.

Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.

Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.

Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.

Фрагмент текста работы

Министерство высшего и среднего образования РФ Саратовский государственный технический университет

КОДЫ С ОБНАРУЖЕНИЕМ И ИСПРАВЛЕНИЕМ ОШИБОК. КОДЫ ХЕММИНГА.

Методические указания к выполнению лабораторной работы по курсу «Передача данных в информационно-управляющих системах»

для студентов специальности 2101

Балаково 2001

Цель работы: ознакомление с основными принципами помехозащищенного и непомехозащищенного кодирования. Получение практических навыков помехоустойчивого кодирования и исследование корректирующих свойств кода Хемминга.

ОСНОВНЫЕ ПОНЯТИЯ

Помехоустойчивое кодирование

При телеуправлении, телеизмерении и телесигнализации вся необходимая информация передается по каналам связи. При этом передача должна осуществляться без искажений или с минимальными искажениями. Для минимизации искажений информации используется ее кодирование.

Кодирование - это преобразование дискретного сообщения в дискретный сигнал, осуществляемое по определенному правилу. Обратный прогресс-декодирование - это восстановление дискретного сообщения по сигналу на выходе дискретного канала, осуществляемое с учетом правила кодирования.

Код есть совокупность условных сигналов, обозначающих дискретные сообщения. Кодовая комбинация - это представление дискретного сигнала.

Кодирование нашло широкое применение в современных системах телемеханики при защите передаваемой информации от помех. Коды делятся на две основные части: помехозащищенные и непомехозащищенные. Особенностью непомехозащищенных кодов является наличие их в составе кодовых комбинаций, которые отличаются друг от друга лишь в одном разряде. Типичным кодом такого типа является двоичный  код на  все сочетания.  Существует много непомехозащищенных кодов, например, единично-десятичный код. двоично-десятичный код, числоимпульсный код, код Морзе, код Грея. Помехозащищенными   (корректирующими)   называют   коды,   позволяющие обнаружить и исправить ошибки кодовой комбинации.

Отсюда деление этих кодов на две большие группы:

1. Коды с обнаружением ошибок.

2. Коды, с обнаружением и исправлением, ошибок

Основой для обнаружения и исправления такими кодами являются увеличение кодового расстояния между кодовыми комбинациями (кодовые комбинации различают в двух и более разрядах). Кодовое расстояние - это минимальное число элементов, в которых кодовая комбинация отличается от другой (по всем парам кодовых слов). В корректирующих кодах комбинации построены по определенном) правилу, например, содержат четное число единиц Построение помехоустойчивого кода с недоиспользованием кодовых комбинаций, приводящей к так называемой избыточности. Избыточность означает, что из исходных символов можно построил, больше  комбинаций, чем их приеме. Таким образом, уменьшение числа используемых комбинаций приводит к повышению помехоустойчивости кода, которая связана с увеличением кодового расстояния.

Исходная комбинация:

1

1

1

1

1

0

1

т1

т2

k4

т3

k3

к2

k2

Искаженный символ:

1

1

1

1

1

1

1

m1

m2

k4

m3

k3

k2

k1

Результат декодирования

1

1

1

1

k4

k3

k2

k1

Результатом корректирующего декодирования будет кодовая комбинация, состоящая из 4-х символов (без проверочных) Декодирование проходит в три этапа

1. Сначала с информационными символами – k1, k2, k3, k4 проводится кодирование по Хеммингу, т.е. формируются проверочные символы -  т1, т2 , т3. Например, символ т1равен сумме по модулю информационных символов k1, k2, k3, k4.

mi= k1+k3+ k 4=1+1+1=1, т2=k1+k2+k4=1+0+1=0, т3=k1+k2+k3=1- 0- I=0

2. Затем исходные проверочные символы сравнивают с полученными в результате кодирования, т.е. складывают по модулю 2 Если полученная сумма равна 0, то комбинация принята без искажений и ошибка отсутствует. В противном случае значение этой суммы указывает (если отсчет принять слева) на порядковый номер символа кодовой комбинации, который был искажен. В рассматриваемом примере т3+ т3=1, т2+ т2 =1, т1+ т1 =0, значит был искажен символ k2.

3, На последнем этапе исправляют искаженный символ и выделяют его из исходной комбинации информационные символы.

т3+т3

т2+ т3

т1+m1

Искаженный символ

0

0

1

т1

0

1

0

т2

0

1

1

k4

1

0

0

т3

1

0

1

k3

1

1

0

k2

1

1

1

k1

ОПИСАНИЕ ЛАБОРАТОРНОЙ УСТАНОВКИ.

На рис.1 представлена передняя панель лабораторного стенда Исходное

Похожие материалы

Информация о работе

Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.

Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.

Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.

Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.

Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.

Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.