RISC-V 简介
目錄
- RISC-V
- RISC-V的定位
- RISC-V的與眾不同之處
- 參考
RISC-V
??RISC-V 是一個最新的,清晰的,簡約的,開源的 ISA,它以過去 ISA 所犯過的錯誤為鑒。RISC-V 架構師的目標是讓它在從最小的到最快的所有計算設備上都能有效工作。遵循 馮諾依曼 70 年前的建議,這個 ISA 強調簡潔性來保證它的低成本,同時有著大量的寄存 器和透明的指令執行速度,從而幫助編譯器和匯編語言程序員將實際的重要問題轉換為適當的高效代碼。
??這個袖珍的,開源的 ISA 于2011 年推出,現在由一個基金會提供支持。該基金會通過 長期討論后嚴格依據技術理由添加可選擴展的方式來改進它。開源性讓RISC-V 的免費 的、共享的實現成為可能,從而降低了成本,也減少了將不為人知的邪惡秘密隱藏在處理 器之中的可能性。
??然而,只有硬件不能組成一個系統。軟件開發成本可能使硬件開發成本相形見絀。因此雖然穩定的硬件很重要,但穩定的軟件更甚于此。這些軟件需要包括操作系統,引導加載程序,參考軟件和大眾化的軟件工具?;饡WC整個ISA 的穩定性,而固定不變的基 礎指令集意味著核心的 RV32I 作為軟件棧的目標永遠不會改變。通過它的普適性和開源 性,RISC-V 可以挑戰主流專有 ISA 的主導地位。
??如果說用一個詞形容RISC-V,優雅!
RISC-V的定位
??RISC-V(“ RISC five”)的目標是成為一個通用的指令集架構(ISA):
- 它要能適應包括從最袖珍的嵌入式控制器,到最快的高性能計算機等各種規模的 處理器。
- 它應該能兼容各種流行的軟件棧和編程語言。
- 它應該適應所有實現技術,包括現場可編程門陣列(FPGA) 、專用集成電路 (ASIC) 、全定制芯片,甚至未來的設備技術。
- 它應該對所有微體系結構樣式都有效:例如微編碼或硬連線控制;順序或亂序執行 流水線; 單發射或超標量等等。
- 它應該支持廣泛的專業化,成為定制加速器的基礎,因為隨著摩爾定律的消退, 加速器的重要性日益提高。
- 它應該是穩定的,基礎的指令集架構不應該改變。更重要的是,它不能像以前的專有指令集架構一樣被棄用
RISC-V的與眾不同之處
- 新興與開源
??RISC-V的不同尋常不僅在于它是一個最近誕生的指令集架構(它誕生于最近十 年,而大多數其他指令集都誕生于20世紀70到80年代),而且在于它是一個開源的指 令集架構。與幾乎所有的舊架構不同,它的未來不受任何單一公司的浮沉或一時興起 的決定的影響(這一點讓許多過去的指令集架構都遭了殃)。它屬于一個開放的,非 營利性質的基金會。RISC-V基金會的目標是保持RISC-V的穩定性,僅僅出于技術原 因緩慢而謹慎地發展它,并力圖讓它之于硬件如同Linux之于操作系統一樣受歡迎。
計算機體系結構的傳統方法是增量ISA,新處理器不僅必須實現新的ISA擴展,還必須 實現過去的所有擴展。目的是為了保持向后的二進制兼容性,這樣幾十年前程序的二進制 版本仍然可以在最新的處理器上正確運行。這一要求與來自于同時發布新指令和新處理器 的營銷上的誘惑共同導致了ISA的體量隨時間大幅增長。
這個傳統意味著x86-32(我們用它表示32位地址版本的x86)的每個實現必須實現過去 的擴展中的錯誤設計,即便它們不再有意義。
- 模塊化ISA
??RISC-V的不同尋常之處,除了在于它是最近誕生的和開源的以外,還在于:和幾乎所 有以往的ISA不同,它是模塊化的。它的核心是一個名為RV32I的基礎ISA,運行一個完整 的軟件棧。RV32I是固定的,永遠不會改變。這為編譯器編寫者,操作系統開發人員和匯 編語言程序員提供了穩定的目標。模塊化來源于可選的標準擴展,根據應用程序的需要, 硬件可以包含或不包含這些擴展。這種模塊化特性使得RISC-V具有了袖珍化、低能耗的特 點,而這對于嵌入式應用可能至關重要。RISC-V編譯器得知當前硬件包含哪些擴展后,便 可以生成當前硬件條件下的最佳代碼。慣例是把代表擴展的字母附加到指令集名稱之后作 為指示。例如,RV32IMFD將乘法(RV32M),單精度浮點(RV32F)和雙精度浮點 (RV32D)的擴展添加到了基礎指令集(RV32I)中。
參考
RISC-V 手冊 第一章
總結
- 上一篇: CRM客户关系管理系统界面截图
- 下一篇: 开关电源空载吱吱声_开关电源变压器工作时