為什么X86架構比ARM更難實現低功耗?
首先你要知道的是,X86架構和ARM架構的主要差距在于指令集方面,X86是復雜指令集結構,它存在很多機器指令,從設計角度來看就是為了高效完成一項專門任務而設計的,比如MMX和SSE中的指令。因此X86架構的任務處理能力先天強大,但是設計也更為復雜,僅僅是分支預測結構和長流水線的要求,就導致了X86架構CPU不管是在面積還是功耗支出上都要大于精簡指令集的ARM架構,更別說多級緩存和超線程技術的加入了。
剛才說了,ARM架構天生屬于精簡指令集,使用的晶體管數量非常少,而手機等移動平臺對計算性能的要求也較為簡單,所以ARM架構的流水線、分支預測等硬件邏輯都比較簡單。同時因為手機等移動設備對續航能力要求很高,所以大部分ARM芯片在電源管理上都下了很大功夫,比如現在流行的大核心+小核心的設計,當核心閑置時就會關掉核心來省電。
所以說從底層架構來說,ARM架構天生就能做的比X86架構省電很多,而X86架構本來就是面向桌面電腦和服務器的,所以對功耗和電源管理要求并不高,曾經英特爾也嘗試制造X86架構的ATOM芯片,結果不管是性能還是功耗兩邊都不討好;而高通也嘗試做PC端的ARM芯片,但是實際性能和兼容性表現也不盡人意。