pEtr0 писал(а):
Прочитал про циклические коды (CRC,БЧХ) но там везде используется деление а у меня его аппаратного нету
CRC (по крайней мере, в том виде, который я знаю: CRC-32, CRC-16) ошибок не исправляет -- хотя и позволяет обнаружить факт ошибки. Хотя CRC и определяется через деление, но фактически деления нет -- используется предвычисление таблицы и сдвиг-XOR.
Те задачи, с которыми я сталкивался (в коммуникации), коды с восстановлением было непрактичны. Во-первых, даже если восстановление не нужно, необходимы процессорные затраты при
посылке каждого сообщения. Во-вторых, процессорные затраты на восстановление занимали бы больше процессорного времени, чем время до прихода следующего сообщения (то есть, имелись бы более свежие данные). Выход -- поддержка в "железе". Что и происходит, например, с CD или сотовым телефоном. Впрочем, это зависит от частоты посылок, разумеется.