黑马问大家一句,你知道你的手机搭载的是什么型号的芯片吗?
是苹果A16?还是骁龙8 Gen2?天玑9200?麒麟9000?……
事实上,不论你是用的高通骁龙的芯片,还是用的华为麒麟的芯片,都离不开ARM架构。
准确的说,世界上95%的智能手机的芯片,都是基于ARM架构,然后再进行深度定制的。
全球三大芯片架构,一是高通骁龙、华为麒麟等移动芯片采用的ARM架构,二是Intel、AMD等计算机处理器采用的X86架构,还有一个就是——MIPS架构。
相比ARM架构和X86架构,MIPS架构并没有那么出名。但是国内中科院计算所此前研发的“中国第一芯”——龙芯一号,就是采用MIPS架构的典型代表。
图为全球三大芯片架构,图片截自B站UP主@老村长科普
由于MIPS公司的MIPS技术授权费用相对比较便宜,所以早年的龙芯从MIPS公司进口了大量相关专利技术的授权。同时,龙芯也在不断地尝试着自主研发。
但是,也就是龙芯从MIPS公司手上拿到的MIPS技术授权,在后来成了祸端。
龙芯中科,终于把官司打赢了!
事情是这样的,2019年,MIPS公司的母公司Wave Computing,把MIPS公司在中国的独家经营权卖给了上海芯联芯公司。
同时MIPS公司还把和龙芯的技术许可合同,在没有通知龙芯中科并且获得后者许可的前提下,一并转让给了芯联芯公司。
这个时候,Wave Computing、MIPS、芯联芯就联合发了一封函,要求龙芯中科把版税费交给芯联芯公司。对了,龙芯中科可是MIPS公司在中国的最大客户。
但是,值得圈重点的是——芯联芯和龙芯中科之间是没有签署任何合同的。
图为MIPS状告龙芯中科产品3A5000侵权MIPS指令集
而后,龙芯中科又了解到芯联芯和MIPS正在美国打官司,紧接着MIPS就宣告了破产。这就让龙芯中科心里有点发毛:这版税费我是交还是不交?交给谁?
虽然龙芯中科多次尝试着联系MIPS希望给个回话,但是一直就是联系不上。
于是乎,这版税费问题,也就一直这么搁着。
不过,就在2021年,芯联芯把龙芯中科告上了香港国际仲裁中心,并且提出了 7 项仲裁主张。
同时,芯联芯在仲裁中提出,龙芯中科违反了与 MIPS Tech, LLC 签署的技术许可合同,存在:
(1)使用了技术许可协议授权范围外的 MIPS 技术
(2)产品对 MIPS 架构进行了未经授权的修改和变更
(3)在技术许可协议到期后继续使用授权技术
(4)未返还保密信息
(5)少报版税
(6)未经同意将技术再授权给其他方
(7)泄露保密信息。
龙芯OS:我寻思就只有一个版税费问题,怎么就能被扣上这么多顶帽子呢?
事实上,香港仲裁中心最新的仲裁结果也是如此,芯联芯提出的 7 项仲裁主张中有 6 项被驳回,1 项被判定为尚待解决事项。
这唯一一项尚待解决事项,就是第5项少报版税,也确实是龙芯中科的问题。
最后香港仲裁中心在裁决书中指出,根据仲裁庭的调查结果,龙芯中科没有犯错且未造成损害,其所应做的是支付未付版税以及适当金额的延迟支付费用。
事情到这,也算是告一段落了。
不过,黑马要插一句话,这场官司虽然明面上各有胜负的点,但实际上最后的赢家其实是龙芯中科。为什么呢?
因为当龙芯中科在最开始陷入和芯联芯MIPS版税纠纷,还没有和芯联芯打官司的时候,他就放弃了MIPS架构。
2020年,龙芯中科就发布了自主指令集——LoongArch(龙架构),还推出了相当多基于LoongArch的CPU产品。
而这一次,芯联芯剩下那6项被驳回的仲裁全都是冲着LoongArch来的。而这一驳回,刚好在一定程度上证明了LoongArch的自主性。
所以,这对于龙芯中科来说,也算是一种好事。毕竟国内能够自主研发出架构的可不多,大部分都是从国外买的授权,麒麟芯片就是。
基于LoongArch,国产系统生态崛起
平时,我们经常听到:这一款芯片基于某某某(ARM、X86、RISC-V等)架构。实际上这里的架构一般都是指的指令集架构。
这玩意儿怎么理解呢?确实是有点抽象。
它就是拿来对CPU下达操作指令的代码集。这么说吧,指令集架构就像一套语言系统。不同的指令集架构就是一套不同的语言系统。
打个比方,黑马是四川人,说四川话,把“红薯”说成“红苕”。黑马有同事在东北待过,学了一口正宗东北话,把“红薯”说成“地瓜”。
但是实际上这东西本质上还是一个东西。但是因为在不同的语言系统中有不同的称号。而指令集架构说白了就是自己那一套惯用的语言系统。
这也就导致了一个问题,两种指令集之间很难匹配兼容,只能通过转译传达。
并且由于指令集不同,所以操作系统和软件生态无法通用。
比如基于X86架构的Windows系统生态和基于ARM的系统生态(比如安卓)就无法通用。所以这就是一个很大的问题。
而为了搭上ARM生态的便车,即使是苹果和华为,这种能够自研芯片,可以设计CPU IP核的厂商都不得不向ARM低头。
而且指令集是会不断更新的,也就是说ARM现在可以永久授权给华为ARM-V8,但也可以在未来再也不授权给华为ARM-V9。
这真的是把大家的命脉拿捏得死死的。
所以国产指令集有多重要?大家也差不多明白了吧。
图片源自巨潮WAVE
当然,指令集其实很多厂商都有能力开发。这不算最难的事情,最难的是让大家认可这套指令集,愿意为了它写软件应用,开发和应用操作系统和软件生态。
所以,龙芯先自己根据Linux开源系统(iOS也是这么干的),然后配合上自己的自主指令集LoongArch,最后开发出了自己的自主操作系统——Loongnix。
至此,龙芯中科已经手拿“自研指令集+自研芯片+自主操作系统”三张王牌。
但是,难就难在龙芯要怎么把Loongnix推出去?这一套系统到目前为止的知名度其实并不高。主要还是政府机关等单位内部在用,毕竟这是中科院背景。
比如说,在乡镇的学校等单位,以及医院的收费系统上,有很多接入了它。
此外,阿里的龙蜥OS、华为的开源欧拉等都对LoongArch架构进行了支持。
写在最后
从中国第一枚拥有自主产权的芯片到中国国内少有的国产架构,龙芯这二十年,确实做到了二十年磨一剑,一直深耕国产CPU领域。
在国产芯片世界起起伏伏,虽然龙芯拿到的科研经费并不多,甚至可以说是一定程度上的“白手起家”,但他的坚持也得到了认可。
只不过,这还只是中国芯片的第一步。龙芯也仅仅是撕开了一点点缝隙,透了点光,未来的路依旧相当漫长,还有太多硬仗要打。
除了国产芯片和指令集架构,国产操作系统和软件生态,也是一片急需发展的空白领域。还有太多,都是龙芯们接下来的历史重担。