Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теорія інформації.doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
3.88 Mб
Скачать

3.5 Неперервні коди

При використанні неперервних кодів кодування і декодування здійснюється неперервно над послідовностями символів. Найпростішим з цих кодів є код Хагельбаргера, або код (1/2). Це позначення відображає той факт, що в коді за кожним інформаційним символом іде один контрольний. Код Хагельбаргера здатен виправляти пакетні (серійні) помилки з довжиною пакетів, що дорівнює або менше b, при умові, що дві сусідні пакетні помилки розділені проміжком правильно сприйнятих символів довжиною, що дорівнює або більше 3b+1. Довжина пакета b кратна n ( в нашому випадку 2 ). Вибрана кратність визначає вид кодуючого і декодуючого пристроїв. Кодуючий пристрій коду (1/2) у випадку, якщо b=4, являє собою зрушуючий регістр з 4 ступенів із „зв’язком вперед”, на виході якого розташований синхронний комутатор СК (рис. 3.9). На вхід 1 цього пристрою подається послідовність інформаційних імпульсів, а з його виходу 3 знімається послідовність чергуючих інформаційних і контрольних імпульсів.

Рисунок 3.9 – Кодуючий пристрій для неперервного коду (1/2) для b=4

В якості прикладу розглянемо кодування послідовності інформаційних імпульсів (що читаються справа наліво) 10110111001. Вводячи цю послідовність в кодуючий пристрій, на виході 2 зрушуючого регістра одержуємо послідовність контрольних імпульсів, що породжується інформаційними імпульсами. Порядок цього породження показаний в табл. 3.12.

Таблиця 3.12 – Послідовність контрольних імпульсів

Після кроку

Комірки регістра

Вихід

1

2

3

4

1

2

3

4

5

6

7

8

9

10

11

1

0

0

1

1

1

0

1

1

0

1

-

1

0

0

1

1

1

0

1

1

0

-

-

1

0

0

1

1

1

0

1

1

-

-

-

1

0

0

1

1

1

0

1

0

0

1

0

1

1

1

0

1

0

1

На виході кодуючого проистрою, в свою чергу, одержуємо послідовність інформаційніх символів, закодовану рекурентним кодом (1/2) 110011011011101100001.

Д

11

екодуючий пристрій ( рис. 3.10) складається з двох частин. Перша з них виробляє виправляючу послідовність імпульсів, а друга виробляє саме виправлення. Розташований на вході декодуючого приладу синхронний комутатор розділяє приймаючу послідовність на інформаційні і контрольні символи. Інформаційні символи направляються на вхід 5, контрольні – на вхід 6. У підсумку на верхньому виході 7 першої частини декодуючого пристрою одержуємо зсунуту на чотири регістра послідовність інформаційних імпульсів, а на нижньому виході 9 – виправляючу послідовність символів. Якщо прийнята послідовність не містить помилок, то виправляюча складається з самих нуликів, так як перша частина декодуючого прострою, по суті справи, повторює кодуючий пристрій. При наявності помилок в прийнятій послідовності виправляюча послідовність буде містити одиниці на місцях помилок в послідовності перевірочних символів і одиниці, зсунуті на b/2 і b символів в порівнянні з місцями помилок в послідовності інформаційних символів.

Рисунок 3.10 – Декодуючий пристрій неперервного коду (1/2) для b=4

Частина схеми, що здійснює виправлення, містить, в порівнянні з попередніми схемами, два нових елемента. Це комірка заперечення „НЕ”, в якій відбувається заміна кодового символу на протилежний, і комірка „ І ” , яка, маючи три входи 10, 11, 12, видає на вихід 13 одиницю тільки в тому випадку, якщо одиниці поступають на всі три її входи. Обидві ці комірки, так само як і сумуюча комірка, - чисто операційні, і накопичення („зсуву”) символів в них не відбувається.

Розглядаючи дію описаного декодуючого пристрою на нашому прикладі, в якому будемо вважати викривленими в загальній послідовності (читаючи справа наліво) 3, 5 і 6-й символи, одержуємо на вході 4 послідовність 1100110110111101010101 (підкреслені викривлені символи). На нижньому виході 9 виправляюча послідовність створюється в порядку, показаному в табл. 3.13.

Таблиця 3.13 – Виправляюча послідовність

Після кроку

Комірки регістра

Вихід

8

Вихід

9

1

2

3

4

1

2

3

4

5

6

7

8

9

10

11

1

1

1

1

1

1

0

1

1

0

1

-

1

1

1

1

1

1

0

1

1

0

-

-

1

1

1

1

1

1

0

1

1

-

-

-

1

1

1

1

1

1

0

1

0

0

1

1

0

0

0

0

1

0

1

0

0

1

1

1

1

1

0

0

0

0

Так як поступаюча на вхід послідовність прийнята з викривленнями в 3-му контрольному і 2-му інформаційних символах, то згідно вищесказаному, одиниці у виправляючій послідовоності повинні були виникнути відповідно на 3, ( 2+ 4/2 ) і ( 3 + 4) – му місцях. Це і видно у вищеприведеній таблиці утворення виправляючої послідовності ( табл. 3.13 ). Виправляюча схема на виході 13, де вона проявляє свою конкретну дію, утворює послідовність символів.

10 1 1 1 1 0 0 0 0 0 1 1

11 0 0 0 0 1 1 1 1 1 0 0 - -

12 0 0 0 0 1 1 1 1 1 0 0 - - - -

13 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0

Ця послідовність сумується з зсунутою на 6 місць

(кроків) на вході 14 послідовністю інформаційних символів. Отже, виправляються дійсно 2-й і 3-й інформаційні символи, т.б. ті, які першопочатково передбачались викривленими.

Згідно приведеної схеми ( рис. 3.10 ), в декодуючому пристрої інформаційні символи зсуваються на 3b/2 місць ( комірок ), що відповідає 36 символам в передаючій послідовності. Ця обставина і визначає величину необхідного „захисного проміжку” 3b+1 безпомилково сприйнятих символів.

Основний недолік розглянутого коду – його мала ефективність ( відношення k/n). Збільшення ефективності коду несе за собою ускладнення схеми декодуючого пристрою.