<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 低功耗系統設計全方位解析:從硅片工藝到嵌入式軟件

低功耗系統設計全方位解析:從硅片工藝到嵌入式軟件

作者: 時(shí)間:2017-10-21 來(lái)源:網(wǎng)絡(luò ) 收藏

  低功耗系統設計需要注意很多非傳統性因素,從硅片工藝技術(shù),直到在微控制器嵌入平臺上運行的軟件。在系統級做仔細檢查可揭示出決定微控制器能效的三個(gè)主要參數:有源模式功耗;待機功耗;以及工作周期,后者決定了兩種狀態(tài)上所花時(shí)間的比率,而這個(gè)比率則取決于軟件的行為。

本文引用地址:http://dyxdggzs.com/article/201710/367048.htm

  低功耗待機狀態(tài)可以使一只微控制器看似非常高能效,但只有考慮了影響到有源功耗的所有因素后,才能證明其最終性能。

  低功耗待機狀態(tài)可以使一只微控制器看似非常高能效,但只有考慮了影響到有源功耗的所有因素后,才能證明其最終性能。鑒于這個(gè)和其它原因,工藝技術(shù)、IC架構以及軟件結構之間的權衡就是一些決策問(wèn)題,有一些微妙和有時(shí)無(wú)法預期的結果。一個(gè)MCU中各功能塊相互結合的方式,對整體能效有顯著(zhù)的影響。即使硬件實(shí)現上看似微小的改變,也可能致使一個(gè)系統生命周期內的總能耗發(fā)生巨大的波動(dòng)。

  低功耗應用

  舉例來(lái)說(shuō),讀表與報警系統,通常一節電池要供10年電。某只傳感器讀取功耗的少許增加(在產(chǎn)品的生命周期中,這種讀數動(dòng)作要發(fā)生上億次),就可能使產(chǎn)品的實(shí)際現場(chǎng)壽命減少數年時(shí)間。一只簡(jiǎn)單的煙霧警報器,每秒要探測一次空氣中的煙塵粒子,在其生命周期內完成3.15億次讀取。

  一只簡(jiǎn)單煙霧報警器的活動(dòng)比率(或工作周期)還相對算低的。每只傳感器讀數時(shí)可能花費時(shí)間不到數百毫秒就能完成,大部分時(shí)間花在當MCU喚醒ADC以及其它敏感模擬元件時(shí)的校準和安定上,以使它們達到一個(gè)穩定的工作點(diǎn)。在本例中,工作周期是設計的關(guān)鍵,這個(gè)設計在約99.88%的時(shí)間中是處于不活動(dòng)狀態(tài)。

  傳統的煙霧警報器還算比較簡(jiǎn)單??紤]一個(gè)更復雜的RF設計,它有一個(gè)傳感器網(wǎng)格,將讀數結果轉發(fā)給一個(gè)主控應用。傳感器需要從一個(gè)主結點(diǎn)聆聽(tīng)活動(dòng)情況,這樣一方面可以通告說(shuō)自己仍然在網(wǎng)格網(wǎng)絡(luò )中,或者將最新捕捉的信息發(fā)送給路由器。不過(guò),增加活動(dòng)可能并不影響整個(gè)工作周期;相反,采用更高性能的器件,可以在每次激活期間完成更多功能。由于更先進(jìn)架構與半導體技術(shù),使得處理速度的增加成為可能,較快器件可以提供更高的能效,而較慢器件則要運行更長(cháng)周期。重點(diǎn)在于了解工藝技術(shù)、MCU架構,以及軟件實(shí)現之間的交互作用。

  硅選擇

  CMOS能耗數據。幾乎所有MCU的實(shí)現都使用了(圖1)。任何激活態(tài)下邏輯電路的功耗都可以用公式CV2f表示,其中C是器件內開(kāi)關(guān)電路路徑的總電容,V是電源電壓,而f是工作頻率。電壓和電容都是所采用工藝技術(shù)的因素。過(guò)去三十年以來(lái),CMOS邏輯的芯片工作電壓已經(jīng)從12V降到不足 2V,原因是晶體管尺寸的縮小。鑒于電壓在有源功耗的公式中是一個(gè)二次項,因此電壓的降低有明顯的作用。

  

  盡管電容項是線(xiàn)性的,但摩爾定律的縮小也非常有利于降低其整體水平。對于一個(gè)給定的邏輯功能,更先進(jìn)的工藝可提供較低電容,從而獲得較前代更低的功耗。另外,先進(jìn)的設計技術(shù)能夠實(shí)現時(shí)鐘門(mén)控,這樣只有完成實(shí)際任務(wù)的電路才工作,從而降低了總體開(kāi)關(guān)頻率。

  與其它技術(shù)相比,CMOS顯著(zhù)降低了浪費的能量;但是,泄漏電流仍然存在。與有源功耗相反,泄漏功耗會(huì )隨摩爾定律尺度的縮小而增加,在任何低功耗應用中都要考慮它的因素,因為對于一個(gè)低工作周期系統,大部分時(shí)間是處于非激活狀態(tài)。但對有源功耗,電路設計就對實(shí)際泄漏有重要影響。與時(shí)鐘門(mén)控類(lèi)似,電源門(mén)控可以大大改善泄漏的效應,使更先進(jìn)工藝結點(diǎn)成為低工作周期系統的較好選擇,盡管理論上較老工藝技術(shù)能夠提供更低的泄漏數值。

  適合的工藝技術(shù)。對每組特性集合都存在著(zhù)一種適當的工藝技術(shù)。答案并非簡(jiǎn)單地取決于一種有最低理論泄漏值的工藝技術(shù),因為器件在睡眠模式下花費的時(shí)間很多。在睡眠模式下,可以關(guān)閉MCU中大部分的電源,從公式中拿掉泄漏成份。當電路活動(dòng)時(shí),泄漏是一個(gè)較大的問(wèn)題,但先進(jìn)晶體管的優(yōu)勢在于能以高得多的效率切換,從而可以輕易地抵消這個(gè)問(wèn)題。

  舉例來(lái)說(shuō),90 nm工藝的泄漏電流要比專(zhuān)用的低功耗180 nm工藝高出大約五倍。有源模式功耗要低四倍,但其基數是一個(gè)大得多的數值。

  例如一個(gè)180 nm MCU,其有源耗電為40 mA,深度睡眠模式耗電為60 nA,與這些功率水平相比,90 nm實(shí)現的功率水平能夠將有源耗電降至10 mA,但睡眠模式電流較高,為300 nA.對90 nm實(shí)現來(lái)說(shuō),MCU必須在0.0008%的時(shí)間里為活動(dòng)狀態(tài),才能獲得更高的總體能效。換句話(huà)說(shuō),如果系統每天只活動(dòng)工作1秒,則90 nm版的能效大約是其180 nm對手的1.5倍。結論是,在選擇工藝尺度時(shí),關(guān)鍵在于了解應用的工作周期(圖2)。

  

  一旦選擇好了合適的工作技術(shù),IC設計者就可以選擇進(jìn)一步優(yōu)化能源性能。當時(shí)鐘門(mén)控最初問(wèn)世時(shí),它只在一個(gè)相對粗糙的水平上使用。時(shí)鐘門(mén)控增加了一個(gè)系統的復雜性,因為電路設計者需要知道在任何確定的時(shí)間時(shí),哪個(gè)邏輯路徑需要時(shí)鐘信號。

  時(shí)鐘分配。大多數MCU實(shí)現都采用一種層次式結構,將時(shí)鐘信號和相應的電壓水平分配到IC的各個(gè)部分。各個(gè)功能單元(如指令處理塊與外設)被劃分為組,每組都饋給一個(gè)獨立的時(shí)鐘樹(shù)和電源網(wǎng)絡(luò )。一個(gè)分頻器或復用器從一個(gè)公共時(shí)鐘源獲得每一組的時(shí)鐘信號。同樣,如果這些組需要不同的電壓(這種方案日益普遍),則一組功率晶體管和穩壓器會(huì )為每組外設提供電壓。

  為盡量減少設計的復雜性,MCU采用了一種相對簡(jiǎn)單的時(shí)鐘門(mén)控方法,只要一組中的功率單項均未激活,則會(huì )關(guān)斷整個(gè)時(shí)鐘樹(shù)。不過(guò),這種方法會(huì )向那些在活動(dòng)組中不工作的邏輯送入時(shí)鐘。例如,如果當前指令是一個(gè)分支指令,CPU核心中的加法單元也會(huì )收到一個(gè)時(shí)鐘。如前所述,時(shí)鐘信號在加法器中觸發(fā)的轉換會(huì )使功耗增加CV2f倍。

  設計工具與技術(shù)的進(jìn)步已能夠使時(shí)鐘門(mén)控的粒度增加到某個(gè)點(diǎn),如果外設或功率單元在該周期內不工作,就不會(huì )收到時(shí)應用的工作周期鐘信號。

  電壓縮放提供了更進(jìn)一步的節能潛力,它能在必要時(shí),為特定一組功能單元提供一個(gè)較低的電壓。為一組功率單元或外設提供適當電壓的關(guān)鍵在于片上穩壓器或dc/dc轉換器的實(shí)現,以及監控電路的使用,確保IC工作在所需要的電壓下。

  電源的考慮。片上穩壓器為系統設計者提供了更高的靈活性,從而能從一只電池榨取更多電能。例如,片上開(kāi)關(guān)降壓轉換器(如Silicon Labs公司的SiM3L1xx MCU產(chǎn)品)可以從一只3.6V工業(yè)電池獲得輸入,以高于80%的效率將其轉換為1.2V.很多MCU沒(méi)有這種特性,而是采用線(xiàn)性元件降壓到合適電平,會(huì )有大量的消耗。在高級的實(shí)現中,當電池放電到某個(gè)水平,轉換器無(wú)法做轉換工作時(shí),降壓穩壓器可以關(guān)閉。因此,電源可以在設備的整個(gè)生命周期上做到優(yōu)化能效,一切均在軟件控制下。

  軟件的決策

  性能的縮放。高能效嵌入應用的實(shí)現有賴(lài)于軟件的設計,軟件要以最適當的方式使用硬件資源。什么樣才是適合,這不僅取決于應用,而且要看硬件實(shí)現。同樣,硬件越靈活(包括CPU、時(shí)鐘、電壓和存儲器使用),開(kāi)發(fā)者可以獲得的節能潛力也越大。能感知硬件的軟件工具為嵌入系統工程師提供了更高的認知度,使他們能夠更多地了解到哪種更高節能是可實(shí)現的。

  一種選擇是采用動(dòng)態(tài)電壓縮放,如圖3和圖4所示。使該技術(shù)得以實(shí)現的是片上dc/dc轉換器與性能監控電路,當應用不需要以最高速度執行指令時(shí),它們提供了降低電壓的能力。在這些情況下,系統就工作在較低的功耗下。最終的益處是一個(gè)輸入電壓的函數,可以在產(chǎn)品的生命周期內變化。圖中顯示了無(wú)電壓縮放(VDD固定)、SVS(靜態(tài)電壓縮放),以及AVS(動(dòng)態(tài)電壓縮放)之間的相對差別。

  

  AVS有一個(gè)有意思的地方,這就是AVS策略可以根據系統輸入電壓而改變。在本例中,當輸入為3.6V時(shí),用一個(gè)高效的內部dc/dc轉換器為內部邏輯以及閃存供電,效率更高。但隨著(zhù)在產(chǎn)品生命周期內的電池放電,輸入電壓跌落,用輸入電壓為閃存子系統直接供電就成了更高效的方法,因為內部邏輯可以工作在較閃存更低的電壓下。例如,Silicon Labs公司的SiM3L1xx系列MCU就有一個(gè)靈活的電源架構,有六個(gè)獨立和可變的電源域,能夠實(shí)現這種動(dòng)態(tài)的優(yōu)化。

  增加硬件塊(如DMA)可以進(jìn)一步改變對能耗的折衷。

  通常來(lái)說(shuō),CMOS邏輯電路工作得較慢,因為它們電壓低。如果應用可以容忍較低的性能,則較低電壓可以因能耗中的二次項而獲得大的節能效果,例如常有這種情況,要處理的通信協(xié)議,其提交數據的速度不高于某種標準頻率。泄漏為電壓縮放提供了下限。如果每次運行花費時(shí)間太長(cháng),則泄漏就開(kāi)始占據能耗方程的主要地位,從而增加了總能耗。因此,執行一個(gè)功能越快越好,然后就使處理器回到睡眠模式,盡量減少泄漏成份。

  考慮一個(gè)需要完成相當多數字信號處理的無(wú)線(xiàn)傳感器應用,例如玻璃破碎探測器。在本例中,應用會(huì )通過(guò)一個(gè)快速富利葉變換來(lái)分析由音頻傳感器拾取的振動(dòng),其特性頻率來(lái)自于玻璃的碎裂。FFT比較復雜,因此,如要降低電壓而以較低頻率執行這個(gè)變換,就會(huì )大大增加泄漏,

  即使是采用較老的工藝技術(shù)。本例的最佳方案是以接近最高頻率運行這個(gè)變換,然后返回睡眠模式,直到要向主結點(diǎn)報告任何結果時(shí)。

  不過(guò),無(wú)線(xiàn)協(xié)議代碼會(huì )產(chǎn)生不同的要求。射頻協(xié)議要求事件有固定的時(shí)序。在這些情況下,協(xié)議可能要完全由硬件處理。這就使降低處理器核心電壓有了更大的意義。因此,需要做分組組裝與傳輸的代碼要運行在適合于無(wú)線(xiàn)協(xié)議的速度。

  增加硬件塊(如智能DMA)可以進(jìn)一步改變能耗的折衷情況。很多DMA控制器都需要處理器的頻繁干預,如原生ARM Cortex-M3處理器所提供的DMA控制器。但更多智能DMA控制器能支持一種排隊與鏈接的組合,處理器就可以計算報頭、加密數據、分組組裝,然后以適當的間隔,將數據的傳送工作轉交給緩沖存儲區,供射頻前端使用。在射頻鏈路激活的大多數時(shí)間內,處理器可以睡眠,節省大量能源。

  存儲器使用。對于現代32 bit MCU,軟件工程師在存儲器塊的使用方式上有高度自由。通常MCU會(huì )提供一組存儲器,包括長(cháng)期保存代碼和數據的非易失存儲器,以及存放臨時(shí)數據的 SRAM.多數情況下,訪(fǎng)問(wèn)閃存的功耗要高于SRAM.對于正常使用情況,閃存讀取次數是SRAM讀取數的三倍。閃存寫(xiě)入消耗的功率更多(需要將整塊擦除,然后用一個(gè)相對高電壓脈沖的漫長(cháng)序列重新寫(xiě)入)。但對于大多數應用來(lái)說(shuō),閃存寫(xiě)入操作并不頻繁,實(shí)際上不會(huì )影響到平均功耗。

  閃存功耗的一個(gè)更進(jìn)一步因素是如何分配來(lái)自處理器的存取。每個(gè)閃存塊都包含多個(gè)頁(yè)面,每個(gè)頁(yè)面的大小最多可達4k字節。要支持存取,每個(gè)頁(yè)面都必須加電;未被使用的頁(yè)面則可以維持在低功耗狀態(tài)。如果一個(gè)定期存取的代碼段要跨兩個(gè)閃存頁(yè),而不是全在一個(gè)頁(yè)面上,則讀取指令相關(guān)的能耗就會(huì )增加。將跨不同頁(yè)面的頻繁存取代碼與數據在內存中重新分配,就可以在一只電池的放電壽命期間節省不小的能量,而不必修改物理硬件。

  通常有意義的是復制功能,它更多地使用片上SRAM而不是閃存,無(wú)論是讀還是寫(xiě),雖然這種方法看似是對存儲容量的低效使用。電池長(cháng)壽命的優(yōu)點(diǎn)可以輕易抵消掉更多的內存消耗。

  代碼優(yōu)化。能量?jì)?yōu)化亦可以顛覆傳統的代碼效率概念。幾十年來(lái),嵌入系統工程師很注重針對存儲器大小來(lái)優(yōu)化代碼,除非性能是壓倒一切的指標。能量?jì)?yōu)化提供了另一種全新的度量標準集。一個(gè)重要的考慮是采用32 bit平臺上已經(jīng)普遍提供的片上緩存。

  對代碼大小的優(yōu)化能夠在緩存中保存更多的可執行代碼,從而提高了速度和節省了能耗。不過(guò),函數調用與分支(可重新使用公共代碼,從而減少應用的尺寸)會(huì )在同列緩存的代碼段之間造成不可預期的沖突。這樣當需要從主內存中獲取指令時(shí),會(huì )造成浪費的“緩存顛覆”,以及多閃存頁(yè)激活。

  在產(chǎn)品生命周期內要頻繁工作的那些代碼,可以充分壓縮到能裝入緩存中,而不做分支或調用函數,這是有意義的??紤]一個(gè)煙霧報警器:即使報警器每周觸發(fā)一次(也許源于廚房活動(dòng)所產(chǎn)生的過(guò)多煙氣),也僅是報警器十年壽命中3.15億次事件中的520個(gè)。絕大部分時(shí)間中,代碼只要讀一下傳感器值,然后發(fā)現其未超閾值,就讓處理器核心返回睡眠狀態(tài),等待系統定時(shí)器的喚醒。

  在警報器獲取的所有傳感器讀數中,只有不到0.0002%的情況才會(huì )執行警報生成代碼。余下99.9998%的代碼執行都是核心傳感器讀取循環(huán);確保這個(gè)代碼直接在一個(gè)緩存列中執行,就成為最低能量使用的關(guān)鍵。其它代碼由于運行得極少,可以使用更傳統的技術(shù)做優(yōu)化。

  能效工具。對于MCU平臺的能效最大化,工具的支持十分重要。要將不同函數分配到閃存的不同頁(yè),就需要這樣一種鏈接器,它能夠知道目標MCU的存儲器詳圖。鏈接器可以獲得開(kāi)發(fā)人員的輸入結果,看這個(gè)塊是否被分配在了跨頁(yè)邊界上,并生成已經(jīng)過(guò)非易性存儲最高能效優(yōu)化的二進(jìn)制碼。

  一般來(lái)說(shuō),這個(gè)代碼也用于確保函數與數據的放置方式,即最常執行的部分不會(huì )跨多個(gè)緩存列。如果MCU供應商提供了這類(lèi)工具,則實(shí)現這種級別的細節要容易得多,因為他們了解每個(gè)目標平臺的存儲器布局與功率需求。而第三方供應商實(shí)現這工具則要困難得多。

  MCU供應商還詳細地了解不同外設與片上總線(xiàn)的組織方式。這一知識可以用于工具中,指導工程師做出不浪費功率的選擇。

  提示

  在工藝技術(shù)、IC架構以及軟件結構之間的權衡決策,可以得到微妙而有時(shí)是無(wú)法預期的結果。

  電源門(mén)控可以減輕泄漏效應,使更先進(jìn)的工藝結點(diǎn)成為低工作周期系統的較好選擇。

  片上穩壓器為設計人員提供了更多靈活性,能夠從一只電池中榨取更多的電荷,而片上dc/dc轉換器與性能監控電路則能實(shí)現動(dòng)態(tài)的電壓縮放。

  能感知硬件的軟件工具為嵌入系統工程師提供了更多認知能力,從而實(shí)現更高的節能。



關(guān)鍵詞: 嵌入式系統 CMOS技術(shù)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>