- •1 Нормативні дані з дисципліни
- •2. Мета і завдання дисципліни
- •3 Перелік забезпечуючих дисциплін
- •4 Структура залікових кредитів
- •5 Навчально–методичне забезпечення дисципліни
- •5.1 Література
- •5.2 Методичні посібники та вказівки
- •Лекція 1 Система передачі інформації. Основні поняття і визначення
- •1. Місце інформаційних систем у сучасному світі
- •2. Класифікація систем передачі інформації
- •3. Узагальнена структурна схема системи передачі інформації
- •4.Основні інформаційно-технічні характеристики спи
- •4.1 Вірогідність передачі інформації
- •Завадостійкість передачі інформації
- •Швидкість передачі інформації
- •Пропускна здатність каналів зв'язку
- •Висновки
- •Тестові запитання
- •1.Кількість інформації в повідомленні
- •Логарифмічна міра добре відображає адитивність інформації.
- •2 .Джерело дискретних повідомлень і його ентропія
- •Ентропію джерела не рівноімовірних попарно залежних повідомлень, позначимо , дамо розрахункову формулу
- •3.Джерело неперервних повідомлень
- •Висновки
- •Тестові запитання
- •Практичне заняття №1
- •Задачі для самостійного розв’язання
- •Лекція 3 Передача інформації з дискретними і неперервними каналами зв'язку
- •1.Продуктивність джерела дискретних повідомлень
- •2.Швидкість передачі інформації з дискретних каналів без перешкод. Оптимальне статистичне кодування
- •3.Швидкість передачі інформації й пропускна здатність дискретних каналів з завадами
- •4.Пропускна здатність двійкового симетричного каналу зв'язку з завадами
- •5.Швидкість передачі інформації неперервними каналами з завадами.
- •6. Пропускна здатність неперервного каналу з нормальним білим шумом
- •Пропускна здатність неперервного каналу зв'язку при довільних спектрах сигналів і завад.
- •Висновки
- •Тестові запитання
- •Практичне заняття №2
- •Задачі для самостійного розв’язання
- •Лекція 4 завадостійке кодування. Основні положення теорії завадостійкого кодування
- •1.Постановка задачі застосування завадостійких кодів
- •2.Класифікація завадостійких кодів
- •3. Основні числові характеристики завадостійких кодів
- •4.Кодова відстань і її зв'язок із кратністю помилок що виявляються й або, що виправляються.
- •Висновки
- •Лекція 5 Систематичні блокові лінійні коди
- •Загальні методи кодування і декодування систематичних блокових лінійних кодів
- •Код з парним числом одиниць
- •Інверсний код
- •Код з подвоєнням елементів
- •Коди Хемінга
- •Висновки
- •Лабораторна робота №1 вивчення принципу дії та дослідження завадостійкості радіосистеми передавання інформації із блоковим кодом
- •1 Мета роботи
- •2 Методичні вказівки
- •Позиції, що займають одиниці в одиничній матриці, вказують номера позицій контрольних символів, що використовуються у кожній перевірці на парність.
- •3 Опис лабораторної установки
- •4 Порядок виконання роботи
- •6 Контрольні запитання і завдання
- •Лекція 6 циклічні коди
- •Основні властивості циклічного коду й способи побудови
- •Способи кодування і декодування циклічних кодів
- •Матричне подання циклічних кодів
- •Висновки
- •Тестові запитання
- •Лабораторна робота №2 Вивчення властивостей і принципів побудови циклічних кодів.
- •1 Ціль роботи
- •2 Методичні вказівки
- •3 Порядок виконання роботи
- •5 Контрольні запитання.
- •Практичне заняття №3
- •Розв’язання. Визначимо кількість інформаційних і контрольних символів у кодовій комбінації:
- •Задачі для самостійного розв’язання
- •Лекція 7 Оптимальний когерентний прийом дискретних сигналів
- •1.Основні положення теорії оптимального приймання сигналів
- •Синтез, правила розрізнення сигналів у випадку приймання повністю відомих сигналів на фоні нормального білого шуму
- •Структурні схеми оптимальних приймачів
- •Обчислення завадостійкості (імовірності помилок розрізнення сигналів) оптимальних когерентних приймачів
- •Виходячи з цього, можна записати формули для обчислення імовірностей помилок в системах когерентного приймання фазовою, частотною та амплітудною маніпуляцією.
- •Висновки
- •3 Порядок виконання роботи
- •5 Контрольні запитання
- •Лекція 8 оптимальний некогерентний прийом дискретних сигналів і його завадостійкість
- •Модель лінії зі змінними параметрами
- •Алгоритм прийняття рішення при прийманні сигналів з випадковою початковою фазою
- •Приймання сигналів з випадковою початковою фазою і флуктуючою амплітудою
- •Некогерентні приймачі сигналів з використанням обробки за огинаючою
- •Некогерентний приймач ортогональних сигналів
- •Приймання сигналів з випадковою початковою фазою при використанні відносної фозової маніпуляції
- •Висновки
- •Тестові запитання
- •3 Порядок виконання роботи.
- •4 Структура звіту
- •5 Контрольні запитання і завдання
- •Практичне заняття № 4 "Когерентне и не когерентне приймання дискретних сигналів та його завадостійкість"
- •Приклади розв’язання основних типів задач
- •Задачі для самостійного розв’язання
- •Лекція 9 оптимальний і квазиоптимальНіЙ прийом неПерервних сигналів і його завадостійкість
- •1.Особливості приймання неперервних сигналів з аналоговою модуляцією
- •2. Завадостійкість прийому сигналів з амплітудною модуляцією
- •3.Завадостійкість прийому сигналів з фазовою модуляцією
- •4.Завадостійкість прийому сигналів з частотною модуляцією
- •Висновки
- •Лекція 10 цифрові методи передачі неЗперервних повідомлень
- •Імпульсно – кодова модуляція
- •2.Завадостійкисть систем зв’язку з імпульсно-кодовою модуляцією
- •3.Диференціальна імпульсно-кодова модуляція. Дельта модуляція
- •Висновки
- •Тестові запитання
- •Практичне заняття № 5
- •Приклади розв’язання основних типів задач
- •Задачі для самостійного розв’язання
- •Лекція 11 багатоканальні системи передачі інформації
- •1.Узагальнена структура багатоканальної системи зв’язку
- •2.Системи зв’язку із частотним поділом каналів
- •3Системи зв’язку із часовим поділом каналів
- •Висновки
- •Тестові запитання
- •Лекція 12
- •1. Поняття про багатостанційний доступ
- •Системи з часовим поділом каналів
- •Системи із частотним поділом каналів
- •Системи з кодовим поділом каналів
- •Асинхронно-адресні системи передачі інформації (аас)
- •Висновки
Способи кодування і декодування циклічних кодів
Циклічний (n, k)- код може бути отриманий шляхом множення простого k -значного коду, вираженого у вигляді полінома ступеня (n – 1), на деякий утворюючий поліном Р(х) ступеня (n – k).
Можлива й інша процедура одержання циклічного коду. Для цього кодова комбінація простого k- значного коду G(x) множиться на одночлен , а потім ділиться на утворюючий поліном Р(х) ступеня (n – k). У результаті множення G(x) на ступені кожного одночлена, що входить в G(x), підвищиться на (n – k). При розподілі добутку G(x) на утворюючий поліном Р(х) вийде частка Q(x) такого ж ступеня, як і G(x).
Результат множення й ділення можна представити в наступному виді:
(4),
де R(x)- залишок від розподілу · G(x) на Р(х).
Тому що частка Q(x) має такий же ступінь, як і кодова комбінація G(x), то Q(x) також є комбінацією простого к- значного коду.
Множачи обидві частини рівності (4) на Р(х) і роблячи деякі перестановки, одержимо
(5)
У правій частині (5) знак мінус перед R(x) замінений знайомий плюс, тому що вирахування по модулі два зводиться до додавання.
Таким чином, кодова комбінація циклічного (n, k)- коду може бути отриманий двома способами:
шляхом множення простої кодової комбінації ступеня (k – 1) на одночлен і додавання до цього добутку залишка, отриманого від ділення добутку на утворюючий поліном Р(х) ступеня (n – k);
шляхом множення простої кодової комбінації ступеня (k – 1) на утворюючий поліном Р(х) ступеня (n – k).
При першому способі кодування перші k - символів отриманої кодової комбінації збігаються з відповідними символами вихідної простої кодової комбінації.
При другому способі в отриманій кодовій комбінації інформаційні символи не завжди збігаються із символами вихідної простої комбінації. Такий спосіб легко реалізуємий, але в наслідок того, що в отриманих кодових комбінаціях не зберігаються інформаційний символи в явному виді, ускладнюється процес декодування.
У зв'язку з вищевикладеним на практиці звичайно використовується перший спосіб одержання циклічного коду.
Матричне подання циклічних кодів
Для формування рядків виробляючої матриці по першому способу утворення циклічного коду беруть комбінації простого -Розрядного коду G(x), що містять одиницю в одному розряді. Ці комбінації множаться на , визначається залишок R(x) від ділення отриманого добутку ·G(x) на утворюючий поліном і записується відповідний рядок матриці у вигляді суми добутку ·G(x) і залишку R(x). При цьому виробляюча матриця представляється двома підматрицями – інформаційної й додаткової :
.
Інформаційна підматриця являє собою квадратну матрицю з кількістю рядків і стовпців, рівного . Додаткова підматриця містить р = n - k стовпців і k рядків і утворена залишками R(x).
Виробляюча матриця дозволяє одержати - комбінацій коду. Інші комбінації виходять підсумовуванням за модулем «два» рядків виробляючої матриці у всіх можливих сполученнях.
Нехай, наприклад, необхідно побудувати виробляючу матрицю циклічного коду. Утворюючий поліном .
Інформаційна підматриця має вигляд
Для одержання першого рядка додаткової підматриці перший рядок інформаційної підматриці множиться на й ділиться на утворюючий поліном. Це відповідає виконанню операцій Залишок цих операцій 101 і складе перший рядок додаткової підматриці. Аналогічно визначаються інші рядки додаткової підматриці.
Остаточно виробляюча підматриця має вигляд
При другому способі утворення циклічного коду виробляюча матриця формується шляхом множення утворюючого полінома Р(х) ступеня р = n – k на одночлен і наступних – 1 зсувом отриманої комбінації.
Вибір утворюючого полінома. При побудові циклічного коду спочатку визначається число інформаційних розрядів по заданому обсязі коду. Потім визначається найменша довжина кодових комбінацій n, що забезпечує виявлення або виправлення помилок заданої кратності. Ця проблема зводиться до знаходження потрібного утворюючого полінома Р(х).
Як ми вже відзначали раніше, ступінь утворюючого полінома повинна дорівнювати числу перевірочних розрядів р.
Оскільки в циклічному коді ідентифікаторами помилок є залишки від розподілення багаточлена прийнятої комбінації на утворюючий багаточлен, то коректуюча здатність коду буде тим вище, чим більше залишків може бути утворено в результаті цього ділення.
Найбільше число залишків, рівне - 1 (крім нульового), може забезпечити багаточлен, що не приводиться, ступеня (тобто не ділиться ні на який інший багаточлен).
Відомо, що двочлен типу , у розкладання якого як співмножник повинен входити утворюючий багаточлен, володіє тією властивістю, що він є загальним кратним для всіх без винятку поліномів ступеня, що не приводяться z і розкладається на множники із всіх поліномів, що не приводяться,на ступені яких ділиться без залишку число z.
Найпростішим циклічним кодом є код, що забезпечує виявлення однократних помилок. Вектору однократної помилки відповідає одночлен , ступінь якого може приймати значення від 1 до n. Для того щоб могла бути виявлена помилка, одночлен не повинен ділитися на утворюючий поліном Р(х). Серед багаточленів, що не приводяться, вхідний у розкладання двучлена , є багаточлен найменшого ступеня + + 1. Таким чином, що утворить поліномом даного коду є двочлен Р(х) = х + 1. Залишок від ділення будь-якого багаточлена на х + 1 може приймати тільки два значення: 0 і 1. Отже, при будь-якій кількості інформаційних розрядів необхідний тільки один перевірочний розряд. Значення символу цього розряду забезпечує парність числа одиниць у кодовій комбінації.
Даний циклічний код з перевіркою на парність забезпечує виявлення не тільки однократних помилок, але й всіх помилок непарної кратності.
Наприклад, для коду з = 4 інформаційна підматриця буде мати вигляд
Додаткову матрицю можна побудувати по залишкам діленням останнього рядка інформаційної підматриці, доповненої нулями, на утворюючий поліном
Таким чином, додаткова матриця має вигляд
Отже, створюється матриця
Для побудови циклічного коду, що виправляє однократні або виявляє дворазові помилки, необхідно, щоб кожній одиночній помилці відповідав свій ідентифікатор, тобто залишок від ділення багаточлена прийнятої комбінації на утворюючий багаточлен. Оскільки кількість можливих однократних помилок дорівнює n, ділення на неприводимий багаточлен, ступеня може дати ненульових залишків, тією необхідною умовою виправлення будь-якої одиночної помилки є виконанням нерівності
(1)
Звідси визначається ступінь утворюючого полінома
(2)
і загальна довжина n кодової комбінації.
У таблиці наведене найбільші значення К и n для різних р.
Оскільки утворюючий багаточлен Р(х) повинен входити як співмножник у розкладанні двочлена , те, використовуючи відзначені раніше властивості цього двочлена, а також умову (2), можна вибрати утворюючий поліном.
Оскільки утворюючий багаточлен ступеня , що входить у розкладання двочлена може бути використаний як утворюючий поліном, необхідно, щоб для кожної з n однократних помилок забезпечувався свій, відмінний від інших, залишок від ділення прийнятої кодової комбінації на утворюючий поліном. Це буде мати місце за умови, якщо обраний неприводимий багаточлен, ступеня , будучи дільником двочлена , не входить у розкладання ніякого іншого двочлена +1, ступінь якого i < n.
Розглянемо як приклад спосіб вибору утворюючого полінома для побудови циклічного коду, що містить К = 4 інформаційні символи й забезпечує виправлення однократних помилок.
Відповідно до нерівності визначаємо загальну кількість символів n = 7 і кількість перевірочних символів =3.
Утворюючий поліном Р(х) повинен бути ступеня = 3 і входити як співмножник у розкладанні двочлена Тому що n = 7, то складові співмножники двочлена повинні бути не приводимими поліномами, ступені яких є дільниками числа z = 3. До чисел, на які z = 3 ділиться без залишку, ставляться 1 і 3. Отже, співмножниками двочлена повинні бути не приводимі поліноми, першого й третього ступенів.
.
Жоден зі співмножників ступеня 3 не входить у розкладання іншого двочлена ступеня n < 7. Тому кожний із цих співмножників може бути обраний як утворюючий поліном.
Утворюючі поліноми кодів, здатних виправляти помилки будь-якої кратності, можна визначати, користуючись наступним правилом Хемінга:
По заданому числу інформаційних розрядів , визначається число перевірочних розрядів , необхідне для виправлення однократних помилок, і обирається утворюючий поліном.
Розглядаючи отриманий (n. k)- код як некоригуючий n - розрядний код, визначають додаткові розряди для забезпечення виправлення однієї помилки в цьому коді й обирають відповідний утворюючий поліном.
Повторюється дана процедура стільки разів, поки не буде отриманий код, що виправляє незалежні помилки до даної кратності включно.
Однак код, побудований таким чином, є неоптимальним з погляду числа надлишкових символів. Більш придатний код Боуза – Чоудхурі, що забезпечує мінімальне число перевірочних символів при заданому k. Математична структура цього коду трохи відмінна від розглянутої раніше й характеризується більше складними пристроями для виявлення й виправлення помилок. Особливістю цього коду є те, що для будь-яких позитивних чисел z і існує циклічний код знатності з кодовою відстанню .