Ssswqfwqwqgqwgwq wqgwqgqwgw wqwqf

  • 06 дек. 2012 г.
  • 1684 Слова
Московский государственный институт электроники и математики Кафедра ИКТ |
Отчет к курсовой работе |
Циклический код в матричном виде |
Выполнил студент группы С-64: Бадаев В. А. Проверила: Гоманилова Н. Б. |
24.05.2010 |

ОглавлениеОглавление
Оглавление2

Теоретическая частьМетоды построения циклических кодов.Могут быть построены различнымиспособами:
1) В основе циклических лежит положение о том, что любая разрешённая комбинация этого кода всегда должна делиться на порождающий полином без остатка. Исходя из этого положения получить все разрешённые комбинации циклического кода зная информационную часть очень просто. А именно: надо каждую информационную часть умножить на порождающий полином. При этом мы получим все разрешённые кодовыекомбинации. К сожалению полученный таким способом код не является систематическим т.е. в комбинации этого кода нельзя выделить информационные и контрольные разряды. При декодировании в таком коде необходимо производить дополнительную операцию деления на P(x), чтобы выбелить информационную часть.
В этом заключается основной недостаток данного способа построения.
2) Разрешённые комбинации кодаможно легко получить используя вышерассмотренное выражение для кодирования:

3) Как и большинство кодов циклические коды могут быть представлены в матричном виде:
Порождающая матрица циклического кода как и для других кодов состоит из единичной матрицы (подматрицы) и контрольной подматрицы Ckm . В циклических кодах в качестве информационной части принято использовать единичную транспонированнуюматрицу E_m^T (хотя это и не обязательно). В единичной транспонированной матрице единицы расположены не по основной, а по побочной диагонали. Необходимо правильно строить подматрицу Ckm .

Рассмотрим два способа построения контрольной подматрицы Ckm :
Строки подматрицы Ckm получаются если делить на порождающий полином последовательно все строки еденичной транспонированной матрицы. Перед делениемстроки транспонированной матрицы должны быть сдвинуты на k разрядов влево (в полиномах это соответствует умножению на x^k). Таким образом строка матрицы Ckm получается следующим выражением:
, где G(x) это строка единичной транспонированной матрицы.

Рассмотрим следующий пример:
Построить порождающую матрицу (7,4) c

Порождающая матрица:

Строки
могут быть также получены, еслиделить на порождающий полином последнюю строку
, предварительно сдвинутой на k разрядов влево. Т.е. Фактически производится деление на P(x) единицы с последующими нулями. Получающиеся при таком делении промежуточные остатки и следует записывать в качестве подматрицы
.
При этом при делении надо иметь в виду следующее:
если получен промежуточный остаток по количеству разрядов оказываетсяменьше k, то следующую за этим строку подматрицы
получают путём сдвига на 1 разряд влево предыдущей строки подматрицы
. Эту операцию проводят до тех пор, пока количество разрядов в остатке не станет равным k.
1 0 0 0 0 0 0 / 1 0 1 1
-
1 0 1 1
1 1 0 0
-
1 0 1 1
1 1 1 0
1 0 1
C_3_4 =
0 1 1
1 1 0 (сдвиг)
1 1 1
1 0 1

Рассмотрим ещё один простой способ построения порождающей матрицыциклического кода.
Этот способ основан на использовании основного свойства циклических кодов, которое заключается в следующем:
Любая разрешённая комбинация кода будучи циклически сдвинута на 1 разряд влево также будет разрешённой комбинацией кода.
Как правило первую разрешённую комбинацию матриц получают следующим образом:
Справа записывают в двоичном виде порождающий полином, а затем слева приписываютm-1 нулей. Полученная разрешённая комбинация очевидно всегда будет делиться на порождающий полином.

Рассмотрим следующий пример:
Построить порождающую матрицу указанным способом для циклического кода с порождающим полиномом

Код не является систематическим.
Построенная матрица обладает всеми свойствами циклического кода 7_4, но в таком виде определяет не...
tracking img