Статус документа
Статус документа

ГОСТ Р МЭК 61142-2001 Обмен данными при считывании показаний счетчиков, тарификации и управлении нагрузкой. Обмен данными по локальной шине

ПРИЛОЖЕНИЕ А
(справочное)

     
Циклический избыточный код CRC 16


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

Структуры содержат максимум 128 байтов, и прогнозируемая доля ошибок оказывается менее 10. Благодаря своему полиноминальному генератору (CRC 16), 16-битный CRC может обнаружить одиночные, двойные и тройные ошибки в структуре со 128 байтами и все ошибки в 16-битных пакетах. 8-битный CRC не был бы так эффективен для обнаружения ошибок в структурах размера, рассматриваемого в этом протоколе. Вероятность необнаружения пакетных ошибок длины (16) равна =2.

Используемый физический канал позволяет ожидать вероятности появления ошибки порядка 10(один неправильный бит на 10 переданных). В этом случае при максимальной длине структуры 128 байтов (128х8 = 1024 бита) вычисления показывают, что приблизительно 10000 структур можно передавать без ошибки. Вероятность ошибки 10 дает в среднем 100 безошибочных 128-байтных структур.

Вообще, в противоположном варианте протокола, определенного в настоящем стандарте, структуры достаточно редко будут достигать максимальной длины в 128 байтов; поэтому при той же вероятности ошибки эффективность передачи будет больше, чем упомянуто выше.

Используемый 16-позиционный полиномиальный генератор кода (CRC 16) представляет собой

(по модулю 2).


Реализация

Передача происходит следующим образом.


В представленном CRC "исключающее ИЛИ" (XOR) относится к слову А0 01, соответствующему (MSB/LSB) коэффициентам полиноминального генератора (кроме наибольшего значимого бита).

Выборочные результаты


Cooбщение


CRC

01

20

01

80(Н)


00

А0(Н)

80

А0

01

80(Н)

А0

01(Н)