欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種嵌入式Linux設(shè)備低功耗電源管理設(shè)備的制作方法

文檔序號:6607494閱讀:454來源:國知局
專利名稱:一種嵌入式Linux設(shè)備低功耗電源管理設(shè)備的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)字家庭技術(shù)領(lǐng)域,具體涉及一種嵌入式Linux設(shè)備低功耗電源管理 設(shè)備。
背景技術(shù)
Linux系統(tǒng)具有嵌入式操作系統(tǒng)需要的很多特色,如適應(yīng)于多種CPU和多種硬件 平臺、性能穩(wěn)定、可裁剪性很好、源碼開放、開發(fā)和使用簡單等。目前,基于Linux應(yīng)用的嵌 入式設(shè)備日益增多,Linux正在嵌入式領(lǐng)域發(fā)揮著越來越重要的作用。隨著各種便攜嵌入式設(shè)備性能的日益提高,功能日益豐富,其電源緊張的問題也 日益突出,國內(nèi)新推出的某些具有PDA等多種功能的智能電話在密集使用下只能維持半 天,多數(shù)攝像機和數(shù)碼相機在一次充電后都只有一個小時左右的累積工作時間。Linux作為 一個開放源代碼的操作系統(tǒng),擁有非常豐富的軟件資源和平臺支持,這使得嵌入式系統(tǒng)開 發(fā)的周期大大縮短,越來越多的商用和通用嵌入式系統(tǒng)都采用Linux作為軟件平臺。隨著 嵌入式設(shè)備性能提高,其能耗高的問題越來嚴重,因此需要對Linux系統(tǒng)的電源管理機制 進行深入研究,從而減少現(xiàn)有電源能耗高的問題。

發(fā)明內(nèi)容
基于本發(fā)明的問題,本發(fā)明實施例提供了一種嵌入式Linux設(shè)備低功耗電源管理 設(shè)備,能為嵌入式Linux設(shè)備提供低功耗運行環(huán)境。本發(fā)明實施例提供了一種嵌入式Linux設(shè)備低功耗電源管理設(shè)備,包括Linux內(nèi)核電源管理接口單元,用于為嵌入式高耗能外設(shè)提供電壓和頻率的快速 調(diào)節(jié)接口 ;空閑模式處理單元,用于為嵌入式Linux系統(tǒng)提供了空閑模式的進入和退出處理 方法;事件減少處理單元,用于為嵌入式Linux系統(tǒng)提供了如何讓嵌入式設(shè)備最長時間 工作在空閑模式的處理方法;CPU性能控制單元,用于為嵌入式Linux系統(tǒng)提供了降低CPU工作頻率的處理方法。所述Linux內(nèi)核電源管理接口單元為嵌入式外設(shè)建立內(nèi)核電源管理接口步驟如 下使用內(nèi)核函數(shù)pm_register對設(shè)備的每個實例(instance)進行注冊;在對硬件進行操作之前調(diào)用內(nèi)核函數(shù)pm_aCCeSS ;在系統(tǒng)進入suspend狀態(tài),或者從suspend狀態(tài)恢復(fù)的時候系統(tǒng)調(diào)用內(nèi)核函數(shù)pm_ callback ;當(dāng)設(shè)備不使用時調(diào)用pm_deV_idle函數(shù);當(dāng)被設(shè)備被卸載的時候,使用pnumregister取消設(shè)備的注冊。
所述空閑模式處理單元為嵌入式Linux系統(tǒng)提供了空閑模式的進入和退出處理 方法步驟如下當(dāng)Linux檢查到所有線程都處于阻塞狀態(tài),將CPU置于空閑模式;當(dāng)檢測到 任何中斷時候,CPU從空閑模式中被喚醒,然后繼續(xù)執(zhí)行后面的代碼;如果事件不能直接連接到外部中斷,用系統(tǒng)定時器定期喚醒CPU。所述如果事件不能直接連接到外部中斷,用系統(tǒng)定時器定期喚醒CPU包括在等待一個事件并且知道只要事件發(fā)生后在IOms內(nèi)能檢測到,那么可以啟動 IOms定時器,并把CPU置于空閑模式;每次處理定時中斷時都要檢查事件狀態(tài),如果狀態(tài)沒 有變化,就立刻回到空閑模式。所述事件減少處理單元為嵌入式Linux系統(tǒng)提供了如何讓嵌入式設(shè)備最長時間 工作在空閑模式的處理方法包括在進入空閑模式前關(guān)閉時隙中斷信號,只有再次出現(xiàn)中斷信號時才被喚醒;為調(diào)度程序進行可變超時設(shè)定;Linux知道每個線程無法確定等待的是外部還是 內(nèi)部事件,或者計劃在某特定時間再次運行;Linux可算出第一個線程預(yù)定何時運行,并相 應(yīng)地在CPU置于空閑模式之前設(shè)定定時器工作;可變超時設(shè)定不會對調(diào)度程序造成很大的 負擔(dān),但卻能節(jié)省電源和處理時間。所述CPU性能控制單元為嵌入式Linux系統(tǒng)提供了降低CPU工作頻率的處理方法 包括外設(shè)處于不工作狀態(tài)的時候,降低控制該外設(shè)的時鐘頻率;采用動態(tài)降低電壓方法;為不完全應(yīng)用cpu帶寬的線程降低CPU時鐘頻率。所述外設(shè)處于不工作狀態(tài)的時候,降低控制該外設(shè)的時鐘頻率包括當(dāng)外設(shè)板上IXD控制器需要使用一個儲存在片外SDRAM中的幀緩存;當(dāng)LCD控制器工作時,需要指定足夠高的內(nèi)存總線頻率來滿足顯示器刷新速率的
需要;在IXD不工作的情況下降低SDRAM總線頻率。通過實施本發(fā)明,可以減少嵌入式Linux設(shè)備的耗電量,以及減少嵌入式Linux設(shè) 備處理器使用壽命。


為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本 發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可 以根據(jù)這些附圖獲得其他的附圖。圖1為本發(fā)明實施例中的嵌入式Linux設(shè)備低功耗電源管理設(shè)備結(jié)構(gòu)示意圖;圖2為本發(fā)明實施例中的嵌入式Linux設(shè)備低功耗電源管理方法流程圖;圖3為本發(fā)明實施例中的Linux內(nèi)核電源管理接口建立流程圖;圖4為本發(fā)明實施例中的嵌入式Linux系統(tǒng)提供了空閑模式的進入和退出方法流 程圖5為本發(fā)明實施例中的為嵌入式Linux系統(tǒng)提供了如何讓嵌入式設(shè)備最長時間 工作在空閑模式的方法流程圖;圖6為本發(fā)明實施例中的為嵌入式Linux系統(tǒng)提供了降低CPU工作頻率的方法流 程圖。
具體實施方式
下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完 整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;?本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其它 實施例,都屬于本發(fā)明保護的范圍。本發(fā)明實施例提供一種嵌入式Linux設(shè)備低功耗電源管理實現(xiàn)方法及其相應(yīng)的 設(shè)備,能為嵌入式Linux設(shè)備提供低功耗運行環(huán)境,以下分別進行詳細說明。如圖1所示,圖1示出了本發(fā)明實施例中的嵌入式Linux設(shè)備低功耗電源管理設(shè) 備結(jié)構(gòu)示意圖,其主要包括以下單元=Linux內(nèi)核電源管理接口單元、空閑模式處理單元、 事件減少處理單元、CPU性能控制單元等等。這里的Linux內(nèi)核電源管理接口單元為嵌入式高耗能外設(shè)提供電壓和頻率的快 速調(diào)節(jié)接口。所述空閑模式處理單元為嵌入式Linux系統(tǒng)提供了空閑模式的進入和退出方法。所述事件減少處理單元為嵌入式Linux系統(tǒng)提供了如何讓嵌入式設(shè)備最長時間 工作在空閑模式的方法。所述CPU性能控制單元為嵌入式Linux系統(tǒng)提供了降低CPU工作頻率的方法。相應(yīng)的,圖2示出了本發(fā)明實施例中基于圖1中功能模塊所實現(xiàn)的方法流程圖,具 體包括步驟1 為嵌入式外設(shè)建立內(nèi)核電源管理接口。步驟2 為嵌入式Linux系統(tǒng)提供空閑模式處理方法。步驟3 為嵌入式Linux系統(tǒng)提供減少事件的方法。步驟4 為嵌入式Linux系統(tǒng)提供控制CPU性能的方法。圖3示出了本發(fā)明實施例中的Linux內(nèi)核電源管理接口建立流程圖,電源管理策略的基礎(chǔ)是調(diào)整處理器內(nèi)核的工作電壓和頻率。不過,現(xiàn)代的嵌入式 CPU具有非常高的電源效率,以至于CPU并不總是最主要的耗能組件。其他高耗能的組件包 括高性能內(nèi)存、顯示屏和射頻接口等,因此,如果電源管理系統(tǒng)只能調(diào)節(jié)CPU內(nèi)核的電壓和 頻率,那么它的用途將有限。一個真正有效的電源管理方案應(yīng)該可以采用與CPU內(nèi)核執(zhí)行 相協(xié)調(diào)或相獨立的方式,支持對一系列電壓和頻率的快速調(diào)節(jié)。Linux 支持兩種電源管理標(biāo)準(zhǔn)APM (Advanced Power Managememt)禾口 ACPI (Advanced configuration Power Interface)。APM 是傳統(tǒng)的高級電源管理方案,目 前仍然使用在許多基于Linux便攜式設(shè)備中;而ACPI則提供了更為靈活的電腦和設(shè)備管 理接口。這兩個標(biāo)準(zhǔn)不能同時運行,缺省情況下,Linux運行ACPI。APM可以使機器處于 Suspend (懸掛)或Standby (待機)狀態(tài),以及檢查電池容量;而ACPI還可以使外設(shè)(如 顯示器、PCI)單獨斷電,在節(jié)省電能方面有更多的控制。為了讓電源管理功能生效,需要在Linux內(nèi)核打開它,并且在Linux里加載必需的應(yīng)用軟件。Linux內(nèi)核中電源管理機制負責(zé)維持整個系統(tǒng)的電源狀態(tài)。它可以看成是為驅(qū)動 程序、中介軟件和應(yīng)用程序提供服務(wù)的元素。通過在驅(qū)動程序中實現(xiàn)電源管理接口,可以讓驅(qū)動程序密切監(jiān)控系統(tǒng)狀態(tài)。它們 在外部事件的驅(qū)動下,透過設(shè)定不同的狀態(tài)反映設(shè)備的工作情況?;谏鲜鲆?,本發(fā)明實施例中Linux內(nèi)核電源管理接口建立包括如下步驟 步驟11 使用內(nèi)核函數(shù)pm_regiSter對設(shè)備的每個實例(instance)進行注冊;步驟12 在對硬件進行操作之前調(diào)用內(nèi)核函數(shù)pm_aCCeSS(這樣可保證設(shè)備已被 喚醒,并處于ready狀態(tài));步驟13 在系統(tǒng)進入suspend狀態(tài),或者從suspend狀態(tài)恢復(fù)的時候系統(tǒng)調(diào)用內(nèi) 核函數(shù) pm_calIback ;步驟14 當(dāng)設(shè)備不使用時調(diào)用pm_deV_idle函數(shù)(這個操作是可選的,以增強設(shè) 備idle狀態(tài)的監(jiān)測能力);步驟15 當(dāng)被設(shè)備被卸載的時候,使用pnumregister取消設(shè)備的注冊。圖4為空閑模式處理單元為嵌入式Linux系統(tǒng)提供了空閑模式的進入和退出方法 流程圖。很多嵌入式CPU都具有能降低功耗的電源工作模式,最常用的是空閑模式。此時 CPU內(nèi)核指令執(zhí)行部分關(guān)閉,而所有外設(shè)和中斷信號仍處于工作狀態(tài),具體包括步驟步驟21 當(dāng)Linux檢查到所有線程都處于阻塞狀態(tài)(如等待中斷、事件或定時時 間),將CPU置于空閑模式。步驟22 當(dāng)檢測到任何中斷(如觸摸屏事件、按下按鍵事件等)時候,CPU從空閑 模式中被喚醒,然后繼續(xù)執(zhí)行后面的代碼。步驟23 如果事件不能直接連接到外部中斷,用系統(tǒng)定時器定期喚醒CPU。例如在 等待一個事件并且知道只要事件發(fā)生后在IOms內(nèi)能檢測到,那么可以啟動IOms定時器,并 把CPU置于空閑模式。每次處理定時中斷時都要檢查事件狀態(tài),如果狀態(tài)沒有變化,就立刻 回到空閑模式。圖5為事件減少處理單元為嵌入式Linux系統(tǒng)提供了如何讓嵌入式設(shè)備最長時間 工作在空閑模式的方法流程圖,通常CPU的定時中斷間隔為1ms,Linux會頻繁使CPU置于 空閑模式,并一直維持到被中斷喚醒。在這種情況下,最有可能喚醒CPU中斷的是定時器中 斷本身。即使所有其他線程被阻塞,在其他中斷、內(nèi)部事件及長時間延遲之前,定時器中斷 也會以每秒100次的頻率把CPU從空閑模式中喚醒,以運行調(diào)度程序。就算調(diào)度程序確定所 有線路都被阻塞,并很快將CPU回復(fù)到空閑模式,這樣頻繁操作也會浪費大量電源。因此, 應(yīng)盡可能長時間地將CPU置于空閑模式,而減少事件是解決這個問題的有效途徑。通過分 析代碼和系統(tǒng)要求,以決定是否能改變處理中斷的方式實現(xiàn)。這里的事件減少處理單元為嵌入式Linux系統(tǒng)提供了如何讓嵌入式設(shè)備最長時 間工作在空閑模式的方法包括步驟步驟31 在進入空閑模式前關(guān)閉時隙中斷信號,只有再次出現(xiàn)中斷信號時才被喚醒。步驟32 為調(diào)度程序進行可變超時設(shè)定。Linux知道每個線程無法確定等待的是 外部還是內(nèi)部事件,或者計劃在某特定時間再次運行。Linux可算出第一個線程預(yù)定何時運行,并相應(yīng)地在CPU置于空閑模式之前設(shè)定定時器工作??勺兂瑫r設(shè)定不會對調(diào)度程序造 成很大的負擔(dān),但卻能節(jié)省電源和處理時間。圖6為CPU性能控制單元為嵌入式Linux系統(tǒng)提供了降低CPU工作頻率的方法流 程圖,CPU在降低功耗方面的最新進展表明,CPU消耗的能量與驅(qū)動CPU的時鐘頻率以及應(yīng) 用其內(nèi)核上的電壓平方成正比。CPU允許動態(tài)降低時鐘速度。降低一半時鐘速度,功耗將成 比例下降。但是僅采用這種技術(shù)實現(xiàn)節(jié)能,還需要一些技巧.因為執(zhí)行的代碼可能要兩倍 長的時間才能完成,即使這樣也不會省電這里的CPU性能控制單元為嵌入式Linux系統(tǒng)提供了降低CPU工作頻率的方法步 驟如下步驟41 外設(shè)處于不工作狀態(tài)的時候,相應(yīng)降低控制該外設(shè)的時鐘頻率。例如當(dāng) 外設(shè)板上LCD控制器需要使用一個儲存在片外SDRAM中的幀緩存。當(dāng)LCD控制器工作時,需 要指定足夠高的內(nèi)存總線頻率來滿足顯示器刷新速率的需要。在LCD不工作的情況下(例 如當(dāng)PDA僅作為MP3播放器使用時),降低SDRAM總線頻率,可以節(jié)省整個系統(tǒng)的功耗。步驟42 采用動態(tài)降低電壓方法。越來越多的CPU允許降低電壓,以適應(yīng)CPU時 鐘速度的下降,這樣在降低時鐘速度時也能省電。事實上,只要CPU不飽和,頻率和電壓就 能不斷減少,這樣還是能完成工作,而消耗的電源總體上卻比較低。步驟43 為不完全應(yīng)用cpu帶寬的線程降低CPU時鐘頻率。并不是所有線程都消 耗同樣多CPU帶寬,完全應(yīng)用CPU帶寬的線程,會隨著CPU時鐘速度下降而花更長的時間才 能完成,這些線程使用分配給它們的每一個周期。但是在某些特殊情況下,I/O線程采用分 配給它的所有CPU周期,即便CPU時鐘速率下降,也要用同樣長的時間才能完成。例如,像 很多PDA使用的PCMCIA卡接口,當(dāng)數(shù)據(jù)寫人快閃存儲卡時,系統(tǒng)瓶頸不是CPU的速度,而是 物理總線接口以及卡的固件為擦掉和重新編程閃存所花的時間,因此當(dāng)此類線程運行時, 可以適當(dāng)?shù)媒档蚦pu頻率。綜上,通過實施本發(fā)明,可以減少嵌入式Linux設(shè)備的耗電量,以及減少嵌入式 Linux設(shè)備處理器使用壽命。以上對本發(fā)明實施例進行了詳細介紹,本文中應(yīng)用了具體個例對本發(fā)明的原理及 實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想; 同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式
及應(yīng)用范圍上均會 有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。
權(quán)利要求
一種嵌入式Linux設(shè)備低功耗電源管理設(shè)備,其特征在于,包括Linux內(nèi)核電源管理接口單元,用于為嵌入式高耗能外設(shè)提供電壓和頻率的快速調(diào)節(jié)接口;空閑模式處理單元,用于為嵌入式Linux系統(tǒng)提供了空閑模式的進入和退出處理方法;事件減少處理單元,用于為嵌入式Linux系統(tǒng)提供了如何讓嵌入式設(shè)備最長時間工作在空閑模式的處理方法;CPU性能控制單元,用于為嵌入式Linux系統(tǒng)提供了降低CPU工作頻率的處理方法。
2.如權(quán)利要求1所述的嵌入式Linux設(shè)備低功耗電源管理設(shè)備,其特征在于,所述 Linux內(nèi)核電源管理接口單元為嵌入式外設(shè)建立內(nèi)核電源管理接口步驟如下使用內(nèi)核函數(shù)pm_regiSter對設(shè)備的每個實例(instance)進行注冊; 在對硬件進行操作之前調(diào)用內(nèi)核函數(shù)pm_aCCeSS ;在系統(tǒng)進入suspend狀態(tài),或者從suspend狀態(tài)恢復(fù)的時候系統(tǒng)調(diào)用內(nèi)核函數(shù)pm_ callback ;當(dāng)設(shè)備不使用時調(diào)用pm_dev_idle函數(shù); 當(dāng)被設(shè)備被卸載的時候,使用pnumregister取消設(shè)備的注冊。
3.如權(quán)利要求1所述的嵌入式Linux設(shè)備低功耗電源管理設(shè)備,其特征在于,所述空閑 模式處理單元為嵌入式Linux系統(tǒng)提供了空閑模式的進入和退出處理方法步驟如下當(dāng)Linux檢查到所有線程都處于阻塞狀態(tài),將CPU置于空閑模式; 當(dāng)檢測到任何中斷時候,CPU從空閑模式中被喚醒,然后繼續(xù)執(zhí)行后面的代碼; 如果事件不能直接連接到外部中斷,用系統(tǒng)定時器定期喚醒CPU。
4.如權(quán)利要求3所述的嵌入式Linux設(shè)備低功耗電源管理設(shè)備,其特征在于,所述如果 事件不能直接連接到外部中斷,用系統(tǒng)定時器定期喚醒CPU包括在等待一個事件并且知道只要事件發(fā)生后在IOms內(nèi)能檢測到,那么可以啟動IOms定 時器,并把CPU置于空閑模式;每次處理定時中斷時都要檢查事件狀態(tài),如果狀態(tài)沒有變 化,就立刻回到空閑模式。
5.如權(quán)利要求1所述的嵌入式Linux設(shè)備低功耗電源管理設(shè)備,其特征在于,所述事件 減少處理單元為嵌入式Linux系統(tǒng)提供了如何讓嵌入式設(shè)備最長時間工作在空閑模式的 處理方法包括在進入空閑模式前關(guān)閉時隙中斷信號,只有再次出現(xiàn)中斷信號時才被喚醒; 為調(diào)度程序進行可變超時設(shè)定;Linux知道每個線程無法確定等待的是外部還是內(nèi)部 事件,或者計劃在某特定時間再次運行;Linux可算出第一個線程預(yù)定何時運行,并相應(yīng)地 在CPU置于空閑模式之前設(shè)定定時器工作;可變超時設(shè)定不會對調(diào)度程序造成很大的負 擔(dān),但卻能節(jié)省電源和處理時間。
6.如權(quán)利要求1所述的嵌入式Linux設(shè)備低功耗電源管理設(shè)備,其特征在于,所述CPU 性能控制單元為嵌入式Linux系統(tǒng)提供了降低CPU工作頻率的處理方法包括外設(shè)處于不工作狀態(tài)的時候,降低控制該外設(shè)的時鐘頻率; 采用動態(tài)降低電壓方法;為不完全應(yīng)用cpu帶寬的線程降低CPU時鐘頻率。
7.如權(quán)利要求6所述的嵌入式Linux設(shè)備低功耗電源管理設(shè)備,其特征在于,所述外設(shè) 處于不工作狀態(tài)的時候,降低控制該外設(shè)的時鐘頻率包括當(dāng)外設(shè)板上LCD控制器需要使用一個儲存在片外SDRAM中的幀緩存; 當(dāng)LCD控制器工作時,需要指定足夠高的內(nèi)存總線頻率來滿足顯示器刷新速率的需要;在LCD不工作的情況下降低SDRAM總線頻率。
全文摘要
本發(fā)明實施例公開了一種嵌入式Linux設(shè)備低功耗電源管理設(shè)備,其包括Linux內(nèi)核電源管理接口單元,用于為嵌入式高耗能外設(shè)提供電壓和頻率的快速調(diào)節(jié)接口;空閑模式處理單元,用于為嵌入式Linux系統(tǒng)提供了空閑模式的進入和退出處理方法;事件減少處理單元,用于為嵌入式Linux系統(tǒng)提供了如何讓嵌入式設(shè)備最長時間工作在空閑模式的處理方法;CPU性能控制單元,用于為嵌入式Linux系統(tǒng)提供了降低CPU工作頻率的處理方法。通過實施本發(fā)明,可以減少嵌入式Linux設(shè)備的耗電量,以及減少嵌入式Linux設(shè)備處理器使用壽命。
文檔編號G06F1/32GK101968678SQ201010249878
公開日2011年2月9日 申請日期2010年8月10日 優(yōu)先權(quán)日2010年8月10日
發(fā)明者張潔, 李苗, 殷偉, 王棟, 羅笑南 申請人:東莞環(huán)亞高科電子有限公司;廣州鼎宇電子科技有限公司;中山大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
明光市| 横山县| 山丹县| 绥德县| 竹山县| 航空| 筠连县| 中牟县| 普定县| 桃园县| 黔西| 清原| 旬阳县| 阿合奇县| 佛教| 苍溪县| 正安县| 镇宁| 交口县| 密云县| 商水县| 共和县| 呼伦贝尔市| 昌吉市| 阳城县| 赣榆县| 河曲县| 元江| 莱芜市| 绥化市| 阜康市| 松江区| 涞源县| 凤阳县| 商南县| 云阳县| 白河县| 临武县| 长兴县| 承德市| 夹江县|