解決方案
一顆 GPS 衛星以約相當於家用燈泡的功率發射,距離兩萬公里遠。等訊號抵達地球時,大約比熱雜訊底層低 50 dB——比周遭的靜電雜訊弱十萬倍——因此看起來根本不可能接收,而一個人人可用的導航系統本不該行得通。然而這些訊號就在我們四周,無論天氣如何、高度多高,地圖應用程式在飛行途中依然可用。
GPS 靠一個技巧解決了這個問題。每顆衛星把它緩慢的 50 bit/s 資料流混入一個快速的偽隨機 C/A 碼,該碼每秒重複一千次,而接收器早已知道這個碼:公開的 IS-GPS-200L 規格表 3-I 列出了每顆衛星的展頻碼序列。產生本地複本並將其與接收到的雜訊做相關運算,會讓隨機雜訊平均為零,而真實訊號則累加起來,把這聲細語從靜電雜訊中拉出來。不同衛星使用不同的碼——分碼多重存取——因此約三十顆衛星能共用一個頻段。
由於民用碼是公開的,而衛星只是廣播、發後不理,沒有人能對使用收費、撤銷某個聽眾,甚至知道有人在收聽。這種組合——一個物理上可接收的細語,卻沒有收費關卡——正是讓 C/A 碼(原本設計為軍用接收器的低解析度墊腳石)成為大多數民用 GPS 基礎的原因;更精確的軍用 P 碼僅靠其序列的保密性保護,而非靠經濟手段。
達成了什麼
公開民用碼:任何接收器都能免費把這聲細語從雜訊中相關運算出來
為何奏效
將接收到的靜電雜訊與已知碼的本地複本做相關運算,會讓雜訊平均為零,而訊號則累積起來,把低於雜訊 50 dB 的廣播提升到可聽見的程度。
規格是公開的:IS-GPS-200L 列出了每顆衛星的 C/A 展頻碼序列,因此打造接收器無需逆向工程、授權或付費。
發後不理的廣播沒有計量點——沒有訂閱、沒有授權、無法知道誰在收聽——因此沒有可阻止採用的收費站。
在每秒一百萬晶片的碼之下,緩慢的 50 bit/s 資料速率讓已知序列穩定得足以鎖定,這正是讓微弱民用頻道能承載可用導航訊息的原因。
可套用之處
當關鍵在於公開的知識而非許可時,開放格式會產生複利效應:沒有收費站、沒有授權,意味著每個製造商都能依此打造,而標準便成為基礎設施。
後續發展
這個開放訊號讓 GPS 成為預設的定位公用設施:約三十顆衛星服務整個地球,而該報導指出,全球超過一半的人口從未經歷過沒有它的生活。介面規格始終保持公開——IS-GPS-200L 的表 3-I 至今仍列出每顆衛星的碼——因此接收器一直都能從零打造。業餘愛好者如今正是這麼做:Phillip Tennen 的軟體定義無線電石膏接收器系列於 2024 年 4 月在 Hacker News 獲得 552 點與 128 則留言,把 GPS 視為任何人都可收聽的公開廣播。
追溯依據
參考來源
- Building a GPS Receiver, Part 1: Hearing Whispers axleos.com · axleos.com ·
- Building a GPS Receiver, Part 1: Hearing Whispers (Hacker News discussion) Hacker News · news.ycombinator.com ·