轉自:http://padhz.com/bbs/forum.php?mod=viewthread&tid=688
主要還是說說RK3066和AML8726-MX
圍繞幾點:頻率與功耗 / 效能 / 方案成本
1. 頻率與功耗
1.1 RK30的DVFS(動態電壓頻率調整)
RK3066最高頻率1.6GHz,最低252MHz。其中給ARM核心供電的是WM8326G的DC-DC buck2. 我觀察得到的結果如下:
RK3066 A9 Clock(MHz) / Voltage(V)
252 1.050
504 1.050
816 1.075
1008 1.075
1200 1.175
1272 1.225
1416 1.300
1512 1.350
1608 1.350
第一列是主頻,第二列是電壓。可以看到,在較低頻率工作時,電壓相對較低,而在1.6G的高主頻時,電壓已經高達1.35V,基本也到了極限了。可以說,RK3066的潛力已經完全發揮出來了。
我們適當的對照下其他雙核,例如三星Exynos 4210
Exynos 4210 A9 Clock(MHz) / Voltage(V)
200 0.975
500 1.000
800 1.100
1000 1.200
1400 1.275
可以發現RK3066的DVFS設定是相對合理和完善的。
另外可以簡單的認為,滿載功耗和頻率成正比,和電壓的平方成正比。
而目前AML8726-MX的量產韌體為1.2GHz@1.2V,早期的測試韌體為1.32GHz@1.2V。AML也有多檔頻率,但同時的電壓變化,本人暫時沒有辦法檢測之。單從晶片的角度考慮,AML後期也能通過加電壓提升主頻。但前提是要有相對完善的DVFS。
總的來說,RK在頻率和電壓的控制上,相對來說是很完善的。這在一定程度上也使得RK3066方案目前溫度控製表現良好(當然9.7寸大機器和大散熱片也有協助)
1.2 核心Governor的設定
核心裡的Governor,主要用來判斷系統負載並調整CPU頻率。
比較常見的Governor有以下幾種:
參考自:http://forum.xda-developers.com/showthread.php?t=1369817
1. Ondemand
有負載的時候,頻率馬上上升到使用者所設定的最大值。如果發現CPU佔用率比較低,則頻率一步步下降直到合理值。
如果使用者再運行一個程式,頻率又會立馬升到最大值,再一步步回來。
OnDemand的調整時機是在工作隊列切換的時候,所以一旦一個任務完成,系統就是試圖把頻率降到最低值。此時如果使用者再發起一個任務,系統又會馬上跳到最大值。於是在多任務的時候,CPU頻率容易在最大值和最小值之間來回跳,這個對節能是不利的。
OnDemand算是智慧型裝置裡最常用的Governor了,因為比較積極的上高頻,所以體驗上比較流暢。雖然會多耗點電……
手邊的三星裝置基本都是Ondemand。
2. Performance 和 Powersave
Performance是把頻率固定在最大值,一般跑分用
Powersave則相反,把頻率固定在最小值
3. Conservative
這個管理器更側重於保持在最低頻,只有當繁重且持續的負載施加在CPU上,系統才會提升工作主頻。因此,導致的結果是用起來不流暢,卡卡的…… 特別是在最低頻率很低的時候。雖然會省點電。
4. Interactive
類似OnDemand,但是響應更快。同樣根據CPU負載來調整頻率。
不同於OnDemand的地方是,Ondemand是在工作隊列切換的時候進行調頻,而Interactive是由使用者指定一個時間間隔,以此為單位進行調頻。因此,當使用者執行完一個高負荷的應用後,只要時間段還沒結束,CPU會繼續保持在最高頻。此時使用者再執行一個程式,就可以獲得較好的效能,而不會像OnDemand那樣在最低頻和最高頻之間反覆來回了,因此Interactive更加適合於多任務的環境,響應也更快。當然缺點是呆在高頻的時間會更久,相對OnDemand稍耗電。
手邊的三星機器,以及華為MediaPad(高通方案),預設都是OnDemand。
而AML MX機器,之前刷的測試版韌體,預設是OnDemand,用的還挺流暢的。但是很多朋友反映介面卡,開始也很不理解,後來刷了官網的0508量產韌體,才發現是大坑爹:預設是Conservative,而且實現的只有Performance (對應設定裡的高效能模式) 和 Conservative(對應設定裡的正常模式),而自動模式(Ondemand)不可選,沒有實現。
所以在預設的Conseravative管理器下,系統很容易降頻到96MHz,這個時候UI啊 滑動啊就各種不流暢了。設定成Performance雖然流暢,但是一直高頻。所以還是希望能出個類似測試版韌體裡支援ondemand管理器的韌體。(0514官網新韌體似乎ok了)
而智器的OMAP4機型,以及RK3066,採用的都是Interactive管理器。智器的設定中,high_speed均為機器的最高主頻:OMAP4430為1GHz, 4460機型為1.5GHz。而RK方案相對比較取巧的一點是,他們把high_speed設定為816MHz,並非機器的最高主頻1.6GHz。這樣即使在有負載的情況下,機器也會大部分時間處於816MHz,而非最高的1.6GHz。相對節省了電量消耗,控制了發熱,也獲得了不錯的流暢體驗。RK在這方面還是下了一些功夫來完善的。
此外,RK3066的晶片上其他的LOGIC和Mali-400,也設定了動態電壓調整,有1.125V/1.200V/1.250V三檔。
2. 方案成本
2.1 供電
RK3066這次在供電上還是下足了功夫的,用了歐勝的WM8326G作為電源管理晶片
Allwinner A10: AXP209 2DC-DC(1.6A+1.2A) + 5LDO
RK2918: ACT8891 3DC-DC(2*1.15A+1.3A) + 4LDO
AML8726-MX: DC-DC buck ??A+ AXP202 2DC-DC(1.6A+1.2A) + 5LDO
RK3066: WM8326G 4DC-DC(2*2.5A+2*1.0A) +10LDO
Tegra 2: TPS658621 3DC-DC(2*1.5A+2.0A) + 11LDO
OMAP4: TWL6030 7DC-DC(2*1.5A+5*0.8A) + 11LDO
Exynos 4210: MAX8997 7DC-DC + 21LDO / ACT8847 4DC-DC(2*2.8A+2*1.5A) + 9LDO
可以看到,為了餵飽1.6GHz的A9雙核和Mali-400 MP4 GPU, 動用了WM8326G的兩路2.5A大電流DC-DC buck,分別給ARM A9和GPU,以滿足高負荷時候的高峰值功率。
個人感覺這麼個PMU還是要點成本的…… 不知道後期會不會更換成比較便宜的國產型號
2.2 其他
RK3066的整合度相對RK29有所提高,但遺憾的是沒有整合LVDS。以往的RK29方案都是搭配第三方LVDS晶片實現高分屏的驅動,這次的RK3066方案搭配了RK自家的RK610 LVDS晶片。同時,