欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

新穎的低成本、低功率高性能SMP/ASMP多處理器系統(tǒng)的制作方法

文檔序號(hào):11530458閱讀:509來(lái)源:國(guó)知局
新穎的低成本、低功率高性能SMP/ASMP多處理器系統(tǒng)的制造方法與工藝

相關(guān)申請(qǐng)案交叉申請(qǐng)

本發(fā)明要求2014年12月22日遞交的發(fā)明名稱為“新穎的低成本、低功率高性能smp/asmp多處理器系統(tǒng)(anovellowcost,lowpowerhighperformancesmp/asmpmultiple-processorsystem)”第14/580,044號(hào)美國(guó)非臨時(shí)專利申請(qǐng)案的在先申請(qǐng)優(yōu)先權(quán),該在先申請(qǐng)是2014年10月16日遞交的發(fā)明名稱為“用于多處理器動(dòng)態(tài)不對(duì)稱和對(duì)稱模式切換的硬件裝置和方法(hardwareapparatusandmethodformultipleprocessorsdynamicasymmetricandsymmetricmodeswitching)”的第14/516,314號(hào)先前美國(guó)專利申請(qǐng)案的部分繼續(xù)申請(qǐng),所述兩個(gè)專利申請(qǐng)案好像全文復(fù)制一樣以引入的方式并入本文。

本發(fā)明大體上涉及多處理器架構(gòu)和系統(tǒng),具體而言,本發(fā)明涉及用于使多處理器/內(nèi)核系統(tǒng)中的至少一個(gè)處理器/內(nèi)核在不對(duì)稱多處理模式與對(duì)稱多處理模式之間切換的裝置和方法。



背景技術(shù):

多處理系統(tǒng)使用多個(gè)處理器(例如,中央處理單元(centralprocessingunit,cpu))來(lái)處理數(shù)據(jù)并且執(zhí)行所希望的功能。如將了解,術(shù)語(yǔ)“處理器”與術(shù)語(yǔ)“cpu”或“內(nèi)核”同義地使用并且易于被本領(lǐng)域技術(shù)人員所理解。在現(xiàn)有技術(shù)中,存在兩種主要類型的不同多處理系統(tǒng):對(duì)稱多處理(symmetricmulti-processing,smp)和不對(duì)稱多處理(asymmetricmulti-processing,asmp)。

smp系統(tǒng)通常具有以下特征:共享所有系統(tǒng)資源、單個(gè)同步二級(jí)緩存接口(并且可能地異步二級(jí)緩存接口)、處理器在相同時(shí)鐘頻率和時(shí)鐘電壓下受到控制。這還通常意味著處理器/內(nèi)核可同等地訪問(wèn)共享存儲(chǔ)器系統(tǒng)(例如,二級(jí)緩存和存儲(chǔ)器)。在smp中,時(shí)鐘頻率和電壓不可個(gè)別地調(diào)節(jié),因此無(wú)法在每?jī)?nèi)核/處理器的基礎(chǔ)上改變時(shí)鐘頻率和電壓。另外,二級(jí)緩存在所有內(nèi)核當(dāng)中共享,并且二級(jí)緩存頻率不可在每?jī)?nèi)核基礎(chǔ)上按比例調(diào)整。在大多數(shù)應(yīng)用中(如果不是所有的應(yīng)用),smp中的處理器的工作負(fù)荷是不平衡的并且這導(dǎo)致較高的功耗。smp也可以表征為同等地對(duì)待所有處理器/內(nèi)核(等同性)。

相反,asmp系統(tǒng)通常具有以下特征:具有個(gè)別地用于處理器的不同的時(shí)鐘頻率和/或時(shí)鐘電壓,且二級(jí)緩存時(shí)鐘頻率可以獨(dú)立地按比例調(diào)整。因此,處理器時(shí)鐘頻率和二級(jí)緩存頻率可以基于工作負(fù)荷按比例調(diào)整(例如,相對(duì)于針對(duì)存儲(chǔ)器密集工作負(fù)荷的內(nèi)核的更快二級(jí)緩存)。一般來(lái)說(shuō),asmp系統(tǒng)與smp系統(tǒng)相比在功率上更高效,但是可能因額外且更復(fù)雜的硬件而引起潛在地更高功耗。當(dāng)一級(jí)緩存未命中率較高時(shí),處理器將從二級(jí)緩存中提取數(shù)據(jù)。如果請(qǐng)求相關(guān)數(shù)據(jù)存儲(chǔ)在二級(jí)緩存的較低時(shí)鐘頻率部分中,那么處理器必須等待數(shù)據(jù)。這導(dǎo)致較高時(shí)延和較高功耗。asmp也可以表征為以不同方式或不同等地對(duì)待所有處理器/內(nèi)核(不等性)。

轉(zhuǎn)向圖1,示出了具有使用asmp的多個(gè)處理器的處理系統(tǒng)100的基本架構(gòu)。如將了解,雖然針對(duì)smp使用類似現(xiàn)有技術(shù)系統(tǒng),但是如本領(lǐng)域一般技術(shù)人員易于理解的,處理器在單個(gè)時(shí)鐘頻率下操作并使用單個(gè)電源電壓電平。

如圖所示,處理系統(tǒng)100包含多處理器內(nèi)核和緩存子系統(tǒng)105,所述子系統(tǒng)具有多個(gè)處理器110(110a、110b、110c、110d),所述多個(gè)處理器具有相對(duì)應(yīng)的二級(jí)緩存存儲(chǔ)器部分120(120a、120b、120c、120d)和跨時(shí)鐘域(clockdomaincrossing,cdc)電路130(130a、130b、130c、130d)。雖然示出四個(gè)處理器110(以及相應(yīng)存儲(chǔ)器和電路),但是處理器的數(shù)目可以更少或更多,但是將包含至少兩個(gè)。如將了解,每個(gè)處理器110可以包含一個(gè)或多個(gè)中央處理單元(centralprocessingunit,cpu)。

處理系統(tǒng)100進(jìn)一步包含電源管理控制(powermanagementcontrol,pmic)電路140,用于產(chǎn)生多個(gè)電源電壓信號(hào)以用于向?qū)?yīng)的處理器、緩存和cdc供電。類似地,時(shí)鐘產(chǎn)生電路150產(chǎn)生具有各種預(yù)定時(shí)鐘頻率的多個(gè)時(shí)鐘信號(hào)以用于對(duì)應(yīng)的處理器、緩存和cdc的計(jì)時(shí)操作。如將了解,pmic電路可以在與子系統(tǒng)105相同的襯底上或可以設(shè)置在另一襯底上(例如,在另一ic中)。

如上所述且本領(lǐng)域技術(shù)人員易于理解的是,不同smp和asmp架構(gòu)/系統(tǒng)中的每一個(gè)具有各種優(yōu)勢(shì)或優(yōu)點(diǎn)以及各種劣勢(shì)或缺點(diǎn)。鑒于每種類型的系統(tǒng)的復(fù)雜度和成本(在硬件和軟件功能兩者上),設(shè)計(jì)者通常必須基于特定應(yīng)用而選擇smp系統(tǒng)或asmp系統(tǒng)?,F(xiàn)有技術(shù)多處理器系統(tǒng)使用asmp或smp。

因此,需要一種能夠操作并同時(shí)提供smp系統(tǒng)和asmp系統(tǒng)這兩種功能而無(wú)需具有雙重多處理器內(nèi)核、緩存和cdc子系統(tǒng)的多處理系統(tǒng)或架構(gòu)。



技術(shù)實(shí)現(xiàn)要素:

根據(jù)一個(gè)實(shí)施例,提供一種包含多處理器(multi-processor,mp)處理系統(tǒng)的多處理系統(tǒng),其具有多個(gè)處理器,包含:第一處理器,第一處理器用于接收具有第一預(yù)定頻率的第一時(shí)鐘信號(hào)和具有第一預(yù)定工作電壓的第一電源電壓并根據(jù)第一時(shí)鐘信號(hào)和第一電源電壓操作;以及第二處理器,第二處理器用于接收第一時(shí)鐘信號(hào)或具有與第一預(yù)定頻率不同的第二預(yù)定頻率的第二時(shí)鐘信號(hào)并根據(jù)第一時(shí)鐘信號(hào)或第二時(shí)鐘信號(hào)操作,并且接收具有與第一預(yù)定工作電壓不同的第二預(yù)定工作電壓的第二電源電壓并根據(jù)第二電源電壓操作??刂破黢詈系街辽俚诙幚砥鞑⒂糜诘诙幚砥髟诘谝徊僮髂J脚c第二操作模式之間的切換操作。當(dāng)在第一操作模式中時(shí),第二處理器接收第一時(shí)鐘信號(hào)和第一電源電壓并根據(jù)第一時(shí)鐘信號(hào)和第一電源電壓操作,當(dāng)在第二操作模式中時(shí),第二處理器接收第二時(shí)鐘信號(hào)和第二電源電壓并根據(jù)第二時(shí)鐘信號(hào)和第二電源電壓操作,其中第一處理器進(jìn)一步用于在第一操作模式和第二操作模式兩者期間僅接收第一時(shí)鐘信號(hào)和第一電源電壓并根據(jù)第一時(shí)鐘信號(hào)和第一電源電壓操作。

根據(jù)另一實(shí)施例,提供一種包含用于執(zhí)行多處理功能的多個(gè)處理器的裝置,所述多個(gè)處理器包含多個(gè)第一處理器和第二處理器。控制器用于控制第二處理器在第一模式和第二模式中的操作。所述裝置進(jìn)一步包含:時(shí)鐘產(chǎn)生電路,所述時(shí)鐘產(chǎn)生電路耦合到控制器且用于產(chǎn)生并輸出第一時(shí)鐘信號(hào)和第二時(shí)鐘信號(hào);以及切換電路,所述切換電路設(shè)置在時(shí)鐘產(chǎn)生電路與第二處理器之間且用于接收第一和第二時(shí)鐘信號(hào)并選擇一個(gè)時(shí)鐘信號(hào)以用于輸出到第二處理器,其中在第一操作模式期間將第一時(shí)鐘信號(hào)輸出到第二處理器,在第二操作模式期間將第二時(shí)鐘信號(hào)輸出到第二處理器。在第一操作模式和第二操作模式期間,將第一時(shí)鐘信號(hào)輸入到多個(gè)第一處理器。緩存存儲(chǔ)器耦合到多個(gè)處理器并用于與多個(gè)處理器一起使用,并且跨時(shí)鐘域(clock-domaincrossing,cdc)和旁路電路響應(yīng)于控制器并耦合到第二處理器和緩存存儲(chǔ)器,且進(jìn)一步用于在第二操作模式期間在第二處理器與緩存存儲(chǔ)器之間提供跨時(shí)鐘域功能以及在第一操作模式期間提供旁路功能。

在另一實(shí)施例中,提供一種用于在對(duì)稱多處理(symmetricmultiprocessing,smp)模式與不對(duì)稱多處理(asymmetricmultiprocessing,asmp)模式之間切換多個(gè)處理器的方法。所述方法包含:當(dāng)?shù)谝惶幚砥鞑僮鲿r(shí),始終根據(jù)具有第一預(yù)定頻率的第一時(shí)鐘信號(hào)和具有第一預(yù)定工作電壓的第一電源電壓操作第一處理器;接收模式選擇信號(hào);以及響應(yīng)于模式選擇信號(hào)以第一操作模式或第二操作模式操作第二處理器。在第一操作模式中,根據(jù)第一時(shí)鐘信號(hào)和第一電源電壓操作第二處理器,而在第二操作模式中,根據(jù)具有與第一預(yù)定頻率不同的第二預(yù)定頻率的第二時(shí)鐘信號(hào)并根據(jù)具有與第一預(yù)定工作電壓不同的第二預(yù)定工作電壓的第二電源電壓操作第二處理器。

在再一實(shí)施例中,提供一種用于以多處理模式操作具有多個(gè)處理器的處理系統(tǒng)的方法,其中至少兩個(gè)處理器以對(duì)稱多處理(symmetricmultiprocessing,smp)模式或不對(duì)稱多處理(asymmetricmultiprocessing,asmp)模式操作。所述方法包含:以smp模式操作至少兩個(gè)處理器,其中所述至少兩個(gè)處理器接收具有第一預(yù)定頻率的smp時(shí)鐘信號(hào)并接收具有第一電壓的smp操作電源電壓,所述至少兩個(gè)處理器包括第一處理器和第二處理器;接收從smp模式切換至asmp模式的指令;以及將所述至少兩個(gè)處理器的操作從smp模式切換至asmp模式。切換操作包含:產(chǎn)生具有與第一預(yù)定頻率不同的第二預(yù)定頻率的asmp時(shí)鐘信號(hào);產(chǎn)生在與第一電壓不同的第二電壓下的asmp操作電源電壓;將asmp時(shí)鐘信號(hào)和asmp操作電源電壓輸入到第二處理器;并且其后在第二預(yù)定頻率和第二電壓下操作第二處理器以及在第一預(yù)定頻率和第一電壓下操作第一處理器。

根據(jù)另一實(shí)施例,提供一種多處理器(multi-processor,mp)處理系統(tǒng),其具有多個(gè)處理器,包含第一處理器和第二處理器,第一處理器和第二處理器各自用于接收具有第一預(yù)定頻率的第一時(shí)鐘信號(hào)和具有第一預(yù)定工作電壓的第一電源電壓并根據(jù)第一時(shí)鐘信號(hào)和第一電源電壓操作;第三處理器,第三處理器用于接收第一時(shí)鐘信號(hào)或具有與第一預(yù)定頻率不同的第二預(yù)定頻率的第二時(shí)鐘信號(hào)并根據(jù)第一時(shí)鐘信號(hào)或第二時(shí)鐘信號(hào)操作,并且接收具有與第一預(yù)定工作電壓不同的第二預(yù)定工作電壓的第二電源電壓并根據(jù)第二電源電壓操作;以及第四處理器,第四處理器用于接收第一時(shí)鐘信號(hào)或具有與第一預(yù)定頻率不同的第三預(yù)定頻率的第三時(shí)鐘信號(hào)并根據(jù)第一時(shí)鐘信號(hào)或第三時(shí)鐘信號(hào)操作,并且接收具有與第一預(yù)定工作電壓不同的第三預(yù)定工作電壓的第三電源電壓并根據(jù)第三電源電壓操作。控制器耦合到至少第三和第四處理器并用于第三和第四處理器在第一操作模式與第二操作模式之間的切換操作。當(dāng)在第一操作模式中時(shí),第三處理器和第四處理器各自接收第一時(shí)鐘信號(hào)和第一電源電壓并根據(jù)第一時(shí)鐘信號(hào)和第一電源電壓操作,當(dāng)在第二操作模式中時(shí),第三處理器接收第二時(shí)鐘信號(hào)和第二電源電壓并根據(jù)第二時(shí)鐘信號(hào)和第二電源電壓操作,而第四處理器接收第三時(shí)鐘信號(hào)和第三電源電壓并根據(jù)第三時(shí)鐘信號(hào)和第三電源電壓操作。第一處理器和第二處理器進(jìn)一步用于在第一操作模式和第二操作模式兩者期間僅接收第一時(shí)鐘信號(hào)和第一電源電壓并根據(jù)第一時(shí)鐘信號(hào)和第一電源電壓操作。

在再一實(shí)施例中,提供一種在對(duì)稱多處理(symmetricmultiprocessing,smp)模式與不對(duì)稱多處理(asymmetricmultiprocessing,asmp)模式之間切換多個(gè)處理器的方法。所述方法包含:在第一處理器和第二處理器的操作期間,始終根據(jù)具有第一預(yù)定頻率的第一時(shí)鐘信號(hào)和具有第一預(yù)定工作電壓的第一電源電壓操作第一處理器和第二處理器;接收模式選擇信號(hào);以及響應(yīng)于模式選擇信號(hào)同時(shí)以第一操作模式或第二操作模式操作第三處理器和第四處理器。在第一操作模式中,根據(jù)第一時(shí)鐘信號(hào)和第一電源電壓操作第三處理器和第四處理器,而在第二操作模式中,根據(jù)具有與第一預(yù)定頻率不同的第二預(yù)定頻率的第二時(shí)鐘信號(hào)并根據(jù)具有與第一預(yù)定工作電壓不同的第二預(yù)定工作電壓的第二電源電壓操作第三處理器,以及根據(jù)具有與第一預(yù)定頻率不同的第三預(yù)定頻率的第三時(shí)鐘信號(hào)并根據(jù)具有與第一預(yù)定工作電壓不同的第三預(yù)定工作電壓的第三電源電壓操作第四處理器。

在又另一個(gè)實(shí)施例中,提供一種在具有多個(gè)處理器的多處理器系統(tǒng)中處理的方法。所述方法包含:在多處理器系統(tǒng)內(nèi)僅使用多個(gè)處理器內(nèi)的第一有效處理器來(lái)處理;確定應(yīng)激活第二處理器以用于多處理器系統(tǒng)內(nèi)的處理;響應(yīng)于確定,激活第二處理器;在多處理器系統(tǒng)內(nèi)根據(jù)對(duì)稱多處理(symmetricmultiprocessing,smp)模式或不對(duì)稱多處理(asymmetricmultiprocessing,asmp)模式使用第一有效處理器和第二有效處理器來(lái)處理。當(dāng)在smp模式中時(shí),第一有效處理器和第二有效處理器各自根據(jù)具有第一預(yù)定頻率的第一時(shí)鐘信號(hào)和具有第一預(yù)定電壓的第一電源電壓操作,而當(dāng)在asmp模式中時(shí),第一有效處理器根據(jù)第一時(shí)鐘信號(hào)和第一電源電壓操作,第二處理器根據(jù)具有與第一預(yù)定頻率不同的第二預(yù)定頻率的第二時(shí)鐘信號(hào)并根據(jù)具有與第一預(yù)定工作電壓不同的第二預(yù)定工作電壓的第二電源電壓操作。所述方法還包含接收模式選擇信號(hào),并取決于模式選擇信號(hào)進(jìn)行第一有效處理器和第二有效處理器從smp模式到asmp模式或從asmp模式到smp模式的切換操作。

在另一實(shí)施例中,提供一種具有包含第一處理器和第二處理器的多個(gè)處理器的多處理器(multi-processor,mp)處理系統(tǒng)??刂破黢詈系街辽俚诙幚砥鞑⒂糜冢喉憫?yīng)于激活/去激活信號(hào)而激活或去激活第二處理器;在激活第二處理器后,控制在多處理器系統(tǒng)內(nèi)根據(jù)對(duì)稱多處理(symmetricmultiprocessing,smp)模式或不對(duì)稱多處理(asymmetricmultiprocessing,asmp)模式使用第一處理器和第二處理器的處理。當(dāng)?shù)谝惶幚砥骱偷诙幚砥鞲髯愿鶕?jù)具有第一預(yù)定頻率的第一時(shí)鐘信號(hào)和具有第一預(yù)定電壓的第一電源電壓操作時(shí)界定smp模式,而當(dāng)?shù)谝惶幚砥鞲鶕?jù)第一時(shí)鐘信號(hào)和第一電源電壓操作,且第二處理器根據(jù)具有與第一預(yù)定頻率不同的第二預(yù)定頻率的第二時(shí)鐘信號(hào)并根據(jù)具有與第一預(yù)定工作電壓不同的第二預(yù)定工作電壓的第二電源電壓操作時(shí)界定asmp模式??刂破鬟€用于接收模式選擇信號(hào),并取決于模式選擇信號(hào)進(jìn)行第一處理器和第二處理器從smp模式到asmp模式或從asmp模式到smp模式的切換操作。

附圖說(shuō)明

為了更完整地理解本發(fā)明及其優(yōu)點(diǎn),現(xiàn)在參考下文結(jié)合附圖進(jìn)行的描述,相同的數(shù)字表示相同的對(duì)象,其中:

圖1示出實(shí)例現(xiàn)有技術(shù)不對(duì)稱多處理系統(tǒng)(asymmetricmultiprocessing,asmp);

圖2是示出根據(jù)本發(fā)明的某些實(shí)施例的實(shí)例多處理系統(tǒng)的圖;

圖3a、3b和3c示出與根據(jù)本發(fā)明的圖2中示出的系統(tǒng)一起使用的實(shí)例有限狀態(tài)機(jī)(finitestatemachine,fsm)和過(guò)程;

圖4是示出根據(jù)本發(fā)明的無(wú)干擾時(shí)鐘的一個(gè)實(shí)施方案的圖;

圖5是根據(jù)本發(fā)明的跨時(shí)鐘域(clockdomaincrossing,cdc)和旁路電路的方框圖;

圖6是圖2中示出的實(shí)例多處理系統(tǒng)的另一實(shí)施例;

圖6a示出與根據(jù)本發(fā)明的圖6中示出的系統(tǒng)一起使用的有限狀態(tài)機(jī)(finitestatemachine,fsm)的另一實(shí)施例;

圖7是示出根據(jù)本發(fā)明的多處理系統(tǒng)的另一實(shí)施例的圖;

圖8是用于啟動(dòng)和控制smp/asmp模式切換的架構(gòu)(方法、過(guò)程、系統(tǒng))的圖;

圖9示出根據(jù)本發(fā)明的實(shí)例動(dòng)態(tài)模式切換方法或過(guò)程;

圖10示出根據(jù)本發(fā)明的替代模式切換方法或過(guò)程;

圖11示出根據(jù)本發(fā)明的實(shí)例靜態(tài)模式切換方法或過(guò)程;

圖12是示出根據(jù)本發(fā)明的某些實(shí)施例的第二多處理系統(tǒng)的圖;

圖13是用于啟動(dòng)和控制smp/asmp模式切換的架構(gòu)(方法、過(guò)程、系統(tǒng))的圖;

圖14a和14b是示出圖12中示出的處理系統(tǒng)的兩個(gè)實(shí)施例的簡(jiǎn)化方框圖;

圖15示出處于smp模式和asmp模式的具有四個(gè)處理器/內(nèi)核的系統(tǒng)中的多處理配置的不同實(shí)例;

圖16是用于啟動(dòng)和控制smp/asmp模式切換的替代架構(gòu)(方法、過(guò)程、系統(tǒng))的圖;

圖17示出mp系統(tǒng)的替代實(shí)施例或架構(gòu);

圖18是示出基于任務(wù)負(fù)荷何時(shí)應(yīng)激活額外處理器(或何時(shí)應(yīng)去激活多個(gè)有效處理器中的一個(gè))的曲線圖;以及

圖19是與smp/asmp模式選擇/切換過(guò)程整合的用于添加/移除處理器的過(guò)程的一般流程圖。

具體實(shí)施方式

本文中論述的圖1至圖11,以及在所述專利文檔中說(shuō)明的各種實(shí)施例和下文描述的本發(fā)明的原理僅借助于說(shuō)明,而不應(yīng)以任何方式理解為對(duì)本發(fā)明范圍的限制。本領(lǐng)域技術(shù)人員將理解,本文中描述的原理可以通過(guò)任何類型的設(shè)置合理的設(shè)備或系統(tǒng)來(lái)實(shí)施。

已發(fā)現(xiàn)當(dāng)將一組處理器/內(nèi)核的操作從完全smp系統(tǒng)切換至完全asmp系統(tǒng)時(shí),與提供此smp/asmp動(dòng)態(tài)切換功能相關(guān)聯(lián)的成本和復(fù)雜度(硬件/軟件)會(huì)很重要。對(duì)于較小的設(shè)備(例如,移動(dòng)應(yīng)用中的移動(dòng)設(shè)備、手持設(shè)備、智能電話等,而不是超級(jí)計(jì)算設(shè)備和應(yīng)用),已經(jīng)通過(guò)調(diào)查和測(cè)試確定在大多數(shù)用途中可以使用兩個(gè)(或更少)處理器/內(nèi)核來(lái)充分地處理多處理任務(wù)/功能。在大多數(shù)這些應(yīng)用中,兩個(gè)處理器/內(nèi)核將以不平衡負(fù)荷運(yùn)行從而導(dǎo)致較高的功耗。

因此,將為有利的是具有低成本、低功率和高性能的多處理系統(tǒng),所述系統(tǒng)能夠以asmp方式操作,但是其中處理器/內(nèi)核中的僅單個(gè)處理器/內(nèi)核(或子集)用于并支持不同時(shí)鐘頻率和/或不同操作電源電壓之間的動(dòng)態(tài)切換,其余的處理器/內(nèi)核配置在相同時(shí)鐘頻率和相同電源電壓下。例如,如果多處理器系統(tǒng)包含兩個(gè)處理器/內(nèi)核,那么第一處理器/內(nèi)核在第一時(shí)鐘頻率(不能動(dòng)態(tài)改變)和第一電源電壓(不能動(dòng)態(tài)改變)下操作,而第二處理器/內(nèi)核可在所述第一頻率和第一電源電壓(與第一處理器/內(nèi)核相同)下操作或在不同頻率和不同電源電壓下操作之間切換。這也可以適用于具有三個(gè)或更多個(gè)處理器/內(nèi)核的系統(tǒng),其中處理器/內(nèi)核(或子集)中的至少一個(gè)具有此動(dòng)態(tài)切換能力。

還可為有利的是具有一種用于在一組處理器/內(nèi)核中控制和選擇至少一個(gè)處理器/內(nèi)核以在與所述組中的所有其它處理器/內(nèi)核相同的時(shí)鐘頻率和電源電壓下操作(由此總體以smp模式操作)或在與其它處理器/內(nèi)核不同的時(shí)鐘頻率和電源電壓下操作(由此總體以asmp模式操作)的方法。此類系統(tǒng)和方法能減少實(shí)施成本和功耗并提高效率。

一般來(lái)說(shuō),在本申請(qǐng)案中相對(duì)于圖1到11說(shuō)明的實(shí)施例描述一種具有可在對(duì)稱多處理(symmetricalmulti-processing,smp)與不對(duì)稱多處理(asymmetricalmulti-processing,asmp)這兩種操作模式之間切換的多個(gè)處理器/內(nèi)核的處理系統(tǒng)。所述系統(tǒng)包含實(shí)現(xiàn)這兩種模式之間的控制和切換的硬件裝置。在硬件內(nèi),當(dāng)從操作系統(tǒng)(operatingsystem,os)或其它軟件/硬件接收到在smp與asmp之間進(jìn)行切換的切換命令后,執(zhí)行一連串或一系列動(dòng)作以控制多個(gè)處理器和存儲(chǔ)器的時(shí)鐘和電壓。切換命令的產(chǎn)生可以按需要基于一個(gè)或多個(gè)因素,例如負(fù)荷、緩存未命中率、功耗原因等。裝置確保系統(tǒng)在從一個(gè)模式轉(zhuǎn)換為另一個(gè)模式期間不發(fā)生故障,并且處理器/存儲(chǔ)器的時(shí)鐘無(wú)干擾地切換。所述裝置/方法將軟件/os干預(yù)減到最小并具有更快的模式切換速度。

如本文所使用,術(shù)語(yǔ)smp通常是指使用共享存儲(chǔ)器系統(tǒng)(具有以相同時(shí)鐘和供電電壓操作的二級(jí)緩存存儲(chǔ)器)使用在相同時(shí)鐘(頻率)和相同供電電壓下操作的多個(gè)處理器/cpu/內(nèi)核進(jìn)行處理。術(shù)語(yǔ)asmp通常是指使用多個(gè)處理器/cpu/內(nèi)核進(jìn)行處理,其中的至少兩個(gè)處理器/cpu/內(nèi)核在不同時(shí)鐘(頻率)和/或供電電壓下操作。在asmp中,通常處理器各自使用不同的二級(jí)緩存存儲(chǔ)器。然而,asmp也可包含共享同一個(gè)二級(jí)緩存存儲(chǔ)器(被稱為異構(gòu)asmp)。在另一方面中,術(shù)語(yǔ)asmp是指使用多個(gè)處理器/cpu/內(nèi)核的多處理,其中每個(gè)處理器/cpu/內(nèi)核用于使用至少第一時(shí)鐘頻率和第一電源電壓或第二時(shí)鐘頻率和第二電源電壓進(jìn)行操作。還預(yù)期超過(guò)兩個(gè)此類時(shí)鐘/電壓的組合。在這個(gè)方面中,所有處理器/cpu/內(nèi)核(兩個(gè)或更多個(gè))可以用于以smp模式(全部使用相同時(shí)鐘頻率和電壓)或asmp模式(全部使用不同時(shí)鐘頻率和電壓)操作。

如將了解,本發(fā)明還提供圖12到19中描述的smp/asmp系統(tǒng)的各種其它實(shí)施例,所述系統(tǒng)類似于關(guān)于圖1到11描述的那些系統(tǒng),不同之處在于在這些實(shí)施例中,可動(dòng)態(tài)切換或編程對(duì)處理器/內(nèi)核的僅一個(gè)子集(至少一個(gè),不到全部)的時(shí)鐘頻率和電源電壓輸入以接收不同時(shí)鐘頻率和/或供電電壓電平。

本申請(qǐng)案進(jìn)一步描述用于smp操作模式與asmp操作模式之間的模式切換(動(dòng)態(tài)/靜態(tài)或手動(dòng)/智能)的各種方法(例如,產(chǎn)生切換命令)。在一種方法中,在輕負(fù)荷條件下或在一級(jí)緩存未命中率較高時(shí)選擇smp模式。在重負(fù)荷條件和不平衡負(fù)荷條件下選擇asmp。另外,引入學(xué)習(xí)模式,可以使用學(xué)習(xí)模式以實(shí)時(shí)促進(jìn)快速模式選擇??傮w優(yōu)勢(shì)可以包含在負(fù)荷不平衡時(shí)的較低功率、具有更少緩存未命中的更好性能、以及手動(dòng)地或智能地切換模式的能力。

現(xiàn)轉(zhuǎn)向圖2,示出說(shuō)明根據(jù)本發(fā)明的處理系統(tǒng)200的詳圖。如圖所示,處理系統(tǒng)200包含多處理器內(nèi)核和緩存子系統(tǒng)205,所述子系統(tǒng)具有多個(gè)處理器210(210a、210b、210c、210d),所述多個(gè)處理器具有相對(duì)應(yīng)的二級(jí)緩存存儲(chǔ)器部分220(220a、220b、220c、220d)和帶旁路的跨域時(shí)鐘(cross-domainclock,cdc)電路230(230a、230b、230c、230d)。雖然示出四個(gè)處理器210(以及相應(yīng)存儲(chǔ)器和電路),但是處理器的數(shù)目可以更少或更多,但是將包含至少兩個(gè)。如將了解,每個(gè)處理器210可以包含一個(gè)或多個(gè)中央處理單元(centralprocessingunit,cpu)或內(nèi)核。

處理系統(tǒng)200進(jìn)一步包含電源管理控制(powermanagementcontrol,pmic)電路240,用于產(chǎn)生多個(gè)電源電壓信號(hào)以用于向?qū)?yīng)的處理器、緩存和cdc供電。類似地,時(shí)鐘產(chǎn)生電路250產(chǎn)生具有各種預(yù)定時(shí)鐘頻率的多個(gè)時(shí)鐘信號(hào)以用于對(duì)應(yīng)的處理器、緩存和cdc的計(jì)時(shí)操作。

在一個(gè)實(shí)施例中,除pmic電路240之外,處理系統(tǒng)200設(shè)置于或以其它方式位于單個(gè)集成半導(dǎo)體襯底/裸片上(或在設(shè)置在多襯底ic封裝內(nèi)的多個(gè)半導(dǎo)體襯底內(nèi))。在另一實(shí)施例中,pmic電路240也可以包含于單個(gè)集成半導(dǎo)體襯底/裸片上。

如圖所示,處理系統(tǒng)200還包含控制器260(所述控制器也可以稱為模式控制器)和時(shí)鐘切換電路(或模塊)270。如將理解,控制器260輸出各種控制信號(hào)用于控制時(shí)鐘產(chǎn)生電路250、pmic電路240、“帶旁路的cdc電路”230和時(shí)鐘切換電路270的功能和操作。

時(shí)鐘產(chǎn)生電路250包含用于產(chǎn)生多個(gè)時(shí)鐘信號(hào)所必需的電路和元件,包含:用于總體控制所有處理器210的操作速度的一個(gè)smp處理器時(shí)鐘信號(hào)(clk)、用于總體控制所有緩存部分220的操作速度的一個(gè)smp存儲(chǔ)器時(shí)鐘信號(hào)(clkch)、使得能夠獨(dú)立控制四個(gè)處理器(210a、210b、210c、210d)中的每一個(gè)的操作速度的四個(gè)asmp處理器時(shí)鐘信號(hào)(clk0、clk1、clk2、clk3)、以及使得能夠獨(dú)立控制緩存存儲(chǔ)器部分(220a、220b、220c、220d)中的每一個(gè)的操作速度的四個(gè)asmp存儲(chǔ)器時(shí)鐘信號(hào)(clkch0、clkch1、clkch2、clkch3)。通過(guò)電路250無(wú)干擾地激活或去激活任何這些時(shí)鐘。時(shí)鐘產(chǎn)生電路250還產(chǎn)生供控制器260使用的控制器時(shí)鐘信號(hào)(clk_fsm)。

pmic電路240包含用于產(chǎn)生供子系統(tǒng)205的對(duì)應(yīng)部分使用的多個(gè)操作電源電壓或信號(hào)所必需的電路和元件。如圖所示,pmic電路240產(chǎn)生并輸出為每個(gè)對(duì)應(yīng)組處理單元供電的四個(gè)操作電源電壓(v0、v1、v2、v3)。換句話說(shuō),操作電源電壓v0為處理器210a、緩存存儲(chǔ)器部分220a和帶旁路的cdc電路230a供電,而供電電壓v1為處理器210b、緩存存儲(chǔ)器部分220b和帶旁路的cdc電路230b供電,等等。如本領(lǐng)域技術(shù)人員將理解,當(dāng)處理器/存儲(chǔ)器在較高時(shí)鐘速度下操作時(shí),需要且可能必需也以較高電源電壓操作所述處理器/存儲(chǔ)器。另外,當(dāng)不使用內(nèi)核時(shí),可以將其功率降級(jí)或停用時(shí)鐘。

將理解,時(shí)鐘產(chǎn)生電路250還可包含實(shí)現(xiàn)所產(chǎn)生時(shí)鐘信號(hào)中的每一個(gè)的可編程性的功能和電路。在一個(gè)實(shí)施例中,時(shí)鐘信號(hào)中的每一個(gè)可以針對(duì)許多可能頻率中的一種可編程(例如,clk可以在例如300mhz到3ghz的范圍之間可編程)。在另一實(shí)施例中,僅某些時(shí)鐘信號(hào)可以是可編程的,而在其它實(shí)施例中,每個(gè)時(shí)鐘信號(hào)的頻率是預(yù)定且固定的。在又另一個(gè)實(shí)施例中,頻率可以相對(duì)于彼此固定,但是可以作為一組可編程。

類似地,pmic電路240也可包含為所產(chǎn)生操作供電電壓v0、v1、v2、v3中的每一個(gè)提供可編程性的功能和電路。在一個(gè)實(shí)施例中,每個(gè)電源可以針對(duì)許多可能電壓電平中的一種可編程(例如,電壓可以在例如0.5伏和3.3伏的范圍之間可編程)。在另一實(shí)施例中,僅某些供電電壓可以是可編程的,而在其它實(shí)施例中,每個(gè)電源的電壓電平是預(yù)定且固定的。在又另一個(gè)實(shí)施例中,電壓電平可以相對(duì)于彼此固定,但是可以作為一組可編程。雖然未示出,但在另一實(shí)施例中,除示出的四個(gè)操作供電電壓之外還可以產(chǎn)生基極操作供電電壓。在這種情況下,基極供電電壓和另四個(gè)供電電壓可以用作至復(fù)用電路(類似于時(shí)鐘切換電路270中示出的復(fù)用器272)的輸入。

在另一實(shí)施例(未示出)中,對(duì)應(yīng)的處理器/二級(jí)緩存存儲(chǔ)器對(duì)中的一個(gè)或多個(gè)可以具有不同供電電壓信號(hào)-“分離軌”系統(tǒng)。在此類系統(tǒng)中,二級(jí)緩存存儲(chǔ)器和其相關(guān)聯(lián)的處理器具有不同的供電電壓軌道。如將了解,一個(gè)或多個(gè)(或所有)對(duì)可以具有分離軌供電電壓。因此,在此實(shí)施例中,所產(chǎn)生的操作供電電壓v0、v1、v2、v3可以被分離并包含單獨(dú)的操作供電電壓v0(處理器)和v0(緩存)等等。這些操作供電電壓可以獨(dú)立地可編程或作為一個(gè)或多個(gè)組可編程。在此實(shí)施例中,系統(tǒng)200可進(jìn)一步包含與cdc電路230分離或包含于cdc電路230內(nèi)的電壓域交叉電路(未示出)。

模式或切換控制器260包含有限狀態(tài)機(jī)(finitestatemachine,fsm)262、一個(gè)或多個(gè)定時(shí)器264和一個(gè)或多個(gè)存儲(chǔ)寄存器266(例如配置或狀態(tài)寄存器)??刂破?60用以響應(yīng)于切換命令(select_asmp_mode)的確證而控制并執(zhí)行一系列動(dòng)作或過(guò)程。因此,在示出的實(shí)施例中,當(dāng)切換命令確證/未確證時(shí)操作模式在asmp模式與smp模式之間切換??梢允褂酶鞣N方法和機(jī)構(gòu)來(lái)產(chǎn)生切換命令,下文相對(duì)于圖8到11描述一些實(shí)例。

使用啟用信號(hào)(enable_asmp_clks、enable_smp_clk),控制器260控制時(shí)鐘產(chǎn)生模塊250以在smp/asmp切換之前啟用時(shí)鐘??刂破?60還控制pmic電路240模塊以在切換之前(和在切換之后)對(duì)操作電源電壓v0、v1、v2、v3進(jìn)行編程或改變所述操作電源電壓。在一個(gè)實(shí)施例中,如果pmic電路240在處理器外部(例如,芯片外),控制器260可以經(jīng)由spmi/sbi/mipi等通信總線或接口與pmic電路240通信。如果pmic電路不是外部電路,可以使用其它通信路徑。

應(yīng)理解,可以響應(yīng)于各種事件及通過(guò)處理系統(tǒng)200內(nèi)或處理系統(tǒng)200外部的各種元件產(chǎn)生切換命令(select_asmp_mode)。在示出的實(shí)施例中,從多處理器內(nèi)核和緩存子系統(tǒng)205產(chǎn)生切換命令,但在其它實(shí)施例中可以通過(guò)其它源產(chǎn)生切換命令。

當(dāng)出現(xiàn)從smp時(shí)鐘到asmp時(shí)鐘的實(shí)際切換時(shí)(且反之亦然),控制器260產(chǎn)生asmp選擇信號(hào)(select_asmp_clk),使用時(shí)鐘切換電路270內(nèi)的復(fù)用器272使asmp時(shí)鐘信號(hào)選擇性地復(fù)用到處理器。如所理解,用于asmp模式中的處理器/cpu內(nèi)核210的時(shí)鐘標(biāo)示為clk0、clk1、clk2、clk3,而用于smp模式中的處理器/cpu內(nèi)核210的時(shí)鐘標(biāo)示為clk。因此,select_asmp_clk信號(hào)無(wú)干擾地選擇使用哪些時(shí)鐘。在一個(gè)實(shí)施例中,當(dāng)確證select_asmp_clk時(shí)(邏輯高或“1”),選擇時(shí)鐘信號(hào)clk0、clk1、clk2、clk3并分別輸入到處理器/內(nèi)核210a、210b、210c和210d。當(dāng)未確證select_asmp_clk時(shí)(邏輯低或“0”),選擇時(shí)鐘clk并輸入到所有處理器/內(nèi)核210a、210b、210c和210d。根據(jù)fsm262通過(guò)使用一個(gè)或多個(gè)定時(shí)器264控制切換期間的各種事件和動(dòng)作的定時(shí)。如將在下文更詳細(xì)地描述,會(huì)使用時(shí)鐘預(yù)熱期和電壓斜升/斜降期。可以通過(guò)軟件或其它方法預(yù)編程或預(yù)設(shè)這些值并存儲(chǔ)在控制器中的c/s寄存器或其它存儲(chǔ)器位置(未示出)中。

如將了解,雖然并沒(méi)有特別地以參考標(biāo)號(hào)標(biāo)識(shí),但是可以包含各種其它邏輯電路,例如,電平轉(zhuǎn)換。通常在信號(hào)跨越電源域時(shí)使用電平轉(zhuǎn)換。

現(xiàn)轉(zhuǎn)向圖3a、3b和3c,示出了fsm262執(zhí)行或?qū)嵤┑倪^(guò)程或方法300。如將了解,可以使用不同的配置、方法或結(jié)構(gòu)(或其組合)或方法實(shí)施fsm262的此過(guò)程/功能。例如,盡管在所示出的實(shí)施例中實(shí)施為有限狀態(tài)機(jī)(例如,硬件實(shí)施方案),但是可以替代地使用軟件、具有固件的微控制器等以及其任何組合或本領(lǐng)域技術(shù)人員已知的任何其它方式/方法實(shí)施控制器206的功能。fsm262有利地在更快速度下操作并將軟件/os干預(yù)減到最小。在例外的情況下,例如,超時(shí)等,將產(chǎn)生對(duì)系統(tǒng)處理器的中斷。

如圖3a、3b和3c中所示,用fsm262的狀態(tài)圖表示的過(guò)程300包含各種狀態(tài)和轉(zhuǎn)換。在狀態(tài)310中,處理系統(tǒng)200以smp模式操作。當(dāng)接收到切換命令(select_asmp_mode)時(shí),輸入狀態(tài)320(asmp_clk_wu),其中asmp時(shí)鐘被啟用和激活(使用asmp時(shí)鐘啟用信號(hào))并“預(yù)熱”。在完成預(yù)定預(yù)熱時(shí)間(定時(shí)器)后,輸入狀態(tài)330(v_smp_asmp_ramp_up),其中所有操作供電電壓v、v0、v1、v2、v3(必要時(shí))提高到預(yù)定最大電壓電平(max)。預(yù)定最大電壓電平等于(或高于)在asmp模式中的處理系統(tǒng)200的操作期間v1、v2、v3、v4將具有的最高電壓電平。例如,如果四個(gè)處理器目前在1.5伏下(在smp模式中)操作,并且在asmp模式中,四個(gè)處理器將分別在1.2伏、1.9伏、1.7伏和1.7伏下操作,那么所有操作電源電壓v1、v2、v3和v4提高到1.9伏(或更高)。

在這四個(gè)操作供電電壓達(dá)到預(yù)定最大電壓(max)之后,輸入狀態(tài)340(smp_asmp_clk_switch)。在此狀態(tài)340中,時(shí)鐘切換信號(hào)得到確證并且處理器210和存儲(chǔ)器220的時(shí)鐘(全部等于clksmp的頻率)從smp時(shí)鐘信號(hào)切換至asmp時(shí)鐘信號(hào)。如圖所示,復(fù)用器272被切換為輸出對(duì)應(yīng)的asmp時(shí)鐘信號(hào)clk1、clk2、clk3、clk4而不是smp時(shí)鐘信號(hào)clk。與此同時(shí),帶旁路的cdc電路230也被設(shè)置為旁路模式,使得asmp時(shí)鐘信號(hào)能夠繞過(guò)帶旁路的cdc電路230中的時(shí)鐘域電路。另外,此時(shí),可以去激活由時(shí)鐘產(chǎn)生電路250產(chǎn)生的smp時(shí)鐘信號(hào)。

在這些事件完成之后,輸入狀態(tài)350(v_smp_asmp_ramp_dn),其觸發(fā)操作電源電壓v1、v2、v3、v4的斜降過(guò)程。因?yàn)樗刑幚砥?10(和存儲(chǔ)器220)在max操作電源電壓(在以上實(shí)例中為1.9伏)下操作,并且在asmp模式中對(duì)于v1、v2、v3和v4的期望操作電源電壓不同(在以上實(shí)例中分別為1.2伏、1.9伏、1.7伏、和1.7伏),所以v1、v3和v4的電壓電平降低到在asmp模式中期望的電壓電平。

在操作電源電壓斜降(例如,設(shè)置為在asmp模式中的每個(gè)處理器的期望電壓電平)之后,輸入狀態(tài)360。在此狀態(tài)中,處理系統(tǒng)200現(xiàn)在以asmp模式操作,其中210a/220a、210b/220b、210c/220c和210d/220d等對(duì)應(yīng)的處理器/存儲(chǔ)器組合中的每一個(gè)分別根據(jù)時(shí)鐘和電壓信號(hào)組合clk0/v0、clk1/v1、clk2/v2、clk3/v3操作。

應(yīng)理解,在不同實(shí)施例中,可以省略或繞過(guò)fsm262執(zhí)行的一個(gè)或多個(gè)步驟。例如,如果所有電壓相同,則可以無(wú)需并可以省略v_smp_asmp_ramp_up和v_smp_asmp_ramp_dn狀態(tài)。在此實(shí)例中,這將減少任何模式切換的時(shí)延。在一些其它實(shí)施例中,必須在切換時(shí)鐘之前使時(shí)鐘電壓斜升。

正如前面指出的,可以使用本文中所描述的方法通過(guò)軟件/os預(yù)定時(shí)鐘電壓和頻率值,并且可以在開(kāi)始切換之前將時(shí)鐘電壓和頻率值預(yù)存儲(chǔ)或編程到控制器中的c/s寄存器(或其它存儲(chǔ)器位置)中。在另一實(shí)施例中,系統(tǒng)可以基于實(shí)時(shí)操作特性或參數(shù)在操作期間(根據(jù)若干可能的值中的一個(gè))確定時(shí)鐘電壓和/或頻率值。接著可將這些值(或這些值的標(biāo)識(shí)符)存儲(chǔ)在c/s寄存器(或一些其它存儲(chǔ)器位置)中。

當(dāng)從asmp模式切換至smp模式時(shí)遵循類似的過(guò)程。在狀態(tài)360中,處理系統(tǒng)200以asmp模式操作。當(dāng)接收到切換命令(select_asmp_mode-未確證)時(shí),輸入狀態(tài)370(smp_clk_wu),其中smp時(shí)鐘(clk)被啟用和激活(使用smp時(shí)鐘啟用信號(hào))并“預(yù)熱”。在完成預(yù)定預(yù)熱時(shí)間(定時(shí)器)后,輸入狀態(tài)380(v_asmp_smp_ramp_up),其中所有操作供電電壓v0、v1、v2、v3(必要時(shí))提高到預(yù)定最大電壓電平(max)。預(yù)定最大電壓電平等于(或高于)v1、v2、v3、v4目前在asmp模式中供應(yīng)的最高電壓電平(或在所述電平高于v1、v2、v3和v4的所有電平時(shí)等于期望的smp電壓電平v_smp)。例如,如果四個(gè)處理器目前在1.2伏、1.9伏、1.7伏和1.7伏下操作(在asmp模式中),并且在smp模式中,四個(gè)處理器將分別在1.5伏下(v_smp)操作,那么所有操作電源電壓v1、v2、v3和v4提高到1.9伏(或更高)。

在這四個(gè)操作供電電壓達(dá)到預(yù)定最大電壓(max)之后,輸入狀態(tài)30(asmp_smp_clk_switch)。在此狀態(tài)390中,時(shí)鐘切換信號(hào)得到確證并且處理器210和存儲(chǔ)器220的時(shí)鐘(全部可能不同于smp時(shí)鐘信號(hào)clk的頻率)從asmp時(shí)鐘信號(hào)clk0、clk1、clk2、clk3切換至smp時(shí)鐘信號(hào)clk。如圖所示,復(fù)用器272被切換為輸出smp時(shí)鐘信號(hào)(clk)而不是asmp時(shí)鐘信號(hào)。與此同時(shí),帶旁路的cdc電路230也被設(shè)置為使用時(shí)鐘域電路操作(并停用旁路模式),使得smp時(shí)鐘信號(hào)能夠行進(jìn)通過(guò)帶旁路的cdc電路230中的時(shí)鐘域電路。另外,此時(shí),可以去激活由時(shí)鐘產(chǎn)生電路250產(chǎn)生的asmp時(shí)鐘信號(hào)。

在這些事件完成之后,輸入狀態(tài)395(v_asmp_smp_ramp_dn),其觸發(fā)操作電源電壓v1、v2、v3、v4的斜降過(guò)程。因?yàn)樗刑幚砥?10(和存儲(chǔ)器220)在max操作電源電壓(在以上實(shí)例中為1.9伏)下操作,并且在smp模式中的期望操作電源電壓為v_smp(在以上實(shí)例中為1.5伏),其低于當(dāng)前電壓電平(在此實(shí)例中為1.9伏),所以所有操作電源電壓v1、v2、v3和v4降低到在smp模式中期望的v_smp電平(1.5伏)。

在操作電源電壓斜降(例如,設(shè)置為在smp模式中的每個(gè)處理器的期望smp電壓電平)之后,輸入狀態(tài)310。在此狀態(tài)中,處理系統(tǒng)200現(xiàn)在以smp模式操作,其中210a/220a、210b/220b、210c/220c和210d/220d等對(duì)應(yīng)的處理器/存儲(chǔ)器組合中的每一個(gè)根據(jù)單個(gè)時(shí)鐘和電壓信號(hào)組合clk/v_smp操作。

應(yīng)理解,在不同實(shí)施例中,可以省略或繞過(guò)fsm262執(zhí)行的一個(gè)或多個(gè)步驟。例如,如果所有電壓相同,則可以無(wú)需并可以省略v_asmp_smp_ramp_up和v_asmp_smp_ramp_dn狀態(tài)。在此實(shí)例中,這將減少任何模式切換的時(shí)延。在一些其它實(shí)施例中,必須在切換時(shí)鐘之前使時(shí)鐘電壓斜升。

現(xiàn)轉(zhuǎn)向圖4,示出(圖2中示出的)時(shí)鐘復(fù)用器272的一個(gè)電路實(shí)施方案。在此實(shí)施例中,時(shí)鐘復(fù)用器272是“無(wú)干擾的”,這意味著在切換期間不存在干擾??梢葬槍?duì)時(shí)鐘復(fù)用器272使用其它合適的電路實(shí)施方案,且本領(lǐng)域一般技術(shù)人員將容易理解的是,可以使用其它電路執(zhí)行無(wú)干擾復(fù)用器切換。

轉(zhuǎn)向圖5,示出(圖2中示出的)帶旁路的cdc電路230的一個(gè)電路實(shí)施方案。應(yīng)理解,在現(xiàn)有技術(shù)asmp系統(tǒng)(見(jiàn)圖1)中,cdc電路130各自包含設(shè)置在對(duì)應(yīng)的處理器210與二級(jí)緩存部分220之間的兩個(gè)異步跨時(shí)鐘域(clockdomaincrossing,cdc)電路131a、131b。如將了解,異步cdc電路131在本領(lǐng)域中是已知的,因此,本領(lǐng)域一般技術(shù)人員將理解如何實(shí)施此類功能。這些cdc電路和/或其功能也可以在本領(lǐng)域中稱為時(shí)鐘切換電路,或稱為處理器與二級(jí)緩存之間的異步fifo橋。

如圖5所示,帶旁路的cdc電路230進(jìn)一步包含與異步cdc電路131a相關(guān)聯(lián)的第一復(fù)用器272a、第一分用器273a和第一旁路管線231a。如圖5所示,第二復(fù)用器272b、第二分用器273b和第二旁路管線231b與異步cdc電路131b相關(guān)聯(lián)。當(dāng)在cdc電路230中在模式之間(例如,在cdc異步模式與同步旁路模式之間)切換時(shí),cdc電路230執(zhí)行“無(wú)干擾”切換以確保沒(méi)有因潛在干擾所致的故障。

本領(lǐng)域一般技術(shù)人員將理解,在smp模式(select_asmp_clk信號(hào)未得到確證)中,來(lái)自處理器(例如,210a)的數(shù)據(jù)在前往二級(jí)緩存(例如,220a)時(shí)繞過(guò)異步cdc電路131a,而來(lái)自二級(jí)緩存(例如,220a)的數(shù)據(jù)在前往處理器(例如,210a)時(shí)繞過(guò)異步cdc電路131b。相反,當(dāng)在asmp模式(select_asmp_clk信號(hào)得到確證并且cache_clk和cpu_clk信號(hào)可以不同)中時(shí),來(lái)自處理器(例如,210a)的數(shù)據(jù)在前往二級(jí)緩存(例如,220a)時(shí)通過(guò)異步cdc電路131a處理,而來(lái)自二級(jí)緩存(例如,220a)的數(shù)據(jù)在前往處理器(例如,210a)時(shí)通過(guò)異步cdc電路131b處理。異步cdc電路131a、131b用以確保根據(jù)預(yù)定義順序的從一個(gè)時(shí)鐘域到另一時(shí)鐘域的數(shù)據(jù)傳送,例如,首先接收到的數(shù)據(jù)首先輸出。與一個(gè)時(shí)鐘域中的時(shí)鐘同步的傳入數(shù)據(jù)將與另一時(shí)鐘域中的時(shí)鐘重新同步。異步fifo通常為接口處的數(shù)據(jù)緩存器提供一些時(shí)延。

當(dāng)在同步模式中時(shí),通常將根據(jù)cpu_clk自cpu_clk(例如,除以1或除以3)導(dǎo)出cache_clk。換句話說(shuō),它們可以相等,并且cpu_clk通常是cache_clk的整數(shù)倍(例如,cpu_clk=3*cache_clk)。兩個(gè)時(shí)鐘在本質(zhì)上是同步的。數(shù)據(jù)通常以少得多的時(shí)延同步跨越接口。

復(fù)用器272a、272b可以與圖4中示出的無(wú)干擾時(shí)鐘復(fù)用器272相同。分用器273a、273b可以在本質(zhì)上或電路上類似于復(fù)用器,但是執(zhí)行分用功能。在一個(gè)優(yōu)選實(shí)施例中,這些分用器也是無(wú)干擾的(執(zhí)行無(wú)干擾切換)。

現(xiàn)轉(zhuǎn)向圖6,示出說(shuō)明根據(jù)本發(fā)明的處理系統(tǒng)200a的另一實(shí)施例的詳圖。處理系統(tǒng)200a與圖2中示出的處理系統(tǒng)200相同,除以下兩點(diǎn)外:(1)clk_0信號(hào)用作當(dāng)處于asmp模式時(shí)的clk_0信號(hào)和當(dāng)處于smp模式時(shí)的clk(smp)信號(hào)兩者;以及(2)clk_ch0信號(hào)用作當(dāng)處于asmp模式時(shí)的clkch_0信號(hào)和當(dāng)處于smp模式時(shí)的clkch(smp)信號(hào)兩者。這排除了對(duì)與處理器/二級(jí)緩存對(duì)(210a、220a)相關(guān)聯(lián)的前兩個(gè)復(fù)用器272的需要。另外,提供修改后的時(shí)鐘產(chǎn)生模塊250以實(shí)施這些時(shí)鐘信號(hào)差異,并且還包含了修改后的fsm262a。

如將了解,圖6中示出的處理系統(tǒng)200a進(jìn)一步包含fsm262a執(zhí)行或?qū)嵤┑倪^(guò)程或方法300a。如將了解,fsm262a的過(guò)程/功能與fsm262的過(guò)程/功能相同,除排除了狀態(tài)機(jī)中的狀態(tài)360以外。圖6a示出fsm262a,與圖3a中示出的fsm262相比,容易理解的是,所有其余的狀態(tài)和轉(zhuǎn)換基本上相同。如將了解,fsm262a的過(guò)程或方法流程類似于圖3b和3c中示出的fsm262的過(guò)程或方法流程,除如所論述的修改以外。出于簡(jiǎn)潔的目的,本文中已經(jīng)省略這些類似的過(guò)程或流程圖。

現(xiàn)轉(zhuǎn)向圖7,示出說(shuō)明根據(jù)本發(fā)明的另一處理系統(tǒng)200b的更具體實(shí)施例的詳圖。處理系統(tǒng)200b類似于圖2中示出的處理系統(tǒng)200,除多處理器內(nèi)核和緩存子系統(tǒng)205b包含特定架構(gòu)外。圖7示出并入特定架構(gòu)-具有八個(gè)(8)處理器內(nèi)核710(a到h)和兩組(2)二級(jí)緩存720(a到b)的arm的big-little多處理器子系統(tǒng)的本發(fā)明教示的實(shí)例應(yīng)用?;趦山M二級(jí)緩存,系統(tǒng)200b僅需要兩級(jí)處理器/二級(jí)緩存對(duì)。此外,在其中示出的包含230、240、250、260和270的各種組件可以與圖2中示出的那些組件相同,并且當(dāng)考慮到處理器和緩存子系統(tǒng)205b的特定架構(gòu)時(shí)這些組件可能需要進(jìn)行一些輕微修改。本領(lǐng)域技術(shù)人員將容易理解這些修改。另外,在其它實(shí)施例中描述的概念,例如在圖6中示出的概念,也可以在圖7的系統(tǒng)中實(shí)施。

除上文(相對(duì)于圖1到8)所描述的用于實(shí)施smp與asmp之間的切換的示意性組件、硬件和方法之外,本發(fā)明還進(jìn)一步描述啟動(dòng)和控制模式切換的實(shí)例方法和過(guò)程。

引入smp與asmp之間的動(dòng)態(tài)模式切換,其可以基于業(yè)務(wù)類型、處理器等待時(shí)間、負(fù)荷不平衡信息和/或功耗。如將了解,可以分析其它因素和其它類型的信息并形成改變(或維持)模式的決策基礎(chǔ)。例如,可以在負(fù)荷輕時(shí)、或在負(fù)荷重因而使用了所有cpu內(nèi)核時(shí)和/或在一級(jí)緩存未命中率高時(shí)選擇smp模式,而針對(duì)重的和/或不平衡的負(fù)荷可以選擇asmp模式。

也可以例如基于處理類型(例如,計(jì)算密集、時(shí)間關(guān)鍵、等)或特定應(yīng)用或應(yīng)用程序(例如,應(yīng)用程序選擇使用哪種模式)實(shí)施靜態(tài)(即,手動(dòng))模式切換。

本文中還描述了可以用來(lái)實(shí)時(shí)促進(jìn)智能模式選擇的學(xué)習(xí)機(jī)構(gòu)或過(guò)程。例如,學(xué)習(xí)系統(tǒng)可以確定smp或asmp模式是否將針對(duì)特定業(yè)務(wù)或處理情境消耗較低功率。

現(xiàn)轉(zhuǎn)向圖8,在概念上示出啟動(dòng)和控制smp/asmp模式切換的架構(gòu)(例如,方法、過(guò)程、系統(tǒng))800。模式選擇可以基于期望的處理或應(yīng)用程序的類型以及其它信息或因素。如圖所示,處理或應(yīng)用程序802可以是瀏覽器應(yīng)用程序802a、流媒體應(yīng)用程序802b、游戲應(yīng)用程序802c或?qū)Ш?02d。還可以考慮其它因素/信息804。

舉例來(lái)說(shuō),假設(shè)流媒體應(yīng)用程序802b需要多處理,模式選擇設(shè)備810確定應(yīng)以smp模式還是asmp模式執(zhí)行與所述應(yīng)用程序相關(guān)聯(lián)的處理任務(wù)。系統(tǒng)軟件/os進(jìn)行此確定并做出決策。系統(tǒng)可以分配單個(gè)處理器向控制器發(fā)布命令,但是通常在系統(tǒng)層級(jí)/os層級(jí)實(shí)施決策。此決策可以基于靜態(tài)信息、動(dòng)態(tài)信息或其組合。在一個(gè)實(shí)例中,可以預(yù)定所有視頻編碼應(yīng)用程序?qū)⑹褂胹mp模式。在另一實(shí)例中,所有視頻流媒體應(yīng)用程序?qū)⑹褂胊smp模式,除非cpu的當(dāng)前負(fù)荷如此重以致使用所有cpu內(nèi)核??梢跃幊滩⑹褂闷渌兓问揭詫?shí)施有關(guān)是否從一個(gè)模式切換至另一個(gè)模式的決策。

在一個(gè)實(shí)施例中,當(dāng)要求單處理任務(wù)時(shí)可以查詢查找表。在另一實(shí)施例中,當(dāng)存在多處理任務(wù)時(shí),功率比較可為用于選擇模式的因素。例如,當(dāng)用戶在聽(tīng)音樂(lè)的同時(shí)正在寫電子郵件,則可以選擇asmp。

在確定應(yīng)選擇哪種模式之后,設(shè)備810發(fā)出關(guān)于select_asmp_mode控制信號(hào)的適當(dāng)?shù)男盘?hào)(例如,高/低)(見(jiàn)圖2)。如將了解,當(dāng)前操作模式可已經(jīng)是選中的模式(且在此情況下select_asmp_mode信號(hào)將不轉(zhuǎn)換)。

取決于select_asmp_mode信號(hào),系統(tǒng)200將以asmp模式(820)或smp模式(830)操作。當(dāng)在asmp模式中時(shí),內(nèi)核1(元件210a、220a、230a)、內(nèi)核2(元件210b、220b、230b)、內(nèi)核3(元件210c、220c、230c)以及內(nèi)核4(元件210d、220d、230d)各自以獨(dú)立的時(shí)鐘信號(hào)/頻率和電源電壓操作。當(dāng)在smp模式中時(shí),內(nèi)核1到內(nèi)核4以相同的時(shí)鐘信號(hào)/頻率和電源電壓操作。上文已經(jīng)更充分地描述了smp和asmp模式(和模式切換)的細(xì)節(jié)。

現(xiàn)轉(zhuǎn)向圖9,示出根據(jù)本發(fā)明的實(shí)例模式切換方法或過(guò)程900。在系統(tǒng)200的操作期間,連續(xù)監(jiān)控一級(jí)緩存(特定于處理器內(nèi)核)未命中率(步驟902)。將未命中率與預(yù)定閾值進(jìn)行比較(步驟904)。如果此未命中率高(超出閾值),過(guò)程確定系統(tǒng)200的當(dāng)前處理模式是否是asmp且其它c(diǎn)pu的負(fù)荷是否重/輕(使用另一閾值)(步驟906)。如果是,系統(tǒng)200從asmp模式切換至smp模式(步驟908)。如果否,系統(tǒng)200繼續(xù)處于asmp模式。

如果一級(jí)緩存未命中率不高,過(guò)程確定系統(tǒng)200的當(dāng)前處理模式是否是smp且處理負(fù)荷是否重且不平衡(步驟910)。如果是,系統(tǒng)200從smp模式切換至asmp模式(步驟912)。如果否,系統(tǒng)200繼續(xù)處于smp模式。

圖9中示出的過(guò)程900還包含任選的智能學(xué)習(xí)過(guò)程。當(dāng)系統(tǒng)200從asmp模式切換至smp模式(步驟908)或從smp模式切換至asmp模式(步驟912)時(shí),將與對(duì)切換的確定相關(guān)的情境信息記錄在學(xué)習(xí)系統(tǒng)數(shù)據(jù)庫(kù)中(步驟920)。情境信息可以是系統(tǒng)做出對(duì)切換模式的決策所使用的任何部分或全部信息。在示出的實(shí)例中,情境信息可以包含一級(jí)緩存未命中率和負(fù)荷信息(輕/重,平衡/不平衡)。

現(xiàn)轉(zhuǎn)向圖10,示出基于歷史數(shù)據(jù)和來(lái)自先前經(jīng)驗(yàn)的理解的模式切換方法或過(guò)程100的實(shí)例。在操作期間,系統(tǒng)200定期獲得動(dòng)態(tài)系統(tǒng)信息(例如,當(dāng)前情境信息)并搜索學(xué)習(xí)系統(tǒng)數(shù)據(jù)庫(kù)(步驟1002)。將當(dāng)前情境信息與存儲(chǔ)在學(xué)習(xí)系統(tǒng)數(shù)據(jù)庫(kù)中的情境信息進(jìn)行比較以確定是否存在匹配(步驟1004)。如果是,系統(tǒng)200根據(jù)與匹配情境信息相關(guān)聯(lián)的信息在asmp模式與smp模式之間切換(步驟1006)。如將了解,這可以產(chǎn)生模式切換,但也可以使得維持當(dāng)前模式操作。如果否,系統(tǒng)執(zhí)行動(dòng)態(tài)smp/asmp選擇和學(xué)習(xí)系統(tǒng)訓(xùn)練,例如圖9中描述的過(guò)程/方法。

圖11示出根據(jù)本發(fā)明的實(shí)例靜態(tài)模式切換方法或過(guò)程1100。一般來(lái)說(shuō),此過(guò)程基于靜態(tài)或“手動(dòng)”信息或因素1102確定系統(tǒng)200應(yīng)以smp模式還是asmp模式操作。例如,可以基于多種信息或因素“靜態(tài)地”分配哪種模式的確定,多種信息或因素例如用戶配置文件1102a、應(yīng)用程序管理1102b、功率節(jié)省模式1102c和其它信息或要求1102n。

系統(tǒng)200基于適用的信息或輸入確定其應(yīng)以smp模式還是asmp模式操作(1104)。例如,如果指定用戶預(yù)置文件與特定模式相關(guān)聯(lián),意味著與指定用戶相關(guān)聯(lián)的處理應(yīng)始終以特定模式來(lái)執(zhí)行,那么系統(tǒng)200將在必要時(shí)切換至特定模式以進(jìn)行處理。在另一實(shí)例中,如果特定應(yīng)用程序應(yīng)始終以一個(gè)模式來(lái)執(zhí)行,那么系統(tǒng)200將以特定模式執(zhí)行針對(duì)所述應(yīng)用程序的處理,并且將在必要時(shí)切換。在又另一實(shí)例中,如果系統(tǒng)200位于功率節(jié)省模式中,那么所述模式可要求系統(tǒng)200以asmp或smp模式操作,無(wú)論哪個(gè)模式均已經(jīng)被編程為將節(jié)省功率的模式。

如圖所示,系統(tǒng)200確定應(yīng)以smp模式(或asmp模式)執(zhí)行處理任務(wù)。如果應(yīng)使用smp模式而系統(tǒng)目前并不處于smp模式,那么系統(tǒng)從asmp模式切換至smp模式(步驟1106)。類似地,如果應(yīng)使用asmp模式(不是smp模式)而系統(tǒng)目前處于smp模式,那么系統(tǒng)從smp模式切換至asmp模式(步驟1108)。

如將了解,在一個(gè)實(shí)施例中,本文中所描述的系統(tǒng)、過(guò)程、方法和設(shè)備可以用于移動(dòng)環(huán)境中,包含并入移動(dòng)設(shè)備/小型計(jì)算設(shè)備或基站內(nèi)等。此類設(shè)備可以例如用于傳輸和/或接收無(wú)線信號(hào)。所述設(shè)備可以是任何合適的終端用戶設(shè)備,并且可以包含例如用戶設(shè)備/裝置(userequipment,ue)、無(wú)線傳輸/接收單元(wirelesstransmit/receiveunit,wtru)、移動(dòng)臺(tái),固定或移動(dòng)用戶單元、尋呼機(jī)、蜂窩電話、個(gè)人數(shù)字助理(personaldigitalassistant,pda)、智能電話,膝上型電腦,計(jì)算機(jī),觸摸墊、無(wú)線傳感器、可穿戴電子設(shè)備或消費(fèi)型電子設(shè)備等此類設(shè)備(或可以稱為此類設(shè)備)。

設(shè)備將包含至少一個(gè)處理系統(tǒng)200(如本文所描述),所述處理系統(tǒng)實(shí)施設(shè)備的各種處理操作。這可以包含例如信號(hào)編碼、數(shù)據(jù)處理、視頻/音頻處理、功率控制、輸入/輸出處理或針對(duì)設(shè)備預(yù)期的任何其它功能。

處理系統(tǒng)200還支持本文中所描述的方法和教示,并且可以包含另外的組件和處理器(例如,微控制器、數(shù)字信號(hào)處理器、現(xiàn)場(chǎng)可編程門陣列或?qū)S眉呻娐?。

結(jié)合處理系統(tǒng)200的設(shè)備還可包含至少一個(gè)收發(fā)器,其用于調(diào)制數(shù)據(jù)或通過(guò)至少一個(gè)天線傳輸?shù)钠渌鼉?nèi)容。收發(fā)器還用于解調(diào)制數(shù)據(jù)或通過(guò)至少一個(gè)天線接收到的其它內(nèi)容。每個(gè)收發(fā)器包含產(chǎn)生用于無(wú)線傳輸?shù)男盘?hào)和/或處理無(wú)線接收到的信號(hào)的任何合適結(jié)構(gòu)。每個(gè)天線包含用于傳輸和/或接收無(wú)線信號(hào)的任何合適結(jié)構(gòu)。在設(shè)備中可以使用一個(gè)或多個(gè)收發(fā)器,且可以使用一個(gè)或多個(gè)天線。

這些設(shè)備還可包含一個(gè)或多個(gè)輸入/輸出設(shè)備以促進(jìn)與用戶的交互。每個(gè)輸入/輸出設(shè)備包含用于向用戶提供信息或從用戶接收信息的任何合適結(jié)構(gòu),例如揚(yáng)聲器、麥克風(fēng)、小鍵盤、鍵盤、顯示器或觸摸屏。

另外,這些設(shè)備可以使用上文所描述的存儲(chǔ)器,或可以包含其它存儲(chǔ)器,用于存儲(chǔ)由設(shè)備使用的、產(chǎn)生的或收集的指令和數(shù)據(jù)。例如,存儲(chǔ)器可以存儲(chǔ)由處理系統(tǒng)200執(zhí)行的軟件或固件指令。其它存儲(chǔ)器可以包含任何合適的易失性和/或非易失性存儲(chǔ)和檢索設(shè)備??梢允褂萌魏魏线m類型的存儲(chǔ)器,例如隨機(jī)存取存儲(chǔ)器(randomaccessmemory,ram)、只讀存儲(chǔ)器(readonlymemory,rom)、硬盤、光碟、用戶識(shí)別模塊(subscriberidentitymodule,sim)卡、記憶棒、安全數(shù)字(securedigital,sd)存儲(chǔ)卡等。

本領(lǐng)域技術(shù)人員已知關(guān)于移動(dòng)/小型計(jì)算設(shè)備的額外細(xì)節(jié)。由此,為了清楚起見(jiàn),此處省略這些細(xì)節(jié)。

本文中論述的圖12至圖19,以及在所述專利文檔中說(shuō)明的各種實(shí)施例和下文描述的本發(fā)明的原理僅借助于說(shuō)明,而不應(yīng)以任何方式理解為對(duì)本發(fā)明范圍的限制。本領(lǐng)域技術(shù)人員將理解,本文中描述的原理可以通過(guò)任何類型的設(shè)置合理的設(shè)備或系統(tǒng)來(lái)實(shí)施。

一般來(lái)說(shuō),在本申請(qǐng)案中相對(duì)于圖12到19示出的實(shí)施例描述一種具有可在smp與asmp這兩種操作模式之間切換的多個(gè)處理器/內(nèi)核的處理系統(tǒng)。所述系統(tǒng)包含實(shí)現(xiàn)這兩種模式之間的控制和切換的硬件裝置。在硬件內(nèi),當(dāng)從操作系統(tǒng)(operatingsystem,os)或其它軟件/硬件接收到在smp與asmp之間進(jìn)行切換的切換命令后,執(zhí)行一連串或一系列動(dòng)作以控制多個(gè)處理器和存儲(chǔ)器的時(shí)鐘和電壓。切換命令的產(chǎn)生可以按需要基于一個(gè)或多個(gè)因素,例如負(fù)荷、緩存未命中率、功耗原因等。裝置確保系統(tǒng)在從一個(gè)模式轉(zhuǎn)換為另一個(gè)模式期間不發(fā)生故障,并且處理器/存儲(chǔ)器的時(shí)鐘無(wú)干擾地切換。所述裝置/方法將軟件/os干預(yù)減到最小并具有更快的模式切換速度。

圖12到19中描述的實(shí)施例類似于圖1到11中描述的那些實(shí)施例,然而,asmp模式通常是指這樣的多處理:使用一組(多個(gè))內(nèi)核,其中能夠使用與組內(nèi)的其它內(nèi)核相同時(shí)鐘頻率和相同電源電壓操作的至少一個(gè)內(nèi)核(或更多,但不到全部?jī)?nèi)核)被動(dòng)態(tài)地切換或用于使用不同時(shí)鐘頻率和電源電壓。以此方式,該組內(nèi)核以smp模式或asmp模式操作,但是該組中的至少一個(gè)(并非全部)內(nèi)核具有不同的時(shí)鐘頻率和電源電壓。

如將了解,本文中所使用的術(shù)語(yǔ)“內(nèi)核”可以指單個(gè)處理器、cpu或處理內(nèi)核。該定義還可以擴(kuò)展成描述或指代具有多個(gè)處理器、cpu或處理內(nèi)核的“內(nèi)核”。因此,本文中術(shù)語(yǔ)“內(nèi)核”的使用不限于單個(gè)處理元件,而是可包含一組相同的處理元件。另外,術(shù)語(yǔ)“內(nèi)核”、“處理器”和“cpu”可以在本文中可互換地使用且在本文中可互換地使用。

除在smp模式與asmp模式之間動(dòng)態(tài)切換之外,所描述的這些各種實(shí)施例還可在其中在一組內(nèi)核內(nèi)接通/關(guān)掉一個(gè)或多個(gè)內(nèi)核的不同方法和系統(tǒng)中使用。

現(xiàn)轉(zhuǎn)向圖12,示出說(shuō)明根據(jù)本發(fā)明的處理系統(tǒng)1200的詳圖。

一般來(lái)說(shuō),處理系統(tǒng)1200包含可在smp和asmp這兩種操作模式之間切換的一組(多個(gè))處理器。在smp模式中,所有處理器使用相同的時(shí)鐘頻率和電源電壓操作,而在asmp模式中(在下文描述的不同實(shí)施例中),至少一個(gè)第一處理器用于使用(1)與其余處理器的時(shí)鐘頻率和電源電壓不同的時(shí)鐘頻率和電源電壓或(2)與其它處理器相同的時(shí)鐘頻率和電源電壓操作。

所述系統(tǒng)包含實(shí)現(xiàn)第一處理器在兩個(gè)不同時(shí)鐘頻率和電源電壓之間的控制和切換的硬件裝置。在硬件內(nèi),當(dāng)從操作系統(tǒng)(operatingsystem,os)或其它軟件/硬件接收到在smp與asmp之間進(jìn)行切換的切換命令后,執(zhí)行一連串或一系列動(dòng)作以控制第一處理器和存儲(chǔ)器的時(shí)鐘和電壓。切換命令的產(chǎn)生可以按需要基于一個(gè)或多個(gè)因素,例如負(fù)荷、緩存未命中率、功耗原因等。裝置確保第一處理器在從一個(gè)模式轉(zhuǎn)換為另一個(gè)模式期間不發(fā)生故障,并且處理器/存儲(chǔ)器的時(shí)鐘無(wú)干擾地切換。所述裝置/方法將軟件/os干預(yù)減到最小并具有更快的模式切換速度。

如圖所示,處理系統(tǒng)1200包含多處理器內(nèi)核和緩存子系統(tǒng)1205,所述子系統(tǒng)具有包含1210a(cpua)、1210c(cpuc)、1210d(cpud)和1210b(cpub)的多個(gè)處理器1210,所述多個(gè)處理器具有相對(duì)應(yīng)的二級(jí)緩存存儲(chǔ)器部分1220(1220a和1220b)、跨域時(shí)鐘(cross-domainclock,cdc)電路1230a和帶旁路的cdc電路1230b。雖然示出四個(gè)處理器1210(以及相應(yīng)存儲(chǔ)器和電路),但是處理器的數(shù)目可以更少或更多,但是將包含至少兩個(gè)。如將了解,每個(gè)處理器1210可以包含一個(gè)或多個(gè)處理器。

處理系統(tǒng)1200進(jìn)一步包含電源管理控制(powermanagementcontrol,pmic)電路1240,用于產(chǎn)生至少兩個(gè)電源電壓信號(hào)(例如,v0、v1)以用于向處理器、緩存和cdc供電。類似地,時(shí)鐘產(chǎn)生電路1250產(chǎn)生具有各種預(yù)定時(shí)鐘頻率的多個(gè)時(shí)鐘信號(hào)以用于處理器、緩存和cdc的計(jì)時(shí)操作。

在一個(gè)實(shí)施例中,除pmic電路1240之外,處理系統(tǒng)1200設(shè)置于或以其它方式位于單個(gè)集成半導(dǎo)體襯底/裸片上(或在設(shè)置在多襯底ic封裝內(nèi)的多個(gè)半導(dǎo)體襯底內(nèi))。在另一實(shí)施例中,pmic電路1240也可以包含于單個(gè)集成半導(dǎo)體襯底/裸片上。

如圖所示,處理系統(tǒng)1200還包含控制器1260(所述控制器也可以稱為模式控制器)和時(shí)鐘切換電路(或模塊)1270。如將理解,控制器1260輸出各種控制信號(hào)用于控制時(shí)鐘產(chǎn)生電路1250、pmic電路1240、“帶旁路的cdc電路”1230b和時(shí)鐘切換電路1270的功能和操作。

時(shí)鐘產(chǎn)生電路1250包含用于產(chǎn)生多個(gè)時(shí)鐘信號(hào)所必需的電路和元件,包含:用于總體控制所有處理器210的操作速度的一個(gè)smp處理器時(shí)鐘信號(hào)(clk)、用于控制緩存部分1220a的操作速度的一個(gè)smp存儲(chǔ)器時(shí)鐘信號(hào)(clkch)、使得能夠獨(dú)立控制處理器1210b的操作速度的至少一個(gè)asmp處理器時(shí)鐘信號(hào)(clk0)、以及使得能夠獨(dú)立控制緩存存儲(chǔ)器部分1220b的操作速度的至少一個(gè)asmp存儲(chǔ)器時(shí)鐘信號(hào)(clkch0)。通過(guò)電路1250無(wú)干擾地啟用或停用任何這些時(shí)鐘。時(shí)鐘產(chǎn)生電路1250還產(chǎn)生供控制器1260使用的控制器時(shí)鐘信號(hào)(clk_fsm)。

pmic電路1240包含用于產(chǎn)生供子系統(tǒng)1205的對(duì)應(yīng)部分使用的多個(gè)操作電源電壓或信號(hào)所必需的電路和元件。如圖所示,pmic電路1240產(chǎn)生并輸出為處理器供電的至少兩個(gè)操作電源電壓(v0、v1)。如圖所示,操作電源電壓v0為處理器1210a、1210c、1210d和與這些處理器相關(guān)聯(lián)的緩存存儲(chǔ)器部分1220a供電。操作電源電壓v1為處理器1210b、其相關(guān)聯(lián)的緩存存儲(chǔ)器部分1220b和帶旁路的cdc電路1230b供電等。如本領(lǐng)域技術(shù)人員將理解,當(dāng)處理器/存儲(chǔ)器在較高時(shí)鐘速度下操作時(shí),需要且可能必需也以較高電源電壓操作所述處理器/存儲(chǔ)器。另外,當(dāng)不使用內(nèi)核時(shí),可以將其功率降級(jí)和/或停用時(shí)鐘。例如,可以停用處理器1210b的操作電源電壓v1和/或可以停用處理器1210b的時(shí)鐘輸入(例如,沒(méi)有輸入時(shí)鐘)。

將理解,時(shí)鐘產(chǎn)生電路1250還可包含實(shí)現(xiàn)所產(chǎn)生時(shí)鐘信號(hào)中的每一個(gè)的可編程性的功能和電路。在一個(gè)實(shí)施例中,時(shí)鐘信號(hào)中的每一個(gè)可以針對(duì)許多可能頻率中的一種可編程(例如,clk可以在例如300mhz到3ghz的范圍之間可編程)。在另一實(shí)施例中,僅某些時(shí)鐘信號(hào)可以是可編程的,而在其它實(shí)施例中,每個(gè)時(shí)鐘信號(hào)的頻率是預(yù)定且固定的。在又另一個(gè)實(shí)施例中,頻率可以相對(duì)于彼此固定,但是可以作為一組可編程。

類似地,pmic電路1240也可包含為所產(chǎn)生操作供電電壓v0、v1中的每一個(gè)提供可編程性的功能和電路。在一個(gè)實(shí)施例中,每個(gè)電源可以針對(duì)許多可能電壓電平中的一種可編程(例如,電壓可以在例如0.5伏和3.3伏的范圍之間可編程)。在另一實(shí)施例中,僅某些供電電壓可以是可編程的,而在其它實(shí)施例中,每個(gè)電源的電壓電平是預(yù)定且固定的。在又另一個(gè)實(shí)施例中,電壓電平可以相對(duì)于彼此固定,但是可以作為一組可編程。雖然未示出,但在另一實(shí)施例中,除示出的兩個(gè)操作供電電壓之外還可以產(chǎn)生基極操作供電電壓。在這種情況下,基極供電電壓和另一個(gè)供電電壓可以用作至復(fù)用電路(類似于時(shí)鐘切換電路1270中示出的復(fù)用器1272)的輸入。

模式或切換控制器1260包含有限狀態(tài)機(jī)(finitestatemachine,fsm)1262、一個(gè)或多個(gè)定時(shí)器1264和一個(gè)或多個(gè)存儲(chǔ)寄存器1266(例如配置或狀態(tài)寄存器)??刂破?260用以響應(yīng)于切換命令(select_asmp_mode)的確證而控制并執(zhí)行一系列動(dòng)作或過(guò)程。因此,在示出的實(shí)施例中,當(dāng)切換命令確證/未確證時(shí)操作模式在asmp模式與smp模式之間切換??梢允褂酶鞣N方法和機(jī)構(gòu)來(lái)產(chǎn)生切換命令,下文相對(duì)于圖13和16描述一些實(shí)例。

使用啟用信號(hào)(enable_asmp_clks、enable_smp_clk),控制器1260控制時(shí)鐘產(chǎn)生模塊1250以在smp/asmp切換之前啟用時(shí)鐘??刂破?260還控制pmic電路1240模塊以在切換之前(和在切換之后)對(duì)操作電源電壓v0、v1進(jìn)行編程或改變所述操作電源電壓。在一個(gè)實(shí)施例中,如果pmic電路1240在處理器外部(例如,芯片外),控制器1260可以經(jīng)由spmi/sbi/mipi等通信總線或接口與pmic電路1240通信。如果pmic電路不是外部電路,可以使用其它通信路徑。

可以響應(yīng)于各種事件及通過(guò)處理系統(tǒng)1200內(nèi)或處理系統(tǒng)1200外部的各種元件產(chǎn)生切換命令(select_asmp_mode)。在示出的實(shí)施例中,從多處理器內(nèi)核和緩存子系統(tǒng)1205產(chǎn)生切換命令,但在其它實(shí)施例中可以通過(guò)其它源產(chǎn)生切換命令。

當(dāng)處理器1210b出現(xiàn)從smp時(shí)鐘到asmp時(shí)鐘的實(shí)際切換時(shí)(且反之亦然),控制器1260產(chǎn)生asmp選擇信號(hào)(select_asmp_clk),使用時(shí)鐘切換電路1270內(nèi)的復(fù)用器1272使asmp時(shí)鐘信號(hào)(cll0)選擇性地復(fù)用到處理器1210b。如所理解,用于asmp模式中的處理器/cpu內(nèi)核1210b的時(shí)鐘標(biāo)示為clk0,而用于smp模式中的其余處理器/cpu內(nèi)核1210a、1220c、1210d的時(shí)鐘標(biāo)示為clk。因此,select_asmp_clk信號(hào)無(wú)干擾地選擇處理器1210b將使用哪個(gè)時(shí)鐘(clk0或clk)。在一個(gè)實(shí)施例中,當(dāng)確證select_asmp_clk時(shí)(邏輯高或“1”),選擇時(shí)鐘信號(hào)clk0并輸入到處理器/內(nèi)核1210b。當(dāng)未確證select_asmp_clk時(shí)(邏輯低或“0”),選擇時(shí)鐘clk并輸入到處理器/內(nèi)核1210b。根據(jù)fsm1262通過(guò)使用一個(gè)或多個(gè)定時(shí)器1264控制切換期間的各種事件和動(dòng)作的定時(shí)。如將在下文更詳細(xì)地描述,會(huì)使用時(shí)鐘預(yù)熱期和電壓斜升/斜降期??梢酝ㄟ^(guò)軟件或其它方法預(yù)編程或預(yù)設(shè)這些值并存儲(chǔ)在控制器中的c/s寄存器或其它存儲(chǔ)器位置(未示出)中。

處理系統(tǒng)1200中示出的大多數(shù)元件將與圖2的處理系統(tǒng)200中示出的對(duì)應(yīng)元件相同或類似(例如,1210b與210b相同或類似等等)。如將了解,雖然并沒(méi)有特別地以參考標(biāo)號(hào)標(biāo)識(shí),但是可以包含各種其它邏輯電路,例如,電平轉(zhuǎn)換。通常在信號(hào)跨越電源域時(shí)使用電平轉(zhuǎn)換。

就cdc電路1230b來(lái)說(shuō),應(yīng)理解,在smp模式(select_asmp_clk信號(hào)未確證)中,來(lái)自處理器1210b的數(shù)據(jù)在前往二級(jí)緩存1220b時(shí)繞過(guò)異步cdc電路131a,而來(lái)自二級(jí)緩存1220b的數(shù)據(jù)在前往處理器1210b時(shí)繞過(guò)異步cdc電路131b。(見(jiàn)圖5和cdc電路的隨附描述)。相反,當(dāng)在asmp模式(select_asmp_clk信號(hào)得到確證并且cache_clk和cpu_clk信號(hào)可以不同)中時(shí),來(lái)自處理器1210b的數(shù)據(jù)在前往二級(jí)緩存1220b時(shí)通過(guò)異步cdc電路131a處理,而來(lái)自二級(jí)緩存1220b的數(shù)據(jù)在前往處理器1210b時(shí)通過(guò)異步cdc電路131b處理。異步cdc電路131a、131b用以確保根據(jù)預(yù)定義順序的從一個(gè)時(shí)鐘域到另一時(shí)鐘域的數(shù)據(jù)傳送,例如,首先接收到的數(shù)據(jù)首先輸出。與一個(gè)時(shí)鐘域中的時(shí)鐘同步的傳入數(shù)據(jù)將與另一時(shí)鐘域中的時(shí)鐘重新同步。異步fifo通常為接口處的數(shù)據(jù)緩存器提供一些時(shí)延。

現(xiàn)轉(zhuǎn)向圖13,在概念上示出啟動(dòng)和控制系統(tǒng)1200內(nèi)的smp/asmp模式切換的架構(gòu)(例如,方法、過(guò)程、系統(tǒng))1300。模式選擇可以基于期望的處理或應(yīng)用程序的類型以及其它信息或因素。如圖所示,處理或應(yīng)用程序1302可以是瀏覽器應(yīng)用程序1302a、流媒體應(yīng)用程序1302b、游戲應(yīng)用程序1302c或?qū)Ш?302d。還可以考慮其它因素/信息1304。

舉例來(lái)說(shuō),假設(shè)流媒體應(yīng)用程序1302b需要多處理,模式選擇設(shè)備1310確定應(yīng)以smp模式還是asmp模式執(zhí)行與所述應(yīng)用程序相關(guān)聯(lián)的處理任務(wù)。系統(tǒng)軟件/os執(zhí)行此確定并作出決策。系統(tǒng)可以分配單個(gè)處理器向控制器發(fā)布命令,但是通常在系統(tǒng)層級(jí)/os層級(jí)實(shí)施決策。此決策可以基于靜態(tài)信息、動(dòng)態(tài)信息或其組合。在一個(gè)實(shí)例中,可以預(yù)定所有視頻編碼應(yīng)用程序?qū)⑹褂胹mp模式。在另一實(shí)例中,所有視頻流媒體應(yīng)用程序?qū)⑹褂胊smp模式,除非系統(tǒng)的當(dāng)前負(fù)荷如此重以致使用所有處理器/cpu/內(nèi)核??梢跃幊滩⑹褂闷渌兓问揭詫?shí)施有關(guān)是否從一個(gè)模式切換至另一個(gè)模式的決策。

在一個(gè)實(shí)施例中,當(dāng)要求單處理任務(wù)時(shí)可以查詢查找表。在另一實(shí)施例中,當(dāng)存在多處理任務(wù)時(shí),功率比較可為用于選擇模式的因素。例如,當(dāng)用戶在聽(tīng)音樂(lè)的同時(shí)正在寫電子郵件,則可以選擇asmp。

在確定應(yīng)選擇哪種模式之后,設(shè)備1310發(fā)出關(guān)于select_asmp_mode控制信號(hào)的適當(dāng)?shù)男盘?hào)(例如,高/低)(見(jiàn)圖12)。如將了解,當(dāng)前操作模式可已經(jīng)是選中的模式(且在此情況下select_asmp_mode信號(hào)將不轉(zhuǎn)換)。

取決于select_asmp_mode信號(hào),系統(tǒng)1300將以asmp模式(1320)或smp模式(1330)操作。當(dāng)在smp模式1330中時(shí),內(nèi)核a(元件1210a、1220a、1230a)、內(nèi)核c(元件1210c、1220a、1230a)、內(nèi)核d(元件1210d、1220a、1230a)以及內(nèi)核b(元件1210b、1220b、1230b)以相同的時(shí)鐘信號(hào)/頻率和電源電壓(clk/vdd)操作。當(dāng)在asmp模式1320中時(shí),內(nèi)核a、c和d以相同的時(shí)鐘信號(hào)/頻率和電源電壓(clk1/vdd1)操作,而內(nèi)核b以與內(nèi)核a、c和d不同的時(shí)鐘信號(hào)/頻率和電源電壓(clk2/vdd2)操作。本文中已經(jīng)描述了smp/asmp模式(和模式切換)的細(xì)節(jié)。

應(yīng)理解,圖13的架構(gòu)(方法或過(guò)程)1300的描述和元件與圖8的架構(gòu)(方法或過(guò)程)1300中示出的對(duì)應(yīng)元件相同/類似,但是具有不同的時(shí)鐘和電壓配置。

現(xiàn)轉(zhuǎn)向圖14a和14b,示出圖12中示出的處理系統(tǒng)1200的替代和簡(jiǎn)化方框圖。

在圖14a中,內(nèi)核a、c和d(1210a、1210c、1210d)耦合到單個(gè)操作供電電壓1405(vdd)并耦合到單個(gè)時(shí)鐘信號(hào)1410(clk),而內(nèi)核b(1210b)耦合到操作供電電壓1415(vddb)并耦合到時(shí)鐘信號(hào)1420(clkb)。在此配置中,可以通過(guò)由單獨(dú)的輸入/輸出終端供應(yīng)的單獨(dú)的電壓軌提供vddb電源1410。

在圖14b中,內(nèi)核a、c和d(1210a、1210c、1210d)以類似方式耦合到單個(gè)操作供電電壓1405(vdd)并耦合到單個(gè)時(shí)鐘信號(hào)1410(clk)。內(nèi)核b(1210b)以類似方式耦合到操作供電電壓1415(vddb)并耦合到時(shí)鐘信號(hào)1420(clkb)。然而,內(nèi)核b耦合到衍生自供電電壓1405的操作供電電壓1430(vddb)。穩(wěn)壓器1440接收vdd、產(chǎn)生供電電壓vddb并(取決于選擇的模式)輸出vddb或vdd到內(nèi)核b。穩(wěn)壓器1440可以是芯片上的,并且包含旁路模式或功能(未示出),例如低壓差(lowdropout,ldo)穩(wěn)壓器或開(kāi)關(guān)電源(switch-modepowersupply,smps)。因此,vddb1312衍生自vdd。在旁路模式中,vddb=vdd。另外,可以通過(guò)停用穩(wěn)壓器1440由此關(guān)閉內(nèi)核b將vddb功率降級(jí)。如將了解,可以使用復(fù)用器實(shí)施穩(wěn)壓器的旁路功能并通過(guò)狀態(tài)機(jī)或其它軟件過(guò)程控制穩(wěn)壓器的旁路功能。

如將了解,在一個(gè)實(shí)施例中,在圖12中示出,兩個(gè)供電電壓vdd、vddb和兩個(gè)時(shí)鐘信號(hào)clk、clkb分別是兩個(gè)操作供電電壓v0、v1和兩個(gè)時(shí)鐘信號(hào)clk、clk0。

除示意性組件之外,上文相對(duì)于圖12到14的系統(tǒng)所描述的用于實(shí)施smp模式與asmp模式之間的切換的硬件和方法、上文相對(duì)于圖8到11所描述的用于啟動(dòng)和控制smp與asmp之間的模式切換的實(shí)例方法和過(guò)程也可以應(yīng)用于這些系統(tǒng)。必要時(shí),本領(lǐng)域技術(shù)人員將能夠易于修改那些實(shí)例方法和過(guò)程,以使得所述實(shí)例方法和過(guò)程適當(dāng)和/或適用于圖12到14中描述的系統(tǒng)(以及下文描述的那些系統(tǒng))。

下文在圖15中描述具有四(4)個(gè)處理器/內(nèi)核(a、b、c、d)的系統(tǒng)中的多處理的各種實(shí)例。這些實(shí)例僅是出于說(shuō)明性目的,并可以使用不同的實(shí)施方案、方法和標(biāo)準(zhǔn),包含具有多于或少于4個(gè)處理器/內(nèi)核(不同數(shù)目的處理器/內(nèi)核)和/或使再多一個(gè)處理器/內(nèi)核閑置(斷電、睡眠模式等)的系統(tǒng)。例如,當(dāng)處理要求為低時(shí),可以關(guān)閉一個(gè)或多個(gè)選擇處理器/內(nèi)核。一般來(lái)說(shuō),圖15示出在asmp模式1320或smp模式1320中使用不同數(shù)目的處理器/內(nèi)核(內(nèi)核a、b、c和d)的實(shí)例。這些內(nèi)核對(duì)應(yīng)于圖12的系統(tǒng)中示出的內(nèi)核。

方框1510a、1510b和1510c示出以smp模式(1330a、1330b、1330c)操作的處理器/內(nèi)核的三個(gè)不同配置。類似地,1500a、1500b和1500c示出以asmp模式(1320a、1320b、1320c)操作的處理器/內(nèi)核的三個(gè)不同配置。

方框1510a示出以smp模式操作的具有第一處理器/內(nèi)核配置的系統(tǒng),其中內(nèi)核c和d已關(guān)閉且內(nèi)核a和b正運(yùn)行。在smp模式中,內(nèi)核a和b在相同時(shí)鐘頻率和供電電壓(clk/vdd)下操作,并且內(nèi)核b還用于接收clk/vdd(例如,clk、clkch,且v1等于v0,見(jiàn)圖12)。方框1500a示出這種相同的但是處于asmp模式的處理器/內(nèi)核配置。在asmp模式中,內(nèi)核a和b在不同的時(shí)鐘頻率和供電電壓下操作,其中內(nèi)核a在clk1/vdd1下操作,內(nèi)核b在clk2/vdd2(例如,clk0、clkch0,且v1不同于v0,見(jiàn)圖12)下操作。

方框1510b示出以smp模式操作的具有第二處理器/內(nèi)核配置的系統(tǒng),其中內(nèi)核d已關(guān)閉且內(nèi)核a、c和b正運(yùn)行。在smp模式中,內(nèi)核a、c和b在相同時(shí)鐘頻率和供電電壓(clk/vdd)下操作,并且內(nèi)核b還用于接收clk/vdd(例如clk、clkch,且v1等于v0,見(jiàn)圖12)。方框1500b示出這種相同的但是處于asmp模式的處理器/內(nèi)核配置。在asmp模式中,內(nèi)核a和c在相同時(shí)鐘頻率和供電電壓clk1/vdd1下操作,內(nèi)核b在不同的時(shí)鐘頻率和供電電壓clk2/vdd2(例如,clk0、clkch0,且v1不同于v0,見(jiàn)圖12)下操作。

方框1510c示出以smp模式操作的具有第三處理器/內(nèi)核配置的系統(tǒng),其中所有內(nèi)核a、b、c和d正運(yùn)行。在smp模式中,內(nèi)核a、c和d在相同時(shí)鐘頻率和供電電壓(clk/vdd)下操作,并且內(nèi)核b還用于接收clk/vdd(例如clk、clkch,且v1等于v0,見(jiàn)圖12)。方框1500c示出這種相同的但是處于asmp模式的處理器/內(nèi)核配置。在asmp模式中,內(nèi)核a、c和d在相同時(shí)鐘頻率和供電電壓clk1/vdd1下操作,內(nèi)核b在不同的時(shí)鐘頻率和供電電壓clk2/vdd2(例如,clk0、clkch0,且v1不同于v0,見(jiàn)圖12)下操作。

在一個(gè)實(shí)施例中,當(dāng)僅需要兩個(gè)處理器/內(nèi)核時(shí),系統(tǒng)將使用內(nèi)核a(或內(nèi)核c或內(nèi)核d)和內(nèi)核b,從而為該組提供靈活性以在smp模式與asmp模式之間進(jìn)行切換。當(dāng)需要額外處理能力時(shí),可以使用其余的內(nèi)核中的一個(gè)或兩個(gè),同樣仍為該組提供靈活性以在smp模式與asmp模式之間進(jìn)行切換。如將了解,可以響應(yīng)于上文描述的任何標(biāo)準(zhǔn)或信息進(jìn)行smp模式與asmp模式之間的切換。另外,在本文中描述的任何實(shí)施例(并改變clk和vdd)中,在smp模式與asmp模式之間進(jìn)行切換所實(shí)施的方法/過(guò)程可以與相對(duì)于圖3a、3b和3c描述的方法/過(guò)程相同或類似。雖然這會(huì)要求一些修改或重新設(shè)置,但是本領(lǐng)域一般技術(shù)人員將能夠使用圖3a、3b和3c作為指導(dǎo)來(lái)實(shí)施模式之間的切換。

系統(tǒng)1200的架構(gòu)相比于系統(tǒng)200明顯減少了與smp/asmp動(dòng)態(tài)切換相關(guān)聯(lián)的成本以及硬件/軟件復(fù)雜度。例如,在具有四個(gè)處理器/內(nèi)核的mp系統(tǒng)中,對(duì)根據(jù)系統(tǒng)1200(其中僅一個(gè)處理器可動(dòng)態(tài)配置)配置的系統(tǒng)的附加成本是相較于根據(jù)系統(tǒng)200(其中所有四個(gè)處理器可動(dòng)態(tài)配置)配置的系統(tǒng)的附加成本的約三分之一。

測(cè)試和調(diào)查已經(jīng)顯示,在大多數(shù)情況下,可以通過(guò)兩個(gè)處理器滿足處理要求,并且在大多數(shù)情況下這兩個(gè)處理器將以不平衡的負(fù)荷運(yùn)行。在以兩個(gè)處理器內(nèi)核a和b操作的系統(tǒng)1200中(見(jiàn)圖12、以及圖15中示出的配置1320a和1330a),smp模式與asmp模式之間的適當(dāng)切換可以使電源效率最佳。類似地,為了獲得最大性能,所有四個(gè)處理器內(nèi)核a、b、c和d可以具有最大時(shí)鐘頻率和電源電壓的smp模式操作,這具有靈活性、功率降低而同時(shí)在需要時(shí)維持相同高端性能。系統(tǒng)1200提供了android/ios/windows等移動(dòng)高級(jí)操作系統(tǒng)(highleveloperatingsystem,hlos)的低成本、低功率和高性能之間的有益權(quán)衡,并且還適合中低層市場(chǎng)。

本領(lǐng)域一般技術(shù)人員將易于理解,如圖12到15中所示的“內(nèi)核”(例如,a、b、c、d)中的一個(gè)或多個(gè)還可以各自在每個(gè)內(nèi)核內(nèi)包含兩個(gè)或更多個(gè)處理器。在此類實(shí)施例中,每“組”處理器根據(jù)功能劃分為不同實(shí)體(或“內(nèi)核”)。例如,內(nèi)核a可以包含三個(gè)處理器,而內(nèi)核可以包含兩個(gè)處理器。在smp模式中,五個(gè)處理器全部在相同時(shí)鐘頻率和電源電壓下操作。在asmp模式中,內(nèi)核b中的處理器總體切換為不同的時(shí)鐘頻率和電源電壓。如將了解,可以基于或至少部分地基于激活/去激活系統(tǒng)中的處理器的決策來(lái)進(jìn)行在smp模式與asmp模式之間切換的決策。下文相對(duì)于圖18到19進(jìn)一步對(duì)此進(jìn)行說(shuō)明。

現(xiàn)轉(zhuǎn)向圖16,示出類似于圖13中示出的架構(gòu)(例如,方法、過(guò)程、系統(tǒng))1300的替代實(shí)施例1600。類似地,模式選擇可以基于期望的處理或應(yīng)用程序的類型以及其它信息或因素。

系統(tǒng)1600與1300之間的主要區(qū)別在于,在系統(tǒng)1600中,存在兩個(gè)或更多個(gè)處理器/內(nèi)核(內(nèi)核b、內(nèi)核e等),其可動(dòng)態(tài)配置以在與所有其它處理器/內(nèi)核相同的時(shí)鐘頻率和供電電壓下操作(smp模式)或在與其它處理器/內(nèi)核中的一些不同的時(shí)鐘頻率和供電電壓下操作(asmp模式)。換句話說(shuō),存在與圖13的系統(tǒng)1300中的內(nèi)核b類似的多個(gè)處理器/內(nèi)核。

當(dāng)在asmp模式中時(shí),整組可以分類為包含兩個(gè)子組1610和1620。在子組1610中,子組內(nèi)的所有處理器/內(nèi)核(例如,內(nèi)核a、內(nèi)核c等)僅在單個(gè)時(shí)鐘頻率和供電電壓下操作,意味著每個(gè)處理器/內(nèi)核將在一種時(shí)鐘頻率和供電電壓(clk1/vdd1)下操作。在子組1620中,所述子組內(nèi)的處理器/內(nèi)核(例如,內(nèi)核b、內(nèi)核e等)中的每一個(gè)在與clk1/vdd1不同的時(shí)鐘頻率和供電電壓(例如,clk2/vdd2)下操作。因此,子組1620內(nèi)的處理器/內(nèi)核可動(dòng)態(tài)選擇以在某一多個(gè)時(shí)鐘頻率和供電電壓(例如,clk1/vdd1、clk2/vdd2等)下操作,而子組1610內(nèi)的處理器/內(nèi)核在指定時(shí)鐘頻率和供電電壓(clk1/vdd2)下靜態(tài)地操作。

當(dāng)在smp模式中時(shí),所有處理器/內(nèi)核在相同時(shí)鐘頻率和供電電壓(clk/vdd)下操作。應(yīng)理解,在實(shí)踐中,clk/vdd與clk1/vdd1相同。

如同系統(tǒng)1300一樣,取決于select_asmp_mode信號(hào),系統(tǒng)1600將以asmp模式(1320)或smp模式(1330)操作。當(dāng)在smp模式1330中時(shí),所有內(nèi)核(例如,a、b、c、e等)以相同的時(shí)鐘信號(hào)/頻率和電源電壓(clk/vdd)操作。當(dāng)在asmp模式1320中時(shí),子組1610內(nèi)的內(nèi)核(例如,內(nèi)核a、c等)以相同時(shí)鐘信號(hào)/頻率和電源電壓(clk1/vdd1)操作,而子組1620內(nèi)的內(nèi)核(例如,內(nèi)核b、e等)以與子組1610中的內(nèi)核不同的時(shí)鐘信號(hào)/頻率和電源電壓(vclk2/vdd2)操作。本文中已經(jīng)描述了smp/asmp模式(和模式切換)的細(xì)節(jié)。類似地,可以基于或至少部分地基于激活/去激活系統(tǒng)中的處理器的決策來(lái)進(jìn)行在smp模式與asmp模式之間切換的決策。下文相對(duì)于圖18到19進(jìn)一步對(duì)此進(jìn)行說(shuō)明。

應(yīng)了解,盡管子組1620內(nèi)的所有內(nèi)核總體在相同clk2/vdd2下操作,但是在另一實(shí)施例中,那些內(nèi)核可以個(gè)別地用于在所述組內(nèi)的多個(gè)不同的時(shí)鐘頻率和供電電壓下操作(例如子組1620自身也可以具有本地smp和asmp模式)。

現(xiàn)轉(zhuǎn)向圖17,示出說(shuō)明其它實(shí)施例或架構(gòu)的兩個(gè)mp系統(tǒng)1710和1720。所述系統(tǒng)包含n數(shù)目個(gè)內(nèi)核,其個(gè)別地用于(動(dòng)態(tài)可切換)在多個(gè)不同頻率下操作,其中n為2或更多。

系統(tǒng)1710包含在第一固定時(shí)鐘頻率/供電電壓clk1/vdd1下操作的內(nèi)核a和c。內(nèi)核d在第二時(shí)鐘頻率/供電電壓clk2/vdd2下操作,而內(nèi)核b在第三時(shí)鐘頻率/供電電壓clk3/vdd3下操作。根據(jù)本文中的教示,當(dāng)系統(tǒng)處于smp模式時(shí),所有時(shí)鐘頻率和供電電壓在系統(tǒng)處于smp模式中時(shí)相等,所有時(shí)鐘頻率和供電電壓等于clk1/vdd1。當(dāng)在asmp模式中時(shí),時(shí)鐘頻率/電壓對(duì)clk1/vdd1、clk2/vdd2和clk3/vdd3不相等。系統(tǒng)1720類似于系統(tǒng)1710,但是示出內(nèi)核e也用于在第一固定clk1/vdd1下操作。因此,系統(tǒng)1710、1720包含第一組處理器(在固定clk1/vdd1下操作)和第二組處理器,在第二組處理器中每個(gè)個(gè)別處理器可動(dòng)態(tài)切換以在固定clk1/vdd1下操作(在smp模式中)或在不同的時(shí)鐘頻率/供電電壓(例如,clk2/vdd2、clk3/vdd3)下操作。

如將了解,系統(tǒng)1710、1720中可以包含任何n數(shù)目個(gè)可個(gè)別動(dòng)態(tài)切換的(clk/vdd)內(nèi)核和/或可以包含任何數(shù)目的固定的(clk1/vdd1)內(nèi)核。雖然未具體示出,但是系統(tǒng)1710、1720的動(dòng)態(tài)切換功能可以用與圖12中所闡述的類似方式實(shí)施(含有本領(lǐng)域技術(shù)人員已知的必要修改),也可以用如此文檔中所描述的其它方式實(shí)施。

下文現(xiàn)在描述關(guān)于附圖中示出和描述的系統(tǒng)1200的各種操作實(shí)例或方法。

在第一個(gè)一般操作方案中,當(dāng)一個(gè)或三個(gè)或更多個(gè)內(nèi)核有效時(shí),選擇smp模式并且所有有效處理器在相同時(shí)鐘頻率和供電電壓下操作。當(dāng)兩個(gè)內(nèi)核有效時(shí),有效處理器中的一個(gè)是內(nèi)核b且另一個(gè)有效處理器是內(nèi)核a、內(nèi)核c或內(nèi)核d,并且這兩個(gè)有效處理器可以在需要時(shí)(基于根據(jù)圖9到11和/或根據(jù)其它圖或本文中的描述而描述的過(guò)程和方法)在smp模式與asmp模式之間切換。

在第二個(gè)一般操作方案中,當(dāng)兩個(gè)內(nèi)核有效(一個(gè)有效內(nèi)核是內(nèi)核b)時(shí),兩個(gè)有效內(nèi)核用于以asmp模式操作。當(dāng)三個(gè)或更多個(gè)內(nèi)核有效時(shí),有效內(nèi)核用于以smp模式操作。

在第三個(gè)操作方案中,當(dāng)兩個(gè)內(nèi)核有效(一個(gè)有效內(nèi)核是內(nèi)核b)時(shí),兩個(gè)有效內(nèi)核最初用于以asmp模式操作。通過(guò)處于asmp模式的兩個(gè)有效內(nèi)核,可以在smp模式與asmp模式之間(基于根據(jù)圖9到11和/或根據(jù)其它圖或本文中的描述而描述的過(guò)程和方法)切換內(nèi)核。

在本文中引入且描述的另一概念是針對(duì)處理器/內(nèi)核的負(fù)荷和利用。在多處理器/內(nèi)核系統(tǒng)中,并非始終需要所有處理器/內(nèi)核。當(dāng)處理要求低時(shí),可以僅需要一個(gè)或幾個(gè)處理器,當(dāng)處理要求高時(shí),可以需要更多處理器。此概念可以引入或整合到模式選擇過(guò)程中,或模式選擇過(guò)程可以至少部分地基于處理計(jì)算要求所需的處理器的數(shù)量。

在本文中所描述的系統(tǒng)中,可以提供另外的功能(未具體示出),使得每個(gè)內(nèi)核能夠停用時(shí)鐘和/或功率降級(jí)以使處理器/內(nèi)核處于睡眠模式、停用或關(guān)機(jī)。這通過(guò)(在更少數(shù)目的處理器可以應(yīng)對(duì)處理要求時(shí))斷開(kāi)不需要的處理器而使得減小功耗。

可以實(shí)施各種過(guò)程或方法以確定需要多少處理器來(lái)滿足當(dāng)前計(jì)算要求。一旦進(jìn)行了此確定,就可以例如以下段落中描述的任何適當(dāng)?shù)捻樞蚝?或優(yōu)先順序接通/關(guān)掉內(nèi)核。

基于各種計(jì)算因素和要求(例如,負(fù)荷、隊(duì)列長(zhǎng)度、任務(wù)、線程、相依性、cpu請(qǐng)求及其類似物等),可以根據(jù)需要打開(kāi)/關(guān)閉處理器。在圖18中示出的一個(gè)實(shí)施例中,基于任務(wù)負(fù)荷確定何時(shí)應(yīng)激活額外處理器(或何時(shí)應(yīng)去激活多個(gè)有效處理器中的一個(gè))。隨著任務(wù)負(fù)荷1810增大,達(dá)到一個(gè)點(diǎn)(向上遷移閾值1820),在此點(diǎn)處期望激活額外處理器來(lái)處理增大的負(fù)荷。當(dāng)達(dá)到向上遷移閾值1820時(shí),在線引入另一處理器。使用兩個(gè)有效處理器,任務(wù)負(fù)荷1810開(kāi)始減小。當(dāng)達(dá)到一個(gè)點(diǎn)(向下遷移閾值1830)時(shí),在此點(diǎn)處期望去激活有效處理器中的一個(gè),因?yàn)榭梢酝ㄟ^(guò)一個(gè)處理器來(lái)處理當(dāng)前負(fù)荷。如圖所示,設(shè)置兩個(gè)閾值1820、1830以提供遲滯功能。

以下描述示出應(yīng)用于系統(tǒng)1200(具有如圖12中所示的特定內(nèi)核a、b、c和d)的此概念。當(dāng)可以通過(guò)單個(gè)內(nèi)核滿足處理要求時(shí),使用內(nèi)核a、c或d中的任一個(gè)并關(guān)閉其它內(nèi)核。當(dāng)處理要求需要兩個(gè)內(nèi)核時(shí),使用內(nèi)核b以及使用內(nèi)核a、c或d中的任一個(gè)并關(guān)閉其它兩個(gè)內(nèi)核。然而,應(yīng)了解,當(dāng)確定需要兩個(gè)內(nèi)核時(shí)無(wú)論哪個(gè)單個(gè)內(nèi)核有效都應(yīng)可能保留為有效內(nèi)核中的一個(gè)。當(dāng)兩個(gè)內(nèi)核有效(一個(gè)是內(nèi)核b)時(shí),使用本文中所描述的各種標(biāo)準(zhǔn),例如緩存未命中或?qū)W習(xí)系統(tǒng),以確定是否在smp模式與asmp模式之間進(jìn)行切換(例如,切換至較低功率)。

當(dāng)處理要求需要三個(gè)內(nèi)核時(shí),使用內(nèi)核b以及使用內(nèi)核a、c或d中的兩個(gè)。當(dāng)三個(gè)內(nèi)核有效(一個(gè)是內(nèi)核b)時(shí),可以使用本文中所描述的各種標(biāo)準(zhǔn),例如緩存未命中或?qū)W習(xí)系統(tǒng),以確定是否在smp模式與asmp模式之間進(jìn)行切換(例如,切換至較低功率)。類似地,在計(jì)算要求需要所有四個(gè)內(nèi)核的情況下,可以在必要時(shí)實(shí)施smp模式與asmp模式之間的切換。

現(xiàn)轉(zhuǎn)向圖19,示出與smp/asmp模式選擇過(guò)程整合的用于添加/移除處理器的過(guò)程1900的一般流程圖。取決于所使用的特定架構(gòu)(例如,內(nèi)核的數(shù)目)和所期望的功能或應(yīng)用,可以對(duì)示出的過(guò)程作出各種重新設(shè)置或修改。如將了解,并未示出可在此類過(guò)程中使用的所有步驟或元件。

在單個(gè)處理器操作時(shí)示出過(guò)程1900。當(dāng)僅需要單個(gè)處理器時(shí),mp系統(tǒng)在單個(gè)固定的clk1/vdd1下以smp模式操作(步驟1910)。在處理操作期間的某一時(shí)刻,確定是否需要第二處理器來(lái)處理提高的處理要求(或出于一些其它原因)(步驟1915)??梢远ㄆ诨蝽憫?yīng)于操作信息作出此確定。

響應(yīng)于需要另一處理器的確定,根據(jù)設(shè)計(jì)者期望,過(guò)程1900沿著三個(gè)可能路徑1920a、1920a、1920c中的一個(gè)進(jìn)行。這三個(gè)替代方案是關(guān)于在激活第二處理器后兩個(gè)有效處理器將默認(rèn):(1)smp模式(1920a)、(2)asmp模式(1920b)、還是(3)根據(jù)操作系統(tǒng)要求或過(guò)程模式選擇信息起作用并確定應(yīng)選擇smp模式或asmp模式(1920c)。

如果選擇默認(rèn)smp模式(1920a),那么第二處理器自動(dòng)地用于接收clk1/vdd1(當(dāng)?shù)谝惶幚砥饕惨詂lk1/vdd1操作時(shí))并根據(jù)clk1/vdd1操作。相反,如果選擇默認(rèn)asmp模式(1920b),那么第二處理器自動(dòng)地用于接收與clk1/vdd1(當(dāng)?shù)谝惶幚砥饕詂lk1/vdd1操作時(shí))不同的clk2/vdd2并根據(jù)clk2/vdd2操作。如果選擇第三默認(rèn)過(guò)程(1920c),系統(tǒng)將執(zhí)行“初始”smp/asmp模式選擇/切換過(guò)程(未示出)以確定是否激活第二處理器,使得兩個(gè)處理器開(kāi)始以smp模式或asmp模式操作。

一旦兩個(gè)處理器均有效,且(1)以默認(rèn)smp模式操作、(2)以默認(rèn)asmp模式操作、或(3)以選中的smp或asmp模式操作,所述過(guò)程繼續(xù)smp/asmp模式選擇/切換過(guò)程(步驟1930)。在此過(guò)程中,mp系統(tǒng)根據(jù)各種操作參數(shù)(如本文中在上文所描述的在長(zhǎng)度上)確定是否在smp模式/asmp模式之間動(dòng)態(tài)切換。

同時(shí),系統(tǒng)繼續(xù)評(píng)估對(duì)更多或更少計(jì)算處理功率等的需要,并且可以確定處理要求是否處于可以使兩個(gè)有效處理器中的一個(gè)不使用的級(jí)別(步驟1940)。如果不是,那么過(guò)程繼續(xù)實(shí)施選擇/切換過(guò)程1930。如果是,過(guò)程返回至使用單個(gè)處理器(在smp模式中)(步驟1910)。過(guò)程還可以確定處理要求是否處于需要第三處理器的級(jí)別(步驟1950)。如果不是,那么過(guò)程繼續(xù)實(shí)施選擇/切換過(guò)程1930。如果是,過(guò)程進(jìn)行并激活第三處理器(步驟1960)。如果目前有效的兩個(gè)處理器處于asmp模式,那么它們被切換至smp模式并且所有三個(gè)處理器以smp模式操作。

在另一實(shí)施例中(另外參考圖15和16),可以通過(guò)一步法或兩步法執(zhí)行smp模式/asmp模式之間的切換同時(shí)又打開(kāi)/關(guān)閉處理器中的一個(gè)。例如,假設(shè)系統(tǒng)根據(jù)圖15中的1500a示出的配置操作(即,asmp模式,具有2個(gè)內(nèi)核)。當(dāng)負(fù)荷增加且操作系統(tǒng)確定需要第三處理器時(shí),系統(tǒng)可以直接從1500a配置切換為1510b配置(即,smp模式,具有3個(gè)內(nèi)核)。這是一步式切換,一步式切換比兩步式切換更快。在兩步式切換中,兩個(gè)有效處理器將首先切換至smp模式(第一步驟),隨后將激活第三處理器。這通過(guò)從1500a轉(zhuǎn)換至1510a、接著從1510a轉(zhuǎn)換至1510b示出。如將了解,可以在至少響應(yīng)于激活/去激活處理器而發(fā)生模式切換時(shí)實(shí)施一步式切換或兩步式切換。

類似于圖2到11(和隨附文字)中描述的系統(tǒng)、過(guò)程、方法和設(shè)備,圖12到17中描述的系統(tǒng)、過(guò)程、方法和設(shè)備可以用于移動(dòng)環(huán)境中,包含并入移動(dòng)設(shè)備/小型計(jì)算設(shè)備或基站內(nèi)等。此類設(shè)備可以例如用于傳輸和/或接收無(wú)線信號(hào)。所述設(shè)備可以是任何合適的終端用戶設(shè)備,并且可以包含例如用戶設(shè)備/裝置(userequipment,ue)、無(wú)線傳輸/接收單元(wirelesstransmit/receiveunit,wtru)、移動(dòng)臺(tái),固定或移動(dòng)用戶單元、尋呼機(jī)、蜂窩電話、個(gè)人數(shù)字助理(personaldigitalassistant,pda)、智能電話,膝上型電腦,計(jì)算機(jī),觸摸墊、無(wú)線傳感器、可穿戴電子設(shè)備或消費(fèi)型電子設(shè)備等此類設(shè)備(或可以稱為此類設(shè)備)。

設(shè)備將包含至少一個(gè)處理系統(tǒng)1200(如本文所描述),所述處理系統(tǒng)實(shí)施設(shè)備的各種處理操作。這可以包含例如信號(hào)編碼、數(shù)據(jù)處理、視頻/音頻處理、功率控制、輸入/輸出處理或針對(duì)設(shè)備預(yù)期的任何其它功能。

處理系統(tǒng)1200還支持本文中所描述的方法和教示,并且可以包含另外的組件和處理器(例如,微控制器、數(shù)字信號(hào)處理器、現(xiàn)場(chǎng)可編程門陣列或?qū)S眉呻娐?。

結(jié)合處理系統(tǒng)1200的設(shè)備還可包含至少一個(gè)收發(fā)器,其用于調(diào)制數(shù)據(jù)或通過(guò)至少一個(gè)天線傳輸?shù)钠渌鼉?nèi)容。收發(fā)器還用于解調(diào)制數(shù)據(jù)或通過(guò)至少一個(gè)天線接收到的其它內(nèi)容。每個(gè)收發(fā)器包含產(chǎn)生用于無(wú)線傳輸?shù)男盘?hào)和/或處理無(wú)線接收到的信號(hào)的任何合適結(jié)構(gòu)。每個(gè)天線包含用于傳輸和/或接收無(wú)線信號(hào)的任何合適結(jié)構(gòu)。在設(shè)備中可以使用一個(gè)或多個(gè)收發(fā)器,且可以使用一個(gè)或多個(gè)天線。

這些設(shè)備還可包含一個(gè)或多個(gè)輸入/輸出設(shè)備以促進(jìn)與用戶的交互。每個(gè)輸入/輸出設(shè)備包含用于向用戶提供信息或從用戶接收信息的任何合適結(jié)構(gòu),例如揚(yáng)聲器、麥克風(fēng)、小鍵盤、鍵盤、顯示器或觸摸屏。

另外,這些設(shè)備可以使用上文所描述的存儲(chǔ)器,或可以包含其它存儲(chǔ)器,用于存儲(chǔ)由設(shè)備使用的、產(chǎn)生的或收集的指令和數(shù)據(jù)。例如,存儲(chǔ)器可以存儲(chǔ)由處理系統(tǒng)1200執(zhí)行的軟件或固件指令。其它存儲(chǔ)器可以包含任何合適的易失性和/或非易失性存儲(chǔ)和檢索設(shè)備。可以使用任何合適類型的存儲(chǔ)器,例如隨機(jī)存取存儲(chǔ)器(randomaccessmemory,ram)、只讀存儲(chǔ)器(readonlymemory,rom)、硬盤、光碟、用戶識(shí)別模塊(subscriberidentitymodule,sim)卡、記憶棒、安全數(shù)字(securedigital,sd)存儲(chǔ)卡等。

本領(lǐng)域技術(shù)人員已知關(guān)于移動(dòng)/小型計(jì)算設(shè)備的額外細(xì)節(jié)。由此,為了清楚起見(jiàn),此處省略這些細(xì)節(jié)。

在某些實(shí)施例中,一個(gè)或多個(gè)所述設(shè)備的部分或全部功能或過(guò)程由計(jì)算機(jī)可讀程序代碼構(gòu)成的且內(nèi)嵌于計(jì)算機(jī)可讀媒體中的計(jì)算機(jī)程序來(lái)實(shí)施或提供支持。術(shù)語(yǔ)“計(jì)算機(jī)可讀程序代碼”包含任何類型的計(jì)算機(jī)代碼,包含源代碼、目標(biāo)代碼以及可執(zhí)行代碼。術(shù)語(yǔ)“計(jì)算機(jī)可讀媒體”包含任何類型的能夠由計(jì)算機(jī)訪問(wèn)的非易失性媒體,例如,只讀存儲(chǔ)器(readonlymemory,rom)、隨機(jī)存取存儲(chǔ)器(randomaccessmemory,ram)、硬盤驅(qū)動(dòng)器、光盤(compactdisc,cd)、數(shù)字化視頻光盤(digitalvideodisc,dvd)或者任何其它類型的存儲(chǔ)器。

為本專利文檔中使用的特定術(shù)語(yǔ)和短語(yǔ)進(jìn)行定義是有幫助的。術(shù)語(yǔ)“包括”和“包含”以及它們的派生詞表示沒(méi)有限制的包括。術(shù)語(yǔ)“或者”是包容性的,意為和/或。短語(yǔ)“與……關(guān)聯(lián)”和“與其關(guān)聯(lián)”以及其派生的短語(yǔ)意味著包括、被包括在內(nèi)、與……互連、包含、被包含在內(nèi)、連接到或與……連接、耦合到或與……耦合、可與……通信、與……配合、交織、并列、接近、被綁定到或與……綁定、具有、具有……屬性,等等。術(shù)語(yǔ)“控制器”指任何設(shè)備、系統(tǒng)或者其至少控制一個(gè)操作的一部分??刂破骺梢酝ㄟ^(guò)硬件、固件、軟件或者其中至少兩者的組合而實(shí)現(xiàn)。與任何特定控制器相關(guān)的功能可以是集中式或分布式的,無(wú)論是本地還是遠(yuǎn)程。

雖然本發(fā)明就某些實(shí)施例和一般相關(guān)方法方面進(jìn)行了描述,但是對(duì)本領(lǐng)域技術(shù)人員而言,對(duì)這些實(shí)施例和方法的各種變更和更改將是顯而易見(jiàn)的。因此,實(shí)例實(shí)施例的上述描述不限定或約束本發(fā)明。如所附權(quán)利要求定義,在不脫離本發(fā)明的精神和范圍的情況下,其它改變、替代以及變更也是可能的。

當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
锦屏县| 交城县| 合山市| 博野县| 连江县| 交口县| 迭部县| 钟山县| 繁峙县| 桃源县| 聂荣县| 西城区| 左权县| 封丘县| 多伦县| 牙克石市| 韶关市| 峡江县| 潼关县| 余姚市| 天峨县| 克东县| 灵寿县| 东宁县| 城步| 新乡县| 大兴区| 江油市| 苗栗市| 泉州市| 静海县| 宣恩县| 保定市| 定南县| 临潭县| 昌黎县| 长海县| 随州市| 德惠市| 兴安县| 岳阳市|