從事便攜式或手持產(chǎn)品設計的工程師都明白對于如今的設計,最大限度地降低功耗是必不可少的要求。但是,只有經(jīng)驗豐富的工程師理解盡可能地延長(cháng)系統的電池壽命的那些微妙但又重要的細節。本文中我們將重點(diǎn)放在這些經(jīng)驗豐富的專(zhuān)家是如何使用超低功耗的復雜可編程邏輯器件(CPLD),并從他們的嵌入式設計中的I/O子系統節省每個(gè)微瓦的方法。 我們首先來(lái)了解在嵌入式設計中如何降低CPLD的功耗、電路板的面積和元器件成本。下一步,我們將看到在待機模式下如何盡量降低CPLD的功耗,不僅要仔細地選擇器件,而且還要選擇一個(gè)合適的總線(xiàn)駐留方案。器件工作期間,我們對節省功耗的探討將包括選擇邏輯門(mén)、智能I/O設計和精密的電源電壓管理技術(shù)。 嵌入式工程師青睞的器件CPLD 盡管在最先進(jìn)的新興應用中它們特別受歡迎,CPLD的成本低,體積小和低功耗的特性使他們成為幾乎所有的手持式或便攜式設計的首選。在這些應用中,它們常用來(lái)整合邏輯功能,擴展主處理器的I/O功能和監控關(guān)鍵的輸入,從而使處理器有更多的時(shí)間處于低功耗睡眠模式。 用作I/O的擴展器件時(shí),像ispMACH 4000ZE這樣的CPLD器件(圖1)給予簡(jiǎn)單的嵌入式處理器額外的信號線(xiàn)和處理功能,他們能夠支持顯示器、按鈕、發(fā)光二極管,串行或并行I/O,或存儲接口。設計人員還經(jīng)常利用它們作為設計中通用處理器和更多的專(zhuān)業(yè)芯片組之間的緩沖,還能用于其他的應用,如智能手機、GPS系統,遠程工業(yè)傳感器和數碼攝像機。 ![]() 圖1:用Lattice ispMACH 4000ZE CPLD擴展I/O。 待機功耗的基本知識 掌握CPLD功耗的第一步是了解器件在工作時(shí)的情況和待機(也稱(chēng)為靜態(tài))時(shí)的狀態(tài)。由于許多CPLD在大部分時(shí)間是處于待機狀態(tài),我們首先會(huì )仔細考察這個(gè)經(jīng)常被誤解的模式。 加電壓至器件輸入部分,但其內部邏輯還沒(méi)有被時(shí)鐘控制,此時(shí)CPLD是處于待機狀態(tài)。在此狀態(tài)下,因為它的泄漏和偏置電流(雖然大大低于實(shí)際的操作),CPLD仍然有一些功耗。泄漏電流隨溫度、工作電壓和制造工藝而變化。 負載產(chǎn)生了可編程邏輯器件內的偏置電流,如內部振蕩器、I/O的上拉/下拉電路和其他固定開(kāi)銷(xiāo),而不管器件的邏輯功能是否正在使用。與泄漏電流不一樣,在一定的溫度和電壓范圍內偏置電流是相對穩定的,它們可以用合適的內部配置所控制。 用明智的方法管理泄漏電流 由于可編程邏輯器件的泄漏電流主要取決于它是怎樣制造的,第一步就是要密切關(guān)注候選器件制造商提供的數據手冊的規范。只是簡(jiǎn)單地購買(mǎi)廣告所述的低功耗器件并不能保證如你期望設計中達到的指標完全一樣。經(jīng)驗豐富的設計師明白尋找“典型”和“最大”電流之間的實(shí)際關(guān)系需要根據具體的應用(圖2)做出解釋。在許多應用中,數據手冊中列出的所謂典型電流中提供了一個(gè)非常有用的CPLD汲取電流的近似值。然而,有幾個(gè)問(wèn)題需要加以探討,以確保對設計的估計和實(shí)際功耗保持相對接近。 ![]() 圖2:供給電流規范。 首先需要考慮的事項是CPLD占整個(gè)系統功耗的比例。如果這是一小部分,比如說(shuō)5%~10%,即使最壞的情況將引起整個(gè)功耗有相對較小的變化。如果CPLD需要20%或以上的功耗預算,也許是開(kāi)始根據額定待機電流考慮偏置設計的時(shí)候了,額定待機電流接近數據手冊中列出的最大電流。您還應該考慮設計中CPLD(以及其他器件)的數量。由于電路板上元器件數量的增加,總功耗接近總的典型額定電流的概率也隨之增加。最后,如果您的產(chǎn)品以驅動(dòng)它至最壞情況的功耗級別為目標,那么您需要考慮潛在影響:較高的功耗會(huì )縮短產(chǎn)品的壽命嗎?它是否會(huì )成為火災的隱患? 如果您仔細察看圖2中的數據,你可能注意到,待機功耗還根據工作溫度和Vcc(電源電壓)而變化。這是因為CPLD的漏電流會(huì )隨溫度升高而增加。事實(shí)上,使您的設計完美將改善其待機功耗。由于漏電流與Vcc密切相關(guān),保持電源電壓盡可能的低可以節省更多的功耗。由于仔細的電源電壓管理能夠節省更多的動(dòng)態(tài)功耗,在涉及運作功耗管理時(shí),我們會(huì )對這個(gè)方面進(jìn)行探討。 設置偏置電流 通過(guò)選擇合適的器件可以控制CPLD的泄漏電流,現在到了運用你的工程技能調整偏置電流的時(shí)候了。用來(lái)管理偏置電流的技術(shù)大致分為兩種類(lèi)型: 確保CPLD的待機配置不與上拉/下拉或相關(guān)的其他器件所用的總線(xiàn)駐留技術(shù)相沖突;動(dòng)態(tài)控制內部功能塊(如振蕩器),使他們只開(kāi)啟所需要的部分。具體取決于所使用的CPLD,這是增加更多的待機時(shí)間到設計中的好方法。 并行駐留101方案 在許多設計中,嵌入式主處理器可以使用自己的總線(xiàn)駐留方案,以保持在總線(xiàn)或I/O上所需的邏輯電平,所以你只須為CPLD的待機模式做準備,確保其激活總線(xiàn)的管理功能被禁用。在其他應用中,總線(xiàn)上其他地方的上拉或下拉電路也可以緩解在待機期間CPLD必須管理總線(xiàn)的情況。 但是,不需要CPLD做任何事情并不意味著(zhù)你也不需要做任何事情;ㄐ⿻r(shí)間驗證只有一個(gè)設備驅動(dòng)總線(xiàn)是一個(gè)重要的任務(wù),因為單個(gè)引腳上的邏輯沖突可導致待機功耗為整個(gè)芯片標稱(chēng)值10uA 閑置功耗的2~15倍。 在主總線(xiàn)駐留機制無(wú)法使用情況下,可以使用上拉/下拉,以及在大多數現代的CPLD中擁有的總線(xiàn)保持功能。如同大多數同類(lèi)器件,萊迪思的ispMACH 4000ZE CPLD的I/O引腳都配備了可選的上拉和下拉電阻,在待機狀態(tài)(圖3)可提供合適的邏輯電平。4000ZE系列還配備了節省功耗的總線(xiàn)保持功能(也稱(chēng)為總線(xiàn)保持):一種弱激活驅動(dòng)電路可設置為激活或零,同時(shí)產(chǎn)生比簡(jiǎn)單的電阻器消耗小得多的功耗。一點(diǎn)忠告:雖然總線(xiàn)保持功能可大大節省功耗,但必須肯定它是唯一的在線(xiàn)有源器件,否則會(huì )有吸入大電流的風(fēng)險。 ![]() 圖3:CPLD的總線(xiàn)管理選擇。 動(dòng)態(tài)功耗管理 設計人員需要關(guān)注兩種類(lèi)型的動(dòng)態(tài)功耗。運行功耗預算的第一部分是CPLD需要實(shí)際工作時(shí)的那部分。管理策略的其他部分涉及關(guān)掉輸入至此刻不需要的CPLD的部分,阻止它們切換,或在可能的情況下將它們全部關(guān)閉。 精密的電源管理 雖然CPLD邏輯的許多部分很可能被連續使用,在有意義的時(shí)間段內不能禁用,因此使用低電源電壓仍然可以節省功耗。由于功耗是電壓平方的函數,用1%的精確開(kāi)關(guān)穩壓器,可讓設計運行于CPLD工作范圍的下限,您可以節省相當多的功耗。例如,如果一個(gè)標稱(chēng)值為1.8V的CPLD工作在1.65V,它大約少消耗30%的功耗,這還不包括在較低Vcc的情況下泄漏電流的減少。 選擇邏輯門(mén) 如同大多數的CPLD,ispMACH 4000ZE具有一個(gè)功能(萊迪思稱(chēng)為“Power Guard” 功耗衛士),當它們不需要相關(guān)的邏輯時(shí),可禁用單獨的輸入。主機處理器、其他的外部邏輯,或CPLD的其他部分可以使用器件的塊輸入使能線(xiàn),以保持CPLD的邏輯選定的塊被時(shí)鐘控制(圖4)。例如,如果CPLD的某個(gè)部分被用作解碼器電路,只有該功能正在使用時(shí),主處理器可以使它能工作,使之能夠在其余的時(shí)間保持休眠狀態(tài)。 ![]() 圖4:Power Guard電路。 根據實(shí)際的應用使用Lattice的Power Guard或其他方法來(lái)禁用時(shí)鐘至選定的CPLD的輸入引腳,這樣可以大大降低動(dòng)態(tài)功耗。尤其是如果邏輯信號的時(shí)鐘頻率超過(guò)30兆赫時(shí),這些方法特別有用。圖5說(shuō)明了可以用選擇邏輯時(shí)鐘技術(shù)實(shí)現潛在的節省功耗的方法。 ![]() 圖5:Power Guard 節省的功耗。 針對低功耗的I/O設計 除了使用已經(jīng)闡述的技術(shù),目前大部分項目給予精明的工程師更多節省多余的微瓦功耗的機會(huì )-如果他們愿意關(guān)注潛伏在許多設計中的微小能源汲取部分。一個(gè)好的例子是無(wú)處不在的為開(kāi)關(guān)提供讀出電壓的上拉電阻,以及連接到CPLD的輸入線(xiàn)(圖6)。通過(guò)使用CPLD的輸出,或其他控制線(xiàn)至電源電壓到讀出線(xiàn),只有當他們被讀取時(shí),并且讀出線(xiàn)接地時(shí),設計人員方可去除這個(gè)小而穩定的電流。 ![]() 圖6:無(wú)源和有源功率開(kāi)關(guān)讀出線(xiàn)。 其他提示 配置可編程邏輯器件的JTAG接口引腳為浮動(dòng)狀態(tài),以避免漏電流。保持VCCO的I / O電平高于VCC。越接近這個(gè)電壓,吸收的電流越多。在可能的情況下,使用轉換率慢的I/O。 本文小結 大多數基于CPLD設計至少包括一些未引起注意的角落,在這些地方潛伏著(zhù)耗能大戶(hù),他們悄悄地汲取電池的能量。幸運的是,認真實(shí)施一些重要的原則可以制止這些討厭的寄生部分。當選擇CPLD和其他元件時(shí),注意其靜態(tài)和動(dòng)態(tài)功耗等級:他們隨供電電壓、溫度和工作頻率而變化。同樣要注意“最小”、“最大”和“典型“功耗指標,它們將影響你的設計。盡量減少CPLD的偏置電流,確保其待機配置不與其他與之相連的器件相沖突,關(guān)閉任何不必要的內部功能。 管理動(dòng)態(tài)功耗,只給當前CPLD需要的部分加時(shí)鐘。萊迪思的Power Guard功能提供一個(gè)簡(jiǎn)單的方法來(lái)選擇關(guān)閉時(shí)鐘至專(zhuān)門(mén)的輸入,如果無(wú)法使用的話(huà),還有其他的技術(shù)可用。使用精確的電源控制驅動(dòng)邏輯,可實(shí)現節省額外的動(dòng)態(tài)功耗,使用盡可能低的電源電壓。檢查I/O的連接,看看是否有不必要的可去除的加載的汲取功耗的上拉/下拉電阻,或只在需要時(shí)才選擇加載電阻。 如果你仔細地將這些工具應用到下一個(gè)項目,設計中就不會(huì )有隱藏的汲取功耗的大戶(hù),你的產(chǎn)品將會(huì )有很長(cháng)的壽命。 作者:Troy Scott,萊迪思半導體公司 |