專利名稱:用于全球定位系統(tǒng)的接口的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般涉及無(wú)線通信領(lǐng)域。具體地說(shuō),本發(fā)明涉及一種用于將全球定位系統(tǒng)(“GPS”)裝置連接到不同通信裝置而不依賴于該通信裝置發(fā)出的任何輔助特定協(xié)議的方法和設(shè)備。
背景技術(shù):
無(wú)線裝置(也稱為“移動(dòng)裝置”),例如雙向無(wú)線電通信裝置、便攜式電視、個(gè)人數(shù)字助理(“PDA”)、蜂窩電話(也稱為“無(wú)線電話機(jī)”、“無(wú)線電話”、“移動(dòng)電話機(jī)”、“移動(dòng)電話”、和/或“移動(dòng)臺(tái)”)、衛(wèi)星無(wú)線電接收機(jī)和例如全球定位系統(tǒng)(“GPS”)的衛(wèi)星定位系統(tǒng)(“SATPS”)(也稱為NAVSTAR),在世界范圍的應(yīng)用正在快速增長(zhǎng)。隨著采用無(wú)線裝置的人數(shù)的增加,無(wú)線業(yè)務(wù)提供商提供的功能(features)數(shù)目也在增加,這通過(guò)將這些無(wú)線裝置與其他產(chǎn)品集成在一起而實(shí)現(xiàn)。
自從在二十世紀(jì)七十年代早期由美國(guó)國(guó)防部(“DoD”)創(chuàng)建了NAVSTARGPS系統(tǒng)以來(lái),已出現(xiàn)了許多利用與GPS關(guān)聯(lián)的新技術(shù)的民用項(xiàng)目。作為示例,這些新技術(shù)包括允許用戶確定他們?cè)诘厍虮砻嫖恢玫膫€(gè)人GPS接收機(jī)、以及利用GPS時(shí)鐘基準(zhǔn)來(lái)工作的例如碼分多址(CDMA)和時(shí)分多址(TDMA)蜂窩網(wǎng)絡(luò)的許多通信網(wǎng)絡(luò)。作為這些新技術(shù)的結(jié)果,存在對(duì)這樣一種移動(dòng)通信裝置的增長(zhǎng)的需求,該移動(dòng)通信裝置能在緊急情況下發(fā)送它們的地點(diǎn),合并位置信息和通信裝置,定位和跟蹤旅游者、兒童和老人,以及為貴重財(cái)產(chǎn)提供保護(hù)。
一般來(lái)說(shuō),GPS系統(tǒng)通常是基于衛(wèi)星(也稱為“宇宙器”或“SV”)的導(dǎo)航系統(tǒng)。GPS的例子包括但不限于美國(guó)(“U.S.”)海軍衛(wèi)星導(dǎo)航系統(tǒng)(“NNSS”)(也稱為T(mén)RANSIT)、LORAN、肖蘭導(dǎo)航系統(tǒng)(shoran)、臺(tái)卡導(dǎo)航系統(tǒng)、TACAN、由美國(guó)國(guó)防部(DoD)開(kāi)發(fā)的稱為NAVSTAR的聯(lián)合計(jì)劃處(“JPO”)全球定位系統(tǒng)、稱為全球?qū)Ш叫l(wèi)星系統(tǒng)(“GLONASS”)的俄羅斯副本、以及例如提出的“伽利略”計(jì)劃的任何未來(lái)的西歐GPS。NAVSTARGPS(此后簡(jiǎn)稱為“GPS”)被初始開(kāi)發(fā)為軍用系統(tǒng)以滿足美國(guó)軍隊(duì)的需求;然而,美國(guó)國(guó)會(huì)后來(lái)也指令DoD促進(jìn)GPS的民用用途。結(jié)果,GPS現(xiàn)在是可由美國(guó)政府機(jī)構(gòu)(如軍隊(duì))和平民訪問(wèn)的雙用途系統(tǒng)。在Global PositioningSystemTheory and Practice,fifth,revised ed.,by Hofmann-Wellenhof,Lichtenegger and Collins;Springer-Verlag;Wien,New York,2001中描述了GPS系統(tǒng),通過(guò)引用而全部合并到其中。
通常,GPS的利用包括標(biāo)識(shí)地球上的精確地點(diǎn),并同步例如軍用通信網(wǎng)絡(luò)的電信網(wǎng)和例如CDMA和TDMA類系統(tǒng)的蜂窩電話網(wǎng)。另外,隨著美國(guó)國(guó)會(huì)通過(guò)聯(lián)邦通信委員會(huì)(“FCC”)發(fā)出對(duì)能在緊急情況下(一般稱為“增強(qiáng)911”服務(wù)或“E911”)提供50英尺之內(nèi)的蜂窩電話用戶地點(diǎn)的移動(dòng)電話網(wǎng)的命令,正采用GPS用于許多蜂窩應(yīng)用中的地點(diǎn)確定和同步。
一般來(lái)說(shuō),GPS衛(wèi)星陣列(一般稱為“GPS星群”)發(fā)送高度精確的時(shí)間編碼的信息,該信息允許GPS接收機(jī)計(jì)算其關(guān)于在地球上的緯度和經(jīng)度以及海平面之上的海拔的地點(diǎn)。設(shè)計(jì)GPS為非軍隊(duì)用戶提供具有大約100米之內(nèi)的精度的基本導(dǎo)航系統(tǒng)并甚至為軍隊(duì)和其它授權(quán)用戶提供更高的精度(將選擇可用性“SA”設(shè)置為ON)。
一般來(lái)說(shuō),GPS包括三種主要系統(tǒng)段空間、控制、和用戶。GPS的空間段是在地球上空沿軌道運(yùn)行的星群,其包含發(fā)射機(jī),并向地球上的GPS接收機(jī)發(fā)送高度精確的定時(shí)信息。現(xiàn)在,實(shí)現(xiàn)的GPS星群包括21顆主要工作衛(wèi)星加上3顆活動(dòng)共享衛(wèi)星。這些衛(wèi)星沿6個(gè)軌道安排,每一個(gè)軌道包含3或4個(gè)衛(wèi)星。這些軌道平面與赤道形成55°角。這些衛(wèi)星在地球上方大約10898海里(20200公里)的高度以每顆衛(wèi)星大約12小時(shí)的軌道周期沿軌道運(yùn)行。
一般來(lái)說(shuō),每一沿軌道運(yùn)行的衛(wèi)星包括4個(gè)高度準(zhǔn)確的原子鐘(兩個(gè)銣和兩個(gè)銫)。這些原子鐘提供用于產(chǎn)生發(fā)送到地球的唯一二進(jìn)制碼(也稱為偽隨機(jī)“PRN碼”或偽隨機(jī)噪聲“PN碼”)的精度計(jì)時(shí)脈沖。PRN碼標(biāo)識(shí)GPS星群中的特定衛(wèi)星。衛(wèi)星也發(fā)送數(shù)字編碼信息集,該數(shù)字編碼信息集包括已知作為年歷(almanac)數(shù)據(jù)和星歷(ephemeris)數(shù)據(jù)的用于確定衛(wèi)星的空間地點(diǎn)的兩類軌道參數(shù)。
星歷數(shù)據(jù)(也稱為“歷元(ephemerides)”)定義衛(wèi)星的精確軌道。星歷數(shù)據(jù)表示在任何給定時(shí)間該衛(wèi)星在哪兒,并且可根據(jù)精確緯度和經(jīng)度測(cè)量的衛(wèi)星地面軌跡而標(biāo)識(shí)其地點(diǎn)。星歷數(shù)據(jù)中的信息被編碼并在任何給定時(shí)間從提供地球上方的衛(wèi)星位置的精確表示的衛(wèi)星發(fā)送出去。通常,當(dāng)前星歷數(shù)據(jù)足夠用于在當(dāng)前SA的級(jí)別確定空間中幾米或幾十米的地點(diǎn)。地面控制站每小時(shí)更新一次星歷數(shù)據(jù)以確保精度。然而,在大約兩小時(shí)后,星歷數(shù)據(jù)的精度開(kāi)始降低。
年歷數(shù)據(jù)是星歷數(shù)據(jù)的子集。年歷數(shù)據(jù)包括關(guān)于星群中所有衛(wèi)星地點(diǎn)的較低精度信息。年歷數(shù)據(jù)包括相對(duì)少的參數(shù)并一般足以確定空間中幾公里的地點(diǎn)。每一GPS衛(wèi)星以十二點(diǎn)五(“12.5”)分鐘的周期而向GPS星群中的所有GPS衛(wèi)星廣播該年歷數(shù)據(jù)。所以,通過(guò)僅跟蹤一顆衛(wèi)星,可獲得軌道中所有其他衛(wèi)星的年歷數(shù)據(jù)。該年歷數(shù)據(jù)每幾天更新一次并直到大約幾個(gè)月一直有用。因?yàn)槠湎鄬?duì)長(zhǎng)的壽命,已關(guān)閉超過(guò)幾個(gè)小時(shí)的GPS接收機(jī)通常利用該年歷數(shù)據(jù)來(lái)確定哪個(gè)GPS衛(wèi)星是可見(jiàn)的(in-view)。然而,年歷和星歷數(shù)據(jù)都僅在有限數(shù)量時(shí)間中有效。這樣,隨著年歷和星歷數(shù)據(jù)的老化,基于該信息的衛(wèi)星地點(diǎn)越來(lái)越不精確,除非及時(shí)以適當(dāng)?shù)拈g隔更新該數(shù)據(jù)。
星歷數(shù)據(jù)包括在任何時(shí)刻在陸地坐標(biāo)系統(tǒng)中確定衛(wèi)星的位置和速度向量可用的三個(gè)數(shù)據(jù)集。這三個(gè)數(shù)據(jù)集包括年歷數(shù)據(jù)、廣播歷元、和精確歷元。這些數(shù)據(jù)在精度上不同并實(shí)時(shí)可用或在事件之后(after the fact)可用。通常,年歷數(shù)據(jù)的目的在于為用戶提供較少精確數(shù)據(jù)以便于接收機(jī)衛(wèi)星搜索或用于例如能見(jiàn)度圖表的計(jì)算的計(jì)劃任務(wù)。年歷數(shù)據(jù)至少每六天被更新一次并作為衛(wèi)星消息的部分而廣播。年歷消息必要地包括用于所有衛(wèi)星的軌道和衛(wèi)星時(shí)鐘校準(zhǔn)項(xiàng)的參數(shù)。GPS年歷數(shù)據(jù)在由Arlington,Va.的NavTech Seminars &NavTech Book and Software Store出版的1995年2月的重印本“GPS InterfaceControl Document ICD-GPS-200”for the “NAVSTAR GPS Space Segment andNavigation User Interfaces”中進(jìn)行了描述,通過(guò)引用而合并在這里。
在典型操作例子中,當(dāng)GPS接收機(jī)首次開(kāi)啟(一般稱作“冷啟動(dòng)”)或從超過(guò)幾小時(shí)的長(zhǎng)待令狀態(tài)中醒來(lái)時(shí),GPS接收機(jī)將掃描GPS頻譜以獲取從可用GPS衛(wèi)星發(fā)送的GPS信號(hào)。一旦獲取了GPS信號(hào),GPS接收機(jī)將然后從所獲取的GPS衛(wèi)星下載GPS星群的GPS年歷數(shù)據(jù)、星歷數(shù)據(jù)和時(shí)鐘校準(zhǔn)信息。一旦下載了年歷數(shù)據(jù),GPS衛(wèi)星將然后掃描GPS頻譜以得到年歷數(shù)據(jù)所示的可用(即“可見(jiàn)”)GPS衛(wèi)星。理想地,給定充足時(shí)間并假定GPS接收機(jī)周圍的環(huán)境狀態(tài)允許GPS接收機(jī)獲取兩個(gè)或三個(gè)附加可見(jiàn)GPS衛(wèi)星,則GPS接收機(jī)從這三到四個(gè)衛(wèi)星接收距離和定時(shí)信息并計(jì)算其在地球上的位置。
不幸地是,在很多應(yīng)用下,尤其在室內(nèi)或有限天空能見(jiàn)狀態(tài)下,時(shí)間和環(huán)境狀態(tài)可限制GPS接收機(jī)下載GPS年歷數(shù)據(jù)的能力。與時(shí)間關(guān)聯(lián)的問(wèn)題通常由Time-to-First-Fix(“TTFF”)值進(jìn)行描述。如果TTFF值高,則GPS接收機(jī)將具有有限的應(yīng)用,因?yàn)樗鼘⒒ㄙM(fèi)太長(zhǎng)時(shí)間而不能確定其初始地點(diǎn)。
作為一個(gè)例子,在無(wú)線或移動(dòng)(例如蜂窩)電話應(yīng)用中,具有集成GPS接收機(jī)的移動(dòng)電話或個(gè)人數(shù)字助理(“PDA”)可能不得不在進(jìn)行呼叫之前等待GPS接收機(jī)下載GPS年歷大約12.5分鐘(假設(shè)所有必要可見(jiàn)衛(wèi)星可看得見(jiàn)的理想環(huán)境狀態(tài))。這對(duì)于多數(shù)應(yīng)用是不能接受的。
在蜂窩電話應(yīng)用中,考慮到要求蜂窩電話在E911緊急呼叫中將其位置信息發(fā)送到應(yīng)急人員的E911命令,該限制更是不可接受的。如果用戶發(fā)現(xiàn)他們自己處于緊急情況中,并且?guī)в械腉PS的蜂窩電話關(guān)機(jī)或處于長(zhǎng)待令狀態(tài),則這些用戶在進(jìn)行將用戶地點(diǎn)發(fā)送到應(yīng)急人員的緊急呼叫之前,將一般不得不首先等待大約12.5分鐘,以保持連續(xù)不間斷衛(wèi)星可見(jiàn)性(因?yàn)镚PS接收機(jī)通常需要強(qiáng)信號(hào)來(lái)可靠地獲取年歷和/或星歷數(shù)據(jù))。在典型城市或自然阻塞的環(huán)境中,該等待將長(zhǎng)于12.5分鐘,因?yàn)樵摥h(huán)境狀態(tài)使得獲取第一衛(wèi)星更困難。應(yīng)注意這尤其在生死攸關(guān)的情況下是不可接受的。
以往的降低下載年歷數(shù)據(jù)所需的時(shí)間量的方案包括在GPS接收機(jī)的存儲(chǔ)單元(例如只讀存儲(chǔ)器“ROM”)中存儲(chǔ)一些種類的年歷(例如工廠安裝的年歷數(shù)據(jù))。通常,利用該預(yù)先存儲(chǔ)的年歷數(shù)據(jù)來(lái)降低冷啟動(dòng)狀態(tài)下的TTFF。在該方案中,該冷啟動(dòng)狀態(tài)一般由于與衛(wèi)星位置關(guān)聯(lián)的不確定性以及該預(yù)先存儲(chǔ)年歷的老化而仍然具有相對(duì)長(zhǎng)的TTFF時(shí)間。一旦獲取第一固定點(diǎn)(fix),該GPS接收機(jī)可然后從該獲取的衛(wèi)星下載更新的年歷數(shù)據(jù)并更新ROM(或隨機(jī)存取存儲(chǔ)器“RAM”)用于將來(lái)使用。然而,該方案仍然要求該GPS接收機(jī)從用于未來(lái)獲取的衛(wèi)星接收更新的年歷數(shù)據(jù)(即接收年歷數(shù)據(jù)的“新鮮”拷貝)。接收更新的年歷數(shù)據(jù)將仍然需要非常大的時(shí)間量,這將影響GPS接收機(jī)的性能。
響應(yīng)于這些問(wèn)題,已為移動(dòng)電話開(kāi)發(fā)了輔助方案,其為了例如獲取、定位計(jì)算和/或靈敏度改善的目的通過(guò)從通信模塊(也稱為“呼叫處理機(jī)”或“CP”)提供輔助數(shù)據(jù)而幫助GPS接收機(jī)。不幸地是,這些無(wú)線網(wǎng)絡(luò)中的輔助方案通常是蜂窩網(wǎng)絡(luò)(即例如TDMA、GSM、CDMA等的蜂窩平臺(tái))和特定賣主,并由位于該蜂窩網(wǎng)絡(luò)的地理定位服務(wù)器站(Geolocation ServerStation)提供。結(jié)果,移動(dòng)電話(也稱為“移動(dòng)臺(tái)”或“MS”)中的GPS接收機(jī)通常必須與該蜂窩網(wǎng)絡(luò)的地理定位服務(wù)器站兼容。
然而,在美國(guó)及國(guó)外存在許多工作的蜂窩網(wǎng)絡(luò),所述蜂窩網(wǎng)絡(luò)合并或?qū)⒑喜⒗帽舜瞬患嫒莸牡乩矶ㄎ环?wù)器站協(xié)議的地理定位服務(wù)器站。所以,需要這樣一種系統(tǒng),該系統(tǒng)能夠允許GPS接收機(jī)與使用獨(dú)立地理定位服務(wù)器站協(xié)議的許多地理定位服務(wù)器站一起工作。
發(fā)明內(nèi)容
一種用于在移動(dòng)裝置中處理利用全球定位系統(tǒng)(“GPS”)接口在呼叫處理機(jī)處接收的協(xié)議輔助數(shù)據(jù)的協(xié)議獨(dú)立接口,其中公開(kāi)了根據(jù)地理定位服務(wù)器站協(xié)議而產(chǎn)生該協(xié)議輔助數(shù)據(jù)。該協(xié)議獨(dú)立接口可包括用于在GPS接口接收在該呼叫處理機(jī)處接收的協(xié)議輔助數(shù)據(jù)的部件;用于將所接收的協(xié)議輔助數(shù)據(jù)轉(zhuǎn)換為對(duì)該地理定位服務(wù)器站協(xié)議透明的接口數(shù)據(jù)的部件;和用于將該接口數(shù)據(jù)傳遞到GPS模塊的部件。
操作中,該協(xié)議獨(dú)立接口執(zhí)行用于在移動(dòng)裝置中處理利用全球定位系統(tǒng)(“GPS”)接口在呼叫處理機(jī)處接收的協(xié)議輔助數(shù)據(jù)的處理,其中該協(xié)議輔助數(shù)據(jù)根據(jù)地理定位服務(wù)器站協(xié)議而產(chǎn)生。該協(xié)議獨(dú)立接口執(zhí)行以下處理在GPS接口接收在該呼叫處理機(jī)處接收的協(xié)議輔助數(shù)據(jù);將所接收的協(xié)議輔助數(shù)據(jù)轉(zhuǎn)換為對(duì)該地理定位服務(wù)器站協(xié)議透明的接口數(shù)據(jù);和將該接口數(shù)據(jù)傳遞到GPS模塊。
一旦檢查了下圖和詳細(xì)描述,本發(fā)明的其他系統(tǒng)、方法、特征和優(yōu)點(diǎn)對(duì)于本領(lǐng)域技術(shù)人員來(lái)說(shuō)將是或變得清楚。意欲將所有這些其他系統(tǒng)、方法、特征和優(yōu)點(diǎn)包括在該描述中、包括在本發(fā)明的范圍中、并受到所附權(quán)利要求的保護(hù)。
附圖中的組件沒(méi)有必要按比例繪制,其重點(diǎn)在于圖示本發(fā)明的原理。在圖中,相同的附圖標(biāo)記指明不同視圖中的對(duì)應(yīng)部件。
圖1是工作中的典型公知GPS接收機(jī)的圖示。
圖2圖示了GPS的多個(gè)不同已知應(yīng)用的示意圖200。
圖3示出了經(jīng)由路徑302和304從GPS星群226接收GPS數(shù)據(jù)的已知無(wú)線移動(dòng)定位系統(tǒng)架構(gòu)300。
圖4示出了包括經(jīng)由信號(hào)通道406與GPS模塊404進(jìn)行信號(hào)通信的呼叫處理機(jī)402的移動(dòng)裝置400的典型實(shí)現(xiàn)。
圖5示出了在無(wú)線移動(dòng)定位系統(tǒng)架構(gòu)中的協(xié)議獨(dú)立接口的示范實(shí)現(xiàn)的方框圖。
圖6示出了利用根據(jù)圖5的GSM環(huán)境中的FSM的移動(dòng)裝置的示范實(shí)現(xiàn)的方框圖。
圖7示出了利用根據(jù)圖5的CDMA環(huán)境中的FSM的移動(dòng)裝置的示范實(shí)現(xiàn)的方框圖。
圖8示出了地理定位服務(wù)器站、呼叫處理機(jī)和GPS模塊之間的RRLP到協(xié)議獨(dú)立接口消息流程圖的例子。
圖9示出了呼叫處理機(jī)、GPS模塊和基站(“BS”)之間的協(xié)議獨(dú)立接口消息流程圖的例子。
具體實(shí)施例方式
首先轉(zhuǎn)到圖1。在圖1中,圖示了已知全球定位系統(tǒng)(“GPS”)的示范實(shí)現(xiàn)的示意圖100。在工作中,位于地球104上的GPS接收機(jī)102被設(shè)計(jì)為同時(shí)分別從幾個(gè)GPS衛(wèi)星114、116、118和120拾取信號(hào)106、108、110和112。該GPS接收機(jī)102對(duì)信息進(jìn)行解碼,并利用時(shí)間和星歷數(shù)據(jù)計(jì)算地球104上GPS接收機(jī)102的位置。該GPS接收機(jī)102通常包括執(zhí)行必要計(jì)算的浮點(diǎn)處理器(未示出),并可在顯示器122上輸出緯度、經(jīng)度以及海拔的十進(jìn)制或圖形顯示。一般來(lái)說(shuō),需要分別來(lái)自至少3個(gè)衛(wèi)星114、116和118的信號(hào)106、108和110用于緯度和經(jīng)度信息。需要來(lái)自衛(wèi)星120的第四衛(wèi)星信號(hào)112來(lái)計(jì)算海拔。
圖2圖示了GPS的多種不同已知應(yīng)用的示意圖200。在圖2中,許多示例裝置206、204、202、208、210和212被示出用于分別接收和利用來(lái)自衛(wèi)星的GPS星群226(其中未示出單個(gè)衛(wèi)星)的GPS信號(hào)214、216、218、222、220和224。該示例裝置可包括手持GPS接收機(jī)202、汽車GPS接收機(jī)204、集成蜂窩電話GPS接收機(jī)206、集成個(gè)人數(shù)字助理(PDA)GPS接收機(jī)208、集成移動(dòng)計(jì)算機(jī)(例如典型“膝上”或“筆記本”計(jì)算機(jī))GPS接收機(jī)210、集成計(jì)算機(jī)(非移動(dòng))GPS接收機(jī)212、或可集成GPS接收機(jī)的任何其他類似類型的裝置。
本領(lǐng)域技術(shù)人員應(yīng)注意以往GPS接收機(jī)典型是從GPS星群226接收GPS信號(hào)的單機(jī)裝置而沒(méi)有來(lái)自外部源的任何幫助。然而,隨著國(guó)會(huì)E911命令以及蜂窩和非蜂窩網(wǎng)中無(wú)線通信的持續(xù)增長(zhǎng),越來(lái)越多的通信裝置開(kāi)始將GPS接收機(jī)集成在通信裝置中以滿足E911命令和/或用于對(duì)GPS接收機(jī)的網(wǎng)絡(luò)輔助幫助。
這些新集成通信裝置可通過(guò)例如基站塔228的連接(collection)節(jié)點(diǎn)與蜂窩電話通信網(wǎng)通信或通過(guò)非蜂窩連接點(diǎn)230與非蜂窩通信網(wǎng)通信。該蜂窩通信網(wǎng)可為T(mén)DMA、CDMA、GSM、寬帶CDMA(也稱為“W-CDMA”和/或通用移動(dòng)電信系統(tǒng)“UMTS”)、CDMA-2000、通用無(wú)線分組業(yè)務(wù)(“GPRS”)、或增強(qiáng)移動(dòng)電話業(yè)務(wù)(“AMPS”)類型蜂窩網(wǎng)絡(luò)。非蜂窩通信網(wǎng)可包括例如藍(lán)牙、基于IEEE 802.11的無(wú)線保真(“Wi-Fi”)網(wǎng)、或其他類似無(wú)線網(wǎng)的網(wǎng)絡(luò)。作為示例,手持GPS接收機(jī)202、集成汽車GPS接收機(jī)204、集成蜂窩電話GPS接收機(jī)206、PDA 208、和移動(dòng)計(jì)算機(jī)210可分別經(jīng)由信號(hào)通道232、234、236、238和240與蜂窩基站228進(jìn)行通信。類似地,手持GPS接收機(jī)202、PDA 208、和移動(dòng)計(jì)算機(jī)210可分別經(jīng)由信號(hào)通道242、246和244與非蜂窩連接點(diǎn)230進(jìn)行通信。
作為非無(wú)線通信環(huán)境中的集成GPS接收機(jī)的例子,非移動(dòng)計(jì)算機(jī)212可包括通過(guò)內(nèi)部添加的外圍裝置而內(nèi)部集成在母板上的集成GPS接收機(jī)(未示出)、或作為外部連接的外圍裝置。在該例中,集成GPS接收機(jī)(未示出)可經(jīng)由網(wǎng)絡(luò)250和調(diào)制解調(diào)器252而從網(wǎng)絡(luò)服務(wù)器248接收幫助。網(wǎng)絡(luò)250可為公知簡(jiǎn)易老式電話業(yè)務(wù)(“POTS”)、以太網(wǎng)、因特網(wǎng)或其他類似網(wǎng)絡(luò)。應(yīng)注意也可以與非移動(dòng)計(jì)算機(jī)212相同的方式利用連接到POTS、以太網(wǎng)和因特網(wǎng)的其他裝置(例如自動(dòng)售貨機(jī)、辦公和商業(yè)器材、或其他重要器材)。
圖3示出了經(jīng)由信號(hào)通道302和304從GPS星群226接收GPS數(shù)據(jù)的已知無(wú)線移動(dòng)定位系統(tǒng)架構(gòu)300。該架構(gòu)300可包括移動(dòng)裝置306、基站308、無(wú)線網(wǎng)絡(luò)基礎(chǔ)設(shè)施310、地理定位服務(wù)器站312、GPS基準(zhǔn)接收機(jī)314和可選最終用戶316。該GPS基準(zhǔn)接收機(jī)314經(jīng)由信號(hào)通道302從GPS星群226接收GPS信號(hào)。該移動(dòng)裝置306經(jīng)由信號(hào)通道304從GPS星群226接收GPS信號(hào)并經(jīng)由信號(hào)通道318與基站308進(jìn)行信號(hào)通信。一般來(lái)說(shuō),移動(dòng)裝置306包括呼叫處理機(jī)320和GPS模塊322。呼叫處理機(jī)320和GPS模塊322經(jīng)由信號(hào)通道324進(jìn)行信號(hào)通信。信號(hào)通道324可為RS232鏈路、經(jīng)由軟件數(shù)據(jù)結(jié)構(gòu)的內(nèi)存共享的邏輯接口或其他類型電氣和/或邏輯接口。本領(lǐng)域技術(shù)人員應(yīng)注意GPS模塊322可實(shí)現(xiàn)為單獨(dú)模塊和/或裝置、或?qū)崿F(xiàn)為位于包括呼叫處理機(jī)320的移動(dòng)裝置306內(nèi)任何地方的功能單元。
一般來(lái)說(shuō),圖3示出的架構(gòu)300要求GPS模塊322利用與地理定位服務(wù)器站312所利用的協(xié)議相同的協(xié)議,以從地理定位服務(wù)器站312接收任何GPS輔助信息。
圖4示出了包括經(jīng)由信號(hào)通道406與GPS模塊404進(jìn)行信號(hào)通信的呼叫處理機(jī)402的移動(dòng)裝置400的典型實(shí)現(xiàn)。該移動(dòng)裝置400可為圖2所示的示例裝置202、204、206、208、210、和212。該呼叫處理機(jī)402經(jīng)由信號(hào)通道318與基站308進(jìn)行信號(hào)通信,而GPS模塊404經(jīng)由信號(hào)通道304從GPS星群226接收GPS數(shù)據(jù)。作為示例,如果呼叫處理機(jī)402和GPS模塊404為物理獨(dú)立的裝置,則可用RS232數(shù)據(jù)鏈路實(shí)現(xiàn)信號(hào)通道406。該信號(hào)通道406也可實(shí)現(xiàn)為經(jīng)由軟件數(shù)據(jù)結(jié)構(gòu)的內(nèi)存共享的邏輯接口或其他類型電氣和/或邏輯接口。
在典型操作中,移動(dòng)裝置400如圖3所示從GPS星群226接收GPS信號(hào)304,并通過(guò)基站塔308從蜂窩電話通信網(wǎng)基礎(chǔ)設(shè)施310接收通信信號(hào)318,或通過(guò)非蜂窩連接點(diǎn)230利用非蜂窩通信網(wǎng)(未示出)接收通信信號(hào)318,圖2。
圖4的呼叫處理機(jī)402可為能與外部通信網(wǎng)(例如圖3的蜂窩電話通信網(wǎng)基礎(chǔ)設(shè)施310)、或非蜂窩無(wú)線或非無(wú)線網(wǎng)(未示出)進(jìn)行單向或雙向通信的任何通信裝置。呼叫處理機(jī)402包括用于建立和管理電信連接的專用硬件(未示出)和軟件(未示出)。
蜂窩電話類型的呼叫處理機(jī)402的例子可包括伊利諾斯州Schaumberg的摩托羅拉公司生產(chǎn)的蜂窩電話呼叫處理集成調(diào)度增強(qiáng)網(wǎng)絡(luò)(“iDENTM”),芬蘭的諾基亞、瑞典的索愛(ài)、加利福尼亞州圣地亞哥的高通公司利用的CDMA20001X類型芯片組,或能夠與GPS模塊308內(nèi)的GPS接收機(jī)進(jìn)行通信的任何類似類型的GSM/CDMA/TDMA/UMTS類通信裝置。非蜂窩電話類型通信裝置的例子可包括由德國(guó)西門(mén)子SA生產(chǎn)的SX45 GPS輔助設(shè)備、能夠與BlueTooth通信的任何通信裝置、基于IEEE 802.11的無(wú)線保真(“Wi-Fi”)網(wǎng)絡(luò)、或其他類似無(wú)線網(wǎng)。GPS模塊404可包括能夠與呼叫處理機(jī)402進(jìn)行通信的任何GPS接收機(jī)。
在圖5中,示出了協(xié)議獨(dú)立無(wú)線移動(dòng)定位系統(tǒng)架構(gòu)500的示范實(shí)現(xiàn)。在圖5中,架構(gòu)500可包括移動(dòng)裝置506、基站508、無(wú)線網(wǎng)絡(luò)基礎(chǔ)設(shè)施510、地理定位服務(wù)器站512、GPS基準(zhǔn)接收機(jī)514、和可選最終用戶516。移動(dòng)裝置506和GPS基準(zhǔn)接收機(jī)514分別經(jīng)由信號(hào)通道504和502從GPS衛(wèi)星星群226接收GPS信號(hào)。
移動(dòng)裝置506可包括呼叫處理機(jī)520、GPS模塊522和協(xié)議獨(dú)立接口(這里稱為“PI2”)524。PI2 524是允許GPS模塊522從地理定位服務(wù)器站512接收輔助數(shù)據(jù)的接口,而不要求GPS模塊522利用與地理定位服務(wù)器站512所利用的協(xié)議相同的協(xié)議。所以,PI2 524使得GPS模塊522能夠免于不同地理定位服務(wù)器站的多協(xié)議的特定實(shí)現(xiàn)。術(shù)語(yǔ)模塊的使用可為獨(dú)立模塊或集成在主板或集成電路中的子系統(tǒng)。
操作中,每一地理定位協(xié)議可經(jīng)由PI2 524中的變換器來(lái)實(shí)現(xiàn),該變換器將地理定位服務(wù)器站512協(xié)議變換為GPS模塊522使用的獨(dú)立協(xié)議。這允許隨著移動(dòng)裝置506不干涉從一種無(wú)線通信標(biāo)準(zhǔn)到另一種無(wú)線通信標(biāo)準(zhǔn),而實(shí)現(xiàn)地理定位信息的無(wú)縫可用性,從而改變移動(dòng)裝置506從呼叫處理機(jī)520接收輔助數(shù)據(jù)并向地理定位服務(wù)器站512發(fā)送位置或其他地理定位結(jié)果的方式。結(jié)果,因?yàn)镻I2 524能夠?qū)?lái)自由移動(dòng)裝置506的用戶(未示出)預(yù)訂的通信系統(tǒng)的地理定位服務(wù)器站512的GPS信息變換為GPS模塊522所利用的協(xié)議,所以在全世界各地利用的所有不同空中接口的每一唯一地理定位信息(例如IS-817、IS-801等)可由GPS裝置506提供,而無(wú)需復(fù)位或重新配置該GPS模塊522。PI2 524的例子包括但不限于由加利福尼亞州圣何塞的SiRF科技公司開(kāi)發(fā)和擁有的輔助獨(dú)立互用性接口(“AI3”)。
本領(lǐng)域技術(shù)人員應(yīng)注意存在為不同類型無(wú)線網(wǎng)絡(luò)開(kāi)發(fā)的不同地理定位標(biāo)準(zhǔn)。作為示例,基站508和基礎(chǔ)設(shè)施510之間的接口526可為任何空中接口。該接口526典型由呼叫處理機(jī)520制造商控制。通常,PI2 524包括統(tǒng)稱為“F”接口(未示出)和“G”接口(未示出)的兩種接口。
作為GPS模塊522和呼叫處理機(jī)520之間的客戶機(jī)系統(tǒng)接口的F接口擔(dān)當(dāng)自舉協(xié)議,該自舉協(xié)議總是存在并允許呼叫處理機(jī)520在運(yùn)行時(shí)選擇如何將幫助傳送到輔助封裝層的GPS模塊522。呼叫處理機(jī)520可在空中接口(例如端對(duì)端系統(tǒng)架構(gòu)情況下的接口526)或G接口之間選擇。F接口可執(zhí)行以下任務(wù)來(lái)自呼叫處理機(jī)520的GPS模塊522硬件管理(上電/斷電、復(fù)位);如果可用,隱含輔助接口,即經(jīng)由呼叫處理機(jī)520發(fā)送來(lái)自網(wǎng)絡(luò)(或來(lái)自呼叫處理機(jī)520實(shí)時(shí)時(shí)鐘)的時(shí)間和頻率變換、以及移動(dòng)裝置506的大致位置(如果其存在,一般隱含在網(wǎng)絡(luò)中);會(huì)話打開(kāi)/關(guān)閉(即通知GPS模塊522已打開(kāi)/關(guān)閉空中接口連接);以及在雙模式移動(dòng)裝置506中,通知GPS模塊522打開(kāi)了哪個(gè)空中接口,由此通知GPS模塊522使用哪組地理定位空中接口協(xié)議來(lái)與地理定位服務(wù)器站對(duì)話。
與F接口不同,利用G接口將從基站508接收的GPS輔助信息傳送到GPS模塊522。由于通常存在許多現(xiàn)有地理定位(Geolocation)協(xié)議,所以G接口被設(shè)計(jì)為可在大范圍地理定位標(biāo)準(zhǔn)和獨(dú)立的空中接口上使用,即對(duì)于可應(yīng)用空中接口是唯一的。PI2 524可實(shí)現(xiàn)為可應(yīng)用地理定位標(biāo)準(zhǔn)的簡(jiǎn)化。
操作中,呼叫處理機(jī)520通過(guò)G接口而將PI2格式的位置請(qǐng)求信息和網(wǎng)絡(luò)輔助信息發(fā)送到GPS模塊522。反過(guò)來(lái),GPS模塊522通過(guò)同一接口將位置結(jié)果或誤差通知發(fā)送到呼叫處理機(jī)520。應(yīng)注意包括SAMPS、GSM、和CDMA的所有地理定位協(xié)議工作在交互作用典范下?;?08僅將移動(dòng)裝置506所請(qǐng)求的發(fā)回來(lái)。一般來(lái)說(shuō),執(zhí)行交互作用的對(duì)策高度依賴于GPS模塊522處理的知識(shí)。
另外,與許多協(xié)議堆棧級(jí)相反,地理定位協(xié)議是應(yīng)用協(xié)議,這意味著它們處理消息的語(yǔ)義(含義)。所以,它們并不僅將數(shù)據(jù)從一方運(yùn)輸?shù)搅硪环剑瑹o(wú)需TCP-IP堆棧中交換或重復(fù)的誤差校正和消除。這樣,處理該協(xié)議(例如判決請(qǐng)求一些數(shù)據(jù))的任何實(shí)體需要知道這些數(shù)據(jù)用于什么,以及在該協(xié)議上交換的每一參數(shù)的含義(即其需要知道GPS方發(fā)生了什么)。這樣,地理定位協(xié)議的實(shí)施者應(yīng)為GPS“了解”。
所以,PI2 524利用空中接口有限狀態(tài)機(jī)(“FSM”)(未示出)。一般來(lái)說(shuō),這導(dǎo)致FSM當(dāng)前駐留的狀態(tài)被GPS存儲(chǔ)器(未示出)的內(nèi)容的當(dāng)前知識(shí)強(qiáng)加,并導(dǎo)致發(fā)送請(qǐng)求消息以完成一些不完全的GPS信息的判決被內(nèi)建在FSM自身中。
回到圖6,圖6示出了利用FSM的移動(dòng)裝置600的方框圖。移動(dòng)裝置600包括呼叫處理機(jī)602和GPS模塊604。呼叫處理機(jī)602包括空中接口CP模塊606、空中接口協(xié)議到GPS模塊接口轉(zhuǎn)換器608、GPS模塊數(shù)據(jù)結(jié)構(gòu)610、GPS模塊空中接口匯編程序/反匯編程序612、GPS模塊/CP系統(tǒng)消息協(xié)議匯編程序/反匯編程序614、和GPS模塊接口模塊616。GPS模塊604包括CP接口模塊618、PI2接口模塊620、PI2數(shù)據(jù)結(jié)構(gòu)622、CP系統(tǒng)接口FSM 624、和GPS內(nèi)核626。GPS內(nèi)核626經(jīng)由信號(hào)通道632從GPS衛(wèi)星星群226接收GPS信號(hào),并且空中接口CP模塊606經(jīng)由信號(hào)通道630與基站(未示出)進(jìn)行信號(hào)通信。
圖6示出了將在基于IS-801的CDMA移動(dòng)裝置600內(nèi)部實(shí)現(xiàn)的PI2的高級(jí)架構(gòu)。呼叫處理機(jī)602可經(jīng)由信號(hào)通道(包括但不限于RS232鏈路)628和硬件線路(用于時(shí)間和頻率變換)而與GPS模塊604進(jìn)行通信。信號(hào)通道628可實(shí)現(xiàn)為RS232接口、經(jīng)由軟件的內(nèi)存共享的邏輯接口、數(shù)據(jù)結(jié)構(gòu)、其他電氣和/或邏輯接口。F和G接口636和634是用于RS232接口的兩個(gè)單獨(dú)邏輯信道。G接口634被設(shè)計(jì)為將PI2輔助數(shù)據(jù)傳遞到GPS模塊604。輔助數(shù)據(jù)的剩余部分將經(jīng)由F接口636而傳遞到GPS模塊604。在GPS模塊604方,F(xiàn)接口638是標(biāo)準(zhǔn)GPS(例如SiRFLoc)客戶機(jī)接口,而G接口640對(duì)于任何標(biāo)準(zhǔn)空中接口協(xié)議是透明的。對(duì)于IS-801呼叫處理機(jī)602,PI2數(shù)據(jù)將經(jīng)由空中接口協(xié)議到GPS模塊接口協(xié)議轉(zhuǎn)換器(也稱為IS-801消息到PI2轉(zhuǎn)換器)而產(chǎn)生。PI2數(shù)據(jù)在經(jīng)由信號(hào)通道628傳遞到GPS模塊604之前,經(jīng)由GPS模塊空中接口匯編程序/反匯編程序(也稱為PI2接口消息處理程序(handler))612而包裝為G消息格式。呼叫處理機(jī)602從合適的空中接口消息獲得時(shí)間、地點(diǎn)和頻率數(shù)據(jù)。該地點(diǎn)數(shù)據(jù)經(jīng)由“F”接口636消息(近似移動(dòng)裝置600定位響應(yīng)消息)被傳遞到GPS模塊604。該時(shí)間和頻率數(shù)據(jù)被傳遞到GPS模塊604。
PI2數(shù)據(jù)結(jié)構(gòu)包括關(guān)于電離層、衛(wèi)星星歷和移動(dòng)裝置600位置請(qǐng)求參數(shù)的信息。所有這些數(shù)據(jù)通常按字節(jié)定位。在呼叫處理機(jī)602建立與基站(未示出)的通信鏈路之后,PI2數(shù)據(jù)結(jié)構(gòu)需要被復(fù)位為0。存在少數(shù)輔助數(shù)據(jù)源,包括近似移動(dòng)裝置600位置、地點(diǎn)請(qǐng)求參數(shù)、星歷數(shù)據(jù)、GPS時(shí)間、和頻率。可用基站位置的知識(shí)獲得第一源?;疚恢每捎米鹘埔苿?dòng)裝置600位置。存在得到基站位置數(shù)據(jù)IS-95隱含消息和IS-801協(xié)議消息的兩種方式。IS-95尋呼信道“系統(tǒng)參數(shù)消息”包括經(jīng)度和緯度的BS位置數(shù)據(jù)。由于海拔數(shù)據(jù)在該消息中不可用,所以該近似移動(dòng)裝置600位置的海拔將被設(shè)置為0。呼叫處理機(jī)602也可經(jīng)由IS-801“提供基站年歷”消息而得到基站位置數(shù)據(jù)。該消息包括可用于計(jì)算基站經(jīng)度、緯度和海拔的充足數(shù)據(jù)。在該方法中,在PDE能應(yīng)答該“提供基站年歷”消息之前,呼叫處理機(jī)602將需要發(fā)送IS-801“請(qǐng)求基站年歷”消息。與IS-95隱含方法相比,這通常需要附加消息處理。
該地點(diǎn)請(qǐng)求參數(shù)也可幫助定位移動(dòng)裝置600。該IS-801“請(qǐng)求地點(diǎn)響應(yīng)”消息提供數(shù)據(jù)來(lái)計(jì)算PI2地點(diǎn)請(qǐng)求參數(shù)的固定點(diǎn)之間的時(shí)間和固定點(diǎn)數(shù)目。另外,利用該星歷數(shù)據(jù),IS-801“提供GPS星歷”消息將為RI2提供要轉(zhuǎn)換為星歷數(shù)據(jù)的所有數(shù)據(jù)。
輔助的GPS時(shí)間也允許GPS時(shí)間不確定性的減小,GPS模塊604可經(jīng)由時(shí)間變換方法而同步GPS時(shí)鐘和CDMA系統(tǒng)時(shí)鐘。呼叫處理機(jī)602同步聽(tīng)筒(handset)時(shí)鐘和可從CDMA同步信道“同步信道消息”獲得的CDMA系統(tǒng)時(shí)間。類似地,頻率輔助可用于降低GPS頻率不確定性,GPS模塊604可經(jīng)由頻率變換方法而同步GPS時(shí)鐘和呼叫處理機(jī)602以及基站時(shí)鐘。
操作中,呼叫處理機(jī)602軟件經(jīng)由IS-801和IS-95消息協(xié)議而為網(wǎng)絡(luò)輔助數(shù)據(jù)處理與基站的通信。PI2數(shù)據(jù)包括移動(dòng)裝置600位置請(qǐng)求參數(shù)和星歷輔助數(shù)據(jù)。呼叫處理機(jī)602可通過(guò)利用將從IS-801“請(qǐng)求地點(diǎn)響應(yīng)”消息恢復(fù)的位置固定點(diǎn)數(shù)據(jù)的數(shù)目而計(jì)算移動(dòng)裝置600位置請(qǐng)求參數(shù)。呼叫處理機(jī)602通過(guò)從IS-801“提供GPS星歷”消息恢復(fù)壓縮的星歷數(shù)據(jù)而產(chǎn)生PI2格式的星歷輔助數(shù)據(jù)。呼叫處理機(jī)602應(yīng)將移動(dòng)裝置600位置請(qǐng)求參數(shù)和星歷輔助數(shù)據(jù)存儲(chǔ)到PI2數(shù)據(jù)結(jié)構(gòu)中。
呼叫處理機(jī)602可使用在移動(dòng)裝置600空閑狀態(tài)期間從IS-95“系統(tǒng)參數(shù)消息”獲得的基站位置數(shù)據(jù),并將其用作近似移動(dòng)裝置600位置。由于在IS-801“系統(tǒng)參數(shù)消息”中缺少基站的海拔信息,所以呼叫處理機(jī)602將近似移動(dòng)裝置600位置的海拔設(shè)置為0。
呼叫處理機(jī)602可選擇以從IS-801“提供基站年歷”消息獲得BS位置數(shù)據(jù)。通過(guò)選擇該方法,呼叫處理機(jī)602需要在移動(dòng)裝置600系統(tǒng)空閑狀態(tài)期間發(fā)送IS-801“請(qǐng)求基站年歷”消息或業(yè)務(wù)信道狀態(tài)上的移動(dòng)裝置600控制。與隱含IS-95方法相比,該方法要求處理兩個(gè)IS-801消息并具有時(shí)延-晚于移動(dòng)裝置600空閑狀態(tài)。在“基站年歷”消息中發(fā)現(xiàn)的多個(gè)基站坐標(biāo)中,呼叫處理機(jī)602應(yīng)拾取與其具有直接無(wú)線電連接的基站作為用于近似移動(dòng)裝置600位置的參考基站。
呼叫處理機(jī)602使用從IS-95“同步信道消息”獲得的CDMA系統(tǒng)時(shí)間作為呼叫處理機(jī)602時(shí)間。呼叫處理機(jī)602經(jīng)由時(shí)間變換方法而發(fā)送定時(shí)信息到GPS模塊604。類似地,呼叫處理機(jī)602經(jīng)由頻率變換方法而同步其時(shí)鐘頻率和GPS模塊604頻率。
呼叫處理機(jī)602經(jīng)由G接口634“PI2數(shù)據(jù)消息”而發(fā)送PI2數(shù)據(jù)到GPS模塊604。呼叫處理機(jī)602經(jīng)由合適的F接口636消息而發(fā)送近似移動(dòng)裝置600位置、時(shí)間和頻率變換數(shù)據(jù)。
為了提供基于PI2的定位業(yè)務(wù),呼叫處理機(jī)602將合適的值設(shè)置到IS-801消息中的某一數(shù)據(jù)字段。當(dāng)呼叫處理機(jī)602經(jīng)由F接口636從GPS模塊604接收位置結(jié)果時(shí),它將該位置結(jié)果轉(zhuǎn)換為要發(fā)送到PDE的IS-801消息格式。
響應(yīng)于從PDE發(fā)送的IS-801“請(qǐng)求MS信息”消息,呼叫處理機(jī)602將IS-801“提供移動(dòng)裝置600信息”消息的REQ_PAR_RECORD設(shè)置如下1.將RESP_PAR_RECORD的GPS_ACQ_CAP和LOC_CALC_CAP設(shè)置為下述值GPS_ACQ_CAP(12比特)-比特4(GPS星歷)和比特7(GPS自主獲取能力)被設(shè)置為“1”,其他比特被設(shè)置為“0”;和2.LOC_CALC_CAP(12比特)-比特5(利用星歷的地點(diǎn)計(jì)算能力)和比特7(自主地點(diǎn)計(jì)算能力)被設(shè)置為“1”,其他比特被設(shè)置為“0”。
如果呼叫處理機(jī)602選擇以經(jīng)由IS-801基站年歷數(shù)據(jù)而獲得近似移動(dòng)裝置600位置,然后呼叫處理機(jī)602將IS-801“請(qǐng)求基站年歷”消息的REQ_PAR_RECORD設(shè)置如下EXT_BS_ALM(1比特)-設(shè)置為1。
呼叫處理機(jī)602發(fā)送IS-801“請(qǐng)求GPS年歷”消息以獲得年歷輔助數(shù)據(jù)。呼叫處理機(jī)602將IS-801“請(qǐng)求GPS年歷”消息的REQ_PAR_RECORD設(shè)置如下AB_PAR_REQ(1比特)-設(shè)置為1。
在從GPS模塊604接收“F”接口“位置結(jié)果”消息之后,呼叫處理機(jī)602如下將該位置結(jié)果數(shù)據(jù)轉(zhuǎn)換為IS-801“提供定位響應(yīng)”消息1.TIME_REF_CDMA(14比特)。呼叫處理機(jī)602將GPS時(shí)間轉(zhuǎn)換為CDMA系統(tǒng)時(shí)間。該GPS時(shí)間由“F”接口“位置結(jié)果”消息的MEAS_GPS_WEEK和MEAS_GPS_SECONDS定義。MEAS_GPS_WEEK是擴(kuò)展GPS星期編號(hào),而MEAS_GPS_SECONDS是以1/1000秒為單位的從當(dāng)前GPS星期開(kāi)始之后過(guò)去的時(shí)間的編號(hào)。該CDMA系統(tǒng)時(shí)間在TAI/EIA-95-B的1.2中定義。而TIME_REF_CDMA應(yīng)設(shè)置為如IS-801中定義的(t/50)mod16384,其中t是幀中的CDMA系統(tǒng)時(shí)間。
2.LAT(25比特)LAT=scale_factor_meas_lat×MEAS_LAT(位置結(jié)果消息)。LAT以180/225為單位,而MEAS_LAT以180/232為單位,所以scale_factor_meas_lat=(180/232)/(180/225)=1/27;3.LONG(26比特)LONG=scale_factor_meas_long×MEAS_LONG(位置結(jié)果消息)。LONG以360/226為單位,而MEAS_LONG以360/232為單位,所以scale_factor_meas_long=(360/232)/(360/226)=1/26;4.LOC_UNCRTNTY_ANG(4比特),LOC_UNCRTNTY_A(5比特),LOC_UNCRTNTY_P(5比特)。如果OTHER_SECTIONS(位置結(jié)果消息)的比特0(LSB)等于“0”(數(shù)據(jù)中無(wú)水平誤差部分),然后LOC_UNCRTNTY_ANG=0,LOC_UNCRTNTY_A=‘11111’(不可計(jì)算的),LOC_UNCRTNTY_P=‘11111’(不可計(jì)算的);5.FIX_TYPE(1比特)。如果POS_TYPE(位置結(jié)果消息)=0×00,然后FIX_TYPE=0。如果POS_TYPE=0×01,然后FIX_TYPE=1;6.VELOCITY_INCL(1比特),VELOCITY_HOR(9比特),VELOCITY_VER(8比特),HEADING(10比特)VELOCITY_INCL(IS-801,1比特)=OTHER_SECTIONS(位置結(jié)果消息)的比特2;如果VELOCITY_INCL=‘1’,則VELOCITY_HOR=scale_factor_hv×HOR_VEL(位置結(jié)果消息),scale_factor_hv=0.0625/0.25=0.25;HEADING=scale_factor_heading×HEADING(位置結(jié)果消息);scale_factor_heading=(360/216)/(360/210)=2-6;如果VELOCITY_INCL=‘1’且FIX_TYPE=‘1’;則VELOCITY_VER(IS801,8比特)=VER_VEL(位置結(jié)果消息);如果VELOCITY_INCL=‘0’,然后IS-801“提供定位響應(yīng)”不應(yīng)包括VELOCITY_HOR、VELOCITY_VER和HEADING參數(shù);7.CLOCK_INCL(1比特),CLOCK_BIAS(18比特),CLOCK_DRIFT(16比特)。CLOCK_INCL=OTHER_SECTIONS(位置結(jié)果消息)的比特3;如果CLOCK_INCL=‘1’,CLOCK_BIAS=scale_factor_clk_bias×CLK_BIAS(位置結(jié)果消息)+offset_clk_bias;其中,scale_factor_clk_bias=le9;offset_clk_bias=13000ns。
8.HEIGHT_INCL(1比特),HEIGHT(14比特)。HEIGHT_INCL=OTHER_SECTIONS(位置結(jié)果消息)的比特1;如果HEIGHT_INCL=‘1’,則HEIGHT=scale_factor_height×HEIGHT(位置結(jié)果消息),scale_factor_height=0.1;和9.LOC_UNCRTNTY_V(5比特)。如果HEIGHT_INCL=’1’,則LOC_INCRTNTY_V=HEIGHT_STD_ER(位置結(jié)果消息)。
呼叫處理機(jī)602響應(yīng)于IS-801“請(qǐng)求基站年歷”而從PDE接收IS-801“提供基站年歷”消息。該消息提供IS-95隱含方法的替換以獲得近似移動(dòng)裝置600位置數(shù)據(jù)。
在該部分中描述從IS-801“提供基站年歷”到“F”接口“近似移動(dòng)裝置600位置響應(yīng)”的消息映射。“F”接口“近似移動(dòng)裝置600位置響應(yīng)”的字段名稱被標(biāo)以(F)。IS-801“提供基站年歷”的字段名稱被標(biāo)以(IS-801)。
“提供GPS星歷”消息提供星歷數(shù)據(jù)作為PI2接口數(shù)據(jù)的一部分。根據(jù)星歷數(shù)據(jù)集的大小,PDE可分幾部分發(fā)送IS-801“提供GPS星歷”。消息的部分總數(shù)和部分編號(hào)分別在TOTAL_PARTS和PART_NUM的元件中表示。當(dāng)呼叫處理機(jī)602接收星歷數(shù)據(jù)的所有部分時(shí),呼叫處理機(jī)將它們映射到PI2結(jié)構(gòu)。
操作中,呼叫處理機(jī)602經(jīng)由“F”接口消息與GPS模塊604相互作用。無(wú)論何時(shí)只要新呼叫處理機(jī)602可用(沒(méi)有來(lái)自GPS模塊604的請(qǐng)求),呼叫處理機(jī)602應(yīng)發(fā)送PI2數(shù)據(jù)到GPS模塊604。不存在經(jīng)由PI2接口的CP和GPS模塊604之間的相互作用。
在GPS模塊604加電之前或在GPS模塊604會(huì)話(用PI2接口標(biāo)志設(shè)置)打開(kāi)之前,呼叫處理機(jī)602的IS-801會(huì)話可打開(kāi)。在IS-801會(huì)話關(guān)閉之前,GPS模塊604會(huì)話應(yīng)關(guān)閉。當(dāng)IS-801會(huì)話打開(kāi)時(shí),呼叫處理機(jī)602應(yīng)復(fù)位該P(yáng)I2數(shù)據(jù)結(jié)構(gòu)。
如果在GPS模塊604加電之前打開(kāi)IS-801會(huì)話,則在呼叫處理機(jī)602準(zhǔn)備用GPS模塊604執(zhí)行時(shí)間變換之前,該CDMA系統(tǒng)時(shí)間將可用。在該方案中,在GPS模塊604準(zhǔn)備發(fā)送“F”接口“近似移動(dòng)裝置600位置請(qǐng)求”之前,呼叫處理機(jī)602也可得到近似移動(dòng)裝置600位置數(shù)據(jù),并因此可進(jìn)一步優(yōu)化GPS模塊604的GPS性能。
呼叫處理機(jī)602能經(jīng)由IS-95隱含方法(來(lái)自IS-95“系統(tǒng)參數(shù)消息”)或IS-801消息而獲得近似移動(dòng)裝置600位置。該IS-95隱含方法被認(rèn)為是比IS-801消息更快地得到BS位置的方式。IS-95“系統(tǒng)參數(shù)”是在CDMA移動(dòng)裝置600空閑狀態(tài)期間將從基站發(fā)送到呼叫處理機(jī)602的需要的消息,而與IS-801會(huì)話無(wú)關(guān)。另一方面,IS-801“請(qǐng)求/提供基站年歷”不僅需要兩個(gè)交互消息交換,而且在打開(kāi)IS-801會(huì)話之前將不被調(diào)用。
當(dāng)呼叫處理機(jī)602經(jīng)由IS-801接口轉(zhuǎn)換來(lái)自BS的全新星歷數(shù)據(jù)集時(shí),認(rèn)為PI2數(shù)據(jù)準(zhǔn)備好。在PI2數(shù)據(jù)準(zhǔn)備好之后,呼叫處理機(jī)602應(yīng)以少于2秒的時(shí)間發(fā)送PI2數(shù)據(jù)到GPS模塊604,而無(wú)需來(lái)自GPS模塊604的請(qǐng)求。呼叫處理機(jī)602應(yīng)周期性地請(qǐng)求基站,以便以不長(zhǎng)于2小時(shí)的速度發(fā)送星歷數(shù)據(jù)。速度越快,GPS性能越優(yōu)化。
GPS模塊604應(yīng)基于PI2數(shù)據(jù)結(jié)構(gòu)中指定的位置固定點(diǎn)的數(shù)目經(jīng)由“F”接口而周期性地發(fā)送位置結(jié)果到呼叫處理機(jī)602。即使數(shù)據(jù)不可用,呼叫處理機(jī)602也應(yīng)在PI2結(jié)構(gòu)中設(shè)置位置固定點(diǎn)的數(shù)目。
轉(zhuǎn)到圖7,圖7示出了利用GSM環(huán)境中的FSM的移動(dòng)裝置700的方框圖。該移動(dòng)裝置700包括經(jīng)由信號(hào)通道706進(jìn)行信號(hào)通信的呼叫處理機(jī)702和GPS模塊704。此外,信號(hào)通道706可實(shí)現(xiàn)為RS232接口、經(jīng)由軟件數(shù)據(jù)結(jié)構(gòu)的內(nèi)存共享的邏輯接口或其他電氣和/或邏輯接口。呼叫處理機(jī)702包括空中接口CP模塊708、RRLP消息到PI2數(shù)據(jù)轉(zhuǎn)換器710、GPS模塊PI2數(shù)據(jù)結(jié)構(gòu)712、PI2接口消息匯編程序/反匯編程序714、CP/GPS模塊系統(tǒng)消息協(xié)議匯編程序/反匯編程序716、和GPS模塊接口模塊718。GPS模塊704包括CP接口模塊720、PI2接口模塊722、PI2數(shù)據(jù)結(jié)構(gòu)724、CP系統(tǒng)接口FSM726、和GPS內(nèi)核728。GPS內(nèi)核728經(jīng)由信號(hào)通道732從GPS衛(wèi)星星群226接收GPS信號(hào),并且空中接口CP模塊708經(jīng)由信號(hào)通道730與基站(未示出)進(jìn)行信號(hào)通信。
移動(dòng)裝置700的方框圖是將在基于RRLP的聽(tīng)筒(即基于GSM的蜂窩電話)內(nèi)部實(shí)現(xiàn)的PI2的高級(jí)架構(gòu)。呼叫處理機(jī)702可經(jīng)由信號(hào)通道706和圖7所示的硬件線路(用于時(shí)間和頻率變換)與GPS模塊704進(jìn)行通信。F 736和G 734接口是用于RS232接口706的兩個(gè)單獨(dú)邏輯信道。G接口734可設(shè)計(jì)為將PI2輔助數(shù)據(jù)傳遞到GPS模塊704。輔助數(shù)據(jù)的剩余部分將經(jīng)由F接口736傳遞到GPS模塊704。在GPS模塊704上,F(xiàn)接口738可為標(biāo)準(zhǔn)GPS客戶接口(例如SiRF科技有限公司擁有的SiRFLoc),并且G接口740對(duì)于任何標(biāo)準(zhǔn)空中接口協(xié)議是透明的。呼叫處理機(jī)702可產(chǎn)生PI2數(shù)據(jù),經(jīng)由空中接口協(xié)議而傳遞到RRLP消息到PI2數(shù)據(jù)轉(zhuǎn)換器710。PI2數(shù)據(jù)在經(jīng)由信號(hào)通道706傳遞到GPS模塊704之前,可經(jīng)由PI2接口消息匯編程序/反匯編程序712(例如PI2接口消息處理程序)而封裝為G消息格式。呼叫處理機(jī)702可從合適的RRLP空中接口消息獲得時(shí)間和基準(zhǔn)地點(diǎn)數(shù)據(jù),并通過(guò)CP/GPS模塊系統(tǒng)消息協(xié)議匯編程序/反匯編程序716經(jīng)由合適的F接口736消息而將它們傳遞到GPS模塊704。
PI2接口可由呼叫處理機(jī)702利用并由F接口736的會(huì)話打開(kāi)消息中的特定“空中接口”代碼通知到GPS模塊704。此后,所有隱含幫助(例如時(shí)間變換、頻率變換)可通過(guò)F接口736發(fā)送。如果可用的話,移動(dòng)裝置700的近似位置也可從基站519通過(guò)呼叫處理機(jī)702而發(fā)送到F接口736上的GPS模塊704。GPS模塊704然后可響應(yīng)F接口738上的移動(dòng)裝置700位置報(bào)告。
應(yīng)注意PI2接口通常由可實(shí)現(xiàn)為存儲(chǔ)部分(未示出)的大數(shù)據(jù)結(jié)構(gòu)定義。一般來(lái)說(shuō),接口中存在的所有信息在該大數(shù)據(jù)結(jié)構(gòu)中具有預(yù)定位置。為了表示每條信息的有效性,也可將有效性標(biāo)志分配到該結(jié)構(gòu)中的每一字段。信息的發(fā)送將然后為預(yù)定順序(首先MSB等等)的全結(jié)構(gòu)的“逐個(gè)字節(jié)的讀取和發(fā)送”??蛻舳丝删哂蓄愃茢?shù)據(jù)結(jié)構(gòu),并在信息來(lái)到時(shí),逐個(gè)字節(jié)地填充。可對(duì)全結(jié)構(gòu)進(jìn)行單一校驗(yàn)和測(cè)試以使其有效。
應(yīng)注意在一些情況下,并非所有星歷都是有效的,并在理論上,可通過(guò)僅發(fā)送實(shí)際具有有效信息的星歷時(shí)隙而縮短該消息。然而,最好避免這樣,使得內(nèi)存鏡像機(jī)制不依賴于該消息的含義。避免這樣的一種方式是選擇將所有未用字段(包括有效性字段)置為值“0”的協(xié)定。然后可為了相同目的而使用簡(jiǎn)單壓縮機(jī)制,其中發(fā)送設(shè)置為0的連續(xù)比特?cái)?shù)目而不是比特自己。在該方案中,機(jī)制可利用固定字段之前的明確特定元字符,所述固定字段表示設(shè)置為“0”的連續(xù)比特的重復(fù)次數(shù),而不是比特本身。在該情況下,內(nèi)存鏡像結(jié)構(gòu)的內(nèi)容可嚴(yán)格包括星歷信息和可能的電離層參數(shù)。
本領(lǐng)域技術(shù)人員應(yīng)注意F 736和G 734接口可通過(guò)呼叫處理機(jī)702和GPS模塊704之間的任何串行鏈路而發(fā)送。RS232已僅表示為示例實(shí)現(xiàn),并應(yīng)注意任何其他串行鏈路同樣可運(yùn)行良好。另外,在呼叫處理機(jī)702和GPS模塊704兩者集成在同一半導(dǎo)體芯片上的情況下,可使用用于在呼叫處理機(jī)702和GPS模塊704之間傳遞數(shù)據(jù)的許多其他技術(shù),包括但不限于共享公共存儲(chǔ)模塊或系統(tǒng)(或子系統(tǒng))總線。
作為F和G接口736和734的示例實(shí)現(xiàn),該串行鏈路可為用于在呼叫處理機(jī)702和GPS模塊704之間交換消息的雙向TTL電平通信接口。兩個(gè)硬件線路可用于時(shí)間和頻率變換。作為示例,PI2接口可利用一般分組格式,其中TYPE_FIELD可為對(duì)應(yīng)于“空中接口消息”或“PI2消息”的“0×01”。為了在會(huì)話打開(kāi)請(qǐng)求消息中切換到PI2接口,呼叫處理機(jī)702可通知GPS模塊704它將通過(guò)利用“SESSION_OPEN_REQ_INFO”格式的合適值而在“PI2”中發(fā)送輔助數(shù)據(jù)。應(yīng)注意除了“PI2”以外,呼叫處理機(jī)702和GPS模塊704可支持可利用“SESSION_OPEN_REQ_INFO”字段的合適值而在運(yùn)行時(shí)間被激活的其他空中接口。
PI2分組結(jié)構(gòu)利用可在PAYLOAD字段中定義和發(fā)送的PI2段,如下表所示
表格1-示例PI2分組結(jié)構(gòu)其中MSG_ID是消息標(biāo)識(shí)符,而SEGMENT是消息段。
作為示例,PI2段格式可包括表2所示的三個(gè)字段。第一字節(jié)表示用于傳輸PI2消息的段的總數(shù)。第二字節(jié)表示以1開(kāi)始的段索引。而最后一個(gè)字段是具有1016字節(jié)最大尺寸的壓縮PI2數(shù)據(jù)。
表格2-PI2段格式其中NUM_OF_SEGMENTS是段的數(shù)目,而PI2數(shù)據(jù)可分幾段發(fā)送。該字段可表示PI2數(shù)據(jù)全集的段的總數(shù)。在該情況下,0是無(wú)效數(shù)字。
SEGMENT_INDEX是段索引,而該字段的值可為由該消息傳輸?shù)腜I2數(shù)據(jù)段的序列號(hào)。其范圍可為從1到255。PI2數(shù)據(jù)集的最后消息具有等于NUM_OF_SEGMENTS的SEGMENT_INDEX,0也是該字段的無(wú)效數(shù)字。
COMPRESSED_PI2_DATA是壓縮PI2數(shù)據(jù),并且該字段可為壓縮PI2數(shù)據(jù)的一部分。
PI2分組中的每一PAYLOAD字段可具有最大總尺寸1019字節(jié),并因此僅傳輸在SEGMENT字段中的最大1018字節(jié)。在該例中,因?yàn)槊恳欢尉哂?字節(jié)報(bào)頭,所以如果壓縮PI2數(shù)據(jù)的尺寸大于1016字節(jié),則其需要被分割;每一段應(yīng)在單獨(dú)分組中順序發(fā)送。
應(yīng)注意在該例中,一些消息的尺寸可非常大。作為示例,在9600波特率下,需花費(fèi)大約2.14秒來(lái)發(fā)送PI2數(shù)據(jù)消息,其具有8個(gè)可見(jiàn)星歷而沒(méi)有年歷數(shù)據(jù)。
另外,并非消息中的所有數(shù)據(jù)都有效,這意味著很多字段被設(shè)置為0。簡(jiǎn)單數(shù)據(jù)壓縮算法應(yīng)顯著降低要發(fā)送的數(shù)據(jù)尺寸。該數(shù)據(jù)壓縮算法可為無(wú)損類型壓縮,并可操縱字節(jié)流而不管該字節(jié)的含義。
應(yīng)用到所有PI2消息的數(shù)據(jù)壓縮算法可為“packbits”方法,這是簡(jiǎn)單通用的可變游程(run)長(zhǎng)度編碼方法。游程是一組相同連續(xù)字符。每一游程被編碼為描述這是哪類游程及其長(zhǎng)度的兩字節(jié)報(bào)頭、以及包含該數(shù)據(jù)的一個(gè)或更多字節(jié)。在所有情況下,報(bào)頭可分開(kāi)為兩個(gè)部分其MSB描述它是直接量(literal)游程(未壓縮)還是填充游程(被壓縮的),并且接下來(lái)的15比特指明游程長(zhǎng)度,如表3所示。
表格3-RLL壓縮-報(bào)頭格式在該例中,直接量游程是直接量字節(jié)(即被存儲(chǔ)而不是被壓縮的字節(jié))的游程。在該情況下,RUN_INDICATOR_BIT是0,而低15比特指明該直接量字節(jié)的游程長(zhǎng)度。然后可在該報(bào)頭之后直接編碼該直接量字節(jié)。
填充游程是所有字節(jié)都相同的字節(jié)序列。在該情況下,RUN_INDICATOR_BIT是1,而低15比特指明該游程長(zhǎng)度。報(bào)頭后面跟隨應(yīng)被復(fù)制給定次數(shù)的字節(jié)。下面給出一個(gè)例子示出數(shù)據(jù)壓縮算法如何工作。
原始字節(jié)流0×01 0×FF 0×00 0×89 0×00 0×00 0×00 0×00 0×00 0×00 0×000×12。
壓縮后0×00 0×04 0×01 0×FF 0×00 0×89 0×80 0×07 0×00 0×00 0×01 0×12。
示例數(shù)據(jù)解壓算法也應(yīng)該簡(jiǎn)單。GPS模塊704將得到RUN_INDICATOR_BIT和長(zhǎng)度。如果RUN_INDICATOR_BIT為0,則僅復(fù)制下一LENGTH字節(jié)。如果RUN_INDICATOR_BIT為1,則下一要來(lái)的字節(jié)應(yīng)被復(fù)制“LENGTH”次數(shù)。例如壓縮數(shù)據(jù)0×80 0×08 0×00 0×00 0×05 0×44 0×00 0×01 0×66 0×45。
解壓后0×00 0×00 0×00 0×00 0×00 0×00 0×00 0×00 0×44 0×00 0×01 0×660×45。
除了ACK/NACK/ERROR消息以外,PI2消息可在大結(jié)構(gòu)中具有預(yù)定位置。為了表示每條信息的有效性,有效性標(biāo)志也可分配到該結(jié)構(gòu)中的每組信息??蛇x擇該特定配置作為同一處理器上的任務(wù)之間的共享存儲(chǔ)器來(lái)促進(jìn)該協(xié)議轉(zhuǎn)換。目前,該P(yáng)I2協(xié)議可具體設(shè)計(jì)為在兩個(gè)單獨(dú)處理器之間的串行鏈路上使用。
作為示例,PI2請(qǐng)求可嚴(yán)格包括位置請(qǐng)求信息、電離層參數(shù)、獲取幫助數(shù)據(jù)、衛(wèi)星星歷和年歷。在該空中接口協(xié)議上接收的其他輔助數(shù)據(jù)可通過(guò)F接口736而輸送到GPS模塊704(例如合適的用戶地點(diǎn)、時(shí)間和頻率變換)。
在該情況下,該P(yáng)I2請(qǐng)求中出現(xiàn)的所有信息可在大結(jié)構(gòu)中具有預(yù)定位置。為了表示每條信息的有效性,有效性標(biāo)志也可分配到該結(jié)構(gòu)中的每組信息。
PI2請(qǐng)求和響應(yīng)可被定義為大數(shù)據(jù)結(jié)構(gòu)。這些消息可利用內(nèi)存鏡像機(jī)制來(lái)實(shí)現(xiàn)。對(duì)于每一消息,在呼叫處理機(jī)702和GPS模塊704側(cè)上定義相同內(nèi)存結(jié)構(gòu)。可在每一方向上定義一組內(nèi)存。
信息的發(fā)送可為在發(fā)送方的全結(jié)構(gòu)的“逐字節(jié)讀取、壓縮、和發(fā)送”。在信息到來(lái)和被解壓時(shí),接收方的同一數(shù)據(jù)結(jié)構(gòu)可被逐字節(jié)填充。
即使當(dāng)還沒(méi)有更新PI2數(shù)據(jù)結(jié)構(gòu)時(shí),呼叫處理機(jī)702也可在“PI2”會(huì)話的打開(kāi)處發(fā)送PI3請(qǐng)求消息。GPS模塊704可自己使用數(shù)據(jù)結(jié)構(gòu)中的有效性標(biāo)志以確定哪個(gè)信息是相關(guān)的。
通常,在F接口736、738上交換一對(duì)“RI2”類型會(huì)話打開(kāi)請(qǐng)求/響應(yīng)之前或在F接口736、738上交換一對(duì)會(huì)話關(guān)閉請(qǐng)求/響應(yīng)之后,GPS模塊704或呼叫處理機(jī)702都不發(fā)送任何PI2消息。當(dāng)會(huì)話已被標(biāo)識(shí)為“PI2”類型時(shí),應(yīng)交換PI2消息。
對(duì)于接收的每一消息,通常返回ACK/NACK/ERROR消息,以在如果不正確接收的情況下加速消息的重復(fù)。該機(jī)制將最好在本地串行鏈路上使用,并不具有強(qiáng)誤差檢測(cè)和糾正機(jī)制。
作為示例,GPS模塊704接收過(guò)程可包括以下步驟。首先,一旦在打開(kāi)PI2會(huì)話之后接收到PI2請(qǐng)求消息,GPS模塊704可檢查所接收的PI2消息。如果在幾個(gè)分組中傳輸PI2消息,則GPS模塊704重新裝配(reassemble)該分段的數(shù)據(jù)。在正確接收到PI2消息的所有分組之后,GPS模塊704對(duì)該重新裝配的數(shù)據(jù)進(jìn)行解壓,并將其復(fù)制到GPS模塊704側(cè)的結(jié)構(gòu)上。其次,一旦在打開(kāi)PI2會(huì)話之前接收到PI2消息,則GPS模塊704應(yīng)悄悄丟棄該消息。第三,如果丟失了分段數(shù)據(jù),則丟棄整個(gè)消息。
類似地,GPS模塊704發(fā)送過(guò)程的例子可包括以下步驟。首先,一旦接收到POS_REQ_FLAG被設(shè)置為1的PI2請(qǐng)求消息,則GPS模塊704檢查是否支持所請(qǐng)求的定位方法。如果LOCATION_METHOD被設(shè)置為0×00或0×03,并且GPS模塊704不支持所請(qǐng)求的(一種或多種)定位方法,則GPS模塊704發(fā)送PI2響應(yīng)消息,其中GPS_MEAS_FLAG被設(shè)置為“1”(有效GPS測(cè)量部分),而MEAS_ERROR_STATUS被設(shè)置為“不支持請(qǐng)求的定位方法”。如果LOCATION_METHOD被設(shè)置為0×01或0×02,并且GPS模塊704不支持所請(qǐng)求的(一種或多種)定位方法,則GPS模塊704發(fā)送PI2響應(yīng)消息,其中POSITION_RESULTS_FLAG被設(shè)置為“1”(有效位置部分),而POSITION_ERROR_STATUS被設(shè)置為“不支持請(qǐng)求的定位方法”。
作為基于移動(dòng)裝置700的定位方法的示例,不管在PI2請(qǐng)求中得到的MAX_RESP_TIME所設(shè)置的時(shí)間如何,一旦完成了位置固定,則GPS模塊704發(fā)送提供該位置固定的PI2響應(yīng),其中POSITION_RESULTS_FLAG被設(shè)置為“1”(有效位置部分),而POSITION_ERROR_STATUS被設(shè)置為“0”(有效位置)。
關(guān)于移動(dòng)裝置700輔助定位方法,不管在PI2請(qǐng)求消息中得到的MAX_RESP_TIME所設(shè)置的時(shí)間如何,一旦得到充足的有效GPS測(cè)量,則GPS模塊704發(fā)送提供該GPS測(cè)量的PI2響應(yīng)消息,其中GPS_MEAS_FLAG被設(shè)置為“1”(有效GPS測(cè)量部分),而MEAS_ERROR_STATUS被設(shè)置為“0”(有效GPS測(cè)量)。
另外,關(guān)于基于移動(dòng)裝置700的定位方法,一旦在PI2請(qǐng)求中發(fā)現(xiàn)MAX_RESP_TIME字段的超時(shí),并且還沒(méi)有位置固定,則GPS模塊704應(yīng)發(fā)送PI2響應(yīng)消息,其中POSITION_RESULTS_FLAG被設(shè)置為“1”(有效位置部分),而POSITION_ERROR_STATUS被設(shè)置為“需要更多時(shí)間”。
類似地,關(guān)于移動(dòng)裝置700輔助定位方法,一旦在PI2請(qǐng)求消息中發(fā)現(xiàn)MAX_RESP_TIME字段的超時(shí),并且還沒(méi)有充足的有效GPS測(cè)量,則GPS模塊704應(yīng)發(fā)送PI2響應(yīng)消息,其中GPS_MEAS_FLAG被設(shè)置為“1”(有效GPS測(cè)量部分),而MEAS_ERROR_STATUS被設(shè)置為“需要更多時(shí)間”。
關(guān)于基于移動(dòng)裝置700的定位方法,一旦到達(dá)GPS搜索域的末尾,并沒(méi)有發(fā)現(xiàn)位置,則GPS模塊704發(fā)送PI2響應(yīng)消息,其中POSITION_RESULTS_FLAG被設(shè)置為“1”(有效位置部分),而POSITION_ERROR_STATUS被設(shè)置為“在全搜索后沒(méi)有可用固定點(diǎn)”。
關(guān)于MS輔助定位方法,一旦到達(dá)GPS搜索域的末尾,并沒(méi)有充足的有效GPS測(cè)量,則GPS模塊704發(fā)送PI2響應(yīng)消息,其中GPS_MEAS_FLAG被設(shè)置為“1”(有效GPS測(cè)量部分),而MEAS_ERROR_STATUS被設(shè)置為“沒(méi)有所跟蹤的充足的衛(wèi)星”。
如果GPS模塊704需要更多星歷輔助數(shù)據(jù),則GPS模塊604可發(fā)送PI2響應(yīng)消息,其中POSITION_RESULTS_FLAG被設(shè)置為“1”(有效位置部分),而POSITION_ERROR_STATUS被設(shè)置為“丟失GPS輔助數(shù)據(jù)”。
如果GPS模塊704需要更多獲取幫助數(shù)據(jù),則GPS模塊704發(fā)送PI2響應(yīng)消息,其中GPS_MEAS_FLAG被設(shè)置為“1”(有效GPS測(cè)量部分),而MEAS_ERROR_STATUS被設(shè)置為“丟失GPS輔助數(shù)據(jù)”。
可選地,并根據(jù)在逐個(gè)情況中定義的標(biāo)準(zhǔn),GPS模塊704可在任何PI2響應(yīng)消息中添加年歷參考數(shù)據(jù)部分。該能力允許呼叫處理機(jī)702通過(guò)PI2請(qǐng)求消息來(lái)估計(jì)GPS模塊704中的年歷的老化,并可能用較新年歷來(lái)取代它。
呼叫處理機(jī)702接收過(guò)程的例子包括一旦接收到空中接口協(xié)議消息(或其組),則呼叫處理機(jī)702利用所接收的空中接口消息信息來(lái)填充呼叫處理機(jī)702側(cè)的“PI2數(shù)據(jù)結(jié)構(gòu)”的相關(guān)字段(如果必要,則同時(shí)重定格式)。如果當(dāng)前打開(kāi)了PI2會(huì)話,則當(dāng)在沒(méi)有任何請(qǐng)求的情況下,在呼叫處理機(jī)702中更新了信息或一部分信息時(shí),呼叫處理機(jī)702應(yīng)發(fā)送PI2請(qǐng)求消息。
一旦接收到PI2響應(yīng)消息,則呼叫處理機(jī)702檢查所接收的PI2消息。如果在幾個(gè)分組中傳輸該P(yáng)I2消息,則呼叫處理機(jī)702重新裝配該分段的數(shù)據(jù)。在正確接收到PI2消息的所有分組之后,呼叫處理機(jī)702對(duì)該重新裝配的數(shù)據(jù)進(jìn)行解壓,并將其復(fù)制到呼叫處理機(jī)702側(cè)的結(jié)構(gòu)上。
一旦在打開(kāi)PI2會(huì)話之前接收到PI2消息,則呼叫處理機(jī)702丟棄該消息。如果丟失了分段數(shù)據(jù),則丟棄整個(gè)消息。
作為呼叫處理機(jī)702發(fā)送過(guò)程的例子,在接收到SESSION_OPEN_STATUS字段被設(shè)置為會(huì)話打開(kāi)成功的會(huì)話打開(kāi)通知消息之后的2秒內(nèi),呼叫處理機(jī)702開(kāi)始發(fā)送PI2請(qǐng)求消息,而不管其是否具有有效輔助信息。該P(yáng)I2請(qǐng)求被壓縮,并且僅將壓縮的數(shù)據(jù)流發(fā)送到GPS模塊704。如果所壓縮數(shù)據(jù)流的尺寸大于最大值,則它可被分段為幾個(gè)數(shù)據(jù)分組。這些數(shù)據(jù)分組按照它們被分段的順序而被順序發(fā)送。
從呼叫處理機(jī)702到GPS模塊704的PI2請(qǐng)求消息的示例接收過(guò)程包括在呼叫處理機(jī)702方,當(dāng)呼叫處理機(jī)702發(fā)送PI2請(qǐng)求消息時(shí),呼叫處理機(jī)702期望在消息發(fā)送后3秒內(nèi)從GPS模塊704返回ACK/NACK/ERROR消息。
如果呼叫處理機(jī)702在3秒內(nèi)不接收任何東西,則其再次發(fā)送PI2請(qǐng)求消息。呼叫處理機(jī)702能重復(fù)該次序最多三次。在第三次重復(fù)之后,呼叫處理機(jī)702關(guān)閉該P(yáng)I2信道。
如果呼叫處理機(jī)702接收到ACK/NACK/ERROR字段被設(shè)置為0×FE的ACK/NACK/ERROR消息,則呼叫處理機(jī)702關(guān)閉該P(yáng)I2信道。
如果呼叫處理機(jī)702接收到ACK/NACK/ERROR字段被設(shè)置為0×FF的ACK/NACK/ERROR消息,則呼叫處理機(jī)702立即再次發(fā)送同一消息。在三次重復(fù)之后,呼叫處理機(jī)702關(guān)閉該P(yáng)I2信道。類似地,在GPS模塊604側(cè),一旦GPS模塊704從呼叫處理機(jī)702接收到消息并正確解碼該消息,則GPS模塊704檢查ICD_REV_NUM字段的值。然后GPS模塊704可在接收的3秒之內(nèi)發(fā)送ACK/NACK/ERROR字段被設(shè)置為0×00的ACK/NACK/ERROR消息??商鎿Q地,GPS模塊704可在接收的3秒之內(nèi)發(fā)送ACK/NACK/ERROR字段被設(shè)置為0×FE的ACK/NACK/ERROR消息。如果不能正確解碼該消息,則GPS模塊704在3秒之內(nèi)發(fā)送ACK/NACK/ERROR字段被設(shè)置為0×FF的ACK/NACK/ERROR消息。
如果不按順序地接收同一消息的分段,則GPS模塊704扔掉已接收的分段,忽略剩余的分段,并在3秒之內(nèi)發(fā)送ACK/NACK/ERROR字段被設(shè)置為0×FF的ACK/NACK/ERROR消息。
另外,關(guān)于從GPS模塊704發(fā)送到呼叫處理機(jī)702的PI2響應(yīng)消息,GPS模塊704期望在發(fā)送消息后3秒內(nèi)從呼叫處理機(jī)702返回ACK/NACK/ERROR消息。如果GPS模塊704在3秒內(nèi)不接收任何東西,則GPS模塊704再次發(fā)送PI2響應(yīng)。它可重復(fù)該次序最多三次。在第三次重復(fù)之后,GPS模塊704停止發(fā)送消息。如果GPS模塊704接收到ACK/NACK/ERROR字段被設(shè)置為0×FF的ACK/NACK/ERROR消息,則GPS模塊704立即再次發(fā)送同一消息。在三次重復(fù)之后,GPS模塊704停止發(fā)送消息。
在呼叫處理機(jī)702側(cè),一旦呼叫處理機(jī)702從GPS模塊704接收到消息并正確解碼該消息,則呼叫處理機(jī)702在接收的3秒之內(nèi)發(fā)送ACK/NACK/ERROR字段被設(shè)置為0×00的ACK/NACK/ERROR消息。如果不能正確解碼該消息,則呼叫處理機(jī)702在3秒之內(nèi)發(fā)送ACK/NACK/ERROR字段被設(shè)置為0×FF的ACK/NACK/ERROR消息。在三次重復(fù)之后,GPS模塊704停止發(fā)送消息。如果不按順序地接收同一消息的分段,則呼叫處理機(jī)702扔掉已接收的分段,忽略剩余的分段,并在3秒之內(nèi)發(fā)送ACK/NACK/ERROR字段被設(shè)置為0×FF的ACK/NACK/ERROR消息。
系統(tǒng)也可包括例如更新來(lái)自網(wǎng)絡(luò)的閃存中的年歷的過(guò)程。當(dāng)呼叫處理機(jī)702已從網(wǎng)絡(luò)接收有效年歷并想更新GPS模塊704的閃存中的年歷時(shí),進(jìn)行該示例過(guò)程1)呼叫處理機(jī)702發(fā)送ALM_REQ_FLAG被設(shè)置為“0”而ALM_DATA_FLAG被設(shè)置為“1”的“PI2請(qǐng)求消息”,和年歷部分的有效年歷信息;2)GPS模塊704一旦得到該P(yáng)I2請(qǐng)求消息就將該年歷數(shù)據(jù)存儲(chǔ)在RAM中;和3)當(dāng)呼叫處理機(jī)702關(guān)閉來(lái)自F接口736的PI2會(huì)話時(shí),GPS模塊704從RAM向FLASH傳輸年歷信息。
如果從RAM到FLASH的年歷傳輸成功,則將F接口736中的“會(huì)話關(guān)閉通知消息”關(guān)閉會(huì)話的SESSION_CLOSE_STATUS設(shè)置為“會(huì)話關(guān)閉”。如果從RAM到FLASH的年歷傳輸失敗,則將F接口中的“會(huì)話關(guān)閉通知消息”關(guān)閉會(huì)話的SESSION_CLOSE_STATUS設(shè)置為“會(huì)話關(guān)閉失敗”。
該系統(tǒng)也可包括例如在來(lái)自衛(wèi)星(“SV”)的年歷中更新年歷的特殊過(guò)程。當(dāng)呼叫處理機(jī)702想強(qiáng)迫GPS模塊704收集新年歷并用收集的年歷信息更新GPS模塊704的閃存中的年歷時(shí),將進(jìn)行以下過(guò)程1)呼叫處理機(jī)702發(fā)送ALM_REQ_FLAG被設(shè)置為“2”(來(lái)自SV的請(qǐng)求年歷收集)而ALM_DATA_FLAG被設(shè)置為“0”的PI2請(qǐng)求消息,而沒(méi)有年歷部分;2)一旦接收了,則GPS模塊704嘗試收集來(lái)自廣播的年歷數(shù)據(jù);3)為了檢查進(jìn)展,呼叫處理機(jī)702周期性地發(fā)送ALM_REQ_FLAG被設(shè)置為“3”(報(bào)告年歷更新?tīng)顟B(tài))的PI2請(qǐng)求消息。一旦接收了更新?tīng)顟B(tài)請(qǐng)求消息,則GPS模塊704應(yīng)立即發(fā)送PI2響應(yīng)消息如果SLC搜索衛(wèi)星并沒(méi)有收集任何NAV消息,則ALM_DATA_STATUS被設(shè)置為“1”;如果GPS模塊704強(qiáng)烈跟蹤至少一顆衛(wèi)星足以收集數(shù)據(jù)并實(shí)際收集了數(shù)據(jù),則ALM_DATA_STATUS被設(shè)置為“2”;如果GPS模塊704已完成了全搜索序列并且還沒(méi)有發(fā)現(xiàn)任何適于數(shù)據(jù)收集的衛(wèi)星,則ALM_DATA_STATUS被設(shè)置為“3”;以及如果GPS模塊704已收集了來(lái)自RAM存儲(chǔ)的或FLASH存儲(chǔ)的年歷的全年歷和ALM_WEEK_NUMBER和TOA,則ALM_DATA_STATUS被設(shè)置為“4”。
4)當(dāng)呼叫處理機(jī)702關(guān)閉了來(lái)自F接口736的PI2會(huì)話,則GPS模塊704從RAM向FLASH傳輸年歷信息。如果從RAM到FLASH的年歷傳輸成功,則將F接口736中的“會(huì)話關(guān)閉通知消息”關(guān)閉會(huì)話的SESSION_CLOSE_STATUS設(shè)置為“會(huì)話關(guān)閉”。如果從RAM到FLASH的年歷傳輸失敗,則將F接口中的“會(huì)話關(guān)閉通知消息”關(guān)閉會(huì)話的SESSION_CLOSE_STATUS設(shè)置為“會(huì)話關(guān)閉失敗”。如果在會(huì)話期間沒(méi)有收集到全年歷(并且在步驟3期間ALM_DATA_STATUS從未被發(fā)現(xiàn)是“4”),則GPS模塊704將不嘗試從RAM向FLASH傳輸不完全的年歷。“會(huì)話通知消息”中的SESSION_CLOSE_STATUS被設(shè)置為“會(huì)話關(guān)閉”。全年歷收集周期將一般占用小于13分鐘。在第一次發(fā)現(xiàn)ALM_DATA_STATUS被設(shè)置為“2”后過(guò)去了該時(shí)間之前,呼叫處理機(jī)702應(yīng)不期望接收設(shè)置為“4”的ALM_DATA_STATUS。
當(dāng)打開(kāi)PI2會(huì)話時(shí),呼叫處理機(jī)702能在任何時(shí)候檢查閃存中的當(dāng)前年歷的年齡(age)。呼叫處理機(jī)702發(fā)送ALM_REQ_FLAG被設(shè)置為“1”而ALM_DATA_FLAG被設(shè)置為“0”的PI2請(qǐng)求消息,而沒(méi)有年歷部分。一旦接收了年歷請(qǐng)求消息的年齡,GPS模塊704應(yīng)立即發(fā)送來(lái)自用FLASH存儲(chǔ)的年歷的ALM_DATA_STATUS被設(shè)置為“0”的PI2響應(yīng)消息和ALM_WEEK_NUMBER和TOA。如果呼叫處理機(jī)702發(fā)送POS_REQ_FLAG和ALM_REQ_FLAG被設(shè)置為“1”的PI2請(qǐng)求消息,則將不定義該響應(yīng)。
圖8示出了地理定位服務(wù)器站802、呼叫處理機(jī)804和GPS模塊806之間的RRLP到PI2消息流程圖800的例子。圖8用圖表示出了前面描述的處理。
圖9示出了呼叫處理機(jī)902、GPS模塊904和基站(“BS”)906之間的PI2消息流程圖900的例子。呼叫處理機(jī)902包括基站接口處理器908、PI2轉(zhuǎn)換器910、F接口處理器912和G接口處理器914。圖9用圖表示出了前面描述的處理。
盡管已描述了本發(fā)明的各種實(shí)施例,但是本領(lǐng)域普通技術(shù)人員應(yīng)明白在本發(fā)明的范圍內(nèi)的許多其他實(shí)施例和實(shí)現(xiàn)都是可能的。
權(quán)利要求
1.一種在移動(dòng)裝置中處理用全球定位系統(tǒng)(“GPS”)接口在呼叫處理機(jī)處接收的協(xié)議輔助數(shù)據(jù)的方法,其中該協(xié)議輔助數(shù)據(jù)是根據(jù)地理定位服務(wù)器站協(xié)議而產(chǎn)生的,所述方法包括在GPS接口接收在該呼叫處理機(jī)處接收的協(xié)議輔助數(shù)據(jù);將所接收的協(xié)議輔助數(shù)據(jù)轉(zhuǎn)換為對(duì)該地理定位服務(wù)器站協(xié)議透明的接口數(shù)據(jù);和將該接口數(shù)據(jù)傳遞到GPS模塊。
2.根據(jù)權(quán)利要求1的方法,還包括在將該接口數(shù)據(jù)傳遞到GPS模塊之前,將該接口數(shù)據(jù)封裝到消息格式中。
3.根據(jù)權(quán)利要求1的方法,其中該呼叫處理機(jī)從基站接收該協(xié)議輔助數(shù)據(jù)。
4.根據(jù)權(quán)利要求3的方法,其中該地理定位服務(wù)器站產(chǎn)生該輔助數(shù)據(jù)。
5.根據(jù)權(quán)利要求4的方法,其中該地理定位服務(wù)器站利用碼分多址(“CDMA”)協(xié)議來(lái)產(chǎn)生該協(xié)議輔助數(shù)據(jù)。
6.根據(jù)權(quán)利要求5的方法,其中該協(xié)議是IS-801。
7.根據(jù)權(quán)利要求5的方法,其中該協(xié)議是通用移動(dòng)電信系統(tǒng)(“UMTS”)。
8.根據(jù)權(quán)利要求5的方法,其中該協(xié)議是CDMA2000。
9.根據(jù)權(quán)利要求4的方法,其中該地理定位服務(wù)器站利用用于移動(dòng)通信的全球系統(tǒng)(“GSM”)協(xié)議來(lái)產(chǎn)生協(xié)議輔助數(shù)據(jù)。
10.根據(jù)權(quán)利要求4的方法,其中該地理定位服務(wù)器站利用通用無(wú)線分組業(yè)務(wù)(“GPRS”)協(xié)議來(lái)產(chǎn)生協(xié)議輔助數(shù)據(jù)。
11.根據(jù)權(quán)利要求4的方法,其中該地理定位服務(wù)器站利用時(shí)分多址(“TDMA”)協(xié)議來(lái)產(chǎn)生協(xié)議輔助數(shù)據(jù)。
12.根據(jù)權(quán)利要求4的方法,其中該地理定位服務(wù)器站利用藍(lán)牙協(xié)議來(lái)產(chǎn)生協(xié)議輔助數(shù)據(jù)。
13.根據(jù)權(quán)利要求4的方法,其中該地理定位服務(wù)器站利用IEEE 802.11協(xié)議來(lái)產(chǎn)生協(xié)議輔助數(shù)據(jù)。
14.根據(jù)權(quán)利要求1的方法,還包括利用該協(xié)議輔助數(shù)據(jù)用于GPS獲取。
15.根據(jù)權(quán)利要求1的方法,還包括利用該協(xié)議輔助數(shù)據(jù)用于計(jì)算移動(dòng)裝置的地點(diǎn)。
16.根據(jù)權(quán)利要求1的方法,還包括利用該協(xié)議輔助數(shù)據(jù)用于改善GPS模塊的靈敏度。
17.根據(jù)權(quán)利要求1的方法,其中將接口數(shù)據(jù)傳遞到GPS模塊包括經(jīng)由RS232鏈路而傳遞接口數(shù)據(jù)。
18.一種用于在移動(dòng)裝置中處理用全球定位系統(tǒng)(“GPS”)接口在呼叫處理機(jī)處接收的協(xié)議輔助數(shù)據(jù)的協(xié)議獨(dú)立接口,其中該協(xié)議輔助數(shù)據(jù)是根據(jù)地理定位服務(wù)器站協(xié)議而產(chǎn)生的,所述協(xié)議獨(dú)立接口包括用于在GPS接口接收在該呼叫處理機(jī)處接收的協(xié)議輔助數(shù)據(jù)的部件;用于將所接收的協(xié)議輔助數(shù)據(jù)轉(zhuǎn)換為對(duì)該地理定位服務(wù)器站協(xié)議透明的接口數(shù)據(jù)的部件;和將該接口數(shù)據(jù)傳遞到GPS模塊的部件。
19.根據(jù)權(quán)利要求18的方法,還包括在將該接口數(shù)據(jù)傳遞到GPS模塊之前,將該接口數(shù)據(jù)封裝到消息格式中。
20.根據(jù)權(quán)利要求19的方法,其中該呼叫處理機(jī)從基站接收該協(xié)議輔助數(shù)據(jù)。
21.根據(jù)權(quán)利要求20的方法,其中該地理定位服務(wù)器站產(chǎn)生該輔助數(shù)據(jù)。
22.根據(jù)權(quán)利要求21的方法,其中該地理定位服務(wù)器站利用碼分多址(“CDMA”)協(xié)議來(lái)產(chǎn)生該協(xié)議輔助數(shù)據(jù)。
23.根據(jù)權(quán)利要求22的方法,其中該協(xié)議是IS-801。
24.一種用于在移動(dòng)裝置中處理在根據(jù)地理定位服務(wù)器站協(xié)議而產(chǎn)生協(xié)議輔助數(shù)據(jù)的呼叫處理機(jī)處接收的協(xié)議輔助數(shù)據(jù)的協(xié)議獨(dú)立接口,所述協(xié)議獨(dú)立接口包括空中接口協(xié)議到GPS模塊接口轉(zhuǎn)換器;呼叫處理機(jī)和全球定位系統(tǒng)(“GPS”)模塊之間的信號(hào)通信的串行鏈路;和GPS模塊數(shù)據(jù)結(jié)構(gòu)。
25.一種在移動(dòng)裝置中處理用全球定位系統(tǒng)(“GPS”)接口在呼叫處理機(jī)處接收的協(xié)議輔助數(shù)據(jù)的方法,其中該協(xié)議輔助數(shù)據(jù)是根據(jù)地理定位服務(wù)器站協(xié)議而產(chǎn)生的,所述方法包括在GPS接口接收在該呼叫處理機(jī)處接收的協(xié)議輔助數(shù)據(jù);將該接口數(shù)據(jù)傳遞到GPS模塊;和將所接收的協(xié)議輔助數(shù)據(jù)轉(zhuǎn)換為對(duì)該地理定位服務(wù)器站協(xié)議透明的接口數(shù)據(jù)。
26.一種在移動(dòng)裝置中處理用全球定位系統(tǒng)(“GPS”)接口在呼叫處理機(jī)處接收的協(xié)議輔助數(shù)據(jù)的協(xié)議獨(dú)立接口,其中該協(xié)議輔助數(shù)據(jù)是根據(jù)地理定位服務(wù)器站協(xié)議而產(chǎn)生的,所述協(xié)議獨(dú)立接口包括用于在GPS接口接收在該呼叫處理機(jī)處接收的協(xié)議輔助數(shù)據(jù)的部件;用于將該接口數(shù)據(jù)傳遞到GPS模塊的部件;和用于將所接收的協(xié)議輔助數(shù)據(jù)轉(zhuǎn)換為對(duì)該地理定位服務(wù)器站協(xié)議透明的接口數(shù)據(jù)的部件。
全文摘要
公開(kāi)了一種用于在移動(dòng)裝置中處理用全球定位系統(tǒng)(“GPS”)接口在呼叫處理機(jī)處接收的協(xié)議輔助數(shù)據(jù)的協(xié)議獨(dú)立接口,其中該協(xié)議輔助數(shù)據(jù)根據(jù)地理定位服務(wù)器站協(xié)議而產(chǎn)生。該協(xié)議獨(dú)立接口可包括用于在GPS接口接收在該呼叫處理機(jī)處接收的協(xié)議輔助數(shù)據(jù)的部件;用于將所接收的協(xié)議輔助數(shù)據(jù)轉(zhuǎn)換為對(duì)該地理定位服務(wù)器站協(xié)議透明的接口數(shù)據(jù)的部件;和將該接口數(shù)據(jù)傳遞到GPS模塊的部件。
文檔編號(hào)H04B1/707GK1675564SQ03819137
公開(kāi)日2005年9月28日 申請(qǐng)日期2003年8月15日 優(yōu)先權(quán)日2002年8月15日
發(fā)明者史蒂夫·C·恰伊, 萊昂內(nèi)爾-雅克·加林, 阿舒托什·潘德, 張更生 申請(qǐng)人:SiRF技術(shù)公司