專利名稱:基于多核處理器的多模gnss軟件接收機的實現(xiàn)方法
技術領域:
本發(fā)明涉及衛(wèi)星定位技術領域,具體涉及基于多核處理器的多模GNSS軟件接收機的實現(xiàn)方法。
背景技術:
全球?qū)Ш叫l(wèi)星系統(tǒng)(GNSS,Global Navigation Satellite System)是一個廣義的概念,是所有衛(wèi)星導航定位系統(tǒng)的總稱,泛指全球星座、區(qū)域星座及相關的星基增強在內(nèi)的各種系統(tǒng)。主要包括目前美國的GPS衛(wèi)星全球定位系統(tǒng)和WAAS廣域增強系統(tǒng),俄羅斯的 GL0NASS全球?qū)Ш叫l(wèi)星系統(tǒng),歐盟主導的Galileo衛(wèi)星導航系統(tǒng)和EGNOS靜地衛(wèi)星導航重疊系統(tǒng),以及中國正在建設北斗COMPASS衛(wèi)星導航系統(tǒng)和CWAAS星基增強系統(tǒng)。除了四個全球系統(tǒng)及其增強系統(tǒng)之外,日本和印度等國也在建設自己的區(qū)域系統(tǒng)和增強系統(tǒng),比如日本的QZSS準天頂衛(wèi)星系統(tǒng)和MSAS多功能衛(wèi)星增強系統(tǒng),印度的IRNSS印度無線電導航衛(wèi)星系統(tǒng)和GAGAN(GPS與GEO靜地增強導航),以及尼日利亞運用通信衛(wèi)星搭載所實現(xiàn)的 NicomSat-I星基增強。全球衛(wèi)星導航系統(tǒng)及其產(chǎn)業(yè)當前正經(jīng)歷巨大的轉(zhuǎn)變和機遇,GNSS進入了現(xiàn)代化的加速進程,美國宣布GPS將在2020年之前將逐步增加Li,L2,L5民用導航頻率段信號,使用新的33顆GPSIII衛(wèi)星構(gòu)建高橢圓軌道(HEO)和地球靜止軌道(GEO)相結(jié)合的新型GPS 混合星座。GL0NASS也宣布在2017年全部完成更新,升級為GL0NASS-M和GL0NASS-K系統(tǒng), 定位精度從目前的20m提高到mm級。GALILEO加快了建設腳步,期望在2013年投入使用, 定位精度為lm。中國政府也計劃2012年完成北斗二代,在軌衛(wèi)星12顆,覆蓋中國及周邊地區(qū),實現(xiàn)區(qū)域?qū)Ш剑?020年完成北斗三代的建設,提供不少于30顆衛(wèi)星以實現(xiàn)全球?qū)Ш?。可以預見不久的將來,天空中將至少出現(xiàn)四個GNSS系統(tǒng),十幾種GNSS信號頻率, 幾十種GNSS信號碼以及一百多顆GNSS衛(wèi)星。如何實現(xiàn)多系統(tǒng),多星座的兼容性和互操作性成為了接收機急需解決的問題。由于衛(wèi)星相關和跟蹤需求很大的實時運算量,傳統(tǒng)的GNSS 接收機的基帶功能采用全定制ASIC (Application Specific Integrated Circuit)芯片實現(xiàn),由于全定制的ASIC芯片的內(nèi)部邏輯功能在流片之后就不能改變,所以一旦接收機生產(chǎn)出來后,在不改變內(nèi)部電路的情況下,能夠跟蹤和捕獲的信號碼就完全固定了,面對新增加的衛(wèi)星信號,之前的傳統(tǒng)接收機都將對這些新增信號無能為力。為了解決這種情況,有的接收機使用可編程邏輯電路模塊如FPGA (Field Programmable Gate Array)禾口中;^;^! !! CPU (Central Processing Unit)
儲器的方法實現(xiàn)軟件升級。接收機上電啟動時,可編程邏輯電路將保存在存儲器(如EPROM 或Flash等)中數(shù)據(jù)讀入,以完成電路的配置。這樣的系統(tǒng)能夠在不改變硬件結(jié)構(gòu)的情況下對接收機進行升級。軟件無線電的中心思想是把中頻采樣盡量往天線靠攏,所有的信號處理(如下變頻,濾波,F(xiàn)FT運算等)都由CPU運算實現(xiàn)。但是由于這一運算量很大,軟件無線電提出的時候CPU的處理能力還不能和專用芯片相提并論,實現(xiàn)起來相當困難。
發(fā)明內(nèi)容
本發(fā)明的目的在于克服現(xiàn)有技術存在的上述不足,提供基于多核處理器的多模 GNSS軟件接收機的實現(xiàn)方法,具體技術方案如下?;诙嗪颂幚砥鞯亩嗄NSS軟件接收機的實現(xiàn)方法,該方法分配N個核用于組成多模GNSS軟件接收機,其中一個核作為調(diào)度核完成多模GNSS接收機的調(diào)度和控制,其余 N-I個核作為處理核完成GNSS中頻信號處理,N小于或等于處理器的核心數(shù)目;所述處理核在調(diào)度核控制下,按照多模GNSS接收機中頻信號的處理過程,自由組成三種并行處理模塊,組成處理模塊的處理核對GNSS中頻信號并行處理,所述三種并行處理模塊包括
相關運算模塊,用于GNSS衛(wèi)星的載波相位和碼相位的搜索以及衛(wèi)星載波頻率的搜索; 衛(wèi)星通道模塊,利用所述相關運算模塊的處理結(jié)果跟蹤GNSS衛(wèi)星,實現(xiàn)GNSS中頻信號的載波剝離和碼剝離;
定位解算模塊,與所述的衛(wèi)星通道模塊組成數(shù)據(jù)通道,用于GNSS衛(wèi)星的偽距處理,實現(xiàn)多模多衛(wèi)星的聯(lián)合定位和導航。上述的實現(xiàn)方法中,所述的相關運算模塊由X個處理核通過片上網(wǎng)絡組成,個數(shù)X 由調(diào)度核控制;所述的衛(wèi)星通道模塊由Y個處理核通過片上網(wǎng)絡組成,個數(shù)Y由調(diào)度核控制;所述的定位解算模塊由Z個處理核核通過片上網(wǎng)絡組成,個數(shù)Z由調(diào)度核控制;同一時刻中,X+Y+Z ^ N-Io上述的實現(xiàn)方法中,所述調(diào)度核首先分配所有處理核形成所述相關運算模塊完成 GNSS的衛(wèi)星搜索,并將搜索的結(jié)果反饋到調(diào)度核;調(diào)度核再根據(jù)搜索結(jié)果對處理核進行調(diào)度,保留部分處理核維持相關運算模塊的工作,其余的處理核形成由所述衛(wèi)星跟蹤通道模塊和定位解算模塊組成的數(shù)據(jù)通路,完成對GNSS中頻信號處理,實現(xiàn)定位導航。上述的實現(xiàn)方法中,構(gòu)成相關運算模塊的處理核和調(diào)度核通過片上網(wǎng)絡相連,構(gòu)成相關運算模塊的處理核先后工作在頻域相關模式和時域相關模式,所述的頻域相關工作模式是指采用可變長傅里葉變換和可變長反傅里葉變換實現(xiàn)GNSS的衛(wèi)星載波相位和碼相位的搜索;所述時域相關模式是指采用連續(xù)滑動載波相位的方法進一步提高所述的頻域相關模式下結(jié)果的精確度;所述連續(xù)滑動載波相位方法為在所述碼相位固定的前提下,相關運算模塊為每一個衛(wèi)星載波相位頻點產(chǎn)生一個對應的衛(wèi)星本地信號,并與射頻前端接收的GNSS中頻信號做相關運算,搜索所述頻點的相關運算結(jié)果的最大值,反饋所述最大值對應的載波頻率信息與碼相位信息以及載噪比信息至調(diào)度核。上述的實現(xiàn)方法中,所述調(diào)度核根據(jù)衛(wèi)星通道模塊中處理核的運算能力動態(tài)分配由一個處理核同時配置多條衛(wèi)星通道跟蹤多顆GNSS衛(wèi)星,或由幾個處理核協(xié)同工作組成一個衛(wèi)星通道跟蹤一顆GNSS衛(wèi)星;組成衛(wèi)星通道模塊的處理核與組成定位解算模塊的處理核之間通過片上網(wǎng)絡實時交換處理數(shù)據(jù);組成衛(wèi)星通道模塊的處理核與調(diào)度核通過片上網(wǎng)絡實時交換處理數(shù)據(jù);調(diào)度核對GNSS接收機搜索到的衛(wèi)星按照所述從相關運算模塊反饋來的載噪比信息進行排序,優(yōu)先選取信號強度好的衛(wèi)星分配衛(wèi)星通道。上述的實現(xiàn)方法中,構(gòu)成衛(wèi)星通道模塊的處理核產(chǎn)生用于跟蹤GNSS衛(wèi)星的本地信號,本地信號包括GNSS衛(wèi)星的載波副本、即時偽隨機碼副本、延時偽隨機碼副本和超前偽隨機碼副本;衛(wèi)星通道模塊中,每個衛(wèi)星通道有自己的衛(wèi)星控制單元和對應的數(shù)據(jù)內(nèi)存;
5所述的衛(wèi)星控制單元用于維持跟蹤GNSS衛(wèi)星數(shù)據(jù)比特的位同步和幀同步,控制導航數(shù)據(jù)的輸出,記錄當前處理數(shù)據(jù)幀的相對采樣點位置;所述數(shù)據(jù)內(nèi)存的組成包括臨時數(shù)據(jù)緩存區(qū)、本地信號緩存區(qū)、通道參數(shù)表和能量累加緩存區(qū)。上述的實現(xiàn)方法中,所述衛(wèi)星通道模塊按照對應衛(wèi)星信號的調(diào)制模式和發(fā)射模式分配衛(wèi)星通道,以最小要求處理的數(shù)據(jù)幀為更新步長,所述最小要求處理的數(shù)據(jù)幀的長度是射頻前端在一個偽隨機碼片的時間內(nèi)進行采樣的點數(shù),每間隔一個所述的更新步長,衛(wèi)星通道輸出一個數(shù)據(jù)幀的處理結(jié)果,衛(wèi)星控制單元對數(shù)據(jù)內(nèi)存完成以下更新步驟
更新通道參數(shù)表衛(wèi)星控制單元保存上一數(shù)據(jù)幀的處理結(jié)果,計算處理下一數(shù)據(jù)幀的最優(yōu)通道參數(shù),更新并保存上述參數(shù);
更新臨時數(shù)據(jù)緩存區(qū)衛(wèi)星控制單元從GNSS射頻前端模塊讀取下一個數(shù)據(jù)幀,保存在所述臨時數(shù)據(jù)緩沖區(qū);
更新本地信號緩存區(qū)衛(wèi)星控制單元根據(jù)當前通道狀態(tài)參數(shù)表產(chǎn)生衛(wèi)星的載波副本、 即時偽隨機碼副本、延時偽隨機碼副本和超前偽隨機碼副本,保存在所述本地信號緩存區(qū);
更新信號能量累加區(qū)衛(wèi)星控制單元對所述衛(wèi)星通道模塊的結(jié)果進行相干累加或非相干累加,保存在所述信號能量累加區(qū)。上述的實現(xiàn)方法中,所述衛(wèi)星通道包括GPS衛(wèi)星通道、GL0NASS衛(wèi)星通道、Gali Ieo 衛(wèi)星通道和COMPASS衛(wèi)星通道,每個衛(wèi)星通道獨立工作,按照各自衛(wèi)星系統(tǒng)信號的調(diào)制和發(fā)射模式進行信號處理。上述的實現(xiàn)方法中,組成定位解算模塊的處理核還負責
單星座定位時,在同一個衛(wèi)星星座里面選擇幾何精度因子最好的K顆衛(wèi)星進行定位解算,K大于或等于4 ;多星座聯(lián)合定位時,在L個不同衛(wèi)星星座里面選擇幾何精度因子最好的M顆衛(wèi)星進行定位解算,L等于衛(wèi)星通道類型種數(shù),M大于或等于3+L。組成定位解算模塊的處理核對所述的K顆或M顆衛(wèi)星估算其偽距,計算GNSS接收機用戶的位置、速度和時間,用卡爾曼濾波的方法實現(xiàn)對用戶的導航定位。與現(xiàn)有技術相比,本發(fā)明可以在負載均衡的基礎上最優(yōu)化處理器的內(nèi)核資源,實現(xiàn)多個導航系統(tǒng)的兼容,提高定位的精度和可靠性。本發(fā)明把GNSS基帶處理應用在多核處理器環(huán)境下并行處理可以提高處理速度,可以滿足接收機實時性的要求。跟傳統(tǒng)的利用硬件基帶芯片加單核處理器的實現(xiàn)方案相比,用多核處理器實現(xiàn)基帶處理據(jù)可以在不改變硬件平臺通過軟件升級應用新算法,提高性能;通用性,隨著便攜式手持或車載終端搭配的 CPU越來越強大,可以在不同的平臺上實現(xiàn)定位導航??偟膩碚f,本發(fā)明可以利用多核處理器強大的處理能力,代替?zhèn)鹘y(tǒng)的GNSS硬件基帶芯片,用軟件的方式對多系統(tǒng)不同類型的衛(wèi)星導航信號進行處理,并且可以靈活配置和調(diào)度。
圖1是現(xiàn)有射頻天線、基帶處理加速芯片加CPU組成的GNSS接收系統(tǒng)。圖2是實施方式中基于多核處理器的多模GNSS接收機硬件組成圖。圖3是實施方式中基于多核處理器的多模GNSS接收機功能組成圖。圖4是實施方式中基于多核處理器的多模GNSS接收機處理流程圖。
圖5是實施方式中基于多核處理器的多模GNSS接收機衛(wèi)星通道跟蹤架構(gòu)圖。圖6是實施方式中基于多核處理器的多模GNSS接收機的數(shù)據(jù)通道圖。圖7是實施方式中基于多核處理器的多模GNSS接收機的工作流程圖。具體實施方法
以下結(jié)合附圖對本發(fā)明的具體實施作進一步說明,但本發(fā)明的實施和保護范圍不限于此。圖1是現(xiàn)有射頻天線,基帶處理加速芯片加CPU組成的GNSS接收系統(tǒng)示意圖, GNSS信號經(jīng)過射頻前端經(jīng)過低噪放大、下變頻、濾波器、自動增益控制、和A/D轉(zhuǎn)換后,得到數(shù)字中頻信號,基帶芯片主要是由ASIC或FPGA實現(xiàn)的相關器,相關器在結(jié)構(gòu)上可以看做由 η個通道構(gòu)成,相關器輸出的結(jié)果送到CPU上進行導航定位解算處理,CPU把解算結(jié)果送到用戶接口,以便在屏幕上顯示用戶位置。下面結(jié)合典型實例闡述一種基于多核處理器的GNSS接收機的實現(xiàn)。本發(fā)明的采用基于多核處理器的多模GNSS接收機的系統(tǒng)整體組成如圖2所示,由 GNSS射頻前端210和多核處理器220組成,結(jié)果輸出到用戶接口 230。GNSS射頻前端210負責接收多個頻段的GNSS衛(wèi)星信號,信號由GNSS射頻前端210 采集后低噪放大、下變頻、濾波器、自動增益控制、和A/D轉(zhuǎn)換后得到中頻信號送入到多核處理器。采用本發(fā)明方法的多核處理器總體運作框圖如圖三所示,多核處理器220分為處理核310和調(diào)度核320,處理核310在調(diào)度核320的控制下組成相關運算模塊311,衛(wèi)星通道模塊312和定位解算模塊313。相關運算模塊311,用于GNSS衛(wèi)星的載波相位和碼相位的搜索以及衛(wèi)星載波頻率的搜索。相關運算模塊311由X個處理核通過片上網(wǎng)絡組成,個數(shù)X由調(diào)度核控制。衛(wèi)星通道模塊312,利用相關運算模塊的處理結(jié)果跟蹤GNSS衛(wèi)星,實現(xiàn)GNSS中頻信號的載波剝離和碼剝離。衛(wèi)星通道模塊312由Y個處理核通過片上網(wǎng)絡組成,個數(shù)Y由調(diào)度核控制。定位解算模塊313,與所述的衛(wèi)星通道模塊組成數(shù)據(jù)通道,用于GNSS衛(wèi)星的偽距處理,實現(xiàn)多模多衛(wèi)星的聯(lián)合定位和導航。定位解算模塊由Z個處理核核通過片上網(wǎng)絡組成,個數(shù)ζ由調(diào)度核控制。同一時刻中,X+Y+Z彡N-I。相關運算模塊311,衛(wèi)星通道模塊312和定位解算模塊313之間,處理核310和調(diào)度核320之間通過片上網(wǎng)絡相連。圖4為本發(fā)明基于多核處理器GNSS接收機實例的工作流程示意圖,實現(xiàn)圖4所示的方法需要采用以下步驟
步驟410分配多核處理器220的N個可用核中的一個核作為調(diào)度核320完成多模GNSS 接收機的調(diào)度和控制,其余N-I個核作為處理核310完成GNSS中頻信號處理,N小于或等于處理器的核心數(shù)目;
步驟420調(diào)度核320分配所有處理核組成相關運算模塊311完成成GNSS的衛(wèi)星搜索, 并將搜索的結(jié)果反饋到調(diào)度核320 ;
步驟430調(diào)度核根據(jù)搜索結(jié)果重新分配處理核310,組成由衛(wèi)星通道模塊312和定位解算模塊313,建立數(shù)據(jù)通路,完成對GNSS衛(wèi)星的中頻數(shù)據(jù)處理,實現(xiàn)定位導航。
軟件GNSS接收機開始工作時,首先需要處理器分配并初始化調(diào)度核320,對GNSS 衛(wèi)星進行捕獲搜索。為了利用多核處理器的靈活性和可編程性,本發(fā)明實例的捕獲方法分為兩步,第一步是利用相關運算和循環(huán)卷積的關系,采用頻域相關來實現(xiàn)多模GNSS接收機衛(wèi)星的載波相位快速搜索,確定載波相位的大概所在區(qū)間,同時確定碼相位的值,該方法的優(yōu)點是搜索速度快,便于軟件實現(xiàn)。第二步是采用時域相關來進一步提高所述的頻域相關下載波相位的精確度。因此,所述的相關運算模塊311有頻域相關和時域相關兩種工作模式
本發(fā)明實例做頻域相關時,處理核310工作在頻域相關模式,處理核把GNSS射頻前端 201采集到的信號與本地載波和偽隨機碼分別作傅里葉變換,兩個傅里葉變換的結(jié)果相乘后在做一次反傅里葉變換,得到所有的相關結(jié)果。本發(fā)明實例做時域相關時,處理核310工作在時域相關模式,在所述碼相位固定的前提下,相關運算模塊為每一個衛(wèi)星載波相位頻點產(chǎn)生一個對應的衛(wèi)星本地信號,并與射頻前端接收的GNSS中頻信號做相關運算,搜索所述頻點的相關運算結(jié)果的最大值,反饋所述最大值對應的載波頻率信息與碼相位信息以及載噪比信息至調(diào)度核。在本發(fā)明實例中做完了上述的捕獲流程后,完成了衛(wèi)星捕獲,GNSS軟件接受機進入下一步驟430,建立由衛(wèi)星通道模塊312和定位結(jié)算模塊313組成的數(shù)據(jù)通道。本發(fā)明實例中,調(diào)度核320根據(jù)衛(wèi)星通道模塊中處理核310的運算能力動態(tài)分配由一個處理核同時配置多條衛(wèi)星通道跟蹤多顆GNSS衛(wèi)星,或由幾個處理核協(xié)同工作組成一個衛(wèi)星通道跟蹤一顆GNSS衛(wèi)星,由調(diào)度核320視處理核310的運算能力和捕獲搜索階段反饋回來的載噪比信息來進行調(diào)度控制。本發(fā)明實例中,GNSS衛(wèi)星的跟蹤處理架構(gòu)如圖5所示。一個典型的衛(wèi)星通道由衛(wèi)星控制單元510,數(shù)據(jù)預處理單元520,環(huán)路判決單元 530,和數(shù)據(jù)內(nèi)存540組成。本發(fā)明實例中的數(shù)據(jù)預處理單元520包括即時信號相關器521,超前信號相關器 523和滯后信號相關器523,其中以上所述的三種還包括處理同相I和正交分量Q兩種的相關器,因此,一個通道中共有六種相關器。本發(fā)明實例中的環(huán)路判決單元530包括鎖頻環(huán)判決531,鎖相環(huán)判決532,卡爾曼濾波533和超前滯后環(huán)路判決534。本發(fā)明實例中的數(shù)據(jù)內(nèi)存540包括臨時數(shù)據(jù)緩存M1,本地信號緩存M2,通道參數(shù)表543和能量累加緩存M4。本發(fā)明實例的衛(wèi)星通道以跟蹤的衛(wèi)星的最小處理要求的數(shù)據(jù)幀為更新步長,所述的更新步長由GNSS射頻前端210的采樣率,衛(wèi)星調(diào)制的偽碼速率和發(fā)射數(shù)據(jù)的比特率決定。每一個更新步長時間內(nèi),衛(wèi)星控制單元的工作包括
衛(wèi)星控制單元510讀取最小要求處理的數(shù)據(jù)幀存放在臨時數(shù)據(jù)緩存Ml中。衛(wèi)星控制單元510產(chǎn)生用于跟蹤GNSS衛(wèi)星的本地信號,本地信號包括GNSS衛(wèi)星的載波副本,即時偽隨機碼副本、延時偽隨機碼副本和超前偽隨機碼副本,本地信號存放在本地信號緩存討2中。
8
衛(wèi)星控制單元510控制數(shù)據(jù)預處理單元520產(chǎn)生的GNSS衛(wèi)星信號與本地信號的相關運算結(jié)果在能量累加緩存544進行相關累加或者非相干累加。衛(wèi)星控制單元510控制即時信號相關器521,超前信號相關器522和滯后信號相關器523分別讀取本地信號緩存542和臨時數(shù)據(jù)緩存Ml的數(shù)據(jù),兩者在數(shù)據(jù)預處理單元 520中做相關運算。衛(wèi)星控制單元510控制數(shù)據(jù)預處理單元520,將相關運算結(jié)果送到環(huán)路判決單元 530中進行通道狀態(tài)判決。本發(fā)明實例中,時信號相關器521可以有兩種判決單元進行判決一,如果GNSS 衛(wèi)星的多普勒頻率與本地信號相差較大,則即時信號相關器521的結(jié)果由鎖頻環(huán)判決531 進行判決,二,如果GNSS衛(wèi)星的多普勒頻率與本地信號相差不大則即時信號相關器521的結(jié)果通過鎖相環(huán)532進行判決并通過卡爾曼濾波533。判決結(jié)果存入通道參數(shù)列表543和能量累加緩存討4中。本發(fā)明實例中,超前信號相關器522和滯后信號相關器523的結(jié)果送入超前滯后環(huán)路判決534中進行處理,結(jié)果存入通道參數(shù)列表543和能量累加緩存M4中
衛(wèi)星控制單元510讀取通道參數(shù)列表543和能量累加緩存M4,并控制能量累加緩存 544的置位和清零操作。每間隔一個所述的更新步長,衛(wèi)星通道輸出一個數(shù)據(jù)幀的處理結(jié)果,衛(wèi)星控制單元對數(shù)據(jù)內(nèi)存進行更新,更新工作包括
更新臨時數(shù)據(jù)緩存541 衛(wèi)星控制單元從GNSS射頻前端模塊讀取下一個數(shù)據(jù)幀,保存在所述臨時數(shù)據(jù)緩沖區(qū);
更新本地信號緩存542 衛(wèi)星控制單元根據(jù)當前通道狀態(tài)參數(shù)表產(chǎn)生衛(wèi)星的載波副本、即時偽隨機碼副本、延時偽隨機碼副本和超前偽隨機碼副本,保存在所述本地信號緩存區(qū);
更新通道參數(shù)表543 衛(wèi)星控制單元保存上一數(shù)據(jù)幀的處理結(jié)果,計算處理下一數(shù)據(jù)幀的最優(yōu)通道參數(shù),更新并保存上述參數(shù);
更新信號能量累加區(qū)M4 衛(wèi)星控制單元對所述衛(wèi)星通道模塊的結(jié)果進行相干累加或非相干累加,保存在所述信號能量累加區(qū)。本發(fā)明實施例中由衛(wèi)星通道模塊312和定位解算模塊313組成的數(shù)據(jù)通道如圖6 所示。衛(wèi)星通道包括GPS衛(wèi)星通道、GL0NASS衛(wèi)星通道、Galileo衛(wèi)星通道和COMPASS衛(wèi)星通道,每個衛(wèi)星通道獨立工作,按照各自衛(wèi)星系統(tǒng)信號的調(diào)制和發(fā)射模式進行信號處理。衛(wèi)星通道模塊312與調(diào)度核320通過片上網(wǎng)絡交換處理數(shù)據(jù),調(diào)度核對衛(wèi)星的載噪比進行排序,優(yōu)先選取信號強度好的衛(wèi)星分配衛(wèi)星通道。定位解算模塊313同時負責單星座定位時,在同一個衛(wèi)星星座里面選擇幾何精度因子最好的K顆衛(wèi)星進行定位解算,K大于或等于4 ;多星座聯(lián)合定位時,在L不同衛(wèi)星星座里面選擇幾何精度因子最好的M顆衛(wèi)星進行定位解算,L等于衛(wèi)星通道類型種數(shù),M大于或等于3+L。定位解算模塊313計算用戶的位置,速度和時間,用卡爾曼濾波的方法實現(xiàn)對 GNSS接收機導航,輸出結(jié)果到用戶接口 203。
由于接收機的自身運動和所處周圍環(huán)境的變化,原本處于跟蹤通道中的GNSS衛(wèi)星有可能會失鎖,原來沒有捕獲的衛(wèi)星也可能會進入GNSS接收機的接收范圍內(nèi),所以調(diào)度核320需要不斷的監(jiān)控處理核的狀態(tài),在GNSS某顆衛(wèi)星失鎖的時候捕獲新的衛(wèi)星來進行定位。結(jié)合以上所述,本發(fā)明實例中典型的接收機運行流程如圖7所示,該流程包括以下步驟
步驟701初始化調(diào)度核;
步驟702所有處理核形成所述相關運算模塊,所述相關運算模塊首先工作于頻域相關模式,完成GNSS的衛(wèi)星載波相位和偽隨機碼相位的快速捕獲,并將搜索的結(jié)果反饋到調(diào)度核;
步驟703相關運算模塊轉(zhuǎn)為時域相關模式,調(diào)度核根據(jù)所述捕獲結(jié)果重新分配處理核,保留部分處理核維持相關運算模塊的工作,其余的處理核形成由所述衛(wèi)星跟蹤通道模塊和定位解算模塊組成的數(shù)據(jù)通路。更新新通道內(nèi)存區(qū)和通道狀態(tài)表;
步驟704調(diào)度核配置由處理核組成的定位解算模塊完成多星座融合定位解算; 步驟705調(diào)度核對衛(wèi)星通道狀態(tài)進行檢測; 步驟706如果穩(wěn)定跟蹤,則重復步驟703 ; 步驟707如果信號失鎖,則重復步驟702。以上僅為本發(fā)明較佳的實施例而已,并非用于限定本發(fā)明的保護范圍。任何本發(fā)明所屬技術領域內(nèi)的技術人員,在不脫離本發(fā)明所揭示的精神和范圍的前提下,可以在實施的形式及細節(jié)上做任何的修改和變化。
權利要求
1.基于多核處理器的多模GNSS軟件接收機的實現(xiàn)方法,其特征在于,分配N個核用于組成多模GNSS軟件接收機,其中一個核作為調(diào)度核完成多模GNSS接收機的調(diào)度和控制,其余N-I個核作為處理核完成GNSS中頻信號處理,N小于或等于處理器的核心數(shù)目;所述處理核在調(diào)度核控制下,按照多模GNSS接收機中頻信號的處理過程,自由組成三種并行處理模塊,組成處理模塊的處理核對GNSS中頻信號并行處理,所述三種并行處理模塊包括相關運算模塊,用于GNSS衛(wèi)星的載波相位和碼相位的搜索以及衛(wèi)星載波頻率的搜索;衛(wèi)星通道模塊,利用所述相關運算模塊的處理結(jié)果跟蹤GNSS衛(wèi)星,實現(xiàn)GNSS中頻信號的載波剝離和碼剝離;定位解算模塊,與所述的衛(wèi)星通道模塊組成數(shù)據(jù)通道,用于GNSS衛(wèi)星的偽距處理,實現(xiàn)多模多衛(wèi)星的聯(lián)合定位和導航。
2.如權利要求1所述的方法,其特征在于,所述的相關運算模塊由X個處理核通過片上網(wǎng)絡組成,個數(shù)X由調(diào)度核控制;所述的衛(wèi)星通道模塊由Y個處理核通過片上網(wǎng)絡組成,個數(shù)Y由調(diào)度核控制;所述的定位解算模塊由Z個處理核核通過片上網(wǎng)絡組成,個數(shù)Z由調(diào)度核控制;同一時刻中,X+Y+Z ^ N-I0
3.如權利要求1所述的方法,其特征在于,所述調(diào)度核首先分配所有處理核形成所述相關運算模塊完成GNSS的衛(wèi)星搜索,并將搜索的結(jié)果反饋到調(diào)度核;調(diào)度核再根據(jù)搜索結(jié)果對處理核進行調(diào)度,保留部分處理核維持相關運算模塊的工作,其余的處理核形成由所述衛(wèi)星跟蹤通道模塊和定位解算模塊組成的數(shù)據(jù)通路,完成對GNSS中頻信號處理,實現(xiàn)定位導航。
4.如權利要求1所述的方法,其特征在于,構(gòu)成相關運算模塊的處理核和調(diào)度核通過片上網(wǎng)絡相連,構(gòu)成相關運算模塊的處理核先后工作在頻域相關模式和時域相關模式,所述的頻域相關工作模式是指采用可變長傅里葉變換和可變長反傅里葉變換實現(xiàn)GNSS的衛(wèi)星載波相位和碼相位的搜索;所述時域相關模式是指采用連續(xù)滑動載波相位的方法進一步提高所述的頻域相關模式下結(jié)果的精確度;所述連續(xù)滑動載波相位方法為在所述碼相位固定的前提下,相關運算模塊為每一個衛(wèi)星載波相位頻點產(chǎn)生一個對應的衛(wèi)星本地信號, 并與射頻前端接收的GNSS中頻信號做相關運算,搜索所述頻點的相關運算結(jié)果的最大值, 反饋所述最大值對應的載波頻率信息與碼相位信息以及載噪比信息至調(diào)度核。
5.如權利要求1所述的方法,其特征在于所述調(diào)度核根據(jù)衛(wèi)星通道模塊中處理核的運算能力動態(tài)分配由一個處理核同時配置多條衛(wèi)星通道跟蹤多顆GNSS衛(wèi)星,或由幾個處理核協(xié)同工作組成一個衛(wèi)星通道跟蹤一顆GNSS衛(wèi)星;組成衛(wèi)星通道模塊的處理核與組成定位解算模塊的處理核之間通過片上網(wǎng)絡實時交換處理數(shù)據(jù);組成衛(wèi)星通道模塊的處理核與調(diào)度核通過片上網(wǎng)絡實時交換處理數(shù)據(jù);調(diào)度核對GNSS接收機搜索到的衛(wèi)星按照所述從相關運算模塊反饋來的載噪比信息進行排序,優(yōu)先選取信號強度好的衛(wèi)星分配衛(wèi)星通道。
6.如權利要求5所述的方法,其特征在于構(gòu)成衛(wèi)星通道模塊的處理核產(chǎn)生用于跟蹤 GNSS衛(wèi)星的本地信號,本地信號包括GNSS衛(wèi)星的載波副本、即時偽隨機碼副本、延時偽隨機碼副本和超前偽隨機碼副本;衛(wèi)星通道模塊中,每個衛(wèi)星通道有自己的衛(wèi)星控制單元和對應的數(shù)據(jù)內(nèi)存;所述的衛(wèi)星控制單元用于維持跟蹤GNSS衛(wèi)星數(shù)據(jù)比特的位同步和幀同步,控制導航數(shù)據(jù)的輸出,記錄當前處理數(shù)據(jù)幀的相對采樣點位置;所述數(shù)據(jù)內(nèi)存的組成包括臨時數(shù)據(jù)緩存區(qū)、本地信號緩存區(qū)、通道參數(shù)表和能量累加緩存區(qū)。
7.如權利要求6所述的方法,其特征在于,所述衛(wèi)星通道模塊按照對應衛(wèi)星信號的調(diào)制模式和發(fā)射模式分配衛(wèi)星通道,以最小要求處理的數(shù)據(jù)幀為更新步長,所述數(shù)據(jù)幀長度是射頻前端在一個偽隨機碼片的時間內(nèi)進行采樣的點數(shù),每間隔一個所述的更新步長,衛(wèi)星通道輸出一個數(shù)據(jù)幀的處理結(jié)果,衛(wèi)星控制單元對數(shù)據(jù)內(nèi)存完成以下更新步驟更新通道參數(shù)表衛(wèi)星控制單元保存上一數(shù)據(jù)幀的處理結(jié)果,計算處理下一數(shù)據(jù)幀的最優(yōu)通道參數(shù),更新并保存上述參數(shù);更新臨時數(shù)據(jù)緩存區(qū)衛(wèi)星控制單元從GNSS射頻前端模塊讀取下一個數(shù)據(jù)幀,保存在所述臨時數(shù)據(jù)緩沖區(qū);更新本地信號緩存區(qū)衛(wèi)星控制單元根據(jù)當前通道狀態(tài)參數(shù)表產(chǎn)生衛(wèi)星的載波副本、 即時偽隨機碼副本、延時偽隨機碼副本和超前偽隨機碼副本,保存在所述本地信號緩存區(qū);更新信號能量累加區(qū)衛(wèi)星控制單元對所述衛(wèi)星通道模塊的結(jié)果進行相干累加或非相干累加,保存在所述信號能量累加區(qū)。
8.如權利要求7所述的方法,其特征在于,所述衛(wèi)星通道包括GPS衛(wèi)星通道、GL0NASS 衛(wèi)星通道、Galileo衛(wèi)星通道和COMPASS衛(wèi)星通道,每個衛(wèi)星通道獨立工作,按照各自衛(wèi)星系統(tǒng)信號的調(diào)制和發(fā)射模式進行信號處理。
9.如權利要求1所述的方法,其特征在于,組成定位解算模塊的處理核還負責單星座定位時,在同一個衛(wèi)星星座里面選擇幾何精度因子最好的K顆衛(wèi)星進行定位解算,K大于或等于4;多星座聯(lián)合定位時,在L個不同衛(wèi)星星座里面選擇幾何精度因子最好的 M顆衛(wèi)星進行定位解算,L等于衛(wèi)星通道類型種數(shù),M大于或等于3+L。
10.如權利要求9所述的方法,其特征在于組成定位解算模塊的處理核對所述的K顆或M顆衛(wèi)星估算其偽距,計算GNSS接收機用戶的位置、速度和時間,用卡爾曼濾波的方法實現(xiàn)對用戶的導航定位。
全文摘要
本發(fā)明公開基于多核處理器的多模GNSS軟件接收機的實現(xiàn)方法。該方法分配N個可用核中的一個核作為調(diào)度核完成多模GNSS接收機的調(diào)度和控制,其余N-1個核作為處理核完成接收機的中頻信號處理。首先,調(diào)度核分配所有處理核形成相關運算模塊完成GNSS的衛(wèi)星搜索,并將搜索的結(jié)果反饋到調(diào)度核,然后調(diào)度核再根據(jù)搜索結(jié)果對處理核進行調(diào)度,保留部分處理核維持相關運算模塊的工作,其余的處理核形成由所述衛(wèi)星跟蹤通道模塊和定位解算模塊組成的數(shù)據(jù)通路,完成對GNSS中頻信號處理,實現(xiàn)定位導航。本發(fā)明利用多核處理器強大的處理能力,代替?zhèn)鹘y(tǒng)的GNSS硬件基帶芯片,對多系統(tǒng)不同類型的衛(wèi)星導航信號進行處理,可以靈活配置和調(diào)度。
文檔編號G01S19/29GK102183771SQ20111006746
公開日2011年9月14日 申請日期2011年3月21日 優(yōu)先權日2011年3月21日
發(fā)明者姜小波, 袁群, 譚亮宏 申請人:華南理工大學