МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»
ІКТА
кафедра ЗІ
ЗВІТ
до лабораторної роботи №1
з курсу:
«Засоби передачі інформації у системах технічного захисту інформації»
на тему:
«Дослідження кодоутворення та принципів побудови кодерів і декодерів кодів Хемінга»
Львів – 2012
Мета роботи: вивчити принципи побудови кодів Хемінга та одержати практичні навики розробки функціональних схем кодерів і декодерів.
Завдання
1. Визначити основні параметри коду Хемінга d = 3 ( nk ,n, N, Nд, Nз, R, B ), якщо кількість
інформаційних розрядів дорівнює двом останнім цифрам номера залікової книжки (НЗК).
2.Побудувати утворюючу матрицю КХ (16, 11) і на її основі закодувати число у двійковому та
двійково-десятковому кодах, що відповідає трьом останнім цифрам НЗК.
3. Побудувати перевірочну матрицю КХ (16, 11). Декодувати одну з КК одержаних в п. 2, для
випадку, коли спотворень нема, коли вони є в одному, двох і трьох розрядах. Номери
спотворюваних розрядів вибирати довільно.
4. Ознайомитися з схемою, передати і прийняти кодові комбінації, одержані в п. 2 без спотворень та із спотвореннями. Порівняти синдроми, які відтворюються індикаторами S0, S1, S2, S4, S8 з результатами, одержаними в п. 3.
5. Скласти схеми кодера і декодера кодів Хемінга при d = 2, d = 3.
6. Побудувати графіки залежності R=f1(ni) та B=f2(ni) для коду Хемінга з d = 3, якщо
кількість інформаційних розрядів змінюється від 1 до 250.
Визначимо основні параметри коду Хемінга d = 3
Мій варіант – 24
nі = 24 – кількість інформаційних символів
nк – кількість контрольних символів, який визначаємо з нерівності: ≥ ni + nk + 1,
nк = 5
n = nі + nк = 24 + 5 = 29, n – загальна кількість символів
N = 2n = 229 – загальна кількість комбінацій
Nд = = 224– дозволені комбінації
Nз = 2n - = 229-224 – заборонені комбінації
R = nк / n =0,172 – надлишковість коду
B = nі / n = 0,828 – швидкість передачі інформації
Відповідно до мого варіанту кодуємо число– 024. Отже, код буде таким 11000.
Побудуємо утворюючу матрицю КХ(16,11)
К8 К4 К2 К1 К0
| 15 14 13 12 11 10 9 7 6 5 3 8 4 2 1 0 |
| 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 |
| 0 1 0 0 0 0 0 0 0 0 0 1 1 1 0 0 |
| 0 0 1 0 0 0 0 0 0 0 0 1 1 0 1 0 |
| 0 0 0 1 0 0 0 0 0 0 0 1 1 0 0 1 |
| 0 0 0 0 1 0 0 0 0 0 0 1 0 1 1 0 |
| 0 0 0 0 0 1 0 0 0 0 0 1 0 1 0 1 |
| 0 0 0 0 0 0 1 0 0 0 0 1 0 0 1 1 |
| 0 0 0 0 0 0 0 1 0 0 0 0 1 1 1 0 |
| 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0 1 |
| 0 0 0 0 0 0 0 0 0 1 0 0 1 0 1 1 |
| 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 1 |
0 0 0 0 0 0 1 1 0 0 0 1 1 1 0 1
Знаходимо контрольні символи:
K1=I3+I5+I7+I9+I11+I13+I15= 0
K2=I3+I6+I7+I10+I11+I14+I15= 1
K4=I5+I6+I7+I12+I13+I14+I15=1
K8=I9+I10+I11+I12+I13+I14+I15=1
K0= К1+К2+К4+К8+І3+І5+І6+І7+І9+І10+І11+І12+І13+І14+І15 =1
Отже, код Хемінга з d = 4 матиме такий вигляд:
І15 І14 І13 І12 І11 І10 І9 К8 І7 І6 І5 К4 І3 К2 К1 К0 = 0000001100011101
Закодуємо число 024 в двійково-десятковому коді.
Отже код буде таким -0010 0100
K1=I3+I5+I7+I9+I11+I13+I15= 0
K2=I3+I6+I7+I10+I11+I14+I15= 0
K4=I5+I6+I7+I12+I13+I14+I15=1
K8=I9+I10+I11+I12+I13+I14+I15=1
K0= К1+К2+К4+К8+І3+І5+І6+І7+І9+І10+І11+І12+І13+І14+І15 =0
Отже, код Хемінга з d = 4 матиме такий вигляд:
І15 І14 І13 І12 І11 І10 І9 К8 І7 І6 І5 К4 І3 К2 К1 К0 = 0000010010011000
Побудуємо перевірочну матрицю Н(16,11)
K8 K4 K2 K1 K0
| 15 14 13 12 11 10 9 7 6 5 3 8 4 2 1 0 |
| 1 1 1 1 1 1 1 0 0 0 0 1 0 0 0 0 | S8
| 1 1 1 1 0 0 0 1 1 1 0 0 1 0 0 0 | S4
| 1 1 0 0 1 1 0 1 1 0 1 0 0 1 0 0 | S2
| 1 0 1 0 1 0 1 1 0 1 1 0 0 0 1 0 | S1
| 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | S0
0 0 0 0 0 0 1 1 0 0 0 1 1 1 0 1
Помилка відсутня
Виходячи із перевірочної матриці:S8=0, S4=0, S2=0, S1=0, S0=0, отже, помилка відсутня і кодова комбінація декодована правильно.
Зробимо помилку в символі І6: 0000001111010101
Виходячи із перевірочної матриці: S8=0, S4=1, S2=1, S1=0, S0=1
S0=1, Si ≠0 – отже, у коді помилка коді помилка непарної кратності
Зробимо помилки в І5 і І6: 0000001111110101
Виходячи із перевірочної матриці: S8=0, S4=0, S2=1, S1=1, S0=0
S0=0, Si ≠0 – отже, у коді подвійна помилка
Зробимо помилки в І3, І5, I6 : 0000001111111101
Виходячи із перевірочної матриці: S8=0, S4=1, S2=1, S1=0, S0=1
S0=1, Si ≠0 – отже, у коді помилка непарної кратності
Отримана кодова комбінація без спотворень
Часова діаграма роботи схеми без внесення спотворень
Отримана кодова комбінація із спотворенням у І5 розряді
Часова діаграма роботи схеми із спотворенням у І5 розряді
Отримана кодова комбінація із спотворенням у І5 і І6 розряді
Часова діаграма роботи схеми із спотворенням у І5 і І6 розряді
Отримана кодова комбінація із спотворенням у І3, І5, I6 розряді
Часова діаграма роботи схеми із спотворенням у І3, І5, I6 розряді
Схема декодера для d=4
Схема кодера для d=4
Графік залежності R=f1(ni) для коду Хемінга з d = 3
Графік залежності B=f2(ni) для коду Хемінга з d = 3
Висновок: на даній лабораторній роботі я ознайомився з принципами побудови кодів Хемінга, навчився виявляти однократні, двократні помилки і помилки непарної кратності і перевіряти їх за допомогою функціональних схем кодера та декодера. З графіків видно,що зі збільшенням кількості інформаційних розрядів надлишковість коду зменшується, а швидкість передачі збільшується.