📘《AI 時代系列(6):進階通訊工程——邁向 2035 年太空星鏈網路時代》
26/100 單元:Turbo Code 🚀 接近香農極限的經典
—— 3G/4G LTE 的靈魂 × 近乎完美的錯誤保護**
________________________________________
🌟 一、單元導讀|為什麼 Turbo Code 重要?
1993 年,兩位法國工程師提出 Turbo Code:
📌 第一次讓人類發現「靠近香農極限 0.5 dB 的 FEC 是可能的」。
這震撼了整個通訊界。
在成為 LTE 之前,Turbo Code 就已經:
• 打敗卷積碼
• 逼近率失真界限
• 在低 SNR 通道表現驚人
• 改變錯誤控制編碼的歷史
更關鍵的是:
👉 它奠定了 LDPC、Polar 的演算法精神。
Turbo Code 是 3G(WCDMA, HSPA)與 4G LTE 的主力,
直到 5G 時代才由 LDPC / Polar 接棒。
________________________________________
🌀 二、Turbo Code 是什麼?核心結構是什麼?
Turbo Code =
📌 兩個(或多個)遞迴卷積碼(RSC)
+
📌 一個交織器 Interleaver
+
📌 Soft-in Soft-out(SISO)疊代式解碼器
其結構長這樣:
┌──────── RSC1 ─────────┐
input bits ─┤ ├─→ parity1
└──────── RSC2 ─────────┘ (after interleaver)
↑
Interleaver
兩個 RSC(Recursive Systematic Convolutional Codes)
負責產生兩組 parity bits。
Interleaver 則負責讓第二個 RSC 看到不同的輸入順序,
→ 產生“看似獨立”的 redundancy。
這兩組 redundancy 疊加後,就能大幅逼近香農極限。
________________________________________
🧠 三、Turbo Code 解碼:Iterative Decoding 的靈魂
Turbo Code 最偉大的創新不是編碼,而是:
🚀 Iterative decoding(疊代解碼)
以前的 FEC(像卷積碼)都只能一次解一次。
但 Turbo Code 創造了:
📌 兩個 SISO 解碼器
📌 互相交換 extrinsic information
📌 一次又一次 refine 估計
📌 最終得到接近 ML 的結果
經典 Turbo 解碼流程:
LLR → SISO1 → extrinsic → interleave → SISO2 → extrinsic → 回到 SISO1 → ...
類似神經網路循環更新。
因此,也影響了後來的“algebraic iterative decoding”的誕生(LDPC)。
________________________________________
🎯 四、Turbo Code 為何能接近香農極限?
因為它做到了三件事:
✔ 1. RSC + 交織器 = 近似獨立編碼
兩個編碼器看到不同排列的資料,
→ 產生“獨立性”的錯誤保護。
✔ 2. Soft Decision SISO
不是硬解 → 是 LLR(Log-Likelihood Ratio)交換
→ 讓次數疊代後逼近 ML 解。
✔ 3. 低錯誤平坦區(Floor)
在低 SNR 區域高度接近香農界限。
Turbo Code 的性能曲線有兩段:
• 水瀑區(waterfall):表現接近香農極限
• 錯誤地板區(error floor):高 SNR 時 BER 無法繼續下降
這是它最著名的特性。
________________________________________
📡 五、Turbo Code 在 3G/4G 的應用
📱 3G WCDMA / HSPA
Turbo Code = 主力 Data Channel 編碼(高可靠度)
📶 4G LTE
Turbo Code = 上行(UL)主力編碼
(下行用 LDPC,但是 LTE UL 仍以 Turbo 為核心)
🛰️ 衛星通訊
部分 LEO/GEO 仍用 Turbo Code(尤其 DVB-RCS / 航太系統)
原因:
✔ 在低 SNR、長距離通道表現超強
✔ 適合深度衰落(Rayleigh / Rician)
✔ 相較 LDPC 解碼器更適合低資料率環境
________________________________________
🔍 六、Turbo Code 的缺點(為何 5G 淘汰它)
雖然它超強,但仍被 5G 淘汰,原因是:
❌ 1. Error Floor(錯誤地板)
在高 SNR 區域性能無法再改善
→ 影響 eMBB 高可靠度.
❌ 2. Iterative decoding 複雜(功耗攻擊)
Baseband decoding 需要大量迭代 → 高能耗。
不適合 5G 低延遲(URLLC)。
❌ 3. LDPC / Polar 更強
LDPC:適合下行,高吞吐
Polar:適合控制訊號,高可靠度
=> Turbo Code 失去市場。
________________________________________
🛰️ 七、Turbo Code 在 6G/NTN 還有價值嗎?
令人意外的是:
📌 LEO 衛星 uplink、Doppler heavy channel、低速 telemetry,Turbo Code 仍非常強。
理由:
✔ Iterative decoding 對 Doppler 具抗性
✔ RSC 遇多路徑 fading 仍表現優秀
✔ 低速率不會遇到 error floor 問題
✔ 錯誤傳播小(比 LDPC 更好調教)
因此,Turbo Code 在:
• LEO Ka-band uplink
• UAV telemetry
• 火箭遙測
• 深空通訊後備編碼
仍是國際標準的一部分。
________________________________________
🧩 八、ASCII:Turbo Code 結構(Rate 1/3)
input bits
│
┌───┴────────────┐
│ │
RSC1 Interleaver
│ │
│ RSC2
│ │
Systematic bit Parity2
Parity1 (from RSC1)
輸出通常是:
• 系統位元(原始 bit)
• parity1
• parity2
Rate = 1/3(可 puncture 提升成 1/2)
________________________________________
📝 九、小測驗
(1)Turbo Code 最核心的創新是什麼?
平行級聯的 RSC 卷積碼 + 大型交錯器 + 迭代式 Log-MAP 軟解碼。
這三者組合首次讓實作碼能 逼近香農極限 1 dB 內,是其革命性所在。
________________________________________
(2)Turbo Code 的編碼器由什麼組成?
兩個平行的 RSC(Recursive Systematic Convolutional)碼,其中
• 一個吃原序列
• 一個吃交錯後的序列
再加上 交錯器(Interleaver)與系統位元輸出 即構成完整 Turbo 編碼器。
________________________________________
(3)Turbo 解碼器所交換的是什麼量?
外資訊(Extrinsic Information / Extrinsic LLR)。
每個 SISO 解碼器輸出「除了自己已知資訊外的新可信度」,用於下一輪迭代。
________________________________________
(4)Turbo Code 最著名的性能曲線特徵?
瀑布區(Waterfall):SNR 過臨界值後 BER 急遽下降。
誤碼平台(Error Floor):高 SNR 條件下 BER 不再下降,是 Turbo 的弱點。
________________________________________
(5)為何 5G 不再採用 Turbo Code?
1. Error floor 高 → 無法滿足 BER 10⁻⁶~10⁻⁹。
2. 解碼延遲不可控(需多輪迭代)→ 不符 URLLC。
3. 硬體不易平行化 → 無法支撐 5G Gbps 級吞吐量。
4. LDPC / Polar 更適合 5G 架構 → 直接取代 Turbo。
________________________________________
(6)Turbo Code 在 NTN(非地面網路)仍適合嗎?
有限度適合,但不是最佳選擇。
Turbo 在低 SNR 下效果好,但 高延遲與 error floor 使其不利於 LEO/NTN 的高速與高可靠度需求。
實務上 NTN 更偏好 LDPC(高吞吐) 與 Polar(短碼)。
______________________________________
🌟 十、小結:Turbo Code 的價值
📌 Turbo Code 是人類第一次真正「撞到香農極限」。
📌 它讓 3G / 4G LTE 的資料傳輸高可靠度成真。
📌 也是現代 LDPC、Polar 的精神前身。
📌 在衛星與低資料率仍然是強大的 FEC 武器。
一句話:
懂卷積碼是進入**現代編碼(Modern Coding Theory)**大門的第一張門票,但進門後,LDPC 和 Polar 會帶你去完全不同的房間。






















