專利名稱:作為主要計(jì)算環(huán)境的輔助的面向任務(wù)處理的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般涉及計(jì)算設(shè)備領(lǐng)域,尤其涉及一種計(jì)算系統(tǒng),該系統(tǒng)結(jié)合一輔助處理器用以在主要計(jì)算系統(tǒng)處于關(guān)機(jī)或不可用的狀態(tài)下運(yùn)行應(yīng)用程序。
(2)背景技術(shù)常規(guī)的計(jì)算系統(tǒng)只有當(dāng)處于“加電”狀態(tài),即計(jì)算系統(tǒng)正在運(yùn)行時才能提供效用。因而,當(dāng)計(jì)算系統(tǒng)處于關(guān)機(jī)狀態(tài)或待機(jī)(低功率)模式時,該計(jì)算系統(tǒng)是不可用的,也不能執(zhí)行處理。
用戶或自動化任務(wù),例如周期性的信息更新,通常期望與計(jì)算設(shè)備的立即交互。然而,常規(guī)計(jì)算設(shè)備的一個嚴(yán)重缺陷是當(dāng)計(jì)算設(shè)備沒有開啟時使設(shè)備可用所花費(fèi)的時間。那些處于關(guān)機(jī)狀態(tài)、待機(jī)模式或者經(jīng)歷故障的常規(guī)系統(tǒng)沒有作好使用的準(zhǔn)備,必須被啟動,或者從待機(jī)模式中喚醒,或者重啟來清除錯誤。啟動/喚醒進(jìn)程可能在幾秒到幾十秒之間變化。一種解決辦法是讓計(jì)算設(shè)備處于開機(jī)狀態(tài)。然而,這將導(dǎo)致不斷增長的能量消耗,并且開機(jī)狀態(tài)的計(jì)算設(shè)備產(chǎn)生熱和聲輻射,這在很多環(huán)境下都是不能接受的。
常規(guī)的便攜式設(shè)備的另一個缺陷是設(shè)備會在不方便準(zhǔn)備使用的時候變得難以處理。例如,一臺膝上電腦可能需要從包中取出,然后打開以獲得對信息的訪問。如果這樣的設(shè)備包括一個安裝在邊緣的或者其它輔助顯示設(shè)備將是有益的,這些顯示設(shè)備還在包里時就能夠看到,當(dāng)然也不需要打開膝上電腦。
除了上述以外,常規(guī)計(jì)算系統(tǒng)現(xiàn)在正用于實(shí)現(xiàn)傳統(tǒng)上在獨(dú)立設(shè)備上實(shí)現(xiàn)的特征。例如,常規(guī)計(jì)算系統(tǒng)正用于實(shí)現(xiàn)數(shù)字錄像機(jī)(DVR)、音頻回放、電話技術(shù)等。這些特征的增加要求計(jì)算系統(tǒng)一天24小時/一周7天可用,因?yàn)橄到y(tǒng)可能會在任何時候被要求來錄制電視節(jié)目、回放音樂或者加入一個打進(jìn)或者打出的電話呼叫。
因而,需要一種系統(tǒng)和方法,來提供能夠放置在低功率狀態(tài),同時仍然保持能夠處理低強(qiáng)度任務(wù)的計(jì)算系統(tǒng)。本發(fā)明提供了這樣的一個解決方法。
(3)發(fā)明內(nèi)容本發(fā)明針對的是一種包括除了系統(tǒng)中央處理單元以外的輔助微處理器的計(jì)算系統(tǒng)。輔助微處理器也可以與系統(tǒng)中央處理器集成,其中以類似的方式向集成的或者外部的輔助微處理器提供了對組件的訪問。輔助系統(tǒng)利用了單獨(dú)的應(yīng)用程序運(yùn)行時間用于進(jìn)程,并且甚至能在主要系統(tǒng)處于“關(guān)機(jī)”狀態(tài)時運(yùn)行?;谙鄳?yīng)于功耗要求的計(jì)算需求,可提供一種負(fù)載平衡方法。例如,非計(jì)算密集型進(jìn)程被發(fā)送到低功率輔助系統(tǒng)。
通知、數(shù)據(jù)和命令能夠在獨(dú)立處理器控制下經(jīng)由諸如USB等公用連接總線在各個進(jìn)程處理之間發(fā)送。另外,可供整個計(jì)算系統(tǒng)訪問的組件,包括顯示設(shè)備、指示器、存儲設(shè)備和I/O組件,能夠在輔助系統(tǒng)和主系統(tǒng)之間共享。本發(fā)明提供了一種可伸縮的處理能力,它可以顯著地減少總體功耗。
根據(jù)本發(fā)明,提供了一種計(jì)算系統(tǒng),該系統(tǒng)包括具有第一CPU和第一存儲器的主要計(jì)算系統(tǒng)、具有第二CPU或者其它邏輯設(shè)備和第二存儲器的輔助計(jì)算系統(tǒng)、連接到主要和輔助計(jì)算系統(tǒng)的電源、以及通信控制器,該通信控制器在主要計(jì)算系統(tǒng)和輔助計(jì)算系統(tǒng)之間切換外圍組件的預(yù)定幾個,,使得組件能夠在主要計(jì)算系統(tǒng)和輔助計(jì)算系統(tǒng)之間共享。
根據(jù)發(fā)明的另一個方面,基于具有主要計(jì)算系統(tǒng)和輔助計(jì)算系統(tǒng)的計(jì)算系統(tǒng)中的處理功耗要求,提供了一種服務(wù)的負(fù)載平衡方法。該方法包括確定加載到主要系統(tǒng)上的當(dāng)前系統(tǒng)、參考組件列表、以及確定將要執(zhí)行的應(yīng)用程序的功耗要求。如果應(yīng)用程序是低強(qiáng)度任務(wù),則該應(yīng)用程序的處理由輔助計(jì)算系統(tǒng)執(zhí)行,如果應(yīng)用程序是高強(qiáng)度任務(wù),則該應(yīng)用程序的處理由主要計(jì)算系統(tǒng)來執(zhí)行。
根據(jù)發(fā)明的又一方面,提供了一種用于非對稱計(jì)算的系統(tǒng),該系統(tǒng)包括具有高功率CPU和第一存儲器的主要計(jì)算系統(tǒng)、具有低功率CPU和第二存儲器的輔助計(jì)算系統(tǒng)、連接到主要和輔助計(jì)算系統(tǒng)的電源、與主要計(jì)算系統(tǒng)和輔助計(jì)算系統(tǒng)通信的外圍組件、以及通信控制器,該通信控制器在主要計(jì)算系統(tǒng)和輔助計(jì)算系統(tǒng)之間切換外圍組件的預(yù)定幾個,使得組件能夠在主要計(jì)算系統(tǒng)和輔助計(jì)算系統(tǒng)之間共享。
參考附圖閱讀以下說明性實(shí)施例的詳細(xì)描述,本發(fā)明的其它特征和優(yōu)點(diǎn)將變得明顯。
(4)
上文的概述以及下文對優(yōu)選實(shí)施例的詳細(xì)描述,在結(jié)合附圖閱讀時能被更好地理解。為了闡明本發(fā)明,附圖中示出了本發(fā)明的示例性構(gòu)造;然而,發(fā)明不局限于所揭示的具體方法和手段。附圖中圖1所示是常規(guī)個人計(jì)算機(jī)的框圖;圖2所示是基于主要或者輔助系統(tǒng)的電源狀態(tài)來共享組件的通用系統(tǒng)的框圖;圖3所示是作為對主要計(jì)算設(shè)備的單獨(dú)加電的USB外圍設(shè)備的輔助處理器組件的框圖;圖4是使用PCI Express轉(zhuǎn)換元件共享組件的系統(tǒng)的框圖;圖5是共享組件的系統(tǒng)的框圖,其中,PCI Express轉(zhuǎn)換元件包含在南橋芯片組里面;圖6是使用內(nèi)部LAN共享組件的系統(tǒng)的框圖;圖7是使用USB網(wǎng)絡(luò)集線器體系結(jié)構(gòu)共享組件的系統(tǒng)的框圖;圖8是在主要系統(tǒng)和輔助系統(tǒng)間對應(yīng)用程序進(jìn)行負(fù)載平衡的系統(tǒng)的框圖;以及圖9是使用分布式開關(guān)共享組件的系統(tǒng)的框圖。
(5)具體實(shí)施方式
常規(guī)個人計(jì)算機(jī)圖1示出了常規(guī)個人計(jì)算機(jī)系統(tǒng)環(huán)境100的例子。計(jì)算機(jī)110的組件可包括,但不限于,處理單元120、系統(tǒng)存儲器130、以及將包括系統(tǒng)存儲器的各種系統(tǒng)組件耦合到處理單元120的系統(tǒng)總線121。系統(tǒng)總線121可以是幾種類型總線結(jié)構(gòu)中的任何一種,包括存儲器總線或者存儲器控制器、外圍總線、以及使用多種總線體系結(jié)構(gòu)的任一種的局部總線。作為示例而非局限,這樣的體系結(jié)構(gòu)包括工業(yè)標(biāo)準(zhǔn)系統(tǒng)結(jié)構(gòu)(ISA)總線、微通道體系結(jié)構(gòu)總線(MCA)、增強(qiáng)的ISA(EISA)總線、視頻電子技術(shù)標(biāo)準(zhǔn)協(xié)會(VESA)局部總線、外圍部件互連(PCI)總線(也被稱作Mezzanine總線)、外圍部件互連Express(PCI-Express)和系統(tǒng)管理總線(SMBus)。
計(jì)算機(jī)110通常包括多種的計(jì)算機(jī)可讀介質(zhì)。計(jì)算機(jī)可讀介質(zhì)可以是能被計(jì)算機(jī)110訪問的任何一種可用介質(zhì),它包括易失和非易失介質(zhì)、可移動和不可移動介質(zhì)。作為示例而非局限,計(jì)算機(jī)可讀介質(zhì)可包含計(jì)算機(jī)存儲介質(zhì)和通信介質(zhì)。計(jì)算機(jī)存儲介質(zhì)包括可以使用用于諸如計(jì)算機(jī)可讀指令,數(shù)據(jù)結(jié)構(gòu),程序模塊或者其它數(shù)據(jù)等信息的存儲的任何方法或技術(shù)實(shí)現(xiàn)的易失和非易失、可移動和不可移動介質(zhì)。計(jì)算機(jī)存儲介質(zhì)包括,但不限于,RAM、ROM、EEPROM、閃存或者其它存儲器技術(shù)、CD-ROM、數(shù)字多功能盤(DVD)或者其它光盤存儲、磁盒、磁帶、磁盤存儲或者其它磁性存儲設(shè)備、或者可以用來存儲所需信息且能被計(jì)算機(jī)110訪問的任何其它介質(zhì)。通信介質(zhì)通常在諸如載波或其它傳輸機(jī)制等已調(diào)制數(shù)據(jù)信號中包含計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或者其它數(shù)據(jù),并包括任何信息傳輸介質(zhì)。術(shù)語“已調(diào)制數(shù)據(jù)信號”意思是以在信號中對信息編碼的方式設(shè)置或改變其一個或多個特征的信號。作為示例而非局限,通信介質(zhì)包括像有線網(wǎng)絡(luò)或者直接有線連接這樣的有線介質(zhì),以及像聲學(xué)、RF、紅外和其它無線介質(zhì)這樣的無線介質(zhì)。上述的任意組合也應(yīng)該被包括進(jìn)計(jì)算機(jī)可讀介質(zhì)的范圍中。
系統(tǒng)存儲器130包括以易失和/或非易失存儲器為形式的計(jì)算機(jī)存儲介質(zhì),比如ROM 131和RAM 132?;据斎?輸出系統(tǒng)133(BIOS)通常存儲在ROM 131中,它包括了例如在啟動期間在計(jì)算機(jī)110的元件之間幫助傳輸信息的基本例程。RAM132通常包含能立即被處理單元120訪問和/或當(dāng)前正由處理單元120操作的數(shù)據(jù)和/或程序模塊。作為示例而非局限,圖1示出了操作系統(tǒng)134、應(yīng)用程序135、其它程序模塊136和程序數(shù)據(jù)137。
計(jì)算機(jī)110也可包括其它可移動/不可移動、易失/非易失計(jì)算機(jī)存儲介質(zhì)。僅作為示例,圖1示出了對不可移動、非易失的磁介質(zhì)進(jìn)行讀寫的硬盤驅(qū)動器141、對可移動、非易失磁盤152進(jìn)行讀寫的磁盤驅(qū)動器151、以及對可移動、非易失光盤156,如CD-ROM或者其它光介質(zhì)進(jìn)行讀寫的光盤驅(qū)動器155。能在示例性操作環(huán)境中使用的其它可移動/不可移動、易失/非易失計(jì)算機(jī)存儲介質(zhì)包括,但不限于,磁帶盒、閃存卡、數(shù)字多功能盤、數(shù)字錄像帶、固態(tài)RAM、固態(tài)ROM等等。硬盤驅(qū)動器141通常通過像接口140這樣的不可移動存儲器接口連接到系統(tǒng)總線121,而磁盤驅(qū)動器151和光盤驅(qū)動器155通常通過像接口150這樣的可移動存儲器接口連接到系統(tǒng)總線121。
上述討論并在圖1中示出的驅(qū)動器及其相關(guān)聯(lián)的計(jì)算機(jī)存儲介質(zhì)為計(jì)算機(jī)110提供了計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其它數(shù)據(jù)的存儲。例如,在圖1中,硬盤驅(qū)動器141被示出為存儲操作系統(tǒng)144、應(yīng)用程序145、其它程序模塊146和程序數(shù)據(jù)147。注意,這些組件可以和操作系統(tǒng)134、應(yīng)用程序135、其它程序模塊136和程序數(shù)據(jù)137相同,也可以不同。這里對操作系統(tǒng)144、應(yīng)用程序145、其它程序模塊146和程序數(shù)據(jù)147給予不同的標(biāo)號是為了說明至少他們是不同的復(fù)本。用戶可以通過諸如盤162和定點(diǎn)設(shè)備161(通常指鼠標(biāo)、跟蹤球或觸摸墊)等輸入設(shè)備將命令和信息輸進(jìn)計(jì)算機(jī)110。其它輸入設(shè)備(未示出)可以包括麥克風(fēng)、操縱桿、游戲墊、圓盤式衛(wèi)星天線、掃描儀等等。這些和其它輸入設(shè)備通常通過耦合到系統(tǒng)總線的用戶輸入接口160來連接到處理單元120,但是也可通過其它接口和總線結(jié)構(gòu)來連接,比如并行端口、游戲端口或者通用串行總線(USB)。監(jiān)視器191或者其它類型的顯示設(shè)備也通過接口,如視頻接口190連接到系統(tǒng)總線121。除了監(jiān)視器以外,計(jì)算機(jī)也可以包括其它外圍輸出設(shè)備,比如揚(yáng)聲器197和打印機(jī)196,它們都通過輸出外圍接口195來連接。
計(jì)算機(jī)110可以使用到一個或者多個像遠(yuǎn)程計(jì)算機(jī)180這樣的遠(yuǎn)程計(jì)算機(jī)的邏輯連接運(yùn)行在網(wǎng)絡(luò)化環(huán)境中。遠(yuǎn)程計(jì)算機(jī)180可以是個人計(jì)算機(jī)、服務(wù)器、路由器網(wǎng)絡(luò)PC、對等設(shè)備或者其它普通網(wǎng)絡(luò)節(jié)點(diǎn),并且通常包括上文相對于計(jì)算機(jī)110描述的許多或所有元件,盡管在圖1中只示出了存儲器存儲設(shè)備181。描述的邏輯連接包括局域網(wǎng)(LAN)171和廣域網(wǎng)(WAN)173,但也可包括其它網(wǎng)絡(luò)。這樣的網(wǎng)絡(luò)環(huán)境常見于辦公室、企業(yè)范圍計(jì)算機(jī)網(wǎng)絡(luò)、內(nèi)聯(lián)網(wǎng)和因特網(wǎng)。
當(dāng)在LAN環(huán)境中使用時,計(jì)算機(jī)110通過網(wǎng)絡(luò)接口或者適配器170連接到LAN171。當(dāng)在WAN環(huán)境中使用時,計(jì)算機(jī)110通常包括調(diào)制解調(diào)器172或者通過WAN173,如因特網(wǎng)建立通信的其它裝置??梢允莾?nèi)置或者外置的調(diào)制解調(diào)器172可以通過用戶輸入接口160或者其它合適的機(jī)制連接到系統(tǒng)總線121。在網(wǎng)絡(luò)化環(huán)境中,相對于計(jì)算機(jī)110所描述的程序模塊或者其一部分可以存儲在遠(yuǎn)程存儲器存儲設(shè)備中。作為示例而非局限,圖1示出了遠(yuǎn)程應(yīng)用程序185駐留在存儲器設(shè)備181中??梢岳斫猓境龅木W(wǎng)絡(luò)連接是示例性的,也可以使用在計(jì)算機(jī)之間建立通信鏈路的其它裝置。
提供輔助和主要計(jì)算環(huán)境的示例性系統(tǒng)現(xiàn)在參考圖2和圖3,示出了基于主要或輔助系統(tǒng)的功率狀態(tài)共享組件的系統(tǒng)200的綜述。系統(tǒng)200包括具有主要CPU和存儲器的第一根集合體(root complex)(主要系統(tǒng))201。主要系統(tǒng)類似于常規(guī)計(jì)算機(jī)110,因?yàn)樗哂凶銐蚋叩奶幚砟芰硖幚韽?fù)雜任務(wù)。第二根集合體(輔助系統(tǒng))202包括輔助(低功率)CPU和存儲器。輔助系統(tǒng)202可以是低功率設(shè)備,具有更少量的處理能力,類似于PDA。這兩個根集合體都能由電源208來加電,電源向主要系統(tǒng)201和輔助系統(tǒng)202提供切換的功率源。
圖3示出輔助系統(tǒng)202的一個示例性實(shí)現(xiàn)。輔助系統(tǒng)202包括嵌入式處理器239、引導(dǎo)裝入程序/應(yīng)用程序存儲240、USB客戶端模塊241、擔(dān)當(dāng)非易失存儲的輔助數(shù)據(jù)高速緩存242、以及I2C通信連接243。輔助系統(tǒng)202可以通過USB 247、SMBus246和通用輸入輸出(GPIO)244(經(jīng)由執(zhí)行器245)來接收輸入。也可提供顯示設(shè)備224。
使用圖2和圖3中的體系結(jié)構(gòu),應(yīng)用程序能與每個系統(tǒng)的功率狀態(tài)相分離地在處理系統(tǒng)201或者202(即主要或者次要根集合體、輔助系統(tǒng))上運(yùn)作。另外,主要處理系統(tǒng)201或者輔助系統(tǒng)202的任一個可以通過比如SMBus 246這樣的系統(tǒng)命令總線向另一個發(fā)送信號用于喚醒和休眠事件。最后,如果兩個系統(tǒng)都在運(yùn)作,則任一個系統(tǒng)內(nèi)的進(jìn)程就都能互相通信,從而可以通過像USB這樣的公用總線發(fā)送通知和數(shù)據(jù)。在這個模型中,主要系統(tǒng)把輔助系統(tǒng)當(dāng)作USB外圍設(shè)備。
除了上述情況以外,整個計(jì)算系統(tǒng)的組件都能被共享。輔助系統(tǒng)202使用自己的單獨(dú)應(yīng)用程序運(yùn)行時間用于進(jìn)程,這允許輔助系統(tǒng)在主要系統(tǒng)201處于“關(guān)機(jī)”或者“不可用”狀態(tài)時運(yùn)行與將要完成的方案相匹配的程序。電源208提供到主機(jī)控制器接口204的輸出,來指示一特定的集合體處于開機(jī)狀態(tài)。然后主機(jī)控制器接口把主要系統(tǒng)201和輔助系統(tǒng)202間的外圍設(shè)備控制,比如指示器205、硬盤206和輔助顯示設(shè)備207的控制,切換到處于開機(jī)狀態(tài)的系統(tǒng)。
本發(fā)明通過提供物理上作為系統(tǒng)200的一部分或者遠(yuǎn)程地定位但可由系統(tǒng)200訪問的任一組件的共享,來對這個體系結(jié)構(gòu)加以改進(jìn)。在典型的PC體系結(jié)構(gòu)中,諸如存儲器、主要和輔助顯示設(shè)備、執(zhí)行器、硬件媒體組件(TV調(diào)諧器,mpeg編碼/解碼器等)、外圍設(shè)備等組件,由主要CPU和運(yùn)行時間單獨(dú)地訪問和控制。如果任何一個組件和其它外部計(jì)算系統(tǒng)共享,它是通過網(wǎng)絡(luò)共享來完成的。也不存在這樣的機(jī)制,使當(dāng)主要CPU和操作系統(tǒng)都“關(guān)閉”的情況下,通過第二系統(tǒng)(在或者不在板上)PC上諸如硬盤驅(qū)動器、USB驅(qū)動組件和外圍設(shè)備、主要和輔助顯示設(shè)備等等組件也能變得可由第二系統(tǒng)(在或不在板上)使用。
本發(fā)明提供具體實(shí)施例,在這些實(shí)施例中,主板上(或者連接到主板)的組件能被擁有、訪問和/或在處理器和操作系統(tǒng)之間共享,而不管“擁有”組件的CPU表面上的“開/關(guān)”狀態(tài)。參考圖4,示出了本發(fā)明的具體實(shí)施例,使具有主要處理器208的主要系統(tǒng)201和具有輔助處理器211的輔助系統(tǒng)202之間的組件和資源得以共享。主要和輔助處理器在本發(fā)明中是不對稱的。每一個系統(tǒng)包括了它自己的主機(jī)控制器(主要主機(jī)控制器209和輔助主機(jī)控制器210)來與下游設(shè)備通信。主要系統(tǒng)201可以令見識器217作為顯示設(shè)備。
一個“智能”的PCI Express開關(guān)212包括了兩個上游P2P橋213和214,每個都附帶各自獨(dú)立的內(nèi)部PCI總線和多個下游P2P橋218,219和220。每個下游P2P橋連接到每個內(nèi)部PCI總線。不像常規(guī)的PCI Express開關(guān),每個下游P2P橋都有能力被配置成對每個內(nèi)部PCI總線的枚舉實(shí)行作出響應(yīng)。橋管理器216包括內(nèi)部配置控制寄存器,來定義每個上游總線將要對其作出響應(yīng)的下游P2P橋。來自其它PCI總線的通信被忽略。
如上所述,PCI Express開關(guān)212能夠在兩個系統(tǒng)201和202中切換任意組件。如圖所示,鍵盤221、鼠標(biāo)222、硬盤206、閃存223、輔助用戶接口(顯示設(shè)備)224和輔助執(zhí)行器225可以在系統(tǒng)之間切換。由于其它組件可被附加并且在系統(tǒng)201和202之間切換,所以這個列表并非旨在為窮盡列表。
因而,根據(jù)本發(fā)明,兩個根集合體201和202連接到開關(guān)212中的上游端口(例如P2P 213和P2P 214)。由此,所有的下游組件能被任一根集合體訪問。
另外,智能PCI開關(guān)使組件能被同時共享。這個方法中,主要及輔助系統(tǒng)和運(yùn)行時間都能夠把數(shù)據(jù)寫入輔助系統(tǒng)224中,而不管顯示設(shè)備物理上是主要系統(tǒng)還是輔助系統(tǒng)的組件集的一部分。類似地,不管音頻組件連接到哪一個下游端口上,數(shù)字媒體能通過音頻組件流傳送。
ACPI功率管理由根集合體單獨(dú)處理。當(dāng)主要系統(tǒng)201進(jìn)入“關(guān)機(jī)”狀態(tài)時,它發(fā)送一ACPI事件給所有它知道的組件。只要其它根集合體(即輔助系統(tǒng)202)開著,那么在智能PCI開關(guān)212的下游、在內(nèi)部LAN上、或者智能USB集線器(如下所述)的組件就能保持開著。另外,某些組件只有很差的功率管理約束。例如,USB組件通常不能置于待機(jī)狀態(tài),并且如果主要系統(tǒng)201進(jìn)入待機(jī)模式,則USB組件必須被完全關(guān)閉。根據(jù)本發(fā)明,當(dāng)主要處理器208進(jìn)入待機(jī)或者關(guān)機(jī)狀態(tài)時,這些設(shè)備能夠由輔助處理器211來管理,從而使一定級別的功率管理在這些設(shè)備中有效。
圖5示出了PCI Express開關(guān)212能夠主宿于比如南橋芯片組等中的概述。如本領(lǐng)域普通技術(shù)人員所已知的,南橋芯片組與例如網(wǎng)絡(luò)I/O設(shè)備229、磁盤存儲(比如硬盤206)、USB外圍設(shè)備228和HID控制227通信。HID控制是和HIDClass設(shè)備相關(guān)聯(lián)的數(shù)據(jù)源或者數(shù)據(jù)接收器。數(shù)據(jù)源或者輸入控制的一個例子是按鈕。數(shù)據(jù)接收器或者輸出控制的一個例子是LED??刂茢?shù)據(jù)通過使用HID報(bào)告來獲得并且發(fā)送到設(shè)備中。
本領(lǐng)域的普通技術(shù)人員將認(rèn)識到,需要連續(xù)(24x7)或者即時計(jì)算可用性的新的計(jì)算方案已在形成。這樣的方案包括但不限于,管理設(shè)備和消費(fèi)者電子設(shè)備。因而,一種管理功耗和風(fēng)扇噪聲,同時適當(dāng)?shù)刈R別和處理事件的智能裝置對于匹配關(guān)閉系統(tǒng)、最小化用戶的相關(guān)成本以及提供環(huán)境友好系統(tǒng)(噪聲)的用戶期待是必須的。
因?yàn)榈蛷?qiáng)度任務(wù)和操作通過將它們放置在輔助系統(tǒng)202上可以總是可用,所以本發(fā)明減少了整體功耗并且消除了風(fēng)扇使用(即聲發(fā)射)。例如,常規(guī)計(jì)算機(jī)110在編輯電子數(shù)據(jù)表和監(jiān)視電子郵件時提供播放數(shù)字音頻文件的能力。然而,如果所需要的一切是播放數(shù)字音頻文件,則計(jì)算機(jī)110具有比所需的更多的處理能力,并且是對電源或者電池中的電流的一種過度消耗。根據(jù)本發(fā)明,輔助系統(tǒng)202能夠主宿音頻文件回放的任務(wù),并且主要系統(tǒng)201能被關(guān)閉。
另外,輔助系統(tǒng)202能夠響應(yīng)于需要馬上處理的事件,比如回答VOIP呼叫或者安全授權(quán)校驗(yàn)等。這提供了充足的時間來喚醒主要系統(tǒng)201,已處理非時間危急的事件或者需要主要系統(tǒng)全部資源來處理的事件。
本發(fā)明也對基于時間的交互有用。當(dāng)主要系統(tǒng)201支持喚醒定時器事件概念時,這需要花費(fèi)30秒或更多來發(fā)展成有用狀態(tài)。因此,在數(shù)字錄像機(jī)(DVR)情形中,如果主要系統(tǒng)201要發(fā)送媒體流用于存儲,則它將丟失30秒的記錄時間。然而,輔助系統(tǒng)202能實(shí)現(xiàn)雙向流進(jìn)程,且能夠在沒有對此負(fù)責(zé)的電源或者電池成本的情況下使其變得可用,如果這些能在主要處理器中實(shí)現(xiàn)的話。輔助系統(tǒng)202也可以利用與主要系統(tǒng)201相同對媒體編碼/解碼的硬件協(xié)助。本發(fā)明的一個相關(guān)模型是支持分布式數(shù)據(jù)流,比如將數(shù)字TV流從主要顯示設(shè)備重新路由到輔助顯示設(shè)備,其中輔助顯示設(shè)備在物理上同輔助處理器和運(yùn)行時間相關(guān)聯(lián)。
另一好處是,即使當(dāng)主要系統(tǒng)201處于已經(jīng)故障的“關(guān)機(jī)”狀態(tài)時,輔助系統(tǒng)202也能運(yùn)作。據(jù)此,在主要系統(tǒng)201出問題的情況下,輔助系統(tǒng)202能夠用于監(jiān)視和詢問主要系統(tǒng)201。
現(xiàn)在參考圖6,示出一個實(shí)施例,其中,內(nèi)部LAN用來共享組件。通過自己的互聯(lián)網(wǎng)協(xié)議地址,每個組件都能被定址。系統(tǒng)主板233可通過以太網(wǎng)連接到外圍設(shè)備控制器215。主板233可以對通過互聯(lián)網(wǎng)協(xié)議連接到外圍設(shè)備控制器215的每個外圍設(shè)備(例如,用戶接口244,視頻234,音頻232,硬盤驅(qū)動器230,閃存驅(qū)動器233)定址。
外圍設(shè)備控制器215負(fù)責(zé)代表和映射個別組件身份以及它所控制的每個組件對外部可見的個別互聯(lián)網(wǎng)協(xié)議地址的訪問。可存在一個單獨(dú)的IP地址,代表外圍設(shè)備控制器,并且當(dāng)被查詢時,外圍設(shè)備控制器能夠提供或者發(fā)布一帶有定址和/或命令細(xì)節(jié)的性能列表。
現(xiàn)在參考圖7,示出了一個實(shí)施例,其中,實(shí)現(xiàn)USB集線器體系結(jié)構(gòu)以便使組件在多個根集合體之間可用。每個根集合體201和202把共享的組件看作USB外圍設(shè)備。這個實(shí)施例使用了經(jīng)修改的USB集線器249,它可在上游線之間切換,以同步地訪問下游組件,類似于PCI Express開關(guān)212。
參考圖8,示出了本發(fā)明的另一個方面,它針對基于處理功耗要求對服務(wù)的負(fù)載平衡。當(dāng)應(yīng)用程序235執(zhí)行時,處理器管理器236確定當(dāng)前系統(tǒng)的負(fù)載(即,主要處理器208上的負(fù)載),并且參考正在運(yùn)作的組件(如光盤驅(qū)動器、磁盤驅(qū)動器、編碼器/解碼器等等)的枚舉列表。這樣的列表可以從包含在任務(wù)列表中的信息中導(dǎo)出。如果應(yīng)用程序235是簡單、低強(qiáng)度的任務(wù),則處理器管理器236將它分路到輔助系統(tǒng)202。反之,如果應(yīng)用程序是高強(qiáng)度任務(wù),則處理器管理器236將它分路到主要系統(tǒng)201。此外,某些應(yīng)用程序可使用兩個處理器的資源。同樣,為他們的執(zhí)行將平臺和任務(wù)劃分給合適的處理器和運(yùn)行時間也是可能的。這個負(fù)載平衡提供了系統(tǒng)資源的更有效的使用。
在處理器管理器236里有這個功能的結(jié)果是,系統(tǒng)的高功耗組件能在低強(qiáng)度應(yīng)用程序運(yùn)行時完全關(guān)閉。處理器208和211兩者能夠共享PC體系結(jié)構(gòu)的組件,比如硬盤、輸入設(shè)備等等。能夠使用單獨(dú)的應(yīng)用程序模型來寫應(yīng)用程序235。
現(xiàn)在參考圖9,示出了經(jīng)由“分布式”開關(guān)(顯示為237和238)連接的組件。主要或者輔助系統(tǒng)201和202訪問是經(jīng)過這個開關(guān)進(jìn)行的,就如訪問對直接控制的任何處理器是本地的一樣。分布式開關(guān)的兩端經(jīng)由多種物理傳輸?shù)娜我环N互相連接,諸如石不限于IrDA、藍(lán)牙和802.11x。
盡管結(jié)合各附圖的優(yōu)選實(shí)施例描述了本發(fā)明,然而可以理解,在不脫離本發(fā)明的情況下,可以使用其它類似的實(shí)施例,或者對所描述的實(shí)施例作出修改和添加,來執(zhí)行本發(fā)明的相同功能。例如,本領(lǐng)域的技術(shù)人員將認(rèn)識到,本申請中描述的本發(fā)明可以應(yīng)用于任一計(jì)算設(shè)備或者環(huán)境,不管是有線還是無線的,并可以應(yīng)用于通過通信網(wǎng)路連接并在網(wǎng)絡(luò)上交互的任何數(shù)量的這種計(jì)算設(shè)備。此外,應(yīng)該強(qiáng)調(diào)的是,可構(gòu)想多種計(jì)算機(jī)平臺,包括手持式設(shè)備操作系統(tǒng)和其它應(yīng)用程序?qū)S貌僮飨到y(tǒng),尤其當(dāng)無線網(wǎng)絡(luò)設(shè)備的數(shù)量持續(xù)增長時。再者,本發(fā)明可以在多個處理芯片或者設(shè)備中實(shí)現(xiàn),并且存儲器可類似地在多個設(shè)備中實(shí)現(xiàn)。因此,本發(fā)明不應(yīng)該限制在任何一個單獨(dú)的實(shí)施例上,而是相反,應(yīng)該根據(jù)所附權(quán)利要求書在寬度和范圍上加以分析解釋。
權(quán)利要求
1.一種計(jì)算機(jī)系統(tǒng),包含一具有第一CPU和第一存儲器的主要計(jì)算系統(tǒng);一具有第二CPU和第二存儲器的輔助計(jì)算系統(tǒng);一連接到所述主要和輔助計(jì)算系統(tǒng)的電源;一在所述主要計(jì)算系統(tǒng)和所述輔助計(jì)算系統(tǒng)之間的命令和控制接口。
2.如權(quán)利要求1所述的計(jì)算系統(tǒng),其特征在于,數(shù)據(jù)和消息共享是通過所述主要系統(tǒng)和所述輔助系統(tǒng)間的進(jìn)程間通信來執(zhí)行的,并且其中,所述輔助系統(tǒng)通過USB來連接,并且被所述主要系統(tǒng)當(dāng)作USB外圍設(shè)備來處理。
3.如權(quán)利要求2所述的計(jì)算系統(tǒng),其特征在于,還包括一通信控制器,它在所述主要計(jì)算系統(tǒng)和所述輔助計(jì)算系統(tǒng)之間切換外圍組件中預(yù)定的幾個,使得所述組件在所述主要計(jì)算系統(tǒng)和所述輔助計(jì)算系統(tǒng)之間共享。
4.如權(quán)利要求1所述的計(jì)算系統(tǒng),其特征在于,所述主要計(jì)算系統(tǒng)和所述輔助計(jì)算系統(tǒng)的每一個包含一主機(jī)控制器,它連接到所述通信控制器以與下游設(shè)備通信。
5.如權(quán)利要求4所述的計(jì)算系統(tǒng),其特征在于,所述通信控制器包含一PCIExpress通信控制器,它具有用于所述主要計(jì)算系統(tǒng)和所述輔助計(jì)算系統(tǒng)的每一個的上游P2P橋、以及連接到所述組件的下游P2P橋,以及,其中,所述每個上游P2P橋通過內(nèi)部PCI總線與每個下游P2P橋通信。
6.如權(quán)利要求5所述的計(jì)算系統(tǒng),其特征在于,所述通信控制器包含一橋管理器,它保留了一內(nèi)部配置控制寄存器,來定義每個下游P2P橋響應(yīng)于哪一個上游P2P橋。
7.如權(quán)利要求6所述的計(jì)算系統(tǒng),其特征在于,所述組件通過所述通信控制器在所述主要計(jì)算系統(tǒng)和所述輔助計(jì)算系統(tǒng)之間同時共享。
8.如權(quán)利要求1所述的計(jì)算系統(tǒng),其特征在于,每個計(jì)算系統(tǒng)包含一應(yīng)用程序運(yùn)行時間,以及其中,根據(jù)在所述計(jì)算系統(tǒng)中執(zhí)行應(yīng)用程序的需求,所述通信控制器響應(yīng)于在所述主要計(jì)算系統(tǒng)和所述輔助計(jì)算系統(tǒng)之間切換所述外圍組件的預(yù)定幾個。
9.如權(quán)利要求8所述的計(jì)算系統(tǒng),其特征在于,所述低強(qiáng)度任務(wù)主宿在所述輔助計(jì)算系統(tǒng)中。
10.如權(quán)利要求8所述的計(jì)算系統(tǒng),其特征在于,所述輔助計(jì)算系統(tǒng)提供基于定時的交互,并且其中,所述輔助計(jì)算系統(tǒng)響應(yīng)于事件喚醒所述主要計(jì)算系統(tǒng)。
11.如權(quán)利要求8所述的計(jì)算系統(tǒng),其特征在于,所述輔助系統(tǒng)是低功率系統(tǒng),并且其中,當(dāng)所述主要系統(tǒng)不可用時,所述輔助系統(tǒng)適用于運(yùn)行應(yīng)用程序。
12.如權(quán)利要求1所述的計(jì)算系統(tǒng),其特征在于,所述通信控制器包含內(nèi)部LAN,并且其中,所述組件通過互聯(lián)網(wǎng)協(xié)議地址來定址。
13.如權(quán)利要求1所述的計(jì)算系統(tǒng),其特征在于,所述通信控制器包含一分布式開關(guān),并且其中,所述組件是由所述主要計(jì)算系統(tǒng)或者所述輔助計(jì)算系統(tǒng)通過所述分布式開關(guān)來訪問的,如同訪問是本地的一樣。
14.如權(quán)利要求1所述的計(jì)算系統(tǒng),其特征在于,不能進(jìn)入待機(jī)狀態(tài)的組件由所述輔助計(jì)算系統(tǒng)進(jìn)行功率管理。
15.一種基于具有主要計(jì)算系統(tǒng)和輔助計(jì)算系統(tǒng)的計(jì)算系統(tǒng)中處理功耗需求進(jìn)行服務(wù)的負(fù)載平衡的方法,包含確定主要系統(tǒng)上的當(dāng)前系統(tǒng)負(fù)載;參考一組件列表;確定將要被執(zhí)行的應(yīng)用程序的功耗需求;以及如果所述應(yīng)用程序是低強(qiáng)度任務(wù),則所述應(yīng)用程序的處理由所述輔助計(jì)算系統(tǒng)來執(zhí)行,如果所述應(yīng)用程序是高強(qiáng)度任務(wù),則所述應(yīng)用程序的處理由所述主要計(jì)算系統(tǒng)來執(zhí)行。
16.如權(quán)利要求15所述的方法,其特征在于,還包含共享所述主要計(jì)算系統(tǒng)和所述輔助計(jì)算系統(tǒng)的資源,使得所述應(yīng)用程序利用兩個系統(tǒng)的資源。
17.如權(quán)利要求16所述的方法,其特征在于,還包含提供基于定時的交互,使得所述輔助計(jì)算系統(tǒng)響應(yīng)于事件喚醒所述主要計(jì)算系統(tǒng)。
18.一種用于非對稱計(jì)算的系統(tǒng),包含一具有高功率CPU和第一存儲器的主要計(jì)算系統(tǒng);一具有低功率CPU和第二存儲器的輔助計(jì)算系統(tǒng);一連接到所述主要和輔助計(jì)算系統(tǒng)的電源;與所述主要計(jì)算系統(tǒng)和所述輔助計(jì)算系統(tǒng)通信的外圍組件;所述主要計(jì)算系統(tǒng)和所述輔助計(jì)算系統(tǒng)之間的命令和控制接口。
19.如權(quán)利要求18所述的系統(tǒng),其特征在于,數(shù)據(jù)和消息共享是通過所述主要系統(tǒng)和所述輔助系統(tǒng)間的進(jìn)程間通信來執(zhí)行的,并且其中,所述輔助系統(tǒng)通過USB總線來連接,并且被所述主要系統(tǒng)當(dāng)作USB外圍設(shè)備來處理。
20.如權(quán)利要求19所述的系統(tǒng),其特征在于,還包括一通信控制器,它在所述主要計(jì)算系統(tǒng)和所述輔助計(jì)算系統(tǒng)之間切換外圍設(shè)備組件的預(yù)定幾個,使得所述組件在所述主要計(jì)算系統(tǒng)和所述輔助計(jì)算系統(tǒng)之間共享。
21.如權(quán)利要求18所述的系統(tǒng),其特征在于,所述通信控制器包含一PCIExpress通信控制器,它具有用于所述主要計(jì)算系統(tǒng)和所述輔助計(jì)算系統(tǒng)的每一個的上游P2P橋,以及一連接到所述組件的下游P2P橋,以及其中,所述每個上游P2P橋通過一內(nèi)部PCI總線與每個下游P2P橋通信。
22.如權(quán)利要求18所述的系統(tǒng),其特征在于,每個計(jì)算系統(tǒng)包含一應(yīng)用程序運(yùn)行時間,以及其中,根據(jù)在所述計(jì)算系統(tǒng)中執(zhí)行應(yīng)用程序的需求,所述通信控制器響應(yīng)與在所述主要計(jì)算系統(tǒng)和所述輔助計(jì)算系統(tǒng)之間切換所述外圍組件的預(yù)定幾個。
23.如權(quán)利要求18所述的系統(tǒng),其特征在于,所述輔助計(jì)算系統(tǒng)提供了基于定時的交互,并且其中,所述輔助計(jì)算系統(tǒng)響應(yīng)于事件喚醒所述主要計(jì)算系統(tǒng)。
24.如權(quán)利要求18所述的系統(tǒng),其特征在于,所述通信控制器包含說內(nèi)部LAN,并且其中,所述組件通過其互聯(lián)網(wǎng)協(xié)議地址來定址。
25.如權(quán)利要求18所述的系統(tǒng),其特征在于,所述通信控制器包含一USB集線器,并且其中,所述組件被所述主要計(jì)算系統(tǒng)和所述輔助計(jì)算系統(tǒng)看作USB外圍設(shè)備。
26.如權(quán)利要求18所述的系統(tǒng),其特征在于,所述通信控制器包含一分布式開關(guān),并且其中,所述組件由所述主要計(jì)算系統(tǒng)或者輔助計(jì)算系統(tǒng)通過所述分布式來訪問,如同訪問是本地的一樣。
全文摘要
一種把輔助處理器結(jié)合到主系統(tǒng)處理器的計(jì)算系統(tǒng)。輔助系統(tǒng)利用單獨(dú)的應(yīng)用程序運(yùn)行時間用于進(jìn)程,并且即使在主系統(tǒng)處于關(guān)機(jī)狀態(tài)時也能運(yùn)行?;谙鄳?yīng)于功耗要求的計(jì)算需求,提供了一種負(fù)平衡方法。非計(jì)算密集型進(jìn)程由低功耗輔助處理器執(zhí)行。另外,可供所有的計(jì)算系統(tǒng)訪問的外圍設(shè)備組件可以共享。
文檔編號G06F13/40GK1694086SQ20051007011
公開日2005年11月9日 申請日期2005年4月28日 優(yōu)先權(quán)日2004年4月28日
發(fā)明者A·M·錢德利, C·L·馬根丹茲, C·A·昭帕, D·C·克羅西爾, J·M·安德森, J·J·佩雷斯, K·W·小斯塔佛爾比姆, P·德馬奧, S·T·卡尼克, W·J·韋斯特林恩 申請人:微軟公司