鐵路交通信息系統PDA的低功耗設計

發(fā)布時(shí)間:2010-11-17 12:39    發(fā)布者:designer
關(guān)鍵詞: PDA , 低功耗 , 交通 , 鐵路 , 信息系統
闡述在集成傳呼功能、基于嵌入式處理器EP7211開(kāi)發(fā)實(shí)現的二合一鐵路交通信息系統PDA中,為了降低系統的功耗,從硬件和軟件兩方面采取的各種措施。這些措施基于一定的低功耗設計原則,具有普遍性,適合一般的嵌入式系統開(kāi)發(fā)。  

PDA即Personal Digital Assitant(個(gè)人數字助理)的縮寫(xiě),是近年來(lái)繼尋呼機和移動(dòng)電話(huà)之后,在國內市場(chǎng)迅速崛起的便攜式電子產(chǎn)品。目前,國內傳統性能的PDA產(chǎn)品經(jīng)過(guò)前幾年的高速發(fā)展后,市場(chǎng)需求基本飽和。不過(guò),經(jīng)過(guò)行業(yè)應用改造后的PDA產(chǎn)品,如文曲星、藍火等已經(jīng)在國內市場(chǎng)大顯身手了。分析市場(chǎng)需求,我們研發(fā)了集成傳呼功能的、專(zhuān)門(mén)面向交通行業(yè)應用的鐵路交通信息系統PDA。本PDA系統除了具備傳統PDA的個(gè)人名片管理、辭典檢索、信息速記功能外,更重要的是提供交通領(lǐng)域的民航各種航班查詢(xún)和全國鐵路列車(chē)的刻表查詢(xún),通過(guò)傳呼系統及時(shí)廣播鐵路和民航行業(yè)應用方面的如航班晚點(diǎn)、車(chē)次晚點(diǎn)、剩余票額等相關(guān)行業(yè)信息。  

PDA系統屬于便攜式電子產(chǎn)品。這類(lèi)產(chǎn)品,



性能指標日益向實(shí)用化、方便化發(fā)展。產(chǎn)品不僅要求功能完備,用戶(hù)界面友好,操作方便簡(jiǎn)潔,而且要求產(chǎn)品壽命長(cháng),功耗低。
  
產(chǎn)品低功耗設計一般從硬件和軟件兩個(gè)角度來(lái)考慮。本文重點(diǎn)闡述該PDA系統所采用的降低系統功耗的各種措施。  

1 鐵路交通信息系統PDA的體系結構  

在分析本PDA系統的功能性和非功能需求,充分了解市場(chǎng)硬件行性的基礎上,設計了本PDA系統,其硬件體系結構框圖如圖1所示。  

嵌入式處理器EP7211(核心模塊)進(jìn)行數據處理,傳呼譯碼芯片接收傳呼信息并根據傳呼協(xié)議自動(dòng)譯碼;LCD提供數據顯示輸出,觸摸屏提供用戶(hù)輸入接口;Flash用來(lái)存儲可執行應用程序和數據;SRAM為程序運行提供內存空間;語(yǔ)音錄放電路完成快速語(yǔ)音記憶功能;串口和紅外口完成相關(guān)的數據通信工作;電源電路為嵌入式處理器和各外圍設備提供所需要的工作電壓。

嵌入式處理器EP7211是Cirrus Logic公司專(zhuān)門(mén)為低成本、超低功耗的嵌入式應用設計。它包含基于RISC體系結構的ARM7TDMI處理器內核和豐富的外圍接口,如CODEC音頻接口、SPI串行A/D接口、單色LCD接口、RAM接口、串行紅外接口、PWM接口、實(shí)時(shí)時(shí)鐘RTC以及電源檢測接口等。這些豐富的外圍接口,不僅降低了系統的設計難度,同時(shí)也提高了系統工作的可靠性。EP7211的內核電路工作在2.5V,而外圍電路工作在3.3V。它可根據具體情況對內核的時(shí)鐘進(jìn)行動(dòng)態(tài)編程控制,可工作在18MHz、36MHz、49MHz和74MHz。另外,EP7211還有三種基本的工作狀態(tài):正常操作(operating)、空閑(idle)和等待(standby)。在等待模式時(shí),主時(shí)鐘被關(guān)斷,整個(gè)CPU及相關(guān)外圍(除中斷和RTC)關(guān)斷,但可通過(guò)觸摸屏中斷、傳呼中斷或復位按鈕來(lái)喚醒。  

系統軟件開(kāi)發(fā)平臺采用了我們自主開(kāi)發(fā)研制的、專(zhuān)門(mén)面向嵌入式應用系統開(kāi)發(fā)的XGW平臺。XGW開(kāi)發(fā)平臺措鑒Windows消息驅動(dòng)機制,是用C語(yǔ)言開(kāi)發(fā)實(shí)現的;它功能強大,模塊化設計,擴展性強,產(chǎn)品升級容易,而且開(kāi)發(fā)人員較為熟悉,開(kāi)發(fā)成本低,其總體框架如圖2所示。  
圖2全面反應了XGW軟件開(kāi)發(fā)平臺的體系結構,包括事件消息驅動(dòng)機制(XGW軟件開(kāi)發(fā)平臺中的消息分為鼠標消息、鍵盤(pán)消息和定時(shí)器消息等三類(lèi))、內存管理、字符和圖形顯示輸出、圖形組件庫等。圖形組件庫中的編輯框、列表框、按鈕、進(jìn)度條等圖形控件為用戶(hù)應用程序開(kāi)發(fā)提供了應用編程接口A(yíng)PI。不過(guò),XGW平臺對于系統硬件的中斷響應沒(méi)有提供統一的入口和出口,需要開(kāi)發(fā)人員單獨處理。  

2 硬件低功耗  

硬件低功耗主要從芯片制造工藝流程和硬件體系架構的角度出發(fā),基本原理是盡量選用能夠滿(mǎn)足功能要求的功耗低的芯片。不過(guò),芯片自身的功耗參數由制造廠(chǎng)商來(lái)決定,此處主要闡述CMOS芯片動(dòng)態(tài)功耗以及動(dòng)態(tài)電源管理兩個(gè)方面。  

(1)CMOS芯片動(dòng)態(tài)功耗  

隨著(zhù)半導體制造技術(shù)的發(fā)展,數字電路從TTL工藝轉向CMOS工藝。TTL工藝為電流注入型電路,靜態(tài)和動(dòng)態(tài)電流消耗接近。CMOS工藝是壓控型的,理想情況下("0"、"1"的恒定狀態(tài))靜態(tài)電流為0,實(shí)際情況下也是很小的。動(dòng)態(tài)("0"、"1"間的跳變狀態(tài))電流消耗占絕對主導地位。CMOS動(dòng)態(tài)功耗計算公式為  




  
式中: Pd--CMOS芯片動(dòng)態(tài)功耗;  
Ce--CMOS芯片等效電容;  
V--CMOS芯片工作電壓;  
f--CMOS芯片工作頻率或工作狀態(tài)的切換頻率。  

從式(1)及各參數含義看,CMOS芯片動(dòng)態(tài)功耗的數值正比于工作電壓的平方,同時(shí)正比于工作頻率。在滿(mǎn)足系統功能需求的條件下,



降低芯片工作電壓和工作頻率,都可以極大減少芯片的動(dòng)態(tài)功耗。以處理器工作頻率為例,如果工作頻率降低一半,則該芯片動(dòng)態(tài)功耗幾乎也隨之減半。在本PDA系統中,盡管ARM7處理器提供了18MHz、;36MHz、49MHz和74MHz四種工作頻率,但我們采用2.5V為低壓供電,18MHz工作頻率。這些參數在降低系統功耗的同時(shí),也滿(mǎn)足了系統性能的需求。  

(2)動(dòng)態(tài)電源管理  

動(dòng)態(tài)電源管理技術(shù)是指有選擇地將閑置的系統模塊置于低能狀態(tài)。一個(gè)較為復雜的嵌入式系統,除了處理器外還有很多外設電路模塊,它們協(xié)調工作,共同完成系統功能。 但在分析完成系統功能的過(guò)程中可以看出,并不是所有模塊在任何時(shí)間都處在工作狀態(tài)。除了嵌入式處理器外,絕大多數外設模塊都是在執行某項具體功能的時(shí)候(它自己的有效操作期間)才需要供電。如音頻模塊,有語(yǔ)音輸入或者輸出時(shí)才需要工作;在進(jìn)行串口通信時(shí),串口芯片需要處在工作狀態(tài);而在更多的時(shí)間里,這些芯片都是不需要工作的。  

為了系統功耗最小,動(dòng)態(tài)電源管理的原則是系統完成某項功能,只有參與這項功能的模塊才供電,其它模塊設置在電源切斷狀態(tài)。在電路設計時(shí),需要充分考慮到這個(gè)問(wèn)題,盡可能為各外設模塊提供切換供電機制的引腳控制信號,而且允許通過(guò)軟件編程的措施來(lái)完成其電路開(kāi)關(guān)的切換工作。  

本PDA系統中,除了嵌入式處理器外,還有異步串口、語(yǔ)音編譯碼芯片、音頻功放、傳呼、LCD、收音機等外部設備。傳呼的接收具有隨機性,需要一直處在工作狀態(tài)。串口、語(yǔ)音芯片、功放電路、LCD等可以通過(guò)一定口地址的設置來(lái)控制電源開(kāi)關(guān),使之在工作的時(shí)候提供電壓,在不工作的時(shí)候切斷電源。  

各外設模塊電源口地址配置如表1所列。

表1   

口地址
功能
工作條件

PA4
LCD背光控制
低電平

PA5~PA6
紅外口控制
取值00

PD1
LCD電源電路
高電平

PD2
LCD點(diǎn)顯示電路
高電平

PE0
控制語(yǔ)音播放
高電平

PE1
控制音頻功放
低電平

3 軟件低功耗  

嵌入式系統開(kāi)發(fā)中除了硬件低功耗措施外,也可以從軟件方面來(lái)設計。嵌入式系統軟件低功耗措施一般涉及到處理器工作狀態(tài)間的切換、應用模塊軟件算法的選擇和系統整體的數據調度三個(gè)方面。  

(1)處理器工作狀態(tài)  

便攜式系統工作過(guò)程中,處理器并不是任何時(shí)候都一直忙于運行,尤其是PDA來(lái)產(chǎn)品。如今的嵌入式處理器(包括EP7211)一般都為應用開(kāi)發(fā)提供了三種工作狀態(tài):運行、空閑和休眠。大量的實(shí)際使用表明,更多情況下,大部分時(shí)間里系統是處在休眠狀態(tài)的,一旦獲得工作信號,會(huì )迅速切換到工作狀態(tài)。當系統在工作狀態(tài)下一定時(shí)間內沒(méi)有獲得下一次需要處理的信號時(shí),則應該自動(dòng)切空閑或者休眠狀態(tài)。因為在不同的工作狀態(tài),處理器內部工作電路有所變化,功耗大小差別較大。  

本PDA系統采用的ARM處理器,在不同工作條件和狀態(tài)下的功耗哪表2所列。

表2   

名  稱(chēng)
頻率/MHz
消耗電流最大值/mA
條  件

休眠狀態(tài)
 
300μA
32kHz時(shí)鐘晶振工作,I/O口處于禁止

空閑狀態(tài)
18
6
晶振都在工作,LCD刷新處于激活狀態(tài),CPU是靜態(tài)的

空閑狀態(tài)
36
12
同上

運行狀態(tài)
18
20
整個(gè)系統處于激活狀態(tài),正在執行程序

運行狀態(tài)
36
40
同上
注:直流供電電壓2.5V   

從表2中明顯看出,處理器不同條件和狀態(tài)下的功耗參數大小的差別。在18MHz頻率下,運行功耗(20mA)是空閑功耗(6mA)的近4倍,空閑功耗又是休眠功耗300μA的20倍。我們的目的是在不影響系統正常運行的過(guò)程中,盡最大可能使系統處在空閑休眠狀態(tài)來(lái)降低系統功耗;因此,我們應該通過(guò)預測系統執行過(guò)程的措施來(lái)切換處理器的工作狀態(tài)。分析式(1)可知,我們又不能頻繁過(guò)快地進(jìn)行處理器狀態(tài)切換,中間要留有一定的穩定時(shí)間間隔。  

XGW軟件開(kāi)發(fā)平臺采用事件消息驅動(dòng)機制。消息采用查詢(xún)方式,能夠實(shí)時(shí)響應外部中斷。在消息循環(huán)過(guò)程中,系統需要查詢(xún)消息隊列:當有消息出隊時(shí),處理器在運行狀態(tài)處理這個(gè)消息所對應的事件;如果一這時(shí)間間隔(如2s)消息隊列一直是空,系統預測在最近相當長(cháng)的時(shí)間內不會(huì )有事件產(chǎn)生,軟件編程措施把處理器從運行狀態(tài)切到空閑狀態(tài);如果系統在更長(cháng)的時(shí)間內(如20s)沒(méi)有事件產(chǎn)生,則系統預測用戶(hù)需要自動(dòng)軟關(guān)機,此時(shí)處理器進(jìn)入休眠狀態(tài)。在休眠狀態(tài)下,處理器能夠響應實(shí)時(shí)時(shí)鐘匹配中斷、傳呼接收中斷以及復位按鍵;一旦系統捕獲到這類(lèi)信號,則迅速轉入到正常工作狀態(tài)。處理器在運行狀態(tài)和空閑狀態(tài)間的切換間隔是必需的,如果切換速度過(guò)快,并不能達到降低系統功耗的目的。  

為了縮短處理器從空閑或者運行狀態(tài)切換到休眠狀態(tài)的時(shí)間,系統同時(shí)提供了用戶(hù)手動(dòng)軟關(guān)機措施,即通過(guò)觸筆直接點(diǎn)擊屏幕某一指定區域來(lái)實(shí)現。  

本PDA系統中,ARM7處理器三種工作狀態(tài)的轉換如圖3所示。  

圖3中各數字含義如表3所列。

表3  

序  號
狀態(tài)轉換條件

1、3
系統20s內一直不能捕捉到消息或者人為點(diǎn)擊屏幕某一指定區域

2
實(shí)時(shí)時(shí)鐘匹配中斷、傳呼中斷、按鍵喚醒

4
運行狀態(tài)下系統2s內一直不能捕捉到消息

5
產(chǎn)生中斷信號、捕捉到消息事件

(2)軟件算法的選擇  

在應用程序編程實(shí)現過(guò)程中,求解同一個(gè)問(wèn)題,可以有許多不同的算法。評價(jià)一個(gè)算法好壞的常用參數是算法時(shí)間復雜度、算法空間復雜度和算法的易理解編碼和調試性。算法時(shí)間復雜度定義為算法的時(shí)間耗費,即算法所求解問(wèn)題規模(求解問(wèn)題的輸入量)n的函數。時(shí)間復雜度一般用O(n)來(lái)表示,當n達到一定規模時(shí),時(shí)間復雜度越小,執行效率越高,招待時(shí)間越短,系統功耗越低。算法空間復雜度定義為該算法所耗費的存儲空間,它也是問(wèn)題規模n的函數。  

我們總是希望選用一個(gè)所占存儲空間小、運行時(shí)間短、其它性能也好的算法。然而實(shí)際上很難做到十全十美,原因是上述要求有時(shí)相互抵觸,



如節約算法執行時(shí)間需要以犧牲一定的存儲空間為代價(jià),反之亦然。因此,我們只能根據具體情況有所側重。在本PDA系統中具體硬件配置時(shí),CPU工作頻率不高,存儲空間運行不大;但應用程序數據量大,而且某些應用程序如辭典互譯、時(shí)刻表檢索時(shí)數據運算量也大。  

如要在本PDA系統中實(shí)現英漢辭典互譯,首先會(huì )想到采用順序檢索法。這種算法對用戶(hù)輸入詞匯排列順序沒(méi)有要求,編程實(shí)現和理解起來(lái)都比較簡(jiǎn)單,其算法時(shí)間復雜度為O(n)=n。當n值較小時(shí),這是可以允許的;但是當系統詞匯量近10 000個(gè)時(shí),算法檢索效率不高,表現為當詞語(yǔ)位置偏后時(shí)系統檢索延遲過(guò)大。為了提高檢索效率,滿(mǎn)足一定的系統反應實(shí)時(shí)性要求,我們采用了有序表二分搜索算法,其算法時(shí)間復雜度O(n)=log2n。假設n=16 384=2 14已經(jīng)超出系統的數據規模(10 000詞左右)。二分檢索所需要的最壞檢索次數是14次;但是對于順序檢索而言,在最壞查找的情況下,檢索次數是16 384次,故效率提高了16 284/14=1170倍。這個(gè)數目是相當可觀(guān)的,而且,即使系統數據規模進(jìn)一步擴大,二分檢索表現出來(lái)的所增加的檢索次數也是很小的。辭典互譯實(shí)現二分檢索所要做的附加工作,就是將原來(lái)無(wú)序的辭典數據文件轉換成有序的辭典數據文件。不過(guò),這個(gè)轉換工作可以在PC機上完成從而減輕本嵌入式系統的負荷。辭典數據排序和檢索過(guò)程中英漢辭典依據ASCII碼進(jìn)行,漢英辭典根據漢字的區位碼進(jìn)行。本PDA系統的民航時(shí)刻表、鐵路時(shí)刻表等應用模塊,也都涉及到了算法選擇問(wèn)題。  

(3)數據調度  

在許多應用程序中,存儲器訪(fǎng)問(wèn)是功耗的主要部分。有資料表明,內存傳輸是迄今為止CPU完成的操作中代價(jià)最高的:一次內存傳輸消耗的能量是一次加法運算的33倍多。優(yōu)化能量消耗的最大收益之一,來(lái)源于合理組織內存中的數據和指令:一般措施是盡量做到數據的寄存器訪(fǎng)問(wèn)和緩存訪(fǎng)問(wèn)。  

隨著(zhù)存儲技術(shù)理論的發(fā)展和工藝水平的提高,現在存儲器體系結構一般都是三級,而且支持虛擬存儲技術(shù),如圖4所示。  

處理器進(jìn)行數據訪(fǎng)問(wèn)時(shí),離CPU越近的地方,數據存取速度越快,功耗越低。本PDA系統中,由于Flash存儲器(作為數據存儲器件)寫(xiě)操作的特殊性(以扇區大小為單位、執行時(shí)間長(cháng)、執行功耗大),要求盡量少地進(jìn)行;谶@種策略,本PDA系統在數據安排方面采取了以下一些優(yōu)化措施:  

①LCD幀緩存的安排。EP7211內置38 400字節大小的RAM空間,LCD分辨率是320%26;#215;240,每像素4級灰度用2比特位表示,故顯存大小為320%26;#215;240%26;#215;2/8=19 200字節,被安排在內置RAM空間的前19 200字節。這樣安排,加快了顯示速度,減少了處理器訪(fǎng)問(wèn)片外SRAM空間。



  
②個(gè)人傳呼信息、公共傳呼信息接收頻度大,不需要永久存儲;傳呼接收過(guò)程需要開(kāi)臂兩塊緩沖區,這些空間都被安排在內部RAM后19 200字節,其目的是減少了CPu對片外SRAM的訪(fǎng)問(wèn)。  

③部分系統信息資源,如字庫信息,在系統啟動(dòng)后直接從Flash存儲區拷貝到固定位置的SRAM區,這樣字符輸出時(shí)直接從內存讀取數據,而不需要訪(fǎng)問(wèn)Flash。  

④為減少Flash寫(xiě)操作執行次數,在電話(huà)簿、記事本、日程以及系統設定等編輯修改后,首先改動(dòng)的信息是在內存中直接保存,等到用戶(hù)是退出當前整個(gè)應用模塊時(shí),才進(jìn)行一個(gè)性Flash寫(xiě)操作。  

⑤在進(jìn)行復雜數據查找過(guò)程中,為減少數據訪(fǎng)問(wèn)量,可以通過(guò)建立若干級索引表方式加快數據檢索速度。如在辭典文件的詞匯排序過(guò)程中,同時(shí)建立了每個(gè)單詞位置的數據索引,而且作為索引文件定改Flash。在查找過(guò)程中,索引項的存在能夠減少檢索次數,從而快速確定單詞起始位置以及整個(gè)單詞項目長(cháng)度,供顯示輸出。不過(guò)在增加索引時(shí),也會(huì )增加一定的空間復雜度。  

另外,系統還可以通過(guò)代碼壓縮減少總線(xiàn)上的傳輸量;編譯器優(yōu)化,消除冗余代碼;消除編程中的遞歸過(guò)程調用、減少函數調用的開(kāi)銷(xiāo);有效使用寄存器等措施來(lái)降低系統功耗。有關(guān)這些措施請見(jiàn)參考文獻。  

4 低功耗設計綜合闡述  

以上分別從硬件和軟件兩方面闡述了嵌入式系統開(kāi)發(fā)中低功耗設計的一些原則及在本產(chǎn)品中的某些具體體現。經(jīng)試驗測得,本PDA系統功耗如表4所列。

表4   

條件(18MHz、2.4V)
消耗電流/mA
注   釋

待機
79
系統全速執行條件下的功耗數據

開(kāi)機
2527

收傳呼
5558

啟動(dòng)背光
8385

背光功耗
53
單功能模塊功耗數據

LCD功耗
22

揚聲器
10

語(yǔ)音編譯碼芯片
11

紅外口
6

本PDA產(chǎn)品除了提代外接電源供電電路,同時(shí)還提供內置可充鎳氫雙電池供電系統。設單節電池容量是500mA,則系統待機時(shí)間是1000小時(shí)/8=125小時(shí),基本上可以滿(mǎn)足實(shí)際應用的需要。隨著(zhù)對嵌入式系統低功耗設計的深刻理解和硬軟件方面某些措施的改進(jìn),包括借鑒目前國內外一些廠(chǎng)家低功耗設計經(jīng)驗,則在改進(jìn)的產(chǎn)品中,表4的某些數據還可能再降低一些,更好地滿(mǎn)足產(chǎn)品的低功耗要求。  

其實(shí)嵌入式系統開(kāi)發(fā)中低功耗設計是個(gè)系統的概念,硬件上既要在單元級考慮,也要在單元逐步集成系統的階段上全面評估。因此,即使系統中每個(gè)模塊都是嚴格采用低功耗設計的,但在集成整個(gè)系統時(shí)也不一定能完全保證整個(gè)系統是低功耗的,低功耗設計階段應該在進(jìn)行系統規劃的同時(shí)就充分考慮進(jìn)去,而且需要建立模型進(jìn)行低功耗評估,一旦不滿(mǎn)足設計要求導致偏差較大時(shí),應該及時(shí)修正模型。應用軟件在數據結構的安排上,也要考慮到具體的硬件配置。因為有些效率的提高,比如考慮引表的建立,是以犧牲一定的存儲空間為代價(jià)的。如果存儲空間太小,就需要權衡兩者的矛盾。
本文地址:http://selenalain.com/thread-40055-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页