摘要 系統(tǒng)功耗是阻礙當(dāng)今世界便攜式電子產(chǎn)品發(fā)展的一個(gè)重要因素。降低系統(tǒng)功耗的核心是運(yùn)用適當(dāng)?shù)碾娫垂芾恚╬ower management)策略,關(guān)鍵是準(zhǔn)確反映和利用系統(tǒng)狀態(tài)信息和任務(wù)信息。本文從任務(wù)信息和系統(tǒng)狀態(tài)兩個(gè)角度,分析系統(tǒng)設(shè)備電源管理策略和方法,并提出一個(gè)基于決策的系統(tǒng)級電源管理模塊構(gòu)架。
關(guān)鍵詞 系統(tǒng)狀態(tài) 便攜設(shè)備 電源管理 決策
引言
現(xiàn)今對電子系統(tǒng)設(shè)備性能的要求越來越高,在權(quán)衡電子系統(tǒng)的性能和功耗時(shí),電子系統(tǒng)的性能往往得到更多的重視。容量有限的電池是便攜設(shè)備的惟一能量來源,而電池容量的提高速度明顯趕不上中央處理器性能的提高速度,因此,如何利用有限的電能為便攜設(shè)備提供性能,是便攜設(shè)備中電源管理的主要目標(biāo)。除此之外,電源管理還要兼顧穩(wěn)定性和散熱性。電源管理模塊是在可編程電源管理的設(shè)備上,為電源管理提供實(shí)現(xiàn)各種功耗模式的應(yīng)用編程接口的軟件模塊。
功率消耗有兩種方式: 靜態(tài)功耗和動態(tài)功耗。靜態(tài)功耗主要為晶體管泄漏(leakage)功率;動態(tài)功耗則來源于電路有效性激活,例如地址線或者數(shù)據(jù)線輸入時(shí)引起的寄存器線路的有效性激活。開關(guān)電容所消耗的功率是動態(tài)功率消耗的最主要組成部分,即在電路輸出時(shí)開關(guān)電容進(jìn)行充放電過程所消耗的功率:
由式(1)可知Pdynamic依賴以下4個(gè)參數(shù): C(電容量)、V(電壓)、f(信號頻率)和a(可變因數(shù))。其中,a與芯片中出現(xiàn)0-1轉(zhuǎn)換的次數(shù)有關(guān)。降低動態(tài)功耗的方法相應(yīng)地分為4類:
① 降低電容量或者電路的儲電量。
② 降低開關(guān)的活躍性。由于計(jì)算機(jī)芯片被越來越復(fù)雜的功能性所包裝,使得芯片的開關(guān)活躍性增強(qiáng),因而降低開關(guān)活躍性對降低系統(tǒng)動態(tài)功耗起到的作用越來越大。時(shí)鐘門控(time gating)技術(shù)是當(dāng)前流行的降低開關(guān)活躍性的技術(shù),這種技術(shù)使得時(shí)鐘信號不通過閑置應(yīng)用單元。因?yàn)闀r(shí)鐘網(wǎng)絡(luò)是芯片功率消耗的主要部分,這種技術(shù)恰恰可以在處理器中有效地降低功率和電量消耗。
③ 降低信號頻率。
④ 降低電壓。
后兩種方法是以降低系統(tǒng)性能為代價(jià)的,但同時(shí)也是降低系統(tǒng)功耗的主要手段。系統(tǒng)電源管理就是通過認(rèn)識系統(tǒng)任務(wù)(task)和狀態(tài)(status),利用合理的電源管理策略,權(quán)衡提高系統(tǒng)性能和降低系統(tǒng)功耗之間的關(guān)系,在功耗最低的情況下,為系統(tǒng)應(yīng)用提供性能。本文從任務(wù)信息和系統(tǒng)狀態(tài)兩個(gè)角度對降低系統(tǒng)功耗的管理進(jìn)行探討研究,并提出一種基于決策的系統(tǒng)級電源管理模塊構(gòu)架。
1 功耗管理技術(shù)分析
1.1 系統(tǒng)狀態(tài)、任務(wù)和電源管理策略信息
電源管理的前提是對系統(tǒng)設(shè)備狀態(tài)及任務(wù)信息的準(zhǔn)確檢測和管理,以及對電源管理策略進(jìn)行準(zhǔn)確的效率統(tǒng)計(jì)。
系統(tǒng)狀態(tài)包括Running(工作)狀態(tài)、Idle(空閑)狀態(tài)和Sleep(休眠)狀態(tài)。有的系統(tǒng)可以提供多模式的工作狀態(tài),區(qū)別主要在于處理器工作頻率、工作電壓和設(shè)備組合的不同。任務(wù)的實(shí)時(shí)指標(biāo)包括響應(yīng)時(shí)間(response time)、延時(shí)(latency)和任務(wù)截止期(deadline)。硬實(shí)時(shí)任務(wù)對這些指標(biāo)有硬性的要求,當(dāng)系統(tǒng)不能達(dá)到該指標(biāo)時(shí),提供的數(shù)據(jù)或服務(wù)就會完全失效,甚至造成災(zāi)難性的后果;軟實(shí)時(shí)任務(wù)則對其只有軟性要求,達(dá)不到指標(biāo)的后果只是無法提供要求的服務(wù)質(zhì)量。任務(wù)的信息除了實(shí)時(shí)指標(biāo)以外,還有執(zhí)行任務(wù)所使用的設(shè)備部件。如果是多工作模式系統(tǒng),則還要包括執(zhí)行該任務(wù)的最低工作模式。許多操作系統(tǒng)和處理器都能夠提供很好的檢測模塊和功能單元。例如,Linux的timer函數(shù)可以提供系統(tǒng)狀態(tài)監(jiān)測計(jì)時(shí), Intel XScale處理器的PMU(Performance Monitoring Unit)單元,可以用來監(jiān)視XScale平臺的工作情況。對系統(tǒng)狀態(tài)和任務(wù)信息的檢測和管理是管理模塊中的重要部分之一。
電源管理策略信息包括核心算法和工作效率。衡量電源管理策略的效率可以通過計(jì)算“競爭比”(competitive ratio)和“錯(cuò)誤率”等來判斷。D. Ramanathan[2]在利用競爭分析方法分析電源管理策略中使用了“競爭比”這個(gè)衡量指標(biāo)。競爭分析方法的前提: 假設(shè)所研究的問題有一個(gè)競爭對手,而且這個(gè)對手對該問題的輸入能夠產(chǎn)生影響。競爭比的定義是在線(online)策略所消耗的資源與完成任務(wù)可能消耗的最少資源之間的比值。這里,在線策略是針對負(fù)載未知的系統(tǒng)的電源管理策略。因?yàn)樵趯?shí)際系統(tǒng)中,系統(tǒng)下一個(gè)任務(wù)請求的到達(dá)時(shí)間是不可能完全正確預(yù)知的,而可能消耗的最少資源就是在電源管理策略能完全正確預(yù)知下一個(gè)任務(wù)請求到達(dá)時(shí)間的前提下所消耗的資源。這里的資源可以簡單地用功耗代替,也可以結(jié)合系統(tǒng)執(zhí)行任務(wù)的延時(shí),即系統(tǒng)性能。預(yù)測錯(cuò)誤率是針對預(yù)測策略的效率指標(biāo),它等于預(yù)測錯(cuò)誤次數(shù)與總預(yù)測次數(shù)之間的比值,并可利用布爾數(shù)來判斷預(yù)測錯(cuò)誤率的評估函數(shù)。
關(guān)鍵詞 系統(tǒng)狀態(tài) 便攜設(shè)備 電源管理 決策
引言
現(xiàn)今對電子系統(tǒng)設(shè)備性能的要求越來越高,在權(quán)衡電子系統(tǒng)的性能和功耗時(shí),電子系統(tǒng)的性能往往得到更多的重視。容量有限的電池是便攜設(shè)備的惟一能量來源,而電池容量的提高速度明顯趕不上中央處理器性能的提高速度,因此,如何利用有限的電能為便攜設(shè)備提供性能,是便攜設(shè)備中電源管理的主要目標(biāo)。除此之外,電源管理還要兼顧穩(wěn)定性和散熱性。電源管理模塊是在可編程電源管理的設(shè)備上,為電源管理提供實(shí)現(xiàn)各種功耗模式的應(yīng)用編程接口的軟件模塊。
功率消耗有兩種方式: 靜態(tài)功耗和動態(tài)功耗。靜態(tài)功耗主要為晶體管泄漏(leakage)功率;動態(tài)功耗則來源于電路有效性激活,例如地址線或者數(shù)據(jù)線輸入時(shí)引起的寄存器線路的有效性激活。開關(guān)電容所消耗的功率是動態(tài)功率消耗的最主要組成部分,即在電路輸出時(shí)開關(guān)電容進(jìn)行充放電過程所消耗的功率:
由式(1)可知Pdynamic依賴以下4個(gè)參數(shù): C(電容量)、V(電壓)、f(信號頻率)和a(可變因數(shù))。其中,a與芯片中出現(xiàn)0-1轉(zhuǎn)換的次數(shù)有關(guān)。降低動態(tài)功耗的方法相應(yīng)地分為4類:
① 降低電容量或者電路的儲電量。
② 降低開關(guān)的活躍性。由于計(jì)算機(jī)芯片被越來越復(fù)雜的功能性所包裝,使得芯片的開關(guān)活躍性增強(qiáng),因而降低開關(guān)活躍性對降低系統(tǒng)動態(tài)功耗起到的作用越來越大。時(shí)鐘門控(time gating)技術(shù)是當(dāng)前流行的降低開關(guān)活躍性的技術(shù),這種技術(shù)使得時(shí)鐘信號不通過閑置應(yīng)用單元。因?yàn)闀r(shí)鐘網(wǎng)絡(luò)是芯片功率消耗的主要部分,這種技術(shù)恰恰可以在處理器中有效地降低功率和電量消耗。
③ 降低信號頻率。
④ 降低電壓。
后兩種方法是以降低系統(tǒng)性能為代價(jià)的,但同時(shí)也是降低系統(tǒng)功耗的主要手段。系統(tǒng)電源管理就是通過認(rèn)識系統(tǒng)任務(wù)(task)和狀態(tài)(status),利用合理的電源管理策略,權(quán)衡提高系統(tǒng)性能和降低系統(tǒng)功耗之間的關(guān)系,在功耗最低的情況下,為系統(tǒng)應(yīng)用提供性能。本文從任務(wù)信息和系統(tǒng)狀態(tài)兩個(gè)角度對降低系統(tǒng)功耗的管理進(jìn)行探討研究,并提出一種基于決策的系統(tǒng)級電源管理模塊構(gòu)架。
1 功耗管理技術(shù)分析
1.1 系統(tǒng)狀態(tài)、任務(wù)和電源管理策略信息
電源管理的前提是對系統(tǒng)設(shè)備狀態(tài)及任務(wù)信息的準(zhǔn)確檢測和管理,以及對電源管理策略進(jìn)行準(zhǔn)確的效率統(tǒng)計(jì)。
系統(tǒng)狀態(tài)包括Running(工作)狀態(tài)、Idle(空閑)狀態(tài)和Sleep(休眠)狀態(tài)。有的系統(tǒng)可以提供多模式的工作狀態(tài),區(qū)別主要在于處理器工作頻率、工作電壓和設(shè)備組合的不同。任務(wù)的實(shí)時(shí)指標(biāo)包括響應(yīng)時(shí)間(response time)、延時(shí)(latency)和任務(wù)截止期(deadline)。硬實(shí)時(shí)任務(wù)對這些指標(biāo)有硬性的要求,當(dāng)系統(tǒng)不能達(dá)到該指標(biāo)時(shí),提供的數(shù)據(jù)或服務(wù)就會完全失效,甚至造成災(zāi)難性的后果;軟實(shí)時(shí)任務(wù)則對其只有軟性要求,達(dá)不到指標(biāo)的后果只是無法提供要求的服務(wù)質(zhì)量。任務(wù)的信息除了實(shí)時(shí)指標(biāo)以外,還有執(zhí)行任務(wù)所使用的設(shè)備部件。如果是多工作模式系統(tǒng),則還要包括執(zhí)行該任務(wù)的最低工作模式。許多操作系統(tǒng)和處理器都能夠提供很好的檢測模塊和功能單元。例如,Linux的timer函數(shù)可以提供系統(tǒng)狀態(tài)監(jiān)測計(jì)時(shí), Intel XScale處理器的PMU(Performance Monitoring Unit)單元,可以用來監(jiān)視XScale平臺的工作情況。對系統(tǒng)狀態(tài)和任務(wù)信息的檢測和管理是管理模塊中的重要部分之一。
電源管理策略信息包括核心算法和工作效率。衡量電源管理策略的效率可以通過計(jì)算“競爭比”(competitive ratio)和“錯(cuò)誤率”等來判斷。D. Ramanathan[2]在利用競爭分析方法分析電源管理策略中使用了“競爭比”這個(gè)衡量指標(biāo)。競爭分析方法的前提: 假設(shè)所研究的問題有一個(gè)競爭對手,而且這個(gè)對手對該問題的輸入能夠產(chǎn)生影響。競爭比的定義是在線(online)策略所消耗的資源與完成任務(wù)可能消耗的最少資源之間的比值。這里,在線策略是針對負(fù)載未知的系統(tǒng)的電源管理策略。因?yàn)樵趯?shí)際系統(tǒng)中,系統(tǒng)下一個(gè)任務(wù)請求的到達(dá)時(shí)間是不可能完全正確預(yù)知的,而可能消耗的最少資源就是在電源管理策略能完全正確預(yù)知下一個(gè)任務(wù)請求到達(dá)時(shí)間的前提下所消耗的資源。這里的資源可以簡單地用功耗代替,也可以結(jié)合系統(tǒng)執(zhí)行任務(wù)的延時(shí),即系統(tǒng)性能。預(yù)測錯(cuò)誤率是針對預(yù)測策略的效率指標(biāo),它等于預(yù)測錯(cuò)誤次數(shù)與總預(yù)測次數(shù)之間的比值,并可利用布爾數(shù)來判斷預(yù)測錯(cuò)誤率的評估函數(shù)。