JOVANA
Library Glossary Getting Started Three Levels Fields How it works Mission
Join the mission
All guides

每條通道的速限:雜訊、SNR 與夏農定律

每一條電線、每一根光纖、每一片無線電的天空,都有一個明文公告的速限——而從沒有任何聰明的工程師打破過它。1948 年,夏農(Claude Shannon)寫下了一行數學式,把你的 Wi-Fi、你的 5G、以及九十億英里外的航海家探測器全都圈了進去。本篇從零打造這條界線:頻寬、雜訊、SNR,以及著名的 C = B·log₂(1+SNR)。讀完你會明白,為何現代所有的花招,不過是朝著一道無法移動的牆全力衝刺。

沒有人能翻越的那道牆

1948 年,貝爾實驗室一位沉靜的工程師——克勞德‧夏農(Claude Shannon)——發表了一篇標題平淡得有點欺騙性的論文《通訊的數學理論》,並悄悄地終結了一場延燒數十年的爭論。在夏農之前,工程師相信雜訊會在通道上罩下一層柔和的霧:把資料速率推得太高,錯誤就會悄悄滲入、接著洶湧而至,直到訊號被淹沒。更快就意味著更亂,而唯一的解藥就是無止盡地加大功率。夏農證明了一件更奇怪、也更優美的事。他指出每一條通道都附帶一個精確的數字——容量,以位元/秒為單位——在這個數字以下,你能讓錯誤少到你想要的任何程度;而在它之上,無論你多聰明,都無法可靠地通訊

把通道想成暴風雪中一條單線的山路。車道的寬度就是頻寬;雪就是雜訊;你車頭燈的亮度就是訊號功率。常識會說:雪更大,開慢一點總能通過。夏農令人震驚的主張是:存在一個精確的最高速度——也就是通道容量——在這個速度以下你能以完美的安全紀錄行駛;而只要超過它一公里/小時,遲早保證撞車。這條路有一個寫在物理定律裡的明文速限,而我們花了七十年打造緊貼著它的車。

描述任何通道的三個數字

在我們寫下速限之前,得先把三個量精確釘死。工程師常把這些字眼用得鬆散;夏農可不。把它們弄到一絲不差,整套通訊理論就會隨之解鎖。

頻寬(B)和資料速率不是同一回事,儘管日常用語常把兩者混為一談。頻寬是你的通道所佔據的頻率帶寬度,以赫茲為單位。一條語音電話線大約承載 3.1 kHz(300 Hz 到 3400 Hz);一個 Wi-Fi 通道可能寬 20、40、80 或 160 MHz。頻寬是無線電頻譜上的地皮——一種有限、受管制、被搶破頭的資源。關鍵在於,奈奎斯特取樣定理告訴我們,頻寬為 B 的通道每秒最多只能承載 2B 個獨立的符元;頻寬實實在在地限制了你能把訊號擺動得多快。

訊號雜訊比(SNR)是核心所在——有用訊號功率,與疊在其上、無可避免的雜訊功率之比:SNR = P_訊號 / P_雜訊。它是一個功率比值、無因次、通常很大,因此我們慣常用分貝表示:SNR(dB) = 10·log₁₀(SNR)。一條良好的 Wi-Fi 連結大約落在 25–40 dB;勉強堪用的只有 10 dB;航海家的下行鏈路則在接近 0 dB 處苦撐。雜訊從哪來?一部分是熱雜訊——任何高於絕對零度的溫度下電子的隨機抖動,一道你永遠關不掉的雜訊底線。其餘的則是干擾、放大器雜訊,以及這個不肯合作的宇宙。請仔細掌握SNR這個詞條,以及更廣義的訊號雜訊比條目。

位元錯誤率(BER)則是成績單。它是抵達時被翻轉的位元比例——0 被讀成 1,或反之。BER 為 10⁻³ 表示每一千個位元裡有一個出錯(聽起來是雜音,對一個檔案卻是致命的)。良好的資料鏈路要求在錯誤更正之後達到 10⁻⁶ 到 10⁻¹²。BER 是使用者真正感受到的東西,而它取決於你的符元離雜訊有多近。我們很快會詳談位元錯誤率曲線。

夏農–哈特利:公式本身

現在來到拱心石。對於一條頻寬為 B 赫茲、被加成性白高斯雜訊污染的通道,資訊能以任意小的錯誤流動的最大速率——也就是通道容量 C,單位為位元/秒——是:

        ┌──────────────────────────────────┐
        │                                  │
        │   C  =  B · log2( 1 + SNR )       │   bits per second
        │                                  │
        └──────────────────────────────────┘

   C   = channel capacity        (bits/s)   the SPEED LIMIT
   B   = bandwidth               (Hz)       width of the lane
   SNR = P_signal / P_noise      (ratio!)   NOT in dB

   Reliable communication is POSSIBLE   for any rate  R < C
   Reliable communication is IMPOSSIBLE for any rate  R > C
夏農–哈特利定理。兩個和善的材料——車道寬度與訊號清晰度——以及一道任何編碼都打不破的天花板。

仔細讀懂這個結構,因為每一項都名副其實。頻寬 B 坐落在對數之外——它乘上整體,所以容量與頻寬呈線性關係。車道加倍,速限就加倍。相對地,SNR 坐落在以 2 為底的對數之內。以 2 為底並非偶然:log₂ 計算的是你能分辨出多少位元的差異。若 SNR 很大,則 log₂(1+SNR) ≈ log₂(SNR),意味著你每把訊號功率翻成四倍,每個符元才多買到約2 個位元。功率給你的是邊際遞減的回報;頻寬則不會。

在「可能」這個詞裡藏著一個深刻的微妙之處。夏農定理是一個存在性證明,不是一份食譜。它保證在任何 R < C 之下存在某種編碼方案能達成無錯傳輸——卻不透露那個碼長什麼樣子,而且允許這個碼無限長(因此延遲也無限大)。整個錯誤更正碼領域——從 1950 年代的漢明碼,到 5G 內部的渦輪碼與 LDPC 碼——就是這場長達七十年的追尋:打造實用、有限、且不斷逼近這道已承諾卻尚未建成之天花板的碼。

實例演算:為何頻寬勝過蠻力

數字能把敬畏化為直覺。我們來估算一條貼近現實的 Wi-Fi 風格鏈路,再進行一場公平對決:先把同樣的努力花在功率上,再花在頻寬上,看看哪一邊勝出。先設一條頻寬 B = 20 MHzSNR 為 30 dB 的通道。第一步,把 SNR 從分貝換算出來——這正是人人會搞砸的一步。

BASELINE  ─────────────────────────────────────────────
   B   = 20 MHz = 20,000,000 Hz
   SNR = 30 dB  ->  10^(30/10) = 10^3 = 1000   (linear ratio)

   C = B · log2(1 + SNR)
     = 20e6 · log2(1 + 1000)
     = 20e6 · log2(1001)
     = 20e6 · 9.967
     = 199.3 Mbit/s        <- the speed limit of THIS channel

OPTION A: DOUBLE THE POWER  (30 dB -> 33 dB, SNR 1000 -> 2000)
   C = 20e6 · log2(1 + 2000)
     = 20e6 · 10.967
     = 219.3 Mbit/s         gain = +20 Mbit/s   (+10%)

OPTION B: DOUBLE THE BANDWIDTH  (20 MHz -> 40 MHz)
   (spreading the same power over 2x band halves SNR: 1000 -> 500)
   C = 40e6 · log2(1 + 500)
     = 40e6 · 8.968
     = 358.7 Mbit/s         gain = +159 Mbit/s  (+80%)
同一條通道,兩種花預算的方式。功率加倍只買到 10%。頻寬加倍——即便它稀釋了 SNR——卻買到 80%。

盯著這個結果看。把功率加倍——燒掉兩倍電池、在放大器裡產生兩倍熱量——只賺到區區 10%,因為功率被困在對數之內。把頻寬加倍卻幾乎讓容量翻倍,即使新增的頻寬稀釋了雜訊預算、把 SNR 砍了一半。這是無線工程中最重要的單一戰略事實,也解釋了整個產業的軌跡:802.11n 用 20/40 MHz、802.11ac 上到 80/160 MHz,而毫米波 5G 一把抓下數百 MHz,正是因為有槓桿效應的那根桿子是頻譜,而非功率。

BER 對 SNR:那道懸崖,與將它鏟平的碼

容量告訴你天花板;BER 告訴你,用你實際打造的那套有限系統,你究竟身在何處。把 BER 畫在縱軸(對數刻度),SNR 畫在橫軸,你會得到全部工程裡最重要的圖像之一——瀑布曲線。它因形狀得名:在低 SNR 時近乎水平、毫無希望;一旦 SNR 跨過某個門檻,便如瀑布般跌落數個數量級。

  BER
 1e-0 |XXX..
      |    \\..                          "waterfall" region
 1e-2 |      \\ \\.                       a 2-3 dB change in SNR
      |       \\   \\.                    drops BER 1000x
 1e-4 |        \\     \\.
      |  uncoded\\      \\. coded (LDPC/turbo)
 1e-6 |  (QAM)   \\        \\.
      |           \\         \\___________  error floor
 1e-8 |____________\\__________\\__________________  SNR (dB)
      0     5     10    15    20    25    30
                  ^                ^
            coding gain  <-------->  (often 5-10 dB saved)
BER 瀑布曲線。編碼把整條曲線**往左**推移——那段水平間距就是「編碼增益」,是你不再需要花的 SNR。夏農極限則是緊貼最佳曲線左側的一道垂直之牆。

瀑布曲線解釋了日常的一樁惱人之事:一條鏈路上一刻還穩如磐石,下一刻就無法使用,因為在懸崖邊緣,區區 2 dB 的衰落——一隻手蓋住天線、一輛經過的卡車——就能讓 BER 擺盪一千倍。它也解釋了為何工程師對最後那幾分貝如此執著。本軌道後面你會遇到的每一種技術,骨子裡都是一台把瀑布曲線往左推的機器——更靠近夏農之牆——好讓你在更低的 SNR 就達到目標 BER:

  1. 錯誤更正碼FEC):加入有結構的冗餘,讓接收端能修正翻轉。現代 LDPC/渦輪碼可換來 5–10 dB 的「編碼增益」——讓你逼近夏農極限到只差不到 1 dB。
  2. 匹配濾波:在判決時刻使 SNR 最大化的最佳接收端波形。匹配濾波器在你判定一個位元之前,就把訊號能量從雜訊中榨出最後一滴。
  3. OFDM:把一條寬而醜的通道切成數千條窄而乖巧的子通道,每條都近乎平坦、易於等化。OFDM讓你即使在通道有回音與衰落時,仍能逼近容量。
  4. 自適應調變:SNR 高時,切換到密集的 256-QAM 以多抓位元;SNR 下降時,退回堅韌的 QPSK。鏈路不斷把它的「車」重新調校到道路當下的狀況。

定律的邊界:功率、航海家,與夏農的贈禮

在極端處會發生什麼?把頻寬推向無限,你或許會猜容量無界成長——但它不會。把固定的訊號功率攤在越來越寬的頻寬上,會等比地稀釋 SNR,而容量會趨向一個僅由能量決定的硬性極限:C → 1.44·(P/N₀),其中 N₀ 是每赫茲的雜訊功率。這就是無限頻寬極限,並導出著名的、以每位元能量(E_b/N₀)表示的夏農極限 −1.6 dB:沒有任何系統,能在低於那道能量門檻時送出可靠的位元。那是一則訊息所能達到的最精瘦狀態。

這正是航海家探測器所棲身的領域。在九十億英里外,一具 23 瓦的發射機與一根有限的天線,讓地球上的深空天線收到的 SNR 在接近、甚至低於零分貝處徘徊——雜訊與訊號一樣強。以任何 1940 年代的直覺來看,通訊都該是不可能的。然而 NASA 至今仍收得到航海家,因為他們頻寬充裕而功率匱乏:他們在資料速率上幾乎不花本錢(每秒區區數十位元),卻在每個位元上揮霍巨大的編碼增益,深深坐落在夏農地圖中低 SNR、高頻寬的那個角落。這條公式不只是禁止;它還建議你該把資源花在哪。

退一步,感受夏農所做之事的奇異。他從未造過一台收音機。他證明的是一個極限——而工程裡的極限通常令人沮喪。然而他的極限是一份贈禮。在 1948 年之前,一位追逐一條雜訊鏈路的工程師根本不知道,失敗究竟意味著「再加把勁」還是「住手吧,沒希望了」。夏農遞給此後每一位工程師一把量尺:算出 C,與你的目標速率相比,你立刻就知道問題是出在物理(你超過容量了——放棄,或去買頻譜)還是工程(你還在容量之下——只是你的碼還不夠好)。正是這一個把「可能」與「不可能」分開的舉動,讓他被稱為資訊時代之父。