Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Микроконтроллеры и их применение»

В зависимости от приложения нужно подбирать разную контрольную сумму (+)

Отправлено CD_Eater 14 февраля 2007 г. 20:42
В ответ на: апсалютно всё равно как, лишь бы она менялась при изменении контролируемой информации... И чем больше таких изменений она способна "обнаружить", тем лучше (и тем длинее сама) отправлено basilmak 14 февраля 2007 г. 17:51

Любая контр.сумма вероятнее всего изменится при изменении данных.
Но в зависимости от вида наиболее вероятных ошибок применяют ту к.с., которая максимально отлавливает нужный вид ошибок (в ущерб обнаружению остальных видов ошибок). Например, всевозможные CRC (циклические к.с.) заточены под 100%-ый отлов ошибок в нескольких подряд идущих битах (если ошибка локализована в 16 подряд идущих битах, то CRC16 её 100%-но отловит). Это наиболее подходящая сумма для последовательных каналов связи, где синхронизация никогда не теряется (напр., RS-232 тактируется с обоих сторон, поэтому теряются только биты, но не сихронизация). Популярность циклических сумм дошла до того, что народ применяет её везде где попало, не задумываясь о её назначении. Например, целостность файлов проверяется CRC32, хотя в этом случае существенные затраты на её вычисление ничем не оправданы (по сравнению с более простыми видами контрольных сумм), всё-таки для обычных 32-разрядных процессоров вычисление циклических сумм накладно, для них оптимальнее работа с 32-битными словами, а не битами.

При некоторых способах кодирования изменение одного бита приводит к изменению длины последовательности со сдвигом хвоста пакета (пример - битстаффинг-нутый УСБ-пакет), в этом случае эффективность CRC для отлова таких ошибок "ниже среднего". Однако применяется там именно циклическая к.с., наверное потому что лучше ничего не придумали, хотя можно было бы с таким же успехом использовать абсолютно любую к.с. (напр., более быстрый при программной реализации способ add-xor всех байтов пакета) :( Хотя возможно, для аппаратной реализации CRC удобна простотой при побитовой обработке (кремния требует меньше).

Составить ответ | Вернуться на конференцию

Ответы


Отправка ответа
Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 

если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
введите число 12:

Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru