Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2006.04.09;
Скачать: [xml.tar.bz2];

Вниз

устойчивость CRC   Найти похожие ветки 

 
Defunct ©   (2006-03-14 21:03) [0]

Здравствуйте.

Делаю нехитрое устройство и вот остановился на протоколе общения с ним. Думаю применить пакетный протокол длина сообщений без учета CRC до 16 байт. Хватит ли здесь CRC8 или нужно CRC16? Что является определяющим фактором при выборе длины CRC? Сколько ошибок (неправильных бит) для устойчивой защиты допускает соответстненно CRC8 и CRC16?


 
Anatoly Podgoretsky ©   (2006-03-14 21:07) [1]

Выбирай crc32


 
TUser ©   (2006-03-14 21:21) [2]

Имхо, 8 - выше крыши.


 
Defunct ©   (2006-03-14 21:29) [3]

> Anatoly Podgoretsky ©   (14.03.06 21:07) [1]
почему именно crc32?
crc32 даст большую избыточность как в канале так и в вычислениях..
если есть обоснование или таблица какая-то где есть зависимость ложных совпадений crc от количества ошибок, то не вопрос поставлю crc32, но я пока нашел только вот такую информацию:

Положительными свойствами циклических кодов являются малая вероятность необнаружения ошибки и сравнительно небольшое число избыточных разрядов.  
"Телекоммуникационные технологии и сети"  И.П. Норенков, В.А. Трудоношин


 
tesseract ©   (2006-03-14 22:24) [4]


> Делаю нехитрое устройство и вот остановился на протоколе
> общения с ним. Думаю применить пакетный протокол длина сообщений
> без учета CRC до 16 байт. Хватит ли здесь CRC8 или нужно
> CRC16? Что является определяющим фактором при выборе длины
> CRC? Сколько ошибок (неправильных бит) для устойчивой защиты
> допускает соответстненно CRC8 и CRC16?

Большинству нехитрых устройств и чётности хватает. А уж даже LCR - за глаза.

Количество байт - не параметр при выборе контроля. Цифры в конце - это все-го лишь основание по которому считается CRC.
А на контроллере (которые большей частью 8 бит) CRC32 вычислять замудохаешься сам и замудохоешь контроллер.


 
Defunct ©   (2006-03-14 23:17) [5]

> А на контроллере (которые большей частью 8 бит) CRC32 вычислять замудохаешься сам и замудохоешь контроллер.

Выч. сложность crc32 менее чем в два раза больше чем crc16 (для 8-ми разрядных мк). Так что сложностью пугать не нужно  ;>
Четности мне не хватит, 2 неверных бита и - ложное срабатывание.

> Большинству нехитрых устройств и чётности хватает. А уж даже LCR - за глаза.
Устройство хоть и нехитрое, но ложных срабатываний делать не должно...
LCR это что? В инете нашел такое определение LCR - Lifetime Clinical Record, сомнительно, что имелось в виду это..


 
tesseract ©   (2006-03-14 23:26) [6]

линейный контроль чётности.
А у тебя девайс так часто сбои даёт ?


 
tesseract ©   (2006-03-14 23:27) [7]


> Выч. сложность crc32 менее чем в два раза больше чем crc16
> (для 8-ми разрядных мк).

я знаю 8-битники работающие с 16 разрядами. Но с 32-битными регистрами что-то не встречал.....


 
Defunct ©   (2006-03-14 23:55) [8]

> А у тебя девайс так часто сбои даёт ?
Да возможны сбои, т.к. интерфейс в нем -  программный UART...

> Но с 32-битными регистрами что-то не встречал.....
дык, а зачем 32-битные регистры для расчета crc32?


 
tesseract ©   (2006-03-15 09:32) [9]


> Да возможны сбои, т.к. интерфейс в нем -  программный UART.
> ..

а AtmegaXXX чем не нравится? Там UART/USART встроенный.
CRC32  - вроде 32-битное число :-)


 
Defunct ©   (2006-03-15 09:47) [10]

> а AtmegaXXX чем не нравится? Там UART/USART встроенный.
> CRC32  - вроде 32-битное число :-)

зы, а по существу, ну всмысле по сабжевым вопросам можете чем-то помочь? ;>

пока сделал crc8, работает в тепличных условиях что-то уж больно хорошо, ни потер пакетов, ни ложных срабатываний. А как в реальных условиях будет - не знаю.


 
ilya39 ©   (2006-03-15 10:11) [11]

Не совсем в тему, но... из личного опыта:
Ситуация была следующая: некое программное обеспечение работало с контроллером по последовательному интерфейсу. В протоколе пременялась контрольная сумма по XOR (между всеми байтами пакета). Канал связи был сильно зашумленный, и XOR с выявлением ошибок не справлялась очень часто... А вот введение CRC16 сразу решило проблему...


 
tesseract ©   (2006-03-15 10:20) [12]


> протоколе пременялась контрольная сумма по XOR (между всеми
> байтами пакета)

Последовательный XOR + дополнение до 0 = LCR :-)

Если слишком много битых пакетов - ставь RS485.


> зы, а по существу, ну всмысле по сабжевым вопросам можете
> чем-то помочь? ;>


Ссылки ? инфа ? atmel-ы подешевле ? софт ?


 
ilya39 ©   (2006-03-15 10:23) [13]


> Если слишком много битых пакетов - ставь RS485.

Он и был...


 
tesseract ©   (2006-03-15 10:27) [14]


> Он и был...

????????????
Таланты. Мы им весы подключали в холодильном цеху - 75 м. Никаких помех Только контроль UART.



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2006.04.09;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.014 c
5-1129037812
Nik0
2005-10-11 17:36
2006.04.09
Нужна маска на ячейки стринггрида.


2-1143398127
Kolan
2006-03-26 22:35
2006.04.09
Как пользоваться интерфейсом?


15-1142853447
Rentgen
2006-03-20 14:17
2006.04.09
для чего нужна ISaGRAF ?


2-1143327474
SEMYONov
2006-03-26 01:57
2006.04.09
Частота монитора


8-1130620561
MegaGaga
2005-10-30 01:16
2006.04.09
Как использовать функции для рисованмя на Canvas`е на битмапе?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский