- •1 Пояснювальна записка
- •1.1 Емуляція ділення цілих без знакових чисел
- •1.2 Десяткова корекція у мікро контролері ріс
- •1.2.1 Додавання у bcd – форматі
- •1.2.2 Віднімання у bcd – форматі
- •1.3 Циклічний надлишковий код, що коректує, 7,4 (crc3)
- •1.3.1 Зв’язок коректованої здатності коду з кодовою відстанню
- •1.3.2 Побудова циклічного надлишкового коду 7,4
- •Метод виправлення помилок з використанням матриці
- •1.4 Код Ріда – Соломона рс 31,16 (crc15)
- •2 Склад адмністративної контрольної роботи
- •2.1 Завдання №1
- •Приклад виконання варіанту №30
- •2.2 Завдання №2
- •2.3 Завдання №3
- •Приклад виконання варіанту №30
- •2.4 Завдання №4
- •Приклад виконання варіанту №30
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
1000111
0000010
1000101
На разі маємо істинний пакет №1.
Перейдемо
до практичної сторони контрольного
завдання.
Запустимо відповідний проект у середовищі MPLab:
Теоретичні розрахунки збігаються з практичними.
