高速微控制器廣泛用于便攜式設備。通過正確使用電源管理模式,設計人員可以優化當今新系統中使用的電池的使用壽命。本應用筆記探討了通過選擇高效時鐘源和時鐘速度、使用停止模式、空閑模式和突發模式來降低功耗的方法。Maxim高速微控制器和超高速閃存微控制器系列為用戶提供電池備份應用的高級功能。
便攜式產品在特性和功能方面不斷進步。客戶要求其產品具有更高的性能,這需要更大的計算能力。同時,他們希望產品功耗更低。這些競爭需求的核心是微控制器,它通常是便攜式儀器中最大的功耗之一。
存在低功耗處理器,它們通常性能有限。Maxim的高速微控制器系列是功耗和性能的良好折衷方案。它基于8051架構,這是世界上最受歡迎的微控制器之一。設計人員看重其易用性、豐富的 I/O 結構和廣泛接受度。它的流行已經延續到便攜式領域,在許多應用中找到了家。
本文介紹了使用 8051 控制器最大限度地降低功耗的方法,重點介紹了可延長基于 8051 的高性能設計的電池壽命的新架構改進。本文討論了將外設集成在片上并選擇合適的時鐘源作為降低功耗的方法。介紹了節能軟件技術,以及降低使用停止模式的系統功耗的方法。
時鐘速度
在任何微控制器設計中,決定功耗的最重要因素是系統時鐘速度?;パa金屬氧化物半導體(CMOS)器件的功耗與時鐘速度成正比。因此,從電源的角度來看,以盡可能慢的速度運行處理器是有益的。
圖1顯示了通用8051微控制器的典型功耗曲線,這是所有便攜式系統設計人員都知道的關系。通常,電流與頻率特性是線性的,具有直流偏移。該靜態電流由片內靜態電路引起,例如比較器、運算放大器等。雖然這個數字通常很?。?1mA),但它是一個需要考慮的恒定漏極。
圖1.通用 8051 微控制器的典型功耗曲線。
任何注重功耗的設計都會嘗試盡可能慢地運行。確定最小系統頻率以及最小功耗取決于許多因素,包括所需的性能和中斷延遲。然而,無論使用什么標準,最終目標都是相同的:使器件的工作頻率盡可能與應用要求相匹配。
高速核心
降低基于 8051 的設計功耗的最直接方法是提高微控制器的效率。8051 的原始設計基于 12 時鐘、每臺機器 2 次抓取的周期架構。然而,高速微控制器系列使用每個機器周期內核 4 或 1 時鐘。它的計算效率更高,執行指令所需的時鐘周期更少,從而縮短執行時間并提高最大時鐘速率。
雖然高速內核的優勢通常從性能方面考慮,但它們對功耗也有重要影響。當處理器的指令執行得到優化時,完成相同任務所需的時間更少。許多便攜式產品以突發模式運行,其特點是活動時間短,例如記錄環境數據或掃描條形碼,然后長時間不活動。減少處理器必須處于活動狀態的時間可以相應地降低能耗。
這種效率提高的另一個結果是,在降低時鐘速度的同時可以實現相當的性能。如果重新設計的內核每個周期使用4個時鐘而不是12個時鐘,這意味著可以在降低晶體速度的情況下完成相同的工作。由于功耗與晶體速度成正比,因此可以在不犧牲性能的情況下降低功耗。
圖2顯示了三個微控制器以相同的性能水平執行相同任務的功耗。兩個微控制器是標準的80C3x衍生產品,每個機器周期工作在12個外部時鐘,而第二個是DS80C320微控制器,每個機器周期工作4個時鐘。測量所有器件的電流消耗,然后進行比較,假設DS250C2的保守性能提高了5%(80.320倍)。從圖中可以明顯看出,在相同的吞吐量下,每個周期內核的時鐘減少會顯著降低,尤其是在高性能水平下。
圖2.縮短時鐘周期的內核在整個過程中使用較少的電流。
集成
片上集成外設是一種省電方法。當驅動片外信號時,發生器件必須應對驅動外部負載所需的開關功率和任何直流損耗。開關功率(PSW)是數字信號變化時消耗的功率。開關功率近似如下:
PSWα CV2/T | (1) |
其中C是接收柵輸入緩沖器的集總電容和兩個柵極之間的互連,T是信號的時鐘周期。CMOS輸入的典型輸入電容為10pF。雖然很難計算出系統的開關功率的確切值,但很明顯,微控制器必須驅動的每個額外的外部負載或引腳都會消耗額外的功率。
基于微控制器的系統通常使用許多外設。這些范圍從外部UART和上電復位電路到看門狗定時器。8051產品系列的優勢之一是片上提供了大量外設功能。除了通過消除組件來簡化設計外,集成外設還可以降低功耗??梢约僭O任何外設的核心功能消耗相同的功率,無論是位于處理器內部還是外部。然而,在片上定位外設將消除與驅動外部總線相關的開關功率損耗。
內部程序存儲器
另一個通常不被視為外設的8051功能是程序存儲器。所有 8051 衍生產品都集成了不同數量的片上程序存儲器。許多系統設計人員希望將其作為減少元件數量和電路板面積的方法,但它也延長了便攜式系統的電池壽命。如前所述,這將通過消除驅動外部總線的需要來降低功耗。使用片上存儲器時,還可以節省額外的功耗。8051 架構需要使用 74373 型鎖存器來解復用地址的較低字節。圖3比較了內部程序存儲器和外部程序存儲器的使用。第一種使用DS87C520高速微控制器,帶有74AC573鎖存器和27C256 EPROM,訪問時間為70ns。第二個系統使用相同的微控制器,但由內部存儲器運行。兩個系統的工作頻率均為11.0592MHz,執行一個簡短的通用程序。從圖中可以明顯看出,通過消除系統中的外部EPROM和鎖存器,可以在高頻下節省多達49mA的電流。
圖3.使用內部存儲器可顯著降低電流消耗。
內部數據存儲器
如前所述,使用片上存儲器而不是外部RAM將節省功耗。80C32衍生產品(256字節)的擴展暫存器足以用于堆棧操作和小程序中的一些數據存儲,無需外部RAM。
但是,對于需要更多數據存儲器或需要實現外部堆棧的設計,可能需要額外的SRAM。雖然可以使用低功耗SRAM,但其功耗還必須包括與74373串聯鎖存器相關的功耗以及驅動外部總線的容性損耗。這可以通過使用具有擴展片上RAM的設備來緩解。圖4顯示了使用映射到8051 MOVX數據空間的SRAM的兩個系統的功耗。第一種使用DS87C520高速微控制器,帶有74AC573鎖存器和DS2064 SRAM。第二個系統使用相同的微控制器,但使用1KB的內部MOVX數據存儲器。兩個微控制器的工作頻率均為11.0592MHz,執行一個簡短的通用程序,用于讀取和寫入MOVX數據存儲器。從圖中可以明顯看出,通過消除系統中的外部SRAM和鎖存器,可以在高頻下節省多達9mA的電流。
時鐘源
從電源的角度來看,另一個關鍵系統組件是時鐘源。標準 8051 設計通常使用內部振蕩器放大器激勵外部石英晶體,或使用外部晶體振蕩器。如果使用外部晶體振蕩器,時鐘的波形會影響功耗。XTAL1 引腳的輸入級用于將外部時鐘信號驅動到 8051 中,通常采用互補驅動器。當輸入時鐘在高電平和低電平之間轉換時,驅動器將暫時導通,從而導致明顯的電流浪涌。使用方波時,高電平和低電平狀態之間的轉換幾乎是瞬時的,并且兩個設備都打開的時間被最小化。上升和下降時間較慢的波形(如正弦波或三角波)將需要更長的時間才能完成轉換,并且在兩個驅動器上花費更多時間。這將增加電流和功耗。
圖4.無需外部SRAM和鎖存器可節省功耗。
圖5顯示了電流消耗與波形形狀的關系。時鐘源是一個可編程波形發生器,能夠輸出正弦波、三角波或方波。所示電流消耗平均為四個器件,包括傳統和高速內核。比較表明,電流消耗與時鐘波形的上升(和下降)時間成正比。三角波的斜率最低,方波的斜率最高。方波平均比三角波小0.75mA。這意味著外部時鐘振蕩器設計中的電流消耗可以通過使用具有快速上升和下降時間的振蕩器來降低。在較低頻率下,當設備在轉換中花費更多時間時,這一點變得更加重要。
圖5.具有更銳邊的振蕩器波形可降低功耗。
一些 8051 衍生產品集成了片上內部環形振蕩器。這通常是在其周圍傳播脈沖的逆變器鏈。這提供了一個大約 2MHz 至 4MHz 的內部時鐘源,能夠操作器件。因為它不需要使用晶體,所以它是一種非常低功率的時鐘源。對DS87C520高速微控制器的表征表明,環形振蕩器工作在約7.8051mA時可提供與3MHz 6相當的性能。雖然環形振蕩器不具備壓電晶體的穩定性,但其低功耗和可忽略的上電延遲使其成為電源管理方案中的一個重要因素。
時鐘管理
如前所述,微控制器的工作頻率是影響器件功耗的最大單一因素。雖然系統時鐘頻率主要是一種硬件功能,但 8051 能夠對其進行有限的控制。這些方法依賴于減慢或停止全部或部分器件的內部工作頻率。傳統的 8051 架構使用兩種時鐘控制模式:空閑和停止。
改進停止模式
停止模式是 8051 設計人員可用的最低功耗狀態。在這種模式下,內部晶體放大器停止,停止器件的運行。從停止模式退出通常由外部復位啟動。某些變體還支持使用外部中斷從停止模式退出。
與停止模式相關的缺點之一是晶體恢復運行時在“死區時間”期間消耗的功率。晶體振蕩器依靠石英晶體的運動來運行。物理限制要求晶體振蕩需要有限的時間才能達到足夠的振幅供器件運行。無論時鐘源是外部晶體和內部晶體放大器,還是使用外部晶體振蕩器,都會遇到此預熱期。這個時間可以在3ms到12ms之間,具體取決于晶體和相關放大器的特性。
預熱期對功耗的影響是,雖然設備在此期間沒有執行任何有用的工作,但它仍在消耗功率。如果設備頻繁進入和退出停止模式,或者退出停止模式以執行短期任務,這可能會變得很重要。實際上,如果任務非常短(<5ms),晶體重啟周期可能會比任務本身消耗更多的功率。如果使用環形振蕩器從停止模式執行“快速啟動”,則可以避免這種延遲。這將大大減少退出停止模式時的電量。
圖 6 顯示了兩個系統從停止模式退出并執行簡短任務的操作。一個器件集成了內部環形振蕩器,另一個器件使用傳統的外部晶體。沒有環形振蕩器的器件必須承受晶體預熱期。在此期間,設備繼續消耗電量,但不做任何有用的工作。第二款器件是DS87C520高速微控制器,內置環形振蕩器。這允許設備在退出停止模式時立即恢復操作。在本例中,要執行的例程在大約 4MHz 時持續時間小于 2ms。如圖所示,在退出停止模式時使用環形振蕩器執行短任務,可以大大降低能耗。
圖6.帶環和不帶振鈴的停止模式退出的比較。
在某些應用中,在退出停止模式后不久可能需要晶體振蕩器的穩定性。在這種情況下,環形振蕩器仍然可以是有利的。退出停止模式后,器件應立即重新啟動晶體振蕩器。然后,該器件可以在晶體仍在預熱時初始化任何必要的數據或寄存器。大多數高速微控制器都包含一個狀態位,用于指示晶體振蕩器是否已穩定。一旦晶體振蕩器代碼的初始化程序完成,軟件就可以輪詢狀態位,以確定何時可以開始高精度定時操作。
提高停止模式效率的另一種方法是使用中斷退出而不是復位。這允許處理器按照 STOP 位設置后的指令立即恢復操作,而不必從復位矢量重新啟動。這消除了確定復位原因的需要,并允許處理器在更短的時間內開始執行有用的工作。
空閑模式
空閑模式是原始 8051 架構中使用的第二種時鐘管理模式。此模式停止 CPU 的運行,但保持片上通用定時器運行。在功耗敏感型應用中,這些計時器用于定期喚醒設備以執行任務或輪詢是否應執行任務。
由于標準 8051 定時器限制為 16 位,因此在 31MHz 時鐘速率下,最大超時周期為 16ms。如果需要更長的時間段,則需要多個計時器溢出。這將消耗額外的功率,因為設備必須偶爾恢復完全操作以增加計數器,但不執行任何有用的工作。
對于較長時間,請使用周期較長的內部計時器。一些 8051 衍生產品集成了看門狗定時器,也可用于喚醒設備。看門狗定時器可以編程為226個時鐘周期的長超時周期。這將允許在4MHz時的最大超時周期為2.16s。例如,假設應用程序希望每 3 秒從低功耗狀態喚醒一次以執行任務。如果使用內部計時器對操作進行計時,則設備必須退出空閑模式 96 次,而不會執行有用的工作。如果使用具有較長超時的看門狗定時器,則器件將僅退出一次空閑模式,執行任務,然后返回到低功耗狀態。
另一種選擇是使用具有實時時鐘(RTC)的微控制器。DS87C530高速微控制器集成了RTC,能夠產生長達24小時的報警周期。此警報產生的內部中斷可能導致設備退出空閑或停止模式。使用 RTC 退出停止模式是長時間暫停設備操作的最有效方法。
電源管理模式
雖然空閑模式通過停止程序執行來降低功耗,但內部定時器繼續以外部時鐘頻率工作??紤]到定時器基本上以“待機”容量運行,這消耗了相當大的功率。
更好的方法是降低整個設備的時鐘速率。這可以通過內部時鐘除數來完成,該除數在外部時鐘頻率進入CPU之前對其進行分頻。這種方案已經在DS87C520高速微控制器中實現。該器件采用兩種時鐘除數功能:電源管理模式 1(將輸入時鐘源分頻 64)和電源管理模式 2(將輸入時鐘源分頻 1024)。這些模式通過在特殊功能寄存器中設置適當的位來啟用。
圖7給出了DS87C520高速微控制器的時鐘除數和時鐘控制模式的比較。該圖對比了全速(除以 4)、電源管理模式 1(除以 64)、電源管理模式 2(除以 1024)、空閑模式和停止模式下的電流消耗。正如預期的那樣,停止模式消耗的電流最小,因為所有內部時鐘都已停止。這種比較的一個有趣結果是,兩種電源管理模式消耗的電流比空閑模式少。這不僅使設備能夠節省功率,而且允許其在低運行水平下連續運行。在傳統的 8051 架構中,執行任何類型的 CPU 活動都是“全有或全無”。設備被迫以最高性能水平持續運行,即使高性能只需要短時間。這不必要地增加了功耗。使用電源管理模式 (PMM) 允許設備(和系統)將其功耗與所需的性能水平相匹配。
圖7.完全/空閑/電源管理模式比較。
將中斷與 PMM 結合使用
使用內部時鐘除數的一個可能后果是中斷延遲可能會大大增加。此外,降低內部定時器的速度會影響 8051 串行端口生成標準波特率或與標準波特率同步的能力。這可能會嚴重干擾設備對外部刺激的反應能力。一種解決方案是加入一項功能,該功能可在識別外部中斷或串行端動時自動將設備恢復到完全運行狀態。這種機制已在DS87C520中實現。該設備的回切功能允許設備快速響應外部中斷。一旦確認中斷,設備將自動切換回全速(除以 4),無需軟件干預。
串行端口以類似的方式運行。在串行端口接收引腳上收到下降沿(起始位)后,器件將自動切換回全速(除以 4)。由于這在傳輸開始時立即發生,因此設備將全速正確接收傳輸的其余部分。對于傳統的 8051 架構,在低功耗配置中使用串行端口的唯一方法是使用空閑模式。使用電源管理模式提供了一種低功耗的替代方案。
改進突發模式操作
功耗敏感型設計中的常見工作模式是讓系統從停止模式喚醒,執行突發活動,然后返回停止模式。在這種系統中降低功耗的一種方法是提高工作頻率。起初,這似乎違反直覺。在設備運行時,它將比以較低頻率運行的系統消耗更多的功率。然而,系統運行時消耗的靜態電流不是頻率的函數。在最終的系統設計中,通常會評估能量以確定電池壽命。在評估高性能微控制器時,這種區別很重要,因為它結合了時間和處理能力的概念。如果給定系統的功率和時間的乘積較小,則無論單個項如何,它都需要更少的能量。在許多情況下,可以證明高速微控制器實際上可以通過短時間快速運行來降低能耗,而不是在較長時間內運行得更慢。
這可以通過重新檢查圖7來證明。假設DS87C520從停止模式恢復時,必須讀取I/O端口,執行數學計算,并將結果輸出到另一個端口,需要500個機器周期的CPU時間。從圖中可以看出,12MHz時的電流消耗為4.10mA,34MHz時的電流消耗為6.30mA。表 1 總結了兩種速度下的任務結果。從表中可以看出,在30MHz下工作是最節能的,能耗降低了6%以上。
趕緊等待
在許多應用中,停止模式的時間并不完全取決于速度。通常,設備必須訪問具有固定響應時間的外圍設備,例如A / D轉換器或恒溫器。在這種情況下,微控制器將有一個突發活動,通常是啟動一個進程,然后是一段時間很少或沒有活動。在這種情況下,節能技術的組合可能是有效的。
一個實際示例可以說明帶有PMM的高速微控制器在這種系統中的優勢。假設DS87C520與DS1620數字溫度計和恒溫器接口。此設備使用在模式 8051 下運行的標準 0 串行端口進行串行尋址。主機處理器偶爾會使用外部中斷將DS87C520從停止模式喚醒,并請求其讀取DS1620的溫度。數據檢索完成后,DS87C520將其存儲在內部存儲器中,以便稍后傳輸。DS1620的功能與許多A/D轉換器類似:發出命令開始轉換,然后在轉換完成時出現延遲,然后數據移出。DS1620的轉換時間約為1秒。輪詢設備以確定轉換何時完成。DS87C520可以快速執行初始化和計算功能,因此非常適合這樣的任務。然后,設備可以在等待轉換完成的同時將自身置于 PMM 中。在傳統的8051中,一旦轉換開始,空閑模式將用于將傳統的8051置于低功耗狀態。使用此模式允許內部 16 位定時器測量轉換周期。傳統的 16 工作頻率為 8051MHz,可能需要退出多達 32 次空閑模式才能完成轉換。
表 1.500 個機器周期任務的能耗與處理器速度
時鐘頻率 | 機器周期 | 所需的機器周期 | 總時間 | ICC | 當前 時間產品 |
10兆赫 | 400ns | 500 | 200年代 | 12.41毫安 | 2.48犁 |
30兆赫 | 133ns | 500 | 66.5秒 | 34.66毫安 | 2.30如 |
在此示例中,可以進行進一步的改進。由于DS1620作為同步器件,因此不需要高精度的定時操作。因此,微控制器可以在啟動和讀取轉換結果時通過環形振蕩器工作。這通過消除穩定外部晶體所需的死區時間,進一步節省功耗。
圖 8 顯示了實現上述“快點等待”方案的兩個 8051 系統的操作。從圖中可以看出,退出停止模式后,程序執行期間的功耗顯著降低。除了使用 PMM2 而不是空閑模式可以節省功耗外,消除晶體預熱周期意味著例程可以更快地返回到停止模式。在 1s 轉換延遲期間從環形振蕩器運行會進一步降低處理器速度,從而節省更多功耗。
圖8.實施8051“趕緊等待”計劃。
總結
8051微控制器系列仍然是世界上最受歡迎的處理器之一。其易用性和相對較高的性能使其成為許多應用的理想選擇,包括便攜式和手持式產品。Maxim高速微控制器的推出使現有8051設計無需昂貴的重新設計即可提高電源效率。
高速微控制器降低功耗的優勢可總結如下:
高性能 CPU 允許減慢處理器時鐘,從而以更低的功耗獲得相同的性能水平?;蛘?,可以在不增加功耗的情況下提高現有系統的性能。
高速微控制器集成了看門狗定時器、附加UART和精密復位電路等功能。外部組件消耗更多功率。
引入兩種新的低功耗模式為空閑模式提供了一種低功耗替代方案。除了降低電流消耗外,DS87C520中使用的電源管理模式還允許處理器在低電平狀態下執行輪詢等任務。傳統的 8051 架構要求處理器以最大時鐘速率運行,即使只需要最小的處理能力。
可編程時鐘速率和高性能內核的優勢可以與停止模式相結合,以大大降低功耗。已經提供了一些示例,展示了如何通過將設備的時鐘速率與所需的性能水平相匹配來降低能耗。
審核編輯:郭婷
-
處理器
+關注
關注
68文章
19259瀏覽量
229653 -
控制器
+關注
關注
112文章
16332瀏覽量
177813 -
電池
+關注
關注
84文章
10560瀏覽量
129480
發布評論請先 登錄
相關推薦
評論