Какое расстояние Hamming и как я могу определить его для схемы CRC?

StackOverflow https://stackoverflow.com/questions/3800788

  •  25-09-2019
  •  | 
  •  

Вопрос

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

Code Word 1 = 10110 

Отправитель отправляет код 1, и введена ошибка, и приемник получает 10100. Итак, вы видите, что 4-й бит был поврежден. Это приведет к удалению удара 1, потому что:

Valid Code Word: 10110
Error Code Word: 10100
                 -----
XOR              00010

XOR 2-х строк приводит к одному 1, поэтому расстояние Hamming 1. Я понимаю это до этого момента. Но тогда проф спрашивает:

  • Каково расстояние гамминга стандарта CRC-16-битного протокола?
  • Какое расстояние гамминга стандартного протокола CRC-32-битных?

Я немного запутался и был задален, если кто-то может помочь. Спасибо.

Это было полезно?

Решение

Вы, вероятно, выясняли его на сегодняшний день, но то, что он просил, скорее всего, минимальное количество битовых ошибок, что код CRC не обнаружит. Ответ зависит от ширины, полинома и длины сообщения. Например, самые известные многочлены CRC-32 (0x1EDC6F41) имеют расстояние отбивки 6 или лучше для сообщений до 5 275 битов (Castaglioni, Bräuer, Herrmann: оптимизация циклических избыточных кодов Chickence с 24 и 32 битами четности, IEEE Транзакции по связям с коммуникациями, Vol 41 № 6, июнь 1993 г.), что означает, что он гарантирует выявление до 5 перебросов в одном сообщении 5 275 битов или меньше.

BTW, кодовое слово включает в себя контрольную сумму, поэтому ваш пример неверный.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top