文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.181522
中文引用格式: 詹瑞典,楊家昌. 基于動態頻率的芯片面積功耗優化設計[J].電子技術應用,2019,45(1):35-38.
英文引用格式: Zhan Ruidian,Yang Jiachang. Area and power consumption optimization based on dynamic frequency[J]. Application of Electronic Technique,2019,45(1):35-38.
0 引言
隨著消費類電子產品、網絡產品等市場的快速發展,低成本、高速、低功耗和多功能的嵌入式系統的需求給集成電路設計行業帶來了更大的挑戰,實現更多復雜功能的單芯片集成度越來越高,同時單芯片功耗、成本也隨之增長。目前,芯片的面積和功耗問題制約著芯片性能進一步提高,面積優化、低功耗設計在現代芯片設計中越發重要,頻率、功耗、面積(PPA)指標已經是集成電路設計的重要指標之一[1],通常在流片之前設計人員借助EDA工具對芯片的面積和功耗做一次精確的估算,芯片的面積及功耗是評估是否滿足設計要求的重要參數之一。
集成電路設計按照設計抽象層次可分為系統算法級、寄存器傳輸級、邏輯電路級和晶體管級。在超深亞微米工藝下的集成電路設計中,針對面積優化和低功耗設計,從晶體管級到系統算法級各層次都有相關方面的研究,抽象層次越高其優化效果越明顯。文獻[2]詳細講述數字集成電路在系統級、寄存器級、晶體管級等各個層次目前主流的低功耗設計方法。其中,系統算法級主要采取的是軟硬件協同設計、功耗管理等方法降低系統級功耗。寄存器傳輸級主要采用編碼技巧、門控時鐘等技術來減低信號跳變的次數。邏輯電路級和晶體管級主要是從邏輯表達式設計、先進的制造工藝等方法實現低功耗設計。目前減少芯片面積主要采用新的工藝、邏輯電路設計等方法來達到目標,文獻[3]從進位選擇器邏輯電路設計縮小芯片面積。本文基于一款成功流片的SoC芯片項目,從系統級優化面積和低功耗設計。
1 功耗、面積問題分析
芯片的功耗主要有靜態功耗和動態功耗[3],計算門級SoC功耗的估算為式(1):
靜態功耗(Cell Leakage Power)主要是由CMOS電路結構導致的漏電流功耗和旁置電路功耗。漏電流功耗可以從工藝庫中查找對應的功耗,項目一旦完成設計,靜態功耗PLeakageTotal基本就能計算出來。相對于動態功耗,靜態功耗對集成電路設計影響不大[5],可以忽略不計,一般低功耗設計基本都是針對動態功耗。
動態功耗主要由短路電流(Cell Internal Power)和開關電容(Net Switching Power)組成。PSwitching是單元門器件輸出端i負載電容充放電的功耗,TR(i)為線i的信號跳變率,即單位時間內信號由低電平到高電平、由高電平到低電平的跳變次數;CLoad(i)為門器件輸出端i的線載電容。
PInternal是由單元門器件電容充放電、P晶體管和N晶體管在關閉和打開過程中短路形成的功耗。TR(z)表示器件輸出端的信號跳變率。從式(3)和式(4)可以看出,動態功耗與信號的跳變、電容有直接關系,而工作頻率直接影響信號的跳變以及電容的充放電,可見,工作頻率與PSwitching、PInternal是強相關關系。
芯片的面積由組合邏輯面積(Combinational Area)、緩沖器和反相器面積(Buf/Inv Area)、非組合邏輯面積(Noncombinational Area)等面積組成。在超深亞微米工藝條件下,邏輯組合電路利用半導體開關元件導通、截止的工作特性實現邏輯運算。利用門電路在不同頻率下的開關工作原理,調節時鐘信號減少面積,如優化邏輯通路不同的時間延遲,合理規劃不同觸發器件的不同延遲,從而實現面積優化[6]。
面積的大小關系到芯片的成本,功耗的高低關系到芯片的性能。在符合功能設計要求情況下,面積越小,成本越低,功耗越低,性能越穩定。衡量面積與功耗是一種常見的手段,本文針對已經完成設計的項目,保持其性能不變,重點研究如何通過動態頻率進一步綜合優化面積和降低功耗。
2 動態頻率閉環設計
對于系統級芯片設計中,根據系統設計的具體功能要求,一般就基本確認芯片的工藝、運行工作頻率等參數要求范圍;其次根據項目設計需求設計約束條件,基于約束條件在EDA工具進行仿真驗證;最后通過精確的功耗和面積估算完成設計,設計流程如圖1所示。其中,工程師只對設計值作出規定的響應,沒有通過多次仿真結果動態調節工作頻率,大多都是靠工程師的經驗來設計,通過經驗值給定大概工作頻率,按照圖1的設計流程通過EDA工具再一次進行精確的仿真并實現設計。圖1所示的設計流程圖可以認為是開環設計。該設計優點是工作流程簡單,但最優頻率選擇精度不高,自動糾偏的能力較弱,對于經驗不足的工程師,存在偏高功耗和面積的風險。
由式(1)可知,各節點的信號跳變率決定著芯片功耗,信號的跳變率由時鐘源決定,根據上述分析芯片面積與工作頻率直接相關。本文不更改原有的項目設計,在原有開環設計流程(圖1)中,建立反饋和訓練通道,動態頻率為調節參數,實現動態頻率閉環設計(如圖2所示)。動態頻率閉環設計通過多組工作頻率下對應的功耗和面積數據進行反饋和訓練,建立工作頻率、功耗、面積的數學模型,綜合考慮面積、功耗兩個重要指標,計算出最優的工作頻率實現優化面積和降低功耗設計。
動態頻率閉環設計流程如圖3所示,主要步驟如下:
(1)項目設計要求。根據項目功能設計要求,編寫時序等約束條件,并確認目標頻率的有效范圍。
(2)實驗仿真。編寫腳本,給定頻率初始值,運用EDA工具綜合,并給出Timing、Area、Power的報告。
(3)數據記錄。記錄多組不同的工作頻率下,芯片面積、功耗等相關參數。
(4)數據篩選。保持功能不變,篩選所有滿足約束條件的芯片面積和芯片功耗具體參數。
(5)建立模型。根據記錄的數據,分別建立面積與頻率、功耗與頻率數學模型。
(6)求最優解。綜合兩組數學模型,并求出工作頻率的最優解。
基于動態頻率閉環設計,相對于開環設計,動態功率閉環設計精度高,選擇最優的工作頻率實現面積優化和降低功耗;其次適應性強,閉環設計可以適應于不同的項目中,無需具備豐富經驗的工程師,有效地減少項目試錯成本,提高項目設計效率。本文基于一款已經成功流片0.11 μm工藝的SoC芯片,項目設計工作頻率為50 MHz,實際功能需求最低功耗為36 MHz,運用本方法在這一款芯片上進行進一步的優化面積和降低功耗設計。
3 實驗仿真
根據動態功耗閉環設計,篩選通過約束條件的芯片面積和芯片功耗的數據,通過曲線擬合分別建立面積&時鐘周期和功耗&時鐘周期的數學模型,如圖4、圖5所示。
其中,由圖4建立芯片面積與時鐘周期的數學模型如式(5)所示:
通過計算可知,時鐘周期t=22 ms,工作頻率f=1/t=45 MHz是本設計的最優解。表1和表2分別為工作頻率45 MHz和50 MHz下仿真測試記錄的芯片面積和芯片功耗數據。
根據表1、表2可以看出,工作頻率45 MHz下的芯片總體相對比原有工作頻率50 MHz下的芯片面積縮小約0.59%,其中組合邏輯面積縮小1.17%,緩沖器和反相器面積縮小1.36%。芯片的功耗相對比面積優化幅度更加明顯,工作頻率45 MHz下的芯片總體功耗相對比原有工作頻率50 MHz下的芯片功耗減少9.01%,其中短路電流功耗和開關電容功耗分別減少9.09%、9.10%。
4 結論
保持原設計不變,本文基于系統級動態功耗閉環設計,進一步減少面積和降低功耗,通過數據收集及仿真分析表明:本文提出的優化方法設計可以取得較好的優化面積和功耗,在實際工程中具有一定的參考價值。
參考文獻
[1] ROY K,PRASAD S.Low-power CMOS VLSI circuit design[M].Wiley,2000.
[2] 王冠軍,周勇,趙瑩,等.VLSI電路低功耗設計研究進展[J].微電子學,2011,41(2):279-284.
[3] CHOURASIA A.Area optimized adder design using carry selection logic in power-constrained environments[J].International Journal of Engineering Innovation & Research,2017,6(1):48-50.
[4] MACII E,ZAFALON R.Low-power EDA technologies:state-of-the-art and beyond[C].2006 Advanced Signal Processing,Circuit and System Design Techniques for Communications.IEEE,2006:3-43.
[5] 常曉濤,張志敏,王鑫.基于時鐘樹功耗預提取的SoC功耗估計方法[J].計算機工程,2006,32(1):234-236.
[6] NEVES J L,FRIEDMAN E G.Optimal clock skew scheduling tolerant to process variations[C].33rd Design Automation Conference Proceedings,1996.
作者信息:
詹瑞典1,2,楊家昌1,2
(1.佛山芯珠微電子有限公司,廣東 佛山528225;2.廣東工業大學 自動化學院,廣東 廣州510006)