
下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、wince電源管理應對移動嵌入式能耗瓶頸陪同著移動產品的普及,已經成為重要技術指標和產品的有機組成。典型移動嵌入式設備對能耗越來越敏感,電源管理技術正成為產品設計的關鍵所在。為了應對電源管理瀕臨的挑戰(zhàn),如何設計出高效的嵌入式系統(tǒng)的電源管理已成為討論熱點。典型移動嵌入式系統(tǒng)能耗主要部件包括嵌入式微處理器cpu、內存、及背光、電源轉換部件、外設控制器等。在這些元件中,有些元件能耗固定,有些元件可在不同時光段工作并有多種可控的耗能狀態(tài),后者的有效用法成為嵌入式系統(tǒng)節(jié)能的關鍵所在。1什么是wince電源管理(1)電源管理概念與辦法在電池供電的移動嵌入式系統(tǒng)中,普通采納高效率的電源芯片用于供電管理,或采
2、納大容量的電池以解決能耗需求,但這兩種技術的進展還無法滿足移動嵌入式設備的動態(tài)功耗和靜態(tài)功耗。有一種辦法可以協(xié)調高性能與低功耗之間的沖突,就是按照系統(tǒng)負載舉行性能調整,通過停止某些模塊的時鐘和電源供給將能耗降至最低。嵌入式系統(tǒng)按功率消耗由小到大分為睡眠(sleep)、空閑(idle)、運行(run)等模式。大多時光內,在運行態(tài)(run)時設備所有正常工作,而在睡眠與空閑模式時處理器則可以根據特定的模式舉行相應的節(jié)能。因此,電源管理的目的是節(jié)能,基本節(jié)能辦法是使系統(tǒng)適時的進出休眠狀態(tài)。在節(jié)能狀態(tài)下處理器掛起,主存儲器運行在節(jié)能的自刷新模式,惟獨功耗管理、喚醒電路繼續(xù)工作。比如用戶按下on/off
3、按鈕,或者監(jiān)視用戶活動的定時器超時,或者應用程序api都可以使得嵌入式系統(tǒng)休眠,當用戶再次按下on/off或者有其他喚醒中斷發(fā)生時,系統(tǒng)就會退出休眠。因此,電源管理模塊和用戶活動狀況密不行分,電源管理是用戶活動所驅動的。wince處理用戶與系統(tǒng)交互的部分是gwes,所以早期電源管理工作也是由gwes來實現。但gwes提供的電源管理模塊功能過于粗糙死板,全部子設備只能有on和suspend狀態(tài),應用程序無法得到任何狀態(tài)轉換通知。后來,wince引入了電源管理pm(power manager)模塊,用以替代gwes中的電源管理功能,新的電源管理模塊提供更完整和靈便的功能,如子設備電源狀態(tài)可以單獨設
4、定,應用可以獲得電源通知等。因此,電源管理器負責管理設備電源,并且與不支持電源管理功能的設備和應用兼容,在內核oal層、設備驅動程序和應用程序之間充當中間人角色。(2)電源管理器結構在用法電池供電的wince系統(tǒng)中,正確設計電源管理非常關鍵。在功能上大致可以分為系統(tǒng)級電源管理、動態(tài)電源管理、設備電源管理等三類。通常,應用程序在大多數時光都不需要關注wince 設備的電源損耗,但是在某些時候要注重這些損耗。wince電源管理器通過一個名為pm.dll的動態(tài)鏈接庫與設備管理器device.exe鏈接。pm.dll動態(tài)鏈接庫支持三類接口:一是驅動程序接口:為需要舉行電源管理的設備的驅動程序用法;二是
5、應用程序接口:為需要利用電源管理的應用程序用法;三是提示接口(notification):為需要接受電源大事提示的應用程序用法。例如,wince系統(tǒng)先檢查任務負載狀況,假如沒有需要運行的任務,則普通進入空閑節(jié)能狀態(tài)等待喚醒,在空閑一段時光后進入深度睡眠,掛起到ram中或者硬盤上。在運行任務期間,wince還可以利用硬件提供的電源管理功能動態(tài)調整芯片運行和頻率,對系統(tǒng)舉行越發(fā)細致的電源管理。2wince電源管理的分類(1)系統(tǒng)電源狀態(tài)win ce系統(tǒng)電源狀態(tài)更多的是代表系統(tǒng)電源的一種配置計劃,它是各個子設備電源配置的集合。它設定一種可能浮現的情景,事先擬定了此情景下電力分配策略(哪些子設備打開,
6、哪些子設備關閉)。wince支持以下幾種電源狀態(tài):on狀態(tài),用戶在主動用法設備。useridle狀態(tài),用戶與設備停止交互,但仍有可能用法設備。systemidle狀態(tài),在經過一段時光的useridle后進入此狀態(tài),但是驅動和系統(tǒng)仍然活動。suspend狀態(tài),當驅動程序和系統(tǒng)進程不再與系統(tǒng)交互時進入此狀態(tài)。coldreboot和reboot狀態(tài),冷啟動后系統(tǒng)電源狀態(tài)。因此,在這個基礎上技術人員可以按照自己的平臺特點,增強新的策略來滿足不同移動嵌入式產品的需要。頻繁的做法是設計一個電源按鍵的流驅動,當檢測到按鍵時候呼叫api將系統(tǒng)電源轉換到suspend,如on/off按鍵。還有就是加入背燈控制,
7、比如在on狀態(tài)下哀求顯示驅動打開背燈,在useridle和systemidle狀態(tài)下哀求顯示驅動關閉背燈。(2)設備電源管理wince加入了高級的電源管理組件功能,它允許每個外設具有自己的電源狀態(tài),這有別于普通的系統(tǒng)電源狀態(tài)(system power state),故被稱作設備電源狀態(tài)(device power state)?,F在的應用程序普通都有能力設置個別外設的電源狀態(tài),比如一個文件傳輸程序,在保持串口或者端口正常通訊時,可以關閉顯示屏幕和背光,這就為實現更高級別的動態(tài)電源管理提供了可能。電源管理器和支持電源管理的設備之間的交互包括兩種機制:一是電源管理器到驅動程序,電源管理器用法devi
8、ceiocontrol()函數向設備驅動程序發(fā)送i/o控制(ioctls),因此設備必需能響應電源管理器的查詢、狀態(tài)設置等ioctls。二是驅動程序到電源管理器,驅動程序用法devicepower notify()函數與電源管理器交互,例如哀求電源管理器把它的設備置于某種狀態(tài),假如電源管理器接受該哀求則通過發(fā)送ioctl_power_set等ioctls來舉行設置。(3)應用程序與電源管理器交互win ce應用程序與電源管理器有兩種交互機制:一是應用程序接口,用以獵取當前系統(tǒng)和設備的電源狀態(tài)。應用程序通過setsystempowerstate()來設置系統(tǒng)電源狀態(tài),通過setdevicepow
9、er來設置子設備電源狀態(tài),通過setpowerrequirement通知電源管理器將子設備設置在特別電源狀態(tài)下,不隨系統(tǒng)電源轉變。二是電源大事提示接口。為了實現提示接口,應用程序還可通過createmsgqueue()函數建立消息隊列,將其句柄傳給電源管理器,電源管理器再把提示發(fā)送到消息隊列中,調用者可挑選可用提示的一個子集舉行響應。(4)oal層電源管理的實現oem adaptation layer(oal)是一層與硬件平臺相關的代碼,它在電源狀態(tài)轉換中飾演著重要的角色。在wince中,oal層電源管理通過oemidle()和oempoweroff()函數實現。其中oeminit是初次上電時
10、(或在冷啟后)被調用,如初始化系統(tǒng)內存,建立調試環(huán)境,設置系統(tǒng)中斷等;當系統(tǒng)中沒有任何可調度的線程時,內核就調用oemidle()以實現降低處理器的頻率來達到省電目的,這個函數在bsp中可以由oem修改定制。當有外部中斷時,cpu可從其中復原,如當用戶按下off按鈕或者應用調用api進入suspend狀態(tài)時候,內核會調用oempoweroff()函數,在系統(tǒng)喚醒后繼續(xù)從oempoweroff()被掛起處執(zhí)行。oempoweroff函數是基于硬件平臺來實現的,它能舉行cpu寄存器保存、設置及喚醒復原等功能。系統(tǒng)idle狀態(tài)和前面說的useridle狀態(tài)是不同概念,前者是cpu負荷狀況驅動,代表系
11、統(tǒng)空閑;后者是用戶活動驅動,代表用戶空閑。2從應用程序交互分析電源管理狀態(tài)當wince 系統(tǒng)被掛起,為了省電用戶需要關閉處理器及大部分設備供電,然后在需要喚醒時再通過定時器或無線模塊喚醒。普通來說,被喚醒后系統(tǒng)會返回到與系統(tǒng)掛起前一樣的狀態(tài),因此應用程序根本不知道系統(tǒng)曾被掛起,除非它明確地哀求當系統(tǒng)掛起時通知它。因此從應用程序的角度看,電源管理有三種方式:查詢電源狀態(tài)、轉變電源狀態(tài)和防止電源狀態(tài)轉變。(1)查詢電源狀態(tài)對嵌入式系統(tǒng)來說,oem廠約定義了系統(tǒng)的電源狀態(tài)。例如,電源狀態(tài)可能是打開(on),空閑(idle)和掛起(suspend),還有screenoff、incradle和 onba
12、ttery等。從應用程序的觀點看,電源管理程序提供了通知電源狀態(tài)轉變的能力以及通過一系列的函數統(tǒng)一轉變電源狀態(tài)的能力。因此,查詢系統(tǒng)當前的電源狀態(tài)是wince的一個重要功能,可以調用dword getsystempowerstatusex2(psystem_power_status_ex2,dword dwlen,bool fupdate)來查詢。函數用三個參數來告知wince系統(tǒng)查詢電池驅動最后的信息或者挺直返回電池緩存中的信息,系統(tǒng)大約每5秒查詢一次電池狀態(tài)。又由于wince不驗證電池驅動返回的數據,因此不同的系統(tǒng)有不同的變幻,這個函數返回歸的數據是主要依靠于電池驅動。例如,許多系統(tǒng)在用法
13、ac電源時不報告精確的電源級數,另一些系統(tǒng)則相反。(2)轉變電源狀態(tài)應用程序能通過一系列的方式轉變系統(tǒng)的電源狀態(tài),在wince中首選的方式是用法電源管理程序。電源管理程序提供函數來允許應用程序來控制電源狀態(tài),如應用程序通過調用函數setsystempowerstate來哀求特定的電源狀態(tài)。普通有兩個方式來控制電源,第一個方式是應用程序給定一個電源設定;其次個方式是應用程序哀求電源狀態(tài)不要低于給定的級別。頻繁的例如:關閉電源,應用程序通過調用gwespoweroffsystem函數掛起系統(tǒng),如函數void gwespoweroffsystem(void)的調用就會掛起系統(tǒng)。 關閉屏幕,假如系統(tǒng)是
14、有色背光顯示,那么主要的電源消耗不是cpu而是背光。在某一些環(huán)境下,一個應用程序運行時并不需要顯示在屏幕上。例如音樂播放器應用程序,當用戶聽音樂的時候不關注屏幕,在這些情形下關閉背光將意味著提高電池壽命。固然,當用戶想看屏幕時,任何關閉背光應用程序就需要一個容易的方式來重新打開屏幕。顯示控制是通過ext-escape函數實現,這個函數允許應用程序打開或關閉顯示。另外,wince沒有一個統(tǒng)一的方式來控制背光的亮度,每個系統(tǒng)都有它自己的oem特有方式來控制背光亮度。打開系統(tǒng)電源,意思是說當被掛起的應用程序要再次運行時,必需要有一個方式來喚醒一個掛起的系統(tǒng)電源。辦法可以是應用程序通過用法消息api(
15、notification api)把系統(tǒng)喚醒。在普通狀況下,oem廠商會分配一些中斷條件以便電源打開或喚醒。(3)防止系統(tǒng)關閉電源另一方面,防止系統(tǒng)掛起也是一個重要的問題。wince系統(tǒng)通常被設置為當一段時光沒實用戶輸入就自動掛起。因此,假如定時器到達預先的沒實用戶輸入的間隔,系統(tǒng)會自動掛起。當要防止自動掛起時,應用程序可以周期性地調用這個函數:void winapi systemidletimerreset (void),這個函數能重設wince用來監(jiān)視用戶輸入的定時器。所以當一個應用程序需要更改超時值時,就可以通過調用systemidletimerreset把掛起超時值轉變。普通來說,wince系統(tǒng)維護三個超時值,防止電源被自動掛起可以用法systemparametersinfo來查詢這三個值,并在最短時光內返回調用systemidletimerreset。假如超時值被設置為0,表示超時值被禁止。(4)電源通知最后,電源管理程序還有一個非常受
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2022年北京市密云初三二模英語試卷及答案
- 電力儲能知識培訓課件
- 2020-2021深圳安康學校初中部小學三年級數學上期末模擬試題及答案
- 罐清洗施工方案
- 水平挑網施工方案
- 養(yǎng)殖場黃魚買賣合同范本
- 加拿大勞務合同范例
- 各類評審評估整改工作的總結計劃
- 學校藝術作品創(chuàng)作展的策劃計劃
- 探索幼兒園環(huán)境教育的工作計劃
- 幼兒園6S管理培訓課件
- GB/T 25052-2024連續(xù)熱浸鍍層鋼板和鋼帶尺寸、外形、重量及允許偏差
- 電梯大修標準
- 狗狗訓練合同
- 胰島素正確注射方式
- Q-GDW 12461-2024 電力物資包裝通.用技術規(guī)范
- 部編版三年級語文下冊課內外閱讀訓練(類文閱讀含答案)
- 2024年北京電子科技職業(yè)學院高職單招筆試歷年職業(yè)技能測驗典型例題與考點解析含答案
- 《藥品經營質量管理規(guī)范-令GSP管理》課件
- 2025屆新高考數學沖刺復習 突破爪型三角形的八大妙手
- 變電站工程的驗收規(guī)范
評論
0/150
提交評論