Смекни!
smekni.com

Расчет информационных характеристик дискретного канала (стр. 5 из 6)

Пример.

Генерация.

Пусть исходное слово 0101.

Макет ОКЧ - 0101К,

где К – контрольный бит, равно сумме по модулю 2 информационных бит исходника.

К = 0

1
0
1 = 0

ОКЧ (n; nи )

ОКЧ (5; 4) = 01010

Проверим:

S = 0

1
0
1
0 = 0 -
ошибки , то есть ошибки не существует
Количество ошибок Передано Принято Наличие ошибки
Нет ошибок 01010 01010 S = 0,
ошибки
1 ошибка 01010 11010 S = 1,
ошибка
2 ошибки 01010 11011 S = 0,
ошибки
3 ошибки 01010 10011 S = 1,
ошибка
4 ошибки 01010 10111 S = 0,
ошибки

Недостаток: ОКЧ позволяет определять наличие ошибки при нечетном их количестве и не определяет ошибку при их четном количестве.

Эффективность.

1. Минимальное количество контрольных бит.

2. Просто и удобный алгоритм генерации кода и диагностики (обнаружения ошибок).

7.1.2 Обнаруживающий код удвоения (ОКУ)

Генерация ОКУ.

Пусть исходное сообщение будет 0101.

Макет ОКУ: 0101 К1 К2 К3 К4,

где nи = 0101 и nк = К1 К2 К3 К4, то есть nи = nк.

Контрольные биты равны соответствующим информационным битам.

ОКУ (8; 4) = 01010101

Диагностика.

При диагностике суммируются по модулю 2 информационная и контрольная части ОКУ.

Во всех остальных случаях ошибка существует.

Передано 01010101.

Принято 00010101.

Эффективность ОКУ.

1. Обнаруживает любое число ошибок и приблизительно указывает адрес ошибки;

2. Простота алгоритма генерации и диагностики;

3. Недостаток – избыточность, длина контрольной части 100%.

7.1.3 Обнаруживающий код инверсии (ОКИ)

Генерация ОКИ.

Пусть исходное сообщение будет 0101.

Макет ОКИ: 0101 К1 К2 К3 К4,

где nи = 0101 и nк = К1 К2 К3 К4, то есть nи = nк.

Контрольные биты ОКИ равны инверсии соответствующих бит

информационной части исходника.

ОКУ (8; 4) = 01011010

Диагностика.

При диагностике суммируются по модулю 2 информационная и

контрольная части ОКУ.

Если S = 1 – ошибка не существует. S=0 -

ошибка

Передано 01011010.

Принято 10011011.

Эффективность ОКИ.

1. Обнаруживает любое число ошибок и приблизительно указывает адрес ошибки.

2. Простота алгоритма генерации и диагностики.

3. Недостатком является избыточность, длина контрольной части 100%.


7.1.4 Обнаруживающий код Стандартный телеграфный код (ОК СТК №3) №3

Количество единиц в двоичном коде называется весом кода.

Для всех символов, букв, цифр, спецзнаков разработаны двоичные коды весом, равным 3 ( т. е. содержат 3 единицы).

Диагностика.

Если в принятом двоичном слове количество единиц равно 3, то ошибки нет. Во всех остальных случаях ошибка есть.

Символ с ошибкой не корректируется, а удаляется.

7.2 Корректирующий систематический код Хэмминга: генерация, диагностика, коррекция, декодирование

Генерация КСКХ.

Определим количество контрольных бит и их позиции по формуле:

Пi=2j-1 => kj —> Пi

Отсюда получаем:

для K1,j=1, Пi =21-1=20=1 , K1→П1;

для K2, j =2, Пi =22-1=21=2 , K2 →П2 ;

для K3, j =3, Пi =23-1=22=4 , K3 →П4 ;

для K4, j =4, Пi =24-1=23=8 , K4 →П8 ;

Макет КСКХ

nи = 7 бит, nk = 4 бит, n = 7+4 = 11 бит.

Позиции П1 П2 П3 П4 П5 П6 П7 П8 П9 П10 П11
Макет к1 к2 1 к3 0 0 1 к4 1 0 0

Определим правила четности Хемминга.


Вычислим значения контрольных бит. Макет КСКХ обработаем правилами четности, получим уравнения с одной переменной, решив которые, найдем значения к.

ПЧ1 => к1

1
0
1
1
0 = 0. к1
1= 0 → k1 = 1

ПЧ2 => к2

1
0
1
0
0 = 0. к2
0= 0 → k2 = 0

ПЧ3 => к3

0
0
1 = 0. к3
1= 0 → k3 = 1

ПЧ4 => к4

0
0 = 0. к4
1= 0→ k4 = 1
Позиции П1 П2 П3 П4 П5 П6 П7 П8 П9 П10 П11
Макет к1 к2 1 к3 0 0 1 к4 1 0 0
КСКХ 1 0 1 1 0 0 1 1 1 0 0

КСКХ(11;7) = 10110011100

Диагностика.

Передан КСКХ: 10110011100

Принят: 10111011100

Обрабатываем КСКХ правилами четности:


ПЧ1 => 1

1
0
1
1
0 = 1 → АО=1

ПЧ2 => 0

1
0
1
0
0 = 0 → АО=0

ПЧ3 => 1

1
0
1 = 1 → АО=1

ПЧ4 => 1

1
0
0 = 0 → АО=0

АО=01012=510

АО =П5

Коррекция.

Заключается в инверсии ошибочной позиции П5:1→0

КСКХ(11;7) = 10110011100

Декодирование.

Заключается в удалении контрольных бит: 1001100

Эффективность.Контрольные биты размещаются между битами исходника. Код содержит минимальное количество контрольных бит и является плотноупакованным.

7.3 Корректирующий циклический код: генерация, диагностика, коррекция, декодирование

Корректирующий циклический код (КЦК) определяет и корректирует одну ошибку. Широко употребляется в станках с числовым программным управлением (ЧПУ).