用于片上多處理器系統(tǒng)中的空閑狀態(tài)優(yōu)化的系統(tǒng)和方法
【專利說明】
【背景技術(shù)】
[0001]便攜式計(jì)算設(shè)備(“pro”)正在成為人們?cè)趥€(gè)人和職業(yè)層面上的必需品。這些設(shè)備可以包括蜂窩電話、便攜式數(shù)字助理(“PDA”)、便攜式游戲控制臺(tái)、掌上計(jì)算機(jī)以及其它便攜式電子設(shè)備。市場(chǎng)上的大多數(shù)PCD包括多核處理器,取決于特定的使用情況,所述多核處理器可以以變化的頻率和活動(dòng)的內(nèi)核配置來操作。
[0002]POT的一個(gè)獨(dú)特的方面是其典型地不具有有源冷卻設(shè)備,例如風(fēng)扇(經(jīng)常可以在較大的計(jì)算設(shè)備(諸如,膝上型計(jì)算機(jī)和臺(tái)式計(jì)算機(jī))中發(fā)現(xiàn)它們)。從而,經(jīng)常通過各種熱管理技術(shù)的應(yīng)用來在POT中管理熱能生成,所述各種熱管理技術(shù)可以包括基于實(shí)時(shí)、或接近實(shí)時(shí)、工作負(fù)荷需求來在活動(dòng)處理狀態(tài)和空閑狀態(tài)之間轉(zhuǎn)變處理內(nèi)核。當(dāng)內(nèi)核不需要被用于處理工作負(fù)荷時(shí),通過將內(nèi)核從活動(dòng)處理狀態(tài)轉(zhuǎn)變到空閑狀態(tài)可以避免與活動(dòng)狀態(tài)相關(guān)聯(lián)的功耗。
[0003]但是,將內(nèi)核置于空閑狀態(tài)可能負(fù)面地影響PCD提供給其用戶的服務(wù)質(zhì)量(“QoS”)。例如,許多PCD使用情況生成“突發(fā)負(fù)荷”,并且如果內(nèi)核沒有處于準(zhǔn)備好快速地處理突發(fā)負(fù)荷的活動(dòng)狀態(tài),那么用戶體驗(yàn)將不可避免地收到損害。從而,如果目標(biāo)是省電,那么將內(nèi)核置于具有轉(zhuǎn)變回活動(dòng)狀態(tài)的高延時(shí)的空閑狀態(tài)可能是理想的,但是同時(shí),如果目標(biāo)是優(yōu)化在突發(fā)負(fù)荷期間的QoS,那么這是不理想的。
[0004]因此,本領(lǐng)域所需要的是用于鑒于PCD中總體功率預(yù)算來優(yōu)化內(nèi)核空閑狀態(tài)的選擇的方法和系統(tǒng),使得當(dāng)將內(nèi)核轉(zhuǎn)變回活動(dòng)狀態(tài)時(shí)最小化延時(shí)時(shí)間。
【發(fā)明內(nèi)容】
[0005]公開了用于在便攜式計(jì)算設(shè)備(“PCD”)中的空閑狀態(tài)優(yōu)化的方法和系統(tǒng)的各個(gè)實(shí)施例。用于PCD中的空閑狀態(tài)優(yōu)化的示例性方法包括確定用于PCD的功率預(yù)算。值得注意的是,因?yàn)镻CD的形狀因子不同,所以本領(lǐng)域普通技術(shù)人員將認(rèn)識(shí)到的是,可允許的或最大功率預(yù)算可以根據(jù)PCD的特定的形狀因子變化。其次,可以將針對(duì)所有處理內(nèi)核的總計(jì)功耗水平與所述功率預(yù)算比較,并且如果比所述功率預(yù)算小,那么可以將操作在空閑狀態(tài)中的內(nèi)核識(shí)別為有資格轉(zhuǎn)變到不同的空閑狀態(tài)。
[0006]如果將所述合格的內(nèi)核中的一個(gè)或多個(gè)合格的內(nèi)核從第一空閑狀態(tài)(例如,功率崩潰空閑狀態(tài))轉(zhuǎn)變到第二空閑狀態(tài)(例如,“等待中斷”空閑狀態(tài)),那么基于合格的內(nèi)核的操作溫度,可以確定對(duì)總計(jì)功耗的可能影響。如果將所述一個(gè)或多個(gè)內(nèi)核轉(zhuǎn)變到不同的空閑沒有將總計(jì)功耗增加到功率預(yù)算以上,那么可以轉(zhuǎn)變所述一個(gè)或多個(gè)內(nèi)核。通過這樣做,如果產(chǎn)生需求,那么可以減小與將所轉(zhuǎn)變的內(nèi)核帶出空閑狀態(tài)并且?guī)氲交顒?dòng)狀態(tài)相關(guān)聯(lián)的延時(shí)值。結(jié)果是可以改善用戶體驗(yàn)和QoS,因?yàn)榭梢愿玫胤胖梅駝t處于具有長延時(shí)時(shí)間的空閑狀態(tài)的空閑內(nèi)核,以快速地轉(zhuǎn)變到活動(dòng)狀態(tài)并且處理工作負(fù)荷。
【附圖說明】
[0007]在附圖中,除非另外指示,否則遍及各個(gè)視圖,相似的附圖標(biāo)記指代相似的部分。對(duì)于具有諸如“ 102A”或“ 102B”的字母字符標(biāo)記的附圖標(biāo)記,字母字符標(biāo)記可以區(qū)分出現(xiàn)在同一附圖中的兩個(gè)相似的部分或元素。當(dāng)旨在使附圖標(biāo)記涵蓋在所有附圖中具有相同附圖標(biāo)記的所有部分時(shí),可以省略附圖標(biāo)記的字母字符標(biāo)記。
[0008]圖1是示出了對(duì)于給定的空閑狀態(tài)和結(jié)溫度,與便攜式計(jì)算設(shè)備(“PCD”)的給定四核芯片集中的示例性內(nèi)核0、1、2和3相關(guān)聯(lián)的延時(shí)和泄漏速率的圖。
[0009]圖2是示出了用于多核PCD中的空閑狀態(tài)優(yōu)化的片上系統(tǒng)的實(shí)施例的功能性框圖。
[0010]圖3是用于實(shí)現(xiàn)用于空閑狀態(tài)優(yōu)化的方法和系統(tǒng)的、無線電話的形式的PCD的示例性、非限制性方面的功能性框圖。
[0011]圖4是示出了用于支持空閑狀態(tài)優(yōu)化的圖3的PCD的示例性軟件架構(gòu)的示意圖。
[0012]圖5是示出了用于圖3的PCD中的空閑狀態(tài)優(yōu)化的方法的實(shí)施例的邏輯流程圖。
【具體實(shí)施方式】
[0013]本文使用的詞語“示例性”意味著“作為例子、實(shí)例或說明”。本文中描述為“示例性”的任何方面不必被解釋為排它的、優(yōu)選于其它方面或者比其它方面有優(yōu)勢(shì)。
[0014]在本描述中,術(shù)語“應(yīng)用”還可以包括具有可執(zhí)行內(nèi)容(諸如:對(duì)象代碼、腳本、字節(jié)代碼、標(biāo)記語言文件以及補(bǔ)丁)的文件。另外,本文中所引用的“應(yīng)用”還可以包括本質(zhì)上不可執(zhí)行的文件(諸如可能需要被打開的文檔或需要被訪問的其它數(shù)據(jù)文件)。
[0015]如在本描述中使用的,術(shù)語“組件”、“數(shù)據(jù)庫”、“模塊”、“系統(tǒng)”、“熱能生成組件”、“處理組件”、“處理引擎”、“應(yīng)用處理器”等旨在指代計(jì)算機(jī)相關(guān)的實(shí)體,要么是硬件、固件、硬件和軟件的組合、軟件,要么是執(zhí)行中的軟件,并且表示提供功能以及執(zhí)行在本說明書中描述的過程或過程流中的某些步驟的示例性單元。例如,組件可以是,但不限于是:在處理器上運(yùn)行的過程、處理器、對(duì)象、可執(zhí)行文件、執(zhí)行的線程、程序和/或計(jì)算機(jī)。通過說明的方式,在計(jì)算設(shè)備運(yùn)行上的應(yīng)用和計(jì)算設(shè)備二者可以是組件。一個(gè)或多個(gè)組件可以存在于過程和/或執(zhí)行的線程中,并且組件可以位于一個(gè)計(jì)算機(jī)中和/或分布在兩個(gè)或更多計(jì)算機(jī)之間。此外,這些組件能夠從具有在其上存儲(chǔ)的各種數(shù)據(jù)結(jié)構(gòu)的各種計(jì)算機(jī)可讀介質(zhì)中執(zhí)行。組件可以諸如根據(jù)具有一個(gè)或多個(gè)數(shù)據(jù)分組(例如,來自與本地系統(tǒng)、分布式系統(tǒng)中的另一個(gè)組件進(jìn)行交互,和/或跨諸如互聯(lián)網(wǎng)的網(wǎng)絡(luò)通過信號(hào)的方式與其他系統(tǒng)進(jìn)行交互的一個(gè)組件的數(shù)據(jù))的信號(hào)通過本地和/或遠(yuǎn)程過程進(jìn)行通信。
[0016]在本描述中,術(shù)語“中央處理單元(“CPU”)”、“數(shù)字信號(hào)處理器(“DSP”)”、“芯片”和“芯片集”是可以存在于pro中的處理組件的非限制性示例,并且可以被可互換地使用,除非當(dāng)另外指示時(shí)。此外,如在本描述中區(qū)分的,CPU、DSP或芯片或芯片集可以由一個(gè)或多個(gè)本文中通常被稱為“內(nèi)核”的獨(dú)特的處理組件組成。
[0017]在本描述中,將要理解的是,可以與能夠生成或消散可以以“溫度”為單位來測(cè)量的能量的設(shè)備或組件相關(guān)聯(lián)地使用術(shù)語“熱”或“熱能”。從而,將進(jìn)一步理解的是,參照某個(gè)標(biāo)準(zhǔn)值的術(shù)語“溫度”預(yù)見可以指示“熱能”生成設(shè)備或組件的相對(duì)溫暖或熱缺乏的任何測(cè)量。例如,當(dāng)兩個(gè)組件處于“熱”平衡時(shí),兩個(gè)組件的“溫度”相同。
[0018]在本描述中,術(shù)語“工作負(fù)荷”、“過程負(fù)荷”以及“過程工作負(fù)荷”被可互換地使用,并且通常被引向與給定實(shí)施例中的給定處理組件相關(guān)聯(lián)、或者可以被分配給給定實(shí)施例中的給定處理組件的處理負(fù)擔(dān)或處理負(fù)擔(dān)百分比。相似地,術(shù)語“突發(fā)負(fù)荷”用于指示要求優(yōu)先于其它排隊(duì)的工作負(fù)荷的工作負(fù)荷,并且因此應(yīng)當(dāng)被立即處理以優(yōu)化用戶體驗(yàn)。突發(fā)負(fù)荷還可以表示不僅要求立即的處理,還要求相對(duì)高的處理容量的相對(duì)大的工作負(fù)荷。
[0019]進(jìn)一步限定上文所限定的,“處理組件”可以是,當(dāng)不限于是:中央處理單元、圖形處理單元、內(nèi)核、主內(nèi)核、子內(nèi)核、處理區(qū)域、硬件引擎等,或存在于便攜式計(jì)算設(shè)備中的集成電路中或在便攜式計(jì)算設(shè)備中的集成電路外部的任何組件。此外,從某種程度上說,術(shù)語“熱負(fù)荷”、“熱分布”、“熱簽名”、“熱處理負(fù)荷”等是可以在處理組件上運(yùn)行的工作負(fù)荷的指示,本領(lǐng)域普通技術(shù)人員將認(rèn)同本公開內(nèi)容中的這些“熱”術(shù)語的使用可以與處理負(fù)荷分布、工作負(fù)荷負(fù)擔(dān)以及功耗相關(guān)。
[0020]在本描述中,術(shù)語“熱減輕技術(shù)”、“熱策略”、“熱管理”以及“熱減輕測(cè)量”被可互換地使用。
[0021]在本描述中,術(shù)語“便攜式計(jì)算設(shè)備”(“PCD”)用于描述在有限容量電源(諸如電池)上操作的任何設(shè)備。盡管電池操作的PCD已經(jīng)被使用了幾十年,但是在可再充電電池方面的技術(shù)進(jìn)步結(jié)合第三代(“3G”)和第四代(“4G”)無線技術(shù)的到來實(shí)現(xiàn)了許多具有多種能力的PCD。因此,PCD可以是蜂窩電話、衛(wèi)星電話、尋呼機(jī)、PDA、智能電話、導(dǎo)航設(shè)備、平板計(jì)算機(jī)、智能本或閱讀器、媒體播放器、上述設(shè)備的組合、具有無線連接的膝上型計(jì)算機(jī)等等。
[0022]在本描述中,術(shù)語“延時(shí)”通常用于指代給定的處理組件從某個(gè)空閑狀態(tài)轉(zhuǎn)變到用于處理工作負(fù)荷(諸如突發(fā)工作負(fù)荷)的活動(dòng)狀態(tài)所花費(fèi)的時(shí)間。多個(gè)空閑狀態(tài)可以是可用于給定的示例性內(nèi)核的,并且可以基于針對(duì)每個(gè)空閑狀態(tài)的內(nèi)核的延時(shí)和泄漏功率來彼此區(qū)分。通常來說,與某個(gè)空閑狀態(tài)相關(guān)聯(lián)的延時(shí)越高,泄漏速率就越低(即,功耗就越低)。因此,如本領(lǐng)域普通技術(shù)人員將理解的是,當(dāng)要求PCD中的額外的處理能力時(shí),與可以提供更好的QoS的與尚泄漏速率相關(guān)聯(lián)的空閑狀態(tài)相比,與尚延時(shí)相關(guān)聯(lián)的空閑狀態(tài)可以提供更好的功率節(jié)省。
[0023]為了描述示例性實(shí)施例的方便,本描述描述了三個(gè)空閑狀態(tài),即:“等待中斷”(“WFI”)空閑狀態(tài)、保持空閑狀態(tài)和功率崩潰空閑狀態(tài)。即便如此,系統(tǒng)和方法的實(shí)施例不限于僅三個(gè)空閑狀態(tài)或空閑狀態(tài)的任意特定的組合。如本領(lǐng)域普通技術(shù)人員將理解的是,任意數(shù)量的空閑狀態(tài)可以在是可用的并且用在PCD中,每個(gè)這樣的狀態(tài)提供變化的延時(shí)水平和功率節(jié)省水平。有優(yōu)勢(shì)地,用于空閑狀態(tài)優(yōu)化的系統(tǒng)和方法的實(shí)施例識(shí)別與可用的空閑狀態(tài)相關(guān)聯(lián)的不同的延時(shí)和功率節(jié)省,并且使用這些差異來優(yōu)化QoS和用戶體驗(yàn)。各個(gè)實(shí)施例通過將各個(gè)內(nèi)核有策略地分配到各個(gè)空閑狀態(tài)以及在空閑狀態(tài)和活動(dòng)處理狀態(tài)之間轉(zhuǎn)變來優(yōu)化QoS和用戶體驗(yàn)。通過空閑狀態(tài)優(yōu)化算法的應(yīng)用來確定到空閑和活動(dòng)狀態(tài)的分配以及在空閑和活動(dòng)狀態(tài)間的轉(zhuǎn)變,當(dāng)權(quán)衡功率節(jié)省目標(biāo)(即,熱減輕目標(biāo))和QoS/用戶體驗(yàn)?zāi)繕?biāo)(g卩,工作負(fù)荷(尤其是突發(fā)負(fù)荷)的有效處理)時(shí),所述空閑狀態(tài)優(yōu)化算法考慮特定PCD的整體功率預(yù)算。
[0024]當(dāng)處理內(nèi)核進(jìn)入WFI空閑狀態(tài)時(shí),其處理器時(shí)鐘停止,或“被斷開”,直到發(fā)生中斷或調(diào)試事件。這樣,內(nèi)核不再處于用于處理工作負(fù)荷的活動(dòng)狀態(tài)(因此節(jié)省功耗),但是仍然準(zhǔn)備好在檢測(cè)到中斷的情況下快速地轉(zhuǎn)變回活動(dòng)狀態(tài)(諸如用于處理突發(fā)負(fù)荷)。即使當(dāng)內(nèi)核處于WFI空閑狀態(tài)時(shí),其不消耗功率用于處理工作負(fù)荷,但是仍然向內(nèi)核提供電壓,并且可測(cè)量的電流以泄漏電流的形式不可避免地保留在內(nèi)核的電源導(dǎo)軌上。值得注意的是,泄漏電流可以與內(nèi)核的溫度(即,結(jié)溫度)直接關(guān)聯(lián),并且因此本領(lǐng)域普通技術(shù)人員將認(rèn)