Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ТМ / Теория / TM_Lectures.pdf
Скачиваний:
170
Добавлен:
24.02.2016
Размер:
6.53 Mб
Скачать

3.5.Помехоустойчивость кодов с обнаружением ошибок

Вкодах с обнаружением ошибок (с защитой) требуется обычно определить условную вероятность возникновения необнаруженной ошибки Pi н.ош и

условную вероятность возникновения обнаруженной ошибки Pi o.ош при пере-

даче конкретной i–й комбинации или средние вероятности этих ошибок по всем кодовым комбинациям Pн.ош и Po.ош . Обнаруживать ошибки позволяют

избыточные коды, в которых все возможные комбинации разделены на разрешённые и запрещённые. Условная вероятность появления обнаруженной ошибки – это вероятность трансформации переданной i –й комбинации в одну из запрещённых комбинаций. Если перенумеровать разрешённые кодовые комбинации через 1,2,...,m, а запрещённые – через (m +1), (m + 2),…, N , то условная вероятность возникновения обнаруженной ошибки равна:

N

 

Pi о.ош = Pij .

(3.28)

j =m+1

 

Условная вероятность возникновения необнаруженной ошибки равна

N

Pi н.ош = Pij . (3.29)

j =1(j i)

Вероятности правильного приёма Рпр, возникновения обнаруженной ошибки Ро.ош и возникновения необнаруженной ошибки Рн.ош образуют полную группу событий, т.е.

Pправ + Pо.ош + Pн.ош =1.

(3.30)

Для оценки помехоустойчивости достаточно знать хотя бы значение двух вероятностей, так как третья находится на основе теоремы о полной группе событий.

Симметричный канал является частным случаем несимметричного канала, а поэтому принципиально расчёт трансформации для симметричного канала можно производить так же, как и для несимметричного, по выражениям (3.28) и (3.29). Однако для симметричного канала имеются более простые методы расчёта трансформации. Вводится понятие вектора ошибки и определяется вероятность его возникновения. Например, переданная комбинация 01010 была искажена и принята как 10110. Складывая обе комбинации по модулю 2, мы получаем вектор ошибки 11100. Отсутствию ошибок соответствует вектор ошибки, состоящий из одних нулей. Вероятность возникновения такого вектора равна вероятности правильного приёма

P

= P(0000...0)= (1 P )n ,

(3.31)

прав

1

 

94

где Р1 – вероятность ошибочного приёма одного символа; n – разрядность кода.

Вероятность того, что в i–м разряде возникла ошибка, а все остальные символы приняты верно:

P1 (1 P1 )n1.

Такая ошибка может возникнуть в любом из n символов. В итоге возникает n различных векторов с одной единицей или можно записать, что таких векторов будет Сn1. Вероятность возникновения любого вектора с одной единицей равна сумме вероятностей возникновения всех этих векторов, т.е.

P(1)= Cn1 P11(1 P1 )n1 .

По аналогии можно записать для вероятности возникновения двух оши-

бок:

P(2)= C 2 P2 (1 P )n2 ,

 

n 1

 

1

 

и в общем случае вероятность возникновения k ошибок (k<n)

 

P(k)= C k

Pk

(1 P )nk .

(3.32)

n

1

1

 

Выражение (3.32) носит название формулы Бернулли и позволяет определить вероятность возникновения искажения кратностью k при известной вероятности искажения элементарного сигнала.

Тогда вероятность появления обнаруженных ошибок определяется выражением

Pо.ош = l

P(k ),

(3.33)

k =1

 

где l – наибольшая кратность обнаруживаемых ошибок.

 

Вероятность ошибочного приёма определяется выражением

 

Pн.ош = r

P(k),

(3.34)

k =1

 

 

где r – наибольшая кратность не обнаруживаемых ошибок.

Пользуясь выражением (3.32), определим условную вероятность возникновения необнаруженной ошибки Рн.ош для некоторых кодов, рассмотренных в подразд. 2.2 [5].

3.5.1. Код с проверкой на чётность (нечётность). В таком коде обна-

руживаются все одиночные ошибки нечётной кратности с вероятностью

95

Pо.ош = P(1) + P(3) + P(5) +... = Cn1 P11(1 P1)n1 + Cn3P13 (1 P1)n3 +

 

E(

n

) +1

 

 

+ Cn5 P15 (1 P1 )n5

2

 

P1)n 2i +1,

(3.35)

+ ... = Cn2i 1P12i 1(1

 

i =1

 

 

где Е – целая часть числа, стоящего в скобках.

Все чётные ошибки не обнаруживаются и образуют ложный приём с вероятностью

 

E(

n

)

 

 

 

 

Pн.ош = P(2) + P(4) + P(6) + ... = 2

Cn2i P12i (1 P1 )n2i .

(3.36)

 

i=1

 

 

Вероятность правильного приёма в соответствии с выражением (3.31) бу-

дет

 

 

 

 

 

P

= (1 P )n .

 

(3.37)

прав

1

 

 

 

 

3.5.2. Код с постоянным весом. Необнаруженная ошибка имеет место, если произошло искажение типа «смещения», тогда вероятность ошибочного приёма в коде Сnm

m

P1)n2i .

 

Pн.ош = Cmi Cni m P12i (1

(3.38)

i=1

Вероятность правильного приёма

P

= (1 P )n.

(3.39)

прав

1

 

Тогда вероятность появления обнаруживаемых ошибок можно определить из (3.30) и она будет

m

P1 )n2i .

 

Pо.ош =1 (1 P1 )n Cmi Cni m P12i (1

(3.40)

i=1

3.5.3. Код с повторением. Рассмотрим случай, когда общее число элементов удваивается (n=2n0). Такой код не обнаруживает ошибок, возникающих в сравниваемых при приёме разрядах двух частей кода. Вероятность ошибочного приёма в данном коде

n

 

 

Pн.ош = 2 Cni

P12i (1 P1)n2i .

(3.41)

i =1

2

 

Вероятность правильного приёма будет

96

P

= (1 P )n = (1 P )2n0 .

(3.42)

прав

1

1

 

Тогда вероятность появления обнаруживаемых ошибок

 

 

n

 

 

Pо.ош = 1 (1 P1)n 2 Cni

P12i (1 P1)n2i .

(3.43)

 

i =1

2

 

3.5.4. Инверсный код. Он позволяет обнаруживать ошибки любой кратности за исключением таких, когда искажены два информационных символа и соответствующие им два контрольных, четыре информационных и соответствующие им четыре контрольных и т.д. Таким образом, вероятность ошибочного приёма

n

 

Pн.ош = 4 Cn2i P14i (1 P1)n4i .

(3.44)

i =1 2

 

Вероятность правильного приёма будет

P

= (1 P )n.

(3.45)

прав

1

 

Вероятность возникновения обнаруживаемых ошибок в соответствии с выражением (3.30) будет

n

Pо.ош =1 (1 P1)n 4 Cn2i P14i (1 P1)n4i . (3.46)

i=1 2

3.5.5. Корреляционный код. Не обнаруживаемая ошибка будет иметь место в том случае, если будут искажены два рядом стоящих элемента, соответствующих одному элементу исходного кода. Тогда вероятность ошибочного приёма будет определяться выражением

n

 

 

Pн.ош = 2 Cni P12i (1 P1)n2i .

(3.47)

i =1

2

 

Вероятность правильного приёма будет

 

P

= (1 P )n.

(3.48)

прав

1

 

Тогда вероятность появления обнаруживаемых ошибок

 

Pо.ош = 1 Pн.ош Рправ..

(3.49)

97

Пример 3.5. Найти вероятность возникновения обнаруженных и необнаруженных ошибок в коде C31, если Р10=10–3, а Р01=10–4.

Решение. Код C31 состоит из трёх комбинаций: А–100, Б–010, В–001. Это

так называемые разрешённые кодовые комбинации, поскольку в каждой из них содержится по одной единице. Пусть в канал связи передаётся комбинация А–100. В результате воздействия помех она может трансформироваться в одну из трёх разрядных комбинаций, показанных на рис. 3.3.

Правильная передача

Необнаруженная ошибка

 

 

Обнаруженная ошибка

 

 

А - 100

Б - 010 В - 001

Г - 011

Д - 101

Е - 110

Ж - 000

З - 111

А - 100

Рис. 3.3. Граф трансформаций кодовой комбинации при передаче по каналу связи

Как следует из рис. 3.3, вероятность возникновения необнаруженной ошибки согласно (3.29) будет определяться суммой вероятностей переходов

Pн.ош = P( А Б) + P( А В) = 2P10 P01 (1 P01 ).

Вероятность возникновения обнаруженной ошибки согласно (3.28) равна вероятности перехода в одну из запрещённых кодовых комбинаций:

Pо.ош = P( АГ) + P(АД) + P(АЕ) + P(АЖ) + P(АЗ) =

= P10P012 + 2P01(1 P01)(1 P10 ) + P10 (1 P01)2 + P012 (1 P10 ).

Подставляя значения вероятностей Р10 и Р01, найдём Рн.ош=10–7 и

Ро.ош=1,2·10–3.

98

Из примера вытекает, что вероятность возникновения необнаруженной ошибки значительно меньше вероятности возникновения обнаруженной ошиб-

ки. Если аналогичные расчёты проделать для другой комбинации C31, то получится тот же результат.

Пример 3.6. Определить вероятности возникновения обнаруженных, необнаруженных ошибок и правильного приёма кодовых комбинаций в коде C31,

если канал симметричный с Р1=10–3.

Решение. В соответствии с выражением (3.38)

P = C1C1P2 (1 P )1 = 2 (103 )2 (1 103 ) 2 106 .

н.ош 1 3 1 1 1

Вероятность правильного приёма найдём из выражения (3.39):

Pправ = (1 P1)3 = (1 0,001)3 0,997 .

Вероятность обнаруженной ошибки найдём из выражения (3.40)

Pо.ош = 1 0,997 2 106 = 2,998 103 .

Пример 3.7. Определить вероятность возникновения обнаруженных и необнаруженных ошибок в коде с защитой на чётность длиной n = 5. Канал сим-

метричный с P1 = 2 102 .

Решение. Вероятность обнаружения ошибок найдём из выражения (3.35):

Pо.ош = C51P11(1 P1)4 + C53P13 (1 P1)2 + C55 P15 (1 P1)0 102.

Вероятность возникновения необнаруженных ошибок согласно (3.36)

Pн.ош = P(2) + P(4) = C52P12 (1 P1)3 + C54P14 (1 P1) 4 105 .

3.6.Помехоустойчивость кодов с обнаружением

иисправлением ошибок

Для данных кодов вероятность правильного приёма Р*прав, возникновение обнаруженной ошибки Ро.ош, возникновение необнаруженной ошибки Рн.ош и исправления Рисп составляют полную группу событий, т.е.

P*

+ P

+ P

+ P

=1.

(3.50)

прав

исп

о.ош

н.ош

 

 

Полная вероятность правильного приёма включает в себя и вероятность исправления

99

P

= P*

+ P .

(3.51)

прав

пр

исп

 

Используя формулу Бернулли, определим указанные вероятности для следующих кодов.

3.6.1. Итеративный код. Рассмотрим блок, содержащий m строк и n столбцов, которые включают в себя строку и столбец защиты по паритету (кодом с проверкой на чётность или нечётность). Данный код имеет кодовое расстояние d = 4 и позволяет исправлять одиночные ошибки. Тогда согласно (3.51) полная вероятность правильного приёма будет

P

= (1 P )n+m + C1

P1

(1 P )n+m1.

(3.52)

прав

1

n

+m 1

1

 

Ложный приём в итеративном коде обусловливается искажениями, приводящими к появлению чётных ошибок одновременно в строках и столбцах. Так, вероятность ложного приёма из-за четырёхкратных ошибок

P

= C2C2 P4

(1 P )n+m4 .

(3.53)

н.ош

n m 1

1

 

Пример 3.8. По каналу связи с вероятностью искажения элементарной посылки P1 =102 передается защищаемый интеративным кодом блок инфор-

мации, содержащий 16 кодовых слов по 8 элементов в каждом. Определить вероятности исправления одиночных ошибок, правильного приема, появления необнаруженных и обнаруженных ошибок (ошибки кратности более четырех не учитывать).

Решение. Вероятность правильного приема

Pправ* = (1 P1 )n + m = (1 102 )24 = 0,9924 = 0,779 .

Определим вероятность исправления из выражения

Pисп = Cn1 + mP11(1 P1 )n+m1 = C161 +8 102 (1 102 )23 = 0,190.

P

= P*

+ P = 0,969.

Полная вероятность правильного приема прав

прав

исп

По выражению (3.53) находим вероятность ошибочного приема

Pн.ош = C162 C82 108 (1102 )20 =120 28 108 0,9920 = 0,273 104 .

Вероятность появления обнаруженных ошибок найдем из (3.50)

Pо.ош =1 Pправ Рн.ош =1 0,969 0,273 104 = 0,031.

100

3.6.2. Код Хэмминга с d = 4. Данный код позволяет исправлять одиночные и обнаруживать двоичные ошибки.

Полная вероятность правильного приема определяется выражением

P

= (1 Р )n + C1 P1

(1 P )n1 .

(3.54)

прав

1

n 1

1

 

Ошибочный прием при d = 4 обусловлен ошибкой кратности, большей двух, и оценивается вероятностью

n

Pн.ош = Cni P1i (1 P1 )ni . i =3

Вероятность возникновения обнаруженной ошибки

Pо.ош = Cn2 P12 (1 P1 )n2 .

(3.55)

(3.56)

Пример 3.9. Оценить достоверность передачи сообщений, закодированных в коде Хэмминга (8,4) с d = 4, по каналу связи с вероятностью искажения

элементарного символа P1 = 5 102 .

Решение. Определим вероятность возникновения обнаруженной ошибки из (3.56)

Pо.ош = C82 P12 (1 P1 )6 = 28 0,052 0,952 = 0,063175 .

По формуле (3.55) определим вероятность ошибочного приема (учитываем искажения, кратные трем и четырем)

Pн.ош = С83Р13 (1 Р1 )5 + С84 Р14 (1 Р1 )4 =

= 56 0,053 0,955 + 70 0,054 0,954 = 5,7 103.

Вероятность правильного приема с учетом исправления одиночных ошибок найдем из (3.50):

Pправ =1 Ро.ош Рн.ош = 0,931.

3.6.3. Циклические коды. Данные коды в зависимости от кодового расстояния могут обнаруживать и исправлять не только единичные ошибки любой кратности, но и пакеты ошибок. Обнаруживаются все ошибки кратности m d 1 и исправляются ошибки кратности S = (d 1)/ 2 .

Если циклический код только обнаруживает ошибки, то вероятность обнаружения будет

101