Методы построения циклического кода
В предыдущем параграфе были рассмотрены методы поиска образующего многочлена в зависимости от требуемой корректирующей способности кода. Зная кодовую комбинацию из «k» информационных символов – ai(x) и образующий многочлен – g(x), нужно получить разрешенные кодовые комбинации (Р.К.К.) – ƒi(x). Существуют три метода образования Р.К.К. циклического кода.
Построение циклического кода методом умножения
Информационный многочлен ai(x) умножается на образующий многочлен g(x), то есть .
Достоинство метода – простота реализации при кодировании.
Недостаток – получаемый код – неразделимый, то есть заранее нельзя указать, где расположены информационные и проверочные символы. Поэтому при декодировании после исправления ошибок приходится делить на g(x) дважды, чтобы получить информационный многочлен.
Пусть имеем код (7; 4), то есть код исправляющий одиночные ошибки. Пусть g(x) = x3 x 1. Необходимо передать ai(x) = 1011.
Для получения Р.К.К. – ƒi(x) умножим и получим:
В линии связи произошла ошибка , тогда на выходе из линии связи получим кодовую комбинацию , то есть
На приемной стороне, чтобы судить есть ошибка или нет, необходимо принятую кодовую комбинацию (К.К.) поделить на g(x). Если ошибок нет, то остаток от деления r(x) должен быть равен нулю. Делим:
Получили остаток, отличный от нуля. http://peredacha-informacii.ru/ По нему мы должны определить, в каком разряде имеет место ошибка. Для этого необходимо определить, какой остаток ri(x) даст единичная ошибка в i-том разряде.
До ошибки в четвертом разряде остаток соответствует самой ошибке, а начиная с ошибки в 4-ом разряде происходит деление. В примере остаток , то есть ошибка в пятом разряде. Исправим ошибку:
Но, получив ƒi(x), мы не получили ai(x), то есть снова приходится делить ƒi(x) на g(x), то есть
|