來源:內容編譯自hackday,謝謝。
指令集架構 (ISA) 定義了軟體介面,例如中央處理器 (CPU) 可透過該介面進行控制。與早期沒有定義標準 ISA 的計算機系統不同,隨著時間的推移,擁有標準 ISA 的相容性和可移植性優勢變得顯而易見。但當然,標準最好的部分是標準數量眾多,因此每個 CPU 製造商都制定了自己的標準。
在整個 20 世紀 80 年代和 90 年代,隨著計算機行業在每種型別的應用程式中都圍繞幾個主要 ISA 進行整合,主流 ISA 的數量急劇下降。英特爾的 x86 在臺式機和小型伺服器上勝出,而 ARM 在低功耗和行動式裝置中宣告勝利,而對於 Big Iron,你總是擁有 IBM 的 Power ISA。自我們上次在 2019 年報道 ISA 之戰以來,很多事情都發生了變化,包括蘋果透過 Apple Silicon 將其桌上型電腦系統從 x86 轉移到 ARM,最後 MIPS 以 LoongArch 的形式迎來了來世。
與此同時,在上文提到的 ISA 之戰文章中,RISC-V 被提及了六年,但這個 ISA 似乎並沒有像一些人預期的那樣引起轟動。這引發了人們對 RISC-V 和其他 ISA 未來發展的期望,以及在 CPU 效能和微架構等方面,擁有不同的 ISA 有多大意義的疑問。
RISC 無處不在
與過去 CPU 微架構仍處於不斷變化中不同,如今它們似乎都圍繞著一組類似的功能進行融合,包括無序執行、預取、超標量並行、推測執行、分支預測和多核設計。如今,大多數效能都是透過解決特定瓶頸和針對特定使用場景進行最佳化而獲得的,這導致了諸如同步多執行緒 (SMT) 和各種流水線和指令解碼器設計等。
如今的 CPU 幾乎都是過去所謂的 RISC(精簡指令集計算機)架構,具有相對較少的經過高度最佳化的指令。使用暫存器重新命名等方法,CPU 可以處理多個同時執行的執行緒,這對於與 ISA 通訊的軟體端來說是完全不可見的。對於軟體來說,只有一個暫存器檔案,除非出現某些情況,例如推測執行出現問題,否則每個執行執行緒只知道自己的上下文,而不知道其他內容。
那麼,如果 CPU 微架構此時已經基本合併,那麼 ISA 會有什麼區別呢?
指令集的挑剔
在 ISA 之爭中,目前雙方的爭論主要集中在延遲槽和壓縮指令的優缺點、設定狀態標誌與檢查分支結果等話題上。很難以同類方式比較 ISA,因為商用 ARMv8 CPU 的底層微架構與類似的 x86_64 或 RV64I 或 RV64IMAC CPU 不同。RISC-V 的高度模組化特性也增加了顯著的複雜性。
如果我們看看 RISC-V 目前在商業環境中的使用情況,它主要用作簡單的嵌入式控制器,這種模組化是一種優勢,而與無數其他可能的 RISC-V 擴充套件組合的相容性則不成問題。在這裡,使用 RISC-V 比內部專有 ISA 具有明顯的優勢,因為將其外包給開放標準專案可以節省成本。然而,這也是該 ISA 的主要弱點之一,因為缺乏像 ARMv8 和 x86_64 那樣的固定 ISA,使得支援 Linux 核心等任務變得比應有的複雜得多。
由於支援複雜性不斷膨脹,谷歌已從Android 中撤回了對 RISC-V 的初始支援。由於每個基於 RISC-V 的 CPU 僅需支援基本整數指令集,而整數乘法 (M)、原子 (A)、位操作 (B) 等許多功能都是可選的,因此所有針對 RISC-V 的軟體都必須明確測試是否存在所需的指令和功能,否則將使用後備方案。
當談到 RISC-V 缺乏整數溢位陷阱和進位指令時,人們的情緒也變得很激動。至於壓縮指令是否是個好主意,ARMv8 陣營認為沒有必要,而 RISC-V 陣營則樂於為它們辯護,同時 x86_64 仍然樂於使用雙倍的指令長度,這要歸功於其 CISC 傳統,這會讓 x86_64 比 RISC-V 差一倍或好一倍,這取決於你問誰。
與此同時,一位在 ARM 方面經驗豐富的工程師不久前撰寫了一篇長篇論文,論述了這三種 ISA 的優缺點。他們的結論是 RISC-V “極簡主義到了極致”,指令重疊,沒有條件程式碼或標誌,而是需要比較和分支指令。後一點會導致許多妥協,這也是許多人認為 RISC-V 存在問題的主要原因之一。
總而言之,與其他 ISA 已經建立的領域相比,RISC-V 並沒有明顯的優勢,但它的優勢似乎主要在於其極端的模組化和缺乏許可要求,這被視為令人信服的論據,這不應該阻止人們時不時地享受一場精彩的論戰。
中國視角
儘管除中國以外的所有地區都已基本圍繞上述三種 ISA 進行整合,但總有例外。與俄羅斯命運多舛的超大指令字Elbrus架構不同,中國在 CPU 方面的努力取得了更多成果。從龍芯CPU 開始,中國自主研發的微處理器架構開始真正成型。
最初這些是與 MIPS 相容的 CPU。但從 2021 年的 3A5000 開始,中國 CPU 開始使用新的 LoongArch ISA。在有關此 ISA 的Linux 核心文件中,它被描述為“有點像 MIPS 或 RISC-V”,它具有三個變體,範圍從精簡的 32 位版本 (LA32R) 和標準 32 位 (LA32S) 到 64 位版本 (LA64)。在當前的 LS3A6000 CPU 中,有 16 個支援 SMT 的核心。在評論中,這些晶片被證明正在迅速趕上現代 x86_64 CPU,包括超頻方面。
當然,由於這些都是僅在中國推出的硬體,很少有西方評論家對 LS3A6000 或其即將推出的繼任者 LS3A7000 進行過獨立測試。
除了 LoongArch,其他中國公司也在自己的微處理器中使用 RISC-V,例如專注於人工智慧的公司SpacemiT ,其產品還包括更多通用處理器。這包括MuseBook筆記型電腦中使用的 K1 八核 CPU。與當今所有基於 RISC-V 的商用核心一樣,這款處理器的速度並不快,即使是 SiFive Premier P550 SoC 也被 Raspberry Pi 4 已經相當老舊的基於 ARM 的 SoC徹底擊敗。
考慮到所有這些,如果中國嵌入式以外的 ISA 領域主要以 LoongArch、大量 ARM、一些 x86_64 和少量 RISC-V 為特色,那就不足為奇了。
一切都與 IP 有關
透過將 Apple Silicon 與其他基於 ARMv8 的 CPU 進行對比,可以清楚地看到 ISA 和微架構之間的區別。雖然它們都支援相同 ARMv8 ISA 的版本,但神奇之處在於整合到晶片中的智慧財產權(IP) 塊。這些包括記憶體控制器、PCIe SerDes 塊和整合顯示卡 (iGPU),以及加密和安全功能。除非您是擁有自己的 GPU 解決方案的 Apple 或 Intel,否則您將獲得 iGPU 塊以及來自 IP 供應商的其他 IP 塊的許可。
這些 IP 模組的優點是能夠使用具有已知效能特徵的現成功能,但它們也是微處理器設計的大部分成本所在。如果您像 Apple 或 Qualcomm 那樣反覆重複使用相同的模組,那麼從頭開發此類功能可以收回成本。對於一家初創硬體公司來說,這是最大的投資之一,這就是為什麼他們傾向於從 Arm 獲得完全可製造的設計的許可。
ISA 的實際許可成本實際上是一個舍入誤差,而能夠利用現有軟體和工具的好處才是主要驅動因素。這就是為什麼像 LoongArch 這樣的新 ISA 從長遠來看很可能對現有 ISA 構成真正的挑戰,因為它有機會在一個需求有保證的非常大的市場中發展。
多種選擇
同時,Power ISA也可供任何人免費使用,無需許可費用;唯一的主要要求是遵守 Power ISA。OpenPOWER 基金會現在也是Linux 基金會的一部分,其一系列 IBM Power 核心都是開源的。其中包括基於為 XBox 360 和 Playstation 3 的 Cell 處理器供電的 A2I 核心的A2O 核心,以及基於更新的 Power ISA 3.0 的Microwatt 參考設計。
無論您喜歡什麼,無論您只是在進行業餘愛好還是商業專案,ISA 領域似乎都有很多多樣性可供選擇。雖然選擇自己喜歡的並喜歡它是人之常情,但每種 ISA 都有其可取之處。無論是更好的教學工具,更適合高度定製的嵌入式設計,還是僅僅因為它可以輕鬆執行數十年的軟體,它們都有自己的一席之地。
原文連結
https://hackaday.com/2025/03/18/checking-in-on-the-isa-wars-and-its-impact-on-cpu-architectures/
END
▲點選上方名片即可關注
專注半導體領域更多原創內容
▲點選上方名片即可關注
關注全球半導體產業動向與趨勢
*免責宣告:本文由作者原創。文章內容系作者個人觀點,半導體行業觀察轉載僅為了傳達一種不同的觀點,不代表半導體行業觀察對該觀點贊同或支援,如果有任何異議,歡迎聯絡半導體行業觀察。

今天是《半導體行業觀察》為您分享的第4086期內容,歡迎關注。
推薦閱讀



『半導體第一垂直媒體』
即時 專業 原創 深度
公眾號ID:icbank
喜歡我們的內容就點“在看”分享給小夥伴哦

