Коды Хемминга.
Коды Хэмминга (Hamming codes) — это простой класс блочных кодов, которые имеют следующую структуру:
(10.4)
где m= 2,3, Минимальное расстояние этих кодов равно 3, поэтому они способны исправлять вес однобитовые ошибки или определять все ошибочные комбинации из двух или менее ошибок в блоке. Декодирование с помощью синдромов особенно хорошо подходит к кодам Хэмминга. Фактически синдром можно превратить в двоичный указатель местоположения ошибки. Хотя коды Хэмминга не являются слишком мощными, они принадлежат к очень ограниченному классу блочных кодов, называемых совершенными.
Циклические коды.
Важным подклассом линейных блочных кодов являются двоичные циклические коды (cyclic codes). Код легко реализуется на регистре сдвига с обратной связью; на подобных регистрах сдвига с обратной связью вычисляется синдром; алгебраическая структура циклического кода естественным образом позволяет эффективно реализовать методы декодирования. Итак, линейный код (n, к) называется циклическим, если он обладает следующим свойством. Если n-кортеж U= (u0, u1, и2, …, un-1) является кодовым словом в подпространстве S, тогда U(1)= (un-1, u0, u1, и2, ., un-1), полученный из U с помощью циклического сдвига, также является кодовым словом в S. Или, вообще, U(i) = (un-i;. un-i+1,…, un-1, u0, u1,… un-i-1), полученный i циклическими сдвигами, является кодовым словом в S.
Циклический код Файра
.
Циклические коды, обнаруживающие и исправляющие пакеты ошибок (коды Файра). Под пакетом ошибок длиной b понимают такой вид комбинации помехи, в которой между крайними разрядами, пораженными помехами, содержится b-2 разряда. Например, при b=5 комбинации помехи, т.е. пакет ошибок, могут иметь следующий вид: 10001 (поражены тоько два крайних символа), 11111 (поражены все символы), 10111, 11101, 11011 (не поражен лишь один символ), 10011, 11001, 10101 (поражены три символа). При любом варианте непременным условием пакета данной длины является поражение крайних символов.
Коды Файра могут исправлять пакет ошибок длиной b и обнаруживать пакет ошибок длиной b
Коды Боуза-Чоудхури-Хоквингэма.
.
Эти коды, разработанные Боузом, Чодхури и Хоквинхемом (сокращенно коды БЧХ), позволяют обнаруживать и исправлять любое число ошибок. Заданными при кодировании является число ошибок s, которое следует исправить, и общее число символов, посылаемых в линию, т.е. длина слов n. Числа информационных символов k и контрольных символов m, а также состав контрольных символов подлежат определению.
Коды БЧХ для обнаружения ошибок
. Их строят следующим образом. Если необходимо образовать код с обнаружением четного числа ошибок, то по заданному числу r находят значения d и s. Дальнейшее кодирование выполняют, как и ранее. Если требуются обнаружить нечетное число ошибок, то находят ближайшее меньшее целое число s и кодирование производят так же, как и в предыдущем случае: образующий многочлен дополнительно умножают на двучлен . Например, требуются построить код обнаруживающий семь ошибок при n=15. Находим, что d=8, а ближайшее меньшее значение s=3. Далее определяем многочлен , как указано в примере 3.5, и умножаем его на двучлен , т.е. получаем . Таким образом построен код БЧХ(15,4). Перейти на страницу: 1 2
Другое по теме:
Разработка и описание работы устройства на PIC-контроллере Однокристальные микроконтроллеры стремительно занимают ведущее место в электронной аппаратуре. И если каких-нибудь десять лет назад они могли быть использованы при проектировании только профессионалами — слишком много требовалось д ...