Лаб. 5 Аналіз сучасних кодів із захистом від помилок
Методичні вказівки до виконання лабораторної роботи №5
з курсу «Теорія інформації та кодування»Мета роботи:- закріпити знання про різновиди кодів із захистом від помилок і напрями їх застосування;
- дослідити коригувальну здатність коду Хеммінга, циклічного коду CRC та згорткового коду Фінка за допомогою їх моделювання;
- закріпити теоретичні знання про побудову лінійних кодів із захистом від помилок.
Загальна характеристика роботиЦя робота включає три розділи:
Розділ 1. Аналіз коду Хеммінга з виправленням поодиноких помилокРозділ 2. Аналіз циклічного CRC-коду з виявленням пачок помилокРозділ 3. Аналіз згорткового коду Фінка з виправленням помилок в потоці данихВідповідні теоретичні відомості наведені зокрема в електронному конспекті лекції
№9,
№10 на сайті tik-diit.dp.ua за поточний рік.
Для виконання роботи студент має обрати його рівень: повний або мінімальний. Останній варіант суттєво менший за обсягом, але відповідний бал не перевищує 70% від повного. Далі в тексті завдання, які належать тільки повному варіанту, помічені *.
В додатках до цих методичних вказівок можна одержати:
- приклад оформлення звіту;
- необхідні файли.
Для підготовки до захисту рекомендується пройти
тестування з питань теорії в пробному режимі.
Увага! Вам потрібно виділити ВСІ вірні варіанти відповідей.Порядок виконання роботи в розділі 11.1 Дослідити коригувальну здатність коду Хеммінга 7,4, використовуючи демонстраційну програму correcting-code та вихідні дані згідно індивідуального варіанту. Зокрема моделювати дію коду у ваипадках появи поодинокої та двократної помилок. Відобразити їх на рис.1.1 (зразок в шаблоні звіту).
1.2 За допомогою демонстраційної програми Hemming_code ознайомитись з роботою 64-розрядної версії коду, яка застосовується в сучасній серверній пам'яті (рис.1.2):
- створити текстовий файл із власним ім'ям для імітації збереження в оперативній памяті і завантажити у вікно 1 програми. Виконати кодування і переконатись, що до кожного слова памяті (64 біти або 8 байт) додається контрольний байт кода Хеммінга;
- імітувати помилки передачі (0, 1, 2, 3 помилки в перших рядках) та виконати декодування. Переконатись, що найбільш імовірні поодинокі помилки код автоматично виправляє, а помилки парної кратності пропускає.
* 1.3 Розібратись із використанням математичного апарату створення коду Хеммінга на прикладі коду з параметрами 7,4, використвуючи рис.1.2. Застосовуючи рівняння кода, пере-вірити роботу демо-програми в прикладі рис.1.1 і переконатись в її правильності.
Порядок виконання роботи в розділі 2 2.1. Дослідити коригувальну здатність циклічного CRC-коду 7,4 за допомогою демонстраційної програми correcting-code. Переконатись, що даний код відповідно до теорії виявляє пачки помилок довжиною до m розрядів, де m-довжина хвостовика і старша ступінь утворює многочлена (в прикладі m = 3). Результати відобразити в формі за аналогією рис.2.1 шаблону звіту.
2.2 Проаналізувати апаратну реалізацію кода CRC на базі регістра зсуву із зворотніми звязками – рис.2.3. Адаптувати узагальнену схему для ділення на утворюючий поліном кода згідно індивідуального варіанта.
* 2.3 Розібрався з використанням математичного апарату для створення циклічного CRC-коду на прикладі коду з параметрами 7, 4 (рис.2.3). Використовуючи процедури кодування та декодування на рис.2.3, перевірив роботу демо-програми в попередньому прикладі і переконався в її правильності.
Порядок виконання роботи в розділі 3 3.1 За допомогою демо-програми correcting-code, дослідити коригувальну здатність коду Фінка. Упевнитись, що для версії коду з параметром s=0 (проста) можливе усуенння поодиноких помилок, а для випадку s=1 (розширений) - усуенння парних помилок, Відобразити результати на рис.3.1 звіту.
* 3.2 Розібратись із використанням математичного апарату та схемною реалізацією згорткових кодів. Зокрема проаналізувати приклади кодерів на рис.3.2 згідно індивідуальному варіанту. Результати відобразити в табл.3.1.
* 3.3 Проаналізувати схему каскадного кодування та розглянув приклад подріблення пачки помилок за рахунок перемежіння згідно варіанту Відобразити результати на рис.3.3.