stringtranslate.com

Код повторения

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

Из-за плохой эффективности исправления ошибок в сочетании с низкой скоростью кода (соотношение между полезными информационными символами и фактически передаваемыми символами) в большинстве случаев предпочтительны другие коды исправления ошибок . Главная привлекательность кода повторения — простота реализации.

Параметры кода

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

Если длина двоичного кода повторения нечетна, то это идеальный код . [1] Двоичный код повторения длины n эквивалентен ( n ,1) -коду Хэмминга .

Пример

Рассмотрим двоичный код повторения длиной 3. Пользователь хочет передать биты информации 101. Затем кодирование сопоставляет каждый бит либо с кодовым словом, состоящим из всех единиц, либо со всеми нулями, поэтому мы получаем 111 000 111, которое будет передано.

Допустим, три ошибки повреждают переданные биты, а полученная последовательность равна 111 010 100. Декодирование обычно осуществляется простым решением большинства для каждого кодового слова. Это привело нас к 100тому, как декодировались информационные биты, поскольку в первом и втором кодовом слове произошло менее двух ошибок, поэтому большинство битов верны. Но в третьем кодовом слове два бита повреждены, в результате чего получается ошибочный информационный бит, поскольку две ошибки лежат выше возможности исправления ошибок.

Приложения

Несмотря на их низкую производительность в качестве автономных кодов, использование в турбокодах итеративно декодируемых схем каскадного кодирования , таких как коды повторения-накопления (RA) и коды накопления-повторения-накопления (ARA), обеспечивает удивительно хорошую производительность исправления ошибок.

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

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

Смотрите также

Рекомендации

  1. ^ Боссерт, Мартин (1999). Канальное кодирование для телекоммуникаций . Уайли. ISBN 9780471982777.