精確GPS接收機訊號 設計基頻與採用新技術提高靈敏度

2006-05-05
為求提高GPS接收機效能,在設計基頻晶片時,考量重點之一在於基頻訊號處理。為達成訊號完善處理,對於衛星訊號的擷取、追蹤,及載波都普勒效應等影響因素皆須注意...
為求提高GPS接收機效能,在設計基頻晶片時,考量重點之一在於基頻訊號處理。為達成訊號完善處理,對於衛星訊號的擷取、追蹤,及載波都普勒效應等影響因素皆須注意。此外,透過新的硬體技術,可使靈敏度獲得30dB以上的增益,此即室內GPS。  

基頻訊號處理意味著藉由專用的硬體和軟體,來實現即時的高速演算法,利用此演算法來擷取和追蹤全球衛星定位系統(Global Position System, GPS)衛星訊號,解出50bps的導航資料,並提供C/A碼和載波的量測,以求出虛擬距離。基頻訊號處理的部分包含數值控制振盪器、相關器、累加器和數位訊號處理器。  

GPS的訊號處理會發生在每一個頻道,在天線端每一個可視的衛星會配置一個專屬的頻道,基頻晶片內的頻道數目會決定同時所能接收到的最大衛星數目;在目前的接收機架構中一般採用12頻道,亦即最多可以同時接收12顆衛星(圖1)。  

在將衛星訊號配置給特定的頻道之前,必須先知道有哪些衛星目前是可視的,一般有三個可能的模式來找尋可視衛星:熱開機(Hot Start)、暖開機(Warm Start)、冷開機(Cold Start)。在冷開機時,接收機並沒有任何輔助資料(Aiding Information),因此接收機會搜尋整個頻域和碼域,而花費數分鐘時間。  

在暖開機時,接收機內已經儲存有星曆內容(Almanc Data)和最後位置資訊,利用內建演算法可輕易計算出可視衛星有哪些。須特別注意的是,暖開機必須滿足下列兩個充要條件:接收機的位置距離最後一次定位的位置不能太遠,星曆內容資料也必須有效。  

在熱開機時,除了星曆內容和最後位置之外,GPS接收機還能獲得都普勒頻率飄移和參考頻率的修正資訊,而大幅縮短訊號擷取時間。一般的定義是GPS接收機未使用的時間小於5分鐘時,是處於熱開機階段,介於5分鐘~4小時的時間範圍內屬於暖開機階段,大於4小時以上則屬於冷開機階段。  

擷取衛星訊號  

衛星訊號擷取的首要目的,就是判別可視衛星有哪些,衛星訊號擷取和下列兩個變數有關:都普勒頻率飄移和PRN碼的相位移。假設接收到的訊號s是由n個可視的衛星訊號組成的:  

(方程式請見當期雜誌)  

當要擷取衛星k時,即是將本地產生的衛星k的C/A碼乘上s,利用C/A碼優異的互相關和自相關性,來找出正確的PRN碼的位移。在乘上本地產生的C/A碼之前,訊號必須先乘上本地產生的載波頻率,來移除因為衛星和使用者間的相對運動所產生的都普勒效應。一般因為都普勒效應所造成的頻率飄移介於±5kHz之間,在民用型的GPS接收機會以500Hz為單位來搜尋整個可能頻域,因此共有21個可能的頻率槽(Frequency Bin)。  

標準GPS接收機大約會花1~2分鐘的時間,來搜尋衛星和擷取衛星訊號。一般而言,若衛星訊號的強度小於-130dBm時,大多數的GPS接收機便無法鎖住衛星的訊號,因而造成無法定位或是定位誤差變大。傳統的GPS接收機在冷開機時必須搜尋頻域(Frequency Domain)和碼域(Code Domain)的空間(圖2)。  

A-GPS的觀念就是給GPS接收機哪些頻率槽必須搜尋,輔助的資料包含衛星的軌道資訊或預估的都普勒頻率飄移值。利用這些輔助資料,在頻域的搜尋空間可大幅降低,因此即使在冷開機時,GPS接收機仍可在很短時間內擷取衛星訊號。  

衛星訊號的取得就是利用對PRN碼的相位移,和都普列頻率飄移的粗估,來找出可視衛星。擷取演算法一般有下列兩種:時域相關演算(Time Domain Correlation)、頻域相關演算(Frequency Correlation)。時域相關演算法又可分為線性搜尋(Linear Search)和資料區塊法(Data in A Bank)。頻域相關演算法可分為完整的FFT處理法和半FFT處理法。  

追蹤衛星訊號  

追蹤的主要目的是將在擷取階段所得的粗估值精確化,隨著時間變化持續追蹤衛星訊號。PRN碼相位移的準確度會影響之後的虛擬距離計算。追蹤部分是由PRN碼追蹤(Code Tracking)和頻率/相位追蹤(Frequency/Phase Tracking)兩個區塊所構成。  

PRN碼追蹤主要是利用延遲鎖相迴路(Delay Lock Loop, DLL)進行,DLL可產生三個不同時序碼,分別是領先(Early)、適中(Prompt)和落後(Late)。數位基頻I/Q訊號會分別和這三個碼(E, P, L)相乘,在經過積分相關運算後,可以得到六個結果:IES、IPS、ILS、QES、QPS、QLS。這些碼經過碼的相乘再相加的結果,會等效於作相關性的運算。E、P和L這個碼在時間上會相差d/2個碼片,在一般的DLL設計中會將d值設為1。若:  

IES-ILS<0 →代表本地碼是超前PRN碼  

IES-ILS>0 →代表本地碼是落後PRN碼  

將運算的結果回授至數值控制振盪器,來調整本地碼產生器的輸出碼率(Code Rate),利用這種架構可將本地碼產生器和PRN碼的相位移維持在1/4碼片以內。  

圖3顯示一個典型的GPS接收機基頻訊號處理的區塊圖。  

消除載波都普勒效應  

要消除載波都普勒效應有兩種可行架構,即把鎖相迴路(Phase Lock Loop, PLL)放在中頻和把PLL放在基頻。  

1.在中頻消除載波都普勒效應  

(方程式請見當期雜誌)  

由於都普勒效應,如果以WIF的角速度觀察GPS中頻訊號在I/Q平面上的行為,可發現它會以角速度WDoppler向前進(或向後退),此種現象稱為相位旋轉(Phase Rotation)。  

要消除coswDopplert的影響,一般硬體的作法是利用PLL對鎖相,同時利用VCO輸出對混降頻,低通濾出基頻訊號。此基頻訊號不再有相位旋轉問題,亦即去除載波都普勒效應,但注意此時基頻訊號仍受調變都普勒效應影響。  

(方程式請見當期雜誌)  

2.在基頻消除載波都普勒效應:  

(方程式請見當期雜誌)  

由於都普勒效應,GPS訊號在I/Q平面上也會有相位旋轉現象。依照中頻消除載波都普勒效應的作法,乘以一個鎖相後VCO的輸出而得到:  

(方程式請見當期雜誌)  

如果可以用濾波器濾除第二項,便可消除的影響。但是的範圍為dc到12kHz,涵蓋了解展頻後的頻帶,根本無法分離上式兩個成分。是否能製造出(方程式請見當期雜誌)?由(方程式請見當期雜誌),如果有(方程式請見當期雜誌)  

、(方程式請見當期雜誌),則分別乘以一個鎖相而得的(方程式請見當期雜誌)  

、(方程式請見當期雜誌)相加其產物可以得到:  

(方程式請見當期雜誌)都普勒效應便可被移除。  

量測到達時間差  

假設手上有精準時間刻度的電子表,想利用它來量測4顆衛星參考訊號到達的時間差(圖4)。如果電子表的刻度不夠細,將無法鑑別這四個訊號到達的時間差。為了鑑別出衛星訊號在傳輸路徑上一公尺的差異,必須有時間刻度,相當於必須有頻率高達300MHz的時脈。300MHz的工作時脈就硬體實現或耗能上的考量都是不可行,因此必須使用轉向類比的方式來計時,這就是數值控制振盪器的由來。  

GPS的計時鐘一般採用數值控制振盪器,GPS的接收機要能偵測每個衛星於特定時點的訊號到達的時間差。有了高解析度的時鐘,接著就是要與接收訊號對位來調準它。所面臨的困難包括:  

.同一段時間內的訊號能量小於雜訊能量,訊號品質奇差,時間轉態的觀察被嚴重干擾(Jitter情況嚴重)。如果想單純用衛星訊號直接觸發來量測它的到位時間,會遇到的難題是衛星訊號已被雜訊掩埋而不可見。因此必須重建一個乾淨的模擬訊號來量測。  

.基頻訊號的碼片週期因為都普勒效應而為緩慢時變的,想觀察的基準轉態點被時變調變,因此重建的模擬訊號必須具有動態調整對位功能。  

.降頻後的基頻訊號因為都普勒效應,會有頻率飄移而造成相位旋轉現象,此現象必須予以消除。  

從上述三點可知,須要一個可以迴授動態調整的機制來做時間的對位,而此機制也須具有可以均化消除雜訊的功能。這也就是我們熟悉的鎖相迴路(圖5)。  

在鎖相之後,VCO的輸出就等於目標訊號的複製,再加上一點點自然雜訊(AWGN)在迴路濾波器頻寬內的成分鎖合成的訊號。此訊號類似於所要重建的訊號。由於VCO是單頻弦波輸出,波形上的任何一點(相位)會含有時間訊息,若能在需要時能準確偵測到VCO輸出波形上某一點的相位,就可推算出該特定點代表的時間。  

NCO的建構是以M-bit暫存器來顯示相位,每個時脈進來時,就以NCO_INCR(時變)的值累加,每次進位(Overflow)就意謂走完一個週期。所以選擇不同的NCO_INCR值會改變NCO的瞬時頻率,這與改變VCO頻率是一樣的道理。NCO的瞬時頻率為:  

(方程式請見當期雜誌)  

其中,  

.M:暫存器的位元數  

.fclock:參考時脈的頻率  

相位同步的必要條件是頻率同步。這意謂著,如果GPS訊號的頻率不屬於這些有限值之一,這個NCO便無法與該GPS訊號同步對位。當鎖相達到穩態時,這NCO是以一下子瞬時頻率超前,一下子落後的方式來逼近GPS訊號。這種相位上的誤差可視為一種干擾準確量測的雜訊,如果M值越大,fNCO的可能性越多,頻率間隔越細,越能趨近理想鎖相,雜訊也越小。一旦這種雜訊遠小於原始鎖相迴路頻寬內的雜訊時,再增大M值並無助於量測。一般GPS接收機設計中的M值大約為30。  

GPS應用中除了把VCO改成NCO外,因為GPS屬於CDMA系統用來對時比較快慢的,是有特殊意義的位元形狀(Bit Pattern),而不是單純轉態(Transition)的比較而已,所以不用PFD,而以早晚相關器(Early-Late Correlator)代之(圖6)。  

計算GPS定位虛擬距離  

以下將利用九個步驟,介紹虛擬距離如何計算出來:  

1.預先填入PRN碼產生器中暫存器的值,並猜測預設Carrier NCO增量與Code NCO增量。在此階段並不啟動自動迴授機制。  

2.觀察鎖定偵測(Lock Detector)的值,此時可拉長N增加累積值以利觀察。如果此時PRN碼與接收之GPS訊號的時序差不超過一個,可觀察到I/Q累加器會有顯著數值,但此數值會有I/Q旋轉消長情形產生。  

3.如果無法觀察到足夠大的值,則顯示初步對位失敗,維持兩個NCO的增量設定,時移PRN碼產生器後再觀察I/Q累加器的輸出值,直到有顯著數值產生為止。  

4.如果PRN碼產生器經過時移2,046次後仍無法對位,則改變Carrier NCO的增量,但Code NCO增量仍維持不變。持續步驟3,直到觀察到足夠大的值,顯示初步對位完成為止。  

5.開啟自動迴授機制。利用E-L Loop對Code NCO鎖相。利用Q-channel的解展頻輸出對Carrier NCO鎖相。Carrier NCO鎖相後,都普勒效應便被移除;Code NCO鎖相後,本地PRN碼和GPS衛星訊號準確對位。  

6.開始解調變導航資料位元而得知:該以那個碼片的Transition為發送參考點,以及衛星送出該點時的衛星時間TSATELLITE、該衛星發送該參考時點時的位置。  

7.待四個頻道以上的追蹤模組都完成鎖相解調後,在特定時間(TIC)要它們同時輸出Code NCO的累積相位值(θaccum)、相位增量(Δθ)、當時PRN碼產生器的輸出的碼片,以及基準碼片鎖相距的碼片數(k),依(式2)分別算出個別的tTARGET。  

(方程式請見當期雜誌)  

8.利用(式3)計算個別衛星至接收機的虛擬距離:  

(方程式請見當期雜誌)  

9.以該4個衛星為圓心,以虛擬距離為半徑,調整虛擬距離的位移值,以求4球交於1點,該點座標即為所求。  

提高室內GPS靈敏度  

此節主要介紹新的硬體技術,利用此技術在靈敏度方面可以獲得30dB以上的增益,亦即室內GPS的觀念。在傳統GPS接收機的設計中,每個頻道只有早相關器(Early-correlator)和晚相關器(Late-correlator) 兩個相關器。利用這組相關器只能搜尋1,023種可能的相位延遲中的一種。為了擷取衛星訊號,GPS接收機必須在各相鄰頻率槽(Frequency Bin)中,依序(Sequentially)搜尋1,023個碼片。為了縮短衛星訊號的擷取時間至合理值,通常在每一個頻率槽的停留時間不會超過1ms。如此短的停留時間會限制對弱訊號的偵測能力,在此架構下,只能在戶外且具有良好視界的環境下,才能鎖住衛星訊號。  

在戶外的GPS訊號強度,約在-126~-130dBm之間(與衛星在軌道的位置和大氣層條件有關)。假設室內的衰減量大約是20dB,對一個室內GPS接收機來說,必須能偵測到-146~-150dBm的訊號。要滿足此條件,在每一頻率槽所需停留時間大約是1秒鐘。20dB的衰減量只適用於低樓層磚造建築物,在較結實的建築物(例如高樓層或購物中心)內,訊號的衰減量大約是30dB,要解出如此弱的訊號,所需停留時間約為數十毫秒。  

GPS在室內若要運作,必須額外獲得20~30dB的處理增益(Processing Gain),因此GPS接收機不僅須獲得足夠輔助資料,且必須能以平行方式搜尋所有可能的碼空間。具備此種架構的接收機可在每一個可能的頻率槽停留足夠長的時間(數個ms)來得到較佳的靈敏度,而處理增益會隨著停留時間的增加而變大。  

現在假設透過韌體將一個傳統的GPS接收機在每一個頻率槽的停留時間設為10秒,在搜尋所有可能的相位延遲上,所須花費的最大時間為。在這段時間內衛星的星座圖早已改變許多,甚至所觀測的衛星的頻率飄移會達到5kHz的範圍。如此可得到一個結論,就是未配置大量平行相關器的傳統GPS接收機不可能使用在室內環境中。  

為了在短時間內完成搜尋程序,搜尋頻寬(Searching Bandwidth)不能太窄,較窄的搜尋頻寬,表示必須花費較多步驟來完成整個視窗的搜尋,此種做法會耗費相當長的時間和較大的電源消耗。一般來說,越窄的搜尋頻寬可得到較佳靈敏度,越寬的搜尋頻寬雖可較快完成搜尋程序,卻會得到較差的靈敏度。  

衛星訊號的擷取速度和靈敏度是成反比關係,較快的擷取速度通常會伴隨著較差的靈敏度。因此在較強的訊號區(戶外且視界無遮蔽的情況下)時,便可使用速度較快但靈敏度較差的擷取法。在弱訊號區(例如城市建築物的縫隙中)時,須採用速度較慢但靈敏度較佳的擷取法。在室內使用時,為達最佳靈敏度,必須採用長資料記錄的擷取法(Long Data Length Record Acquisition Method)來得到衛星訊號。  

利用A-GPS架構,可讓接收機在相同頻率槽內搜尋10倍長的時間,因而產生較高靈敏度,一般大約可改善10dB。真正的室內GPS接收機光靠這些輔助資料是不夠的,室內GPS需要大量的平行相關器(Massive Parallel Correlator)。藉由輔助資訊的提供對靈敏度的貢獻不會超過10dB,對室內應用而言,靈敏度的增加必須超過20dB。  

室內GPS硬體法內建大量相關器  

室內GPS硬體法,是利用硬體處理方式來實現高靈敏度GPS接收機(例如室內GPS)。硬體法主要是在基頻晶片內建數量龐大的相關器,以便在整個碼域上作即時的PRN碼的迴旋積分(Real Time Convolution)。  

傳統GPS接收機在每一頻道上只有一對早晚閘(Early-late Gate)相關器,因此在特定時間內只能觀測一個可能的PRN碼延遲,見圖7的灰色部分。在高靈敏度的GPS接收機中利用即時迴旋積分處理器來取代早晚閘相關器,在迴旋積分處理器中,每頻道具有200個相關器,因此可同時計算所有可能的碼延遲(在同一時間完成所有的迴旋積分)。在傳統GPS接收機的架構中,必須先在碼域上搜尋,以擷取衛星訊號之後才能追蹤它,但在室內GPS接收機中,擷取和追蹤階段可同時存在,因為不論實際的PRN碼延遲是多少碼片,迴旋積分處理器的輸出永遠存在一個峰值輸出。在戶外環境中,室內GPS接收機的訊號擷取幾乎可同時產生。  

在室內環境中,訊號經常會遭受到衰落(Fading)的現象,在傳統GPS接收機中藉由增加迴圈時間常數(Loop Time Constant)來追蹤較弱的衛星訊號,但訊號的衰落會造成頻繁的脫鎖(Out-of-lock)導致回到擷取階段,因此訊號累積的長度會再一次受到相關器資源的限制。在新的設計中,因為所有可能的相位移都會含在迴圈中,即使在衰落的情況下,仍可持續進行訊號的累積。利用較長時間的訊號累積(例如1秒),SNR值會有顯著增加。比起傳統GPS接收機採用的1ms累積長度,在1秒的累積長度下,可額外獲得將近23dB的靈敏度改善。  

在傳統GPS接收機中,每1ms CPU會存取相關器的值,造成CPU很大的負擔(頻繁的中斷請求)。利用專屬硬體來作長時間的訊號累積(可以高達數秒鐘),可以大幅降低CPU負載,因此毋須專用的CPU來處理GPS訊號,此種架構可協助將GPS功能整合在手機的基頻晶片中,與手機共享CPU資源。在語音通話狀態下,仍可進行定位計算。現在利用半導體的製程技術(0.18μm或0.13μm),可在基頻晶片內建高達兩萬個相關器。圖8為利用大量的平行相關器來增加靈敏度。  

DSP法利用FFT簡化迴旋積分  

DSP法是一個儲存和處理(Store-and-process)的技術,利用快速傅立葉轉換(Fast Fourier Transform, FFT)的方式,將時域上的迴旋積分簡化成在頻域上的乘法運算,DSP法不是即時處理,因此無法利用回授迴圈,所以DSP法必須仰賴對本地震盪器頻率的預先認知(圖9)。  

軟體GPS接收機實現擷取和追蹤  

在傳統GPS接收機中,擷取和追蹤都是利用硬體方式實現。現代GPS接收機設計則傾向採用軟體無線電的概念(Software Defined Radio, SDR),所謂的軟體無線電觀念,就是將ADC在整個射頻鏈中的位置盡可能靠近天線端。只要訊號被數位化之後,就可以使用功能強大的DSP和CPU來取代部分硬體功能。所謂的軟體GPS就是利用軟體方式來實現衛星訊號的擷取和追蹤(圖10)。  

GPS的基頻訊號處理既是數位(多位元)訊號處理,當然可全部透過純軟體方式由CPU執行,因此可省略相關器這種特殊應用IC。所有GPS訊號都隱身在相同訊號中,記錄一段訊號也就記錄了所有衛星訊號。  

對於不同衛星的搜尋鎖碼便可利用此段訊號,如果CPU執行速度很快,處理不同編碼相位(Code Phase)匹配相關的結果,可能較硬體分時尋找來得快。  

軟體GPS的問題除了要求CPU大量工作之外,恐怕無法即時接收衛星資料而進一步得到精確定位或解算速度(如果記錄長度夠長,足以算出速度)。但就手機應用而言,因為由基地台負責解算,衛星資料對手機並不重要,因此軟體GPS是一項非常被看好的技術,尤其在3G手機的應用。  

(詳細圖表請見新通序62期4月號)  

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!