Какой код исправления ошибок использовать для коротких сообщений битового потока? (Рид Солом тестировался на данный момеC#

Место общения программистов C#
Ответить
Anonymous
 Какой код исправления ошибок использовать для коротких сообщений битового потока? (Рид Солом тестировался на данный моме

Сообщение Anonymous »

Я отправляю битовые потоки (сообщения) данных длиной 32 бита.
Я хочу добавить к этим сообщениям код исправления ошибок. Например, 16 бит «четности».
В качестве первого подхода я использую RS(6,4) вместо GF(256). Таким образом, данные обрабатываются как 4 байта, а два байта кода исправления ошибок добавлен. Насколько я понимаю, для этой конфигурации RS один байт всего 6-байтового сообщения может быть изменен (испорчен), и алгоритм декодирования RS все равно сможет восстановить исходное сообщение. (Если два байта повреждены, декодирование RS будет сигнализировать об этой неисправимой ошибке).
Таким образом, теоретически все 8 бит одного байта могут быть изменены, и сообщение все равно будет восстановлено.Но природа возможных ошибок в каждом сценарии заключается в том, что каждый бит может быть изменен с некоторой вероятностью.
Таким образом, использование RS(6,4)/GF(256) не восстановит сообщение, если будут изменены только два бита. быть изменены в некоторых случайных местах, а не внутри одного и того же байта.
Я хочу восстановить, если ЛЮБЫЕ 5 бит будут изменены.
ОБНОВЛЕНИЕ
Кажется, Рид Соломон здесь не подходит, поэтому:
Какой ECC использовать?
Сколько бит четности требуется?
  • Размер данных 32бита. Только одно сообщение будет отправляться
    снова и снова.
  • Имеется до 15% (можно сравнить с 10%)
    вероятность того, что каждый бит перевернут.
  • Я хочу иметь возможность надежно
    декодировать 32-битные данные как можно скорее. Если первый пакет
    (32-битные данные + X-битная четность) поврежден без возможности восстановления, получатель
    ждет следующего пакета (точно такие же данные + четность) и повторяет попытку.
    Но в большинстве случаев случаев получения первого сообщения должно быть достаточно.
  • Декодирование может потребовать больших вычислительных ресурсов.


Подробнее здесь: https://stackoverflow.com/questions/791 ... solom-test
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»