用于基于位置信息的低功率處理的系統(tǒng)和方法
【專利摘要】提供了用于將服務和功能性從計算設備的主要主中央處理單元(CPU)卸載到專用功率有效卸載引擎,由此實現(xiàn)設備的更長電池壽命以及增強的一組特征的方法、系統(tǒng)和計算機可讀介質(zhì)。
【專利說明】用于基于位置信息的低功率處理的系統(tǒng)和方法
【技術(shù)領(lǐng)域】
[0001] 本公開的實施例一般涉及與將設備服務和功能性的處理卸載到具有較低功耗的 組件相關(guān)聯(lián)的功率節(jié)省技術(shù),并且更具體地涉及基于位置的服務和功能性的卸載。
【背景技術(shù)】
[0002] 隨著移動計算設備的使用和功能性的擴張,對于減少這樣的設備的功耗的解決方 案的需求也已增加。在移動計算設備上運行的應用的數(shù)量和復雜性的擴張已導致對于由這 樣的應用處理資源的增加的需求。具體地說,提供連續(xù)位置、基于位置的觸發(fā)、以及上下文 知曉計算功能性的應用要求相當數(shù)量的處理器資源以請求、接收和處理數(shù)據(jù),并且因此導 致增加的功耗和較低的電池壽命。
【專利附圖】
【附圖說明】
[0003] 圖1是按照本公開的一個或多個實施例,用于卸載基于位置的服務和功能性的示 范性系統(tǒng)的概覽。
[0004] 圖2是按照本公開的一個或多個實施例,描繪用于卸載基于位置的服務和功能性 的示范性系統(tǒng)的組件的框圖。
[0005] 圖3是按照本公開的一個或多個實施例,示出通過使用圖1中所述的系統(tǒng)的一個 或多個組件實現(xiàn)的一種方法的流程圖。
[0006] 圖4是按照本公開的一個或多個實施例,示出通過使用圖1中所述的系統(tǒng)的一個 或多個組件實現(xiàn)的一種方法的流程圖。
【具體實施方式】
[0007] 通過參考附圖,下文更詳細描述了本公開的實施例。但是,本文未明確陳述的其它 實施例也在本公開的范圍內(nèi),并且本公開不應解釋為僅限于本文明確陳述的那些實施例。 而是,本文所述的實施例本質(zhì)上是示范性的,并且被提供以使得將本公開的一般范圍傳達 給本領(lǐng)域的普通技術(shù)人員。本公開通篇相同的附圖標記指相同的元件。
[0008] 本公開的實施例提供用于將服務和功能性從計算設備的主要主中央處理單元 (CPU)卸載到專用功率有效卸載引擎,由此實現(xiàn)設備的更長電池壽命以及增強的一組特征 的系統(tǒng)、方法和計算機可讀介質(zhì)。在按照本公開的實施例可被卸載的那些服務和功能性中 有連續(xù)位置、基于位置的觸發(fā)、以及上下文知曉計算服務和功能性,由此基于一個或多個位 置定位技術(shù)或系統(tǒng)來實現(xiàn)位置信息的簡單和有效的生成,所述一個或多個位置定位技術(shù)或 系統(tǒng)包括但不限于:諸如例如全球定位系統(tǒng)(GPS)、GLONASS系統(tǒng)、羅盤導航系統(tǒng)、伽利略定 位系統(tǒng)、印度區(qū)域?qū)Ш较到y(tǒng)或其它區(qū)域?qū)Ш较到y(tǒng)的任意當前或所計劃的全球?qū)Ш叫l(wèi)星系統(tǒng) (GNSS),包括但不限于無線廣域網(wǎng)(WffAN)、無線局域網(wǎng)(WLAN)或無線個人區(qū)域網(wǎng)絡(WPAN) 的基于無線地理位置的系統(tǒng),基于本地或遠程傳感器的系統(tǒng),基于音頻或視頻的技術(shù)和系 統(tǒng),基于服務器的系統(tǒng)或技術(shù),或者由位置源設備支持的任意其它定位技術(shù)或其組合。一些 上面提到的技術(shù)利用諸如衛(wèi)星、接入點或周圍發(fā)射器的位置的外部信息來計算方位/位置 信息,而其它技術(shù)為了實現(xiàn)三角測量功能性,要求與存儲相關(guān)發(fā)射器或其它可測量錨點的 位置的位置數(shù)據(jù)庫或服務器的連通性。指向卸載基于位置的服務和功能性的本公開的實施 例支持卸載實體到存儲位置信息的服務器的有效連通性,并且實現(xiàn)將至少一部分該信息傳 輸?shù)叫遁d實體中。
[0009] -般可將全部或部分位置信息,基于位置的計算或位置服務和功能性卸載到位置 引擎,該位置引擎包括但不限于映射、導航、地標(例如,興趣點(P0I))、發(fā)射器位置、位置 請求、環(huán)境/上下文知曉、端接在設備或網(wǎng)絡的位置觸發(fā)的事件(或多個事件)、基于web的 應用、以及移動網(wǎng)絡運營商服務,由此實現(xiàn)一組基線位置操作功能性和位置特征的超集的 創(chuàng)建。
[0010] 現(xiàn)在將參考附圖描述本公開的示范性實施例。
[0011] 如本文所用,術(shù)語"設備"或"計算設備"可指包括能夠配置成執(zhí)行計算機可讀指 令、計算機實現(xiàn)的指令或計算機可執(zhí)行指令的一個或多個處理器的任意計算組件。示例 設備能夠包括個人計算機、服務器計算機、服務器場、數(shù)字助理、智能電話、個人數(shù)字助理、 數(shù)字平板、因特網(wǎng)裝置、專用電路、微控制器、迷你計算機、收發(fā)器或者諸如機頂盒、信息亭 (kiosk)的客戶駐地裝備,或者其它基于處理器的設備。由關(guān)聯(lián)各種設備的一個或多個處理 器對適合計算機實現(xiàn)的指令的執(zhí)行可形成專用計算機或其它具體機器,所述專用計算機或 其它具體機器可促進如本文所述的軟件的優(yōu)化配置。
[0012] 可提供實施例作為包括非暫時機器可讀存儲介質(zhì)的計算機程序產(chǎn)品,所述非暫時 機器可讀存儲介質(zhì)具有在其上(以壓縮格式或非壓縮格式)存儲的指令,所述指令可用于 對計算機(或其它電子設備)進行編程以執(zhí)行本文所述的處理或方法。機器可讀存儲介 質(zhì)可包括但不限于硬驅(qū)動器、軟盤、光盤、⑶-ROM、DVD、只讀存儲器(ROM)、隨機存取存儲器 (RAM)、EPROM、EEPR0M、閃存、磁或光卡、固態(tài)存儲器設備、或者適合存儲電子指令的其它類 型的介質(zhì)/機器可讀介質(zhì)。而且,還可提供實施例作為包括(以壓縮或非壓縮格式的)暫 時機器可讀信號的計算機程序產(chǎn)品。不管是否使用載波來調(diào)制,機器可讀信號的示例包括 但不限于托管或運行計算機程序的計算機系統(tǒng)或機器可配置來訪問的信號,所述信號包括 通過因特網(wǎng)或其它網(wǎng)絡下載的信號。例如,可經(jīng)由因特網(wǎng)下載軟件的分發(fā)。
[0013] 圖1示出包括在網(wǎng)絡102上互相電通信的移動計算設備118和一個或多個位置服 務器104的典型環(huán)境100。在高層,移動計算設備118可布置到操作系統(tǒng)域122和卸載域 138中。在一個實施例中,操作系統(tǒng)域108可包括與計算設備關(guān)聯(lián)的各種操作功能(例如, 處理、存儲器、通信)。卸載域138可包括可獨立于或結(jié)合操作系統(tǒng)域122來執(zhí)行的附加操 作功能。在一個方面中,卸載域138可執(zhí)行可不要求由操作系統(tǒng)域提供的全部能力的特定 功能。以此方式,卸載域138可以能夠使用更少量的計算設備的資源或由操作系統(tǒng)域122 使用的更少的能力資源來執(zhí)行這些功能。在一個實施例中,移動計算設備118可使用卸載 域138來確定移動計算設備118的位置,而無需使用操作系統(tǒng)域122中的組件。在其它實 施例中,由移動計算設備102執(zhí)行的其它功能還可被包括在卸載域中。
[0014] 操作系統(tǒng)域122可使用硬件、軟件或其組合來實現(xiàn),并且可包括主處理器123、存 儲器126、輸入/輸出(I/O)設備128、通信連接130、數(shù)據(jù)存儲裝置132、位置通信模塊134 以及位置源模塊136。
[0015] 移動計算設備118可包括一個或多個主處理器124,所述一個或多個主處理器124 配置成與一個或多個存儲器126設備以及各種其它組件或設備通信。例如,實例移動計算 設備118可包括一個或多個主處理器124,所述一個或多個主處理器124配置成與一個或 多個存儲器或存儲器設備126、一個或多個輸入/輸出(IO)設備128、數(shù)據(jù)存儲裝置132和 /或一個或多個通信連接130通信。主處理器124可適當?shù)匾杂布?、軟件、固件或其組合來 實現(xiàn)。主處理器124的軟件或固件實現(xiàn)可包括以任意適合的編程語言所寫的計算機可執(zhí)行 或機器可執(zhí)行指令來執(zhí)行本文所述的各種功能。一個或多個主處理器124可包括但不限于 中央處理單元(CPU)、數(shù)字信號處理器(DSP)、精簡指令集計算機(RISC)、復雜指令集計算 機(CISC)、微處理器、微控制器、現(xiàn)場可編程門陣列(FPGA)或其任意組合。移動用戶設備 118還可包括用于在移動用戶設備118的一個或多個主處理器124和一個或多個其它組件 之間控制通信的芯片組(未示出)。在某些實施例中,移動用戶設備102可基于Intel?架構(gòu) 系統(tǒng),并且主處理器(或多個主處理器)124和芯片組可來自Intel?處理器和芯片組的族, 諸如Intel?Atom?處理器族。一個或多個主處理器124還可包括用于處置具體數(shù)據(jù)處理功 能或任務的一個或多個專用集成電路(ASIC)或?qū)S脴藴十a(chǎn)品(ASSP)。
[0016] 存儲器126可存儲可在主處理器124上加載和執(zhí)行的程序指令、以及在這些程序 的執(zhí)行期間生成的數(shù)據(jù)。取決于即時移動計算設備118的配置和類型,存儲器126可以是 諸如隨機存取存儲器(RAM)的易失性存儲器、和/或諸如只讀存儲器(ROM)、閃存等的非易 失性存儲器。
[0017] 存儲器126可包括可移除和/或不可移除存儲裝置,包括但不限于磁存儲裝置、光 盤和/或磁帶存儲裝置。盤驅(qū)動及其關(guān)聯(lián)的計算機可讀介質(zhì)可提供計算機可讀指令、數(shù)據(jù) 結(jié)構(gòu)、程序模塊、以及用于計算設備的其它數(shù)據(jù)的非易失性存儲裝置。在一些實施例中,存 儲器126可包括多種不同類型的存儲器,諸如靜態(tài)隨機存取存儲器(SRAM)、動態(tài)隨機存取 存儲器(DRAM)或ROM。
[0018] 存儲器126和數(shù)據(jù)存儲裝置132(包括可移除和不可移除)是計算機可讀存儲介 質(zhì)的示例。例如,計算機可讀存儲介質(zhì)可包括在用于信息存儲的任意方法或技術(shù)中實現(xiàn)的 易失和非易失介質(zhì)、可移除和不可移除介質(zhì),所述信息諸如計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程 序模塊或其它數(shù)據(jù)。
[0019] 一個或多個通信連接130可允許即時卸載域138與其它設備通信,所述其它設備 例如位置服務器104數(shù)據(jù)庫、用戶終端、以及可在一個或多個網(wǎng)絡102上存在的各種其它設 備。通信連接130可包括可使移動計算設備118能夠在網(wǎng)絡102上與其它設備無線通信的 無線系統(tǒng)(未示出)。無線系統(tǒng)可包括或使用Wi-Fi Direct標準(參見,2010年10月公 布的Wi-Fi Direct規(guī)范)亦或使用IEEE 802. 11無線標準(參見,2007年3月8日公布的 IEEE 802. 11-2007 ;2009年10月公布的IEEE 802. lln-2009)或者其組合來廣播和接收消 息的硬件和軟件。無線系統(tǒng)可包括能夠在由IEEE 802. 11無線標準管理的操作頻率的寬廣 范圍中操作的發(fā)射器和接收器或者收發(fā)器(未示出)。
[0020] IO設備128可使用戶能夠與實例主設備移動計算機設備118交互。這樣的I/O設 備可包括但不限于鍵盤、鼠標、錄入筆、語音輸入設備、觸摸輸入設備、顯示器、攝像機或成 像設備、揚聲器、或者打印機。
[0021] 一個或多個數(shù)據(jù)存儲裝置132可存儲列表、數(shù)組、數(shù)據(jù)庫、平面文件等。在一些實 現(xiàn)中,數(shù)據(jù)存儲裝置132可在移動計算機設備118外部的存儲器中被存儲,但是可經(jīng)由一個 或多個網(wǎng)絡102來訪問,諸如用云存儲服務。數(shù)據(jù)存儲裝置132可存儲資源參數(shù)。在一個 實施例中,每個實例可具有存儲與實例關(guān)聯(lián)的資源參數(shù)的數(shù)據(jù)存儲裝置132。
[0022] 移動計算設備118還可包括位置通信模塊134和位置源模塊136。在這個實施例 中,這兩個模塊可圖示為操作系統(tǒng)域122內(nèi)的不同的實體。但是,在某些實施例中,模塊的 一個或多個或所有部分可使用存儲器114或并入存儲器114中。
[0023] 位置通信模塊134可支持各種靈活的基于位置的服務,并且在基于位置的移動服 務的情況下可擴展位置應用編程接口(API)以經(jīng)由網(wǎng)絡102提供到位置服務器104的連通 性,網(wǎng)絡102可一般稱作通信云。圖2的討論中將更詳細地描述位置通信模塊134。
[0024] 位置源模塊136可從位置服務器104或其它位置信息設備接收方位信息,位置服 務器104或其它位置信息設備提供與移動計算設備118關(guān)聯(lián)的位置、或者可用于確定所述 移動計算設備位置的位置信息。位置源模塊136可包括(圖1中未示出),例如,Wi-Fi調(diào) 制解調(diào)器、蜂窩調(diào)制解調(diào)器、一個或多個位置傳感器、全球?qū)Ш叫l(wèi)星系統(tǒng)接收器、藍牙^調(diào) 制解調(diào)器或近場通信(NFC)設備。雖然描述了具體位置源設備,但是可提供能夠接收位置 信息的任意其它適合的位置源設備。圖2的討論中將更詳細地討論位置源模塊136。在另 一實施例中,位置源模塊136可被包括在卸載域138而非操作系統(tǒng)域108中。
[0025] 轉(zhuǎn)到卸載域138,其中,一些實施例可實現(xiàn)用于移動計算設備118的位置確定和功 率管理功能性。在一個實施例中,卸載域138可獨立于操作系統(tǒng)域122來操作,其中,卸載 域138可以不使用操作系統(tǒng)域122中的全部或大部分組件。在另一實施例中,卸載域138 可結(jié)合操作系統(tǒng)域122的一個或多個組件來操作。例如,卸載域138可使用位置處理器140 來確定移動計算設備118的位置,而非使用操作系統(tǒng)域122中的主處理器124。在這個實例 中,位置處理器140可以是比主處理器124消耗更少功率的處理器。例如,位置處理器140 可包括用于操作具體數(shù)據(jù)處理功能或任務的一個或多個專用集成電路(ASIC)或?qū)S脴藴?產(chǎn)品(ASSP)。
[0026] 在一個實施例中,位置處理器140可包括(下文更詳細描述的)一個或多個控制 器,所述一個或多個控制器與彼此以及潛在的其它組件交互以生成有效的、低功率的執(zhí)行 環(huán)境,其被分配執(zhí)行位置卸載活動的任務,否則該任務會由操作系統(tǒng)域122內(nèi)操作的主處 理器124或位置通信的模塊134來執(zhí)行。
[0027] 卸載域138還可包括聚合器模塊142、位置功率管理模塊144、電源模塊146、位置 控制器模塊150、事件生成148、以及上下文過濾模塊152,其都將在圖2的討論中更詳細被 討論。
[0028] 進一步參考移動計算設備118,它還可包括一個或多個無線電裝置154以及一個 或多個天線156。無線電裝置154可傳送和接收無線電信號。無線電裝置154可包括促進 位置通信模塊134和所接收的無線電頻率信號之間的通信的通信接口。在一個示例中,無 線電頻率(RF)信號可由天線156接收。在本公開的示范性實施例中,一個或多個天線156 可以是可在寬廣頻率范圍上操作的寬帶天線,可能從若干兆赫茲(MHz)到吉赫茲(GHz)范 圍。由天線156接收的輸入信號可被傳遞或者以其它方式被提供給無線電裝置154內(nèi)的模 擬模塊或數(shù)字模塊,諸如轉(zhuǎn)換器或解碼器(未示出)。而且,可將這些輸入信號或者通過位 置通信模塊134傳送到操作系統(tǒng)域122,或者傳送到卸載域138。在一些實施例中,無線電 裝置154可從一個或多個位置服務器106接收位置信息。
[0029] 位置服務器106可將位置信息提供給移動計算設備118。位置服務器106關(guān)于圖 1被一般性描述,并且將在圖2的描述中更詳細地被討論。總的來說,位置服務器104可包 括處理器108、一個或多個接口 110和存儲器112。
[0030] 處理器108可包括但不限于中央處理單元(CPU)、數(shù)字信號處理器(DSP)、精簡指 令集計算機(RISC)、復雜指令集計算機(CISC)、微處理器、微控制器、現(xiàn)場可編程門陣列 (FPGA)、或者其組合。處理器可執(zhí)行在存儲器122中存儲的計算機可讀指令、或者在網(wǎng)絡 102上提供的指令。
[0031] 一個或多個接口 110可包括但不限于鍵盤、鼠標、錄入筆、語音輸入設備、觸摸輸 入設備、顯示器、攝像機或成像設備、揚聲器、或者打印機。接口 110還可包括網(wǎng)絡通信硬件 和/或軟件以在網(wǎng)絡102上發(fā)送和接收信息。
[0032] 存儲器112可包括但不限于操作系統(tǒng)114和位置模塊116。操作系統(tǒng)114可包括 由處理器108執(zhí)行的計算機可讀指令以實現(xiàn)各種任務。例如,所述任務可包括但不限于操 作接口模塊110的組件。
[0033] 位置模塊116可以是任意或全部硬件、軟件、或者其組合以收集位置信息、分析 位置信息并且將位置信息提供給移動計算設備118。這種位置模塊(還稱作位置架構(gòu)模 塊)116僅是實現(xiàn)可由移動計算設備118使用的各種位置檢測技術(shù)所需要的組件的指示。 例如,位置模塊(還稱作位置架構(gòu)模塊)116可包括任意和全部所需要的硬件或軟件以使用 WI-FI網(wǎng)絡、蜂窩網(wǎng)絡、建立足跡數(shù)據(jù)庫、全球定位衛(wèi)星網(wǎng)絡、諸如藍牙網(wǎng)絡的短程無線網(wǎng) 絡、或者任意其它近場通信網(wǎng)絡來實現(xiàn)檢測技術(shù)。
[0034] 圖2按照本公開的一個或多個實施例,描繪圖1描繪的示范性系統(tǒng)200的各種組 件之間的連通性。系統(tǒng)200包括系統(tǒng)的各種組件之間的邏輯的和/或物理的隔離,該系統(tǒng) 包括位置服務器104、位置通信模塊134、位置處理器140和位置源模塊136。各種組件可 由各種應用編程接口(API)來鏈接。例如,可包括205A的位置通信模塊134和位置處理器 140可經(jīng)由位置卸載應用編程接口(API) 202互相通信。而且,位置處理器140和位置源模 塊136可經(jīng)由位置源API 204互相通信。此外,位置通信模塊134可經(jīng)由鏈路206與位置 服務器104通信,鏈路206可以是任意適合的有線和/或無線的通信鏈路。
[0035] 位置處理器140可包括一個或多個方位控制器208A-208F。方位控制器208A-208F 可包括但不限于Wi-Fi方位控制器208A、蜂窩方位控制器208B、傳感器方位控制器208C、 GNSS方位控制器208D、短程無線方位控制器208E或NFC方位控制器208F。本文為了示范 使用了 WI-FI方位控制器208A來描述系統(tǒng)200的各種組件之間的連通性。但是,應注意, 關(guān)于任意具體子組件的討論一般也可適用于其它子組件。
[0036] 位置處理器140的一個或多個方位控制器208A-208F與可包括位置源設備 210A-210F的位置源模塊136交互以及(經(jīng)由位置通信模塊134)與位置服務器104潛在地 交互,以執(zhí)行卸載位置計算并且基于由位置源設備提供的測量來生成位置事件和上下文事 件。作為示例,WI-FI方位控制器208A從Wi-Fi位置源設備210A獲得位置測量。WI-FI方 位控制器208A還可經(jīng)由通過位置框架模塊116建立的WI-FI服務器連通性214A從WI-FI 位置服務器212A獲得基于位置的信息。基于從WI-FI位置源設備210A接收的位置測量以 及潛在從WI-FI位置服務器212A接收的附加的基于位置的信息,WI-FI方位控制器208A可 執(zhí)行位置計算、生成位置事件和上下文事件,并且報告計算的結(jié)果。上面關(guān)于Wi-Fi方位控 制器208A的討論一般適用于從其它位置源設備(例如蜂窩調(diào)制解調(diào)器210B、GNSS接收器 210D等)獲得位置測量的其它方位控制器。
[0037] 由位置處理器140提供的功能性包括但不限于確定基本位置信息(即作為時間函 數(shù)的空間位置坐標)及有關(guān)信息(例如衛(wèi)星信息、WI-FIAP信息、蜂窩塔信息等)、觸發(fā)基于 位置數(shù)據(jù)的事件、發(fā)起和處理位置相關(guān)的主機活動的內(nèi)部和外部流、用于本地組件的位置 引擎功率管理、位置源設備和傳感器的管理、位置融合/仲裁邏輯、位置數(shù)據(jù)緩沖、時間戳 和位置歷史生成、上下文框架生成、隱私管理、緊急服務支持或者對于基于獨立軟件供應商 (ISV)增值位置的功能性的支持。
[0038] 在某些實施例中,位置處理器140可與其它卸載引擎或?qū)嶓w交互,所述其它卸載 引擎或?qū)嶓w包括但不限于通信管理實體、傳感器管理實體、安全引擎、事件生成實體、上下 文知曉實體、增強現(xiàn)實實體等等。位置處理器140可不管主要的主機和/或OS的狀態(tài)(例 如活動狀態(tài)、待機狀態(tài)、休眠狀態(tài)等)以及按照可配置的策略來支持對這些其它卸載實體 的訪問?;顒訝顟B(tài)可指示主處理器124(未示出)可以比在待機狀態(tài)中使用更多的功率。待 機狀態(tài)可指示主處理器(124)可以比活動狀態(tài)使用更少的功率、以及休眠狀態(tài)可以比待機 狀態(tài)使用更少的功率。
[0039] 按照本公開的一個或多個實施例,位置處理器140可配置成與位置源設備 210A-210F通信,并且基于由位置源設備210A-210F提供的測量來計算方位,而不管主處理 器124的狀態(tài)。示范性主機狀態(tài)包括活動狀態(tài)(例如當正在運行主機導航軟件時)、休眠狀 態(tài)(例如記錄方位日志和地理劃界)、或者連接的待機狀態(tài)(例如支持設備位置共享)。當 與位置源設備210A-2IOF通信而主機處于休眠狀態(tài)時,位置處理器140能夠在物理接口和/ 或邏輯信道上與位置源設備210A-210F直接或間接交互,而無需活動主機支持,換言之,以 卸載方式。更具體地說,基于先前所提到的,位置引擎126可包括一個或多個方位控制器, 其中每個方位控制器負責控制或配置具體位置源設備(例如蜂窩調(diào)制解調(diào)器210B、GNSS接 收器210D、WI-FI調(diào)制解調(diào)器210A、短程無線無線電裝置B調(diào)制解調(diào)器(藍牙@調(diào)制解調(diào) 器)210E、傳感器210C、NFC設備210F、音頻、視頻等),從設備收集相關(guān)位置測量數(shù)據(jù),并且 將相關(guān)位置輔助信息發(fā)送到位置源設備。在一個或多個備選實施例中,可提供控制多個位 置源設備210A-210F的中央方位控制器(未示出)。在各種實施例中,中央控制器或者一個 或多個專用控制器208A-2108F,無論可能是哪種情況,還可負責在位置處理器140需要一 些位置輔助或位置數(shù)據(jù)庫信息(例如周圍發(fā)射器的列表)的情況下發(fā)起數(shù)據(jù)庫更新流和/ 或保持本地卸載數(shù)據(jù)庫。
[0040] 按照本公開的一個或多個實施例,每個方位控制器可控制分開的位置計算器(未 示出),所述位置計算器基于從具體位置源設備接收的信息來計算位置信息。在備選實施 例中,中央方位控制器或多個專用方位控制器208A-208F可控制單個位置計算器以基于從 位置源設備210A-210F的全部或一些子集接收的信息來執(zhí)行位置計算??商峁┚酆戏轿?計算的方位聚合器/集中器142,所述方位計算由每個位置計算器基于從相應位置源設備 210A-210F接收的信息來執(zhí)行。方位聚合器/集中器142可然后基于已知性能指標來選擇 特定的位置計算。在某些實施例中,方位聚合器/集中器142可基于從各種位置計算器接 收的位置計算來執(zhí)行加權(quán)的位置計算。在其它實施例中,可直接從源設備210A-210F、從相 應方位控制器208A-208F、或者從中央方位控制器接收測量數(shù)據(jù),并且方位聚合器/集中器 142可執(zhí)行必要的位置計算(或多個位置計算)。
[0041] 位置處理器140還可包括經(jīng)由位置功率管理模塊144的位置功率管理功能性和位 置策略控制,位置功率管理模塊144操作成實施位置功率節(jié)省和位置源連通性以及操作的 模式。示范性位置策略可關(guān)于位置測量的可用性、提取位置測量的成本函數(shù)(例如功率)、 和/或所要求的服務水平(例如精確性、修復時間、功率預算或任意其它服務參數(shù))。位置 策略控制和位置功率管理功能性可由軟件模塊、諸如一個或多個控制器和/或處理器的硬 件組件、和/或其組合來提供。位置功率管理模塊144還可由更上層控制對位置服務器的 訪問,所述更上層諸如例如由位置通信模塊134。例如,在所約束的功率預算簡要描述下,這 些模塊將實施本地數(shù)據(jù)庫(或多個本地數(shù)據(jù)庫)的使用,而不允許對位置服務器212A-212F 的訪問。位置服務器可包括Wi-Fi位置服務器212A、蜂窩位置服務器212B、建立足跡位置服 務器212C、GNSS位置服務器212D、短程無線(藍牙?>位置服務器212E和NFC服務器212F。
[0042] 位置功率管理模塊144還可從電源模塊146接收用于移動計算設備118的功率等 級信息。功率等級信息可包括移動計算設備118當前是插電狀態(tài)還是在使用電池電源。而 且,功率等級信息可標識充電之前設備上可用的電池功率。電源模塊146可確定用于移動 計算設備118的剩余功率等級。電源模塊146還可控制將功率分配到移動計算設備118的 其它組件。在某些實施例中,電源模塊146可至少部分基于由位置功率管理模塊144做出 的策略或協(xié)議決定來實現(xiàn)功率控制或分配。
[0043] 再次參考位置計算,一旦計算了位置,則所計算的位置可被存儲或者被轉(zhuǎn)發(fā)到位 置通信模塊134。在將所計算的位置轉(zhuǎn)發(fā)到位置通信模塊134之前,位置計算可經(jīng)歷上下文 過濾(例如在所計算的位置的某鄰近范圍內(nèi)標識興趣點(POI),標識與所計算的位置關(guān)聯(lián) 的具體時間間隔等等)。如果主處理器124處于休眠狀態(tài),則位置處理器140可在遇到具 體上下文條件時喚醒主處理器124。更具體地說,當主處理器處于休眠狀態(tài)時,事件生成模 塊148和上下文過濾模塊152實現(xiàn)連續(xù)位置獲取。事件生成模塊148實體可基于從方位聚 合器/集中器142接收的所計算的位置來生成事件,并且上下文過濾模塊152可生成上下 文事件并且在遇到某些條件時決定喚醒該主機,所述某些條件諸如例如當?shù)竭_某個興趣點 時。事件生成模塊148和上下文過濾模塊152可從主處理器124配置。
[0044] 當前位置服務要求主處理器124要處于活動狀態(tài)。因而,本公開的實施例相對于 常規(guī)解決方案提供明顯的優(yōu)點,所述優(yōu)點包括但不限于功率有效位置卸載、基于多個位置 源設備的有效成本位置計算、將位置輔助信息卸載到位置服務器以及到位置服務器104的 有效連通、環(huán)境/上下文知曉,以及減少功耗并且增加電池壽命。如先前所述,通過將位置 處理器140與位置通信模塊134之間的位置功能性分離來實現(xiàn)這些優(yōu)點和其它優(yōu)點,位置 處理器140提供多用途低功耗位置執(zhí)行環(huán)境以負責全部位置卸載活動,位置通信模塊134 實現(xiàn)靈活的基于位置的服務并且擴展位置API 202、204、206的范圍以提高和豐富用戶體 驗。
[0045] 當前參考圖3,描繪了流程圖以描述方法300的示例實施例,方法300用于在對于 移動計算設備118的位置確定的上下文內(nèi)使用卸載域138。應注意,可按照某些實施例以各 種方式修改方法300。例如,在其它實施例中,方法300的一個或多個操作可被除去或者不 按次序地執(zhí)行。
[0046] 在框302,移動計算設備118可從多于一個位置信息源接收位置信息。例如,Wi-Fi 方位控制器208A可從Wi-Fi位置服務器212A或Wi-Fi位置源設備210A接收信息。該信 息可包括來自多于一個Wi-Fi位置源設備210A (例如,接入點)的無線信號,移動計算設備 118可使用該信息來確定其位置。在另一實施例中,從Wi-Fi設備提供的位置信息還可包括 所認證的掃描列表。所認證的掃描列表還可用于確定移動計算設備118的位置。類似地, 其它位置源設備210B-210E和/或位置服務器212B-212F還可提供與移動計算設備關(guān)聯(lián)的 位置信息。
[0047] 在框304,移動計算設備118可使用位置處理器140以使用從位置信息來源(例 如,210A-210F或212A-212F)提供的信息來確定移動計算設備118的位置。在這個實施例 中,位置處理器140可計算移動計算設備118的位置,而無需使用來自操作系統(tǒng)域122的主 處理器124。位置處理器140可以是能夠執(zhí)行位置計算而無需使用比位置處理器以更高比 率消耗功率的主處理器124的低功耗處理器或ASIC或ASSP。位置處理器140可被實現(xiàn)來 處理由位置源設備210A-210E和/或位置服務器212A-212F提供的任意信息。在一個實施 例中,方位控制器208A-208F可接收位置信息,并且計算移動計算設備118的位置。聚合器 模塊142可聚合位置確定,并且至少部分基于一個或多個性能指標來確定哪個位置被列為 最1?。
[0048] 圖4包括對于移動計算設備118在基于位置的功率管理控制的上下文內(nèi)使用卸 載域138的示范性方法400的流程圖。應注意,可按照某些實施例以各種方式來修改方法 400。例如,在其它實施例中,方法400的一個或多個操作可被除去或者不按次序地執(zhí)行。
[0049] 在框402,聚合器模塊142可從一個或多個方位控制器208A-208F檢索位置信息。 在一個實施例中,位置信息可包括基于來自位置源設備210A-210F的信息的所計算的位 置。在另一實施例中,來自位置源設備210A-210F的位置信息可被傳遞到聚合器模塊142, 聚合器模塊142還可至少部分基于所檢索的位置信息來確定或計算移動計算設備118的位 置。
[0050] 在框404,聚合器模塊142可至少部分基于性能指標或用戶優(yōu)選確定哪個位置是 對于移動計算設備118的最佳位置。例如,用戶可選擇與其它位置來源相比優(yōu)選使用哪個 位置信息來源。在一個實例中,用戶可優(yōu)選GPS位置數(shù)據(jù);因此聚合器將確定GPS位置作為 最佳位置。但是,如果GPS位置不可用,則位置處理器140可選擇下一個優(yōu)選來源或者依賴 關(guān)鍵性能指標。例如,關(guān)鍵性能指標可包括信號強度或者針對位置信息的更好的精確度或 可靠性的任意其它指標。
[0051] 在框406,位置功率管理模塊144可使用由聚合器模塊142確定的最佳位置以確 定或選擇配置成當移動計算設備118位于特定的位置時使用的第一功率管理協(xié)議。在另一 實施例中,功率管理協(xié)議還可基于除所確定的位置之外還可適用于移動計算設備118的剩 余功率量。例如,第一功率管理協(xié)議可規(guī)定只要移動計算設備在外面,將主處理器124置于 待機狀態(tài)。在另一實施例中,功率管理協(xié)議可規(guī)定當設備在特定的位置時將移動計算設備 118的一個或多個組件置于低功率模式。
[0052] 在框408,位置功率管理模塊144可至少部分基于確定移動計算設備與在框406中 所述的位置相比改變到了不同的位置來選擇第二功率管理協(xié)議。這樣,只要確定了新位置, 就可基于位置來主動改變功率管理協(xié)議。例如,在框404中,當確定了移動計算設備118在 外面時,可將主處理器124置于待機狀態(tài)。但是,當確定移動計算設備118在建筑內(nèi)時,位 置功率管理模塊144可確定實現(xiàn)將主處理器置于活動狀態(tài)的第二功率管理協(xié)議。在這個實 例中,活動狀態(tài)可以比待機狀態(tài)消耗更多的功率。因此,移動計算設備118當位于建筑外時 可以比當設備118位于建筑內(nèi)時使用更少的功率。
[0053] 本文所述的實施例可使用硬件、軟件和/或固件實現(xiàn),例如,以執(zhí)行本文所述的 方法和/或操作。本文所述的某些實施例可被提供作為存儲機器可執(zhí)行指令的有形機器 可讀介質(zhì),如果由機器執(zhí)行所述機器可執(zhí)行指令,則使機器執(zhí)行本文所述的方法和/或操 作。有形機器可讀介質(zhì)可包括但不限于包括軟盤、光盤、壓縮盤只讀存儲器(CD-ROM)、壓 縮盤可重寫(⑶-RW)和磁光盤的任意類型的盤,諸如只讀存儲器(ROM)、如動態(tài)和靜態(tài)RAM 的隨機存取存儲器(RAM)、可擦除可編程只讀存儲器(EPROM)、電可擦除可編程只讀存儲器 (EEPROM)、閃存、磁或光卡的半導體設備,適合存儲電子指令的任意類型的有形介質(zhì)。機器 可包括任意適合的處理或計算平臺、設備或系統(tǒng),并且可使用硬件和/或軟件的任意適合 組合被實現(xiàn)。指令可包括任意適合類型的代碼,并且可使用任意適合的編程語言被實現(xiàn)。在 其它實施例中,可在固件中實施執(zhí)行本文所述的方法和/或操作的機器可執(zhí)行指令。
[0054] 本文描述了本公開的各種特征、方面和實施例。將如本領(lǐng)域的技術(shù)人員將理解的, 所述特征、方面和實施例易于互相組合以及變化和修改。因此,應認為本公開包含任意這些 組合、變化和修改。
[0055] 描述本公開的各種實施例的本文使用的術(shù)語和表達意圖作為描述性的術(shù)語,而非 限制。這些術(shù)語和表達的使用不意圖排除所描述和所示特征的任意等同物(或其部分), 并且認識到,各種修改是可能的并且在權(quán)利要求的范圍內(nèi)。其它修改、變化和備選也是可能 的。因此,權(quán)利要求意圖覆蓋所有這些等同物。
[0056] 雖然結(jié)合當前認為是最實用的和各種的實施例描述了本公開的某些實施例,但是 要理解,本公開不限于所公開的實施例,而是意圖覆蓋各種修改和等同布置,并且這些修改 和布置在權(quán)利要求的范圍內(nèi)。雖然本文采用了特定術(shù)語,但是它們僅在描述性的意義上被 使用,并非為了限制。
[0057] 本公開使用示例來公開本公開的某些實施例,包括最佳模式,并且還使本領(lǐng)域的 技術(shù)人員能夠?qū)嵤┍竟_的某些實施例,包括制造和使用任意設備或系統(tǒng)、以及執(zhí)行本文 公開的任意方法。本公開的可專利的范圍由權(quán)利要求定義,并且可包括本文未具體公開且 本領(lǐng)域的技術(shù)人員可想到的其它示例。如果這些其它示例具有與權(quán)利要求的文字語言沒 有差異的結(jié)構(gòu)元件,或者如果它們包括與權(quán)利要求的文字語言沒有本質(zhì)差異的等同結(jié)構(gòu)元 件,則它們在權(quán)利要求的范圍內(nèi)。
【權(quán)利要求】
1. 一種移動計算設備,包括: 主處理器,配置成執(zhí)行在所述移動計算設備上存儲的計算機可讀指令,所述主處理器 具有狀態(tài),其中,至少部分在所述主處理器的功耗上定義所述狀態(tài),其中,所述狀態(tài)至少是 活動狀態(tài)或非活動狀態(tài); 位置通信模塊,配置成從一個或多個位置信息來源接收與所述移動計算設備關(guān)聯(lián)的位 置信息;以及 位置處理器,配置成i)至少部分基于所接收的位置信息來確定所述移動計算設備的 方位,以及ii)至少部分基于所確定的方位以及一個或多個功率減少方針來管理所述主處 理器的狀態(tài)的轉(zhuǎn)變。
2. 如權(quán)利要求1所述的移動計算設備,其中,所述一個或多個功率減少方針還包括以 下的至少一項: 位置信息的可用性; 與接收位置信息關(guān)聯(lián)的功耗;或者 所要求的服務水平,包括位置精確性、功率預算或處理所述位置信息的時間量。
3. 如權(quán)利要求1所述的移動計算設備,其中,所述位置處理器還包括: 方位聚合器單元,用于從所述位置來源聚合所述位置信息,并且至少部分基于來自所 述位置來源的位置信息和至少一個性能指標來確定所述方位; 事件生成模塊,用于實現(xiàn)連續(xù)接收由所述方位聚合器確定的所述方位以標識一個或多 個上下文事件;以及 上下文過濾模塊,其中,它基于所標識的一個或多個上下文事件來促進所述主處理器 的狀態(tài)的轉(zhuǎn)變。
4. 如權(quán)利要求3所述的移動計算設備,其中,所述上下文事件還包括到達興趣點。
5. 如權(quán)利要求1所述的移動計算設備,還包括與無線電裝置通信的一個或多個天線, 其中,從所述一個或多個天線接收的所述位置信息由所述位置通信模塊處理。
6. 如權(quán)利要求1所述的移動計算設備,其中,所述活動狀態(tài)中的所述主處理器比所述 位置處理器消耗更多的功率。
7. 如權(quán)利要求1所述的移動計算設備,其中,所述非活動狀態(tài)中的所述主處理器比所 述活動狀態(tài)中的所述主處理器消耗更少的功率。
8. 如權(quán)利要求1所述的移動計算設備,其中,所述非活動狀態(tài)包括以下的至少一項:i) 休眠狀態(tài);或ii)待機狀態(tài)。
9. 如權(quán)利要求8所述的移動計算設備,其中,所述休眠狀態(tài)還使所述位置處理器能夠 從一個或多個位置來源連續(xù)接收位置信息并且標識多個興趣點標識操作。
10. 如權(quán)利要求8所述的移動計算設備,其中,所述待機狀態(tài)還使所述位置處理器能夠 支持設備位置信息共享。
11. 一種方法,包括: 在具有主處理器和位置處理器的移動計算設備上,由所述位置處理器從一個或多個位 置信息來源接收一個或多個位置信息,其中,所述位置處理器獨立于所述主處理器操作; 由所述移動計算機設備的所述位置處理器至少部分基于從一個或多個位置信息來源 接收的所述一個或多個位置信息來確定所述移動計算設備的位置;以及 標識所述主處理器的狀態(tài),其中,所述狀態(tài)是活動狀態(tài)或非活動狀態(tài)。
12. 如權(quán)利要求11所述的方法,其中,所述一個或多個位置信息的接收還包括: 在與一個或多個遠程位置信息來源的通信中接收所述位置信息; 聚合從所述一個或多個遠程位置信息來源的每個接收的所述一個或多個位置信息; 由所述位置處理器確定方位;以及 至少部分基于性能指標和所確定的方位來確定所述主處理器的優(yōu)先級。
13. 如權(quán)利要求11所述的方法,其中,所述位置處理器的操作比所述活動狀態(tài)中的所 述主處理器的操作消耗更少的功率。
14. 如權(quán)利要求11所述的方法,其中,所述位置信息來源包括以下的一項或多項: 全球定位衛(wèi)星網(wǎng)絡; 無線局域網(wǎng); 個人局域網(wǎng); 蜂窩網(wǎng)絡;或 近場通信網(wǎng)絡。
15. 如權(quán)利要求11所述的方法,其中,所述主處理器的所述非活動狀態(tài)包括以下中的 一項:i)比所述活動狀態(tài)使用更少功率的待機狀態(tài),或者ii)比所述待機狀態(tài)使用更少功 率的休眠狀態(tài)。
16. -個或多個計算機可讀介質(zhì),包括在一個或多個處理器配置成執(zhí)行在存儲器中存 儲的計算機可讀指令,所述計算機可讀指令可操作以: 由具有主處理器和位置處理器的移動設備接收與一個或多個位置信息來源關(guān)聯(lián)的位 置信息,其中,所述位置處理器將獨立于所述主處理器來操作,并且 由所述位置處理器至少部分基于多于所述位置信息之一來確定關(guān)聯(lián)所述移動計算設 備的方位。
17. 如權(quán)利要求16所述的一個或多個計算機可讀介質(zhì),其中,接收所述位置信息的計 算機可讀指令還可操作以: 在與一個或多個遠程位置信息來源的通信中接收所述位置信息; 聚合從所述一個或多個遠程位置信息來源的每個接收的所述一個或多個位置信息; 由所述位置處理器確定所述方位;并且 至少部分基于性能指標和所確定的方位來確定所述主處理器的優(yōu)先級。
18. -種方法,包括: 由具有主處理器和位置處理器的移動設備從一個或多個位置來源檢索位置信息,其 中,所述主處理器配置成獨立于所述位置處理器來操作; 由所述位置處理器至少部分基于所述位置信息來確定關(guān)聯(lián)所述移動設備的方位; 由所述位置處理器至少部分基于功率來確定用于所述移動設備的第一功率管理協(xié)議; 以及 由所述位置處理器至少部分基于確定所述移動設備的所述位置已經(jīng)變化來確定用于 所述移動設備的第二功率管理協(xié)議。
19. 如權(quán)利要求18所述的方法,其中,所述第一功率管理協(xié)議或第二功率管理協(xié)議至 少部分基于在所述移動計算設備的一個或多個組件之間的功率分配來減少功耗。
20. 如權(quán)利要求18所述的方法,其中,所述第一功率管理協(xié)議或第二功率管理協(xié)議還 至少部分基于與所述移動計算設備關(guān)聯(lián)的功耗。
21. 如權(quán)利要求18所述的方法,其中,所述位置信息包括以下的一項或多項: 全球定位衛(wèi)星數(shù)據(jù); 無線局域網(wǎng)數(shù)據(jù); 個人局域網(wǎng)數(shù)據(jù); 蜂窩網(wǎng)絡數(shù)據(jù);或 近場通信網(wǎng)絡數(shù)據(jù)。
22. -個或多個計算機可讀介質(zhì),包括計算機可執(zhí)行指令,所述計算機可執(zhí)行指令可操 作以當由至少一個處理器執(zhí)行時使所述至少一個處理器能夠?qū)崿F(xiàn)方法,所述方法包括: 由具有主處理器和位置處理器的移動設備從一個或多個位置來源檢索位置信息,其 中,所述主處理器配置成獨立于所述位置處理器來操作; 由所述位置處理器至少部分基于所述位置信息來確定關(guān)聯(lián)所述移動設備的方位; 由所述位置處理器至少部分基于功率來確定用于所述移動設備的第一功率管理協(xié)議; 以及 由所述位置處理器至少部分基于確定所述移動設備的所述位置已經(jīng)變化來確定用于 所述移動設備的第二功率管理協(xié)議。
23. 如權(quán)利要求22所述的計算機可讀介質(zhì),還包括:所述第一功率管理協(xié)議或第二功 率管理協(xié)議通過在所述移動計算設備的一個或多個組件之間分配功率來減少功耗。
24. 如權(quán)利要求22所述的計算機可讀介質(zhì),其中,所述第一功率管理協(xié)議或第二功率 管理協(xié)議還包括:所述第一功率管理協(xié)議或第二功率管理協(xié)議至少部分基于與所述移動計 算設備關(guān)聯(lián)的功率等級。
25. 如權(quán)利要求22所述的計算機可讀介質(zhì),其中,所述位置確定技術(shù)包括來自以下的 一項或多項的信息: 全球定位衛(wèi)星數(shù)據(jù); 無線局域網(wǎng)數(shù)據(jù); 個人局域網(wǎng)數(shù)據(jù); 蜂窩網(wǎng)絡數(shù)據(jù);或 近場通信網(wǎng)絡數(shù)據(jù)。
【文檔編號】G06F1/32GK104364730SQ201380018728
【公開日】2015年2月18日 申請日期:2013年3月7日 優(yōu)先權(quán)日:2012年3月9日
【發(fā)明者】Y·阿佩特, G·祖科曼, H·羅奇伯格, E·雷舍夫, T·萊文, O·米卡 申請人:英特爾公司