Основные понятия помехоустойчивого кодирования.
Помехоустойчивым
наз. Код, позволяющий обнаруживать и/или
исправлять ошибки в кодовых словах.
Разберем, в чем
определяется способность кода обнаруживать
ошибки.
Пусть имеется трех
битный код и следовательно 8 кодовых
слов.
Пусть передавая
слово 011 была допущена ошибка по втором
бите = 001. Любая ошибка приводит к тому,
что все равно получаем кодовое слова,
следовательно этот код не позволяет
обнаруживать ошибки.
Чтобы охарактеризовать
способность кода к обнаружению ошибки
введем понятие кодового
расстояния
– это минимальное число кодовых
переходов, разделяющих эти слова.
К
аждое
ребро куба есть кодовый переход между
двумя словами.
Кодовым
расстоянием кода
наз. Минимальное из всех расстояний
между кодовыми словами dmin.
Чтобы код мог обнаруживать ошибки
кодовое расстояние должно быть >
1.
Это значит, что
используется только часть кодовых слов.
Эти слова наз. Разрешенными,
остальные – запрещенные.
000; 010; 101; 011
Можно к каждому
слову кода добавить 1 бит.
Таким образом,
задача помехоустойчивого кодирования
следующая:
при получении
сообщения из к - символов составить
кодовое слово из n-символов
(k<n).
Задача
декодирования:
Из принятого
кодового слова длинной n
получить сообщение длинной к, при
одновременном обнаружении или исправлении
ошибок. Количество обнаруживаемых или
исправляемых ошибок определяется
кодовым расстоянием.
Если код имеет
кодовое расстояние dmin,
то он позволяет обнаруживать ошибки в
количестве ≤
dmin-1
Если код имеет
кодовое расстояние dmin,
то количество исправляемых ошибок ≤
(dmin-1)/2
Чтобы обнаружить
t
ошибок и исправить S
ошибок кодовое расстояние dmin≥t+S+1
Чтобы код мог
исправлять S
ошибок кодовое расстояние dmin≥2S+1
Для описания
ошибок, возникающих в кодовых словах
используют вектор
ошибок – это
последовательно длинны n,
с единицами в тех позициях, в которых
произошли ошибки.
е3=(00100)
Если сложить вектор
ошибки с кодовым словом, то получится
правильное кодовое слово.
Обозначим через
х переданное кодовое слово, х’ – получено
кодовое слово, тогда:
Х=Х’
+ е