Читайте также: |
|
Процесс устранения ошибок предполагает решение двух смежных задач: обнаружение ошибки и определение места ее возникновения. После решения этих двух задач для исправления ошибки достаточно инвертировать значение ошибочного бита.
В зависимости от каналов связи и их характеристик проблеме устранения ошибок придают различное значение. Например, при использовании спутниковых каналов, для которых типичны большие задержки, методики коррекции ошибок становятся довольно острой необходимостью.
К таким методикам относится использование избыточных «кодов обнаружения и исправления ошибок» (Error Detection and Correction Code — EDCC). Примерами таких кодов может быть код Хемминга или код Рида-Соломона.
Код Хемминга основан на использовании контрольных битов, которые добавляются для каждого заданного набора бит исходной последовательности.
Предположим, что исходная последовательность данных имеет длину в m бит. Добавление контрольных к бит позволяет получить битовое слово длиною n = т + к, которое и будет передаваться по сети.
Контрольными битами являются биты, номера которых являются степенями 2, т. е. это биты с номерами 1, 2, 4, 8, 16 и т. д. Все остальные биты последовательности являются битами исходного сообщения, которое необходимо передать.
Каждый контрольный бит хранит значения четности группы битов, включающей и его. При этом один бит может относиться к разным группам. Таким образом, если представить номер бита данных, например s, по степеням 2, можно определить номера контрольных битов, которые отвечают за достоверность значения этого бита s.
Например, бит под номером 13 будет контролироваться битами 1, 4 и 8 (13 = 1 + 4 + 8), а бит под номером 21 — битами 1, 4 и 16 (21 = 1 + 4 + 16).
При получении сообщения производится проверка четности для контрольных битов. При этом порядковые номера битов с нарушением четности суммируются, в результате получается порядковый номер бита данных, содержащего ошибку.
Таким образом, код Хемминга позволяет обнаруживать и исправлять лишь единичные ошибки, однако существуют модификации данного кода, способные справиться с ошибками, повредившими более одного разряда исходной последовательности данных подряд.
В наземных каналах связи, где вероятность возникновения ошибки невелика, а передача данных происходит достаточно быстро, при обнаружении ошибки обычно производится повторная пересылка пакета, содержащего дефект
Контрольные вопросы:
1. Какие основные методы обеспечивают надежность передачи данных?
2. В чем суть основных методов, обеспечивающих надежность передачи данных?
3. Что такое контрольная сумма? Суть метода?
4. В чем заключается алгоритм контроля по четности?
5. Какой недостаток у алгоритма контроля по четности? Как он устраняется?
6. Какая основная идея алгоритма СRC?
7. Какие задачи решает процесс устранения ошибок?
8. В чем заключается принцип работы кода Хемминга?
Дата добавления: 2015-11-30; просмотров: 324 | Нарушение авторских прав