Проверочная матрица строится следующим образом. Вначале строитсяRkrT . Для рассматриваемого примера
1 |
1 |
1 |
0 |
RT 0 |
|
1 |
1 |
1 . |
|
|
|
(2.3.26) |
|||
43 |
|
|
|
|
|
|
|
|
|
|
|
СибАДИ |
|||||||||||
|
|
|
1 |
1 |
0 |
1 |
|
|
|
|
|
К полученной матрице справа приписывается единичная квад- |
|||||||||||
ратная матр ца Irr. |
RT |
|
|
|
|
|
|
|
|
||
Так м образом, H(7,4) |
|
I |
33 |
. |
|
|
|
|
|
||
|
|
|
43 |
|
|
|
|
|
|
|
|
В данном пр мере |
|
|
|
|
|
|
|
|
|
||
H(7,4) |
1 |
|
1 |
1 |
0 |
1 |
0 |
0 |
. |
(2.3.27) |
|
0 |
1 |
1 |
1 |
0 |
1 |
0 |
|||||
|
1 |
|
1 |
0 |
1 |
0 |
0 |
1 |
|
|
|
Декодирование осуществляется путем перемножения кодовой комбинации С на транспонированную матрицу НТ(7,4) и вычислением указателя ошибки (синдрома S).
|
|
|
|
1 |
0 |
1 |
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
1 |
1 |
1 |
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
1 |
1 |
0 |
|
|
|
|
|
|
|
|
|
|
|
|||||||
S |
HT (7,4) |
|
|
|
1101001 |
|
|
|
|
|
0 |
1 |
1 |
|
|
|
|
|
0 0 0 |
|
|
|
. |
(2.3.28) |
|
|
|
|
|
|
|
|
|||||||||||||||||
|
|
|
|
1 |
0 |
0 |
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
0 |
1 |
0 |
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
0 |
0 |
1 |
|
|
|
|
|
|
|
|
|
|
|
|||||||
Вычисленный синдром S=000 указывает на то, что кодовое слово С принято без ошибки.
Предположим, что принятое кодовое слово оказалось искажен-
ным:
С*=0101001. (2.3.29)
61
Тогда
|
|
1 |
0 |
1 |
|
|
|
|
|
|
|
|
|
||||||||
|
|
1 |
1 |
1 |
|
|
|
|
|
|
|
|
|
||||||||
|
|
1 |
1 |
0 |
|
|
|
|
|
|
|
|
|
||||||||
S С* HT |
(7,4) |
|
|
|
0101001 |
|
|
|
|
0 |
1 |
1 |
|
|
|
|
1 0 1 |
|
|
|
. (2.3.30) |
|
|
|
|
|
|
|
|
||||||||||||||
Сиб |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
А |
ДИ |
||||||||||||||||||
|
1 |
0 |
0 |
|
|
|
|
|
|
|
|
|
|||||||||
|
0 |
1 |
0 |
|
|
|
|
|
|
|
|
|
|||||||||
|
0 |
0 |
1 |
|
|
|
|
|
|
|
|
|
|||||||||
Выч сленный с ндром S=101 указывает на наличие ошибки и совпадает с первым стол цом матрицы Н(7,4), что позволяет сформировать коррект рующее кодовое слово (вектор) 1000000, содержащее единицу только в одном разряде, который принят с ошибкой. Это кодовое слово складывается по модулю 2 с принятой кодовой комбинацией. В результате появляется исправленная кодовая комбинация С:
0101001 |
|
|
1000000 |
|
|
1101001. |
|
|
Далее информационное слово I получается из кодового слова С |
||
путем отбрасывания контрольных разрядов: |
|
|
С 1101001 I |
1101. |
(2.3.31) |
Так можно обнаружить и исправить любую однократную ошибку (в любом разряде). Две или более ошибки превышают возможности корректирующего кода Хемминга, декодер будет ошибаться.
В коде Хемминга (8,4,4) с дополнительной проверкой на четность формирование 7-разрядной кодовой комбинации аналогично формированию кода Хемминга (7,4,3). Дополнительный восьмой разряд вычисляется путем проверки 7-разрядной кодовой комбинации на четность: 0 добавляется в случае, если количество единиц в комбинации четное, 1 – если количество единиц нечетное.
Для рассмотренного выше примера кодовая комбинация 1101001 дополняется битом 0, в результате чего формируется кодовая комбинация 11010010.
62
Матрица Н(8,4,4) будет иметь вид
|
|
|
|
1 |
1 |
|
1 |
0 |
1 |
0 |
|
0 |
0 |
|
|
|
|
|
H(8,4,4) |
|
0 |
1 |
1 |
1 |
0 |
1 |
|
0 |
0 |
|
. |
(2.3.32) |
|||
|
|
1 |
1 |
|
0 |
1 |
0 |
0 |
|
1 |
0 |
|
|||||
|
|
|
|
|
|
|
|
|
|||||||||
СибА1 1 0Д1 И |
|||||||||||||||||
|
1 |
1 |
|
1 |
1 |
1 |
1 |
|
1 |
1 |
|
|
|
||||
Декод рован е осуществляется путем перемножения кодовой |
|||||||||||||||||
комбинац |
на транспонированную матрицу |
НТ(8,4,4). Синдром |
|||||||||||||||
ошибки |
|
|
|
|
|
|
1 |
0 |
1 |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
1 |
1 |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
1 |
0 |
1 |
|
|
|
|
|
|
|
|
S |
11010010 |
|
|
0 |
1 |
1 |
1 |
|
|
|
|
0000 |
. |
(2.3.33) |
||
|
|
|
|
|
|
|
1 |
0 |
0 |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
1 |
0 |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
0 |
1 |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
0 |
0 |
1 |
|
|
|
|
|
|
|
Вычисленный синдром S=0000 указывает на отсутствие ошибок в принятой кодовой комбинации: С 1101001 I 1101.
Предположим далее, что кодовая комбинация принята с однократной ошибкой (в одном разряде)
*=01010010.
Тогда
|
|
|
1 |
0 |
1 |
1 |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
1 |
1 |
1 |
1 |
|
|
|
|
|
|
|
|
|
|
||||
S |
|
01010010 |
|
|
|
|
0 |
1 |
1 |
1 |
|
|
|
|
1011 |
|
|
|
. |
(2.3.34) |
|
|
|
|
|
|
|
||||||||||||||
|
|
|
|
1 |
0 |
0 |
1 |
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
0 |
1 |
0 |
1 |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
0 |
0 |
1 |
1 |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
0 |
0 |
0 |
1 |
|
|
|
|
|
|
|
|
|
|
||||
63
Вычисленный синдром S=1011 указывает на наличие ошибки и совпадает с первым (слева) столбцом матрицы Н(8,4,4), что позволяет сформировать корректирующее кодовое слово (вектор) 10000000, содержащее единицу только в одном разряде, который принят с ошибкой. Это кодовое слово складывается по модулю 2 с принятой
кодовой комбинацией. В результате появляется исправленная кодовая |
|||||||||||||||||||||||||
СибАДИ |
|||||||||||||||||||||||||
комбинация |
С: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
01010010 |
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
|
|
|
|
|
10000000 |
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
11010010 |
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
Далее |
нформац онное слово I получается из кодового слова С |
||||||||||||||||||||||||
путем отбрасыван я контрольных разрядов: |
|
||||||||||||||||||||||||
|
|
|
|
|
С 110100 |
10 I 1101. |
(2.3.35) |
||||||||||||||||||
Теперь будем сч тать, что кодовая комбинация содержит дву- |
|||||||||||||||||||||||||
кратную ошибку (в двух разрядах) |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
Тогда |
|
|
|
|
**=01010000. |
(2.3.36) |
|||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
1 |
0 |
1 |
1 |
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
|
|
|
1 |
1 |
1 |
1 |
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
1 |
1 |
0 |
1 |
|
|
|
|
|
|
|
|
|
|
|||||||||
|
S |
|
|
|
01010000 |
|
|
|
|
|
0 |
1 |
1 |
1 |
|
|
|
|
1000 |
|
|
|
. |
(2.3.37) |
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||
|
|
|
|
|
|
|
|
1 |
0 |
0 |
1 |
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
0 |
1 |
0 |
1 |
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
0 |
0 |
1 |
1 |
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
0 |
0 |
0 |
1 |
|
|
|
|
|
|
|
|
|
|
|||||||||
Вычисленный синдром S=1000 указывает на наличие двукратной ошибки, так как первые три символа синдрома указывают на наличие ошибки, а последний символ – на наличие ошибки четной кратности, что позволяет сделать вывод о наличии неисправляемой ошибки.
64
Коды Хемминга применяют, когда ошибки в передаваемых словах могут возникать вследствие независимых искажений. Для случаев, когда ошибки возникают вследствие искажений группы рядом стоящих разрядов, разработаны коды, исправляющие одиночные пачки ошибок, и коды, исправляющие более одной пачки ошибок.
Для обнаружения ошибок в процессе вычислений на ЭВМ раз- СибАДИработаны так называемые арифметические коды.
Одн м з этапов преобразования сообщения в сигнал для его передачи в канал связи является модуляция [5].
Модуляц я – зменение какого-либо параметра переносчика сигнала в соответств с функцией, отображающей сообщение. Несущим с гналом может ыть постоянный ток (проводная телеграфия); переменный ток н зкой или высокой частоты (телефония, тональная телеграф я, фототелеграф, телемеханика); высокочастотные импульсы (рад орелейная связь). Модулируемые параметры называются информативными. В качестве них могут использоваться: амплитуда, фаза, частота и др. Используются следующие типы модуляции: гармоническая, импульсная, дискретная и их разновидности.
Демодуляция – отделение полезного (модулирующего) сигнала от сигнала несущей частоты. Модуляция и демодуляция осуществляются с помощью устройств, называемых модулятором и демодулятором.
Модем – устройство, преобразующее код в сигнал (модулятор) сигнал в код (демодулятор), используемое для передачи данных по каналам связи.
Манипуляция – модуляция, при которой модулируемый параметр может принимать фиксированное число дискретных значений.
Гармоническая модуляция. Гармоническая модуляция является непрерывной. При гармонической модуляции в качестве несущей используется сигнал
f (t) U0 cos( 0t ). |
(2.4.1) |
Она чаще всего используется при передаче двоичных кодов и называется манипуляцией. Используются различные виды гармонической модуляции (рис. 2.4.1): амплитудная модуляция (АМ), фазовая модуляция (ФМ), частотная модуляция (ЧМ).
65