今天小枣君给大家介绍一个开源的东西,就是现在半导体界的网红RISC-V,被很多人称为“开源芯片”。说到芯片,自从中兴通讯被美国禁运以来,国人对芯片的关注度提升到了前所未有的高度。似乎一夜之间,所有人都知道了芯片的重要性,也意识到了“芯片荒”的后果有多么严重。今年,华为再次被美国政府盯上,列入实体清单,再次引发全国对芯片自主研发能力的关注和讨论。在内外因素的综合作用下,国家重点加强了对芯片领域的投入,越来越多的企业开始重视芯片研发的投入。而RISC-V,在这个关键节点,很可能会起到非常关键的作用。RISC-V到底是什么?RISC-V,一般读作:风险五。V是罗马数字5,很多人一提到RISC-V,就会说它是一款开源芯片。其实这个说法是错误的。准确地说,RISC-V是一种基于“精简指令集(RISC)”原理的开源指令集架构。不要害怕!我可以通俗地解释一下!——指令集,对于CPU来说,是介于软件和底层硬件之间的程序指令的集合。指令集存储在CPU内部,指导CPU进行计算,帮助CPU更高效地运行。PC电脑中的CPU芯片(中央处理器)现在我们常用的台式电脑或服务器主要使用Intel和AMD的CPU。这类CPU使用的指令集属于“CISC复杂指令集”。CISC是ComplexInstructionSetComputer(复杂指令集计算机)。CPU可以支持多种指令集。早期计算机的CPU都是基于CISC架构的。那时候编译器技术还不熟练,程序都是直接用机器码或者汇编语言写的。为了减少程序的设计时间,逐渐开发出指令单一、运算复杂的程序代码。设计人员只需要写下简单的指令,然后交给CPU执行即可。但后来发现整个指令集中只有20%左右的指令经常被使用,约占整个程序的80%;其余80%的指令只占整个程序的20%。(Typical28principle)于是,1979年,加州大学伯克利分校的DavidPatterson教授提出了RISC的思想,主张硬件应该集中精力加速常用指令,更复杂的指令应该使用常用指令组合.RISC是ReducedInstructionSetComputer,一种简化指令集的计算机。简单地说,CISC具有很强的任务处理能力,适用于台式机和服务器。但是高性能也带来了高功耗的问题。RISC通过简化CISC指令的类型和格式,简化寻址方式,达到节能高效的效果。适用于手机、平板、数码相机等便携式电子产品或物联网产品。80年代,ARM开始自己做基于RISC架构的芯片,最终一步步崛起,打败英特尔,成为现在的移动芯片之王。如今,包括华为麒麟、高通骁龙在内的大部分手机终端和物联网设备芯片都是基于ARM架构设计的。注意我说的是ARM的架构,不是ARM的芯片产品。ARM的商业模式很特别。它做的是芯片架构设计,相当于画工程图纸,然后把图纸卖给各大芯片制造公司,比如华为。这些公司根据这张原始图纸进行修改,最终设计出自己想要的芯片,并交付给芯片厂(如台积电)进行生产。当然,ARM的图纸不是免费的。它不仅不是免费的,而且非常昂贵。据网上资料显示,ARM的授权费用从几十万美元到数亿美元不等。法国一家芯片初创公司在接受媒体采访时表示,如果他们使用ARM架构,他们将不得不花费1500万美元的授权费。(这个回答后来被ARM否认了,反正反正也不便宜。)如今随着5G、物联网、人工智能等技术的蓬勃发展,越来越多的企业开始为各种产品生产制造服务垂直行业的终端和模块。这也意味着,越来越多的企业将被迫接受ARM或其他芯片巨头的“盘剥”。大公司说交钱就交钱还好,但对于很多中小企业甚至初创企业来说,这几乎是彻底关上了进步之门。这时,有人勇敢的站了出来。2010年,加州大学伯克利分校的一个研究团队准备启动一个新项目。在为新项目选择指令集时,他们发现x86指令集被Intel牢牢控制,ARM指令集的许可费用非常昂贵,MIPS、SPARC、PowerPC也存在知识产权问题。在这种情况下,研究团队毅然决然地决定从头开始设计一套新的指令集。在外人看来,这是一项艰巨的工作。但实际上,伯克利的研究团队只召集了一个4人的团队,用了3个月的时间就完成了RISC-V指令集的开发。虽然看起来很容易,但其实是有前提的。RISC-V之所以是V(Five),是因为它之前有过I、II、III、IV。负责带领团队开发这些RISC指令集的不是别人,正是伯克利的DavidPatterson教授。如果你期待这篇文章,你会发现他才是RISC指令集真正的奠基人。正式提出简化指令集设计思想的开创性论文——《精简指令集计算机概述》是他与另一位名叫Ditzel的学者共同发表的。大卫帕特森教授后来获得了图灵奖。正是因为有相关的技术沉淀,伯克利团队才能够在短时间内做出RISC-V。第一代RISC-I处理器早在1981年就产生了。RISC-V指令集非常紧凑灵活。它的第一个版本仅包含不到50条指令,可用于实现具有定点运算和特权模式等基本功能的处理器。如果需要,用户还可以根据自己的需要定制新的指令。高校毕竟是高校,功利性没有那么重。再加上研究团队本身真的没钱也没人维护。因此,研究团队在做出RISC-V指令集后,决定将其完全开放,使用BSDLicense开源协议。BSD(BerkeleySoftwareDistribution)开源协议是一个自由度非常大的协议,几乎可以说是“随心所欲”。它允许用户修改和重新发布开源代码,也允许基于开源代码开发和销售商业软件。这意味着任何人都可以基于RISC-V指令集设计和开发芯片,然后无需支付授权费就可以卖钱。这非常令人振奋,一大批公司开始加入到RISC-V的研究和二次开发中来。在短短几年内,商业公司包括谷歌、华为、IBM、美光、英伟达、高通、三星和西部数据,以及加州大学伯克利分校、麻省理工学院、普林斯顿大学、苏黎世联邦理工学院、印度理工学院、学术机构等洛伦兹国家实验室、新加坡南洋理工大学、中国科学院计算技术研究所都加入了RISC-V基金会。目前,RISC-V基金会共有会员单位235家,其中白金会员18家(数据截至2019年7月10日)。这些成员单位包括半导体设计制造公司、系统集成商、设备制造商、军工企业、科研机构、高校等各类组织,足以说明RISC-V的影响力正在扩大。前文提到,RISC-V对我国的芯片事业意义重大。长期以来,我国的芯片研发一直受制于人。如果国内企业或科研机构能够利用开源的RISC-V做出具有基本自主知识产权的芯片,或者培育出相应的生态环境,将大大有利于中国半导体产业的弯道超车。因此,包括中科院计算所、华为、阿里巴巴集团在内的国内20多家企业和机构选择加入RISC-V基金会。阿里也是其中的白金会员。2018年7月,上海经信委出台了国内首个支持RISC-V的政策。10月,中国RISC-V产业联盟成立。在产品方面,中天微和华米科技相继发布了基于RISC-V指令集的处理器。黄山一号(华米)基于RISC-V开发,是全球首款可穿戴领域的人工智能芯片。我们的邻国印度对RISC-V的热情更高。过去几年,印度政府资助的处理器相关项目开始向RISC-V靠拢。RISC-V已经成为印度的国家指令集。RISC-V的快速发展给ARM这样的公司带来了不小的压力。去年6月,ARM建了一个网站,域名为riscv-basics.com。内容主题为“设计系统芯片前需要考虑的五件事”,从成本、生态系统、碎片化风险、安全性等方面对RISC-V的攻击对设计保障进行了探讨。RISC-V针锋相对,建了一个域名为arm-basics.com的网站,名为“SixThingstoConsiderBeforeDesigningaSystemChip”(在ARM列出的五项上,增加了社区支持),对抗ARM。几天后,ARM的riscv-basics.com网站悄然下线。虽然RISC-V赢得了这次短暂的“撕逼”,但ARM提出的五个方面也并非完全没有道理。尤其是碎片化问题,作为开源技术,RISC-V确实难以回避。(碎片化:由于RISC-V允许用户任意添加新的指令,但如果这种趋势持续下去,未来可能会有很多芯片厂商开发RISC-V架构的处理器,虽然它们都属于同一个RISC-V系统.实际应用匹配时,不能适配同版本软件。)总而言之,RISC-V可以看作是一个充满活力的年轻搅局者。指望它能在短时间内与传统巨头抗衡是不现实的。但它举起了打破垄断的大旗,为沉闷的行业生态注入了新鲜的活力。值得我们鼓掌和学习。星星之火可以燎原。也许这个剧透以后真的会成为领头羊,但也不一定。
