μCOS-II實時操作系統在μ′nSPTM中的低功耗研究
方案一:系統在空閑狀態下關閉實時時鐘,進入低功耗狀態。但這種方法會使操作系統停止運行而無法進行任務調度,故需要定時器周期性地喚醒CPU。CPU被喚醒之后重新判斷是否有任務處于就緒態,如果有就執行該任務;如果沒有則再次進入空閑狀態并關閉實時時鐘進入低功耗狀態。其工作時序見圖2。其中用戶任務工作在高功耗狀態,空閑任務則關閉實時時鐘,處于低功耗狀態。本文引用地址:http://www.104case.com/article/152443.htm
方案二:系統在空閑狀態下不關閉實時時鐘,而是進入最低的工作頻率,此時處理器處于低功耗工作狀態,操作系統仍然可以進行任務調度。當有用戶任務時,由用戶任務先把實時時鐘頻率升高,然后再運行用戶代碼。其工作時序見圖3。其中每次進入用戶任務之前,先將實時時鐘頻率升高,用戶任務運行結束進入空閑狀態時,再將實時時鐘頻率降低。
測試和方案對比:
首先在處理器μ′nSPTM處理器上移植μCOS-Ⅱ實時操作系統。運行正常后測試用的用戶任務是以1 Hz的頻率點亮LED指示燈。表2是測試數據(外電源電壓4.82 V,穩壓后處理器電壓3.3 V)。
測試結論:
雖然以整機電流進行測試不能完全反映處理器的工作情況,但從以上數據可以知道,采用兩種方案確實可以降低系統功耗,而且方案一的效果更好,但需要占用一個定時器,在測試中發現當任務增加后功耗很快達到方案二水平,且有時不能正常喚醒;方案二很穩定,而且不需要定時器,用戶可以根據任務的運算量設定不同的時鐘頻率,如需要大的運算任務,可在進入用戶任務之前將時鐘頻率設置為較高值,反之設置為較低值。以上采用的方法只是動態地改變系統的頻率,沒有動態地改變電壓水平,因此在降低嵌入式系統功耗方面依然有進一步的潛力。但動態改變電壓水平需要更多硬件支持,在目前廣泛使用的中低端處理器中,通過擴展實時操作系統內核動態地改變系統的頻率對降低嵌入式系統功耗是大有裨益的。
4 結 語
在嵌入式系統設計中,由于普遍存在CPU高速運行功能和有限任務處理要求的巨大差異,會形成系統在時間與空間上巨大的無效操作。如果能夠根據系統的工作狀態自動地進行功耗管理,使系統工作于系統狀態相適應的功耗模式,故能極大地降低系統功耗,延長電池待機時間。這些工作對嵌入式開發有重大的意義。
p2p機相關文章:p2p原理
評論