專利名稱:動(dòng)態(tài)控制處理器的系統(tǒng)和方法
技術(shù)領(lǐng)域:
背景技術(shù):
便攜式計(jì)算裝置(PD)普遍存在。這些裝置可包含蜂窩式電話、便攜式數(shù)字助理(PDA)、便攜式游戲控制臺(tái)、掌上型計(jì)算機(jī),和其它便攜式電子裝置。除了這些裝置的主要功能外,許多裝置還可包含外圍功能。舉例來(lái)說(shuō),蜂窩式電話可包含進(jìn)行蜂窩式電話呼叫的主要功能,以及照相機(jī)、攝像機(jī)、全球定位系統(tǒng)(GPS)導(dǎo)航、網(wǎng)絡(luò)瀏覽、發(fā)送和接收電子郵件、發(fā)送和接收文本消息、即按即說(shuō)能力等外圍功能。隨著此裝置的功能性增加,支持此功能性 所需的計(jì)算或處理能力也增加。此外,隨著計(jì)算能力增加,更加需要有效管理提供計(jì)算能力的處理器。因此,需要在中央處理單元中執(zhí)行動(dòng)態(tài)時(shí)鐘和電壓縮放算法的改進(jìn)的方法
發(fā)明內(nèi)容
圖式中,除非另外指示,否則貫穿于各圖的相同參考數(shù)字指代相同零件。圖I是處于關(guān)閉位置的便攜式計(jì)算裝置(P⑶)的第一方面的平面前視圖;圖2是處于打開位置的P⑶的第一方面的平面前視圖;圖3是K 的第二方面的框圖;圖4是處理系統(tǒng)的框圖;圖5是說(shuō)明在中央處理單元內(nèi)執(zhí)行動(dòng)態(tài)時(shí)鐘和電壓切換算法的方法的第一方面的流程圖;圖6是說(shuō)明所描繪的針對(duì)中央處理單元的工作負(fù)載以及動(dòng)態(tài)時(shí)鐘和電壓縮放跟蹤負(fù)載與時(shí)間的第一曲線圖;圖7是說(shuō)明在中央處理單元內(nèi)執(zhí)行動(dòng)態(tài)時(shí)鐘和電壓切換算法的方法的第二方面的流程圖;圖8是說(shuō)明所描繪的針對(duì)中央處理單元的工作負(fù)載以及動(dòng)態(tài)時(shí)鐘和電壓縮放跟蹤負(fù)載與時(shí)間的第二曲線圖;圖9是說(shuō)明所描繪的針對(duì)中央處理單元的工作負(fù)載以及動(dòng)態(tài)時(shí)鐘和電壓縮放跟蹤負(fù)載與時(shí)間的第三曲線圖;圖10是說(shuō)明在中央處理單元內(nèi)執(zhí)行動(dòng)態(tài)時(shí)鐘和電壓切換算法的方法的第三方面的流程圖;圖11是說(shuō)明所描繪的針對(duì)中央處理單元的工作負(fù)載以及動(dòng)態(tài)時(shí)鐘和電壓縮放跟蹤負(fù)載與時(shí)間的第四曲線圖;圖12是說(shuō)明所描繪的針對(duì)中央處理單元的工作負(fù)載以及動(dòng)態(tài)時(shí)鐘和電壓縮放跟蹤負(fù)載與時(shí)間的第五曲線圖;圖13是說(shuō)明在中央處理單元內(nèi)執(zhí)行動(dòng)態(tài)時(shí)鐘和電壓切換算法的方法的第四方面的流程圖;圖14是說(shuō)明所描繪的針對(duì)中央處理單元的工作負(fù)載以及動(dòng)態(tài)時(shí)鐘和電壓縮放跟蹤負(fù)載與時(shí)間的第六曲線圖;以及圖15是說(shuō)明所描繪的針對(duì)中央處理單元的工作負(fù)載以及動(dòng)態(tài)時(shí)鐘和電壓縮放跟 蹤負(fù)載與時(shí)間的第七曲線圖。
具體實(shí)施例方式本文使用詞語(yǔ)“示范性”來(lái)表示“充當(dāng)實(shí)例、例子或說(shuō)明”。本文描述為“示范性”的任何方面不必解釋為比其它方面優(yōu)選或有利。在此描述中,術(shù)語(yǔ)“應(yīng)用程序”還可包含具有可執(zhí)行內(nèi)容的文件,例如對(duì)象代碼、腳本、字節(jié)代碼、標(biāo)記語(yǔ)言文件和修補(bǔ)程序。另外,本文引用的“應(yīng)用程序”還可包含本質(zhì)上不可執(zhí)行的文件,例如可能需要打開的文檔或需要存取的其它數(shù)據(jù)文件。術(shù)語(yǔ)“內(nèi)容”也可包含具有可執(zhí)行內(nèi)容的文件,例如對(duì)象代碼、腳本、字節(jié)代碼、標(biāo)記語(yǔ)言文件和修補(bǔ)程序。另外,本文引用的“內(nèi)容”還可包含本質(zhì)上不可執(zhí)行的文件,例如可能需要打開的文檔或需要存取的其它數(shù)據(jù)文件。如此描述中使用,術(shù)語(yǔ)“組件”、“數(shù)據(jù)庫(kù)”、“模塊” “系統(tǒng)”等意在指代計(jì)算機(jī)相關(guān)實(shí)體,其為硬件、固件、硬件與軟件的組合、軟件,或執(zhí)行中的軟件。舉例來(lái)說(shuō),組件可為(但不限于為)在處理器上運(yùn)行的進(jìn)程、處理器、對(duì)象、可執(zhí)行程序、執(zhí)行線程、程序,和/或計(jì)算機(jī)。借助說(shuō)明,在計(jì)算裝置上運(yùn)行的應(yīng)用程序和計(jì)算裝置兩者均可為組件。一個(gè)或一個(gè)以上組件可駐留在進(jìn)程和/或執(zhí)行線程內(nèi),且組件可局限于一個(gè)計(jì)算機(jī)上且/或分布于兩個(gè)或兩個(gè)以上計(jì)算機(jī)之間。另外,這些組件可從上面存儲(chǔ)有各種數(shù)據(jù)結(jié)構(gòu)的各種計(jì)算機(jī)可讀媒體執(zhí)行。所述組件可借助本地和/或遠(yuǎn)程進(jìn)程,例如根據(jù)具有一個(gè)或一個(gè)以上數(shù)據(jù)包的信號(hào)(例如,來(lái)自一個(gè)與本地系統(tǒng)、分布式系統(tǒng)中的另一組件和/或借助所述信號(hào)越過(guò)例如因特網(wǎng)等網(wǎng)絡(luò)與其它系統(tǒng)交互的組件的數(shù)據(jù))來(lái)通信。首先參看圖I和圖2,展示示范性便攜式計(jì)算裝置(P⑶),且其一般表示為100。如圖所示,P⑶100可包含外殼102。外殼102可包含上部外殼部分104和下部外殼部分106。圖I展示上部外殼部分104可包含顯示器108。在特定方面中,顯示器108可為觸摸屏顯示器。上部外殼部分104還可包含跟蹤球輸入裝置110。此外,如圖I所示,上部外殼部分104可包含通電按鈕112和斷電按鈕114。如圖I所示,P⑶100的上部外殼部分104可包含多個(gè)指示燈116和一揚(yáng)聲器118。每一指示燈116可為發(fā)光二極管(LED)。在特定方面中,如圖2中描繪,上部外殼部分104可相對(duì)于下部外殼部分106移動(dòng)。特定來(lái)說(shuō),上部外殼部分104可相對(duì)于下部外殼部分106滑動(dòng)。如圖2所示,下部外殼部分106可包含多按鈕鍵盤120。在特定方面中,多按鈕鍵盤120可為標(biāo)準(zhǔn)QWERTY鍵盤。多按鈕鍵盤120可在上部外殼部分104相對(duì)于下部外殼部分106移動(dòng)時(shí)顯露。圖2進(jìn)一步說(shuō)明P⑶100可包含在下部外殼部分106上的復(fù)位按鈕122。參看圖3,展示便攜式計(jì)算裝置(P⑶)的示范性非限定性方面,且其一般表示為320。如圖所示,P⑶320包含包括多核CPU 324的芯片上系統(tǒng)322。多核CPU 324可包含第零核325、第一核326和第N核327。如圖3中說(shuō)明,顯示器控制器328和觸摸屏控制器330耦合到多核CPU 324。芯片上系統(tǒng)322外部的觸摸屏顯示器332又耦合到顯示器控制器328和觸摸屏控制器330。圖3進(jìn)一步指示視頻編碼器334 (例如,逐行倒相(PAL)編碼器、順序傳送與彩色存儲(chǔ)電視系統(tǒng)(SECAM)編碼器或國(guó)家電視系統(tǒng)委員會(huì)(NTSC)編碼器)耦合到多核CPU324。此外,視頻放大器336耦合到視頻編碼器334和觸摸屏顯示器332。并且,視頻端口 338耦合到視頻放大器336。如圖3中所描繪,通用串行總線(USB)控制器340耦合到多核CPU324。并且,USB端口 342耦合到USB控制器340。存儲(chǔ)器344和訂戶身份模塊(SM)卡346 也可耦合到多核CPU 324。此外,如圖3所示,數(shù)碼相機(jī)348可耦合到多核CPU 324。在示范性方面中,數(shù)碼相機(jī)348是電荷耦合裝置(CCD)相機(jī)或互補(bǔ)金屬氧化物半導(dǎo)體(CMOS)相機(jī)。如圖3中進(jìn)一步說(shuō)明,立體聲音頻CODEC 350可耦合到多核CPU 324。此外,音頻放大器352可耦合到立體聲音頻CODEC 350。在示范性方面中,第一立體聲揚(yáng)聲器354和第二立體聲揚(yáng)聲器356耦合到音頻放大器352。圖3展示麥克風(fēng)放大器358也可耦合到立體聲音頻CODEC 350。另外,麥克風(fēng)360可耦合到麥克風(fēng)放大器358。在特定方面中,調(diào)頻(FM)無(wú)線電調(diào)諧器362可耦合到立體聲音頻CODEC 350。并且,F(xiàn)M天線364耦合到FM無(wú)線電調(diào)諧器362。此外,立體聲頭戴式耳機(jī)366可耦合到立體聲音頻CODEC 350。圖3進(jìn)一步指示射頻(RF)收發(fā)器368可耦合到多核CPU 324。RF開關(guān)370可耦合到RF收發(fā)器368和RF天線372。如圖3所示,小鍵盤374可耦合到多核CPU 324。并且,具有麥克風(fēng)的單聲道耳機(jī)376可耦合到多核CPU 324。此外,振動(dòng)器裝置378可耦合到多核CPU 324。圖3還展示電源380可耦合到芯片上系統(tǒng)322。在特定方面中,電源380為直流(DC)電源,其將功率提供到P⑶320的需要功率的各個(gè)組件。此外,在特定方面中,電源為可再充電DC電池或DC電源,其從連接到AC電源的交流(AC)/DC變換器導(dǎo)出。圖3進(jìn)一步指示P⑶320還可包含可用于接入數(shù)據(jù)網(wǎng)絡(luò)(例如,局域網(wǎng)、個(gè)域網(wǎng),或任何其它網(wǎng)絡(luò))的網(wǎng)卡388。網(wǎng)卡388可為藍(lán)牙網(wǎng)卡、WiFi網(wǎng)卡、個(gè)域網(wǎng)(PAN)網(wǎng)卡、個(gè)域網(wǎng)超低功率技術(shù)(PeANUT)網(wǎng)卡,或此項(xiàng)技術(shù)中眾所周知的任何其它網(wǎng)卡。此外,網(wǎng)卡388可并入到芯片中,即網(wǎng)卡388可為芯片中的一體組件(full solution),且可并非單獨(dú)的網(wǎng)卡 388。如圖3中所描繪,觸摸屏顯示器332、視頻端口 338、USB端口 342、相機(jī)348、第一立體聲揚(yáng)聲器354、第二立體聲揚(yáng)聲器356、麥克風(fēng)360、FM天線364、立體聲頭戴式耳機(jī)366、RF開關(guān)370、RF天線372、小鍵盤374、單聲道耳機(jī)376、振動(dòng)器378和電源380在芯片上系統(tǒng)322外部。在特定方面中,本文描述的方法步驟中的一者或一者以上可作為計(jì)算機(jī)程序指令而存儲(chǔ)在存儲(chǔ)器344中。這些指令可由多核CPU 324執(zhí)行以便執(zhí)行本文描述的方法。此夕卜,多核CPU 324、存儲(chǔ)器344或其組合可充當(dāng)用于執(zhí)行本文描述的方法步驟中的一者或一者以上以便基于工作負(fù)載的類型在中央處理單元內(nèi)執(zhí)行動(dòng)態(tài)時(shí)鐘和電壓切換算法的裝置。參看圖4,展示處理系統(tǒng),且其一般表示為400。在特定方面中,處理系統(tǒng)400可并入到上文結(jié)合圖3描述的P⑶320中。如圖所示,處理系統(tǒng)400可包含多核中央處理單元(CPU) 402和連接到多核CPU 402的存儲(chǔ)器404。多核CPU 402可包含第零核410、第一核412和第N核414。第零核410可包含在其上執(zhí)行的第零動(dòng)態(tài)時(shí)鐘和電壓縮放(DCVS)算法416。第一核412可包含在其上執(zhí)行的第一 DCVS算法417。此外,第N核414可包含在其上執(zhí)行的第N DCVS算法418。在特定方面中,每一 DCVS算法416、417、418可在相應(yīng)核412、414、416上獨(dú)立地執(zhí)行。此外,如所說(shuō)明,存儲(chǔ)器404可包含存儲(chǔ)于其上的操作系統(tǒng)420。操作系統(tǒng)420可包含調(diào)度器422,且調(diào)度器422可包含第一運(yùn)行隊(duì)列424、第二運(yùn)行隊(duì)列426和第N運(yùn)行隊(duì)列428。存儲(chǔ)器404還可包含存儲(chǔ)于其上的 第一應(yīng)用程序430、第二應(yīng)用程序432和第N應(yīng)用程序434。在特定方面中,應(yīng)用程序430、432、434可將一個(gè)或一個(gè)以上任務(wù)436發(fā)送到操作系統(tǒng)420以在多核CPU 402內(nèi)的核410、412、414處進(jìn)行處理。任務(wù)436可作為單獨(dú)任務(wù)、線程或其組合而被處理或執(zhí)行。此外,調(diào)度器422可調(diào)度任務(wù)、線程或其組合以在多核CPU402內(nèi)執(zhí)行。另外,調(diào)度器422可將任務(wù)、線程或其組合置于運(yùn)行隊(duì)列424、426、428中。核410、412、414可例如通過(guò)操作系統(tǒng)420如所指示從運(yùn)行隊(duì)列424、426、428檢索任務(wù)、線程或其組合以在核410、412、414處處理或執(zhí)行那些任務(wù)和線程。圖4還展示存儲(chǔ)器404可包含存儲(chǔ)于其上的控制器440。控制器440可連接到操作系統(tǒng)420和多核CPU 402。特定來(lái)說(shuō),并行性監(jiān)視器440可連接到操作系統(tǒng)420內(nèi)的調(diào)度器422。如本文所描述,控制器440可監(jiān)視核410、412、414上的工作負(fù)載,且控制器440可在其相應(yīng)核412、414、416上執(zhí)行或致使執(zhí)行DCVS算法416、417、418。在特定方面中,控制器440可為軟件程序。然而,在替代方面中,控制器440可為存儲(chǔ)器404外部的硬件控制器。在任一情況下,控制器440、存儲(chǔ)器404、核410、412、414或其任何組合可充當(dāng)用于執(zhí)行本文描述的方法步驟中的一者或一者以上以便基于工作負(fù)載的類型在中央處理單元內(nèi)執(zhí)行動(dòng)態(tài)時(shí)鐘和電壓切換算法的裝置。參看圖5,其展示執(zhí)行動(dòng)態(tài)時(shí)鐘和電壓縮放(DCVS)算法的方法的第一方面,且其一般表示為500。方法500用do回路在框502處開始,其中當(dāng)裝置通電時(shí),可執(zhí)行隨后的步驟。在框504處,控制器可監(jiān)視CPU活動(dòng)。此活動(dòng)可為單核CPU、多核CPU、多個(gè)單核CPU、多個(gè)多核CPU或其組合的活動(dòng)。此外,控制器可為軟件控制器、硬件控制器或其組合。在決策506處,控制器可確定是否添加了工作負(fù)載。工作負(fù)載可為視頻應(yīng)用、音頻應(yīng)用、電子郵件應(yīng)用、無(wú)線網(wǎng)絡(luò)應(yīng)用、蜂窩式網(wǎng)絡(luò)應(yīng)用、短消息服務(wù)(SMS)應(yīng)用、通信應(yīng)用、安全應(yīng)用、日歷應(yīng)用、即時(shí)消息收發(fā)應(yīng)用、照相機(jī)應(yīng)用、全球定位系統(tǒng)(GPS)應(yīng)用、瀏覽器應(yīng)用、記事簿應(yīng)用、時(shí)鐘應(yīng)用、游戲應(yīng)用、計(jì)算器應(yīng)用、金融應(yīng)用、密碼管理器應(yīng)用、幫助應(yīng)用、電子商務(wù)應(yīng)用、軟件遞送應(yīng)用、搜索應(yīng)用、選項(xiàng)應(yīng)用、設(shè)置應(yīng)用、電話應(yīng)用、連接管理應(yīng)用、安全應(yīng)用,任何其它應(yīng)用,或其組合。在特定方面中,如果在決策506處未添加工作負(fù)載,那么方法500可返回到框504,且方法500可如本文所描述而繼續(xù)。否則,在決策506處,如果添加了工作負(fù)載,那么方法500可繼續(xù)到?jīng)Q策508,且控制器可確定所述工作負(fù)載是否為特殊工作負(fù)載,即可保證通過(guò)DCVS算法進(jìn)行不同處理的工作負(fù)載類型。所述特殊工作負(fù)載可為脈沖工作負(fù)載、經(jīng)注冊(cè)工作負(fù)載、等時(shí)工作負(fù)載、脈沖控制工作負(fù)載、盡力服務(wù)(best effort)工作負(fù)載、經(jīng)調(diào)度工作負(fù)載,或其組合??刂破骺苫趶墓ぷ髫?fù)載接收的輸入確定所述工作負(fù)載是否為特殊工作負(fù)載。在決策508處,如果所述工作負(fù)載并非特殊的,那么方法500可進(jìn)行到框510,且控制器可執(zhí)行未更改的DCVS算法。隨后,方法500可移動(dòng)到?jīng)Q策512,且控制器可確定裝置是否被斷電。如果裝置未被斷電,即裝置保持開啟,那么方法500可返回到框504且方法500可如本文所描述而繼續(xù)。否則,如果裝置被斷電,那么方法500可結(jié)束。返回到?jīng)Q策508,如果所述工作負(fù)載為特殊工作負(fù)載,那么方法500可繼續(xù)到框513,且控制器可接收對(duì)于所述特殊工作負(fù)載的注冊(cè)。在框514處,控制器可將唯一識(shí)別符指派給所述特殊工作負(fù)載。接著,在決策516處,控制器可確定DCVS解是否與工作負(fù)載相關(guān)聯(lián),即對(duì)DCVS算法的修改或更改是否與工作負(fù)載相關(guān)聯(lián)。所述工作負(fù)載可指示與工作負(fù)載相關(guān)聯(lián)的類型和與工作負(fù)載相關(guān)聯(lián)的解。 如果DCVS解與特殊工作負(fù)載相關(guān)聯(lián),那么方法500可繼續(xù)到框518,且控制器可基于與特殊工作負(fù)載相關(guān)聯(lián)的解而自動(dòng)重新調(diào)諧DCVS算法。接下來(lái),在框520處,控制器可執(zhí)行經(jīng)重新調(diào)諧的DCVS算法。方法500可接著移動(dòng)到?jīng)Q策512,且方法500可如本文所描述而繼續(xù)。返回到?jīng)Q策516,如果不存在與特殊工作負(fù)載相關(guān)聯(lián)的DCVS解,那么方法500可繼續(xù)到?jīng)Q策522,且控制器可確定是否創(chuàng)建新的解。舉例來(lái)說(shuō),控制器可詢問(wèn)工作負(fù)載以確定所述工作負(fù)載是否具有預(yù)定解。如果是,那么控制器可實(shí)施所述解?;蛘?,控制器可詢問(wèn)工作負(fù)載以獲得特定工作負(fù)載要求,且控制器可基于工作負(fù)載的要求創(chuàng)建針對(duì)所述工作負(fù)載的新的解。工作負(fù)載要求例如可用百萬(wàn)指令/秒(MIPS)表達(dá)。在另一方面中,工作負(fù)載要求可表達(dá)為頻率,例如千赫值(kHz)、兆赫(MHz)值、千兆赫(GHz)值等。在又一方面中,工作負(fù)載要求可表達(dá)為數(shù)據(jù)傳遞速率,例如千位/秒(KB/S)、兆位/秒(MB/S)、千兆位/秒(GB/S),或其組合。工作負(fù)載要求可進(jìn)一步包含響應(yīng)度值。響應(yīng)度可為系統(tǒng)設(shè)定的變化速率。舉例來(lái)說(shuō),響應(yīng)度可為CPU頻率的變化速率、電壓的變化速率,或其組合。此外,響應(yīng)度可為如用毫秒表達(dá)的最大延遲、如所表達(dá)的頻率/毫秒(MHz/ms)的CPU轉(zhuǎn)換速率限制,或其組合。并且,工作負(fù)載要求可包含先前工作負(fù)載要求的任何組合。在決策522處,如果控制器不決定創(chuàng)建新的解,那么方法500可進(jìn)行到框510,且方法500可如本文所描述而繼續(xù)。否則,如果控制器確實(shí)決定創(chuàng)建新的解,那么方法500可移動(dòng)到框524,且控制器可例如基于從當(dāng)前工作負(fù)載接收的一個(gè)或一個(gè)以上工作負(fù)載要求而創(chuàng)建當(dāng)前工作負(fù)載的新的解。接下來(lái),在框526處,控制器可將新的解存儲(chǔ)在相關(guān)聯(lián)的表或數(shù)據(jù)庫(kù)中。所述解可結(jié)合與工作負(fù)載相關(guān)聯(lián)的唯一識(shí)別符而存儲(chǔ)。方法500可接著移動(dòng)到框518,且方法500可如本文所描述而繼續(xù)。圖6說(shuō)明所描繪的針對(duì)中央處理單元的工作負(fù)載以及動(dòng)態(tài)時(shí)鐘和電壓縮放跟蹤負(fù)載與時(shí)間的第一曲線圖(一般表不為600)。如圖所不,曲線圖600包含工作負(fù)載指不符602和DCVS跟蹤負(fù)載指示符604。如圖所示,工作負(fù)載指示符602可包含第一忙碌循環(huán)606和第二忙碌循環(huán)608。如果第一忙碌循環(huán)606和第二忙碌循環(huán)608中包含的工作負(fù)載的類型確定為特殊的且所述特殊工作負(fù)載具有使其免于執(zhí)行DCVS算法的與其相關(guān)聯(lián)的DCVS解,那么DCVS跟蹤負(fù)載指示符604可保持在第一忙碌循環(huán)606和第二忙碌循環(huán)608期間如圖所示相對(duì)平坦。如果所述工作負(fù)載不特殊或不具有與其相關(guān)聯(lián)的解,那么DCVS跟蹤負(fù)載指示符604可如虛線所指示跟蹤第一忙碌循環(huán)606和第二忙碌循環(huán)608。如圖6所示,可使用多個(gè)操作指示符610來(lái)觸發(fā)對(duì)特殊工作負(fù)載的特殊處理。操作指示符610可包含開始解、停止解或其組合。參看圖7,展示執(zhí)行動(dòng)態(tài)時(shí)鐘和電壓縮放(DCVS)算法的方法的第二方面,且其一般表示為700。方法700用do回路在框702處開始,其中當(dāng)裝置通電時(shí),可執(zhí)行隨后的步驟。在框704處,控制器可監(jiān)視CPU活動(dòng)。此活動(dòng)可為單核CPU、多核CPU、多個(gè)單核CPU、多個(gè)多核CPU或其組合的活動(dòng)。此外,控制器可為軟件控制器、硬件控制器或其組合。在決策708處,控制器可確定是否添加了工作負(fù)載。工作負(fù)載可為視頻應(yīng)用、音頻應(yīng)用、電子郵件應(yīng)用、無(wú)線網(wǎng)絡(luò)應(yīng)用、蜂窩式網(wǎng)絡(luò)應(yīng)用、短消息服務(wù)(SMS)應(yīng)用、通信應(yīng)用、安全應(yīng)用、日歷應(yīng)用、即時(shí)消息收發(fā)應(yīng)用、照相機(jī)應(yīng)用、全球定位系統(tǒng)(GPS)應(yīng)用、瀏覽器應(yīng) 用、記事簿應(yīng)用、時(shí)鐘應(yīng)用、游戲應(yīng)用、計(jì)算器應(yīng)用、金融應(yīng)用、密碼管理器應(yīng)用、幫助應(yīng)用、電子商務(wù)應(yīng)用、軟件遞送應(yīng)用、搜索應(yīng)用、選項(xiàng)應(yīng)用、設(shè)置應(yīng)用、電話應(yīng)用、連接管理應(yīng)用、安全應(yīng)用,任何其它應(yīng)用,或其組合。在特定方面中,如果在決策706處未添加工作負(fù)載,那么方法700可返回到框704,且方法700可如本文所描述而繼續(xù)。否則,在決策706處,如果添加了工作負(fù)載,那么方法700可繼續(xù)到?jīng)Q策708,且控制器可確定所述工作負(fù)載是否為脈沖工作負(fù)載。脈沖工作負(fù)載可為鍵按壓事件、觸摸屏事件、另一脈沖型事件,或其組合。此外,脈沖工作負(fù)載可具有眾所周知的開始點(diǎn),但不具有眾所周知的結(jié)束,且不具有眾所周知的負(fù)載。DCVS算法的響應(yīng)可取決于每一脈沖工作負(fù)載的細(xì)節(jié)。舉例來(lái)說(shuō),DCVS可通過(guò)跳到完全性能而響應(yīng)于小鍵盤事件,而觸摸屏事件可能不需要完全性能響應(yīng)。在決策708處,如果所述工作負(fù)載并非脈沖工作負(fù)載,那么方法700可移動(dòng)到框710,且控制器可執(zhí)行標(biāo)準(zhǔn)(B卩,未更改的)DCVS算法。隨后,方法700可返回到框704,且方法700可如本文所描述而繼續(xù)。返回到?jīng)Q策708,如果所添加的工作負(fù)載為脈沖工作負(fù)載,那么方法700可進(jìn)行到框712,且控制器可指派與所添加的工作負(fù)載相關(guān)聯(lián)的唯一識(shí)別符。接下來(lái),在決策714處,控制器可確定是否存在與工作負(fù)載相關(guān)聯(lián)的CPU頻率??梢罁?jù)與工作負(fù)載相關(guān)聯(lián)的歷史值確定CPU頻率。歷史值可存儲(chǔ)在與工作負(fù)載相關(guān)聯(lián)的控制器中。如果存在與工作負(fù)載相關(guān)聯(lián)的CPU頻率,那么方法700可繼續(xù)到框716,且控制器可將新的工作負(fù)載與任何同時(shí)工作負(fù)載(例如,經(jīng)注冊(cè)和未經(jīng)注冊(cè))累計(jì)。舉例來(lái)說(shuō),如果存在與脈沖相關(guān)聯(lián)的100MIPS的負(fù)載和50MIPS的另一負(fù)載,那么控制器將跳到150MIPS。接著,在框717處,控制器可跳到累計(jì)的CPU頻率。隨后,在框718處,控制器可從當(dāng)前CPU頻率執(zhí)行DCVS算法。移動(dòng)到?jīng)Q策720,控制器可確定裝置是否被斷電。如果裝置未被斷電,那么方法700可返回到框704且方法700可如本文所描述而繼續(xù)。否則,在決策720處,如果裝置被斷電,那么方法700可結(jié)束。返回到?jīng)Q策714,如果控制器未發(fā)現(xiàn)數(shù)據(jù)庫(kù)中的與所添加的工作負(fù)載相關(guān)聯(lián)的CPU頻率,那么方法700可移動(dòng)到框722。在框722處,控制器可跳到最大CPU頻率。接下來(lái),在框724處,控制器可從最大頻率執(zhí)行DCVS算法,且控制器可使用DCVS算法步降CPU頻率直到發(fā)現(xiàn)正確且適當(dāng)?shù)墓ぷ髫?fù)載的頻率值為止。在框726處,控制器可存儲(chǔ)所述頻率。方法700可接著移動(dòng)到?jīng)Q策720,且方法700可如本文所描述而繼續(xù)。圖8說(shuō)明所描繪的針對(duì)中央處理單元的工作負(fù)載以及DCVS響應(yīng)與時(shí)間的第二曲線圖(一般表示為800)。如圖所示,曲線圖800可包含工作負(fù)載指示符802和DCVS響應(yīng)指示符804。如圖所示,工作負(fù)載指示符802可包含以脈沖事件開始的忙碌循環(huán)806。DCVS響應(yīng)指示符804可包含緊密跟蹤忙碌循環(huán)的DCVS響應(yīng)808。DCVS響應(yīng)808可跳到與脈沖事件相關(guān)聯(lián)的已知頻率,或最大CPU頻率。隨后,DCVS響應(yīng)808可如圖8所示當(dāng)執(zhí)行DCVS算法時(shí)減小。圖9說(shuō)明所描繪的針對(duì)中央處理單元的工作負(fù)載以及DCVS響應(yīng)與時(shí)間的第三曲線圖(一般表示為900)。如圖所示,曲線圖900可包含工作負(fù)載指示符902和DCVS響應(yīng)指示符904。如圖所示,工作負(fù)載指示符902可包含第一忙碌循環(huán)906和第二忙碌循環(huán)908。每一忙碌循環(huán)906、908可用脈沖事件開始。 DCVS響應(yīng)指示符904可包含第一 DCVS響應(yīng)910和第二 DCVS響應(yīng)912。第一 DCVS響應(yīng)910是不使用與工作負(fù)載相關(guān)聯(lián)的歷史信息的響應(yīng)。如圖所示,第一 DCVS響應(yīng)910跳到最大CPU頻率。隨后,第一 DCVS響應(yīng)910可當(dāng)執(zhí)行DCVS算法時(shí)減小。第二 DCVS響應(yīng)912是利用與工作負(fù)載相關(guān)聯(lián)的歷史信息的響應(yīng)。如圖所示,第二DCVS響應(yīng)912跳到滿足或稍許超出先前與工作負(fù)載相關(guān)聯(lián)的需求的CPU頻率。隨后,第二DCVS響應(yīng)912可當(dāng)執(zhí)行DCVS算法時(shí)減小。如圖所示從DCVS問(wèn)題空間移除高響應(yīng)度事件允許低響應(yīng)度操作期間的較低功率,同時(shí)提供針對(duì)高響應(yīng)度操作的較好性能且實(shí)現(xiàn)針對(duì)那些相同操作的功率節(jié)省。在特定方面中,脈沖密度可用作工作負(fù)載指示符。舉例來(lái)說(shuō),使脈沖緊密在一起可抑制DCVS響應(yīng),因?yàn)镈CVS可忽略充分緊密在一起發(fā)生的來(lái)自單一來(lái)源的脈沖?;蛘?,具有密集脈沖系列可暗示較大工作負(fù)載且可強(qiáng)化DCVS。在特定方面中,緊密度可為工作負(fù)載特定的。參看圖10,展示執(zhí)行動(dòng)態(tài)時(shí)鐘和電壓縮放(DCVS)算法的方法的第三方面,且其一般表示為1000。方法1000用do回路在框1002處開始,其中當(dāng)裝置通電時(shí),可執(zhí)行隨后的步驟。在框1004處,控制器可監(jiān)視CPU活動(dòng)。此活動(dòng)可為單核CPU、多核CPU、多個(gè)單核CPU、多個(gè)多核CPU或其組合的活動(dòng)。此外,控制器可為軟件控制器、硬件控制器或其組合。在決策1008處,控制器可確定是否添加了工作負(fù)載。工作負(fù)載可為視頻應(yīng)用、音頻應(yīng)用、電子郵件應(yīng)用、無(wú)線網(wǎng)絡(luò)應(yīng)用、蜂窩式網(wǎng)絡(luò)應(yīng)用、短消息服務(wù)(SMS)應(yīng)用、通信應(yīng)用、安全應(yīng)用、日歷應(yīng)用、即時(shí)消息收發(fā)應(yīng)用、照相機(jī)應(yīng)用、全球定位系統(tǒng)(GPS)應(yīng)用、瀏覽器應(yīng)用、記事簿應(yīng)用、時(shí)鐘應(yīng)用、游戲應(yīng)用、計(jì)算器應(yīng)用、金融應(yīng)用、密碼管理器應(yīng)用、幫助應(yīng)用、電子商務(wù)應(yīng)用、軟件遞送應(yīng)用、搜索應(yīng)用、選項(xiàng)應(yīng)用、設(shè)置應(yīng)用、電話應(yīng)用、連接管理應(yīng)用、安全應(yīng)用,任何其它應(yīng)用,或其組合。在特定方面中,如果在決策1006處未添加工作負(fù)載,那么方法1000可返回到框1004,且方法1000可如本文所描述而繼續(xù)。否則,在決策1006處,如果添加了工作負(fù)載,那么方法1000可繼續(xù)到?jīng)Q策1008,且控制器可確定是否接收到針對(duì)所述工作負(fù)載的最小CPU要求,即所述工作負(fù)載是否為具有特定要求的經(jīng)注冊(cè)工作負(fù)載。如果未接收到最小CPU要求,那么方法1000可進(jìn)行到框1010,且控制器可執(zhí)行或致使執(zhí)行標(biāo)準(zhǔn)DCVS算法。隨后,方法1000可移動(dòng)到?jīng)Q策1012。在決策1012處,控制器可確定裝置是否被斷電。如果裝置未被斷電,那么方法1000可返回到框1004且方法1000可如本文所描述而繼續(xù)。返回到1008,如果從工作負(fù)載接收到最小CPU要求,那么方法1000可繼續(xù)到框1014。在框1014處,控制器可跳到從工作負(fù)載接收到的最小CPU要求。接下來(lái),在框1016處,控制器可致使DCVS不針對(duì)工作負(fù)載執(zhí)行。換句話說(shuō),控制器可使所添加的工作負(fù)載免于針對(duì)工作負(fù)載執(zhí)行DCVS算法。接著,方法1000可繼續(xù)到?jīng)Q策1012,且如本文所描述而繼續(xù)。圖11說(shuō)明所描繪的針對(duì)中央處理單元的工作負(fù)載、DCVS響應(yīng)以及CPU響應(yīng)與時(shí)間的第四曲線圖(一般表示為1100)。如圖所示,曲線圖1100可包含工作負(fù)載指示符1102、DCVS響應(yīng)指示符1104和CPU響應(yīng)指示符1106。如圖所示,工作負(fù)載指示符1102可包含忙碌循環(huán)1108。CPU響應(yīng)指示符1106展示CPU可響應(yīng)于對(duì)于最小性能需求的請(qǐng)求。DCVS響應(yīng)指示符1104展示DCVS算法可忽略工作負(fù)載。舉例來(lái)說(shuō),如果工作負(fù)載、任務(wù)或事件請(qǐng)求一百(IOO)MIPS的處理且DCVS算法同 時(shí)見(jiàn)證CPU負(fù)載增加一百(100)MIPS,那么DCVS算法可推斷不存在未請(qǐng)求的任務(wù)的改變。這可使DCVS算法能夠避免CPU使用中的錯(cuò)誤峰值。在此情況下,CPU響應(yīng)可跟蹤性能關(guān)鍵前導(dǎo)區(qū)和功率關(guān)鍵拖尾區(qū)上的工作負(fù)載而不使DCVS響應(yīng)于所述工作負(fù)載。圖12說(shuō)明所描繪的中央處理單元的工作負(fù)載、DCVS響應(yīng)以及CPU響應(yīng)與時(shí)間的第五曲線圖(一般表示為1200)。如圖所示,曲線圖1200可包含工作負(fù)載指示符1202、DCVS響應(yīng)指示符1204和CPU指示符1206。如圖所示,工作負(fù)載指示符1202可包含經(jīng)注冊(cè)工作負(fù)載1208和未經(jīng)注冊(cè)工作負(fù)載1210。當(dāng)經(jīng)注冊(cè)工作負(fù)載1208發(fā)生時(shí),CPU指示符1206展示CPU可具有第一 CPU響應(yīng)1212,而DCVS指示符1204展示DCVS算法不具有響應(yīng)。當(dāng)未經(jīng)注冊(cè)工作負(fù)載1210發(fā)生時(shí),CPU指示符1206展示第二 CPU響應(yīng)1214且DCVS指示符1204展示DCVS響應(yīng)1216。由于DCVS算法可被告知經(jīng)注冊(cè)工作負(fù)載1208的要求,所以DCVS算法可跟蹤未經(jīng)注冊(cè)工作負(fù)載1210而不響應(yīng)于經(jīng)注冊(cè)工作負(fù)載1208所引起的任何改變。參看圖13,其展示執(zhí)行動(dòng)態(tài)時(shí)鐘和電壓縮放(DCVS)算法的方法的第一方面,且其一般表示為1300。方法1300用do回路在框1302處開始,其中當(dāng)裝置通電時(shí),可執(zhí)行隨后的步驟。在框1304處,控制器可監(jiān)視CPU活動(dòng)。此活動(dòng)可為單核CPU、多核CPU、多個(gè)單核CPU、多個(gè)多核CPU或其組合的活動(dòng)。此外,控制器可為軟件控制器、硬件控制器或其組合。在決策1308處,控制器可確定是否添加了工作負(fù)載。工作負(fù)載可為視頻應(yīng)用、音頻應(yīng)用、電子郵件應(yīng)用、無(wú)線網(wǎng)絡(luò)應(yīng)用、蜂窩式網(wǎng)絡(luò)應(yīng)用、短消息服務(wù)(SMS)應(yīng)用、通信應(yīng)用、安全應(yīng)用、日歷應(yīng)用、即時(shí)消息收發(fā)應(yīng)用、照相機(jī)應(yīng)用、全球定位系統(tǒng)(GPS)應(yīng)用、瀏覽器應(yīng)用、記事簿應(yīng)用、時(shí)鐘應(yīng)用、游戲應(yīng)用、計(jì)算器應(yīng)用、金融應(yīng)用、密碼管理器應(yīng)用、幫助應(yīng)用、電子商務(wù)應(yīng)用、軟件遞送應(yīng)用、搜索應(yīng)用、選項(xiàng)應(yīng)用、設(shè)置應(yīng)用、電話應(yīng)用、連接管理應(yīng)用、安全應(yīng)用,任何其它應(yīng)用,或其組合。在特定方面中,如果在決策1306處未添加工作負(fù)載,那么方法1300可返回到框1304,且方法1300可如本文所描述而繼續(xù)。否則,在決策1306處,如果添加了工作負(fù)載,那么方法1300可繼續(xù)到?jīng)Q策1307,且控制器可確定所述工作負(fù)載是否為等時(shí)工作負(fù)載。等時(shí)工作負(fù)載可為以大體規(guī)則的持續(xù)時(shí)間發(fā)生的工作負(fù)載?;蛘?,等時(shí)工作負(fù)載可為以大體規(guī)則的持續(xù)時(shí)間以大體規(guī)則的間隔發(fā)生的工作負(fù)載。
如果所述工作負(fù)載不是等時(shí)的,那么方法1300可返回到框1304,且方法1300可如本文所描述而繼續(xù)。如果所述工作負(fù)載是等時(shí)的,那么方法1300可進(jìn)行到框1308。在框1308處,控制器可接收工作間隔已開始的指示。此外,在框1310處,控制器可接收來(lái)自工作負(fù)載的所建議CPU設(shè)定。接下來(lái),在框1312處,控制器可接收工作完成的截止時(shí)間。移動(dòng)到框1314,控制器可確定歷史設(shè)定是否可用于所述工作負(fù)載。如果是,那么方法1300可進(jìn)行到框1316,且控制器可基于截止時(shí)間、所建議CPU設(shè)定和歷史設(shè)定確定例如頻率、電壓等CPU設(shè)定。接下來(lái),在框1318處,在工作終止時(shí),控制器存儲(chǔ)完成工作所需的時(shí)間長(zhǎng)度和頻率。此可允許控制器適應(yīng)所述工作負(fù)載且使用關(guān)于隨后工作負(fù)載請(qǐng)求的信息。換句話說(shuō),此允許控制器進(jìn)行自適應(yīng)性學(xué)習(xí)。接著,方法1300可移動(dòng)到?jīng)Q策1320,且控 制器可確定裝置是否被斷電。如果裝置未被斷電,那么方法1300可返回到框1304且方法400可如本文所描述而繼續(xù)。否則,如果裝置被斷電,那么方法1300可結(jié)束。返回到?jīng)Q策1314,如果控制器不具有針對(duì)工作負(fù)載的歷史設(shè)定,那么方法1300可進(jìn)行到框1322且控制器可基于截止時(shí)間和所建議CPU設(shè)定確定一個(gè)或一個(gè)以上CPU設(shè)定。隨后,方法1300可進(jìn)行到框1318且方法1300可如本文所描述而繼續(xù)。如果特定使用情況下的工作很大程度上可在間隔間重復(fù),那么可使用來(lái)自先前工作間隔的數(shù)據(jù)來(lái)預(yù)測(cè)下一間隔中將必需的工作量。為了通知?jiǎng)討B(tài)資源管理器(例如,控制器)其要求,所述使用情況指示工作間隔已開始連同工作需要完成時(shí)的截止時(shí)間。當(dāng)工作實(shí)際完成時(shí),所述使用情況指示工作已完成。在了解工作多久必須完成與工作實(shí)際完成花費(fèi)多久的情況下,可找到將功率更佳且仍在截止時(shí)間之前完成處理的替代資源設(shè)定。對(duì)于隨后的請(qǐng)求,資源接收相同信息,但可使用過(guò)去的歷史以便確定功率更佳且仍在截止時(shí)間之前完成工作的資源設(shè)定。存在資源管理器可針對(duì)每一使用情況保存的一系列統(tǒng)計(jì)數(shù)據(jù)。這些統(tǒng)計(jì)數(shù)據(jù)包含每間隔的平均工作和間隔間的工作變化。這些統(tǒng)計(jì)數(shù)據(jù)可依據(jù)請(qǐng)求自適應(yīng)地確定,經(jīng)由基準(zhǔn)播種,或固定為常數(shù)。還存在可保存的關(guān)于資源的一些統(tǒng)計(jì)數(shù)據(jù),其包含每資源設(shè)定執(zhí)行的工作量和可能每資源設(shè)定的所述工作的可變性。為正確地起作用,將來(lái)請(qǐng)求可具有與先前請(qǐng)求類似的工作要求,存在此已知為錯(cuò)誤的情形(比如,正解碼的視頻從480i改變?yōu)镮OSOp-每一幀現(xiàn)具有完全不同的工作量)??商峁┮粰C(jī)制以允許使用情況指示新的請(qǐng)求組成新的應(yīng)用且應(yīng)丟棄任何先前學(xué)習(xí)的統(tǒng)計(jì)數(shù)據(jù)。可允許所述使用情況向資源管理器提供提示,如圖14和圖15中所示。此提示是工作處理感覺(jué)足以滿足其需求的水平,所述提示可被動(dòng)態(tài)資源管理器忽略??稍试S所述使用情況向資源管理器提供凈空要求,此凈空規(guī)格是在調(diào)整資源設(shè)定時(shí)資源必須維持的處理量。所述凈空或者可經(jīng)由工作負(fù)載變化來(lái)導(dǎo)出。利用指示符,目標(biāo)可獨(dú)立于所述使用情況針對(duì)功率消耗而優(yōu)化-即所述使用情況實(shí)施方案獨(dú)立于功率優(yōu)化算法甚至可能獨(dú)立于目標(biāo)而保持相同。通常的初始實(shí)施方案可包含在最大值下執(zhí)行資源,從而保證性能。隨后,經(jīng)由離線優(yōu)化或自適應(yīng)確定的統(tǒng)計(jì)數(shù)據(jù),資源設(shè)定可改變?yōu)楣β矢训脑O(shè)定,而不必修改使用情況實(shí)施方案。在本文描述的方法的每一者中,代替于試圖使動(dòng)態(tài)資源管理器(即,控制器)成為完全通用的,可向動(dòng)態(tài)資源管理器直接告知任務(wù)要求。此可允許動(dòng)態(tài)資源管理器作出較好資源管理決策??勺R(shí)別從告知?jiǎng)討B(tài)資源管理器其性能要求而受益的使用情況或工作負(fù)載,且可使所述要求正式化。此外,到動(dòng)態(tài)資源管理器的接口可擴(kuò)展以集成來(lái)自工作負(fù)載的信肩、O到動(dòng)態(tài)管理的資源的接口可包含對(duì)一系列共同工作模型(例如,所需、等時(shí)、脈沖等)的支持。所有共同工作模型可置于庫(kù)中且可或可不被任何特定資源支持,這取決于資源創(chuàng)作者的自行決定。另外,此可允許資源創(chuàng)作者界定其自身的可能定制的工作模型且還允許客戶端發(fā)布這些請(qǐng)求。這些定制的工作模型可用于告知資源有效客戶端需求且使DCVS算法的所需一般性最小化并增加優(yōu)化機(jī)會(huì)。在特定方面中,額外工作模型可包含脈沖控制的工作負(fù)載,即在某一水平開始且以給定時(shí)間間隔自動(dòng)停止的工作負(fù)載。此外,所述工作模型可包含盡力服務(wù)工作負(fù)載,其可包含存在可執(zhí)行但并非性能關(guān)鍵而是可任意延遲的工作的提示。并且,工作模型可包含經(jīng)調(diào)度工作負(fù)載,所述經(jīng)調(diào)度工作負(fù)載可包含在將來(lái)的經(jīng)界定點(diǎn)將需要某一工作量的通知。
本文描述的方法可允許DCVS算法問(wèn)題空間任意減小,且特定使用情況任意優(yōu)化,而不會(huì)影響其它使用情況或其它資源。本文描述的方法可進(jìn)一步包含到DCVS算法的額外輸入。舉例來(lái)說(shuō),這些額外輸入可包含閑置分布信號(hào)、中斷激發(fā)信號(hào)和計(jì)時(shí)器激發(fā)信號(hào)。此外,中斷和計(jì)時(shí)器的分布可用作到DCVS算法的額外輸入。通過(guò)包含這些輸入,DCVS算法可通過(guò)具有更增強(qiáng)的系統(tǒng)知識(shí)而更有效且高效地起作用。這些輸入可用于檢測(cè)模式(例如,音頻重放)且調(diào)整DCVS算法以產(chǎn)生針對(duì)所檢測(cè)情況的更佳的解。所述輸入還可用于檢測(cè)模式的變化,例如電話呼叫傳入、用戶事件,或甚至僅僅是用以緩沖音頻內(nèi)容的非易失性(NV)存儲(chǔ)器存取的檢測(cè)。此外,這些輸入可實(shí)現(xiàn)利用實(shí)質(zhì)上最小的客戶端交互來(lái)調(diào)諧DCVS算法。應(yīng)了解,本文描述的方法步驟無(wú)需一定以所描述的次序執(zhí)行。此外,例如“隨后”、“接著”、“接下來(lái)”等詞語(yǔ)不希望限制步驟的次序。這些詞語(yǔ)僅用于引導(dǎo)讀者通讀方法步驟的描述。此外,本文描述的方法描述為可在便攜式計(jì)算裝置(PCD)上執(zhí)行。PCD可為移動(dòng)電話裝置、便攜式數(shù)字助理裝置、智能本計(jì)算裝置、上網(wǎng)本計(jì)算裝置、膝上型計(jì)算裝置、桌上型計(jì)算裝置,或其組合。此外,本文描述的方法步驟可在單核處理器、多核處理器、多個(gè)單核處理器、多個(gè)多核處理器或其任何組合上執(zhí)行。并且,本文的方法可用于動(dòng)態(tài)地控制各種類型的處理器。舉例來(lái)說(shuō),本發(fā)明的方法可用于控制中央處理單元(CPU)、圖形處理單元(GPU)
坐寸ο在一個(gè)或一個(gè)以上示范性方面中,所描述的功能可用硬件、軟件、固件或其任何組合實(shí)施。如果用軟件實(shí)施,那么所述功能可作為一個(gè)或一個(gè)以上指令或代碼存儲(chǔ)在例如機(jī)器可讀媒體(即,計(jì)算機(jī)可讀媒體)等計(jì)算機(jī)程序產(chǎn)品上或經(jīng)由計(jì)算機(jī)程序產(chǎn)品傳輸。計(jì)算機(jī)可讀媒體包含計(jì)算機(jī)存儲(chǔ)媒體和通信媒體兩者,通信媒體包含促進(jìn)將計(jì)算機(jī)程序從一處傳送到另一處的任何媒體。存儲(chǔ)媒體可為可通過(guò)計(jì)算機(jī)存取的任何可用媒體。借助實(shí)例而非限制,此類計(jì)算機(jī)可讀媒體可包括RAM、ROM、EEPROM、CD-ROM或其它光盤存儲(chǔ)裝置、磁盤存儲(chǔ)裝置或其它磁性存儲(chǔ)裝置,或任何其它可用于載運(yùn)或存儲(chǔ)呈指令或數(shù)據(jù)結(jié)構(gòu)的形式的所需程序代碼且可通過(guò)計(jì)算機(jī)存取的媒體。并且,任何連接適當(dāng)?shù)乇环Q作計(jì)算機(jī)可讀媒體。舉例來(lái)說(shuō),如果使用同軸電纜、光纖電纜、雙絞線、數(shù)字訂戶線(DSL)或例如紅外線、無(wú)線電和微波等無(wú)線技術(shù)從網(wǎng)站、服務(wù)器或其它遠(yuǎn)程源傳輸軟件,那么同軸電纜、光纖電纜、雙絞線、DSL或例如紅外線、無(wú)線電和微波等無(wú)線技術(shù)包含于媒體的定義中。如本文所使用的磁盤(Disk)與光盤(Disc)包含壓縮光盤(⑶)、激光光盤、光學(xué)光盤、數(shù)字多功能光盤(DVD)、軟性磁盤和藍(lán)光光盤,其中磁盤通常以磁性方式再現(xiàn)數(shù)據(jù),而光盤利用激光以光學(xué)方式再現(xiàn)數(shù)據(jù)。上述內(nèi)容的組合也應(yīng)包含于計(jì)算機(jī)可讀媒體的范圍內(nèi)。盡管已詳細(xì)說(shuō)明和描述選定方面,但將了解,可在不脫離如所附權(quán)利要求書界定的本發(fā)明的精神和范圍的情況下在其中 作出各種替代和更改。
權(quán)利要求
1.ー種在中央處理單元CPU中執(zhí)行動(dòng)態(tài)時(shí)鐘和電壓縮放DCVS算法的方法,所述方法包括 監(jiān)視CPU活動(dòng);以及 當(dāng)工作負(fù)載被添加到所述CPU活動(dòng)時(shí)確定所述工作負(fù)載是否指明為特殊工作負(fù)載。
2.根據(jù)權(quán)利要求I所述的方法,其中特殊工作負(fù)載包括脈沖工作負(fù)載、經(jīng)界定工作負(fù)載、等時(shí)工作負(fù)載、脈沖控制的工作負(fù)載、盡力服務(wù)工作負(fù)載、調(diào)度工作負(fù)載,或其組合。
3.根據(jù)權(quán)利要求I所述的方法,其進(jìn)ー步包括 在所述工作負(fù)載未指明為特殊工作負(fù)載的情況下執(zhí)行未更改的DCVS算法。
4.根據(jù)權(quán)利要求I所述的方法,其進(jìn)ー步包括 接收與所述工作負(fù)載相關(guān)聯(lián)的唯一識(shí)別符;以及 使用所述唯一識(shí)別符來(lái)捜索數(shù)據(jù)庫(kù)。
5.根據(jù)權(quán)利要求4所述的方法,其進(jìn)ー步包括 確定DCVS解是否與所述工作負(fù)載的所述唯一識(shí)別符相關(guān)聯(lián)。
6.根據(jù)權(quán)利要求5所述的方法,其進(jìn)ー步包括 基干與所述工作負(fù)載相關(guān)聯(lián)的所述DCVS解重新調(diào)諧所述DCVS算法。
7.根據(jù)權(quán)利要求6所述的方法,其進(jìn)ー步包括 執(zhí)行經(jīng)重新調(diào)諧的DCVS算法。
8.根據(jù)權(quán)利要求5所述的方法,其進(jìn)ー步包括 當(dāng)所述工作負(fù)載不包含DCVS解時(shí),確定是否針對(duì)所述工作負(fù)載創(chuàng)建新的DCVS解。
9.根據(jù)權(quán)利要求8所述的方法,其進(jìn)ー步包括 當(dāng)確定不創(chuàng)建新的DCVS解時(shí)執(zhí)行未更改的DCVS算法。
10.根據(jù)權(quán)利要求8所述的方法,其進(jìn)ー步包括 針對(duì)所述工作負(fù)載創(chuàng)建新的DCVS解;以及 結(jié)合與所述工作負(fù)載相關(guān)聯(lián)的所述唯一識(shí)別符而存儲(chǔ)所述新的DCVS解。
11.一種無(wú)線裝置,其包括 用于監(jiān)視CPU活動(dòng)的裝置;以及 用于當(dāng)工作負(fù)載被添加到所述CPU活動(dòng)時(shí)確定所述工作負(fù)載是否指明為特殊工作負(fù)載的裝置。
12.根據(jù)權(quán)利要求11所述的無(wú)線裝置,其中特殊工作負(fù)載包括脈沖工作負(fù)載、經(jīng)界定工作負(fù)載、等時(shí)工作負(fù)載、脈沖控制的工作負(fù)載、盡力服務(wù)工作負(fù)載、調(diào)度工作負(fù)載,或其組ムロ ο
13.根據(jù)權(quán)利要求11所述的無(wú)線裝置,其進(jìn)ー步包括 用于在所述工作負(fù)載未指明為特殊工作負(fù)載的情況下執(zhí)行未更改的DCVS算法的裝置。
14.根據(jù)權(quán)利要求11所述的無(wú)線裝置,其進(jìn)ー步包括 用于接收與所述工作負(fù)載相關(guān)聯(lián)的唯一識(shí)別符的裝置;以及 用于使用所述唯一識(shí)別符來(lái)捜索數(shù)據(jù)庫(kù)的裝置。
15.根據(jù)權(quán)利要求14所述的無(wú)線裝置,其進(jìn)ー步包括 用于確定DCVS解是否與所述工作負(fù)載的所述唯一識(shí)別符相關(guān)聯(lián)的裝置。
16.根據(jù)權(quán)利要求15所述的無(wú)線裝置,其進(jìn)ー步包括 用于基于與所述工作負(fù)載相關(guān)聯(lián)的所述DCVS解重新調(diào)諧所述DCVS算法的裝置。
17.根據(jù)權(quán)利要求16所述的無(wú)線裝置,其進(jìn)ー步包括 用于執(zhí)行經(jīng)重新調(diào)諧的DCVS算法的裝置。
18.根據(jù)權(quán)利要求15所述的無(wú)線裝置,其進(jìn)ー步包括 用于當(dāng)所述工作負(fù)載不包含DCVS解時(shí)確定是否針對(duì)所述工作負(fù)載創(chuàng)建新的DCVS解的裝置。
19.根據(jù)權(quán)利要求18所述的無(wú)線裝置,其進(jìn)ー步包括 用于當(dāng)確定不創(chuàng)建新的DCVS解時(shí)執(zhí)行未更改的DCVS算法的裝置。
20.根據(jù)權(quán)利要求18所述的無(wú)線裝置,其進(jìn)ー步包括 用于針對(duì)所述工作負(fù)載創(chuàng)建新的DCVS解的裝置;以及 用于結(jié)合與所述工作負(fù)載相關(guān)聯(lián)的所述唯一識(shí)別符而存儲(chǔ)所述新的DCVS解的裝置。
21.一種無(wú)線裝置,其包括 處理器,其中所述處理器可操作以 監(jiān)視CPU活動(dòng);以及 當(dāng)工作負(fù)載被添加到所述CPU活動(dòng)時(shí)確定所述工作負(fù)載是否指明為特殊工作負(fù)載。
22.根據(jù)權(quán)利要求21所述的無(wú)線裝置,其中特殊工作負(fù)載包括脈沖工作負(fù)載、經(jīng)界定工作負(fù)載、等時(shí)工作負(fù)載、脈沖控制的工作負(fù)載、盡力服務(wù)工作負(fù)載、調(diào)度工作負(fù)載,或其組ロ ο
23.根據(jù)權(quán)利要求21所述的無(wú)線裝置,其中所述處理器進(jìn)ー步可操作以 在所述工作負(fù)載未指明為特殊工作負(fù)載的情況下執(zhí)行未更改的DCVS算法。
24.根據(jù)權(quán)利要求21所述的無(wú)線裝置,其中所述處理器進(jìn)ー步可操作以 接收與所述工作負(fù)載相關(guān)聯(lián)的唯一識(shí)別符;以及 使用所述唯一識(shí)別符來(lái)捜索數(shù)據(jù)庫(kù)。
25.根據(jù)權(quán)利要求24所述的無(wú)線裝置,其中所述處理器進(jìn)ー步可操作以 確定DCVS解是否與所述工作負(fù)載的所述唯一識(shí)別符相關(guān)聯(lián)。
26.根據(jù)權(quán)利要求25所述的無(wú)線裝置,其中所述處理器進(jìn)ー步可操作以 基干與所述工作負(fù)載相關(guān)聯(lián)的所述DCVS解重新調(diào)諧所述DCVS算法。
27.根據(jù)權(quán)利要求26所述的無(wú)線裝置,其中所述處理器進(jìn)ー步可操作以 執(zhí)行經(jīng)重新調(diào)諧的DCVS算法。
28.根據(jù)權(quán)利要求25所述的無(wú)線裝置,其中所述處理器進(jìn)ー步可操作以 當(dāng)所述工作負(fù)載不包含DCVS解時(shí),確定是否針對(duì)所述工作負(fù)載創(chuàng)建新的DCVS解。
29.根據(jù)權(quán)利要求28所述的無(wú)線裝置,其中所述處理器進(jìn)ー步可操作以 當(dāng)確定不創(chuàng)建新的DCVS解時(shí)執(zhí)行未更改的DCVS算法。
30.根據(jù)權(quán)利要求28所述的無(wú)線裝置,其中所述處理器進(jìn)ー步可操作以 針對(duì)所述工作負(fù)載創(chuàng)建新的DCVS解;以及 結(jié)合與所述工作負(fù)載相關(guān)聯(lián)的所述唯一識(shí)別符而存儲(chǔ)所述新的DCVS解。
31.一種存儲(chǔ)器媒體,其包括 用于監(jiān)視CPU活動(dòng)的至少ー個(gè)指令;以及用于當(dāng)工作負(fù)載被添加到所述CPU活動(dòng)時(shí)確定所述工作負(fù)載是否指明為特殊工作負(fù)載的至少ー個(gè)指令。
32.根據(jù)權(quán)利要求31所述的存儲(chǔ)器媒體,其中特殊工作負(fù)載包括脈沖工作負(fù)載、經(jīng)界定工作負(fù)載、等時(shí)工作負(fù)載、脈沖控制的工作負(fù)載、盡力服務(wù)工作負(fù)載、調(diào)度工作負(fù)載,或其組合。
33.根據(jù)權(quán)利要求31所述的存儲(chǔ)器媒體,其進(jìn)ー步包括 用于在所述工作負(fù)載未指明為特殊工作負(fù)載的情況下執(zhí)行未更改的DCVS算法的至少ー個(gè)指令。
34.根據(jù)權(quán)利要求31所述的存儲(chǔ)器媒體,其進(jìn)ー步包括 用于接收與所述工作負(fù)載相關(guān)聯(lián)的唯一識(shí)別符的至少ー個(gè)指令;以及 用于使用所述唯一識(shí)別符來(lái)捜索數(shù)據(jù)庫(kù)的至少ー個(gè)指令。
35.根據(jù)權(quán)利要求34所述的存儲(chǔ)器媒體,其進(jìn)ー步包括 用于確定DCVS解是否與所述工作負(fù)載的所述唯一識(shí)別符相關(guān)聯(lián)的至少ー個(gè)指令。
36.根據(jù)權(quán)利要求35所述的存儲(chǔ)器媒體,其進(jìn)ー步包括 用于基于與所述工作負(fù)載相關(guān)聯(lián)的所述DCVS解重新調(diào)諧所述DCVS算法的至少ー個(gè)指令。
37.根據(jù)權(quán)利要求36所述的存儲(chǔ)器媒體,其進(jìn)ー步包括 用于執(zhí)行經(jīng)重新調(diào)諧的DCVS算法的至少ー個(gè)指令。
38.根據(jù)權(quán)利要求35所述的存儲(chǔ)器媒體,其進(jìn)ー步包括 用于當(dāng)所述工作負(fù)載不包含DCVS解時(shí)確定是否針對(duì)所述工作負(fù)載創(chuàng)建新的DCVS解的至少ー個(gè)指令。
39.根據(jù)權(quán)利要求38所述的存儲(chǔ)器媒體,其進(jìn)ー步包括 用于當(dāng)確定不創(chuàng)建新的DCVS解時(shí)執(zhí)行未更改的DCVS算法的至少ー個(gè)指令。
40.根據(jù)權(quán)利要求38所述的存儲(chǔ)器媒體,其進(jìn)ー步包括 用于針對(duì)所述工作負(fù)載創(chuàng)建新的DCVS解的至少ー個(gè)指令;以及 用于結(jié)合與所述工作負(fù)載相關(guān)聯(lián)的所述唯一識(shí)別符而存儲(chǔ)所述新的DCVS解的至少ー個(gè)指令。
全文摘要
本發(fā)明揭示一種在中央處理單元CPU中執(zhí)行動(dòng)態(tài)時(shí)鐘和電壓縮放DCVS算法的方法,且所述方法可包含監(jiān)視CPU活動(dòng),以及當(dāng)工作負(fù)載被添加到所述CPU活動(dòng)時(shí)確定所述工作負(fù)載是否指明為特殊工作負(fù)載。
文檔編號(hào)G06F1/32GK102687098SQ201180005279
公開日2012年9月19日 申請(qǐng)日期2011年1月10日 優(yōu)先權(quán)日2010年1月11日
發(fā)明者布萊恩·J·薩爾斯貝瑞, 諾曼·S·加爾加石 申請(qǐng)人:高通股份有限公司