RISC-V

RISC-V(英语发音为“risk-five”)是一個基于精简指令集(RISC)原则的开源指令集架構(ISA),簡易解釋為與開源軟體運動相對應的一種「開源硬體」。该项目于2010年在加州大學柏克萊分校启动,但许多贡献者是该大学以外的志愿者和-{zh-tw:業界人士;zh-cn:行业工作者}-。

与大多数指令集相比,RISC-V指令集可以自由地用于任何目的,允许任何人设计、制造和销售RISC-V芯片和软件而不必支付給任何公司專利費。虽然这不是第一个开源指令集,但它具有重要意义,因为其设计使其适用于现代计算设备(如仓库规模云计算机、高端移动电话和微小嵌入式系统)。设计者考虑到了这些用途中的性能与功率效率。该指令集还具有众多支持的软件,这解决了新指令集通常的弱点。

RISC-V指令集的设计考虑了小型、快速、低功耗的现实情況來實做,但並没有对特定的微架構做过度的設計。

截至2021年12月,RISC-V工作小組已經批准了版本 20191213 的非特权指令集(Unprivileged ISA,曾經稱為用户级指令集 User-Level ISA),以及版本 20211203 的特权指令集(Privileged ISA)。

意义
RISC-V的作者们旨在提供数种可以在BSD许可证之下自由使用的CPU设计。该许可证允許像是RISC-V芯片设计等衍生作品可以像RISC-V本身一样是公开且自由发行,也可以是闭源或者是专有財產。

相比而言,ARM控股和MIPS科技等商业芯片供应商会对使用其专利者收取高額的许可费用。他們也要求在接收其描述设计优点的文件和指令集前,还需要签署保密协议。许多设计优点为完全专有,從來不会披露给客户。这种保密制度阻碍了公共教育用途和安全審核,以及开发公共、低成本的自由及开放源代码软件編譯器和操作系统。

处理器设计需要多种专业的设计知识,包括电子逻辑、编译器和操作系统,这种资源很难在专业工程团队之外见到。所以现代且高质量的通用计算机指令集近年来除了学术环境以外並沒有在任何地方被广泛使用,甚至没有被阐述。正因如此,许多RISC-V贡献者将此视为整個社群付出的成果,而这也是RISC-V有很多工程上的應用的一项原因。

RISC-V的作者们还有大量研究和使用者經驗來验证他们在硅片和仿真中的设计。RISC-V指令集是从一系列的学术计算机设计项目直接发展而来的。它一開始的目的有一部分是為了帮助这些项目。

历史
前身
RISC的歷史可追溯到1980年左右。在此之前,人們覺得簡單的計算機可能會有用,但是沒有很多人去闡述其設計原則。這種簡單而有效的計算機一直都是學術界的興趣。

學術界的學者們為了出版第一版的《計算機體系結構:量化研究方法》(Computer Architecture: A Quantitative Approach)ISBN 978-1558600690 ,所以於1990年訂立了RISC指令集。大衛·帕特森(David Patterson)是其中一位作者,後來協助RISC-V的開發。但是DLX只用於教育用途,學術界和業餘愛好者使用FPGA來實做它,但並沒有取得商業運用。

版本2及更早版本的ARM CPU具有公共域指令集,並且仍有GCC的支持。該指令集有三個開源內核,但從未被製造。

是一款基於DLX的開源指令集,並且具有相關的RISC設計。OpenRISC 完全支持GCC並且有實做在Linux上,但是它很少有商業上的實做。

RISC-V基金会及RISC-V国际協會
加州柏克萊分校的發現開放原始碼的電腦系統有很多用途。在2010年他決定用三個月的時間來開發並發表一個開放原始碼的電腦系統。這個計畫是用來幫助包括學術以及工業的使用者。柏克萊分校的大衛·帕特森教授也參加了這個計畫。帕特森也是原來伯克利分校RISC的設計者,RISC-V只是他眾多RISC CPU研究計畫的一個.RISC-V計畫早期一些經費來自DARPA。

有參與支援RISC-V基金會的公司以及機構包括了超微半導體、晶心科技、英國航太系統、加州大学伯克利分校、、Cortus、Google、GreenWaves Technology、慧與科技、華為、IBM、Imperas Software、中国科学院、北京清華大學、印度理工學院、萊迪思半導體、邁倫科技、美高森美、美光科技、輝達、恩智浦半導體、甲骨文公司、高通、Rambus、威騰電子、、阿里巴巴集团、紅帽公司、成为资本。

2019年6月,图灵奖得主、RISC-V基金会创始人之一大卫·帕特森(David Patterson)在瑞士宣布,将依托清华—伯克利深圳学院(TBSI),在內部建设RISC-V国际开源实验室(RISC-V International Open Source Laboratory),又称大卫帕特森RIOS图灵实验室。清华大学称实验室将瞄准世界CPU产业战略发展新方向和粤港澳大湾区产业创新需求,,並更名为RISC-V国际協會(),以非盈利商业协会的身份在瑞士注册。

奖项

激勵要求
RISC設計者們認為指令集因為位於硬體和軟體之間,所以是電腦主要的溝通橋樑,因此如果有一個設計良好的指令集是開源而且可以被任何人使用的,就可以讓更多的資源能夠重複利用,而大大的減少軟體的成本。而這樣的指令集也會增加硬體供應商市場的競爭力,因為硬體供應商們可以挪用更多資源來進行設計,減少處理軟體支援的事務。

設計者聲稱在指令集設計領域裡,新的設計準則漸漸變得罕見,而近四十年中,大多數成功的設計變得越來越相似。至於那些失敗的指令集,大多數是因為他們的贊助商賺不了錢,而不是因為其指令集在技術上有多差。所以,一個在成熟的設計準則之下開發且設計良好的開源指令集想必能吸引許多供應商長期的支援。

許多先前的開源指令集架構使用GNU通用公共授權條款來鼓勵使用者們允許他們的實作方法被其他人複製或是使用。

設計者們表示,RISC-V指令集是給實際上的電腦使用的,它不像其他學術上的指令集設計,只有為了比較好闡述理念而做最佳化。而RISC-V指令集有一些功能是可以增加電腦速度又可以減少成本和電源使用。這些特色包含,Load/store架構,在CPU裡面的位元表示方法來簡化數據多工器(MUX),以標準為基礎來簡化的浮點數,架構中立的設計和把最高有效位(Most significant bit,MSB)放到固定位置來加速符号扩充(Sign extension)。而sign extension常常就是靜態時序分析裡面的關鍵路徑(Critical timing path)

然而,RISC-V也可以拿來做學術上的使用。它擁有簡化的整數指令子集允許學生拿來做基本的練習,而整數指令子集就是一個簡單的指令集架構(ISA)讓軟體可以控制研究上的機器。而不定長度的指令集架構也允許擴充功能來滿足研究或是學生練習上的需求。分割出來的特權指令集可以支援在不重新設計編譯器的情況下,進行作業系統方面的研究。

软件
一個新的CPU指令集通常的問題是缺少CPU的硬體設計跟軟體的支援。在RISC-V的網站有一個user mode指令集的規格,還有一個用來支援作業系統模式的優先指令集的初步規格。

市面上已經有好幾個使用RISC-V開源架構的CPU設計可以供參考,包括64-bit Berkeley Out of Order Machine(BOOM)UEFI Spec v2.7 定義了RISC-V UFEI 的規格,而且慧與科技公司的工程師已經做好一個 的移植版本,並且將會上傳到開放原始碼社群。已經有人做好了一個 L4 microkernel family 的移植

2021年平头哥半导体釋出玄铁C910處理器開源項目,同時還發布出C910的LLVM编译器源代碼。

SiFive公司的RISC-V半導體IP核系列
RISC-V創始人所創辦的SiFive公司提供一系列RISC-V半導體IP核,包含高性能、高效能、低功耗及嵌入式RISC-V处理器。

晶心科技的RISC-V CPU IP系列
晶心提供可配置性高的32/64位元高效能CPU核心,包含DSP、FPU、Vector、超純量 (Superscalar)、亂序執行 (Out-of-Order)及多核心系列。

開源實現
中國科學院「香山」
中國科學院計算所在2020年釋出「香山」高性能RISC-V處理器開源項目,香山以硬件描述语言(Scala领域特定语言)開發。 第一版「雁栖湖架構」使用台積電的28nm製程,工作頻率為1.3GHz。

威騰電子「SweRV」
威騰電子在2018年釋出SweRV RISC-V處理器開源項目,SweRV 目標應用環境為储存装置控制器,從開源以來已有多家廠商采用。

参见

  • 精簡指令集 (RISC)
  • ,以GNU General Public License授权
  • ,RISC-V处理器指令子集、内核和系统的指令精确模拟器。免费为非商业用途提供。
  • ARM架構

*

参考资料
拓展阅读

外部链接
*
*
*

*
*
*
*

评论 (0)

  • 还没有评论,来抢沙发吧。