Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ТПС / Шпоры_ТПС.doc
Скачиваний:
82
Добавлен:
22.02.2016
Размер:
13.23 Mб
Скачать

16. Общие свойства и способы представления циклических кодов

Циклические коды являются разновидностью (n, k) кодов. Основное свойство: если кодовый вектор принадлежит к кодуV, то вектор полученный изциклической перестановкой составляющих также принадлежитV.

В теории циклических кодов принято кодовые комбинации изображавшиеся ранее вектором представлять в виде многочленов. Вектору соответствует, где –x формальная переменная, умножение на которую сдвигает элемент кодовой комбинации на один такт. Для того чтобы из получить многочлен, следует, но для того чтобы не превысить, надозаменить на 1, получим:

Множество многочленов при перемножении которых заменяется на 1 называют кольцом многочленов по модулю, а весь математический аппарат, используемый для описания и построения циклических кодов – алгеброй многочленов по модулю.

При представлении кодовых комбинаций векторами код задаётся производящей матрицей G, а при представлении многочленами – производящим (порождающим) многочленом g(x), в качестве производящего многочлена берется .

Необходимо построить (n, k) код, например (7,4). В этом случае многочлен g(x) должен иметь степень n –k = 3. Выберем , соответствующий вектору= (1101000). Для составления производящей матрицыG(n, k) кода эквивалентного заданному циклическому, необходимы 4 линейно независимых кодов вектора. Их можно получить циклическими перестановками умножая на 1,,,и дополняя недостающие степени нулями

Все это дает:

Полученные семимерные векторы сведём в матрицу:

Кодовое расстояние кода можно определить по минимальному числу единиц в строке матрицыG. Для циклического кода это соответствует числу слагаемых в многочлене g(x) в рассмотренном примере = 3.

Строки матрицы G содержат четыре линейно независимых вектора, получаем:

Этот вектор не является базисным и может быть получен как линейная комбинация последних.

Сопоставляя со строками матрицыG можно увидеть:

,тогда

или

Но произведение

Многочлен g(x)h(x) , в общем случае ,g(x) должен без остатка делить модуль :

Многочлен h(x) может быть использован для построения проверочной матрицы (n, k) кода.

В нашем примере проверочная матрица равна

Операция перевода из избыточной комбинации в кодовую комбинацию V математически можно представить:

V(x)=l(x)g(x)

Декодирование – обратная операции, делением принятой кодовой комбинации на производящий многочлен g(x)

l(x)=U(x)/g(x)

Если ошибки при передаче не было, то деление осуществляется без остатка, если при передаче произошла ошибка и принята комбинация изображается многочленом

U(x)=V(x) +

При декодировании

Появившийся остаток свидетельствует о наличии ошибки. Всякая комбинационная ошибка длиной равной (n, k) представляемая многочленом степени (n-k-1) или меньшей обязательно обнаруживается, т.к. деление /g(x) в этом случае неосуществимо.

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

Если передача комбинации V(x) произойдет безошибочно, то деление на g(x) на приемной станции выполняется без остатка. Все элементы регистра делящей схемы к восьмому такту будут в нулевом положении => сигнала ошибки не будет.

Если при передаче возникает ошибка, то при делении в регистре приемной станции появится остаток, который и будет сигналом ошибки.

Соседние файлы в папке ТПС