Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курс лекцій із ТІК 2 А5 кор.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
2.59 Mб
Скачать
    1. Узагальнені завадостійкі коди. Контрольне додавання

Під узагальненими розумітимемо коди, призначені для виявлення (виявлення і виправлення) пакетних спотворень з кратністю b, в яких використовуються алгоритми кодування і декодування, аналогічні відповідним алгоритмам двійкових кодів, але по відношенню до узагальненого b − розрядного символу.

Для побудови цих кодів початкова кодова послідовність І1 І2 …Іk розбивається на n = m/b груп з розрядністю b, усередині яких групуються помилки:

І1………. Іb, Іb+1………І2 ........ Іm-b+1 ……Іk

1–й пакет 2–й пакет n–й пакет

Двійкові символи, що входять в один пакет, розглядаються як bзначний символ, який може набувати будь-яке із s значень від 0 до 2b–1, де

s = 2b.

Як буде далі показано, операція над узагальненими символами виконуються до деякому модулю, тобто шукається залишок від розподілу результату операції на деякий модуль. Для розрізнення відповідних узагальнених і двійкових кодів введено в їх назву слово «лишок», тобто говорять про лишковоХеммінгові (ЛХ), лишковоматричні (ЛМ), лишковорекурентні (ЛР) коди. Слід зазначити, що лишкові–циклічні коди відомі під назвою кодів Ріда-Соломона – на ім’я авторів цих кодів.

Контрольне додавання є одним з найпоширеніших методів контролю цілісності інформаційних об’єктів (виявлення спотворень у цих об’єктах).

Під час кодування початкові базові кодові слова розбиваються на m b–розрядних узагальнених символів і записуються у вигляді α1, α2,... αm, де αi ≤ 2b–1, а N = bm. Потім здійснюється додавання цих символів за певними правилами, наприклад, додавання по модулю (найчастіше використовується їх порозрядне додавання за модулем 2). Символи ознаки цілісності (контрольні ознаки) (у загальному випадку їх k) дописуються до початкового коду, за рахунок чого утворюється n−символьне БКС (n = m + k).

Під час декодування також здійснюється додавання m символів за тими ж правилами і знову обчислюються символи – ознаки цілісності (контрольної ознаки) для прийнятого (зчитаного) інформаційного об’єкта. Знову розрахована ознака цілісності порівнюється з прийнятою (зчитаною) ознакою цілісності. У разі їх збігу робіться висновок про відсутність спотворень, інакше – про їх наявність.

  1. Узагальнені завадостійкі коди. Перемежування та виграш від кодування

    1. Метод перемежування

При використанні завадостійких кодів у реальних каналах зв’язку виникають певні ускладнення, пов’язані, наприклад, з тим, що спотворення в повідомленнях найчастіше виникають не у вигляді поодиноких, а у вигляді пакетів (спалахів) спотворень (групування спотворень).

Орієнтовну кількість (оцінку кратності) спотворень Nсп у повідомленні із загальною довжиною N символів можна найти з такого виразу:

Nсп = NРсп,

де Рсп  імовірність спотворення одного двійкового символу, яка визначається через співвідношення сигнал / завада в даному каналі передачі (приймачі). Тому в разі використання коригувальних кодів, які спроможні виявляти не більше ніж спотворень, тобто при

Nсп= NРсп,

допустиму довжину повідомлення слід обмежувати величиною

Nдоп ≤ /Рсп.

Але такий підхід не завжди є продуктивним, принаймні з двох причин. Перша полягає в тому, що через групування впливів (завад) є імовірним групове спотворення (пакет спотворень) при будь-якій довжині повідомлення N, а його довжина може перевищити можливості коду , отже, зменшення довжини повідомлення скоріше за все не дасть бажаного ефекту. По-друге, спроба передавання інформації короткими повідомленнями може мати в наслідок зменшення пропускної спроможності каналу передачі даних.

Тому для каналів з групуванням спотворень, часто застосовують метод перемежування символів, або декореляцію спотворень. Він полягає в тому, що символи, які входять в одну кодову комбінацію, передаються не послідовно один за одним, а перемежовуються символами інших кодових комбінацій. З цією метою усі повідомлення перед передачею в канал зв’язку розбивають на певні кодові комбінації  базові кодові слова (БКС), до кожного з яких застосовують процедури завадостійкого кодування. З цих БКС формується узагальнене кодове слово (УКС) – кадр, так що символи, які входять в одне БКС, передаються не безпосередньо один за одним, а перемежовуються символами інших БКС (здійснюється перекомпоновка повідомлень шляхом переміщення двійкових чи групових символів повідомлення).

При перемежуванні початкові перші λ символів вважаються першими символами кожного з λ базових кодових слів, другі λ символів вважаються другими символами і т. д.

А = α11, α21, … ,α λ1, α12, α22, … , α λ2, , α1n, α2n, αλn.

Технічно перемежування найчастіше реалізують шляхом запису усіх символів кадру рядками в матрицю (табл. 5.1), яка складається із λ рядків та n стовпчиків (технічно це сукупність з λ n−розрядних регістрів), так що

М = λ·n,

і наступним читанням для видачі в канал − за стовпчиками.

Запис символів кадру в матрицю. Таблиця 5.1

Номери регістрів

Розряди регістрів

1

α11

α12

.......

α1n

2

α21

α22

.......

α2n

..............................................................................................................

λ −1

α (λ -1)1

α (λ -1)2

.......

α(λ–1)n

λ

α λ 1

α λ 2

.......

αλn

Для кожного з λ таких базових кодових слів розраховується своя контрольна ознака. Отримані у такий спосіб λ контрольних ознак приформовуются до початкового повідомлення. Декодування здійснюється також відносно кожного з λ базових кодових слів.

Кількість БКС в одному УКС прийнято називати глибиною перемежування λ. У каналі зв’язку за рахунок перемежування інтервал між символами, що входять в одне БКС, дорівнює (λ  1) символів.

Якщо інтервал між символами, що входять в одну комбінацію, зробити більшим від максимально можливої довжини групи спотворень, то в межах кожного із БКС групування спотворень не буде. Група спотворень розподілиться у вигляді поодиноких спотворень на групу БКС. Поодинокі спотворення в БКС будуть легко виявлені (виправлені) декодером.

Не важко показати, що при перемежуванні довільно розташований пакет спотворень довжиною в (λ–1)·λ + 1 символів завжди викривить не більше ніж один із символів у кожному з λ базових кодових слів, що легко виправляється (див. зафарбовані символи в послідовності А та в таблиці 5.1).

Методика визначення глибини перемежування. Для визначення глибини перемежування λ слід урахувати:

1. При перемежуванні такої глибини довжина n кожного із базових кодових слів при використанні узагальненого кодового слова довжиною в N символів не буде перевищувати величини

n = N/λ.

2. Для кожного із БКС вираз (1) перетвориться на:

nвик = nРсп,

звідкіля з вимоги, що ця кількість спотворень не повинна перевищувати можливості коду із виявлення спотворень : nсп ≤ , неважко визначити допустиме значення довжини БКС n:

n = [ / Рсп],

де позначка [х] означає обчислення цілої частини від х.

3. Визначення допустимих параметрів базового кодового слова. Знаючи довжину базового кодового слова n, неважко визначити потрібку кількість надлишкових символів k (або використати його задане властивостями коду значення) і визначити у такий спосіб усі допустимі параметри базового кодового слова чи завадостійкого коду, тобто величини n, m, k.

4. Визначення глибини перемежування. Для цього врахуємо, що глибина перемежування λ повинна бути такою, що, в наслідок формування λ базових слів у кожному з них могло б виникнути така кількість спотворень, яка не перевищує можливостей коду щодо їх виявлення, тобто

,

де в чисельнику величина –загальна довжина повідомлення з довжиною суто інформаційної частини М та кількістю надлишкових символів за рахунок збільшення кожного із λ базових кодових слів на k надлишкових символи. Тоді вираз у чисельнику означає кількість можливих спотворень в усьому інформаційному повідомленні після розбиття на λ базових кодових слів і застосування до кожного з них заданого чи обраного коду з кількістю надлишкових символів k.

З останнього виразу неважко отримати

.

У разі застосування кодів для виявлення чи виявлення та виправлення поодиноких спотворень (коди Хеммінга, з контролем на парність та їм подібні) величину слід обирати такою, що = 1.

У разі ж застосування кодів для виявлення та виправлення групових спотворень величину слід визначати, виходячи з властивостей коду. Наприклад, для циклічного коду, в якому = k

За рахунок перемежування можна виявляти (та для певного класу кодів − виправляти) групи (пакети) спотворень довжиною в (λ  1) символ (біт).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]