<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 超低功耗嵌入式系統(tǒng)設(shè)計(jì)技巧

          超低功耗嵌入式系統(tǒng)設(shè)計(jì)技巧

          作者: 時(shí)間:2010-09-26 來源:網(wǎng)絡(luò) 收藏

          3.1.5 低頻工作方式
          低功耗微處理器中幾乎全部采用CMOS器件,而CMOS集成電路的結(jié)構(gòu)決定了它的靜態(tài)功耗幾乎為零,僅在邏輯狀態(tài)發(fā)生翻轉(zhuǎn)的過程中電路中有電流流過。所以它的動(dòng)態(tài)功耗和它的邏輯轉(zhuǎn)換頻率成正比,和電路的邏輯狀態(tài)轉(zhuǎn)換時(shí)間成正比。所以CMOS集成電路從降低功耗的角度上來說應(yīng)當(dāng)快速轉(zhuǎn)換,低頻工作。
          當(dāng)程序在Flash中運(yùn)行,VDD=3.3 V時(shí),LPCllxx處理器功耗如表2所列。
          3.1.6 轉(zhuǎn)換芯片選擇
          手持設(shè)備一般是由電池供電,為獲得較長的電池使用時(shí)間,一般采用DC/DC開關(guān)或LDO(Low Drop Outregulatot,低壓差線性穩(wěn)壓器)。在價(jià)格允許的前提下,最好選擇那些效率高、靜態(tài)電流小,并且有使能端的芯片。效率高是為了減少電池能量在轉(zhuǎn)化的過程中造成的損失。靜態(tài)電流小可以減小芯片在待機(jī)狀態(tài)的漏電流功耗。選擇具有使能端的芯片可以利用微處理器進(jìn)行關(guān)斷控制,有利于獨(dú)立供電支路功耗的管理。凌力爾特公司的DC/DC芯片LTC3417具有高達(dá)95%的效率和低于1μA的靜態(tài)電流,已經(jīng)在作者的有源手持機(jī)項(xiàng)目中得到了應(yīng)用,取得
          了顯著的低功耗效果。
          3.1.7 I/O引腳供電
          可以直接利用嵌入式微處理器的I/0引腳為外部設(shè)備提供,如圖5所示,只要這些I/O接口的驅(qū)動(dòng)能力足以驅(qū)動(dòng)外部設(shè)備。

          本文引用地址:http://www.ex-cimer.com/article/151493.htm

          2i.JPG


          3.1.8 MCU時(shí)鐘
          單片機(jī)的工作頻率和功耗的關(guān)系很大,頻率越高功耗越大。處理器動(dòng)態(tài)改變CPU時(shí)鐘的具體做法是:在CPU等事件發(fā)生時(shí),引腳輸出低電平,增大電阻將會降低內(nèi)部的時(shí)鐘的頻率;當(dāng)需要處理事務(wù)時(shí),輸出高電平減小電阻,提高時(shí)鐘頻率。實(shí)現(xiàn)這一技術(shù)的方法如圖6所示。當(dāng)CPU處于等待狀態(tài)下可以將I/O引腳輸出低電平,此時(shí)內(nèi)部時(shí)鐘頻率降低;當(dāng)CPU需要處理事務(wù)的時(shí)候,通過將I/O引腳設(shè)定為輸出高電平,電阻Rl的加入將提高時(shí)鐘頻率。

          2j.JPG


          3.1.9 未用引腳
          處理好處理器和CMOS芯片未用的輸入引腳。若未用的處理器引腳不加以處理,很容易造成電荷積累。根據(jù)電量與電容C和電壓U的關(guān)系Q=C·U可知,當(dāng)電荷的累積Q與電容C可比的情況下,就會產(chǎn)生影響引腳電平狀態(tài)的U,這個(gè)電平會隨著電荷的累積而導(dǎo)致數(shù)字邏輯狀態(tài)在“O”和“1”之間變化,當(dāng)輸入引腳電平處于O、1之間的過渡區(qū)時(shí),會使電路中反相器的P管和N管都處于導(dǎo)通狀態(tài),導(dǎo)致功耗大大增加。
          CMOS電路未用的引腳,一般采取加上拉電阻(1~10 kΩ)的方法處理,為節(jié)能起見,阻值要取大一些。
          3.1.10 局部電路的節(jié)電技巧
          ①采用RC振蕩器比晶體振蕩器或鎖相環(huán)更省電。
          ②接口電平要盡量匹配,以減少電平匹配電路帶來的額外功耗。
          ③在保證驅(qū)動(dòng)能力的前提下,電路中應(yīng)盡可能采用阻值較大的上拉/下拉電阻,以減小在電阻上的能量消耗。
          ④如果允許,適當(dāng)降低外部驅(qū)動(dòng)引腳的電壓。
          ⑤選擇合適的驅(qū)動(dòng)接口參數(shù),以減小緩沖器的使用量。
          ⑥少用驅(qū)動(dòng)電阻或雙極晶體管,這些器件需維持恒定的電流,從而增加了電能消耗。
          3.2 軟件方面
          3.2.1 避免查詢方式和延時(shí)
          A/D轉(zhuǎn)換器在采集少量的數(shù)據(jù)時(shí),MCU讀取A/D轉(zhuǎn)換數(shù)據(jù)的方式有2種:查詢方式和中斷方式。查詢方式和中斷方式的低功耗特性相差甚遠(yuǎn):使用中斷方式,MCU可以什么都不做,甚至可以進(jìn)入待機(jī)或者停止模式;而查詢方式下,MCU必須不停地讀取I/O端口寄存器,消耗很多額外的功耗。
          如果系統(tǒng)的定時(shí)器資源充裕,在需要定時(shí)的場合,最好采用硬件定時(shí)器,當(dāng)定時(shí)器到了定時(shí)時(shí)間后,向MCU發(fā)出中斷請求信號,這樣可以減少M(fèi)CU的工作時(shí)間,進(jìn)而可以節(jié)省功耗。
          3.2.2 運(yùn)行管理
          ①動(dòng)態(tài)電源管理(Dynamic Power Management,DPM)。有選擇地把閑置的系統(tǒng)部分置于低功耗狀態(tài),從而有效地利用電能。充分利用處理器和外圍電路的低功耗工作模式,當(dāng)系統(tǒng)和外圍電路不工作的時(shí)候,軟件設(shè)計(jì)時(shí)應(yīng)該使處理器和外圍電路及時(shí)地進(jìn)入待機(jī)或者休眠模式。可選擇關(guān)斷CPU時(shí)鐘或系統(tǒng)時(shí)鐘,對時(shí)鐘的控制要做到忙時(shí)多用、閑時(shí)少用、不用關(guān)斷。
          ②間歇性使用電路的控制。對于間歇性使用的外圍電路,在軟件控制中通過片選使能端控制其工作時(shí)間。在某些功能沒有使用到時(shí),適時(shí)地將嵌入式處理內(nèi)部電路的全部或部分關(guān)斷,或者進(jìn)入睡眠或待機(jī)狀態(tài),同時(shí)關(guān)閉不用的外圍接口電路,如串口、ADC/DAC、I2C、SPI、PWM等電路。
          ③未用I/0引腳的軟件處理。對于未用的處理器I/O引腳,軟件中也要進(jìn)行初始化,若不進(jìn)行初始化,將有可能會增加單片機(jī)的漏電流,最好將其設(shè)置為輸入或者輸出,且接一個(gè)固定的電平。
          3.2.3 用宏代替子程序
          宏是在編譯器預(yù)處理階段進(jìn)行替代,而子程序調(diào)用中MCU需要進(jìn)行現(xiàn)場保護(hù)。進(jìn)入子程序之前要將當(dāng)前的MCU寄存器壓入RAM中分配的棧,在離開的時(shí)候,要把棧中的內(nèi)容彈出來恢復(fù)MCU的寄存器,這樣至少會帶來2次對RAM的操作。盡管用宏增加了代碼的長度,但是加快了代碼執(zhí)行的速度,對于目前很多MCU來說,代碼的Flash空間根本不是大問題,這種做法將會在一定程度上降低系統(tǒng)功耗。
          3.2.4 采用高效率算法
          ①用查表的方法代替實(shí)時(shí)的計(jì)算。特別是在沒有硬件浮點(diǎn)處理單元的MCU進(jìn)行浮點(diǎn)處理的時(shí)候,直接用MCU進(jìn)行浮點(diǎn)處理將會消耗大量的時(shí)間。如果將一些運(yùn)算的結(jié)果事先計(jì)算好,存儲在程序存儲器的代碼段中,在需要某個(gè)數(shù)據(jù)時(shí)用查表的辦法把數(shù)據(jù)取出來,可以減少M(fèi)CU的運(yùn)算量,有效地降低MCU的功耗。這種處理方法在離散余弦變換和A/D數(shù)據(jù)采集中能夠帶來可觀的效率提升。
          ②用移位運(yùn)算代替乘除法運(yùn)算。用MCU計(jì)算乘除法也是非常耗時(shí)的事情,如果盡可能避免直接的乘除運(yùn)算,而采用左移和右移的辦法來實(shí)現(xiàn),將會減少運(yùn)算時(shí)間,進(jìn)而節(jié)省功耗。如要進(jìn)行y=x·15的運(yùn)算,可以轉(zhuǎn)化為x4-x。對于特殊的除法,要采取右移的辦法。如3000÷256可以直接轉(zhuǎn)化為3 000>>8。當(dāng)然,除法的移位計(jì)算只能針對除數(shù)比較特殊的時(shí)候。
          ③采用快速算法。在搜索算法中,使用二分搜索算法和分段查找算法的效率是不同的。理論上可以估算,在1 024個(gè)測量值的查找中,二分搜索最壞情況下10次可以查找到結(jié)果,順序搜索最壞可能需要1 024次。這個(gè)在測量數(shù)值更多的情況下更為突出,一個(gè)高效率的查找算法有
          助于減小程序運(yùn)行功耗。數(shù)字信號處理中的運(yùn)算,采用FFT和快速卷積等,可以節(jié)省大量運(yùn)算時(shí)間,從而減少功耗。
          ④在精度允許的情況下,使用簡單函數(shù)代替復(fù)雜函數(shù)作近似也是減少功耗的一種方法。


          上一頁 1 2 3 下一頁

          關(guān)鍵詞: 電源

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();