感言:2020年因为各种原因必将在人类历史中成为备受关注的里程碑,或许这一年也是未来很大大事记的开端。
RISC发明者是美国加州大学伯克利分校教师David Patterson,RISC-V(拼做risk-five)是第五代精简指令集,也是由David Patterson指导的项目。
1.1 为什么要做RISC-V指令集?历史上是这样的,2010年伯克利大学并行计算实验室(Par Lab) 的1位教授和2个研究生(下图这三位大佬)想要做一个项目,需要选一种计算机架构来做。当时面临的的是选择X86、ARM,还是其他指令集,不管选择哪个都或多或少有些问题,比如授权费价格高昂,不能开源,不能扩展更改等等。所以他们在2010年5月开始规划自己做一个新的、开源的指令集,就是RISC-V。
接着时间到2015年,这个指令集在学术界已经开始出名了,这时为了更好的推动这个指令集在技术和商业上的发展,3位创始人大佬做了下面两件事情。
技术方向,成立RISC-V基金会,维护指令集架构的完整性和非碎片化。
商业方向,成立SiFive公司,推动RISC-V的商业化。
1.2 硬件构建语言Chisel
除了开发RISC-V指令集,大佬们还同步开发了用于RISC-V处理器设计的Chisel语言(Constructing Hardware in a Scala Embedded Language,硬件构建语言)。
注意不是硬件描述语言(Hardware Description Language,HDL)。
我们知道,数字电路设计一般使用verilog(HDL)语言进行开发。那么Chisel是什么呢,为什么可以用它来做处理器?
参考这个链接大概了解了一下,Chisel是一种硬件设计语言,开发的目的是为了促进ASIC和FPGA高级电路生成和设计重用。Chisel是用Scala语言写的一个针对硬件开发的库(有点类似于uvm和SystemVeriolg的关系)。开发人员可以使用Chisel编写可以生成可综合、可参数化的verilog电路生成器。Chisel首先生成通用的verilog,然后使用的DC进行综合。其实设计Chisel并不是用来替代verilog的,而是为了在硬件设计中引入敏捷开发的思想解决硬件设计反馈环太长这件事情的。[3][5]
Rocket-Chip-Generator项目是SiFive的第一个RISC-V的开源处理器,使用Chisel编写。
关于基金会目前的开源的RISC-V Core和SoC开发语言状况,可参考基金会Github,
https://github.com/riscv/riscv-cores-list
2 RISC-V基金会
RISC-V Fundation Community,RISC-V基金会。
2.1 基金会成立
2015年,3名RISC-V发明者创办SiFive公司,SiFive联合以google为首的公司作为创始会员创立RISC-V基金会。并将RISC-V指令集所有相关的资料都交给非盈利性的RISC-V基金会来处理。并将之前所做的CPU及SOC的实现的积累都开放源代码,就是上面提到的Rocket-Chip-Generator。RISC-V基金会目前已经吸引了全球33个国家超过325个组织加入,包括西部数据,三星,Microchip,NXP,Google等国际大厂。基金会负责维护RISC-V指令集标准手册(riscv-spec.pdf)和架构文档(riscv-privileged.pdf),对应Spec文档可从官网下载,如下图
2.2 基金会会员细则
RISC-V基金会由五个等级会员组成,包括Platinum(白金会员)、Gold(金牌会员)、Silver(银牌会员)、Auditor(审核员)和Individual(个人会员)。就像我们办会员卡一样,前三种会员每年需要向基金会缴纳一定的费用,费用从$5000~25000不等,当然其各自的权利也相对高一些。如下截图列举了会员协议和章程,
细则说明了基金会成员为维护和发展RISC-V指令集架构所需要遵循的治理方法和贡献原则,所有成员都有资格参加基金会任务组,并对RISC-V指令集的维护做出贡献。
白金会员,会员费用$2.5w/年,10次RISC-V研讨会折扣注册权限。会员有资格参加董事会席位选举,并担任基金会技术委员会、营销委员会和工作小组成员。
金牌会员,会员费用$1w/年,7次RISC-V研讨会折扣注册权限。会员有资格担任基金会技术委员会、营销委员会和工作小组成员。
银牌会员,会员费用$0.5w/年,5次RISC-V研讨会折扣注册权限,会有在董事会选举中每个公开职位都有一票表决权。
审核员会员,不收取会员费,全年研讨会的折扣注册,主要针对非盈利性研究室和大学。
个人会员,不收取会员费,无投票权,适用于特定公司或组织无关的个人贡献者。
审核员和个人会员不得将RISC-V知识产权用于商业目的,付费会员才有商业化使用的资格。
2.3 国内加入基金会企业
大概看了一下,目前国内企业和机构在基金会中占比不大(之前看到资料说大概25家),其中,
Platinum Level有阿里巴巴、华米科技、中兴微(Sanechips)、晶芯科技(Andes)等;
Gold Level华为、浪潮(Inspur)、乐鑫(Espressif)、芯原微(VeriSilicon)等;
Silver Level有芯来科技(Nuclei)、紫光同创(Pango)、全志(Allwinner)、君正(Ingenic)、兆易创新(GigaDevice)、比特大陆(Bitmian)等。
基金会除了维护技术规范的文档外,还负责组织RISC-V会议和讨论。
2019.11.26,由于担心美国的贸易限制,RISC-V基金会总部从美国迁往瑞士。
3 SiFive公司
SiFive是2015年7月由RISC-V发明者创立的用于推动RISC-V商业化的公司。SiFive是SaaS(Software-as-a-Service)服务商,提供基于RISC-V指令集架构的商业化处理器IP、开发工具和芯片解决方案。2018年8月在中国注册独立公司赛昉科技(SaiFan)用于为国内客户提供服务。
3.1 商业化动作-开发板
SiFive商业化做了2重要的事情,即提供2块HiFive开发板给全世界的开发者用户,这两块开发板很大的推动了RISC-V生态的建设。
3.2 SiFive提供的IP产品
我们知道,ARM Cortex分为3个系列,即M,R和A,分别是针对应用嵌入式(Microcontroller)、实时(Real-Time)和操作系统(Application)3个领域,分别对应Cortex-M、Cortex-R、Cortex-A 3个系列。SiFive提供的RISC-V IP对标的也做了3个系列内核,如下,
E核,32位嵌入式内核,用于边缘计算,AI和物联网方向,对标ARM Cortex-M系列;
S核,64位嵌入式内核,用于存储、AR/VR、机器,对标ARM Cortex-R系列;
U核,64位应用处理器,用于数据中心、网络基带等方向,对标ARM Cortex-A系列;
每种类型的内核又按照数字标号从低端到高端做了不同种类,2系列,3/5系列(看来大家都会默认跳过4这个编号),7系列,对标Cortex A、R、M编号从低到高可用于不同的场景。可以说是从横向和纵向都对标了ARM系列。
3.3 题外话
我们看到目前RISC-V可以做到全系列的对标ARM,但是从市场角度来说,RISC-V还是有很多事情要做的。2017年6月20日,ARM宣布Cortex-M0/M3处理器内核不在需要授权费用(版权费用仍需支付),免费的目标是为了实现一万亿的出货量。[9]