RISC-V会被卡吗?那么你觉得C语言会不会被卡? | 包云岗

来源: 风云之声

本文是对于知乎问题《从技术的角度来看,RISC-V 能对芯片发展、科技自主起到哪些作用?》的回答

(https://www.zhihu.com/question/425542531/answer/1607862976)。

一、关于RISC-V的一些解读

看到很多回答都答得很好,有一些回答还引用了我们以前写过的一些解读。在这里重点推荐大家阅读这篇文章《关于RISC-V和开源处理器的一些解读》关于RISC-V和开源处理器的一些解读(关于RISC-V和开源处理器的一些解读):

该文对处理器的指令集、微架构实现与开源模式等概念以及和RISC-V的联系等进行解读。以下为几个要点:

  • 指令集规范(Specification)和处理器实现(Implementation)是两个不同层次的概念,要区分开。指令集(ISA)是规范标准,往往用一本书或几张纸来记录描述,而处理器实现是基于指令集规范完成的源代码。RISC-V是一个指令集规范。

  • 我们可以基于x86/ARM/ RISC-V指令集,进行处理器微架构设计和实现形成源代码,并通过流片最终形成芯片产品。其中指令集规范与处理器实现的知识产权是独立的,不能混为一谈。(详见原文第二、三节)

  • "RISC-V是开源的"表示指令集规范是开源、开放和免费的(open and free),这与x86与ARM指令集有本质不同,但并不是指具体的处理器实现也都是开源免费的。

  • 基于RISC-V指令集规范,既可以由开源社区来开发开源免费版的处理器实现(如Berkeley开发的Rocket核等),也可以有商业公司开发收费授权版的处理器实现(如国内平头哥玄铁910、芯来N200核与优矽渭河WH-32核等)。(详见原文第三节)

作为上文的总结,强烈推荐仔细研读以下这张表(详细解读参见原文第三节):

图1. 指令集、微架构设计和产品之间的关系分析

一点补充,重要的事情再说三遍:

指令集规范(Specification)与处理器实现(Implementation)是两个不同层面的概念!
指令集规范(Specification)与处理器实现(Implementation)是两个不同层面的概念!
指令集规范(Specification)与处理器实现(Implementation)是两个不同层面的概念!

下面可以做几道判断题来检验一下是否理解上述概念:

  • X86是一种指令集规范?

  • 苹果M1牛是因为采用了ARM指令集?

  • 国产处理器的实现和国外还有差距?

  • 几个月就可以定义一个新指令集?

  • 根据指令集规范实现一个处理器不容易?

  • 给定一个指令集只有一种处理器实现?

  • 可以给一个处理器实现换一个指令集?

答案:Yes、No、Yes、Yes、Yes、No、Yes

关于最后一个问题,多说几句。当具备了处理器实现能力,换一个指令集其实是很容易的事。比如龙芯最近能在很短的时间内就从MIPS切换到自定义的LoongArch指令集。因此,处理器芯片领域的核心竞争力是处理器设计与实现能力。

指令集的重要性体现在生态建设上。指令集向上承载的是整个软件生态,向下则规范了以处理器芯片为代表的整个硬件生态。定义一个新指令集本身并不是一件难事,但更重要的是如何能吸引整个业界乃至全世界一起来共同建设生态,这需要一种开放共享的理念作为基底。这也就引出了下一个话题——为什么会出现RISC-V?为什么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!”

图2. 不同领域均存在开放标准,以及相应的开源实现与商业实现。而在处理器领域,一直以来指令集规范/标准都是公司所有,没有开放标准

很少有人会问“操作系统Syscall标准会不会被卡”、“C语言语法会不会被卡”、“SQL语言标准会不会被卡”,因为大家理解了在这些领域里标准和实现的区别。而对于处理器指令集,还会需要一点时间来改变大家的传统的观念与认识。

关于RISC-V的起源以及理念,推荐阅读Krste Asanovic和David Patterson在2014年8月发表的一篇观点文章。2015年2月的《中国计算机学会通讯》上全文刊发了中文版《指令系统应该免费:RISC-V的案例》

图3. RISC-V观点文章的中文版

三、RISC-V的潜在风险点

(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领域可能的三种标杆事件:

  1. 用RISC-V研制一台超级计算机,进入Top500前十,甚至更高的排名(目前欧洲启动了EPI项目,用RV做E级超级计算机);

  2. 用RISC-V做服务器芯片,在一些头部企业得到规模应用,并呈现较好的效果;

  3. 用RISC-V做一款手机芯片,解决手机生态问题,实现发货量达到百万级甚至千万级。

因为RISC-V的开放性,所以全世界范围内已经有多方力量都在这三方面积极推进,这里面存在着竞争。但是这种竞争正是构建生态过程中需要存在的积极要素,是正常的、合理的,也应该鼓励的, 就如David Patterson教授在一个采访中提到:

“因为RISC-V是开放的,我们将看到所有这些竞争。也许是由于所有竞争,我们开始在设计领域看到一些真正有趣的创新想法。”

事实上,Linux发展过程中其实也存在群雄逐鹿的阶段,这可以从一个侧面来反应。例如2000年左右,仅Intel就投资了6个Linux初创公司:

  • 1998年:Red Hat、VA Linux Sytems

  • 1999年:eSoft、SuSE

  • 2000年:TurboLinux

  • 2002年:Scali

因此,从构建整个生态角度来看,应该很高兴看到有更多力量参与到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。从国家高层在多个场合的发言来看,是强调要在开放环境下去提高自主能力。先看两个新闻:

  • 2020年11月3日发布的《关于<中共中央关于制定国民经济和社会发展第十四个五年规划和二〇三五年远景目标的建议>的说明》中提到了五条原则,第三条便是开放和自主的关系:

一是处理好继承和创新的关系,做好“两个一百年”奋斗目标有机衔接。
二是处理好政府和市场的关系,更好发挥我国制度优势。
三是处理好开放和自主的关系,更好统筹国内国际两个大局。
四是处理好发展和安全的关系,有效防范和应对可能影响现代化进程的系统性风险。
五是处理好战略和战术的关系,制定出一个高瞻远瞩、务实管用的规划建议。

  • 2020年11月19日,亚太经合组织工商领导人对话会又进一步明确指出,开放是国家进步的前提,封闭必然导致落后。中国早已同世界经济和国际体系深度融合。我们绝不会走历史回头路,不会谋求“脱钩”或是搞封闭排他的“小圈子”

从国家层面来看,一方面要需要自主,另一方面希望开放,不谋求“脱钩”、不搞封闭排他的“小圈子”。那么对于这两个看似矛盾的目标,如何能统筹?如何能在不搞封闭排他的“小圈子”的同时,还能达到自主的效果?

(2)实现自主的两种思路

对于自主,国内不少人认为是应该自己另搞一套,应该实现与美国完全脱钩,这是一种思路。而国内的产业界很多支持融入到国际开放竞争环境中,在开放框架下去争取主导权,这是另一种思路。在当前的中国,两种思路都有成功案例:北斗属于第一种思路,5G则属于第二种思路。

具体到指令集,应该采取哪一种思路?因为每个人对信息的收集与获取、事物发展规律的认识不尽相同,因此不同的人会有不同的判断,做出不同的决策,选择不同的思路,这是很正常的现象。根据中国的当前现状,会在一段时间内两种思路并存,比如龙芯在努力推动LoongArch指令集生态的构建(第一种思路),很多企业参与到RISC-V指令集生态的发展(第二种思路)。

第二种思路有时会受到不少质疑(包括知乎上的这个提问),很大原因还是因为对指令集规范与处理器实现概念的不了解。需要肯定的一点是,两种思路最终目标都是为了实现提高处理器生态的自主能力,都是希望能让中国发展得更好。

(3)酌古御今,重温中国计算机事业的创业史

分享一些中科院计算所筹建过程中的史料,来重温1950年代中国计算机事业的开拓者们如何处理“仿制”与“创新”这对矛盾。总结来说,两点决策:

  1. 先仿制后创新,仿制为了创新。

  2. 在中国本土仿制,而不是送人去苏联仿制。

可以说中国计算机事业的先驱们综合考虑了中国当时的学科基础、长远目标、经费开销等因素,做出了非常务实的决策,实现了中国计算机事业从零到一的突破。在我看来,老一辈先驱们的决策思路与理念,对于今天中国如何应对处理器芯片卡脖子问题,依然有重要的借鉴意义。

图4. 来源:博士论文《“以任务带学科”与中科院计算技术研究所的建立和早期发展研究》p45

图5. 来源:博士论文《“以任务带学科”与中科院计算技术研究所的建立和早期发展研究》p46

未来智能实验室的主要工作包括:建立AI智能系统智商评测体系,开展世界人工智能智商评测;开展互联网(城市)云脑研究计划,构建互联网(城市)云脑技术和企业图谱,为提升企业,行业与城市的智能水平服务。

  如果您对实验室的研究感兴趣,欢迎加入未来智能实验室线上平台。扫描以下二维码或点击本文左下角“阅读原文”

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/486090.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

easyui 调用dialog中的方法_SolidWorks中标准件库的创建及调用方法

在使用SolidWorks进行产品设计时&#xff0c;常用的标准件&#xff08;如螺栓、螺母、垫圈等&#xff09;通常可以在安装了SolidWorksToolbox插件后调出使用&#xff0c;而许多标准件在Toolbox并不存在&#xff0c;不能从插件中直接调用。在用到这些零件时&#xff0c;设计人员…

【测试设计】基于正交法的测试用例设计工具--PICT

前言 我们都知道成对组合覆盖是一种非常有效的测试用例设计方法&#xff0c;但是实际工作过程中当成对组合量太大&#xff0c;我们往往很难做到有效的用例覆盖。 PICT是微软公司出品的一款成对组合命令行生成工具,它很好的解决了上述的难题。使用它我们可以有效地按照两两测试的…

Alpha fold: 人工智能在蛋白质结构预测上跑赢人类的启示

来自孙卫涛科学网博客2020年12月&#xff0c;Alpha Fold2在CASP14上 获得了惊人的进步&#xff0c;其蛋白质结构预测的能力已经达到了与实验方法相媲美的程度&#xff0c;国内外该领域的专家学者都为之惊叹&#xff0c;同时也都感受到巨大的压力&#xff0c;人工智能首次把一个…

卷积神经网络爬虫实现新闻在线分类系统

卷积神经网络&&爬虫实现网易新闻自动爬取并分类 项目地址 采用THUCnews全部数据集进行训练&#xff0c;效果如下。 详细实现见./text_classification 部署步骤如下&#xff1a; 运行环境 服务器&#xff1a;Ubuntu 16.04 数据库&#xff1a;Mysql 5.6 python&#xf…

搞基础理论研究有什么用?

来源&#xff1a;数学中国人类文明的诞生是一个奇迹&#xff0c;构筑在现代科学技术基础之上的现代人类文明的诞生更是奇迹中的奇迹。这个奇迹中的奇迹的根基是现代技术及其广泛应用&#xff0c;而现代技术的根基则是现代科学&#xff0c;科学的根基是以数学为主要工具的基础科…

由内而外:大脑是如何形成感官记忆的

大数据文摘出品来源&#xff1a;sciencedaily编译&#xff1a;张大笔茹通常&#xff0c;大脑会对我们感官收集的信息进行编码。为了感知环境并与之进行建设性的互动&#xff0c;这些感官信号需要在以往的经验和当前目标的背景下进行解释。最新一期的《科学》杂志上&#xff0c;…

oracle clob截取_Oracle数据库设计规范建议

Oracle-数据库设计规范建议来源于项目资料目的本规范的主要目的是希望规范数据库设计&#xff0c;尽量提前避免由于数据库设计不当而产生的麻烦&#xff1b;同时好的规范&#xff0c;在执行的时候可以培养出好的习惯&#xff0c;好的习惯是软件质量的很好的保证。数据库设计是指…

揭秘美国空军如何用AI技术提升“战斗力”

以AI技术为基础&#xff0c;美国空军正努力将自身转化为更强调协作性的组织。来源丨Forbes作者丨Kathleen Walch编译丨科技行者通过增加数据规模与相关素养提升&#xff0c;美国空军各部门及人员&#xff0c;将建立起更强的决策、战略、任务执行以及网络安全保障效率与能力。以…

数字孪生:如何撑起一个万亿市场的产业变革?

来源&#xff1a; 脑极体 今天我们介绍一个在产业界如火如荼&#xff0c;但大众还非常陌生的概念&#xff1a;数字孪生&#xff08;Digital Twin&#xff09;。在解释这一晦涩难懂的概念前&#xff0c;我首先想到了一个人&#xff0c;前苏联著名的昆虫学家、数学家和哲学家——…

二、python框架相关知识体系

Django框架 1、django框架、flask框架和Tornado框架的区别&#xff1f; django框架&#xff0c;内置组件多&#xff0c;自身功能强大&#xff0c;是一个大而全的框架&#xff0c;ORM、Admin、中间件、Form、ModelFrom、信号、缓存、csrf等flask框架&#xff0c;内置组件少&…

Android跟web哪个好,比系统自带的WebView更好用 | AgentWeb

名称AgentWeb语言Android平台GitHub作者Justson在混合化开发大行其道的今天&#xff0c;安卓开发经常会用到WebView&#xff0c;用于加载网页。系统自带的WebView性能和流畅度都一般&#xff0c;今天给大家推荐一款第三方WebView&#xff0c;性能比系统自带的要好&#xff0c;功…

神经科学如何影响人工智能?看DeepMind在NeurIPS2020最新《神经科学人工智能》报告,126页ppt...

来源&#xff1a;专知Jane Wang是DeepMind神经科学团队的一名研究科学家&#xff0c;研究元强化学习和受神经科学启发的人工智能代理。她的背景是物理、复杂系统、计算和认知神经科学。Kevin Miller是DeepMind神经科学团队的研究科学家&#xff0c;也是伦敦大学学院的博士后。他…

科普长文揭秘生命为何会具有主观能动性

来源&#xff1a;混沌巡洋舰动物的免疫系统依赖于被称为巨噬细胞的白细胞吞噬并吞噬入侵者。这些细胞有着坚定的决心和热情: 在显微镜下&#xff0c;你可以看到一个像球状的巨噬细胞在玻璃片上追逐一个细菌&#xff0c;它的猎物试图通过红细胞的障碍物逃跑时&#xff0c;而在它…

Linux——Centos7网络配置1ens33文件

解决的是 Name or service not known 的问题 [rootwww ~]# ping www.baidu.comping: www.baidu.com: Name or service not known [rootwww ~]# 1、网络配置查看 记住NAT设置中的子网IP、子网掩码、网关IP三项&#xff0c;接下来配置文件主要是这三项。网关一般就是.2,ip设置为…

科技垄断正在朝着纵向发展

来源&#xff1a;CSDN译者&#xff1a;弯月以下为译文&#xff1a;科技垄断有关的话题&#xff0c;相信大家都不陌生&#xff0c;而纵向垄断指的是通过技术栈深入到硬件的纵向集成。在本文中&#xff0c;我们来讨论一下为什么当下科技垄断开始朝着纵向发展&#xff0c;这种垄断…

android10全局黑暗,传Android 11或加入自动切换全局黑暗模式功能

日前有外媒援引消息人士爆料称&#xff0c;谷歌曾在Android 10系统中带来了全局黑暗模式功能&#xff0c;但自动切换黑暗模式的功能却在Android 10系统的早期测试阶段意外遭砍&#xff01;而据最新消息显示&#xff0c;Android 11系统有望上线自动切换全局黑暗模式功能。按照An…

物理学走向尽头了?

制图&#xff1a;James OBrien作者&#xff1a;罗伯特戴克赫拉夫&#xff08;Robbert Dijkgraaf&#xff09;文章来源&#xff1a;环球科学物理学是否已经穷尽了人类探索的极限&#xff1f;亦或是才刚刚开始&#xff1f;普林斯顿高等研究所主任戴克赫拉夫给出了他的看法。物理学…

逆向工程-真码保存在系统文件破解QQ游戏对对碰助手

1&#xff09;注册栏中输入任意值测试 1.2&#xff09;记录弹出的关键字对话框 2.1&#xff09;发送至PEID进行查壳 2.2&#xff09;发现无壳 2.3)将软件载入OllyDBG程序 2.4&#xff09;在反汇编栏下右键选择中文搜索引擎-》智能搜索 2.5&#xff09;找到弹窗信息双击进入 3.0…

欢迎参加《城市大脑全球标准研究报告》发布会

《2020城市大脑全球标准研究报告》将与2020年12月23日在北京正式发布。这份报告是科学院研究团队基于城市大脑基础理论研究并与产业实践结合&#xff0c;形成的世界第一份城市大脑全球标准研究报告。欢迎新闻媒体、科研机构、科技企业、政府部门的记者&#xff0c;专家和领导参…

动态规划--Leetcode62--不同路径

一个机器人位于一个 m x n 网格的左上角 &#xff08;起始点在下图中标记为“Start” &#xff09;。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角&#xff08;在下图中标记为“Finish”&#xff09;。 问总共有多少条不同的路径&#xff1f; 例如&…