日韩成人黄色,透逼一级毛片,狠狠躁天天躁中文字幕,久久久久久亚洲精品不卡,在线看国产美女毛片2019,黄片www.www,一级黄色毛a视频直播

基于嵌入式系統(tǒng)功耗模式的選擇方法及系統(tǒng),嵌入式系統(tǒng)的制作方法

文檔序號:9921700閱讀:695來源:國知局
基于嵌入式系統(tǒng)功耗模式的選擇方法及系統(tǒng),嵌入式系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及嵌入式系統(tǒng)功耗的問題,特別涉及一種基于嵌入式系統(tǒng)功耗模式的選擇方法及系統(tǒng),嵌入式系統(tǒng)。
【背景技術(shù)】
[0002]基于異構(gòu)多核架構(gòu)的嵌入式系統(tǒng)的架構(gòu)即結(jié)合兩種或多種不同類型的微處理器或微控制器的架構(gòu)。因其能夠提供更高的處理器性能、更有效的電源利用率,并且占用更少的物理空間,近來在嵌入式領(lǐng)域得到了大范圍推廣,特別是在強(qiáng)調(diào)整合功能性和連通性的高性能嵌入式設(shè)備方面。
[0003]目前,關(guān)于基于異構(gòu)多核架構(gòu)的嵌入式系統(tǒng)的功耗的相關(guān)文獻(xiàn)和專利比較少,從芯片級層次和操作系統(tǒng)層次上論述的,并且能夠兼顧性能和功耗的平衡,幾乎沒有。功耗和性能時候本身的相互矛盾,更是提高了優(yōu)化的難度。

【發(fā)明內(nèi)容】

[0004]本發(fā)明的目的是為了解決性能和功耗平衡不能平衡的問題,提出了一種基于嵌入式系統(tǒng)功耗模式的選擇方法及系統(tǒng),嵌入式系統(tǒng),在滿足性能的要求下,實現(xiàn)了 “能省則省”的目的。
[0005]為實現(xiàn)上述目的,第一方面,本發(fā)明提供了一種基于嵌入式系統(tǒng)的功耗模式選擇方法,該選擇方法包括:
[0006]根據(jù)系統(tǒng)資源將嵌入式系統(tǒng)劃分成多種目標(biāo)狀態(tài),當(dāng)嵌入式系統(tǒng)處于空閑狀態(tài),并且允許睡眠時,則根據(jù)當(dāng)前系統(tǒng)資源被占用的情況,確定嵌入式系統(tǒng)當(dāng)前允許進(jìn)入的目標(biāo)狀態(tài),每種目標(biāo)狀態(tài)對應(yīng)于相應(yīng)的功耗等級;系統(tǒng)資源包括各個處理器的狀態(tài)、電源、時鐘,內(nèi)存和總線中的一種或多種系統(tǒng)資源;
[0007]根據(jù)喚醒時間點和當(dāng)前時間點初步確定睡眠時間;喚醒時間點由嵌入式系統(tǒng)的下一次調(diào)度的時間來確定;
[0008]將睡眠時間與進(jìn)入和退出每種目標(biāo)狀態(tài)的時延值進(jìn)行比較,根據(jù)比較結(jié)果選擇進(jìn)入一種相應(yīng)的功耗模式,功耗模式對應(yīng)于相應(yīng)的功耗等級。
[0009]優(yōu)選地,根據(jù)喚醒時間點和當(dāng)前時間點確定睡眠時間步驟包括:
[0010]根據(jù)嵌入式系統(tǒng)中途被喚醒的概率確定喚醒因子,由喚醒因子對喚醒時間點進(jìn)行修正;
[0011]根據(jù)修正后的喚醒時間點和當(dāng)前時間點確定實際睡眠時間;其中,喚醒因子對應(yīng)于相應(yīng)的功耗等級。
[0012]優(yōu)選地,進(jìn)入和退出每種目標(biāo)狀態(tài)的時延值是由乘法因子P來量化,當(dāng)嵌入式系統(tǒng)負(fù)載越大時,每種目標(biāo)狀態(tài)的時延值為P*Tn,其中P的值取決于嵌入式系統(tǒng)的負(fù)載和1負(fù)載,Tn為目標(biāo)狀態(tài)的時延值。
[0013]優(yōu)選地,將睡眠時間與進(jìn)入和退出每種目標(biāo)狀態(tài)的時延值進(jìn)行比較,根據(jù)比較結(jié)果選擇相應(yīng)的目標(biāo)狀態(tài)步驟之前還包括:
[0014]判斷嵌入式系統(tǒng)是否對服務(wù)質(zhì)量有要求;
[0015]當(dāng)嵌入式系統(tǒng)對服務(wù)質(zhì)量有要求時,則指定一個時延值Tqos;將指定的一個時延值Tqos與時延值Tn進(jìn)行比較。
[0016]優(yōu)選地,將睡眠時間與進(jìn)入和退出每種目標(biāo)狀態(tài)的時延值進(jìn)行比較,根據(jù)比較結(jié)果選擇相應(yīng)的功耗等級的步驟包括:
[0017]將實際睡眠時間m*T與和量化后的時延值p*Tn進(jìn)行比較,根據(jù)比較結(jié)果,選擇相應(yīng)的功耗等級。
[0018]第二方面,本發(fā)明提供了一種基于嵌入式系統(tǒng)的功耗模式選擇系統(tǒng),該選擇系統(tǒng)包括:功耗管理模塊、獲取時間模塊和選擇模塊;
[0019]功耗管理模塊用于根據(jù)系統(tǒng)資源將嵌入式系統(tǒng)劃分成多種目標(biāo)狀態(tài),當(dāng)嵌入式系統(tǒng)處于空閑狀態(tài),并且允許睡眠時,則根據(jù)當(dāng)前系統(tǒng)資源被占用的情況,確定嵌入式系統(tǒng)當(dāng)前允許進(jìn)入的目標(biāo)狀態(tài),每種目標(biāo)狀態(tài)對應(yīng)于相應(yīng)的功耗等級;系統(tǒng)資源包括各個處理器的狀態(tài)、電源、時鐘,內(nèi)存和總線中的一種或多種系統(tǒng)資源;
[0020]獲取時間模塊用于根據(jù)喚醒時間點和當(dāng)前時間點初步確定睡眠時間;喚醒時間點由嵌入式系統(tǒng)的下一次調(diào)度的時間來確定;
[0021]選擇模塊用于將睡眠時間與進(jìn)入和退出每種目標(biāo)狀態(tài)的時延值進(jìn)行比較,根據(jù)比較結(jié)果選擇相應(yīng)的目標(biāo)狀態(tài),功耗模式對應(yīng)于相應(yīng)的功耗等級。
[0022]優(yōu)選地,獲取時間模塊具體用于:
[0023]根據(jù)嵌入式系統(tǒng)中途被喚醒的概率確定喚醒因子,由喚醒因子對喚醒時間點進(jìn)行修正;
[0024]根據(jù)修正后的喚醒時間點和當(dāng)前時間點確定實際睡眠時間;其中,喚醒因子對應(yīng)于相應(yīng)的功耗等級。
[0025]優(yōu)選地,選擇系統(tǒng)還包括判斷模塊;
[0026]判斷模塊用于判斷嵌入式系統(tǒng)是否對服務(wù)質(zhì)量有要求;
[0027]當(dāng)判斷模塊的結(jié)果為肯定時,則指定一個時延值;將指定的一個時延值與時延值進(jìn)行比較。
[0028]第三方面,本發(fā)明提供了一種嵌入式系統(tǒng),該嵌入式系統(tǒng)包括如上述描述的基于嵌入式系統(tǒng)功耗模式的選擇系統(tǒng)。
[0029]本發(fā)明基于嵌入式系統(tǒng)的空閑程度,調(diào)度時間,進(jìn)出不同功耗模式,睡眠中斷概率,1調(diào)度,性能和功耗要求等指標(biāo),使得整個系統(tǒng)在滿足性能和實時性要求的基礎(chǔ)上,能夠最大程度的節(jié)省功耗,達(dá)到了功耗,性能,實時性的最大平衡。
【附圖說明】
[0030]為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0031]圖1為本發(fā)明實施例提供的一種基于嵌入式系統(tǒng)功耗模式的選擇方法的流程圖;
[0032]圖2為本發(fā)明實施例提供的一種基于嵌入式系統(tǒng)功耗模式的選擇系統(tǒng)的結(jié)構(gòu)示意圖;
[0033]圖3為本發(fā)明實施例提供的一種嵌入式系統(tǒng)的結(jié)構(gòu)示意圖;
[0034]圖4為本發(fā)明實施例中確定實際睡眠時間的結(jié)構(gòu)示意圖;
[0035]圖5為本發(fā)明實施例中確定量化后的時延值的結(jié)構(gòu)示意圖。
【具體實施方式】
[0036]下面通過附圖和實施例,對本發(fā)明的技術(shù)方案做進(jìn)一步的詳細(xì)描述。本發(fā)明將嵌入式系統(tǒng)的狀態(tài)根據(jù)時鐘和供電劃分為一種或多種目標(biāo)狀態(tài)(依據(jù)具體異構(gòu)多核SOC系統(tǒng)和電路板的設(shè)計),每種目標(biāo)狀態(tài)對應(yīng)于相應(yīng)的功耗等級;當(dāng)系統(tǒng)處于空閑狀態(tài)并允許睡眠時,功耗管理模塊根據(jù)各個處理器狀態(tài)、電源、時鐘,內(nèi)存,總線等系統(tǒng)資源投票情況,確定該系統(tǒng)當(dāng)前允許進(jìn)入的幾種低功耗模式。每種功耗模式對應(yīng)于相應(yīng)的功耗等級(Cl,c2,c3..);相應(yīng)的功耗等級,通過實驗測量進(jìn)出各種功耗模式需要的時間作為進(jìn)入特定功耗模式的時延(Latency),根據(jù)比較計算的時間(系統(tǒng)實際的睡眠時間)和功耗模式的時延(Latency)來選擇功耗等級。
[0037]圖1為本發(fā)明實施例提供的一種基于嵌入式系統(tǒng)功耗模式的選擇方法的流程圖。如圖1所示,該選擇方法的步驟包括:
[0038]步驟SlOO:根據(jù)系統(tǒng)資源將嵌入式系統(tǒng)劃分成多種目標(biāo)狀態(tài),當(dāng)嵌入式系統(tǒng)處于空閑狀態(tài),并且允許睡眠時,則根據(jù)當(dāng)前系統(tǒng)資源被占用的情況,確定嵌入式系統(tǒng)當(dāng)前允許進(jìn)入的目標(biāo)狀態(tài),每種目標(biāo)狀態(tài)對應(yīng)于相應(yīng)的功耗等級;系統(tǒng)資源包括各個處理器的狀態(tài)、電源、時鐘,內(nèi)存和總線中的一種或多種系統(tǒng)資源;
[0039]步驟SI 10:根據(jù)喚醒時間點和當(dāng)前時間點初步確定睡眠時間;喚醒時間點由嵌入式系統(tǒng)的下一次調(diào)度的時間來確定;
[0040]步驟S120:判斷嵌入式系統(tǒng)是否對服務(wù)質(zhì)量有要求;有要求時,指定一個時延值;將指定的一個時延值與每種目標(biāo)狀態(tài)的時延值進(jìn)行比較;
[0041]步驟S130:將睡眠時間與進(jìn)入和退出每種目標(biāo)狀態(tài)的時延值進(jìn)行比較,根據(jù)比較結(jié)果選擇相應(yīng)的目標(biāo)狀態(tài),所述功耗模式對應(yīng)于相應(yīng)的功耗等級。
[0042]執(zhí)行步驟S120是嵌入式系統(tǒng)對服務(wù)質(zhì)量有要求,則需要將指定的一個時延值Tqos與時延值Tn進(jìn)行比較,以及將實際睡眠時間m*T與和量化后的時延值p*Tn進(jìn)行比較,根據(jù)比較結(jié)果選擇相應(yīng)的功耗等級。
[0043]不執(zhí)行步驟S120直接執(zhí)行步驟S130是嵌入式系統(tǒng)對服務(wù)質(zhì)量沒有要求,將實際睡眠時間m*T與和量化后的時延值ρ*Τη進(jìn)行比較,根據(jù)比較結(jié)果選擇相應(yīng)的功耗等級。
[0044]具體地,考慮系統(tǒng)睡眠時,有一定的概率被喚醒,我們可以假設(shè)喚醒因子為m,實際的睡眠時間為m*T;這樣,以更好的滿足系統(tǒng)實時性的要求,不至于因為睡眠導(dǎo)致很多系統(tǒng)的要求(任務(wù))被延時;假設(shè)有50%的可能系統(tǒng)被中途喚醒,可以加上0.5(喚醒因子)的修正,實際睡眠時間預(yù)估計為0.5T。考慮到500毫秒的空閑時間被打斷的概率明顯比50us空閑時間被打斷的概率要大,m的值隨著T的增加而增加,m值可以通過系統(tǒng)壓力測試得出。對于Cl,C2,C3,C4.??對應(yīng)的m值分別為ml,m2,m3,m4...。
[0045]具體地,功耗等級Cl (core state),C2,C3,C4…的數(shù)字越大,代表越省電,功耗越低,進(jìn)出該模式的延時(latency)會越長。對于Cl,C2,C3….的劃分,隨著SOC核心數(shù)量的增加,每個狀態(tài)可以劃分出更深的粒度。然后,通過實驗測定進(jìn)出各種功耗模式需要的時間作為進(jìn)入特定低功耗模式的Latency,比如Tl,T2,T3,T4。
[0046]具體地,時延值(latency)是指進(jìn)入和退出一種功耗模式的時間,比如說進(jìn)入和退出sleep mode、standby mode和stop mode的時間是不一樣的;越是省電的功耗模式,進(jìn)入和退出該功耗模式的時間越長,對系統(tǒng)的性能負(fù)面影響越大;對于上述問題,可以使用乘法因子P來來量化,當(dāng)系統(tǒng)負(fù)載越大是,原來的時延(latency )*p變?yōu)棣?Τ1,p*T2,p*T3,p*T4等;P的取值為經(jīng)驗值,取決于兩個方面,一個是系統(tǒng)負(fù)載,另一個是1負(fù)載;系統(tǒng)負(fù)載和1(輸入輸出系統(tǒng)負(fù)載)負(fù)載越大,P值也越大;這個時候需要先獲取系統(tǒng)需要實際睡眠的時間m*T;比較m*T和p*Tn(n為目標(biāo)狀態(tài)的種類),如果p*Tn+l>m*T> = p*Tn,則系統(tǒng)允許進(jìn)入到Cn模式。
[0047]但是針對系統(tǒng)的功能模塊對服務(wù)質(zhì)量(Qos)有要求,可以指定一個時延值Tqos,將時延值Tn與指定的一個時延值Tqos進(jìn)行比較,以及同時將實際睡眠時間m*T與和量化后的時延值P*Tn進(jìn)行比較,當(dāng)Tn〈 = Tqos且p*Tn+l>m*T> = p*Tn,貝Ij系統(tǒng)允許進(jìn)入到Cn模式。
[0048]需要說明的是,一個嵌入式系統(tǒng)可以執(zhí)行很多的任務(wù),系統(tǒng)在空閑的時間遠(yuǎn)大于系統(tǒng)高速運(yùn)行的時間,因此,需要根據(jù)系統(tǒng)的空閑程度,資源的投票情況,調(diào)度時間,進(jìn)出不同功耗模式的延時,性能,服務(wù)質(zhì)量(Qos)和功耗要求等指標(biāo)來安排系統(tǒng)的空閑時間。
[0049]嵌入式系統(tǒng)判斷系統(tǒng)是否處于空閑狀態(tài),是通過嵌入式系統(tǒng)的任務(wù)給睡眠任務(wù)(sleep task)投票允許睡眠,睡眠任務(wù)(sleep task)會查看所有任務(wù)的投票情況,根據(jù)投票結(jié)
當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1