Синдромный метод декодирования

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

Метод проверки четности основан на использовании проверочных равенств (2.34).

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

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

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

Вектор ошибки представляет собой n-значное двоичное число, содержащее 1 в разряде, где есть ошибка, и 0 во всех остальных разрядах. В качестве примера найдем синдром ошибки в 3-м разряде:

         
         
                     
         

Итак, синдромом ошибки в 3-м разряде является комбинация 110. Действуя аналогично, можно найти синдромы ошибок во всех остальных разрядах. Характерным является то, что синдром ошибки i-го разряда совпадает с i-м столбцом контрольной матрицы, поэтому в запоминающем устройстве декодера достаточно хранить только контрольную матрицу.

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

.

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

Пример 1.

Из канала связи поступила комбинация . Контрольная матрица имеет вид:

(2.36)

Определить, какое число передавалось.

Решение.

1. Определяем синдром:

         
         
                     
         

Итак, синдром ошибки 000, значит, передача прошла без искажений.

2. По матрице определяем расположение контрольных разрядов и отбрасываем их:

               
          контрольные разряды, т.к. соответствуют столбцам с одной 1.

3. Находим десятичный эквивалент:

      02 = 1410  
информационная часть принятого КВ.

Пример 2.

Из канала связи поступила комбинация . Контрольная матрица та же, что и в примере 1. Определить, какое число передавалось.

Решение.

1. Определяем синдром:

         
         
                     
         

Итак, синдром ошибки 011. Не нулевой, следовательно, есть ошибка.

2. По контрольной матрице выясняем, что синдром совпадает со вторым столбцом, значит ошибочным является 2-ой разряд принятого КВ.

3. Инвертируем искаженный разряд:

.

4. Отбрасываем контрольные символы и переводим информационную часть в десятичное число:

.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: