Студопедия

КАТЕГОРИИ:

АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Построение групповых кодов, исправляющих одиночные ошибки




Вырабатываемое источником информации единичное сообщение формируется в безызбыточную комбинацию, причем все комбинации должны иметь одинаковую длительность (разрядность n).

Рассмотрим пример кодирования и исправления однократных ошибок групповым кодом Хемминга для n = 4 разрядных информационных блоков. Из условия (3.3.) следует, что m = 7, код (7,4) имеет семь разрядов, из них 4 информационных.

Построим "матрицу ошибок", т.е. переберем все возможные однократные ошибки (место ошибки определим вектором с одной единицей):

.             (3.4)

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

а) а1 Å а3 Å а5 Å а7 = 0 б) а1 = а3 Å а5 Å а7  
  а2 Å а3 Å а6 Å а7 = 0   а2 = а3 Å а6 Å а7 (3.5)
  а4 Å а5 Å а6 Å а7 = 0   а4 = а5 Å а6 Å а7  

В качестве примера закодируем информационный блок 1010.

В выбранном 7 элементном блоке 1, 2, 4 разряды заняты под проверочные, а в 3, 5, 6, 7 разрядах запишем передаваемую информацию.

1 0 1   0    
а7 а6 а5 а4 а3 а2 а1

Найдем проверочные символы из уравнения (3.5,б)

а1 = а3 Å а5 Å а7 = 0 Å 1 Å1 = 0           а1 = 0

а2 = а3 Å а6 Å а7 = 0 Å 0 Å 1 = 1          а2 = 1

а4 = а5 Å а6 Å а7 = 1 Å 0 Å 1 = 0          а4 = 0

 

Теперь запишем закодированный блок

1 0 1 0 0 1 0
а7 а6 а5 а4 а3 а2 а1

число 1010010.

Допустим, что при приеме этого блока произошла ошибка в третьем разряде (т.е. мы приняли блок вида 1010110), тогда проверочные равенства (3.5,а) в приемнике дадут синдром ошибки:

а1 Å а3 Å а5 Å а7 = 0 Å 1 Å 1 Å 1 = 1

а2 Å а3 Å а6 Å а7 = 1 Å 1 Å 0 Å 1 = 1

а4 Å а5 Å а6 Å а7 = 0 Å 1 Å 0 Å 1 = 0.

Полученный синдром 011 указывает, что ошибка произошла в третьем разряде, и, значит, третий разряд надо исправить (просто инвертировать на обратный знак). Так можно обнаружить и исправить любую однократную ошибку (в любом разряде).

 

Мажоритарное декодирование групповых кодов

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

Пример. Рассмотрим код (7,4), построенный в подразделе 3.3.3. На базе системы проверочных равенств для каждого информационного символа составляем свою систему проверочных равенств (для а7 первые три уравнения получаем из уравнения (3.5,а), четвертое получаем суммирование первых трех уравнений, пятое записываем, исходя из требования нечетного количества уравнений; для а6 первое и второе уравнения получаем из уравнения (3.5,а), третье уравнение получаем из нового первого уравнения путем замены члена а7 первым уравнением из столбца для а7 и сокращением двойных элементов, четвертое уравнение получаем аналогично третьему заменой во втором новом уравнении столбца а6 элемента а7 из первого уравнения столбца а7 и т.д.):

а7 = а1Åа3Åа5; а6 = а2Åа3Åа7;
а7 = а2Åа3Åа6; а6 = а3Åа5Åа7;
а7 = а4Åа5Åа6; а6 = а1Åа2Åа5;
а7 = а1Åа2Åа3; а6 = а1Åа3Åа4;
а7 = а7; а6 = а6.

и т.д.

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

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

 










Последнее изменение этой страницы: 2018-05-10; просмотров: 189.

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