? RISC-V 是一個最新的,清晰的,簡約的,開源的 ISA,它以過去 ISA 所犯過的錯誤為鑒。RISC-V 架構師的目標是讓它在從最小的到最快的所有計算設備上都能有效工作。遵循馮諾依曼 70 年前的建議,這個 ISA 強調(diào)簡潔性來保證它的低成本,同時有著大量的寄存器和透明的指令執(zhí)行速度,從而幫助編譯器和匯編語言程序員將實際的重要問題轉換為適當?shù)母咝Тa。 本文來自“RISC-V手冊開源指令集指南”。RISC-V(“RISC five”)的目標是成為一個通用的指令集架構(ISA):
它要能適應包括從最袖珍的嵌入式控制器,到最快的高性能計算機等各種規(guī)模的處理器。
它應該能兼容各種流行的軟件棧和編程語言。
它應該適應所有實現(xiàn)技術,包括現(xiàn)場可編程門陣列(FPGA)、專用集成電路(ASIC)、全定制芯片,甚至未來的設備技術。
它應該對所有微體系結構樣式都有效:例如微編碼或硬連線控制;順序或亂序執(zhí)行流水線; 單發(fā)射或超標量等等。
它應該支持廣泛的專業(yè)化,成為定制加速器的基礎,因為隨著摩爾定律的消退,加速器的重要性日益提高。
它應該是穩(wěn)定的,基礎的指令集架構不應該改變。更重要的是,它不能像以前的專有指令集架構一樣被棄用,例如AMD Am29000、Digital Alpha、Digital VAX、Hewlett Packard PA-RISC、Intel i860、Intel i960、Motorola 88000、以及Zilog Z8000。
RISC-V的不同尋常不僅在于它是一個最近誕生的指令集架構(它誕生于最近十年,而大多數(shù)其他指令集都誕生于20世紀70到80年代),而且在于它是一個開源的指令集架構。與幾乎所有的舊架構不同,它的未來不受任何單一公司的浮沉或一時興起的決定的影響(這一點讓許多過去的指令集架構都遭了殃)。它屬于一個開放的,非營利性質(zhì)的基金會。
RISC-V基金會的目標是保持RISC-V的穩(wěn)定性,僅僅出于技術原因緩慢而謹慎地發(fā)展它,并力圖讓它之于硬件如同Linux之于操作系統(tǒng)一樣受歡迎。 計算機體系結構的傳統(tǒng)方法是增量ISA,新處理器不僅必須實現(xiàn)新的ISA擴展,還必須實現(xiàn)過去的所有擴展。目的是為了保持向后的二進制兼容性,這樣幾十年前程序的二進制版本仍然可以在最新的處理器上正確運行。這一要求與來自于同時發(fā)布新指令和新處理器的營銷上的誘惑共同導致了ISA的體量隨時間大幅增長。 例如,圖1.2顯示了當今主導ISA80x86的指令數(shù)量增長過程。這個指令集架構的歷史可以追溯到1978年,在它的漫長生涯中,它平均每個月增加了大約三條指令。
這個傳統(tǒng)意味著x86-32(我們用它表示32位地址版本的x86)的每個實現(xiàn)必須實現(xiàn)過去的擴展中的錯誤設計,即便它們不再有意義。例如,圖1.3描述了x86的ASCII Adjust afterAddition(aaa)指令,該指令早已失效。
作為一個類比,假設一家餐館只提供固定價格的餐點,最初只是一頓包含漢堡和奶昔的小餐。隨著時間的推移,它會加入薯條,然后是冰淇淋圣代,然后是沙拉,餡餅,葡萄酒,素食意大利面,牛排,啤酒,無窮無盡,直到它成為一頓大餐。食客可以在那家餐廳找到他們過去吃過的東西,盡管總的來說這樣做可能沒什么意義。這樣做的壞處是,用餐者為每次晚餐支付的宴會費用不斷增加。
RISC-V的不同尋常之處,除了在于它是最近誕生的和開源的以外,還在于:和幾乎所有以往的ISA不同,它是模塊化的。它的核心是一個名為RV32I的基礎ISA,運行一個完整的軟件棧。
RV32I是固定的,永遠不會改變。這為編譯器編寫者,操作系統(tǒng)開發(fā)人員和匯編語言程序員提供了穩(wěn)定的目標。模塊化來源于可選的標準擴展,根據(jù)應用程序的需要,硬件可以包含或不包含這些擴展。這種模塊化特性使得RISC-V具有了袖珍化、低能耗的特點,而這對于嵌入式應用可能至關重要。RISC-V編譯器得知當前硬件包含哪些擴展后,便可以生成當前硬件條件下的最佳代碼。
慣例是把代表擴展的字母附加到指令集名稱之后作為指示。例如,RV32IMFD將乘法(RV32M),單精度浮點(RV32F)和雙精度浮點(RV32D)的擴展添加到了基礎指令集(RV32I)中。 在介紹 RISC-V 這個 ISA 之前,了解計算機架構師在設計 ISA 時的基本原則和必須做出的權衡是有用的。如下的列表列出了七種衡量標準。頁邊放置了對應的七個圖標,以突出顯示 RISC-V 在隨后章節(jié)中應對
審核編輯:黃飛
-
集成電路
+關注
關注
5387文章
11530瀏覽量
361632 -
指令集
+關注
關注
0文章
222瀏覽量
23378 -
RISC-V
+關注
關注
45文章
2270瀏覽量
46129
原文標題:RISC-V開源指令集指南
文章出處:【微信號:AI_Architect,微信公眾號:智能計算芯世界】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論