正確看待處理器核的功耗數(shù)據(jù)
具有板級設計經(jīng)驗的工程師一般對于處理器芯片的功耗水平都了如指掌,給定芯片的實現(xiàn)工藝和工作頻率,就可以推斷出處理器的功耗。然而對于可授權(quán)的處理器核IP來說,這種經(jīng)驗是非常不準確的。
處理器芯片的功耗數(shù)據(jù)是測量芯片封裝中所有電路功耗得到的結(jié)果,而可授權(quán)處理器核的功耗分析基于仿真的結(jié)果,IP供應商公布的功耗數(shù)據(jù)有可能忽略掉一些產(chǎn)生功耗的功能模塊。影響可授權(quán)處理器核功耗的因素有很多,包括芯片實現(xiàn)的工藝水平(制程和線寬),物理單元庫以及進行功耗分析時運行在處理器上的測試程序。因此,在比較兩家處理器核的功耗水平時,要格外小心謹慎,因為規(guī)格文檔中的數(shù)據(jù)很可能基于不同的條件,不具有可比性。例如,分別采用TSMC 0.18μm G制程和0.13μm LVLK制程,采用針對功耗優(yōu)化的綜合方式,并且此數(shù)據(jù)不包括時鐘樹上的功耗。
下面具體來看腳注中所列的條件
●工藝制程:TSMC的G制程是通用低成本制程,而LVLK 制程為高性能制程,它采用低閾值電壓的晶體管,雖然增加了靜態(tài)漏電功耗但是因為工作電壓更低所以動態(tài)功耗大大降低。即使線寬相同,采用不同制程的芯片功耗水平有可能相差50%或更多。只有在相同工藝制程下的數(shù)據(jù)才具有可比性,如果功耗數(shù)據(jù)基于的工藝制程不同,雖然可以根據(jù)經(jīng)驗推斷其它制程下的功耗,但那無疑是不準確的。
●綜合優(yōu)化設置:處理器的功耗數(shù)據(jù)是綜合工具針對功耗進行優(yōu)化的條件下得到的。除此之外,綜合工具也可以針對面積和速度進行優(yōu)化,每種優(yōu)化設置下得到的處理器主頻,面積和功耗水平都不相同。實際上,處理器核規(guī)格文檔中所列出的最高主頻,最小面積以及最低功耗,很可能是分別采用不同的綜合優(yōu)化設置得到的,如果文檔中沒有明確列出綜合條件,最好向IP供應商問清楚。
●未計入功耗的電路:功耗數(shù)據(jù)中沒有包括時鐘樹上的功耗。因為時鐘樹部分運行在處理器的最高頻率上,一般來說,時鐘樹上會有大量的動態(tài)功耗,不計入時鐘樹的功耗會使整個處理器的功耗數(shù)值減小30%~50%,而處理器正常工作是離不開時鐘樹的。顯然,如果一個處理器核的功耗計入時鐘樹而另一個不計的話,兩相比較是毫無意義的。
注意,還有四個關鍵因素,包括:工作電壓,綜合過程中使用的物理單元庫,功耗數(shù)值是布局布線之前還是之后得到的以及進行功耗仿真時運行的應用程序,這些因素也會對處理器核的功耗水平產(chǎn)生重要影響。以130nm工藝為例,處理器的工作電壓范圍大約是1.2V~0.6V,工作電壓的不同會導致動態(tài)功耗的不同。因此,一定要弄清處理器核規(guī)格文檔中列出的功耗數(shù)據(jù)是在什么工作電壓下得到的。
綜合過程中使用的物理單元庫同樣對功耗有很大影響。表1列出了五種Tensilica鉆石標準處理器核的功耗數(shù)據(jù)。所有這些數(shù)據(jù)都基于TSMC 0.13μm G制程,但使用不同的物理單元庫和工作電壓(這里的數(shù)據(jù)都包括時鐘樹的功耗)。表1所列每個處理器核的功耗包括動態(tài)功耗和靜態(tài)功耗兩部分。動態(tài)功耗會隨主頻線性增長而靜態(tài)功耗不會。
低功耗的數(shù)據(jù)是以ARM的Artisan Metro單元庫實現(xiàn),在0.6V工作電壓下通過仿真獲得的,由于制程、單元庫和綜合優(yōu)化選項的限制,低功耗處理器的主頻一般低于100MHz。高性能的數(shù)據(jù)是以ARM的Artisan SageX單元庫實現(xiàn),在1.2V工作電壓下仿真獲得的,同樣的處理器核心此時功耗更高,但是主頻也較高,通??梢赃_到200MHz以上。
表2所示為5款鉆石標準處理器在TSMC 0.13 G和90 G工藝制程下采用ARM的Artisan SageX單元庫,針對速度進行優(yōu)化綜合后的動態(tài)功耗比較。可以看出采用更先進的90 G工藝,單位頻率下的動態(tài)功耗有了顯著下降。采用TSMC的90 G工藝,處理器主頻相比采用0.13 G工藝可以提高近50%。
另外一個決定處理器核功耗數(shù)值的因素是功耗仿真發(fā)生在布局布線之前還是之后。一般來說,布局布線后處理器的面積會增加10%~15%,面積的增加帶來了電容的增加,相應的導致動態(tài)功耗的增加。表1和表2中列出的功耗數(shù)據(jù)都是布局布線后的功耗仿真結(jié)果。
除了前面所講的這些影響功耗數(shù)據(jù)的因素外,還有一個重要的因素:進行功耗仿真時,處理器在執(zhí)行什么程序?如果處理器在循環(huán)的執(zhí)行空操作,則得到的功耗數(shù)值比處理器進行運算時得到的小很多。所以說功耗仿真時處理器上運行的基準測試程序也會影響得到的功耗數(shù)值。
目前還沒有專門針對處理器核的功耗基準測試程序。業(yè)界著名的基準測試組織EEMBC開發(fā)了一套用于處理器芯片的功耗測試基準程序EnergyBench,但前提是要有已經(jīng)物理實現(xiàn)了的處理器芯片,它不能用于處理器核的功耗仿真。業(yè)界最常用來做功耗基準測試的程序是Dhrystone的2.1版本,一個用來比較處理器性能的基準程序。表1和表2中列出的功耗數(shù)據(jù)都是基于Dhrystone基準測試程序進行仿真分析的結(jié)果。
綜上所述,公平的比較兩個處理器核之間的功耗水平需要保證前提條件一致,而這是很困難的。在比較之前,一定要從處理器供應商那里弄清前面所講的各種前提條件。
評論