Коды с обнаружением ошибок
Код с проверкой на четность. Такой код образуется путем добавления к передаваемой комбинации, состоящей из m информационных символов, одного контрольного символа k (0 или 1) так, чтобы общее число единиц в передаваемой комбинации было четным.
m | k | n |
Если получено слово с нечётным количеством единичек, то при передаче произошла ошибка.
Например, для кода с m = 5 и вероятностью ошибки p = 10-2 коэффициент обнаружения составит Kобн = 0,9. То есть обнаруживаем 90 % ошибок, при этом избыточность будет составлять L = 0,17 (17 %).
Код с постоянным весом.Этот код содержит постоянное число единиц и нулей. Для примера приведены коды с двумя единицами из пяти и тремя единицами из семи.
N = C52 = 10 | N = C73 = 35 |
Число кодовых комбинаций составит:
Этот код позволяет обнаруживать любые одиночные ошибки и часть многократных ошибок. Не обнаруживаются этим кодом только ошибки смещения, когда одновременно одна единица переходит в ноль и один ноль переходит в единицу, два ноля и две единицы меняются на обратные символы и т.д.
Для кода С73 при p = 10-2 коэффициент обнаружения составит Kобн = 0,985, избыточность составляет L = 27%.
Корреляционный код (Код с удвоением).Элементы данного кода заменяются двумя символами, единица «1» преобразуется в 10, а ноль «0» в 01.
Вместо комбинации 1010011 передается 10011001011010. Ошибка обнаруживается в том случае, если в парных элементах будут одинаковые символы 00 или 11 (вместо 01 и 10).
Например, при m = 5, n = 10 и вероятности ошибки p = 10-2, Kобн = 0,995. Но при этом избыточность будет составлять 50%.
Инверсный код.К исходной комбинации добавляется такая же комбинация по длине, т. е. число символов удваивается. Если в исходной комбинации четное число единиц, то добавляемая комбинация повторяет исходную комбинацию, если нечетное,то добавляемая комбинация является инверсной по отношению к исходной.
m | k | n |
Прием инверсного кода осуществляется в два этапа. На первом этапе суммируются единицы в первой основной группе символов. Если число единиц четное, то контрольные символы принимаются без изменения, если нечетное, то контрольные символы инвертируются. На втором этапе контрольные символы суммируются с информационными символами по модулю два. Нулевая сумма говорит об отсутствии ошибок. При ненулевой сумме, принятая комбинация бракуется. Покажем суммирование для принятых комбинаций без ошибок (1, 3) и с ошибками (2, 4):
Данный код обнаруживает практически любые ошибки, кроме редких ошибок смещения, которые одновременно происходят как среди информационных символов, так и среди соответствующих контрольных.
При m = 5, n = 10 и p = 10-2, Kобн = 1 · 10-5.
Дата добавления: 2017-10-04; просмотров: 1737;