Сообщение от WXXXW1
|
получается, что входит 5 бит, а выходит 10
|
Давайте по порядку. Есть данные, пусть они будут 5 разрядов. Необходимо их закодировать так что бы можно было:
1) найти и исправить любую одиночную ошибку;
2) найти ситуацию когда имеет место 2 ошибки.
Тогда проходя через кодер (Хемминга) на выходе будем иметь 5 информационных и 5 контрольных разрядов. Причем число контрольных разрядов останется неизменным пока длина информации не превысит 11 бит.
Теперь (для Ваших 5 инф. бит и 5 контрольных) проходя через канал связи (без разницы последовательный или параллельный) 10-битный код поступает на декодер, в котором новь происходит кодирование информационных бит и сравнение контрольных кодов посчитанного с принятым. В случае совпадения, код не меняется и считается верным. При наличии разницы, либо правится код (1 ошибка) или выдается сигнал
о групповой ошибке. На выходе декодера может быть как вся шина (10 бит) так и только информационная часть (5 бит).