楊 豐,段紅光,牟倫榮
(1.重慶郵電大學(xué)通信與信息工程學(xué)院,重慶 400065;2.重郵信科有限公司,重慶 400065)
隨著通信產(chǎn)業(yè)技術(shù)的發(fā)展,通信服務(wù)商能夠提供越來越多的服務(wù),智能移動終端能容納的業(yè)務(wù)也越來越豐富,多媒體的業(yè)務(wù)層出不窮[1]。移動終端作為一種便攜式和移動性的設(shè)備,完全依靠電池來供電,隨著其功能越來越強(qiáng)大,功耗也越來越大[2-3]。因此,必須提高移動終端的待機(jī)和使用時間。對于這個問題,有兩種解決方案:一種是配備更大容量的電池;另一種是改進(jìn)系統(tǒng)設(shè)計或者算法設(shè)計[4],采用先進(jìn)技術(shù),降低其功耗[1]。然而現(xiàn)有設(shè)備為了方便攜帶而越做越小,因此電池容量也無法提高,新型的燃料電池距離投入實際使用還有一段時間,所以電源的問題將成為移動終端發(fā)展的最大瓶頸之一[5]。那么如何通過改善系統(tǒng)設(shè)計,最大限度地降低系統(tǒng)功耗,成為移動終端發(fā)展的關(guān)鍵問題。針對通信系統(tǒng)中各定時器和網(wǎng)絡(luò)端時鐘頻繁產(chǎn)生中斷使系統(tǒng)過早進(jìn)入工作狀態(tài)的問題,為了解決該問題,現(xiàn)有技術(shù)從不同的角度對此進(jìn)行了不同手段的研究,要么是對慢時鐘進(jìn)行改進(jìn),要么是維護(hù)慢時鐘,要么是對慢時鐘和快時鐘進(jìn)行對應(yīng)關(guān)系的處理來達(dá)到離開睡眠模式盡快同步網(wǎng)絡(luò)[1]。然而,在沒有外部時鐘作為參考基準(zhǔn)的前提下,以上技術(shù)都難以實施,正是基于這種情況,本文結(jié)合移動終端的技術(shù)特點,提出并驗證了一種基于定時器超時時刻調(diào)整的技術(shù),該方法無需使用外部時鐘作為參考即可減少設(shè)備在睡眠狀態(tài)被定時器喚醒的次數(shù),能夠有效地降低系統(tǒng)功耗,這對節(jié)能減排事業(yè)做出了一定的貢獻(xiàn)[6],并且對移動通信產(chǎn)業(yè)的發(fā)展具有積極的理論意義和現(xiàn)實意義。
在移動終端中,系統(tǒng)的各個功能模塊可以處于3種工作狀態(tài),即工作模式、空閑模式和睡眠模式[7-8]。工作模式是指該模塊在進(jìn)行正常的業(yè)務(wù)處理;空閑模式是指該模塊當(dāng)前沒有業(yè)務(wù)處理;睡眠模式是指該模塊處于低功耗或者關(guān)閉狀態(tài)[8]。
3種工作狀態(tài)之間的切換如圖1所示。
圖1 移動終端工作狀態(tài)轉(zhuǎn)移圖
在工作模式下,如果工作任務(wù)完成,則進(jìn)入空閑模式。在空閑模式下,如果收到睡眠指示,則進(jìn)入睡眠模式;如果有業(yè)務(wù)產(chǎn)生,則返回工作模式。在睡眠模式下,如果睡眠時間結(jié)束,自然喚醒,則進(jìn)入空閑模式;如果有業(yè)務(wù)產(chǎn)生,則返回工作模式。當(dāng)終端處于空閑模式和工作模式時,各模塊處于正常供電狀態(tài),系統(tǒng)時鐘頻率較高,此時功耗較大,而當(dāng)終端處于睡眠模式時,各模塊供電電壓降低甚至關(guān)閉,系統(tǒng)時鐘頻率較低,功率較?。?],因此,要降低設(shè)備功耗,增加終端的待機(jī)和使用時間,一個很重要的方面就是讓終端盡可能多地處于睡眠狀態(tài)。
在移動中,系統(tǒng)通常會通過設(shè)置定時器的方法來定時或延時執(zhí)行一些任務(wù),定時器在被創(chuàng)建或開啟時,可以設(shè)定其預(yù)定時長T,當(dāng)終端進(jìn)入睡眠狀態(tài)時,這些定時器會繼續(xù)計時,當(dāng)某個定時器超時,會產(chǎn)生中斷,將終端從睡眠狀態(tài)喚醒進(jìn)入空閑模式或工作模式,任務(wù)完成后,終端會再次進(jìn)入睡眠狀態(tài),等待下一次喚醒。因此,要讓終端更多地處于睡眠模式,降低功耗,一個有效的方法就是減少終端在睡眠過程中被定時器喚醒的次數(shù),使其睡眠時間更長。在實際應(yīng)用中,系統(tǒng)設(shè)定的定時器一般都存在一定的時間偏差容忍度Δt,即定時器可在其預(yù)定超時時刻Tp前后Δt范圍內(nèi)的任意時刻超時,而不會對系統(tǒng)任務(wù)的執(zhí)行造成影響,不同的定時器,其Δt也不相同。鑒于此,提出一種可減少移動終端在睡眠狀態(tài)被定時器喚醒的次數(shù),降低系統(tǒng)功耗的方法,如圖2所示。
圖2 低功耗技術(shù)方案流程圖
低功耗技術(shù)方案流程如下:
1)終端在進(jìn)入睡眠模式前,對已開啟的各定時器,在其各自的Δt范圍內(nèi)分別調(diào)整其定時長度,將定時器與其Tp±Δt范圍內(nèi)超時的其他定時器設(shè)定在同一時刻超時;
2)設(shè)定終端睡眠時間,進(jìn)入睡眠;
3)退出睡眠模式時,為了保證實時定時器超時時刻更加精確,修正其定時長度。實時定時器定時長度修正為T+(Tp-實際超時時刻)。
本技術(shù)通過在時間偏差容忍度范圍內(nèi)對各定時器超時時刻的調(diào)整,使得各預(yù)定超時時刻不同,但Tp±Δt范圍上有重疊的定時器能夠設(shè)定在同一時刻超時,從而減少了移動終端在睡眠模式下被喚醒的次數(shù),降低了系統(tǒng)功耗。
系統(tǒng)所開啟的定時器超時時刻的調(diào)整方法總結(jié)為3種,為了詳細(xì)具體地闡述此調(diào)整方法,以實例的形式進(jìn)行解釋。實例中調(diào)整前各定時器超時時刻示意圖如圖3所示,終端進(jìn)入睡眠前共有5個已開啟的定時器,其Tp及Δt分別為 Tp1和 Δt1,Tp2和 Δt2,Tp3和 Δt3,Tp4和 Δt4,Tp5和Δt5;各定時器的Tp和Δt如圖3所示,其中,T1~T5分別為定時器1~5的定時長度,TS1為當(dāng)前時刻,即終端進(jìn)入睡眠模式的時刻。
圖3 調(diào)整前各定時器超時時刻示意圖
方法一流程圖如圖4所示:
1)按各定時器的Δt從小到大的順序,依次對每個定時器,向前查詢,判斷是否有滿足該定時器合并條件的定時器。
2)如果有滿足該定時器合并條件(時間偏差容忍度不大于本定時器的Δt,超時時刻Ta等于自身預(yù)定超時時刻,且在本定時器的Tp±Δt范圍內(nèi)的定時器),將該定時器超時時刻設(shè)定為滿足合并條件的定時器中Δt最小的定時器的超時時刻;如果沒有滿足該定時器合并條件的定時器,將該定時器超時時刻設(shè)定為預(yù)定超時時刻。
實例中,各定時器Δt的大小順序為,Δt4<Δt5<Δt3<Δt2<Δt1,定時器4的Δt4最小,沒有滿足合并條件的其他定時器,因此,設(shè)定其超時時刻Ta4=Tp4;設(shè)定定時器5的Ta5時,只有定時器4是其滿足合并條件的其他定時器,因此設(shè)定其超時時刻Ta5=Tp4;對定時器3設(shè)定時,滿足合并條件的其他定時器有定時器4,因此設(shè)定其超時時刻Ta3=Tp4;對定時器2設(shè)定時,沒有滿足合并條件的其他定時器,設(shè)定其超時時刻Ta2=Tp2;對定時器1設(shè)定時,滿足合并條件的其他定時器為定時器2,設(shè)定其超時時刻Ta1=Tp2。采用方法一,調(diào)整后的超時時刻示意圖如圖5所示。
圖4 定時器超時時刻設(shè)定流程圖(方法一)
圖5 調(diào)整后的超時時刻示意圖(方法一)
方法二流程圖如圖6所示:
1)計算各定時器的預(yù)定超時時刻被其他定時器的Tp±Δt包括的次數(shù);
2)選擇一個被包括次數(shù)最多的預(yù)定超時時刻作為基準(zhǔn)時刻;
3)將Tp±Δt包括基準(zhǔn)時刻的各定時器的超時時刻設(shè)置為基準(zhǔn)時刻;
4)對剩余的未設(shè)定超時時刻的定時器,重復(fù)上述步驟,直到完成所有定時器超時時刻的設(shè)置。
實例中,Tp1包括在Tp2±Δt2范圍內(nèi);Tp2包括在Tp1±Δt1和 Tp3±Δt3范圍內(nèi);Tp3包括在 Tp1±Δt1和Tp2±Δt2范圍內(nèi);Tp4包括在 Tp3±Δt3和Tp5±Δt5范圍內(nèi);Tp5沒有被其他Tp±Δt包括。首先選擇一個被包括次數(shù)最多的預(yù)定超時時刻Tp2作為基準(zhǔn)時刻,設(shè)定定時器1~3的超時時刻Ta1=Ta2=Ta3=Tp2;剩余的定時器4和5再次執(zhí)行步驟1)~3)后,設(shè)定定時器4和5的超時時刻為Ta4=Ta5=Tp4。采用方法二,調(diào)整后的超時時刻示意圖如圖7所示。
圖6 定時器超時時刻設(shè)定流程圖(方法二)
圖7 調(diào)整后的超時時刻示意圖(方法二)
方法三流程圖如圖8所示:
1)計算所有未調(diào)整超時時刻的定時器的Tp±Δt范圍,選擇被最多個定時器的Tp±Δt包括的時間段Δtmax;
2)在Δtmax中選擇一個時間點Tmax作為基準(zhǔn)時刻;
3)設(shè)定Tp±Δt范圍內(nèi)包括了Δtmax的定時器的超時時刻為Tmax;
4)對剩余的未設(shè)定超時時刻的定時器,重復(fù)步驟1)~3),直到完成所有定時器超時時刻的設(shè)置。
實例中,Tp2±Δt2,Tp3±Δt3,Tp4±Δt4和 Tp5±Δt5共同覆蓋的時間段Δtmax是被最多個定時器的Tp±Δt包括的時間段;在Δtmax中選擇時間點Tmax作為基準(zhǔn)時刻;設(shè)定定時器2~5的超時時刻Ta2=Ta3=Ta4=Ta5=Tmax;剩余的定時器1沒有其他未調(diào)整的定時器的Tp±Δt與Tp1±Δt1有共同的覆蓋范圍,設(shè)定定時器1的Ta1=Tp1。采用方法二,調(diào)整后的超時時刻示意圖如圖9所示。
綜上所述,于實例中,對于定時器1~5,未調(diào)整前共有5個超時時刻,即終端會被喚醒5次,而經(jīng)以上提出的技術(shù)方案調(diào)整后,在相同的應(yīng)用場景下,終端僅會被喚醒2次,有效地減少了終端被喚醒的次數(shù),使終端更長時間處于睡眠狀態(tài),降低了移動終端的功耗,特別地,對于使用大量定時器的系統(tǒng),效果將會更加明顯。
在TD-SCDMA手機(jī)平臺上,采用本低功耗技術(shù)方案,用安捷倫移動通信直流電源測試整機(jī)電流指標(biāo),整機(jī)電流指標(biāo)如圖10所示。
測試結(jié)果表明,該移動終端待機(jī)的平均整機(jī)電流約為5.58 mA,系統(tǒng)功耗很理想,而且系統(tǒng)只在每個尋呼周期(一個尋呼周期為128幀,640 ms)的開始才被定時器喚醒,進(jìn)入工作狀態(tài),然后又立即進(jìn)入睡眠狀態(tài),如此周而復(fù)始。
由此可見,本低功耗技術(shù)實現(xiàn)合理,能夠大大減少移動終端被定時器或者網(wǎng)絡(luò)時鐘喚醒的次數(shù),可以有效地降低系統(tǒng)功耗。
圖10 采用低功耗技術(shù)的整機(jī)電流指標(biāo)(截圖)
本文結(jié)合移動終端的特點,提出了一種基于定時器超時時刻調(diào)整的低功耗技術(shù),通過理論和實踐證明,該技術(shù)實際合理,能夠大大減小系統(tǒng)在睡眠過程中被定時器喚醒的次數(shù),從而有效地降低了系統(tǒng)功耗,這對于推動移動通信產(chǎn)業(yè)的發(fā)展有著積極的理論意義和現(xiàn)實意義。
[1]何建偉.一種移動通信設(shè)備的省電方法:中國,101001429A[P].2007-07-18.
[2]李引新,范柰青.移動終端及其省電的方法:中國,1988698C[P].2007-06-27.
[3]FINDLAY S.移動設(shè)備的電源管理[M].黃小軍,劉文,譯.北京:機(jī)械工業(yè)出版社,2010.
[4]孫海安.一種新的低功耗圖像及視頻編解碼算法[J].電視技術(shù),2000,24(11):9-11.
[5]張晟,石萬群,廖林.電源管理技術(shù)中的動態(tài)電壓頻率調(diào)整方法:中國,101281415A[P].2007-04-06.
[6]鄴勇,朱江.TD-LTE移動終端的系統(tǒng)級跨層省電機(jī)制[J].數(shù)字通信,2010(8):52-55.
[7]林銳.TD-SCDMA手機(jī)系統(tǒng)電源管理及省電的方法:中國,1645955A[P].2007-03-21.
[8]劉發(fā)貴,吳澤祥,麥偉鵬.一種基于嵌入式系統(tǒng)的磁盤動態(tài)管理方法:中國,101344812A[P].2009-01-14.
[9]劉琛.電子設(shè)備和電子設(shè)備的電源管理裝置:中國,201383843Y[P].2010-01-13.