降低視頻密集型便攜式產品的能耗
隨著3G無線網的發(fā)展,加上集成電路(IC)技術的不斷進步,便攜式消費電子設備擁有了令人目眩的播放各種視頻內容的能力。不斷增加的移動產品讓用戶進入了多彩的視覺體驗之中,如實時視頻、交互式游戲、交互式地圖、網頁瀏覽還有高分辨率照片。并且,不論是基本的手機,還是全功能的PDA,這些功能都在產品的吸引力方面起著至關重要的作用,從而對其市場成功也影響巨大。
但是,實現這此功能的圖像處理器能耗都很大,因而給便攜系統(tǒng)設計師提出了挑戰(zhàn)。圖像處理總是需要密集的計算,同時所需時間周期也會延長。舉例來說,能處理視頻的移動設備必須能夠對輸入的每一幀進行解壓、解碼、調整尺寸并對之施加圖形過濾器。然后它還要按每秒30次的頻率重復這些計算,才能保證輸出到移動設備顯示屏的視頻流。這是實實在在的工作負載,對電能的胃口也非常大。
消費者對富視頻產品的渴求看上去無窮無盡,而盡量降低能耗、延長電池使用時間對便攜式移動產品來說將一直是個穩(wěn)定的需求。解決這種互相沖突的目標需要一個全面綜合的方法來節(jié)省電能。便攜產品設計師備必須在整個設計流程上部署節(jié)能技術,以便在待機能耗和運行能耗兩方面都達到要求。
耗電的器件
要想對移動設備的能耗進行優(yōu)化,首先必須理解靜態(tài)和動態(tài)耗能器件。靜態(tài)能耗是待機能耗的主要組成部分,主要來自于晶體管的泄露電流。縮小器件尺寸的一個副產品就是增加了晶體管的泄露電流。
對設計師來說有一點是幸運的,即泄露可以在綜合階段使用多電壓臨限單元進行自動的標定。在綜合過程中,可以根據電能和性能的折衷選擇單元。高臨限電壓的單元可以減少泄露電流,但相對于低臨限電壓的單元,它的開關要慢許多。在時序要求不嚴格、開關可以慢一點的電路中,可以使用高臨限電壓單元來降低靜態(tài)能耗。技術的進步帶來了一系列不同臨限電壓的單元,靜態(tài)能耗也就通過低能耗的實現工具得到了自動的優(yōu)化,因此大體上這個問題對設計者來說已經是透明的了。
活動能耗,也就是動態(tài)能耗,是器件運行的結果,通過消除不必要的開關活動就能降低一些。寄存器傳輸級(RTL)時鐘門控是降低動態(tài)能耗最常用的技術。時鐘門控通過有選擇地關閉時鐘來消除不必要的開關活動,從而極大地降低計算密集型應用如圖像處理中的動態(tài)能耗。
時鐘門控技術
現在有兩種類型的時鐘門控技術,分別是合并型(Combinational)和順序型(Sequential)(見圖1)。合并型時鐘門控是直接在RTL代碼中取代條件聲明,把時鐘門控單元插入到寄存器的時鐘通路中。低能耗的RTL綜合工具會在模式匹配的基礎上自動識別并插入合并型的時鐘門控。至于低能耗綜合工具在多大程度上可以使用時鐘門控這個問題,它要受到RTL如何編碼的制約。低能耗的綜合工具是通過在RTL代碼中,通過在定義聲明之前找到明顯的“如果(IF)”條件來找到可以插入時鐘門控的機會的。但是,這些工具并不能分析并決定何時在何處給RTL代碼插入這種“如果(IF)條件”以便降低能耗。還是要依賴RTL設計者在代碼中明顯地寫上這種“如果(IF)條件”,低能耗綜合工具才能把它們翻譯成節(jié)能的時鐘門控。
順序型時鐘門控是一種更強大的優(yōu)化技術,它在計算密集型應用中降低能耗的能力已經得到驗證。與合并型時鐘門控不同,順序型時鐘門控并不是簡單的翻譯。它包含了對設計行為的序列分析。序列分析會對整個電路功能進行設計狀態(tài)和周期的巡視,識別出不必要的開關動作,諸如并發(fā)中無用的數據計算等。之后它能找出相關的邏輯條件來消除這種開關動作。
舉例來說,當一個寄存器的輸出被留在當前電路周期中的時候,序列分析就能用邏輯條件來關閉合并邏輯中和在前一個周期中生成這個數據的寄存器中的開關。這種序列關系可能向前或向后在多個周期中傳播。RTL設計總是包含有多重序列關系,它可以用來減少開關動作,并且因此可以優(yōu)化寄存器、內存、時鐘以及合并邏輯的電能消耗。
序列時鐘門控能帶來的節(jié)能效果是非常顯著的,特別是在諸如視頻處理這類應用中,這種應用一般都會支持多種視頻格式和依賴于數據的算法。根據輸入視頻流的不同,通常只需要對其中的一部分進行解碼計算和過濾器操作。因此,如果設計師能充分理解設計中的序列關系,就會發(fā)現這里有許多可以使用時鐘門控的機會。
部署時鐘門控
在實現時鐘門控方法學時有三個關鍵因素:完全地識別出所有可用的時鐘門控機會;精確地生成可以利用這些機會的RTL代碼;有效地對這些加入了時鐘門控的RTL代碼進行驗證以確保它仍然保留著原有功能。
只到最近,加入時鐘門控的一般方法還是要設計者自己去查看代碼,尋找時鐘門控的機會并手工在RTL代碼中加入所需的IF條件。典型的時鐘門控設計工作流包括手工加入時鐘門控優(yōu)化代碼,使用RTL能耗估計方法來評測這些優(yōu)化方法的效果,最后運行模擬回歸來驗證所需要的功能都還在。最后是對RTL代碼進行綜合,同時可以對門級的電能消耗進行估算以便決定是否還需要更多的時鐘門控(見圖2)。
在這個方法中還有許多低效率的地方。由于電路中時鐘門控的機會點非常多,而且使用條件又非常復雜,設計師總會在審查并修改RTL代碼方面花費大量的時間。同時,由于并非所有的時鐘門控優(yōu)化方法都能帶來節(jié)電效果,其中甚至有一些會對時序和面積有不良影響,所以還需要用試算的方法來得到最低能耗的設計。這種手工工作是勞動密集型的,它會延長開發(fā)周期并給RTL模擬帶來額外的要求。又因為時鐘門控優(yōu)化方法不能用傳統(tǒng)的合并等效檢測工具進行驗證,所以還必須開發(fā)新的模擬測試基準和評測工具,來驗證新的時鐘門控方法沒有影響原有的功能。解決這一困境的自然方案就是設計自動化。
在RTL設計流中增加能耗優(yōu)化工具
在采用新的能耗優(yōu)化工具時,設計團隊要隨時記著幾個關鍵考慮。第一,新工具帶來的電能節(jié)省可以補充并累積到現有能耗優(yōu)化工具上,這一點非常重要。第二,為了避免學習曲線過長并增加腳本開發(fā)工作,新工具應該能使用標準的文件格式,并且能夠加入現有的設計流程之中。第三,非常重要的一點是新工具應該提供一個全面的解決方案,不能在設計流中的其他地方帶來新問題。比如,自動識別時鐘門控機會是很有用的,但如果這個工具不能生成優(yōu)化過的RTL代碼、并全面驗證所有原有功能都沒有失效,那它就會對生產率帶來負面沖擊。
最近,可以自動進行識別、在RTL設計中插入并驗證序列時鐘門控的商業(yè)解決方案已經上市了(圖3)。使用這種自動序列時鐘門控和驗證工具為視頻密集型便攜式應用帶來了巨大的節(jié)能效果。
這些功能包含在Calypto系統(tǒng)公司的PowerPro CG(時鐘門控)及SLEC CG中。PowerPro CG是一款自動化的RTL電能優(yōu)化解決方案,經驗證它可以帶來最高達60%的電能節(jié)省,同時對面積和性能影響很小甚至沒有影響。SLEC CG是一個序列等效檢測工具,它可以驗證序列時鐘門控的優(yōu)化。這些工具補充了現有的低能耗設計工具流,它們可以分析RTL設計中的序列行為,識別出時鐘門控機會,比已有的工具更強大。它們可以讀取標準的、可綜合的Verilog及VHDL RTL代碼,從而可以嵌入到現有的設計流中去。
另外,生成的能耗優(yōu)化的RTL代碼同原來的帶有額外時鐘門控邏輯的RTL設計是一樣的。能耗優(yōu)化的RTL代碼還要使用序列邏輯等效檢測工具進行全面的驗證,以確保沒有帶來功能上的改變。能耗優(yōu)化的RTL設計可以直接進入低能耗綜合,以便擁有下游電能優(yōu)化能力的更多優(yōu)勢。通過把設計師從繁雜的設計分析、手工修改RTL代碼以及費時的模擬工作中解放出來,生產效率和節(jié)能
評論