首先要弄清楚RISC V是什么?
RISC V是一套使用CC协议开源的设计指南。
这是RV不会被卡的根本原因,它的属性本来就是一纸空文。某种意义上,这东西和“5G标准”一样,是没办法直接禁止某一个厂商根据5G标准实现自己的芯片的。如果有办法,那也顶多是对一些实现方案申请了专利,难以绕开。
至于Sifive之类的美国RISC V架构IP提供商,这个可以被卡脖子,但阿里的玄铁910这个是没法卡脖子的。
换言之,只要中国在RISC V这个方向领先,那么就像5G标准领先一样,是没有办法卡脖子的。
看到很多回答都答得很好,有一些回答还引用了我们以前写过的一些解读。在这里重点推荐大家阅读这篇文章《关于RISC-V和开源处理器的一些解读》:
该文对处理器的指令集、微架构实现与开源模式等概念以及和RISC-V的联系等进行解读。以下为几个要点:
作为上文的总结,强烈推荐仔细研读以下这张表(详细解读参见原文第三节):
一点补充,重要的事情再说三遍:
指令集规范(Specification)与处理器实现(Implementation)是两个不同层面的概念!
指令集规范(Specification)与处理器实现(Implementation)是两个不同层面的概念!
指令集规范(Specification)与处理器实现(Implementation)是两个不同层面的概念!
下面可以做几道判断题来检验一下是否理解上述概念:
答案:Yes、No、Yes、Yes、Yes、No、Yes
关于最后一个问题,多说几句。当具备了处理器实现能力,换一个指令集其实是很容易的事。比如龙芯最近能在很短的时间内就从MIPS切换到自定义的LoongArch指令集。因此,处理器芯片领域的核心竞争力是处理器设计与实现能力。
指令集的重要性体现在生态建设上。指令集向上承载的是整个软件生态,向下则规范了以处理器芯片为代表的整个硬件生态。定义一个新指令集本身并不是一件难事,但更重要的是如何能吸引整个业界乃至全世界一起来共同建设生态,这需要一种开放共享的理念作为基底。这也就引出了下一个话题——为什么会出现RISC-V?为什么RISC-V能受到全世界如此关注?
在理解了指令集规范和处理器实现的区别后,我们再回过来看为什么会出现RISC-V。从图2可以看出,在不同领域均存在开放标准,以及相应的开源实现与商业实现。例如操作系统有开放的POSIX Syscall标准,基于POSIX标准,有开源的Linux、FreeBSD,也有闭源的商用的Windows。
TCP/IP、POSIX、C、SQL、OpenGL等这些标准是开放的、共享的。全世界任何一家公司、任何一所大学、任何一个个人都可以基于这些开放标准设计自己的操作系统、编译器、网络交换机、数据库等,而不需要得到谁的授权,不需要为这些标准付费。
而在处理器领域,故事就不一样了。一直以来指令集规范/标准都是公司所有,没有一个开放共享免费的标准,因此长期以来形成了处理器的指令集标准与实现是混为一体的印象。而RISC-V正是填了这个空(图2表中的红色问号格子)——提供了一个开放、免费的处理器指令集。这也是RISC-V诞生时的口号——“Instruction Sets Want to be Free!”
很少有人会问“操作系统Syscall标准会不会被卡”、“C语言语法会不会被卡”、“SQL语言标准会不会被卡”,因为大家理解了在这些领域里标准和实现的区别。而对于处理器指令集,还会需要一点时间来改变大家的传统的观念与认识。
关于RISC-V的起源以及理念,推荐阅读Krste Asanovic和David Patterson在2014年8月发表的一篇观点文章。2015年2月的《中国计算机学会通讯》上全文刊发了中文版《指令系统应该免费:RISC-V的案例》。
下载链接:https://pan.baidu.com/s/1kFxPuCN1nGnFH3Eeg4movg (提取码:risc)
(1)生态尚不够成熟,可能带来投资风险
RISC-V从诞生到现在已经有10年,得到了很大的关注。但是,10岁的RISC-V也到了一个平台期,缺少标志性事件展现RISC-V的能力上限。这涉及到多方面原因,其中很重要的一个原因是指令集标准化工作在过去几年推进相对缓慢了,需要加快步伐。
可以对比这一轮深度学习热潮,Hinton在2006年发表Science论文,并没有受到关注,一直到2012年ImageNet竞赛夺冠才引起学术界关注而真正引爆点是2016年AlphaGo战胜李世石,向全世界展现了深度学习能力的上限。而且这种程碑式突破还不断出现,比如前段时间的有1700亿参数的GPT-3模型,这两天DeepMind的AlphaFold成功解析复杂蛋白质结构,这些都是在不断地向世界展现AI能力的上限,给整个领域信心。
RISC-V的能力上限在哪里?总的来说,RISC-V还是缺少像“AlphaGo战胜李世石”这样的标杆进展。虽然很多人看好RISC-V在IoT领域的应用,但IoT场景因为很碎片化,在技术层面很难产生标杆性事件(当然商业上如果出现一个数亿美元的投资案例,也可以作为一个标杆事件)。这里我们主要从技术层面梳理RISC-V领域可能的三种标杆事件:
因为RISC-V的开放性,所以全世界范围内已经有多方力量都在这三方面积极推进,这里面存在着竞争。但是这种竞争正是构建生态过程中需要存在的积极要素,是正常的、合理的,也应该鼓励的, 就如David Patterson教授在一个采访中提到:
“因为RISC-V是开放的,我们将看到所有这些竞争。也许是由于所有竞争,我们开始在设计领域看到一些真正有趣的创新想法。”
事实上,Linux发展过程中其实也存在群雄逐鹿的阶段,这可以从一个侧面来反应。例如2000年左右,仅Intel就投资了6个Linux初创公司:
因此,从构建整个生态角度来看,应该很高兴看到有更多力量参与到RISC-V的竞争与合作中来,尤其是来自中国的力量。
(2)处理器实现层面的知识产权保护
RISC-V作为一种指令集规范是开放免费的,不属于任何一个公司。RISC-V指令集规范的定义由国际基金会共同管理与维护。但是,基于RISC-V指令集的具体实现,是可以申请专利的。这比较像5G领域,3GPP定义的5G标准规范是所有成员共享的,各个成员可以有自己的具体实现,并申请各自的专利,相互授权。如今也开始有开源的5G实现,比如OpenRAN。
再次强调,指令集规范与处理器实现是独立的、不同层面的概念。因此,处理器实现层面的专利是独立于指令集的,也就是说一个专利所保护的技术(比如一种新的分支预测技术)可以用在Intel的X86处理器中,也可以用在采用了自主定义的LoongArch的龙芯处理器中,也可以用于采用ARM的苹果处理器中。
因此,未来有可能会出现商业纠纷,会是在处理器实现层面上的专利,而不是指令集本身。事实上,哪怕完全自己定义一个全新的指令集,如果在处理器设计层面不做好专利规避,仍然会面临侵犯知识产权诉讼的风险。产业发展过程中出现商业纠纷其实也很正常,我们需要从提高自身实力、加强知识产权保护的角度去应对。
那我们该如何应对?中国在5G领域的发展思路具有很好的借鉴意义。5G标准是全世界一起制定,有一些是中国企业提出,有一些是国外企业提出,但中国并没有因为5G标准中有一部分是美国提出来就放弃参与5G。相反,华为、中兴等企业更加积极地参与标准制定,更加积极地投入研发技术、申请专利,从而在5G专利方面处于国际领先位置。
对于处理器生态的构建和发展,也可以秉持和5G同样的思路。在开放共享的框架下,我们可以通过提高自己的能力来增大话语权,提高自主能力。
(1)两条关于“开放与自主”关系的新闻
国家在制定十四五与2035远景目标,同时也在积极推动一些国际合作框架,比如RCEP。从国家高层在多个场合的发言来看,是强调要在开放环境下去提高自主能力。先看两个新闻:
一是处理好继承和创新的关系,做好“两个一百年”奋斗目标有机衔接。
二是处理好政府和市场的关系,更好发挥我国制度优势。
三是处理好开放和自主的关系,更好统筹国内国际两个大局。
四是处理好发展和安全的关系,有效防范和应对可能影响现代化进程的系统性风险。
五是处理好战略和战术的关系,制定出一个高瞻远瞩、务实管用的规划建议。
从国家层面来看,一方面要需要自主,另一方面希望开放,不谋求“脱钩”、不搞封闭排他的“小圈子”。那么对于这两个看似矛盾的目标,如何能统筹?如何能在不搞封闭排他的“小圈子”的同时,还能达到自主的效果?
(2)实现自主的两种思路
对于自主,国内不少人认为是应该自己另搞一套,应该实现与美国完全脱钩,这是一种思路。而国内的产业界很多支持融入到国际开放竞争环境中,在开放框架下去争取主导权,这是另一种思路。在当前的中国,两种思路都有成功案例:北斗属于第一种思路,5G则属于第二种思路。
具体到指令集,应该采取哪一种思路?因为每个人对信息的收集与获取、事物发展规律的认识不尽相同,因此不同的人会有不同的判断,做出不同的决策,选择不同的思路,这是很正常的现象。根据中国的当前现状,会在一段时间内两种思路并存,比如龙芯在努力推动LoongArch指令集生态的构建(第一种思路),很多企业参与到RISC-V指令集生态的发展(第二种思路)。
第二种思路有时会受到不少质疑(包括知乎上的这个提问),很大原因还是因为对指令集规范与处理器实现概念的不了解。需要肯定的一点是,两种思路最终目标都是为了实现提高处理器生态的自主能力,都是希望能让中国发展得更好。
(3)酌古御今,重温中国计算机事业的创业史
分享一些中科院计算所筹建过程中的史料,来重温1950年代中国计算机事业的开拓者们如何处理“仿制”与“创新”这对矛盾。总结来说,两点决策:
可以说中国计算机事业的先驱们综合考虑了中国当时的学科基础、长远目标、经费开销等因素,做出了非常务实的决策,实现了中国计算机事业从零到一的突破。在我看来,老一辈先驱们的决策思路与理念,对于今天中国如何应对处理器芯片卡脖子问题,依然有重要的借鉴意义。
如何处理好开放和自主的关系?欢迎大家发表高见!
点进来的你,也许对芯片技术架构缺乏了解,没关系,放轻松,这是面向新手的芯片架构科普,只有名词解释,没有数学公式和复杂的概念。
首先,也许有的人听说过「指令集」这个名词。指令是计算机运行的最小的功能单位,而指令集,就是用来控制计算机系统的一套指令的集合。指令集,根据其设计思路不同,又分为复杂指令集和精简指令集,因此芯片架构分类:
有的人看到这两个概念,就一定会有疑问,孰优孰劣?
其实并不能直接下结论。首先我们理解指令集的「复杂」和「精简」是什么回事。这里「复杂」和「精简」指的是在指令设计上,一条指令做的事情的复杂性。举个比方,有个指令叫「吃饭」,在CISC里,就是一条叫做「吃饭」的指令,而在RISC里,则是「勺饭」-> 「送嘴里」-> 「咬」。那有人会说,RISC岂不是比CISC差?其实不是,例如上面的例子,指令变成了「吃菜」,那么CISC就需要添加一条叫「吃菜」的指令,而在RISC里,只需要把「勺饭」变成「夹菜」即可。可见,RISC具有更好的灵活性。所以我们可以总结下两种架构的特点:
由上可见,很难说这两个架构谁好谁差。事实上,这些年复杂指令集的x86开始向精简指令集发展,关于CISC和RISC的区分已经慢慢的在模糊,有点「取长补短」的意思了。
上面见到的几个架构,我们听得最多的是X86和ARM,分别是复杂指令集和精简指令集内的代表。但为啥这些年RISC-V就成了新的探索方向呢?
我们都知道,X86和ARM架构已经经过了几十年的发展,积累了厚厚的专利墙,这使得在这两个方向上,我国在芯片技术上被卡脖子风险大。说到卡脖子,大家都会想起14纳米、7纳米、5纳米工艺,但其实架构上也容易被卡。例如华为虽然拿到了ARM的永久授权,但仅仅是其中的一个旧版本,而新的架构ARM已经不再授权给华为了。而Intel作为美国公司,也很难排除卡咱们脖子的可能性。
所以我国很多科技公司把目光投到了开源的RISC-V上。这里让我们重新回到问题上,我们可以尝试回答下面三个问题,来解释RISC-V对科技自主起到哪些作用。
RISC-V是真的完全开放。在《开放指令集与开源芯片发展报告》(参考[1])里提到,RISC-V指令集是免费开放的,使用 BSD License(允许使用者修改和重新发布代码,也允许使用或在BSD代码上开发商业软件发布和销售),具有允许任何人使用的许可证。例如前面提到华为拿到arm旧版本,没法拿到新版本授权,而对于RISC-V,没有谁能禁止华为使用。
况且在RISC-V领域,我国芯片企业已是实力最强劲的一股势力。例如RISC-V基金会成员最高级别会员中[2],我国公司占比过半。RISC-V的最高级别会员是Premier Member,这个级别的会员在董事会、技术指导委员会中占有一席之地中。可以看到,在最高级别会员中,除了Google, SiFive, Western Digital这三家公司之外,其他11家都是我国的公司或机构。
我国的公司和机构不仅在RISC-V基金会上很活跃,而且在RISC-V的技术路线上,我国企业布局也很积极,例如:
所以,RISC-V是当下我国自研芯片的最佳方案。
当然,RISC-V也不是我国公司的专属,例如Premier Member的那三家外国公司,Google, SiFive, 西数。除此之外,很多公司也在技术上探索RISC-V架构,例如苹果也招聘了RISC-V高级程序员; NVIDIA也在研究RISC-V,并设计了一款深度神经网络加速器 。所以,我国企业积极参与到RISC-V中,不仅能帮助建立开放的生态,甚至还有机会从中制定行业标准。
关于精简指令集,除了前面提到了的ARM和RISC-V,还有人会提起失败过的MIPS。有的人担心,RISC-V的命运会不会和MIPS一样?
MIPS曾经炙手可热,而MIPS失败的原因,业内普遍认为主要是商业问题,错过了移动化浪潮;而RISC-V是绝对开放的,被认为芯片届的Linux,众多巨头在探索,最重要的是,因为功耗低 、体积小,使得RISC-V在物联网,AIoT等领域的商业化做得不错。虽然没人能保证RISC-V会100%成功,但我们能看到RISC-V的前景,也有过去失败的经验可以吸取,这确实是一条值得探索的路。
在目前全球格局下,RISC-V是当下我国自研芯片的最佳方案。
但并不是说在这个方向光靠研究领先就可以真正实现科技自主的,没有应用,没有生态,那就是纸上谈兵。可喜的是,我们看到在物联网,边缘计算等领域,RISC-V有着广阔的应用空间。
最后补充下,我并不认为RISC-V能一统江湖,毕竟X86和ARM架构有着其独特的优势。但起码在RISC-V领域,我国的科技企业能走出一条新的路子,助力我国实现科技自主。我相信,未来2-3年,随着边缘计算和IoT的发展,RISC-V高性能应用在服务器、移动端及车载电子等领域将会有更多实现。
这次舆论的重点在于警察到底是多久赶到的。
没拜码头,收保护费,打砸门面这种原因我们都知道,也不怕;
但是公权力私用或者黑白勾结这种事,就会让人非常害怕;
如果西安公权力真的黑白勾结,还睁眼说瞎话,那就需要处理整顿了。
我朝的治安也不是一直这么好的,人民也不是软弱无比的,60年代西安打的也很凶的。难不成西安各公司以后都要雇佣保安公司保护经营?
这次出警距离1公里,走路10分钟都到了,所以就坐等这次真实的出警时间是多少了。