6.25: Коди повторення
- Пояснює код повторення для виправлення помилок.
Мабуть, найпростіший код виправлення помилок - це код повторення.

Тут передавач надсилає біт даних кілька разів, насправді непарну кількість разів. Оскільки ймовірність помилки р е завжди менше 1/2, ми знаємо, що більше бітів повинні бути правильними, а не помилково. Просте голосування більшістю отриманих бітів (звідси і причина непарного числа) визначає переданий біт точніше, ніж відправка його самостійно. Для прикладу розглянемо триразовий код повторення: для кожного біта b (n), що виходить з початкового кодера, канальний кодер видає три. Таким чином, бітовий потік, що виходить з канального кодера c (l), має швидкість передачі даних в три рази вище, ніж у вихідного бітового потоку b (n). Таблиця кодування ілюструє, коли помилки можуть бути виправлені, а коли вони не можуть бути використані декодером більшості голосів.
Таким чином, якщо один біт з трьох бітів отриманий помилково, приймач може виправити помилку; якщо виникає більше однієї помилки, канальний декодер оголошує біт 1 замість переданого значення 0. Використовуючи цей код повторення, ймовірність b
ˆb(n)≠0
дорівнює
3p2e×(1−pe)+p3e
Ця ймовірність помилки декодування завжди менше p e, некодованого значення, так довго, як
pe<12
Продемонструйте математично, що це твердження дійсно вірно.
3p2e×(1−pe)+p3e≤pe
Рішення
Це питання рівнозначне
3pe×(1−pe)+p2e≤1or2p2e−3pe+1≥0
Оскільки це парабола, що йде вгору, нам потрібно лише перевірити, де знаходяться її коріння. Використовуючи квадратичну формулу, знаходимо, що вони розташовані на 1/2 і 1. Отже, в асортименті
0≤pe≤12
частота помилок, що утворюються при кодуванні, менша.