Global Sources
電子工程專輯
 
電子工程專輯 > 處理器/DSP
 
 
處理器/DSP  

RISC或CISC真的有差嗎?

上網時間: 2015年07月03日     打印版  Bookmark and Share  字型大小:  

關鍵字:指令集架構  ISA  RISC  CISC  處理器 

如果你是少數仍認為指令集架構(instruction set architectures,ISA)是精簡(RISC)或複雜(CISC),會對應用處理器之設計的功耗或性能有顯著影響的軟體或硬體設計工程師,放棄這種想法吧!它是不正確的,因為更重要的是處理器的微架構(microarchitecture),也就是指令被硬佈線(hardwired)到處理器中的方法,以及有什麼被添加入以協助它們達成特定目標。

以上結論來自於學術期刊《ACM計算機系統學報(ACM Transactions on Computer Systems)》的一篇論文「指令集架構之戰:了解ISA是CISC或RISC的關聯性(ISA Wars: Understanding the Relevance of ISA being CISC or RISC)」(參考連結),作者為Emily Blem、Jakrishnan Menon、Thiruvengadam Vijayaraghavan以及 Karthhikeyan Sankaralingam;該論文報告了過去四年美國威斯康辛大學(University of Wisconsin)垂直研究小組(Vertical Research Group,VRG)所做的一項研究結果。

報告作者之一Vijayaraghavan 表示,該研究是到目前為止針對三大處理器架構──英特爾(Intel) x86架構、ARM處理器以及現屬於Imagination 的MIPS處理器──的設計、實作等所有角度的最完整分析。「雖然在過去,RISC與CISC指令集架構也許有一些差異,但我們鎖定的參數──性能(performance)、功耗(power)與能源效益(energy)現在肯定沒有。」另一位報告作者Sankaralingam 表示:「ISA缺乏的地方,微架構就會補強它,反之亦然。」

RISC、CISC指令集架構研究所採用的處理器平台
RISC、CISC指令集架構研究所採用的處理器平台

Sankaralingam指出,現在只有一種處理器是真正的RISC架構──MIPS,是以美國史丹佛大學開發的RISC架構為基礎;至於x86處理器架構一開始是純CISC設計,但過去幾年來越來越朝類RISC結構發展。ARM處理器架構近似RISC,但採用更多CISC功能,包括增加的Thumb 1與Thumb 2指令集架構。

他表示:「所以我們的研究基本上是在目前的市場環境,比較今日的Intel、ARM與MIPS處理器;幾乎每一個我們的量測結果,都與指令集架構無關。」以往的比較研究會因為處理器系統的軟體與硬體資源不同而有缺陷,但VRG團隊盡力確保其量測是在條件幾乎相同的平台與同等的環境中完成,為了區分出實作與ISA效果,他們盡可能讓所使用的各種ISA晶片,都具備類似的微架構。

此研究將比較樣本侷限在ARM Cortex-A8或更高等級的處理器,較不注重Cortex-M系列元件;Sankaralingam解釋:「原因很簡單,我們的目標之一是要有能比較與量化的平台,因此我們沒必要去看A9以下的處理器,以及相對應的競爭架構。」在Cortex-M0的環境下,ARM是與1~20MHz與2~50mWatt的8位元MCU競爭,其運作是架高在x86指令集之上,不適用其研究。

該研究小組的評估,是以一顆MIP處理器(中國開發的龍芯- Loongson處理器)、三個ARM平台(Cortex- A8、Cortex-A9與Cortex-A15),以及三個x86架構設計(Atom、Bobcat與Sandybridge i7)來進行;他們也使用了相同的作業系統──Linux 2.6 LTS,還有以gcc 4.4為基礎的交叉編譯器前端(cross compiler front end)。

在行動裝置客戶端的工作負載方面,他們使用CoreMark與Webkit性能基準;在桌上型應用方面,則是採用SPEC CPU2006基準。至於伺服器工作負載的性能基準,則是使用包括lightpd與CLucerne等性能基準。

RISC、CISC指令集架構研究的發現
RISC、CISC指令集架構研究的發現

研究所採用的實作樣本,包括不同ISA以及相同ISA、不同微架構;Sankaralingam表示:「整體看來,我們選擇的平台條件具備合理的平等,而且我們執行了詳細的分析,分別得出各微架構與技術的效果。」

VRG團隊確實進行了處理器在執行時間(execution time)、工作週期(cycle count)、指令數目(instruction count)、指令格式與結構(instruction format and mix)、微架構以及ISA對微架構影響的比較;功耗與能源效益的分析量測也很全面,包括平均功耗、平均技術獨立功耗(technology independent power),以及平均能源效益等等。

Sankaralingam表示,他們的報告結論是,雖然ISA與支援不同特殊應用(例如虛擬化、加速器、浮點運算..)的功耗與性能有關,但無論ISA是RISC或CISC,其實大都與今日成熟的微處理器設計領域沒有什麼關係。「根據這項研究,開發工程師能簡單根據工程設計觀點,放心考慮針對不同性能等級最佳化的ARM、MIPS或x86處理器;」Sankaralingam指出:「不同ISA的能源效益基本上並沒有差別。」

如該報告最後一段所寫:「顯然數十年來的硬體與編譯器研發,已經能有效掌握RISC與CISC架構,而且兩者在未來訴求節能的創新應用中擁有平等地位。」

編譯:Judith Cheng

(參考原文: RISC vs CISC: What's the Difference?,by Bernard Cole)





投票數:   加入我的最愛
我來評論 - RISC或CISC真的有差嗎?
評論:  
*  您還能輸入[0]個字
*驗證碼:
 
論壇熱門主題 熱門下載
 •   將邁入40歲的你...存款多少了  •  深入電容觸控技術就從這個問題開始
 •  我有一個數位電源的專利...  •  磷酸鋰鐵電池一問
 •   關於設備商公司的工程師(廠商)薪資前景  •  計算諧振轉換器的同步整流MOSFET功耗損失
 •   Touch sensor & MEMS controller  •  針對智慧電表PLC通訊應用的線路驅動器
 •   下週 深圳 llC 2012 關於PCB免費工具的研討會  •  邏輯閘的應用


EE人生人氣排行
 
返回頁首