Студопедия

КАТЕГОРИИ:


Архитектура-(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)

Корректирующих однократные ошибки




В зависимости от требуемой разрядности кода записывается единичная матрица (n n)

С помощью этой матрицы можно записать все комбинации n-разрядного оптимального кода.

Чтобы образовать на основании этой матрицы код, корректирующий однократную ошибку, необходимо расширить ее до m разрядов, т. е. (n n) → (n m). Для этого справа приписывается матрица контрольных разрядов, содержащая k столбцов (m = n + k).

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

К матрице А предъявляются следующие требования:

  1. Поскольку будет синтезироваться избыточный равномерный систематический код, позволяющий обнаружить и скорректировать однократную ошибку, то расстояние между кодовыми комбинациями должно быть: d 3. Поскольку единичная матрица расширилась на k разрядов, то каждая строка дополнительно приписываемой части матрицы должна иметь не менее чем (d - 1) единиц, поскольку уже одну единицу содержит каждая строка единичной матрицы.
  2. Различие между строками в приписываемой матрице должно быть не менее чем в (d - 2) разрядах, т.к. различие в единичной матрице в двух строках уже есть.

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

Проверочная матрица строится следующим образом: к единичной матрице размером k k слева приписывается матрица из n столбцов и k строк (n k). При этом строка приписываемой матрицы является столбцом дополнительной матрицы из матрицы A.

К матрице П предъявляется следующее требование.

Сумма единиц по модулю 2 любой строки проверочной матрицы должна быть четным числом (или во всех строках нечетная), т.к. сумма по модулю 2 равна нулю при четности. Это является условием обнаружения и локализации ошибки в любой кодовой комбинации. Локализация ошибки основана на индивидуальной кодовой комбинации (опознавателях), и эта кодовая комбинация представляется в виде f0 f1 f2 … fk-1 (количество контрольных разрядов)

Пример: требуется построить систематический код, позволяющий обнаружить ошибочное отображение любого числа от 0 до 9 на семисегментном индикаторе и исправить его.

Согласно условию задачи количество отображенных чисел (сообщений) М = 10. Для представления этих чисел n = 4, k = 3. Составим производящую матрицу.

Выполняется условие: не менее (d-1) единиц. На основании этой матрицы можно построить 16 кодовых комбинаций с разрядностью . Составим 10 кодовых комбинаций, которые будут необходимы для индикации требующихся цифр. Пусть это будут следующие комбинации:

Первые четыре кодовые комбинации – это строки матрицы А. Последние 6 кодовых комбинаций являются суммами строк по модулю 2, соответственно: , , , , , .

Строим проверочную матрицу

Проверочная матрица показывает, что k0 контролирует 1,2,3 разряды, k1 – 0,2,3 разряды, k2 – 0,1,3 разряды.

На основании проверочной матрицы можно составить уравнения кодов-опознавателей местоположения ошибки:

(*)

Последовательность f0 f1 f2 – является кодом ошибочной или безошибочной комбинации

Если кодовая комбинация не содержит ошибок, то согласно (*) все позиции будут содержать нули, следовательно, получится код f0 f1 f2 = 0 0 0.

Рассмотрим подчеркнутую кодовую комбинацию 1 0 1 0 1 0 1 и начнем последовательно вводить ошибки.

Вводим ошибку в разряд a0 и получаем код опознавателя ошибки в этом разряде:

, f0 f1 f2 = 0 1 1.

Затем вводим ошибку в разряд а1 и получаем код опознавателя ошибки в этом разряде; затем в вводим ошибку а2 и получаем код опознавателя ошибки в этом разряде и т.д.

Например, ошибка в разряде а3:

, f0 f1 f2 = 1 1 1

В итоге получаем таблицу кодов опознавателей ошибок:

Проверим получившийся результат. Пусть передали комбинацию 1000011, а получили 100 1 011. Определяем код опознавателя:

, f0 f1 f2 = 1 1 1 следовательно, ошибка в разряде а3 .

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




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


Дата добавления: 2015-07-02; Просмотров: 373; Нарушение авторских прав?; Мы поможем в написании вашей работы!


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



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




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