Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Образующая матрица укороченного (12, 4) псевдоциклического кода




Укороченные циклические коды.

Декодирование циклических кодов.

Образующие многочлены для обнаружения единичных и двойных ошибок

n k m P (x)
      x 3 +x+ 1
      x 4 +x+ 1
      x 5 +x 4 + 1

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

Если имеется искажение, то искаженная комбинация:

H (x)= F (x)+ E (x), где E (x) – многочлен ошибок, содержащий столько «1», сколько элементов искажено.

Для обнаружения и исправления ошибок существует несколько вариантов декодирования. Один из них заключается в следующем:

1. Вычисление остатка (как и при обнаружении ошибок).

2. Подсчет веса остатка w. Если w <= s (число исправляемых ошибок), то принятую комбинацию складывают по mod 2 с остатком и получают исправленную комбинацию.

3. Если w > s, то производят циклический сдвиг вправо (с переносом единицы из старшего разряда) на 1 разряд и полученную комбинацию делят на образующий многочлен. Если вес полученного остатка w 1<= s, то циклически сдвинутую комбинацию суммируют по mod 2 с остатком R 1 и затем циклически сдвигают ее в обратную сторону на 1 символ (на прежнее место), получают исправленную комбинацию.

4. Если одного сдвига вправо недостаточно, то сдвиг повторяют до тех пор, пока wi <= s, затем исправленную комбинацию возвращают на прежнее место.

Применяются для повышения корректирующих способностей. Пусть требуется применить 15 комбинаций и исправить две ошибки, т.е. s =2, d =5. Код (7, 4) может исправить только одну ошибку. В циклическом коде число разрядов может быть лишь 15, поэтому требуется циклический код (15, 7). Но в нем различных комбинаций 27>>15, поэтому код (15, 7) укорачивают так, чтобы образовать 15 комбинаций. Образующая матрица укороченного (12, 4) псевдоциклического кода имеет следующий вид (табл. 4.26).

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

 

 

Таблица 4.26

4.7.3. Итеративные коды

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

1. Пусть кодовая комбинация, подлежащая кодированию, имеет вид

k 6 k 5 k 4 k 3 k 2 k 1
           

2. Разбиваем эту комбинацию поровну и записываем в две строки:

k 6 k 5 k 4
     
k 3 k 2 k 1
     

3. Делаем проверку на четность символов каждой строки и дописываем справа (или слева) контрольные символы т:

k 6 k 5 k 4 m 1
       
k 3 k 2 k 1 m 2
       
       

4. Делаем еще одну проверку на четность символов каждого столбца и дописываем внизу или вверху символы m:

k 6 k 5 k 4 m 1
       
k 3 k 2 k 1 m 2
       
       
m 3 m 4 m 5 m 6

 

В результате этих преобразований получаем итеративный код с равным числом информационных и контрольных символов, в данном случае код (12,6), который можно записать в форме матрицы (4.11) или развернуть в строку (4.12).

k 6 k 5 k 4 m 1

k 3 k 2 k 1 m 2

m 3 m 4 m 5 m 6 (4.11)

Матрица разворачивается в строку и получается полная кодовая комбинация (4.12) итеративного кода.

 

k 6 k 5 k 4 m 1 k 3 k 2 k 1 m 2 m 3 m 4 m 5

1 0 1 0 0 1 0 1 1 1 1 (4.12)

 

Сделаем проверку на исправление искажения. Предположим, что при передаче произошло искажение и получена комбинация 101011011111. Декодирование осуществляется следующим образом.

1. Полученная кодовая комбинация записывается в форме матрицы в соответствии с (4.11):

       
       
       

2. Делаем проверку на чётность символов каждой строки и каждого столбца, результаты проверки записаны в правом столбце и нижней строке:

 

         
         
         
         
         

 

Если бы искажения не было, то в каждой строке и в каждом столбце результаты были бы нулевые. Однако в первом столбце и во второй строке имеем ненулевые результаты, что означает наличие искажения. По матрице (4.11) определяем, что в этих двух ненулевых результатах участвовал символ k 3. Замена этого символа на обратное значение исправляет ошибку.

Итеративные коды обладают очень большой избыточностью и уступают кодам Хэмминга и циклическим кодам. Кроме того, очевидно, что при наличии двух искажений в строке или столбце матрицы (4.11) итеративные коды их не обнаруживают. Поэтому они имеют очень ограниченное применение.

КЛЮЧЕВЫЕ ТЕРМИНЫ И ПОНЯТИЯ




Поделиться с друзьями:


Дата добавления: 2014-01-20; Просмотров: 491; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.013 сек.