Скачиваний:
5
Добавлен:
17.06.2023
Размер:
1.93 Mб
Скачать

ЛЕКЦИЯ 6. ПОМЕХОУСТОЙЧИВОЕ КОДИРОВАНИЕ С ПРЯМОЙ

КОРРЕКЦИЕЙ ОШИБОК ЦИФРОВЫЕ СИСТЕМЫ ПЕРЕДАЧИ ИНФОРМАЦИИ

1.Системы некритичные к задержкам доставки информации от источника к потребителю применяют. как правило, простые коды, способные только обнаруживать факт наличия ошибки в кодовой комбинации – EDC – Error Detection Code.

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

(исправлением) ошибок – ECC Error Correction Code.

В лекции будут приведены примеры цифровых систем передачи информации реального времени, в которых использованы коды ECC:

системы цифрового телевизионного вещания (Европейские стандарты);

система европейского цифрового аудио вещания;

система реального времени РАВИС.

Наибольшее распространение получили системы цифрового

2

телевидения европейского стандарта DVB (Digital Video

Broadcasting):

 

•цифрового спутникового вещания - DVB-S (DVB-S2);

 

•цифрового кабельного вещания - DVB-C;

 

•цифрового эфирного вещания - DVB-T (DVB-T2);

 

•цифрового вещания для мобильных устройств - DVB-H;

 

•телевидение по IP – DVB (IPTV).

 

Европейским стандартом цифрового аудио вещания DAB (Digital

Audio Broadcasting) является проект Eureka-147.

Более перспективной является отечественная аудиовизуальная информационная система реального времени (РАВИС),

Национальный стандарт РФ ГОСТ Р 54309-2011.

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

Такими кодами являются: БЧХ, Рида-Соломона, сверточные и

помехоустойчивые коды с малой плотностью проверок на

четность (МППЧ) или (LDPC – low density parity check).

Система каскадного помехоустойчивого кода

Внешний

 

 

 

 

 

 

 

 

 

Внутренний

 

 

 

Внутренний

 

Внешний

 

 

 

 

 

кодер

 

 

Канал

 

 

 

кодер

 

 

декодер

 

декодер

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Отдельные цифровые информационные системы используют однокаскадные помехоустойчивые коды.

Типовая структурная схема информационной цифровой системы с каскадным кодом

Обобщенная структурная схема передающей части системы цифрового наземного телевизионного вещания DVB-T

Цифровые системы с двухкаскадными помехоустойчивыми кодами

Тип цифровой

Внешний код

Внутренний код

системы

 

 

 

 

 

DVB-S

Рида-Соломона

Сверточный

 

 

 

DVB-S2

Боуза-Чоудхури-

МППЧ малой

 

Хоквингема (БЧХ)

плотностью проверок на

 

 

четность)

 

 

 

DVB-C2

БЧХ

МППЧ

 

 

 

DVB-T

Рида-Соломона

Сверточный

 

 

 

DVB-T2

Сверточный

МППЧ

 

 

 

РАВИС

БЧХ

МППЧ

 

 

 

Цифровые системы с однокаскадными помехоустойчивыми кодами:

DVB-C – код Рида-Соломона;

DAB (Eureka-147) – сверточный код;

QR-код код Рида-Соломона;

Интеллектуальная транспортная система (ИТС) -– сверточный код;

Цифровая сеть пятого поколения 5G – полярные коды.

Как следует из приведенной на предыдущем слайде таблицы, в большей

степени в цифровых информационных системах применяются циклические

коды БЧХ и Рида-Соломона. Поэтому, чтобы приступить к анализу

корректирующих способностей таких кодов в конкретных системах,

рассмотрим теоретические предпосылки построения циклических кодов

БЧХ и Рида-Соломона, а также их возможностей прямой коррекции ошибок.

Затем аналогично рассмотрим построение и корректирующие способности

сверточных кодов и кодов с малой плотностью проверок на четность

(МППЧ).

При этом отметим, что при построении циклических кодов БЧХ и Рида-

Соломона используются расширенное поле Галуа

Выберем в качестве

порождающего поле GF(24) неприводимый по модулю 2 примитивный многочлен четвертой степени Р(х) = 1+ х + x4.

Пусть является корнем данного многочлена, тогда он будет первообразным элементом поля GF(24). Все 15 ненулевых элементов

поля будут следующими (все степени приводятся по mod Р( )):

Таблица 2.1 В правой колонке таблицы элементы

поля i = a0 + a1 1+ a2 2+ a3 3

представлены в векторной форме

записи

(a0,

a1,

a2,

a3),

где

коэффициенты aii принадлежат простому полю GF(2).

Таблица 2.1

0

=

1

 

 

 

=

(1000)

 

 

 

 

 

 

 

 

1

=

 

 

 

 

=

(0100)

 

 

 

 

 

 

 

 

2

=

 

 

2

 

=

(0010)

3

=

 

 

 

3

=

(0001)

4

=

1

 

 

 

=

(1100)

5

=

 

 

2

 

=

(0110)

 

 

 

 

 

 

 

 

6

=

 

 

2

3

=

(0011)

 

 

 

 

 

 

 

 

7

=

1

 

 

3

=

(1101)

 

 

 

 

 

 

 

 

8

=

1

 

2

 

=

(1010)

9

=

 

 

 

3

=

(0101)

 

 

 

 

 

 

 

 

10

=

1

 

2

 

=

(1110)

11

=

 

 

2

3

=

(0111)

12

=

1

 

2

3

=

(1111)

13

=

1

 

2

3

=

(1011)

14

=

1

 

 

3

=

(1001)

15

=

1

 

 

 

=

(1000)

Циклические коды, исправляющие многократные независимые ошибки

в комбинации – код Боуза-Чоудхури-Хоквингема (БЧХ).

Построение циклических кодов БЧХ.

Для кодов БЧХ характерны все основные свойства циклических кодов. Коды

БЧХ предназначены для исправления независимых ошибок кратности t и менее.

Их описывают с помощью корней порождающего многочлена G(х). В качестве

корней G(х) выбирают 2t последовательных элементов ε j, ε j+1,…, ε j+2t-1 поля

Галуа GF(рm) с образующим поле примитивным многочленом P(x) степени m. Часто принимают j=1, тогда в качестве корней выбирают элементы поля

ε, ε 2,…, ε2t . Для примитивных двоичных кодов БЧХ длина комбинации равна

n2m 1.

Вэтом случае все ненулевые элементы поля Галуа GF(2m) εi будут корнями

двучленного уравнения xn 1 x2m 1 1 0.

Но, как следует из теории полей Галуа, каждый из элементов поля εi будет корнем

некоторого неприводимого многочлена mi(x) меньшей степени, т.е m(εi) =0.

Многочлены mi(x) называют минимальными функциями, все они входят в разложение

двучлена

(x

2

m

1

1)

на неприводимые сомножители.

 

 

 

 

 

 

 

 

 

 

 

 

 

Порождающий многочлен G(х) должен быть наименьшим общим кратным всех

минимальных функций, т. е.

 

 

 

 

 

G(х) = HOK[ml(x), m2(x),…, m2t(x)]

(3.1 )

Таким образом, вектор, представленный многочленом f(x), будет кодовым тогда и только тогда, когда он делится без остатка как на каждую из минимальных функций m1(х), m2(х), ..., m2t(х) так и на их наименьшее общее кратное.

Тогда для любого из корней ε, ε2, ..., ε2t справедливо уравнение f(εi) = с0 + с1 ε i + с2(εi)2+ ... + сn-1 (εi)n 1 = 0,

которое можно записать в виде произведения двух матриц

[c0 c1 c2 c n–1]∙ [1εi (εi)2…(εi) n 1 ]T = 0.

Но так как корнями f(х) должны быть все элементы ε, ε2, ...,ε2t , то можно сделать

вывод, что вектор [c0 c1 c n–1] будет кодовым тогда и только тогда, когда он

принадлежит нулевому пространству матрицы

 

1

 

 

2

 

 

...

 

n 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

( 2 )2

...

( 2 )n 1

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

H

 

 

3

(

3

)

2

...

(

3

)

n 1

 

.

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

.

 

.

 

 

 

...

 

 

.

 

 

 

 

 

 

 

 

2t

(

2t

)

2

...

(

2t

)

n 1

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(3.2)

Из свойств полей следует, что если εi корень какой-либо минимальной неприводимой по mod2 функции mi(х) степени k, то остальными корнями будут

(

i

)

2

, (

i

)

2

2

,..., (

i

)

2

k 1

.

 

 

 

 

 

 

 

 

 

 

Тогда при определении порождающего многочлена G(x) и проверочной

матрицы кода Н должны быть учтены только нечетные степени, т.е.

(3.3)

G(х) = m1(х) m3(х) ... m2t–1(х),

а проверочная матрица Н (3.2) преобразуется к виду:

1

 

 

 

2

 

 

...

 

n 1

 

 

1

3

( 3 )2

 

...

( 3 )n 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

 

5

 

2

 

 

 

 

5

 

n 1

 

H 1

 

 

(

 

)

 

 

...

(

 

)

 

 

.

. .

 

 

.

 

 

 

...

 

 

 

.

 

 

 

 

 

2t 1

(

2t 1

)

2

...

(

2t 1

)

n 1

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Пример 1. Пусть имеем двоичный циклический код БЧХ, к которому вектор

{f(х)} будет принадлежать только тогда, когда элементы ε, ε2, ε3, ε4, ε5, ε6 будут

корнями многочлена f(x). Кроме того, предполагается, что ε примитивный

элемент поля Галуа GF(2m), где m=4. Тогда ε 15 = 1 и mi(х) обозначает минимальную функцию для εi.

В соответствии со свойством поля Галуа элементы ε, ε2, ε4 и ε8 корни одной и той же минимальной функции четвертой степени, следовательно, m1(х) = m2(х) = m4(х) = m8(х). Аналогично, ε3, ε6, ε12 и ε24 = ε9 корни минимальной функции

четвертой степени и m3(х) = m6(х) = m9(x) = m12(x), а элементы ε5 и ε10 являются корнями минимальной функции второй степени и, следовательно, m5(х) = m10(x).

Отсюда, G(х) является многочленом

G(х) = m1(х) m3(х) m5(х),

 

 

 

 

 

 

(3.4)

Степень которого равна 10.

 

 

 

 

2

...

 

14

 

 

 

 

1

 

 

 

 

Проверочная матрица

H

1

3

6

...

12

.

(3.5)

соответственно будет:

 

 

5

10

 

10

 

 

 

1

...

 

 

 

 

 

 

 

 

 

 

 

 

 

Соседние файлы в папке лекции