Помехоустойчивое кодирование (т5-1)
Адрес |
http://90.189.213.191:4422/temp/nkpsis/tema_tec_tc23/lek12/lek12.doc инд: 2-124-6-12 |
Помехоустойчивое
кодирование — кодирование, предназначенное для передачи данных по каналам с
помехами, обеспечивающее исправление возможных ошибок передачи вследствие
помех.
Для обнаружения ошибок используют коды
обнаружения ошибок, для исправления — помехоустойчивые коды.
Зная частоту дискретизации и разрядность двоичного кода k,
определяем скорость передачи цифровой информации [т-4-2]
Код Хемминга
Пример передачи кода с кодированием по коду Хемминга
Передаем текст shab
Код АСSII 73 68 61 62
Бинарный код (1) 0100-0011 0110- 1000 (2) 0110-0001 0110-0010
1 16 1 16
Сформирована передача 16 бит данных для (1) и (2) групп
Добавляем в позиции 1 2 4 8 16 - контрольные биты кода Хеминга. Их в начале устанавливаем = 0
Бинарный код (1) 0100-0011 0110- 1000 (2) 0110-0001 0110-0010
Контрольный код 00-0------0 ------
----0 00-0------0 ----------0
Кодируем по таблице для 15 бит передачи, и вычисляем биты
контрольного кода.
KK(1)=
[0100-0011
0110- 1000]= [0001 0110] = (0+0+0+1+
0+1+1+0) mod2=1
( подчеркнутые
удаляем) (остались) (суммируем и остаток в кк-1)
KK(2)=
[0100-0011 0110-
1000] = [1001 1100] =(1+0+0+1+1+1+0+0)mod2=0
( подчеркнутые
удаляем) (остались) (суммируем и остаток в кк-2)
KK(4)=
[0100-0011 0110- 1000] =
[0101 0110]= (0+1+0+1+0+1+1+0) mod2=0
( подчеркнутые удаляем) (остались)
(суммируем и остаток в кк-4)
KK(8)= [0100-0011 0110- 1000] = [1011 0100]= ( 1+0+1+1+
0+1+0+0) =mod2=0
( подчеркнутые
удаляем) (остались) (суммируем и остаток в кк-8)
KK(16)= [0100-0011 0110- 1000] = 0 =mod2= 0
( остается только 16 бит и просто получаем кк-16)
Передаваемый код с контрольным кодом (1) 0100-0011
0110- 1000
Контрольный код 10--0-----0 ------ ----0
Выходной код, КК в
скобках = (1)0(0)10(0)0-001(0)1 0110- 100(0)0
Контрольные вопросы по
теме «Помехоустойчивое кодирование» ответы устные и письменные.
Оценка на 3= рассказать о кодировании, назвать цели кодирования. На основе
приведенного примера, отобразить кодирование в коде Хемминга для своего варианта передачи двух байт кода К1,К2:
К1
= Nпо списку + 40(ДЕС), К2= Nпо_списку+70(ДЕС)
Например, для N=19 K1=19+40=59(ДЕС) = 3B(hex) = 0011-1011(bin)
K2=19+70=89(дес)=59(hex)=0101-1001(bin)
Контрольный код передачи 16 бит = 0011-1011- 0101-1001
Оценка на 4= Дополнительно отобразить кодирование кодом Хемминга для 4х байт передачи.
Выбрать четыре байта по первым буквам своей фамилии в коде acsii.
Оценка на 5= Дополнительно, отобразить кодирование и декодирование кодом Хемминга своей фамилии
используя программы оn-line сервиса.
Внести ошибку одного бита и показать исправляющую способность для выбранного
количества передаваемых байт.
Подготовил Шабронов А.А. тс +7-913-905-8839 shabronov@ngs.ru Ред.2019-3-24