国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      在多處理器間分配指令執(zhí)行以降低功耗的計算系統(tǒng)和方法

      文檔序號:6433226閱讀:205來源:國知局
      專利名稱:在多處理器間分配指令執(zhí)行以降低功耗的計算系統(tǒng)和方法
      背景技術(shù)
      為了提高某些計算系統(tǒng)的整體性能,可能希望對計算系統(tǒng)進行設計以使其包括兩個或多個處理器。一般而言,多個處理器的使用增加了計算系統(tǒng)上可用來執(zhí)行指令的總的可用指令周期。對于一個處理器,可用指令周期數(shù)一般用每秒執(zhí)行百萬指令數(shù)(MIPS)來量度,并且其遵循的規(guī)律是,與一個計算系統(tǒng)相關(guān)聯(lián)的MIPS越大,該計算系統(tǒng)就能越快地執(zhí)行多個程序(例如應用程序、操作系統(tǒng)程序等)。
      然而,向計算系統(tǒng)添加多個處理器可能大大增加了計算系統(tǒng)所消耗的總功率。這種增加一般來說在移動計算系統(tǒng)中是不希望的,因為這可能由于電池消耗的增加而直接降低總的可用計算時間。
      從而,一直需要更好的途徑,以在提供更高執(zhí)行能力的同時降低多處理器計算系統(tǒng)的功耗。


      在本說明書所附的權(quán)利要求書中,具體指出了被視為本發(fā)明的主題,并明確地要求其權(quán)利。然而,通過參照以下詳細描述,并結(jié)合附圖來閱讀,可以最好地理解本發(fā)明的結(jié)構(gòu)和操作方法,以及其目的、功能和優(yōu)點,在附圖中唯一的附圖是對根據(jù)本發(fā)明實施例的計算系統(tǒng)的一部分的框圖表示。
      應該意識到,為圖示簡明起見,圖中所示的元件不一定按比例繪制。例如,為清楚起見,某些元件的尺寸相對于其它元件被夸大了。
      具體實施例方式
      在以下詳細描述中,闡述了許多具體細節(jié),以提供對本發(fā)明的透徹理解。然而,本領(lǐng)域技術(shù)人員應該理解,沒有這些具體細節(jié)也可以實施本發(fā)明。此外,并未詳細地描述公知的方法、過程、組件和電路,以免模糊了本發(fā)明。
      以下詳細描述中的某些部分是根據(jù)對計算機存儲器內(nèi)的數(shù)據(jù)位或二進制數(shù)字信號進行操作的算法和符號表示而提出的。這些算法描述和表示可以是數(shù)據(jù)處理領(lǐng)域的技術(shù)人員用來向本領(lǐng)域的其他技術(shù)人員表達他們工作的實質(zhì)內(nèi)容的技術(shù)。
      在此,一般地,將算法認為是導向所期望的結(jié)果的自相一致的動作或操作的序列。這些包括對物理量進行的物理操縱。通常,這些量具有電信號或磁信號的形式,所述信號能夠被存儲、傳輸、組合、比較和以其它方式操縱,雖然不一定都是這樣。已經(jīng)證明,主要出于通用的原因,有時將這些信號稱為位、值、元素、符號、字符、項、數(shù)字等是很方便的。然而應該理解到,所有的這些和類似的術(shù)語都應與適當?shù)奈锢砹肯嚓P(guān)聯(lián),并且僅是應用于這些量的方便的標簽而已。
      根據(jù)以下討論將會清楚,除非另外具體指明,否則應該意識到,在整個本說明書中,利用諸如“處理”、“計算”(computing)、“計算”(calculating)、“確定”等術(shù)語的討論指的是計算機或計算系統(tǒng)、或者類似的電子計算設備所進行的下述動作和/或處理,其將計算系統(tǒng)的寄存器和/或存儲器內(nèi)表示為物理(例如電)量的數(shù)據(jù)操縱和/或變換成在計算系統(tǒng)的存儲器、寄存器或其它這種信息存儲、傳輸或顯示設備中類似地表示為物理量的其它數(shù)據(jù)。
      本發(fā)明的實施例可能包括用于執(zhí)行本說明書中的操作的裝置。此裝置可以是為所期望的目的而專門構(gòu)造的,或者該裝置可以包括通用計算設備,該通用計算設備由存儲在該設備中的程序來選擇性地激活或重配置。這種程序可以存儲在存儲介質(zhì)上,所述存儲介質(zhì)例如是但不限于包括軟盤、光盤、CD-ROM、磁光盤在內(nèi)的任何類型的盤、只讀存儲器(ROM)、隨機訪問存儲器(RAM)/電可編程只讀存儲器(EPROM)、電可擦除可編程只讀存儲器(EEPROM)、磁卡或光卡,或者其它任何類型的適合于存儲電指令、并能夠耦合到用于計算設備的系統(tǒng)總線的介質(zhì)。
      在本說明書中所提出的處理和顯示并非固有地與任何特定的計算設備或其它裝置相關(guān)。多種通用系統(tǒng)都可以與根據(jù)本說明書中教導的程序一起使用,或者構(gòu)造更專門的裝置來執(zhí)行所期望的方法可能被證明是很方便的。在以下描述中將會出現(xiàn)用于多種這類系統(tǒng)的所期望的結(jié)構(gòu)。此外,并未參考任何特定的編程語言來描述本發(fā)明的實施例。應該意識到,可以用多種編程語言來實現(xiàn)本說明書中所描述的本發(fā)明的教導。
      在以下描述和所附權(quán)利要求中,可能使用術(shù)語“耦合”和“連接”及其派生詞。應該理解到,這些術(shù)語彼此不是同義語。準確地說,在特定的實施例中,可能用“連接”來表示兩個或更多元件彼此直接物理接觸或電接觸?!榜詈稀钡囊馑伎赡苁侵竷蓚€或更多元件直接物理接觸或電接觸。然而,“耦合”也可以指兩個或更多元件彼此不直接接觸,但仍然彼此協(xié)作或相互作用。
      看圖1,描述了本發(fā)明的實施例100。實施例100可以包括便攜式通信設備50,例如移動通信設備(例如蜂窩電話)、雙向無線電通信系統(tǒng)、單向?qū)ず魴C、雙向?qū)ず魴C、個人通信系統(tǒng)(PCS)、便攜式計算機等等。但是應當理解,本發(fā)明的范圍和應用絕不限于這些例子。本發(fā)明的其它實施例可以包括是或不是便攜式、甚至涉及通信系統(tǒng)的其它計算系統(tǒng),例如臺式或便攜式計算機、服務器、網(wǎng)絡交換設備等。
      在這個特定實施例中,通信設備50可以包括兩個處理器10和20,這兩個處理器可以執(zhí)行指令,例如存儲在存儲器40中的指令。處理器10和20可以是多種集成電路中的一種,所述多種集成電路例如是微處理器、中央處理單元(CPU)、數(shù)字信號處理器、微控制器、精簡指令集計算機(RISC)、復雜指令集計算機(CISC)等等,但本發(fā)明的范圍不受限于具體的設計或處理器10和20所執(zhí)行的功能。此外,在某些實施例中,處理器10和20可以是同一處理器,而在其它實施例中它們可以是不同的。例如,在這個特定實施例中,處理器10可以包括用于執(zhí)行一般用戶應用的CISC處理器,而處理器20可以包括基帶處理器,該基帶處理器可用于發(fā)起和接收無線通信。
      存儲器40可以包括多種易失性或非易失性存儲器,例如先前所列舉的多種存儲介質(zhì)中的任何介質(zhì),但這種列舉當然不是窮盡性的,本發(fā)明的范圍也不限于此。在此特定應用中,存儲器40可以包括將由處理器10或20執(zhí)行的多條指令??偩€41和42可分別被用來允許處理器10和20對存儲在存儲器40中的信息和/或指令進行訪問或存儲。
      例如,存儲器40可被用來存儲多組指令,例如與應用程序、操作系統(tǒng)程序、通信協(xié)議程序等相關(guān)聯(lián)的指令。例如,存儲在存儲器40中的指令可被用來執(zhí)行無線通信,提供便攜式通信設備50的安全性功能,諸如日程安排、電子郵件、因特網(wǎng)瀏覽之類的用戶功能,諸如話音呼叫、SMS、呼叫管理、傳真之類的電話功能,或者諸如MP3、語音識別、話音記事簿、音頻編解碼器之類的多媒體服務,等等。
      處理器10和20可以分別包括監(jiān)控器11和21,它們可被用來確定、跟蹤或預測處理器10和20當前的工作特性。例如,監(jiān)控器11和21可以包括用于確定處理器10和20的性能能力和消耗的硬件和電路的任意組合。簡言之,監(jiān)控器11和21可被用來確定處理器10和20中的哪一個最適于執(zhí)行一組指令,以便考慮便攜式通信設備50所消耗的功率量和/或用戶所期望的性能特性。
      一種用于確定處理器10和20的性能能力的技術(shù)是,監(jiān)控器11和21可以跟蹤或計算可被執(zhí)行的指令的數(shù)量(例如,可執(zhí)行的每秒鐘百萬指令數(shù)(MIPS)),但本發(fā)明的范圍不限于此。這種工作特性可以通過跟蹤或監(jiān)控處理器10和20內(nèi)的一個或多個值來確定。例如,監(jiān)控器11和21可以監(jiān)控諸如工作電位(例如,處理器內(nèi)的核的一部分的電位)、工作頻率(例如內(nèi)部同步信號中的一個)、所生成的等待狀態(tài)的數(shù)量、對處理器外部的存儲器的訪問速度、緩存命中/缺失率、通過處理器10和20的全部或一部分的電流量之類的值。但是應當理解,這種列舉不是窮盡性的,其它實施例可以使用這些特性或其它特性的任意組合。
      監(jiān)控器11和21可以包括硬件和軟件的任意組合。硬件可以包括但不必限于用于記錄指令周期的數(shù)量或由相應的處理器執(zhí)行的指令數(shù)量的鎖存器、計數(shù)器和寄存器。但是,由于其它實施例可以用軟件來實現(xiàn)監(jiān)控器11和21,因此本發(fā)明的范圍不限于任何特定的硬件,甚至不一定要涉及硬件。
      在其它實施例中,監(jiān)控器11和21可以全部或部分地通過軟件,例如在處理器10或20上執(zhí)行的多組指令來實現(xiàn)。如圖所示,處理器10和20可以包括存儲器13和23,這些存儲器可以包括先前所列舉的任何類型的存儲器。存儲器13和23可被用來存儲數(shù)據(jù)以跟蹤對應的處理器10或20的工作性能。例如,存儲器13和23可以包括寄存器,或者能夠存儲(多張)數(shù)據(jù)表,所述數(shù)據(jù)表用于跟蹤處理器10和20在執(zhí)行特定的指令組時所用資源的歷史平均值。這些表還可被動態(tài)更新或取時間平均,使得這張(多張)表中的數(shù)值表示與處理器10和20執(zhí)行特定指令組所用的整體資源消耗有關(guān)的更近期的信息。
      所述的(多張)表還可以持續(xù)跟蹤處理器10和20在各種工作參數(shù)下的性能特性。例如,雖然本發(fā)明的范圍不限于此,但這些表可以保持對下述性能特性的跟蹤,這些性能特性是取決于諸如工作電壓、時鐘頻率等因素的特性,或者是取決于當前在處理器10和20中或在便攜式通信設備50內(nèi)有多少條其它指令正被執(zhí)行的特性。
      雖然本發(fā)明的范圍不限于此,但便攜式通信設備50還可以適于存儲用戶參數(shù),所述用戶參數(shù)可以允許用戶定義或設定所期望的執(zhí)行特定指令時的(多個)性能級別,以及其它功能。因此,當便攜式通信設備50要執(zhí)行一組新的指令(例如存儲器40中的一個用戶應用)時,它首先確定處理器10和20中的哪一個最適于執(zhí)行所述指令?,F(xiàn)在將要提供一個例子,以說明如何完成這種確定,但是應該理解,本發(fā)明的范圍不限于這個例子。
      在此實施例中,當提出請求要使用處理器10來執(zhí)行存儲器40中的一組指令時,處理器10和20已在執(zhí)行其它程序。監(jiān)控器11可以首先使用先前描述過的技術(shù)中的一種或多種來確定處理器10的當前性能特性。然后,監(jiān)控器11可以確定處理器10是否可以在用戶可接受的期望時間段內(nèi)執(zhí)行該組新指令。如果處理器10具有足夠的帶寬(即,可以在可接受的參數(shù)內(nèi)執(zhí)行所述指令組),則所述指令組可以由處理器10來執(zhí)行。
      反之,如果在足夠的時間內(nèi)處理器10無法在當前的工作參數(shù)下執(zhí)行所述指令組,則監(jiān)控器11可以輪詢其它處理器(例如處理器20),以確定所述指令組是否可以由另一處理器來執(zhí)行。雖然本發(fā)明的范圍不限于此,但監(jiān)控器11可以使用總線70與監(jiān)控器21通信,或者與監(jiān)控器21協(xié)商,以確定所述指令組是否可以在處理器20上執(zhí)行。例如,總線70可以是串行或并行總線,其允許監(jiān)控器11和21共享關(guān)于它們各自的處理器10和20的性能信息。應當理解,就監(jiān)控器11和21如何彼此協(xié)商而言,本發(fā)明的范圍不限于任何具體實施例。在其它實施例中,這可以在第三層網(wǎng)絡層或在鏈路層完成?;蛘?,所述協(xié)商可以通過使用中斷和/或經(jīng)由存儲器40共享數(shù)據(jù)而進行。
      簡言之,監(jiān)控器11與監(jiān)控器21協(xié)商,以確定所述指令組是否可以在期望的性能參數(shù)內(nèi)由處理器20執(zhí)行。如果處理器20具有足夠的帶寬(即足夠的能力),則可以將執(zhí)行所述指令組的責任從處理器10轉(zhuǎn)移到處理器20。
      在本發(fā)明又一實施例中,監(jiān)控器11和21可以進行協(xié)商以確定哪個處理器更適于執(zhí)行所述指令組,以降低便攜式通信設備50的整體功耗,或者在最短時間內(nèi)執(zhí)行所述指令組。例如,即使處理器10有足夠的能力執(zhí)行所述指令組,也可能更希望讓處理器20來代替它執(zhí)行所述指令,同時降低與處理器10有關(guān)的功耗(例如,降低工作電位、降低時鐘頻率等)。結(jié)果,所述指令組可以在可接受的時間段內(nèi)被執(zhí)行,同時降低了便攜式通信設備50的整體功耗。
      如果監(jiān)控器21指示出處理器20不具有能在可接受的時間段內(nèi)執(zhí)行所述指令組的帶寬,則監(jiān)控器11可以要求提高處理器10的工作參數(shù)(例如工作電壓、時鐘頻率等),這可以提高處理器10的整體性能能力。工作參數(shù)的提高可以提高處理器10上可用的MIPS,使得可以在可接受的性能級別內(nèi)執(zhí)行所述指令組。應當理解,處理器10和20可以包括下面這種電路,該電路可被用來提高及降低諸如電位、時鐘頻率等的工作參數(shù)。
      在其它實施例中,可以使用算法來調(diào)節(jié)處理器10和/或20的工作參數(shù),以在便攜式通信設備50的計算需求和便攜式通信設備50內(nèi)的處理器的功耗之間尋求平衡。在其它實施例中,監(jiān)控器11和21可被用來均衡處理器10和20所執(zhí)行的程序和/或指令,以便降低便攜式通信設備50的整體功耗。此外,監(jiān)控器11和21可被用來控制處理器10和20的工作參數(shù),以便提高便攜式通信設備50的整體性能。
      盡管在本說明書中已經(jīng)對本發(fā)明的某些特征進行了圖示和描述,但本領(lǐng)域的技術(shù)人員隨即就可以想到多種修改、替換、改變和等同物。因此應當理解,所附權(quán)利要求意圖覆蓋落入本發(fā)明真正精神之內(nèi)的所有這種修改和改變。
      權(quán)利要求
      1.一種裝置,包括第一處理器,用于執(zhí)行第一組指令;第二處理器,用于執(zhí)行第二組指令;第一監(jiān)控器,其適于確定所述第一處理器在執(zhí)行所述第一組指令時可用的性能能力;和第二監(jiān)控器,其通信地耦合到所述第一監(jiān)控器,并適于確定所述第二處理器在執(zhí)行所述第二組指令時可用的性能能力,其中,所述裝置適于在所述第二處理器的可用性能能力低于執(zhí)行第三組指令的可接受的性能級別時,在所述第一處理器上執(zhí)行所述第三組指令。
      2.如權(quán)利要求1所述的裝置,還包括用于存儲所述第一、第二和第三組指令的存儲器。
      3.如權(quán)利要求2所述的裝置,其中,所述指令組包括從由應用程序和操作系統(tǒng)程序所組成的組中選出的程序的指令。
      4.如權(quán)利要求1所述的裝置,其中,所述第一監(jiān)控器適于基于所述第一處理器的當前工作電位來確定所述可用的性能能力。
      5.如權(quán)利要求1所述的裝置,其中,所述第一監(jiān)控器適于基于所述第一處理器的工作頻率來確定所述可用的性能能力。
      6.如權(quán)利要求1所述的裝置,其中,所述第一監(jiān)控器至少部分地由在所述第一處理器上執(zhí)行的第四組指令來提供。
      7.如權(quán)利要求6所述的裝置,其中,所述第一監(jiān)控器部分地由所述第一處理器內(nèi)的邏輯電路來提供。
      8.如權(quán)利要求1所述的裝置,其中,所述裝置適于維護一個數(shù)據(jù)庫,該數(shù)據(jù)庫用于跟蹤執(zhí)行所述第三組指令所需的處理器需求的歷史平均值。
      9.如權(quán)利要求8所述的裝置,其中,所述數(shù)據(jù)庫包括用于執(zhí)行所述第三組指令的平均每秒百萬指令數(shù)。
      10.如權(quán)利要求1所述的裝置,其中,所述可接受的性能級別由用戶定義。
      11.如權(quán)利要求1所述的裝置,其中,所述裝置適于在所述第一處理器的可用性能能力低于在所述第一處理器上執(zhí)行所述第三組指令的可接受的性能級別時,提高所述第二處理器的可用性能能力。
      12.如權(quán)利要求11所述的裝置,其中,所述裝置適于提高所述第一處理器上可用的每秒百萬指令數(shù)。
      13.如權(quán)利要求11所述的裝置,其中,所述裝置適于提高所述第一處理器的工作電位。
      14.如權(quán)利要求11所述的裝置,其中,所述裝置適于提高所述第一處理器的工作頻率。
      15.一種方法,包括當?shù)诙幚砥鞑痪哂凶銐虻哪芰韴?zhí)行第一組指令時,輪詢第一處理器,以確定所述第一處理器是否具有足夠的能力來執(zhí)行所述第一組指令。
      16.如權(quán)利要求15所述的方法,還包括當所述第二處理器正在執(zhí)行第二組指令時,確定所述第二處理器的可用能力。
      17.如權(quán)利要求16所述的方法,其中,確定所述第二處理器的可用能力包括確定所述第二處理器可用的每秒百萬指令數(shù)。
      18.如權(quán)利要求15所述的方法,還包括確定所述第一處理器的能力是否足以在用戶定義的性能級別內(nèi)執(zhí)行所述第一組指令。
      19.如權(quán)利要求18所述的方法,還包括確定所述第一組指令的歷史平均執(zhí)行要求。
      20.如權(quán)利要求18所述的方法,還包括如果所述第一處理器的能力不足以在所述用戶定義的性能級別內(nèi)執(zhí)行所述第一組指令,則提高所述第二處理器的可用能力。
      21.如權(quán)利要求19所述的方法,還包括將所述歷史平均執(zhí)行要求存儲在表中。
      22.如權(quán)利要求15所述的方法,還包括如果所述第一處理器在執(zhí)行第一組指令時具有過剩的能力,則降低所述第一處理器的功耗。
      23.如權(quán)利要求22所述的方法,還包括降低所述第一處理器的電位。
      24.一種制品,其包括存儲有指令的存儲介質(zhì),所述指令在被計算平臺執(zhí)行時導致當?shù)诙幚砥鞑痪哂凶銐虻哪芰韴?zhí)行第一組指令時,輪詢第一處理器,以確定所述第一處理器是否具有足夠的能力來執(zhí)行所述第一組指令。
      25.如權(quán)利要求24所述的制品,其中,所述指令在被執(zhí)行時還導致確定所述第一處理器的能力是否足以在用戶定義的性能級別內(nèi)執(zhí)行所述第一組指令。
      26.如權(quán)利要求25所述的制品,其中,所述指令在被執(zhí)行時還導致確定所述第一組指令的歷史平均執(zhí)行要求。
      27.如權(quán)利要求24所述的制品,其中,所述指令在被執(zhí)行時還導致如果所述第一處理器在執(zhí)行第一組指令時具有過剩的能力,則降低所述第一處理器的功耗。
      全文摘要
      簡要地說,根據(jù)本發(fā)明的一個實施例,一種便攜式通信設備包括具有監(jiān)控器的多個處理器。所述處理器的監(jiān)控器可以相互協(xié)商,以確定哪個處理器最適于執(zhí)行一組指令。
      文檔編號G06F1/32GK1605063SQ02824968
      公開日2005年4月6日 申請日期2002年12月2日 優(yōu)先權(quán)日2001年12月13日
      發(fā)明者馬特·海杜克 申請人:英特爾公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1