📡 Полярні Коди — Ємність Каналу

Полярні коди (Аrikан 2009) досягають ємності Шеннона для двійкових симетричних каналів. Поляризація каналу: рекурсивний G_N = F^⊗n комбінує слабкі та сильні синтетичні канали. Послідовне скасування.

АлгоритмиІнтерактивний
Ємності синтетичних каналів · P пауза · R скинути · I змінити вигляд

Як це працює

Полярні коди застосовують ядро Арікана рекурсивно: G_N = F^⊗n, де F=[[1,0],[1,1]]. Це створює N синтетичних бітових каналів з N копій фізичного каналу W. При N→∞ ємність кожного синтетичного каналу I(W_N^(i)) поляризується до 0 або 1. Частка з ємністю →1 дорівнює I(W) — ємності фізичного каналу.

Ядро: F = [[1,0],[1,1]] G_N = B_N · F^⊗n (B_N = перестановка бітового обернення) Закодоване: x_1^N = u_1^N · G_N Оновлення SC: LLR_n(i) = f(LLR_{n-1}(2i-1), LLR_{n-1}(2i)) f(a,b) = 2·atanh(tanh(a/2)·tanh(b/2)) g(a,b,u) = (-1)^u · a + b

Заморожені біти займають K найгірших синтетичних каналів (найнижча ємність / найвищий шум). Інформаційні біти займають K найкращих. Декодер послідовного скасування обробляє біти зліва направо, використовуючи структуру LLR-метелика.

Часті запитання

Що таке полярні коди?

Полярні коди, винайдені Ерделем Аріканом у 2009 році, є першими доведено ємнісно-досяжними кодами для двійкових симетричних каналів. Вони використовують поляризацію каналу для утворення суміші надійних і ненадійних синтетичних каналів.

Що таке поляризація каналу?

Поляризація каналу — явище, коли рекурсивне об'єднання N копій каналу створює N синтетичних каналів, які поляризуються: деякі мають ємність близько 1 (надійні), інші близько 0 (зашумлені). При N→∞ частка ємнісних наближається до ємності вихідного каналу.

Що таке матриця конструкції полярного коду?

Матриця-генератор G_N = F^⊗n, де F = [[1,0],[1,1]] — ядро, ⊗n — n-та кронекерівська степінь (N=2^n). Кодоване слово x = u·G_N, де u — вхідне слово із заморозними бітами, рівними 0.

Що таке заморожені біти?

Заморожені біти — вхідні позиції, призначені найгіршим синтетичним каналам. Вони мають відоме значення (зазвичай 0) і використовуються декодером як апріорна інформація. Інформаційні біти займають найкращі синтетичні канали.

Як працює декодування послідовним скасуванням?

Декодування SC оцінює біти по одному від u_1 до u_N. На кожному кроці декодер використовує раніше декодовані біти і LLR каналу для обчислення відношення правдоподібності, після чого приймає жорстке рішення або примусово встановлює заморожений біт у 0.

Яка ВЧП полярних кодів проти LDPC?

При коротких блоках полярні коди зі SC-декодуванням мають дещо гіршу ВЧП, ніж LDPC або тюрбо-коди. SCL-декодування з CRC суттєво покращує продуктивність, зрівнюючи або перевищуючи LDPC при середніх довжинах блоку.

Де полярні коди використовуються на практиці?

Полярні коди використовуються в 5G NR для каналу керування (PBCH, PDCCH, PUCCH). Стандартизовані 3GPP у Release 15 (2017) — перші ємнісно-досяжні коди в комерційному стандарті бездротового зв'язку.

Яка формула ємності каналу АБГШ?

Ємність каналу АБГШ: C = (1/2)log₂(1 + ВСШ) біт на використання каналу, де ВСШ = потужність сигналу / потужність шуму.

Що таке швидкість поляризації?

Швидкість поляризації описує, як швидко ємності синтетичних каналів прямують до 0 або 1. Для стандартного ядра F показник дорівнює 0.5. Кращі ядра досягають вищих показників, покращуючи поведінку при скінченних довжинах.

Що таке SCL-декодування?

Декодування зі списком послідовного скасування (SCL) одночасно підтримує список з L кандидатів кодових слів. Зовнішній CRC вибирає правильного кандидата зі списку, різко покращуючи ВЧП ціною складності O(L·N log N).

Про цю симуляцію

Ця симуляція рекурсивно застосовує крок поляризації Аркана до N=2ⁿ синтетичних каналів, показуючи, як один зашумлений канал розщеплюється на суміш майже ідеальних і майже марних копій, а потім призначає K найкращих із них для передачі інформаційних бітів, заморожуючи решту до нуля. Перемикайтесь між стовпчиковою діаграмою поляризації, живим сканування BER-vs-SNR та діаграмою "метелика", що показує, як саме рекурсивна структура комбінування з'єднує вхідні біти з переданим кодовим словом.

🔬 Що показано

Стовпчикову діаграму пропускних здатностей синтетичних каналів із яскравими стовпчиками для позицій інформаційних бітів і тьмяними для заморожених, пунктирну лінію-орієнтир межі Шеннона, анімовану криву BER-vs-Eb/N0 та діаграму "метелика" рекурсивної мережі комбінування.

🎮 Як користуватись

Встановіть показник довжини блоку n (даючи N=2ⁿ), швидкість коду R та Eb/N0 повзунками, перемикайте випадний список Вигляд між Поляризацією каналу, Кривою BER та Діаграмою метелика, натисніть "Симулювати" для перерахунку, і "Запустити BER", щоб анімувати повне сканування BER по значеннях SNR.

💡 Чи знали ви?

Полярні коди стали першими кодами, для яких математично довели досягнення межі Шеннона при зростанні N — і всього через вісім років після статті Аркана 2009 року їх прийняв 3GPP для кодування керуючого каналу 5G NR, зробивши їх однією з найшвидших історій переходу від теорії до впровадження в історії теорії кодування.

Часті запитання

Чому лише деякі стовпчики на діаграмі поляризації сягають пропускної здатності, близької до 1?

Кожен крок поляризації розщеплює канал на "гіршу" копію (W⁻, більш схильну до стирання) і "кращу" копію (W⁺, менш схильну до стирання) через рекурсивне правило комбінування-та-розщеплення — після n кроків це повторюване розщеплення жене більшість синтетичних каналів до пропускної здатності ≈1 або ≈0, і саме цей ефект поляризації показують висоти стовпчиків.

Як симуляція вирішує, які позиції бітів заморожені?

Вона сортує всі N синтетичних каналів за пропускною здатністю і призначає верхні K (відповідно до обраної швидкості коду R×N) як інформаційні канали, заморожуючи решту до 0 — це саме правило побудови полярного коду, і підвищення повзунка швидкості коду видимо перемикає більше стовпчиків із тьмяних (заморожених) на яскраві (інформаційні) на діаграмі.

Чому підвищення Eb/N0 так драматично зменшує криву BER?

Вище Eb/N0 знижує еквівалентну ймовірність стирання, що подається в обчислення поляризації каналу, штовхаючи більше синтетичних каналів до пропускної здатності 1 і менше до 0 — оскільки BER оцінюється як середня ймовірність помилки лише по інформаційних каналах, кращий базовий SNR напряму означає, що менше слабких каналів використовується для реальних даних.

Що насправді представляє діаграма метелика?

Кожен етап червоно-синіх з'єднань представляє одне рекурсивне застосування ядра Аркана 2×2 F=[[1,0],[1,1]], а патерн перетинів (кожен вузол спарований з партнером на N/2^(етап+1) позицій) — це саме те, як вхідні біти u адитивно комбінуються (за модулем 2), утворюючи фінальне кодове слово x — така сама структура, яку реальний полярний кодер реалізує в апаратному забезпеченні.

Чому збільшення довжини блоку n змінює різкість патерну поляризації?

Кожен додатковий крок поляризації подвоює кількість синтетичних каналів і знову застосовує правило розщеплення до кожного наявного каналу, тож більше рекурсій штовхає пропускні здатності далі до крайніх значень 0 і 1 — тому більше n дає різкіше бімодальну стовпчикову діаграму, що і є теоретичним механізмом гарантії досягнення межі Шеннона полярними кодами при N→∞.