ARM、RISC-V、x86 的差異:比較指令集架構

ARM、RISC-V、x86 是三種指令集架構(ISA),是軟體與處理器之間的約定。ARM 與 RISC-V 是 RISC 式的設計,x86 則是歷經數十年成長而來的 CISC 式設計。最大的差異在於誰能製造,以及軟體生態的規模。x86 在個人電腦與伺服器上占優勢,ARM 在智慧型手機上占優勢,並正擴展到筆記型電腦與伺服器。RISC-V 是開放標準,在嵌入式領域快速擴展。

項目ARMRISC-Vx86
設計理念RISC。載入/儲存架構RISC。載入/儲存架構,且模組化CISC。有許多複雜指令,也能使用記憶體運算元
指令長度64 位元模式(AArch64)下固定為 32 位元32 位元,另有選用的 16 位元壓縮指令可變,1〜15 位元組
通用暫存器31 個(AArch64)32 個(x0 恆讀為 0)16 個(x86-64)
授權專有。企業須向 Arm 公司取得授權,並支付費用與權利金開放標準。任何人都能免授權費製造晶片專有。實際上只有 Intel 與 AMD 製造 x86 處理器
模組性有應用(A)、即時(R)、微控制器(M)等設定檔小型的基本部分,再加上選用的擴充(乘法、浮點數、向量等)歷經數十年持續加入擴充(SSE、AVX 等)。舊軟體也能繼續執行
軟體生態成熟。行動裝置、Linux、Apple 晶片的 Mac、Windows on Arm快速成長中。在嵌入式與 Linux 上特別強最大。尤其是 Windows 與傳統的桌上型電腦、伺服器軟體
主要優勢電源效率,以及從微控制器到伺服器的廣泛涵蓋容易客製化,且沒有授權費高單執行緒效能與軟體相容性
主要用途智慧型手機、平板電腦、Apple 的 Mac、雲端伺服器、嵌入式嵌入式與 IoT、加速器、教育、新型伺服器個人電腦、伺服器、工作站

數值為具代表性的大致參考值,會因世代或產品而異。

適用於什麼情況

ARM
電源效率重要,且想要有實績的生態時。從智慧型手機到雲端伺服器皆適用。
RISC-V
想自行設計處理器、想避免授權費、想加入自訂指令時。
x86
與既有個人電腦及伺服器軟體的相容性為最優先時。

常見問題

ARM 比 x86 快嗎?

並非與生俱來就是如此。效能取決於各個處理器的設計與製程。ARM 的設計傾向於電源效率高,x86 的設計則常在單執行緒的最高效能上領先。

為什麼 RISC-V 是免費的?

RISC-V 是由 RISC-V International 管理的開放標準,任何人都能免授權費製造晶片。ARM 與 x86 則是專有的。

能在 x86 上執行 ARM 用的軟體嗎,或反過來?

無法直接執行。因為指令集不同,必須重新編譯程式,或是透過模擬器或轉換機制來執行。

Apple 的 Mac 使用什麼處理器?

Apple 晶片的 Mac 使用 Apple 自行設計、以 ARM 為基礎的處理器。

理解度檢測

ARM、x86、RISC-V 等名稱主要代表的是什麼?

  1. A製造製程的世代
  2. B指令集架構(ISA)
  3. C封裝的種類
查看答案與解析

正確答案:B. 指令集架構(ISA)

ARM、x86、RISC-V 是指令集架構(ISA)的名稱,規定處理器所能理解的指令種類、暫存器、記憶體的處理方式等軟體與硬體之間的約定。只要是相同的 ISA,即使設計的企業不同,也能執行相同的程式。x86 由 Intel 與 AMD 用於個人電腦與伺服器,ARM 用於智慧型手機與 Apple 的 Mac,RISC-V 則以嵌入式領域為中心持續擴展。

關於 RISC-V 的特徵,下列何者正確?

  1. A是只有特定一家公司才能使用的專用指令集
  2. B是 GPU 專用的指令集
  3. C是規格公開、無需授權費即可使用的指令集架構
查看答案與解析

正確答案:C. 是規格公開、無需授權費即可使用的指令集架構

RISC-V 是 2010 年起於加州大學柏克萊分校開始開發的開放式 ISA,規格公開,任何人都能免授權費地實作。基本的整數指令約 40 個,相當精簡,可依用途選擇並組合浮點數、向量等擴充。由於也能新增自訂指令,因此在嵌入式微控制器、儲存裝置的控制器、AI 加速器等領域的採用日益普及。

關於 RISC(精簡指令集電腦)的特徵,下列何者正確?

  1. A具有大量複雜且長度不一的指令
  2. B將指令精簡為單純且數量少的集合,使管線化處理更容易進行
  3. C完全沒有指令
查看答案與解析

正確答案:B. 將指令精簡為單純且數量少的集合,使管線化處理更容易進行

RISC 的設計理念是將指令精簡為單純且長度一致的集合,運算在暫存器之間進行,與記憶體的往來僅限於載入(load)與儲存(store)指令。由於各指令的處理時間一致,適合管線化,代表例有 ARM 與 RISC-V。具有複雜指令的 CISC(如 x86)現今在內部也會將指令分解成單純的 μOP 來執行,因此兩者的差異正在縮小。

前往CPU與架構的練習題

相關名詞的解說

指令集架構(ISA)
處理器可執行的指令與暫存器等,從軟體角度看到的處理器規格。例如 x86、Arm、RISC-V 等。

相關的比較