智能手機(jī)的硬件體系結(jié)構(gòu)
2.2.1 定義不同的工作模式
本文引用地址:http://www.ex-cimer.com/article/84080.htm在硬件架構(gòu)中智能手機(jī)的工作模式與主cpu的工作模式密切相關(guān)。為了降低功耗,主cpu定義了4種工作模式:general clock gating mode;idle mode:sleep mode;stop mode。在主cpu主頻確定的情況下,智能手機(jī)中定義了對(duì)應(yīng)的4種工作模式:正常工作模式(normal);空閑模式(idle);睡眠模式(sleep);關(guān)機(jī)模式(off)。各種模式說(shuō)明如下:
a)正常工作模式:主cpu工作模式為general clock gating mode;主cpu全速運(yùn)行;時(shí)鐘頻率為204 mhz。智能手機(jī)在這種狀態(tài)下功耗最大,根據(jù)不同的運(yùn)行狀態(tài),如播放mp3、打電話、實(shí)際測(cè)量,這種模式下智能手機(jī)工作電流為200 ma左右。
b)空閑模式:主cpu工作模式為idle mode,主cpu主時(shí)鐘停止;時(shí)鐘頻 率為204 mhz。在空閑狀態(tài)下,鍵盤背關(guān)燈和lcd背光燈關(guān)閉,lcd上有待機(jī)畫面,特定的事件可以使智能手機(jī)空閑模式進(jìn)入正常工作模式,如點(diǎn)擊觸摸屏、定時(shí)喚醒、按鍵、來(lái)電等。
c)睡眼模式:主cpu工作模式為sleep mode,除了主cpu內(nèi)部的喚醒邏輯打開外,其余全關(guān)閉;主cpu時(shí)鐘為使用36.768 khz的慢時(shí)鐘。除了modem以外,外設(shè)全部關(guān)閉,定義短時(shí)按開機(jī)鍵,使智能手機(jī)從睡眠模式下喚醒進(jìn)入正常工作狀態(tài)。
d)關(guān)機(jī)模式:主cpu工作模式為stop mode,除了主cpu泄漏電流外,不消耗功率;主cpu關(guān)閉。智能手機(jī)必須重新開機(jī)之后,才能進(jìn)正常工作模式,實(shí)際測(cè)量,手機(jī)在這種模式下電流為100μa。
從以上看出,智能手機(jī)在正常工作模式下的功率比空閑模式、睡眠模式下大得多。因此,當(dāng)用戶沒(méi)有對(duì)手機(jī)進(jìn)行操作時(shí),通過(guò)軟件設(shè)置,使手機(jī)盡快進(jìn)入空閑模式或睡眠模
式;當(dāng)用戶對(duì)手機(jī)進(jìn)行操作時(shí),通過(guò)相應(yīng)的中斷喚醒主cpu,使手機(jī)恢復(fù)正常工作模式,處理完響應(yīng)的事件后迅速進(jìn)入空閑模式或睡眠模式。
2.2.2 關(guān)閉空閑的外設(shè)控制器和外設(shè)
在硬件系統(tǒng)的架構(gòu)中,可以看到,主cpu通過(guò)相應(yīng)的接口,外接了很多外部設(shè)備,例如lcd、攝像機(jī)、irda(紅外適配器)、藍(lán)牙、音頻編解碼器、功率放大器等設(shè)備。當(dāng)智能手機(jī)處于正常工作模式時(shí),對(duì)處于空閑狀態(tài)的外設(shè),可以通過(guò)主cpu的gpio口,控制給外設(shè)供電的LDO或者dc/dc電源芯片,通過(guò)關(guān)閉外設(shè)的供電電源芯片,以達(dá)到關(guān)閉外設(shè)的目的。特別是對(duì)于大功耗的外設(shè),必須對(duì)其進(jìn)行可靠的關(guān)閉。對(duì)于一些正在工作的外設(shè),如音頻編解碼器,通過(guò)設(shè)置內(nèi)部的寄存器,關(guān)閉芯片內(nèi)部不使用的通道、功率放大器、d/a轉(zhuǎn)換器等,以降低這些器件工作時(shí)的功耗。
對(duì)于主cpu的各種接口控制器,一般不會(huì)全部用到,即使智能手機(jī)處于正常工作模式下,在不同運(yùn)行狀態(tài),各種接口控制器的使用狀況也是不同的;接口控制器沒(méi)有處于工作狀態(tài),如不將其關(guān)閉,仍會(huì)消耗電流。對(duì)于主cpu來(lái)說(shuō),各外設(shè)接口控制器的電流消耗[2]如下:nand flash為2.9 ma;lcd為5.8 ma;usb host為0.4 ma;usb驅(qū)動(dòng)器為2.9 ma;定時(shí)器為0.5 ma;sdi為1.9 ma;uart為3.6 ma;rtc為0.4 ma;a/d轉(zhuǎn)換器為0.4 ma;iic為0.6 ma;iis為0.5 ma;spi為0.5 ma。
在圖1所示的智能手機(jī)硬件架構(gòu)中,spi接口、usb host接口沒(méi)有使用,因此可以通過(guò)設(shè)置spcono和hccontrol寄存器永遠(yuǎn)地關(guān)閉spi和usb host接口,這樣可以節(jié)省0.9(0.5+0.4)ma的電流。當(dāng)智能手機(jī)處于正常工作狀態(tài)下,可以對(duì)空閑的接口控制器進(jìn)行關(guān)閉,以進(jìn)一步降低智能手機(jī)的功耗,還可以防止總線上倒灌電流的影響。
2.3 接口驅(qū)動(dòng)電路的低功耗設(shè)計(jì)
當(dāng)選擇智能手機(jī)外圍芯片如sdram、lcd、攝像機(jī)、音頻編解碼器等器件時(shí),除了要考慮其性能外,還必須考慮其正常工作時(shí)的功耗。在設(shè)計(jì)接口電路時(shí),必須考慮以下幾個(gè)因素:
2.3.1 上拉電阻/下拉電阻的選取
軟件優(yōu)化是一個(gè)很重要的工作,可以大大提高軟件運(yùn)行時(shí)的效率和降低軟件運(yùn)行時(shí)的功耗。例如指令的重排,在不影響指令執(zhí)行結(jié)果的情況下,可以消除由于裝載延遲、分支延遲、跳轉(zhuǎn)延遲等引起的指令流水線的失效[5]。如表1所示的arm匯編,把指令轉(zhuǎn)變成二進(jìn)制編碼后,不同之處就是各個(gè)寄存器操作數(shù)的二進(jìn)制編碼不同。
根據(jù)表1,從電氣性能上來(lái)看,通過(guò)減小連續(xù)指令之間的漢明(hamming)距離,原代碼比優(yōu)化后代碼的比特位變化多6次,而兩組代碼實(shí)現(xiàn)同樣的功能,因此,優(yōu)化后的指令執(zhí)行時(shí)的功耗小于原先指 令。因此,系統(tǒng)軟件完成后,在保證軟件功能一致的情況下,通過(guò)對(duì)代碼進(jìn)行優(yōu)化,可以減小軟件在執(zhí)行時(shí)的功耗。
3 試驗(yàn)結(jié)果和討論
在智能手機(jī)的設(shè)計(jì)中,通過(guò)不斷進(jìn)行硬件優(yōu)化和在軟件上實(shí)現(xiàn)電源的動(dòng)態(tài)管理,測(cè)量智能手機(jī)在空閑模式和睡眠模式下的功率損耗,結(jié)果如表2所示。
根據(jù)表1,從電氣性能上來(lái)看,通過(guò)減小連續(xù)指令之間的漢明(hamming)距離,原代碼比優(yōu)化后代碼的比特位變化多6次,而兩組代碼實(shí)現(xiàn)同樣的功能,因此,優(yōu)化后的指令執(zhí)行時(shí)的功耗小于原先指 令。因此,系統(tǒng)軟件完成后,在保證軟件功能一致的情況下,通過(guò)對(duì)代碼進(jìn)行優(yōu)化,可以減小軟件在執(zhí)行時(shí)的功耗。
從表2可以看出,經(jīng)過(guò)優(yōu)化設(shè)計(jì),智能手機(jī)在空閑模式下,電流值減小了10.2 ma,在睡眠模式下,電流值減少了1.5 ma。對(duì)于無(wú)線modem,由于自身含有獨(dú)立的電源管理模塊,基本上在3 ma左右,變化不大。相比未經(jīng)優(yōu)化設(shè)計(jì),智能手機(jī)經(jīng)過(guò)優(yōu)化設(shè)計(jì)后,在睡眠模式下和空閑模式下,功率損耗有了顯著的降低,在相同的電池容量下,大大提高了智能手機(jī)的待機(jī)時(shí)間和使用時(shí)間。因此,通過(guò)上述方法,可以有效地降低智能手機(jī)的功耗。
隨著手機(jī)技術(shù)的發(fā)展,特別在智能手機(jī)設(shè)計(jì)中,低功耗設(shè)計(jì)會(huì)成為一個(gè)越來(lái)越迫切的問(wèn)題。隨著一些新技術(shù)的出現(xiàn)并應(yīng)用于智能手機(jī)的設(shè)計(jì)中,例如先進(jìn)的電源管理芯片、先進(jìn)的處理器,給設(shè)計(jì)者提供了更大的靈活性,可以大大降低智能手機(jī)功耗。但是,作為設(shè)計(jì)者,在進(jìn)行系統(tǒng)設(shè)計(jì)和軟件編程時(shí),必須時(shí)時(shí)考慮如何降低系統(tǒng)的功耗,只有這樣,設(shè)計(jì)出的系統(tǒng)才能擁有一個(gè)良好的性能,得到用戶的青睞。
評(píng)論