作为中国处理器产业的最后一次机会,RISC-V究竟神圣在哪里?

网友投稿 2019-04-25 11:33

   当前,虽然全球微处理器指令集架构被Arm和Intel x86垄断,但是2010年在伯克利大学诞生的RISC-V指令集,有望打破这一格局,给中国处理器IP带来“自主可控”的发展契机,尤其对于消费类、IoT等嵌入式应用,RISC-V更像是一道“曙光”!现在,许多高校已经开始将RISC-V用于教学,科技巨头纷纷宣布支持RISC-V,并且涌现出了一批初创的科技公司。

目前,虽然RISC-V架构技术还在发展阶段,各家芯片平台也在开发和完善之中,但是RISC-V应用终将落地。中国集成电路老前辈许居衍院士指出:RISC-V当前最适合用于IoT之类的“看不见的计算”中,现在看来RISC-V要形成生态,希望很可能在中国。

在这样的契机下,嵌入式系统联谊会举办的首次技术沙龙聚焦于RISC-V嵌入式开发这一主题。正如嵌入式系统联谊会秘书长何小庆所言:希望更多产业和学术界的年轻朋友同大家分享自己对RISC-V的观点和研究成果,更好地促进RISC-V在嵌入式产业的应用。

https://cdn.china-scratch.com/timg/190427/1133351020-0.jpg

嵌入式系统联谊会秘书长何小庆

RISC-V与RUST相遇,引发操作系统教学新尝试

https://cdn.china-scratch.com/timg/190427/11333C055-1.jpg

清华大学计算机系 陈渝副教授

身为研究操作系统的老师,陈渝认为,RISC-V精简指令集听起来属于硬件范畴,但是其实RISC-V与软件有很大的相关性,因为作为重要系统软件的操作系统负责对硬件进行管理和控制,以实现对上层应用的支持。

陈老师介绍,不同学校计算机系对操作系统课程教学的要求存在差异,有的只要求会用,有的却需要懂得操作系统。清华大学的操作系统课程目标是希望学生能够用一种高级语言在某一种CPU上实现操作系统的设计。

陈老师在多年的操作系统教学实践中,一直在做不同的尝试,实验环境从Nachos、XV6到ucore,在CPU上尝试x86、MIPS、Arm,汇编语言也从C语言到RUST。

直到2017年,发现RISC-V是一个很不错的选择。RISC-V本身来源于学校,已经经过长期的探索,而且它是开源的,学生可以接触到关于它的所有信息(不像x86和Arm,很难深入了解更多细节),所以更容易在其上开发应用软件和操作系统。

关于为什么选择RUST作为RISC-V的开发语言,陈老师这样解释虽然现在大多数的操作系统选用C语言开发,但是还是存在潜在的安全问题,所以目前国外很多学校也都在探索使用C语言之外的语言做开发,比如MIT尝试使用Go语言。鉴于RUST不仅有严格的安全约束,可以把编译时约束转移到运行时,而且允许程序员显式地指出不安全(unsafe块),并使用安全封装和管理不安全,所以才选择了RUST。另外,在应用RUST后统计,代码量上也相对轻简不少。

https://cdn.china-scratch.com/timg/190427/11333C221-2.jpg

https://cdn.china-scratch.com/timg/190427/1133361007-3.jpg

https://cdn.china-scratch.com/timg/190427/11333H351-4.jpg

经过两年的教学实践,陈老师表示在RISC-V上开发操作系统还是非常有优势的,比如有的同学在32位环境下开发的系统,只需要微小的改动(一两天的工作量)就可以移植到64位上,说明RISC-V在硬件架构设计上已经做了软件的一致性考虑。

https://cdn.china-scratch.com/timg/190427/11333HE6-5.jpg

https://cdn.china-scratch.com/timg/190427/11333I1E-6.jpg

https://cdn.china-scratch.com/timg/190427/11333G644-7.jpg

据陈老师介绍,在2017~2019年操作系统课应用RISC-V+C/RUST所写的操作系统也已在GitHub上分享,供大家参考,地址如下:

https://github.com/chyyuu/ucore_os_lab

-v

https://cdn.china-scratch.com/timg/190427/11333WF1-8.jpg

RISC-V定制处理器助力四足机器人设计开发

https://cdn.china-scratch.com/timg/190427/11333RT0-9.jpg

北京工业大学硕士研究生  蔡琳琳

虽然RISC-V离大规模商用还有一定的距离,但是在高校已经有了很多研究和应用。蔡琳琳解释了她所做的四足机器人课题选用RISC-V架构的原因:原来对于四足机器人的控制会选用单片机,因为其外围设备资源不足,要实现复杂的功能时就会有很多困难,而采用RISC-V后可以对处理器进行定制,所实现的功能会更加完善。

在北工大韩德强老师的指导下,蔡琳琳设计的四足机器人原来是采用Arm架构处理器控制的,现在改用基于RISC-V架构的定制处理器实现。虽然在功能实现方面区别不大,但是采用Arm架构处理器时,其PWM引脚是由软件模拟实现的,而现在则是由硬件实现,效率和精度都得到了很大提升。

RISC-V是中国处理器产业的最后一次机会


https://cdn.china-scratch.com/timg/190427/11333W0P-10.jpg

芯来科技创始人,著名RISC-V技术推广者 胡振波

作为著名的RISC-V技术推广者和国内第一颗RISC-V开源处理器蜂鸟E203的作者,芯来科技创始人胡振波对RISC-V有着深刻和独到的理解。

他认为,在后摩尔时代,随着摩尔定律和登纳德缩放定律的相继失效,通用处理器逐渐无法满足对整体系统能效比的追求,因此基于领域的架构设计(Design Specific Architecture)设计理念逐渐成为共识和趋势。系统公司、互联网巨头开始全面造芯,更多软硬件结合的差异化创新正在诞生,芯片也在呈现出类似互联网服务化的趋势。

https://cdn.china-scratch.com/timg/190427/113339B21-11.jpg

传统处理器指令集架构(ISA, Instruction Set Architecture)承载着软硬件接口作用,但是各个公司又是封闭性的,在开发中多种编程模型共存,需要嵌入式开发人员掌握多种硬件架构、多种编程模型,降低了产品开发的效率,并且由于指令集不能扩展,也难以把硬件扩展和处理器微架构紧密结合在一起,因此无法进一步提升性能。更为关键的是,找到和培养具备对不同硬件架构编程能力的程序员成本很高,给公司发展带来很多困难。

https://cdn.china-scratch.com/timg/190427/1133395526-12.jpg

而RISC-V具有4个特点,分别是简单和一致性、学校和产业能够无缝对接、开放的可扩展性以及编程效率高,正好可以解决嵌入式开发中的很多痛点。RISC-V的开放性决定了它不再只是针对某种应用,而是能够满足很多应用领域的不同需求,因此会得到更多大型公司和社区的支持,生态系统发展得更为迅速;RISC-V的平民化让更多工程师可以接触到,并迅速应用于亿万级的物联网市场。

https://cdn.china-scratch.com/timg/190427/113339C91-13.jpg

https://cdn.china-scratch.com/timg/190427/113339BW-14.jpg

https://cdn.china-scratch.com/timg/190427/1133403V7-15.jpg

https://cdn.china-scratch.com/timg/190427/11334043F-16.jpg

https://cdn.china-scratch.com/timg/190427/11334064M-17.jpg

x86和Arm时代,中国只是处理器的应用市场,虽然一直想要弯道超车,但终未实现。胡振波认为,RISC-V是中国处理器产业的一次机会,而且很可能是最后一次机会。芯来科技主要专注于RISC-V处理器研发,为客户提供处理器IP和相关解决方案,目前已经发布了面向AIoT的超低功耗产品线,正在研发面向边缘计算的更高性能、带矢量加速的产品线,并积极和上下游合作伙伴一起共同拓展更加广阔的市场。胡振波希望通过自己和业界的共同努力,帮助中国本土处理器产业抓住这次难得的机会!

https://cdn.china-scratch.com/timg/190427/1133402955-18.jpg

胡振波这两本书带领很多人认识了RISC-V

RISC-V发展的关键在于软件和生态系统

https://cdn.china-scratch.com/timg/190427/1133415543-19.jpg

恩智浦(中国)管理有限公司系统工程总监 王朋朋

王朋朋拥有多年的嵌入式系统应用开发经验,她清楚地了解工程师在开发过程中需要很多资源,包括文档、开发工具、软件支持包、硬件参考资料、参考解决方案、设计公司协作开发、人力技术支持以及培训资源等。正因如此,王总监认为,RISC-V要推广到MCU中,难点其实不在芯片,而是软件和生态系统的建设。王总监透露,恩智浦现在已经是RISC-V基金会的白金会员,就是希望凭借公司在产业界多年的积累和影响力来促进RISC-V生态系统的发展,而不仅仅是推出采用RISC-V架构的芯片。

https://cdn.china-scratch.com/timg/190427/11334140F-20.jpg

https://cdn.china-scratch.com/timg/190427/1133415963-21.jpg

为了帮助RISC-V建立起一个强大的生态系统,恩智浦在RISC-V生态建设方面做了很多工作:建立了一个面向所有开源ISA爱好者的非盈利性的RISC-V社区(www.open-isa.org),这个社区向所有生态合作伙伴开放,全球开发者可以在这里分享创意和经验,5月份www.open-isa.cn也会上线,便于中国开发者讨论和学习;推出了两个RISC-V开发板,一个是VEGAboard,拥有双RISC-V核芯片和兼容Arduino接口的开发板,另一个是专门针对中国大陆定制的织女星开发板,比VEGAboard更易用;主办RISC-V应用设计大赛,推动以RISC-V为基础的MCU应用生态的建设,让国内广大的MCU应用开发人员更加深入地理解和体验RISC-V将会怎样影响他们的未来,以此促进RISC-V应用的普及。

https://cdn.china-scratch.com/timg/190427/1133422229-22.jpg

用RISC-V做开发,依然面对熟悉的开发环境

https://cdn.china-scratch.com/timg/190427/1133424555-23.jpg

恩智浦(中国)管理有限公司高级系统工程师 刘华东

在做了多年基于Arm架构的处理器开发后,刘华东开始研究RISC-V,他从工程师的视角给大家详细阐述了基于RISC-V指令集做开发与使用以前熟悉的嵌入式开发环境的不同之处。

首先,RISC-V  MCU是基于GNU GCC RISC-V交叉工具链做开发的编译工具为Cmake,可以提高编译效率,而Arm架构处理器选用的是Makefile。其次,调试软件采用OpenOCD,只要所连接的硬件调试器支持标准的JTAG协议,就可以直接使用,如果是已经习惯于Linux的用户,可以继续使用命令行方式开发环境。

刘华东介绍,其实很多嵌入式工程师对IAR和Keil非常熟悉,所以RISC-V社区提供了Eclipse集成开发环境,在标准Eclipse基础上添加了插件,并且针对RISC-V开发做了优化,与工程师原来所熟悉的开发调试环境非常类似。

https://cdn.china-scratch.com/timg/190427/1133422230-24.jpg

https://cdn.china-scratch.com/timg/190427/1133421M7-25.jpg

https://cdn.china-scratch.com/timg/190427/1133433427-26.jpg

在介绍了恩智浦推出的VEGAboard和织女星开发板结构之后,刘华东详细介绍了RV32M1内核,这是一个异构4核MCU,包括两个RISC-V内核(一个RI5CY核和一个ZERO_RISCY核)以及两个Arm内核(一个Cortex-M4F核和一个Cortex-M0+核),单芯片就可运行BLE、Mesh/Thread/ZigBee协议,特别适合于超低功耗的移动设备。由RV32M1的架构可见,RISC-V与Arm其实并非互斥关系,两者相互融合之后,完全有可能碰撞出更大的火花!

值得一提的是,自去年12月份VEGABoard发布以来,恩智浦所建立的开源社区和合作伙伴积极对VEGABoard提供支持。另外,同样也在GitHub上分享了许多项目:

https://github.com/alibaba/AliOS-Things

https://github.com/AaronKel/micropython-vega

https://sourceforge.net/projects/mecrisp/files

https://cdn.china-scratch.com/timg/190427/113343B28-27.jpg

https://cdn.china-scratch.com/timg/190427/11334412A-28.jpg

https://cdn.china-scratch.com/timg/190427/1133441117-29.jpg

https://cdn.china-scratch.com/timg/190427/11334440T-30.jpg

https://cdn.china-scratch.com/timg/190427/1133456017-31.jpg

IAR可以弥补RISC-V的商用短板


https://cdn.china-scratch.com/timg/190427/1133454N4-32.jpg

IAR Systems中国区经理 盛磊

IAR是一个专业商用开发工具,而RISC-V开源社区已经有很多免费开源的开发工具了,看似收费的IAR不会与RISC-V产生交集,但实际上IAR Systems是RISC-V基金会的成员,从三年前就开始研究RISC-V。

盛磊解释了RISC-V依然需要IAR的原因:一个芯片如果要实现商用,仅仅具有芯片性能优势是没有实质意义的,只有整个系统(包括处理器设计、主频和编译器)具备优势,产品才会有竞争力。可以预见的是如果仅采用免费的(如GCC等)开发工具,基于RISC-V指令集的处理器在整体系统性能上是无法与成熟的Arm架构产品竞争的。因此,RISC-V要走向市场,势必需要与IAR结合。

盛磊介绍,目前IAR支持市场上常见的40多种架构的MCU,包括基于Arm内核的MCU和各个公司私有架构的MCU,今年还将会增加支持RISC-V的新产品,计划6月份推出1.10商用版本给合作客户,并且后续还会推出升级版本。

可见,无论是高校、芯片公司还是软件公司,都对RISC-V寄予了厚望,并为之做了很多工作,这是带给中国处理器产业的一道曙光!希望更多的公司参与到RISC-V生态系统的建设当中,帮助中国处理器产业抓住这次绝好的机会!

https://cdn.china-scratch.com/timg/190427/1133454256-33.jpghttps://cdn.china-scratch.com/timg/190427/11334AH1-34.jpghttps://cdn.china-scratch.com/timg/190427/11334M509-35.jpg

关于「嵌入式系统联谊会」

由国内知名学者和产业人士共同发起的嵌入式系统联谊会,成立和运作已经11年了。嵌入式系统联谊会为中国嵌入式系统不同学科领域的专家学者、工程技术人员、市场和科技媒体人士提供学术和产业信息交流的环境,是增进个人友谊的公益性科技沙龙机构。嵌入式系统联谊会技术沙龙是联谊会继主题讨论会形式外的一个新的尝试,更侧重专业化、年轻化和实战性。

关注更多关于活动信息,请关注公众号嵌入式资讯精选

--end--

声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除:freemanzk@qq.com