本應用筆記探討了L1頻段民用GPS應用中基于軟件的接收機的基本理論,包括對信號采集和跟蹤的討論,以及接收機中位同步的需求。然后詳細介紹了一種低成本的方法,通過USB加密狗和MAX2769通用GPS接收器為筆記本電腦添加GPS功能。
概述
通信和導航工程師對將軟件技術用于全球定位系統(GPS)越來越感興趣。1,2得益于超大規模集成 (VLSI) 開發,功能強大的 CPU 和 DSP 現在可以使用軟件實時檢測和解碼 GPS 信號。由此產生的基于軟件的GPS接收機在修改設置以適應新應用方面提供了相當大的靈活性,而無需重新設計硬件、選擇IF頻率或實施未來的升級。
利用MAX2769 GPS接收器RF前端,可以使用簡單的USB加密狗或PCI Express?(PCIe?)迷你卡格式為筆記本電腦增加低成本GPS功能。MAX2769將原始恢復數據傳輸到PC主機,PC主機在軟件中執行基帶解碼,從而消除了獨立GPS系統通常需要的基帶ASIC成本。簡而言之,MAX2769使設計人員能夠利用單芯片實現能夠處理GPS和伽利略信號的適配器。
本文概述了GPS系統的操作,并詳細介紹了Maxim基于軟件的GPS接收器解決方案。
全球定位系統基礎知識
GPS系統由24顆空間衛星或航天器(每顆由唯一的偽隨機噪聲代碼標識)、一個地面控制站和用戶設備(接收器)組成。對于民用GPS和伽利略應用,衛星通過位于1.1GHz的L57542頻段進行通信。3GPS 接收器需要至少四顆衛星的視線可見性才能建立可靠的位置。信號的采集和跟蹤非常復雜,因為每個信號都隨時間和接收器位置而變化。
圖1.民用GPS信號的信號生成塊使用擴頻方法發送信號。
全球定位系統信號
GPS系統實際上是一個簡單的擴頻通信系統。4 圖1顯示了民用應用的信號發生模塊。首先,將 50bps 的導航消息重復 20 次以產生 1000bps 的比特流。然后,重復信號通過長度為1023個芯片的唯一粗/采集(C/A)代碼進行傳播,芯片是應用偽隨機噪聲(PRN)碼的速率。結果是基帶信號為1.023Mcps。因此,GPS系統的43dB處理增益(G)允許其分辨遠低于熱噪聲水平的信號。
每顆衛星都被分配一個唯一的 C/A 代碼,也稱為黃金代碼。5由于黃金碼表現出優異的自相關和互相關特性,因此廣泛用于CDMA通信系統,如WCDMA和cdma2000?。基帶信號通過二進制相移鍵控(BPSK)進行調制,并上變頻至L1頻段進行傳輸。
信號采集方法分析
由于GPS是CDMA通信系統,因此接收器必須同步PRN碼作為解調數據的先決條件。代碼同步通常分兩步實現:用于粗碼對齊的代碼采集,以及用于精細對齊的代碼相位跟蹤。6更明確地說,GPS接收器必須首先確定它是否對某些衛星具有視線可見性。眾所周知,每顆衛星都由唯一的C / A代碼區分。當衛星可見時,采集確定信號的頻率和碼相位,進而建立相應的解調參數。接收到的信號頻率因多普勒效應而變化,7這導致頻率偏離其標稱值 5kHz 至 10kHz,具體取決于衛星相對于接收器的速度。
在接收器中,GPS信號首先下變頻為同相和正交(I和Q)分量。然后,一對I/Q相關器將I和Q基帶信號與本地生成的PRN序列相關聯。在一位的持續時間內積分后,I-Q相關器輸出相加以提供輸出決策變量。
每當決策變量超過某個閾值時,系統就會假定相應的采集成功,并進入跟蹤模式。否則,調整局部生成的PRN序列的相對相位和振蕩器頻率以更新決策變量,并重復上述過程。
雖然這種串行搜索方法的簡單邏輯結構使其在ASIC中實現是可行的,但由于搜索空間巨大,因此對于軟件實現并不實用。假設系統允許500Hz載波頻率偏移,多普勒頻率為10kHz,則軟件實現的搜索空間約為2×(10,000/500)×1023 = 40,920。顯然,在軟件中進行串行搜索采集是困難的。
一種使用軟件實現的更簡單的采集方法是頻域、并行碼相采集。該方法將多普勒頻率和碼相搜索組合成一個搜索,在PRN碼的快速傅里葉變換(FFT)之后,將所有碼相信息反映到頻域中。然后,我們只需要搜索多普勒頻率偏移上的空間,從而實現快速有效的軟件搜索。
系統首先將輸入信號與本地生成的正弦和余弦載波(分別為I和Q信號分量)相乘來實現此搜索。然后,I和Q分量組合為FFT模塊的復數輸入。此傅里葉變換的結果乘以 PRN 碼的 FFT 變換的共軛(PRN 生成器生成具有零碼相位的代碼)。在實踐中,可以將FFT操作和PRN代碼的生成制成表格,以降低計算復雜性。
最后,輸入信號和本地代碼的乘積(表示輸入頻率和載波頻率之間的校正)應用于傅里葉逆變換,其平方輸出反饋到決策邏輯。基于FFT的頻域已被證明是計算資源的低消耗者。對于前面提到的示例,采集的復雜性大約為 20,000/500 = 40 FFT 操作。
串行搜索方法具有方便的ASIC實現所需的簡單邏輯和控制架構。然而,這種方法所需的巨大搜索空間給軟件算法帶來了額外的復雜性。因此,串行搜索方法不是軟件GPS接收器的好選擇。相比之下,并行碼采集方法的低復雜度使其成為軟件實現的理想選擇。然而,它的邏輯架構比串行搜索方法復雜得多,因此很難在ASIC中實現。
跟蹤優化對齊
采集可建立 GPS 信號頻率和碼相參數的粗略對齊。因此,跟蹤的目的是優化這種對齊,以便系統可以使用精確的代碼相位和頻率信息解調數據。跟蹤包括碼相跟蹤和載頻跟蹤。
代碼跟蹤是通過圖 2 所示的延遲鎖緊環 (DLL) 完成的。DLL電路將輸入信號乘以PRN碼的三個本地副本(時間定位在±0.5芯片);這些副本表示相對于傳入信號的早期、及時和延遲到達。積分后,這些信號中的每一個都表示輸入信號與本地副本之間的相關性。然后選擇并保留具有最高相關值的那個(圖 3)。
圖2.在代碼跟蹤階段使用延遲鎖相環來幫助優化對齊,從而更好地解調具有精確代碼相位和頻率信息的數據。
圖3.DLL 電路將輸入信號乘以 PRN 代碼的三個本地副本(時間定位在 ±0.5 芯片),它們表示相對于輸入信號的早期、提示和延遲到達。然后選擇并保留具有最高相關值的那個。
載波頻率跟蹤由鎖相環(PLL)或Costas環路執行。8載波跟蹤的目的是將本地生成的頻率調整到輸入信號的確切頻率。
在采集和跟蹤建立初始同步后,系統可以解碼導航位。數據解調首先將1.023Mcps輸入信號解擴為1000bps位流。然后調用位同步以從 50bps 流中恢復 1000bps 信息。對于位同步,我們首先需要確定時間上位的開始。這是通過找到過零邊沿(零伏特)來實現的,該邊沿指示位的開始。當知道該邊緣時,我們可以以 1000ms 的間隔對 20bps 的輸入流進行分區,知道導航數據消息(50 位)的持續時間為 20ms。最后,對間隔為20ms的位樣本求和并取平均值,以解碼導航數據。
基于軟件的 GPS 接收器
傳統的GPS接收器在ASIC中實現采集、跟蹤和位同步操作,而基于軟件的GPS接收器通過在軟件中實現這些功能提供了更大的靈活性。通過簡化硬件架構,軟件使接收器更小、成本更低、更節能。軟件代碼可以用 C/C++、MATLAB? 和其他語言編寫,并移植到所有操作系統(嵌入式操作系統、PC、Linux 和 DSP 平臺)中。因此,軟件GPS接收器為移動手機、PDA和類似應用提供了最大的靈活性。
對于筆記本電腦,設計人員可以設計一個USB加密狗,以與任何帶有USB端口的筆記本電腦配合使用。對于帶有 PCIe 迷你卡連接器的較新筆記本電腦,他們可以在 PCIe 迷你卡上放置射頻前端并將卡嵌入 PC 中(圖 4a、4b)。PCIe 迷你卡接口包括一個 USB 端口,因此 USB 和 PCIe 迷你卡的前端適配器設計相似。主要區別在于支持 PCIe 所需的一些電源管理邏輯和不同的直流電壓(PCIe 為 3.3V,外部 USB 端口為 5V)。
圖4.USB 加密狗 (a) 和 PCIe 迷你卡 (b) 的典型適配器配置顯示了任一選項的簡單、低成本設計。
圖5b顯示了USB加密狗的框圖,展示了該解決方案的簡單性。該電路采用MAX2769通用GPS接收器、計數器和USB接口控制器來捕獲信號,將其轉換為數字信號,然后發送到主機PC。然后,軟件執行所有基帶功能,并在PC屏幕上顯示位置。因此,筆記本電腦成為功能強大的GPS設備,可以支持導航和豐富的基于位置的服務。
GPS 前端通過行業標準 USB 2.0 接口將數字化的中頻數據流傳輸到筆記本電腦中。軟件基帶程序使用輸入來計算位置定位,然后執行跟蹤。(該軟件的一個可能來源是Geotate。有關更多信息,請轉到:https://www.u-blox.com/en/product-resources。
為了提供通用接口,該軟件可以創建一個虛擬COM端口,以便它可以鏈接到大量現有的導航和定位應用程序。大多數GPS軟件包接口符合NMEA 0183,通常在Microsoft的Windows XP和Windows? Vista?操作系統上運行。此外,該軟件應該能夠處理所有可用的輔助數據,無論是通過行業標準協議還是專有客戶接口提供。
當今大多數筆記本電腦內部的CPU具有足夠的性能,可以滿足軟件GPS接收器的實時解碼需求。在 1GHz 奔騰? M 系統上,跟蹤時的平均處理器負載約為 6%;在 2.18GHz Core? Duo 處理器上,每秒執行更新時,處理器負載通常低于 5%。通過進一步的算法開發,可以將 CPU 使用率降低到 2% 以下。
圖5.在軟件GPS接收器中,捕獲的RF信號必須被放大,頻率混合,然后數字化(a)。在實際接收器中,低噪聲放大器會增強RF信號;然后,MAX2769將其混頻并數字化。最后,數據通過計數器和USB接口控制器傳輸,并插入USB協議以傳輸到主機PC(b)。
電路操作和性能
基于軟件的 GPS 接收器的射頻前端首先使用低噪聲放大器 (LNA) 放大微弱的輸入信號,然后將信號下變頻至大約 4MHz 的低中頻 (IF)(圖 5a)。這種下變頻是通過使用一個或兩個混頻器將輸入RF信號與本振信號混合來實現的。產生的模擬中頻信號通過模數轉換器(ADC)轉換為數字中頻信號。
MAX2769集成了所有這些功能(LNA、混頻器和ADC),從而顯著縮短了應用開發時間。該器件提供兩種 LNA 選擇:一種 LNA 具有極低的 0.9dB 噪聲系數、19dB 增益和 -1dBm IP3,適用于無源天線;另一個LNA的噪聲系數為1.5dB,增益和功耗略低,IP3略高,用于有源天線。2.8V 時的電流消耗最小,范圍為 13mA 至 18mA,具體取決于配置。
在放大器之后的RF上有一個外部濾波功能。然后,使用集成的 20 位 Σ-Δ 小數 N 分頻頻率合成器和 15 位整數分頻器直接對信號進行下變頻,以實現 12 至 <>MHz 之間幾乎任何所需的 IF。多種可能的IF濾波選擇適應不同的方案,例如伽利略的方案。
從RF輸入到IF輸出的總增益可以在60dB至115dB范圍內調諧或自動控制。輸出可選擇模擬、CMOS或有限差分。內部ADC具有8至44位的可選輸出。集成基準振蕩器支持使用晶體或溫度補償晶體振蕩器 (TCXO) 工作,可以使用 <>MHz 至 <>MHz 的任何輸入基準頻率。
基于MAX2769和賽普拉斯半導體USB控制器,提供簡單的USB加密狗參考設計,該控制器工作在24MHz基準(圖5b)。加密狗采用單個MAX8510 LDO來調節直流電源。3線(SPI?)數字總線用于對MAX2769的寄存器進行編程。或者,系統可以在八種硬連線預配置狀態之一下運行,無需SPI控制。
芯片上還有偏置有源天線的電路,然后在關斷模式下關閉該天線,以實現USB合規性。MAX2769可以檢測天線電源上是否存在電流消耗,并在LNA1和LNA2之間自動切換。這種靈活性在支持插入更靈敏的外部有源天線代替集成無源天線的應用中非常有用。設計人員只需將外部天線端口連接到 LNA2,將內部端口連接到 LNA1。插入外部天線后,MAX2769檢測電流消耗,并自動從LNA1切換到LNA2。
MAX2769多頻段GPS接收器為筆記本電腦、手機、PDA和汽車應用提供高性能、緊湊的解決方案。使用市售的GPS軟件包,總標稱電壓增益高達115dB,模塊噪聲系數為1.4dB,可提供-143dBm采集和-154dBm跟蹤靈敏度。
結論
軟件GPS技術為許多潛在應用提供了高度的靈活性和簡單性。為了支持這些可能性,MAX2769 GPS接收機RF前端為軟件GPS接收機的頻率規劃以及傳統的硬件實現提供了靈活性。當然,每種解決方案都有其優點和缺點 - 軟件GPS接收器需要高性能處理器和適量的內存。但是,通過軟件開發以及正確選擇時鐘和數據更新速率,可以最大限度地減少內存使用量。
審核編輯:郭婷
-
接收器
+關注
關注
14文章
2472瀏覽量
71914 -
gps
+關注
關注
22文章
2896瀏覽量
166242 -
RF
+關注
關注
65文章
3055瀏覽量
167028
發布評論請先 登錄
相關推薦
評論