Основные понятия и определения теории информации и кодирования. Задачи теории информации и кодирования, страница 37

Если исходный код исправлял произвольный пакет ошибок длины t,то, очевидно,результирующий код будет исправлять все пакеты ошибок длины jt.Например,применяя метод перемежения к четырём копиям (31,25)кода,получаем(124,100) - код.Так как каждый из четырёх исходных кодов исправлял пакет ошибок длины 2,то новый код будет исправлять любой пакет ошибок длины 8.

Для циклических кодов метод перемежения приводит к циклическим кодам.Предположим,что исходный код порождается полиномом g(X).Тогда порождающий полином получаемого перемежением кода равен g(X^j).

НАПРИМЕР,перемежением двух копий (7,3) - кода получается (14,6) код,исправляющий пакеты ошибок длины 4.Поскольку порождающий полином (7,3) - кода равен g(X) = X^4+X^3+X^2+1,то порождающий полином

(14,6) - кода будет g(X^2) = X^8+X^6+X^4+1.

──────┬──────────────────────────────────────────────┐

Ввод 14 │                                             ┌─┐

битов,со│    ┌─────────────────┬───────────┬──────────│+│

держащих│    │                 │           │          └─┘

пакет   │    │                 │           │           │

ошибок  │    │┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐

│    └│ │─│ │─│ │─│ │─│+│─│ │─│ │─│+│─│ │─│ │─│+│

│     └─┘ └─┘ └─┘ └─┘ └─┘ └─┘ └─┘ └─┘ └─┘ └─┘ └─┘

│          │       │                       │

│     ┌────────────────────┐               │

│     │Проверка на оба нуля│────────┐   ┌──┘

│     └────────────────────┘      ┌───────┐

│                                 │Схема И│ Вывод 14

│                                 └───────┘ битов без

│                                     │     ошибок

│     ┌────────────────────┐         ┌─┐

└─────│ 14-битовый буфер   │─────────│+│────────────>

└────────────────────┘         └─┘

Всего 28 тактов

Декодер с вылавливанием ошибок для (14,6) - кода перемежения.

На рисунке изображён декодер с вылавливанием ошибок для (14,6) кода перемежения.Вылавливание пакета ошибок длины не более 4 сводится к проверке равенства нулю четырёх самых левых символов синдрома.Схему,однако,можно немного улучшить.Заметим,что разряды с чётными номерами и разряды с нечётными номерами не взаимодействуют.Поэтому цепь вычисления синдрома можно рассматривать как две независимые цепи вычисления синдромов для каждого из двух перемежаемых кодов,но с последующим перемежением позиций синдромов.Такая модификация декодера показана на рисунке.Этот декодер позволяет исправлять все пакеты ошибок длины 4,а также некоторые дополнительные конфигурации ошибок.

К О Д Ы   Ф А Й Р А .

Кроме найденных на ЭВМ кодов и получающихся из них перемежением кодов известны также коды,построенные аналитическими методами.Одним из классов таких кодов являются коды Файра.

КОДОМ ФАЙРА называется исправляющий пакеты ошибок циклический код над GF(2) с порождающим полиномом

g(X) = (X^2t-1 + 1)p(X), где p(X) - примитивный полином над GF(2),степень m которого не меньше длины t исправляемого пакета и который не делит X^2t-1 + 1.Длина n кода Файра равна наименьшему целому n такому,что g(X) делит

X^n + 1.

Обозначим 2t-1 = c.Тогда

g(X) = (X^c+1)p(X).

Период полинома (X^c+1) равняется c,т.е.через i = c остатки от деления X^i на (X^c+1) будут повторяться.Период полинома g(X) и,соответственно,максимальное число символов в кодовой комбинации n равно общему наименьшему кратному c и (2^m-1),т.е.n = c(2^m-1).

Число контрольных разрядов в слове

p = c + m = 2t - 1 + m

Для исправления пакетов ошибок длины t требуется не менее (3t-1)

контрольных разрядов.

Проверочные соотношения,связанные с множителем X^c + 1,представляют собой c перемежающихся,равномерно расположенных проверок на чётность.Поскольку символы,входящие в каждое из проверочных соотношений,располагаются на расстоянии с друг от друга,то при возникновении пакетной ошибки с разрядностью t или меньше будут искажаться не более одного символа в любом из проверочных соотношений.При этом по меньшей мере в (c - t) последовательных проверочных соотношениях не будет ни одного искажённого символа.Поэтому можно определить,какой символ стоит в начале покета.Дополнительная информация,требуемая для определения положения пакета,обеспечивается сомножителем p(X).