本專利涉及一種導航定位的信號接收處理系統(tǒng),具體涉及一種北斗二代與GPS公用頻點實時信號接收處理系統(tǒng)。
背景技術:
::《2006年中國航天白皮書》宣布將在未來5年啟動五大航天工程,其中具有軍事用途的第二代“北斗”衛(wèi)星導航系統(tǒng)將在4年內完成部署。有專家表示,二代“北斗”衛(wèi)星系統(tǒng)部署完成后,中國將能對小目標發(fā)動精準攻擊,而美國也有媒體認為中國用北斗計劃來壓制美國衛(wèi)星的軍事優(yōu)勢。隨著我國綜合國力的提升和衛(wèi)星導航定位系統(tǒng)全面滲透普通人的生活,還有科索沃戰(zhàn)爭和第二次海灣戰(zhàn)爭美國GPS制導高精度打擊武器的誘惑,構建一個類似GPS的全球衛(wèi)星導航定位系統(tǒng)開始提上日程,從2007年開始正式建設“北斗”衛(wèi)星導航定位系統(tǒng)(“北斗二號”)?!氨倍贰毙l(wèi)星導航定位系統(tǒng)需要發(fā)射35顆衛(wèi)星,足足要比GPS多出11顆。按照規(guī)劃,“北斗”衛(wèi)星導航定位系統(tǒng)將有5顆靜止軌道衛(wèi)星和30顆非靜止軌道衛(wèi)星組成,采用“東方紅”-3號衛(wèi)星平臺。30顆非靜止軌道衛(wèi)星又細分為27顆中軌道衛(wèi)星(MEO)和3顆傾斜軌道同步衛(wèi)星(IGSO)組成,27顆MEO衛(wèi)星平均分布在傾角55度的三個平面上,軌道高度21500公里?!氨倍贰毙l(wèi)星導航定位系統(tǒng)將提供開放服務和授權服務。開放服務在服務區(qū)免費提供定位,測速和授時服務,定位精度為10米,授時精度為50納秒,測速精度為0.2米/秒。授權服務則是軍事用途的馬甲,將向授權用戶提供更安全與更高精度的定位,測速,授時服務,外加繼承自北斗試驗系統(tǒng)的通信服務功能。北斗二代采用與GPS相同的載波頻率和調制方式,但是使用不同的偽隨機碼和數(shù)據(jù)編碼方式,GPS接收機不能處理北斗二代信號。而少量能處理北斗二代信號的接收機也只是通過通用GPS接收機作后處理,但還是不能作為實時應用。一般地,GPS硬件接收機的冷啟動時間在幾十秒,熱啟動1秒左右,自動定位的處理時間大于10秒。因此,采用軟件研究快速捕獲方法是很有應用價值,尤其是基于軟件無線電思想的兼容北斗二代/GPS定位信號的軟件處理方法,不僅還沒有產(chǎn)品級的終端出現(xiàn),而且也具有可重配置性的開發(fā)與應用優(yōu)勢。技術實現(xiàn)要素::本專利的目的在于克服現(xiàn)有技術存在的缺陷,提供了一種北斗二代和GPS公用頻點實時信號接收處理系統(tǒng)。本專利一種北斗二代和GPS公用頻點實時接收處理信號系統(tǒng),包括一個Max2741為主芯片的北斗二代和GPS公用頻點第一RF射頻前端模塊,一個GRM7520為主芯片的北斗二代和GPS公用頻點第二RF射頻前端模塊,一個GP2015為主芯片的北斗二代和GPS公用頻點第三RF射頻前端模塊,一個Spartan3系列FPGA芯片,一個作為USB控制器的CY7C68013A。北斗二代和GPS公用頻點實時信號通過同一天線進入三個RF射頻前端模塊,經(jīng)過一系列放大、濾波和下變頻處理,并通過A/D轉換為2bit的中頻數(shù)字信號,中頻數(shù)字信號在FPGA的控制下,被采集到FPGA的內部存儲器中,以乒乓方式存儲成一定長度的數(shù)據(jù)塊,最后通過USB控制器,按塊傳輸?shù)接嬎銠C上;其中:北斗二代和GPS公用頻點第一RF射頻前端模塊Max2741芯片中的兩位中頻數(shù)字信號線、中頻采樣時鐘線以及三根SPI編程接口控制線都分別引出,并連接到Spartan3系列FPGA的可編程I/O口上;北斗二代和GPS公用頻點第二RF射頻前端模塊GRM7520芯片的兩位中頻數(shù)字信號線和中頻采樣時鐘線分別引出,并連接到Spartan3系列FPGA的可編程I/O口上;北斗二代和GPS公用頻點第三RF射頻前端模塊GP2015中的兩位中頻數(shù)字信號線、兩根差分時鐘輸出線和一個中頻采樣時鐘輸入線分別引出,并連接到Spartan3系列FPGA的可編程I/O口上;USB控制器CY7C68013A芯片連接在Spartan3系列FPGA的可編程I/O口上;Spartan3系列FPGA芯片讀取哪個RF射頻前端模塊的數(shù)據(jù),則由上位機程序同過USB發(fā)送指令控制;FPGA將讀取到的2bit中頻數(shù)據(jù)按時間先后由低位到高位合并為1Byte數(shù)據(jù),即最先讀取到的2bit數(shù)據(jù)放置在1Byte數(shù)據(jù)的最低2位;數(shù)據(jù)以乒乓方式存儲到FPGA內部的FIFO中,形成數(shù)據(jù)塊,一個數(shù)據(jù)塊包含4ms的整數(shù)倍的數(shù)據(jù);當數(shù)據(jù)存滿一個數(shù)據(jù)塊時,提交給USB控制器,USB控制器以SlaveFIFO方式從FPGA獲得數(shù)據(jù),并以塊傳輸方式向計算機傳輸數(shù)據(jù),每次數(shù)據(jù)傳輸為一個數(shù)據(jù)塊數(shù)據(jù)。計算機對接收到的數(shù)據(jù)塊數(shù)據(jù)進行處理,具體步驟如下:步驟一:軟件初始化。讀取配置文件,根據(jù)配置文件初始化12通道對應的PRN值,其中通道10~12固定為北斗二代通道,而通道1~9固定為GPS通道;讀取本地載波查找表文件和CA碼查找表文件;步驟二:啟動對應三個RF射頻前端模塊的三個線程,分別為數(shù)據(jù)讀取和基帶處理線程、定位處理線程、數(shù)據(jù)顯示線程;數(shù)據(jù)讀取和基帶處理線程設置為最高優(yōu)先級,循環(huán)執(zhí)行讀取中頻數(shù)據(jù)塊和進行基帶處理這一過程;基帶處理是一個狀態(tài)機流程,有快速捕獲、等待、串行捕獲、確認、推入、跟蹤和空閑共七種狀態(tài),12通道輪流進入狀態(tài)機進行處理;軟件啟動時,所有啟用的通道初始狀態(tài)設置為快速捕獲狀態(tài),而未啟用的通道初始狀態(tài)設置為空閑狀態(tài)。該線程在每一秒鐘時間到來后觸發(fā)一次定位處理事件;定位處理線程設置為次高優(yōu)先級,循環(huán)執(zhí)行等待定位處理事件和進行定位處理。每次定位解算事件到來時,進行定位處理;定位處理根據(jù)各通道跟蹤結果完成北斗二代信號解碼、北斗二代信息提取、GPS信息提取、偽距計算、位置解算和位置修正,并觸發(fā)一次顯示事件;數(shù)據(jù)顯示線程設置為最低優(yōu)先級,循環(huán)執(zhí)行等待顯示事件和顯示有用信息。每次顯示事件到來后更新一次顯示數(shù)據(jù);步驟三:判斷軟件是否退出,如果退出則停止所有線程,并釋放軟件占用的存儲空間。在步驟二中北斗二代和GPS公用頻點實時信號的快速捕獲處理方法步驟如下:步驟一:按每2bit轉換為1字節(jié)的方法,將數(shù)據(jù)塊的每個字節(jié)分解為4個中頻數(shù)據(jù);步驟二:對中頻數(shù)據(jù)進行再采樣,使每毫秒的數(shù)據(jù)長度由N變?yōu)長,L為小于n的2的冪次方長度,采樣率為N/L,由于采樣后的數(shù)據(jù)長度為2的冪次方,大大減少了FFT的處理時間;步驟三:在頻率域使用圓卷積方法進行相關計算,并將4毫秒的數(shù)據(jù)塊進行非相干疊加,提高信噪比。其實現(xiàn)函數(shù)為:|R[m]|=Σi=03|IFFT{(FFT(Si[n]·exp[j·2πfn])×FFT*(CA[n])}|]]>式中R[m]表示相關輸出結果,Si[n]表示輸入中頻信號,CA[n]表示本地產(chǎn)生的C/A碼,f表示本地產(chǎn)生的載波頻率;步驟四:將R[m]中的最大值與R[m]的平均值進行相除,即Max(R[m])/Avg(R[m]),如果比值大于判定閾值則認為捕獲到衛(wèi)星信號,設m=m1時R[m]取得最大值,則CA碼的起始點為m1×N/L;否則更新本地載波頻率,搜索下一個頻率點。本專利的優(yōu)點在于:(1)基于軟件無線電思想,系統(tǒng)的硬件技術方案只有射頻前端下變頻至中頻模塊,后面的數(shù)據(jù)采集以及定位信號處理均在軟件環(huán)境中實現(xiàn),不再依賴于通用硬件接收機的框架。(2)采用“多射頻前端+FPGA”的系統(tǒng)構架,采用中頻數(shù)據(jù)根據(jù)查表方式得到的本地載波和CA碼進行相關累積,結合實時釋放內存的軟件處理方法,將諸多先進的軟件處理方法集成其中,實現(xiàn)系統(tǒng)級的方法創(chuàng)新。(3)在軟件冷啟動后5秒鐘內完成所有北斗二代和GPS公用頻點實時信號的搜索。(4)由于本地載波和CA碼都事先產(chǎn)生并存儲在載波查找表和CA碼查找表文件中,不需要實時產(chǎn)生,另外使用改進的位運算方法,大大減少了軟件的運算量,提高了軟件的處理速度和效率。附圖說明:圖1是專利方法實現(xiàn)的系統(tǒng)結構框圖;圖中:1——第一RF射頻模塊Max2741;2——第二RF射頻模塊GRM7520;3——第三RF射頻模塊GP2015;4——FPGA模塊;5——USB總線控制器。圖2是第一RF模塊Max2741電路原理圖。圖3是第二RF模塊GRM7520電路原理圖。圖4是第三RF模塊GP2015電路原理圖。圖5是USB總線控制器CY7C68013A電路原理圖。圖6是FPGA-X3CS400控制電路原理圖。圖7是軟件技術方案流程圖。圖8是基帶處理狀態(tài)機圖。圖9是定位處理流程圖。具體實施方式:下面結合附圖和實施實例對本專利進一步說明。本專利包括硬件技術方案和軟件技術方案兩部分。硬件技術方案如圖1所示,北斗二代和GPS公用頻點實時信號通過同一天線進入射頻前端(RF)模塊,經(jīng)過一系列放大、濾波和下變頻處理,并通過A/D轉換為2bit的中頻數(shù)字信號。中頻數(shù)字信號在FPGA的控制下,被采集到FPGA的內部FIFO中,以乒乓方式存儲成一定長度的數(shù)據(jù)塊。最后通過USB控制器,按塊傳輸?shù)接嬎銠C上。該硬件方案主要包括以下幾部分:如圖2所示,一個Max2741為主芯片的北斗二代和GPS公用頻點第一RF射頻前端模塊,該模塊使用的中頻采樣頻率為13MHz。Max2741的兩位中頻數(shù)字信號線、中頻采樣時鐘線以及三根SPI編程接口控制線都分別引出,并連接到FPGA的可編程I/O口上。如圖3所示,一個GRM7520為主芯片的北斗二代和GPS公用頻點第二RF射頻前端模塊,該模塊使用的中頻采樣頻率為16.368MHz。GRM7520的兩位中頻數(shù)字信號線和中頻采樣時鐘線分別引出,并連接到FPGA的可編程I/O口上。如圖4所示,一個GP2015為主芯片的北斗二代和GPS公用頻點第三RF射頻前端模塊,該模塊使用的采樣頻率為5.714MHz。GP2015的兩位中頻數(shù)字信號線、兩根差分時鐘輸出線和一個中頻采樣時鐘輸入線分別引出,并連接到FPGA的可編程I/O口上。如圖5所示,一個CY7C68013A作為USB控制器,CY7C68013A內部FIFO配置為512x4緩沖,F(xiàn)IFO的8位數(shù)據(jù)線和寫控制線與FPGA相連。以SlaveFIFO方式從FPGA獲得數(shù)據(jù),并以塊傳輸方式向計算機傳輸數(shù)據(jù),每次數(shù)據(jù)傳輸為一個數(shù)據(jù)塊的數(shù)據(jù)。如圖6所示,一個Spartan3XC3S400的FPGA芯片,上面連接了三個RF射頻前端的中頻數(shù)據(jù)線、中頻采樣時鐘線、控制線、CY7C68013A的讀寫控制線、接口時鐘線和數(shù)據(jù)線。FPGA根據(jù)與其相連的CY7C68013A的PA1和PA7的電平狀態(tài),來選擇讀取三個射頻模塊。PA1|PA7=00時,選擇GRM7520模塊;PA1|PA7=01時,選擇GP2015模塊;PA1|PA7=10時,選擇Max2741模塊。Spartan3XC3S400內部的塊存儲空間(blockMemory)配置為2塊FIFO,分別為A和B,每塊FIFO的大小為16384x8bit。Spartan3XC3S400將讀取到的2bit中頻數(shù)據(jù)按時間先后由低位到高位合并為1Byte數(shù)據(jù),即最先讀取到的2bit數(shù)據(jù)放置在1Byte數(shù)據(jù)的最低2位,這一過程通過一個8bit移位寄存器實現(xiàn)。合并后的1Byte數(shù)據(jù)存儲到FPGA內部的FIFO中,形成數(shù)據(jù)塊。如果讀取的是GRM7520模塊的數(shù)據(jù),則一個數(shù)據(jù)塊包含4ms的數(shù)據(jù),長度為16368Byte;如果讀取的是Max2741模塊的數(shù)據(jù),則一個數(shù)據(jù)塊包含4ms的數(shù)據(jù),長度為13000Byte;如果讀取的是GP2015模塊的數(shù)據(jù),則一個數(shù)據(jù)塊包含8ms的數(shù)據(jù),長度為11428Byte。FPGA內部2個FIFOA和B的操作使用乒乓方式。FIFOA記錄中頻數(shù)據(jù)的同時,F(xiàn)IFOB的數(shù)據(jù)傳輸給CY7C68013A。FIFOA記錄滿一個數(shù)據(jù)塊的數(shù)據(jù)后,切換為FIFOB進行數(shù)據(jù)記錄,而FIFOA的數(shù)據(jù)傳輸給CY7C68013A,之后輪流切換。如果FIFOA數(shù)據(jù)記錄滿了,而此時FIFOB的數(shù)據(jù)還沒傳輸完畢,則FIFOA中的數(shù)據(jù)整塊丟棄,由于整塊數(shù)據(jù)是CA碼周期的整數(shù)倍,因此不會引起CA碼相位的變化。軟件技術方案如圖7所示,軟件通過USB接口成塊的讀取中頻采樣數(shù)據(jù),將中頻數(shù)據(jù)以毫秒為單位,與用查找表方式得到的本地載波和CA碼進行相關累積,使用相關累積的結果進行捕獲、跟蹤處理,使用跟蹤結果進行北斗二代和GPS公用頻點信號解碼、定位計算和定位結果修正,并且每秒鐘更新一次定位輸出。軟件執(zhí)行的具體步驟如下:步驟一:軟件初始化。讀取配置文件,根據(jù)配置文件初始化12通道對應的PRN值,其中通道10~12固定為北斗二代通道,而通道1~9固定為GPS通道;讀取本地載波查找表文件和CA碼查找表文件。步驟二:啟動對應三個RF射頻前端模塊的三個線程,分別為數(shù)據(jù)讀取和基帶處理線程、定位處理線程、數(shù)據(jù)顯示線程。數(shù)據(jù)讀取和基帶處理線程設置為最高優(yōu)先級,循環(huán)執(zhí)行讀取中頻數(shù)據(jù)塊和進行基帶處理這一過程。該線程在每一秒鐘時間到來后觸發(fā)一次定位處理事件。定位處理線程設置為次高優(yōu)先級,循環(huán)執(zhí)行等待定位處理事件和進行定位處理。每次定位解算事件到來時,進行定位處理。定位處理根據(jù)各通道跟蹤結果完成北斗二代信號解碼、北斗二代信息提取、GPS信息提取、偽距計算、位置解算和位置修正,并觸發(fā)一次顯示事件。數(shù)據(jù)顯示線程設置為最低優(yōu)先級,循環(huán)執(zhí)行等待顯示事件和顯示有用信息。每次顯示事件到來后更新一次顯示數(shù)據(jù)。步驟三:判斷軟件是否退出,如果退出則停止所有線程,并釋放軟件占用的存儲空間。在軟件方案中所述的快速捕獲處理算法具體實現(xiàn)如下:步驟一:按每2bit轉換為1字節(jié)的方法,將數(shù)據(jù)塊的每個字節(jié)分解為4個中頻數(shù)據(jù)。步驟二:對中頻數(shù)據(jù)進行再采樣,使每毫秒的數(shù)據(jù)長度由N變?yōu)長,L為小于n的2的冪次方長度,采樣率為N/L,由于采樣后的數(shù)據(jù)長度為2的冪次方,大大減少了FFT的處理時間。步驟三:在頻率域使用圓卷積方法進行相關計算,并將4毫秒的數(shù)據(jù)塊進行非相干疊加,提高信噪比。其實現(xiàn)函數(shù)為:|R[m]|=Σi=03|IFFT{(FFT(Si[n]·exp[j·2πfn])×FFT*(CA[n])}|]]>式中R[m]表示相關輸出結果,Si[n]表示輸入中頻信號,CA[n]表示本地產(chǎn)生的C/A碼,f表示本地產(chǎn)生的載波頻率。步驟四:將R[m]中的最大值與R[m]的平均值進行相除,即Max(R[m])/Avg(R[m]),如果比值大于判定閾值則認為捕獲到衛(wèi)星信號,設m=m1時R[m]取得最大值,則CA碼的起始點為m1×N/L。否則更新本地載波頻率,搜索下一個頻率點。如圖8所示,基帶處理是一個狀態(tài)機流程,有快速捕獲、等待、串行捕獲、確認、推入、跟蹤和空閑共七種狀態(tài),12通道輪流進入狀態(tài)機進行處理。軟件啟動時,所有啟用的通道初始狀態(tài)設置為快速捕獲狀態(tài),而未啟用的通道初始狀態(tài)設置為空閑狀態(tài)。在快速捕獲狀態(tài)中,如果通道捕獲到衛(wèi)星信號則進入等待狀態(tài)。當所有衛(wèi)星信號都完成了一次快速捕獲處理后,則所有通道從等待狀態(tài)進入推入狀態(tài),或者從快速捕獲狀態(tài)進入串行捕獲狀態(tài),之后通道狀態(tài)只在串行捕獲、確認、推入和跟蹤這四個狀態(tài)中進行轉換?;鶐幚碇饕蝿帐沁M行相關累積,并利用累積結果進行捕獲、跟蹤處理。輸入數(shù)據(jù)是以2bit為一個數(shù)據(jù)點,4個數(shù)據(jù)點存儲成一個字節(jié),如表1所示:符號位幅度位值00+101+310-111-3表1中頻采樣信號本地載波和CA碼以1bit進行量化,以2bit為一個數(shù)據(jù)點進行存儲,4個數(shù)據(jù)點存儲成一個字節(jié),如表格2所示:符號位幅度位值00+110-1表2本地載波和CA碼信號在本專利中,輸入中頻信號與本地載波和CA碼進行的相關累積,是通過按位異或進行。其中符號位與符號位進行異或,幅度位與幅度位進行異或。在計算機上,每次使用一個字word進行異或操作,因此一次異或操作包括了8個數(shù)據(jù)點。異或操作完成后,按查表方式得到累積結果。本地載波由同相的余弦信號和正交的正弦信號組成,以中頻信號的中頻IF為中心頻率點,以100Hz為頻率間隔,存儲-10kHz~10kHz之間一個毫秒的載波采樣值,如公式1所示,共有201個載波頻率對應的載波采樣值。I_carrier[n]=cos(2π·Fc·[n]/Fs)Q_carrier[n]=sin(2π·Fc·[n]/Fs)(1)其中:Fc為本地載波頻率,F(xiàn)c=中頻±100×i(Hz),i=-100,-99....+99,+100,F(xiàn)s為采樣頻率,[n]=0,1,2.....(N-1),N為1ms的采樣點數(shù)。本地CA碼以1/16個采樣點為相位步長,存儲初始相位從0~4個采樣點的即時、超前和滯后CA碼的一毫秒的采樣值,如公式2所示,CA_prompt[n]=CA(FCAFs·[n]+τ)]]>CA_late[n]=CA(FCAFs·[n]+τ+0.5)]]>CA_early[n]=CA(FCAFs·[n]+τ-0.5)]]>公式2其中:CA()為CA碼函數(shù),F(xiàn)CA為CA碼頻率,F(xiàn)s為采樣頻率,τ為碼起始相位τ=i×FCA/(16×FS),i=0,1,...63,[n]=0,1,2.....(N-1),N為1ms的采樣點數(shù)。如圖9所示,定位處理流程具體執(zhí)行步驟如下:步驟一:GPS電文提取,根據(jù)通道的跟蹤結果提取GPS導航電文,主要提取GPS電文的三個子幀,得到衛(wèi)星時間和衛(wèi)星星歷。步驟二:用戶位置計算,根據(jù)跟蹤結果計算用戶到衛(wèi)星的相對偽距,使用衛(wèi)星種差對偽距進行修正,使用衛(wèi)星星歷計算衛(wèi)星位置,使用相對偽距和衛(wèi)星位置計算用戶坐標。步驟三:北斗二代信號解碼,使用Viterbi算法進行解碼。步驟四:北斗二代信息提取,根據(jù)需要提取的北斗二代信息類型包括:類型6—衛(wèi)星完好性信息,類型18—電離層網(wǎng)格點屏蔽標識,類型24—快/慢混合校正量,類型25—緩慢校正量,類型26—電離層延遲校正量。步驟五:衛(wèi)星鐘差和星歷修正,使用信息類型24對衛(wèi)星鐘差和衛(wèi)星坐標進行修正。步驟六:電離層修正,根據(jù)步驟二中得到的用戶坐標和衛(wèi)星位置,計算電離層穿透點(IPP)的緯度和經(jīng)度,確定IPP位于哪4個網(wǎng)格點內,使用信息類型26獲得4個網(wǎng)格點對應的電離層延時數(shù)據(jù),利用內插法得到IPP對應的垂直電離層延時和衛(wèi)星至用戶的電離層延時。步驟七:用戶位置的修正,使用步驟五中得到的衛(wèi)星鐘差和步驟六中得到的電離層延時對步驟二中的相對偽距進行修正,使用修正后的相對偽距和修正后的衛(wèi)星坐標重新計算用戶位置,得到修正后的用戶坐標。當前第1頁1 2 3