ЛЕКЦИЯ 14
Помехоустойчивое кодирование (продолжение) Циклические коды Сверточные коды Коды Рида-Соломона
Циклические коды Циклическими кодами называют специальную группу кодов, для построения которых могут быть использованы циклические свойства квадратных матриц, а также коды, которые описываются неприводимыми, образующими (порождающими) многочленами (полиномами).  Циклические коды относятся к систематическим ( n , k )-кодам, в которых контрольные  r  и информационные  k  разряды расположены на строго определенных местах ( n  =  k  +  r ).
Полиномиальное представление кодовой комбинации P ( x ) =  a n x n  +  a n -1 x n -1  +  a n -2 x n -2  + …+  a 2 x 2  +  a 1 x  +  a 0 x, где  a n ,   a n -1 ,   a n -2 ,  … ,  a 2 ,   a 1 ,   a 0  – значения разрядов   кодовой комбинации с номерами   n, n–1, n–2, …, 2, 1, 0. Например,  P ( x ) =  x 5  +  x 3  +  x 2  + 1  – полиномиальное представление кодовой комбинации 101101 .
Построение циклических кодов Кодовые комбинации при построении циклических кодов рассматриваются как многочлены. Действия над ними производятся также, как в обычной алгебре, с заменой сложения и вычитания операцией сложения по модулю 2. Циклический ( n,k ) - код получают следующим образом: заданный многочлен  h ( х ) умножается на одночлен  х n - k ,  полученный многочлен делится на образующий многочлен  g ( х ), полученный остаток суммируется с произведением  h ( х ) х n - k .
Построение циклических кодов Для построения циклических кодов так же, как и в случае кодов Хэмминга, можно использовать образующую (порождающую) матрицу  G k  n :  R k  ( n – k )  – матрица остатков  r i  от деления полинома  x 2( n – k )– i – 1   на образующий многочлен  g ( x ) для всех строк с номерами  i  = 1, 2, …,  k .
Обнаружение и исправление ошибок Для обнаружения ошибок можно использовать проверочную матрицу так же как и в случае кодов Хэмминга
Неприводимые полиномы x +1 x 2 + x +1 x 3 + x +1 x 3 +x 2 +1 x 4 + x +1 x 4 + x 3 +1   x 4 + x 3 + x 2 + x +1 x 5 + x 2 +1 x 5 + x 3 +1 x 5 + x 3 + x 4 + x +1 x 5 + x 4 + x 2 + x +1 x 5 + x 4 + x 3 + x +1 x 5 + x 4 + x 3 + x 2 +1 x 6 + x +1 x 6 + x 3 +1 x 6 + x 5 +1 x 7 + x +1 x 7 + x 3 +1 x 7 + x 3 + x 2 + x +1 …
Сверточные коды и коды Рида-Соломона Сверточные коды – это коды, исправляющие ошибки, которые используют непрерывную, или последовательную,  обработку информации короткими блоками. Символы на выходе сверточного кодера зависят как от информационных символов на входе, так и от предыдущих обработанных символов, т.е. сверточный кодер представляет собой автомат с памятью. Наиболее распространенным методом декодирования является алгоритм Витерби. Коды Рида-Соломона являются  q -ичными кодами, где  q  > 2. Структура кодов Рида-Соломона и алгоритм декодирования описывается с помощью спектральных методов.
Вопросы Циклические коды Полиномиальное представление циклических кодов Операции над циклическими кодами Систематические циклические коды Полиномиальное представление циклических кодов Порождающая матрица Проверочная матрица Обнаружение и исправление ошибок Сверточные коды Коды Рида-Соломона

лекция 14

  • 1.
  • 2.
    Помехоустойчивое кодирование (продолжение)Циклические коды Сверточные коды Коды Рида-Соломона
  • 3.
    Циклические коды Циклическимикодами называют специальную группу кодов, для построения которых могут быть использованы циклические свойства квадратных матриц, а также коды, которые описываются неприводимыми, образующими (порождающими) многочленами (полиномами). Циклические коды относятся к систематическим ( n , k )-кодам, в которых контрольные r и информационные k разряды расположены на строго определенных местах ( n = k + r ).
  • 4.
    Полиномиальное представление кодовойкомбинации P ( x ) = a n x n + a n -1 x n -1 + a n -2 x n -2 + …+ a 2 x 2 + a 1 x + a 0 x, где a n , a n -1 , a n -2 , … , a 2 , a 1 , a 0 – значения разрядов кодовой комбинации с номерами n, n–1, n–2, …, 2, 1, 0. Например, P ( x ) = x 5 + x 3 + x 2 + 1 – полиномиальное представление кодовой комбинации 101101 .
  • 5.
    Построение циклических кодовКодовые комбинации при построении циклических кодов рассматриваются как многочлены. Действия над ними производятся также, как в обычной алгебре, с заменой сложения и вычитания операцией сложения по модулю 2. Циклический ( n,k ) - код получают следующим образом: заданный многочлен h ( х ) умножается на одночлен х n - k , полученный многочлен делится на образующий многочлен g ( х ), полученный остаток суммируется с произведением h ( х ) х n - k .
  • 6.
    Построение циклических кодовДля построения циклических кодов так же, как и в случае кодов Хэмминга, можно использовать образующую (порождающую) матрицу G k  n : R k  ( n – k ) – матрица остатков r i от деления полинома x 2( n – k )– i – 1 на образующий многочлен g ( x ) для всех строк с номерами i = 1, 2, …, k .
  • 7.
    Обнаружение и исправлениеошибок Для обнаружения ошибок можно использовать проверочную матрицу так же как и в случае кодов Хэмминга
  • 8.
    Неприводимые полиномы x+1 x 2 + x +1 x 3 + x +1 x 3 +x 2 +1 x 4 + x +1 x 4 + x 3 +1 x 4 + x 3 + x 2 + x +1 x 5 + x 2 +1 x 5 + x 3 +1 x 5 + x 3 + x 4 + x +1 x 5 + x 4 + x 2 + x +1 x 5 + x 4 + x 3 + x +1 x 5 + x 4 + x 3 + x 2 +1 x 6 + x +1 x 6 + x 3 +1 x 6 + x 5 +1 x 7 + x +1 x 7 + x 3 +1 x 7 + x 3 + x 2 + x +1 …
  • 9.
    Сверточные коды икоды Рида-Соломона Сверточные коды – это коды, исправляющие ошибки, которые используют непрерывную, или последовательную, обработку информации короткими блоками. Символы на выходе сверточного кодера зависят как от информационных символов на входе, так и от предыдущих обработанных символов, т.е. сверточный кодер представляет собой автомат с памятью. Наиболее распространенным методом декодирования является алгоритм Витерби. Коды Рида-Соломона являются q -ичными кодами, где q > 2. Структура кодов Рида-Соломона и алгоритм декодирования описывается с помощью спектральных методов.
  • 10.
    Вопросы Циклические кодыПолиномиальное представление циклических кодов Операции над циклическими кодами Систематические циклические коды Полиномиальное представление циклических кодов Порождающая матрица Проверочная матрица Обнаружение и исправление ошибок Сверточные коды Коды Рида-Соломона