《電子技術應用》
您所在的位置:首頁 > 電源技術 > 設計應用 > 系統詳解Silabs MCU低功耗優勢及經典案例
系統詳解Silabs MCU低功耗優勢及經典案例
摘要: 本文將從以下三個方面來談SilabsMCU低功耗優勢及其實現方法。
Abstract:
Key words :

引言

 

  現在的電子產品,對低功耗的要求越來越高。產品功耗的問題是經常讓產品設計者頭痛而又不得不面對的一個問題。以單片機為核心的系統,其功耗主要由單片機功耗和單片機外圍電路功耗組成。

 

  要降低單片機系統的功耗,需要從硬件和軟件兩方面入手。美國SiliconLaboratories公司(Silabs)設計的高速C8051F系列單片機是一種高度集成的SoC型芯片,兼容傳統的8051單片機內核和指令系統,但其各方面的性能都遠遠超越了傳統的8051單片機。C8051F系列單片機中增加的外設或功能部件有:模擬多路選擇器、可編程增益放大器、ADC、DAC、電壓比較器、電壓基準、溫度傳感器、SMBus(I2C)、增強型UART、SPI、可編程計數/定時器陣列(PCA)、電源監視器、看門狗定時器(WDT)和時鐘振蕩器等。另外還有片上的FLASH程序存儲器和RAM。特別是在低功耗設計方面,提供了多種低功耗模式供用戶選擇,方便客戶設計出不同低功耗要求的產品。

 

  本文將從以下三個方面來談SilabsMCU低功耗優勢及其實現方法:

 

  如何設計低功耗單片機系統;

  SilabsMCU在低功耗方面的優勢;

  SilabsMCU低功耗實現方法。

 

  如何設計低功耗單片機系統

 

  低功耗單片機系統設計,需要從硬件設計和應用軟件設計兩方面入手。

 

  硬件設計

 

  要滿足單片機系統的低功耗要求,選用具有低功耗特性的單片機可以很容易實現。因為具有低功耗特性的單片機可以大大降低系統功耗,這可以從單片機的供電電壓、內部結構、系統時鐘和低功耗模式等幾方面來考察一款單片機的低功耗特性。

 

  選擇簡單的CPU內核

 

  選擇CPU內核時切忌一味追求性能,以“夠用就好”為原則。8位機夠用,就沒有必要選用16位機、32位機;單片機的運行速度越快,往往其功耗也越大。一個CPU越復雜、集成度越高、功能越強,片內晶體管越多,總漏電流也越大,即使進入STOP狀態,漏電流也會變得不可忽視;而簡單的CPU內核不僅功耗低,成本也低。

 

  選擇低電壓供電的單片機系統

 

  單片機系統的供電電壓低,可以有效的降低其系統功耗。由于半導體制造工藝的發展,現在單片機的供電電壓從5V供電降低到3.3V、3V、2V乃至1.8V。供電電壓低,不緊可以降低單片機的功耗,還可以降低單片機外圍電路的功耗。

 

  選擇帶有低功耗模式的單片機系統

 

  低功耗模式指的是系統的Idle、Stop和Suspend等模式。處于這些模式下的功耗將遠遠小于正常運行下的功耗。

 

  Idle模式下,CPU停止工作,但內部系統時鐘并不停止,單片機的外圍I/O模塊也不停止工作;系統功耗一般降低有限,相當于工作模式功耗的50%左右。

 

   Stop模式下,CPU和內部系統時鐘停止工作,所有的數字外設也自動停止工作,內部RAM的信息以最小功耗被保持,CPU消耗電流可降到μA級,由外 部或內部的復位使系統退出Stop模式,進而喚醒CPU繼續工作。如果在CPU進入Stop模式時,將各個模擬外設關掉,這時的功耗可以降低到nA級。但 是在Stop模式下,CPU被喚醒后要重新對系統作初始化,所有特殊功能寄存器的內容將被重新初始化。這在某些低功耗應用場合需要注意。

 

   Suspend模式下,CPU、內部系統時鐘停止工作,I/O模塊等被懸掛起來,片內RAM中存儲的數據將被保持,CPU的功耗可以降低到nA級,由喚 醒事件喚醒。當CPU被喚醒后,系統不會被CPU復位,繼續從進入Suspend模式的地方開始執行程序。這是一種非常理想的低功耗模式。

 

  選擇合適的時鐘方案

 

  時鐘的選擇對于系統的功耗相當敏感,需要注意三方面的問題:

 

  A)系統總線頻率應當盡量低

 

  單片機內部的總電流消耗可分為運行電流和漏電流兩部份。單片機集成度越高,環境溫度越高,漏電流也越大。在單片機運行時,開關電 路不斷地由“1”變“0”、由“0”變“1”,內部電容不停地充放電,這些都是單片機運行時電流的主要來源。要實現開關電路快速關斷和電容的快速充放電, 需要比較大的電流。運行電流幾乎是和單片機的時鐘頻率成正比的,因此盡量降低系統時鐘的運行頻率可以有效地降低系統功耗。

 

B)選擇適合低功耗的單時鐘方案

 

  單片機時鐘是使用鎖相環、外部振蕩器,還是內部振蕩器,這與單片機的功耗有很大關系。現代單片機普遍采用鎖相環技術,允許用戶在片外使用頻率較低的振蕩器,通過程序控制,系統時鐘可以在一個很寬的范圍內調整,總線頻率往往能升得很高,但是會帶來額外的功率消耗。僅僅就時鐘方案來講,使用外部振蕩器且不使用鎖相環是功率消耗最小的一種。

 

  C)選擇適合低功耗的雙時鐘方案

 

  有些場合的應用比較復雜,對MCU的速度要求也很高。盡管采用新的半導體工藝,但MCU速度越高,一般來說功耗也越大。因此很多高速MCU提供了雙時鐘系統,并允許MCU在運行中實時快速的進行時鐘切換,以達到降低功耗的目的。

 

  SilabsMCU帶有內部高速振蕩器,又可以使用外部振蕩器,并且可以在CPU運行中實時高速地進行內、外振蕩器切換。這對于間歇工作的系統是一種非常好的低功耗方式。當要處理數據時,使用內部高速振蕩器;當CPU空閑時,切換到外部低速振蕩器,以降低功耗。

 

  使用每MIPS功耗來衡量MCU的低功耗性能是相對比較準確

 

  盡管我們強調要降低單片機系統的功耗,必須盡量降低單片機的系統時鐘。但使用每MIPS功耗來衡量MCU的功耗與之并不矛盾。這是相對的,要具體問題具體分析。

 

  例如,執行一個需要10K條指令的任務,甲MCU的工作電流為3mA,速度為10MIPS,則甲MCU需要工作1mS完成該任務,消耗3mA×1ms×Vcc,然后甲MCU就可以進入低功耗模式了。

 

  而乙MCU的工作電流為1mA,速度為2MIPS,則乙MCU需要工作5ms完成,這樣乙MCU完成該任務的消耗為1mA×5ms×Vcc。

 

  從上面的例子我們可以得出結論:電流大但速度快的MCU可能更省電。

 

  應用軟件設計

 

  應用軟件設計對于一個低功耗系統的重要性常常被人們忽略。一個重要的原因是,軟件設計上的缺陷并不像硬件那樣容易發現,同時也沒有一個嚴格的標準來判斷一個軟件的低功耗特性。但是設計者如果能盡量將應用的低功耗特性反映在軟件中,就可以避免那些“看不見”的功耗損失。

 

  用“中斷”代替“查詢”

 

  在沒有要求低功耗的場合,程序使用中斷方式還是查詢方式并不重要。但在要求低功耗場合,這兩種方式相差甚遠。使用中斷方式,CPU可以什么都不做,甚至可以進入等待模式或停止模式;而查詢方式下,CPU必須不停地訪問I/O寄存器,這會帶來很多額外的功耗。

 

  用“宏”代替“子程序”

 

  子程序調用的入棧出棧操作,要對RAM進行兩次操作,會帶來更大的功耗。宏在編譯時展開,CPU按順序執行指令。使用宏,會增加程序的代碼量,但對不在乎程序代碼量大的應用,使用宏無疑會降低系統的功耗。

 

  盡量減少CPU的運算量

 

  減少CPU的運算工作量,可以有效地降低CPU的功耗。減少CPU運算的工作可以從很多方面入手:

  A)用查表的方法替代實時的計算;

  B)不可避免的實時計算,算到精度夠了就結束,避免“過度”的計算;

  C)盡量使用短的數據類型,例如,盡量使用字符型的8位數據替代16位的整型數據,盡量使用分數運算而避免浮點數運算等。

 

  讓I/O模塊間歇運行

 

  A)不用的I/O模塊要關掉,間歇使用的I/O模塊要及時關掉,以節省電能。

  B)不用的I/O引腳要設置成輸出或設置成輸入,用上拉電阻拉高。

  總之,在單片機系統設計過程中,深入理解單片機低功耗的特性,并在硬件和應用軟件的設計過程中充分利用單片機的低功耗特性,來設計出符合低功耗要求的產品。

 

  SilabsMCU在低功耗方面的優勢

 

   Silabs的C8051F系列單片機是從傳統的8051單片機衍生出來的一種新型高速單片機。它屬于CISC指令系統,但由于采用“流水線”結構方式 處理指令,70%的指令的執行時間為1個或2個系統時鐘,指令執行的峰值速度為MIPS級別。雖然它的運行速度很高,但是在低功耗設計方面具有獨特的優 勢。這主要體現在:

 

供電電壓范圍寬

 

  SilabsMCU的供電電壓范圍為2~5.25V。

 

  寬的供電電壓范圍不僅為單片機系統設計帶來方便,而且低的供電電壓可以有效地降低整個單片機系統的功耗。

 

  有多種低功耗模式

 

   SilabsMCU有Idle、Stop和Suspend三種低功耗模式。各種模式下片上資源狀態、功耗及喚醒的情況如表1所示。在Stop和 Suspend模式下,MCU的功耗可以降低到nA級。在Suspend模式下,有多種喚醒源,當被喚醒時(非復位源喚醒),CPU不會對系統復位。在 Stop模式下,SilabsMCU有豐富的復位源使CPU被喚醒,如圖1所示。

 

  有多種時鐘方案供選擇

 

   SilabsMCU都設計有兩套時鐘方案供選擇。用戶可以根據實際需要選擇內部振蕩器或外部振蕩器,或者同時選擇內、外振蕩器。內部振蕩器可以通過相關 寄存器設置來選擇不同的頻率。其頻率范圍為:80KHz~100MHz。更為重要的是在MCU運行中,可以實時高速地進行內、外時鐘切換。時鐘切換速度 快,切換產生的功耗小。這種特性,對于間歇工作的單片機系統低功耗設計,特別有幫助。

 

  靈活的I/O設計

 

  SilabsMCU的I/O口資源豐富,配置靈活。有三種配置方式:漏極開路、推挽輸出和弱上拉方式。用戶可以根據實際需要通過相關寄存器的設置來禁止或使能這些方式。其中將端口配置成漏極開路方式是最省電的方式。

 

  高速實時的中斷響應

 

  SilabsMCU響應中斷的時間非常快,一般只需要5個系統時鐘周期。中斷響應速度快,CPU花費在等待方面的時間少,這可以節省不少的等待功耗。

 

  運算速度快,處理數據能力強

 

   雖然Silabs的C8051F系列單片機屬于CISC指令系統,但由于它采用了“流水線”結構方式處理指令,70%的指令的執行時間為1個或2個系統 時鐘,突破了傳統的8051單片機運行效率低的弱點,特別是它執行乘法指令只要4個系統時鐘,執行除法指令只要8個系統時鐘。與那些RISC指令系統的單 片機和那些速度低的CISC單片機相比,這不僅僅帶來了數據運算的高效率,同時也極大地降低了系統的功耗。因此,使用每MIPS功耗來衡量Silabs的 C8051F系列單片機的功耗,無論是處理一般事件,還是做數據運算,它都是非常低的,具有明顯的優勢。圖2是和其他MCU做除法運算的速度對比。從對比 中我們可以看出SilabsMCU具有高速處理數據能力的同時也帶來了更低的功耗。

 

  總之,深入理解SilabsMCU低功耗的特性,根據實際情況,靈活運用,就可以設計出滿足要求的低功耗產品。

 

  SilabsMCU低功耗實現方法

 

   這里舉一個運動裝置的應用,采用3V電池供電,間歇工作,要求平均功耗不大于200mA。使用SilabsMCUC8051F333成功地實現了低功耗 的應用。選擇雙時鐘系統,即處理數據時使用內部高速振蕩器25MHz,空閑時使用外部晶振32.768KHz(如圖3所示),并進入Idle模式。

 

  沒有使用到的片上模擬和數字外設全部關閉,沒有用到的I/O全部設置成漏極開路方式。

 

  下面我們分析一下在不同情況下,CPU的功耗情況。

 

  在溫度-40℃~85℃范圍內,工作電壓3V,系統時鐘25MHz的情況下,CPU的功耗典型值是7.8mA。其電氣特性參數表如表2所示。

 

  我們還可以大概估算出在不同頻率下CPU的功耗。當F>15MHz時,可以用下面的公式來估算:

  IDD=IDD1-(F1-F)×IDD2(1)

  其中IDD1是在不同電壓、最高頻率下正常工作時的最小功耗,F1是最高工作頻率,IDD2是F>15MHz,不同電壓下的IDD頻率敏感度。例如,VDD=3.0V;F=20MHz時,根據圖2可以算出:

 

  IDD=7.8mA-(25MHz-20MHz)×0.21mA/MHz=6.75mA

  當F≤15MHz時,CPU的功耗可以用下面的公式來估算:

  IDD=F÷1MHz×IDD2(2)

 

  例如,VDD=3.0V;F=32.768KHz時,根據圖2可以算出:

 

 IDD=32.768KHz÷1MHz×0.38mA/MHz=12.45184mA

 

  在溫度-40℃~85℃范圍內,工作電壓3V,系統時鐘32.768KHz的情況下,CPU的功耗可以通過Idle模式下的電氣特性參數來計算。Idle模式下的電氣特性參數表如表3所示。

 

  根據公式(2),Idle模式下的功耗為:

 

  IDD=32.768KHz÷1MHz×0.20mA/MHz=6.5536mA

 

  從上面的分析我們可以看出,使用外部低頻振蕩器,并進入Idle模式,CPU的功耗可以降的很低。如果能用上Stop模式,功耗可以降低到0.1mA以下。在模擬該運動裝置真實使用環境的條件下,經過使用儀器測試,平均功耗降低到了150mA以下。該產品目前已經批量上市了。

 

  結語

 

  C8051F系列單片機封裝小,高集成度,低功耗特性好。只要根據項目的實際情況,認真細致地分析產品的低功耗要求,靈活應用SilabsMCU的低功耗特性,從硬件和應用軟件兩方面入手,就可以設計出滿足不同要求的低功耗產品。

 

 

 

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 97综合网 | 欧洲精品一区二区三区 | 国产精品久久久久久久久久久久 | 国产综合区 | 久久99国产精品一区二区 | 国产精品久久久久久久久久久久久久 | 国产亚洲人成网站在线观看 | 日韩欧美成人免费中文字幕 | 黄色高清视频在线观看 | 午夜激情福利在线 | 激情开心站 | 免费国产一区 | 3d动漫精品啪啪一区二区中 | 国产精品毛片一区二区三区 | 成人在线观看国产 | 国产成人aa视频在线观看 | 五月天情网| 国产精品久久久久久久久久久威 | 久青草视频97国内免费影视 | 精品福利视频导航 | 国内精品一区二区三区 | 五月丁六月停停 | 婷婷色在线 | 国产男女视频 | 国产伦码精品一区二区三区 | 国产精品高清2021在线 | 五月天婷婷丁香花 | 国产成人青青热久免费精品 | 97色在线观看免费视频 | 玖玖99| 借种无删减版 | 国产精品日日爱 | 四虎网站在线 | 欧美一级片在线观看 | 欧美国产在线看 | 国产精品一区二区手机在线观看 | 欧美亚洲性色影视在线 | 欧美在线一二三区 | 欧美日韩中文国产一区二区三区 | 六月天色婷婷 | 国产自在线观看 |