Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
АКР_ПП.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
2 Мб
Скачать
☆

1.4 Код Ріда – Соломона рс 31,16 (crc15)

Кодом Ріда-Соломона називається циклічний (N,K) – код, при N=q-1, множина кодових комбінацій якого представляється багаточленами ступеню N-1 і менше з коефіцієнтами із поля GF(q), де q>2 і є ступінню простого числа, коренями багаточлену, що народжує є N-K послідовних ступенів: α, α2, … , αd-1, деякого числа α Є GF(q), де d – мінімальна кодова відстань (N,K) – коду.

Із визначення виходить, що РС – код є під класом БЧХ – кодів з m0=1.

Заздалегідь вважають елемент α примітивним елементом поля GF(q), тобто всі ступені α від 1 до (q-1) є всіма не нульовими елементами поля GF(q).

Багаточлен, що народжує РС – код має ступінь N-K= d-1 і за теоремою Безу може бути знайдений у вигляді добутку:

У відповідності з теорією циклічних кодів, багаточлен g(x), що народжує, є дільником xN-1 над GF(q).

Таким чином, РС – код над полем GF(q) має довжину кодової комбінації N=q-1

При фіксованих N і K не існує коду, у якого мінімальна кодова відстань більше, ніж у РС – коду. Цей факт є вагомою підставою для використання РС – кодів. У той же час РС – коди завжди є коротшими за всі інші циклічні коди над тим же алфавітом. РС – коди довжини N<q-1 називають скороченими, а коди довжини q (або q+1) – розширеними на один (два) символ.

Слід відмітити, що код Ріда – Соломона 31,16 має кодову відстань d>=7, що дозволяє виявляти і виправляти помилки кратності 3 і менше .

2 Склад адмністративної контрольної роботи

2.1 Завдання №1

Графічно реалізувати виявлення помилки, обчислити синдром помилки та виправити помилку, в залежності від номера завдання яке відповідне номеру за списком у журналі (Таблиця 5). Номер пакету обрати в таблиці 3. Перевірити самостійно виконані теоретичні розрахунки за допомогою відповідного тестового проекту в покроковому режимі в середовищі програмування MPLab. Порівняти результати.

Таблиця 5

№

1

2

3

4

5

6

7

8

9

10

11

12

12

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

Пакет №

Помилка біт №

1

0

2

6

3

6

4

6

5

0

6

2

7

0

8

6

9

6

10

6

11

1

12

1

13

6

14

4

15

4

Пакет №

Помилка біт №

15

0

14

0

13

0

12

1

11

1

10

1

9

2

8

2

7

2

6

3

5

3

4

5

3

5

2

1

1

1

Приклад виконання варіанту №30

П акет №1 має у відповідності з таблицею 1 має вигляд: 1000101. Вносимо помилку у біт №1: 1000111. Перевіряємо пакет на наявність помилки:

Залишок від ділення не рівний 0.

У відповідності з рівняннями (11) обчислимо синдром помилки:

О

1000111

тримаємо обчислений синдром S1 S2 S3=010. Згідно таблиці 2 знайдемо відповідність між обчисленим синдромом і вектором помилки та виправимо помилку:

1000111

0000010

1000101

На разі маємо істинний пакет №1.

Перейдемо до практичної сторони контрольного завдання.

Запустимо відповідний проект у середовищі MPLab:

Теоретичні розрахунки збігаються з практичними.