不久前,龙芯发布了自主指令集LoongArch和基于LoongArch设计的3A5000,与MIPS彻底分道扬镳。从龙芯最初基于MIPS添加指令,到发展出基于MIPS的LoongISA,再到最新的LoongArch,龙芯的目的是非常明确的,也是显而易见的,那就是尽一切可能掌握主导权,坚定不移走自主之路。
MIPS的兴起与衰弱
把时间轴往回拨半个世纪,全球CPU是CISC处理器的天下,直到RISC处理器异军突起,在这一波RISC处理器大潮中,MIPS无疑是时代的弄潮儿。从创立MIPS至将公司出售给SGI,MIPS先后设计了R2000、R3000、R4000等产品,其中不乏商业上大卖的产品,SGI、索尼等公司都曾经是MIPS的大客户。
MIPS的衰弱主要还是没能把握住两次发展机遇和之后多次转卖元气大伤。第一次是RISC处理器在和CISC处理器竞争中失利。第二次失利则是没有抓住智能移动设备崛起的契机。
由于MIPS江河日下,资本必然选择适时套现,2013年,英国Imagination公司以6000万美元价格收购了MIPS公司,在这次收购中,MIPS 498项专利已经以3.5亿美元的价格出售给Bridge Crossing LLC集团。
2017年,因苹果宣布弃用PowerVR GPU,Imagination股价下跌70%,面对危局,Imagination只能断臂求生,MIPS被剥离由美国加州投资公司Tallwood 持有。之后,Wave Computing又从Tallwood买下了MIPS。之后,Wave Computing破产了,在Wave Computing破产重组之后,公司更名为MIPS Technologies,放弃了MIPS处理器的研发,投入RISC-V阵营。
由于MIPS这些年一直处于反复被专卖的“阵痛”中,目前,MIPS在国内的生态基本是龙芯及其合作伙伴在维护,在近十年的时间里已经形成了自己的特色,已经取得了MIPS桌面和服务器生态的主导权。
LoongArch自主研发不存在侵权风险
早期,龙芯基于MIPS设计CPU,之后不断添加指令,在十多年里,龙芯基于MIPS进行添加了1000多条指令形成了LoongISA,3a4000以前的CPU都是基于LoongISA。
不过,MIPS毕竟是一家美国公司,存在发展上的未知风险。加上MIPS是第一款商用RISC处理器,由于一直保持向下兼容,积累了很多历史包袱,很多被人诟病的问题由于保持兼容的原因一直未修改。在技术飞速发展的大背景下,仅仅基于MIPS进行添加指令已经无法满足龙芯的需求。在外在风险和内在需求的双重刺激下,龙芯开发自主指令集LoongArch。
由于不少人怀疑LoongArch又是龙芯基于MIPS魔改,铁流特意向一位中科院计算所研究员求证,获得的回复是“LoongArch自定义指令集,通过二进制翻译技术兼容MIPS”。该研究员是RISC-V的支持者,为RISC-V在中国的推广做出了巨大贡献。有鉴于这位研究员与龙芯没有任何利益关系,其表态可靠性极高。
不久前,龙芯公开了《龙芯架构参考手册(卷一:基础架构)》。
从公开资料来看,单单指令编码格方面,LoongArch和MIPS完全不同。当然,不同的地方还有很多,大家可以自行下载比较。
要是从指令的设计风格来看,与其说LoongArch与MIPS相似,还不如说它与RISC-V更加相似。LoongArch架构有多个版本,包括LoongArch64、LoongArcn32,以及LoongArch32精简版。其中LoongArch32精简版主要用于教学实验和嵌入式,对标的就是RISC-V,一位名叫“歌迷你妹”的网友做了一张LoongArch32精简版和RISC-V的对比表格,具体如下:
芯联芯之所以连续发声明,主要是龙芯和芯联芯之间的矛盾不可调和。
龙芯和芯联芯之间的矛盾归根结底是龙芯放弃MIPS,采用LoongArch自主指令集。对于芯联芯而言,才买下MIPS在中国的经营权,而原本MIPS在中国的大客户就自立门户,另起炉灶采用LoongArch自主指令集。这对于芯联芯来说是不可调和的矛盾。
由于目前芯联芯公司规模较小,公司刚刚成立不久,人才培育、队伍建设都无法与成熟的CPU公司相提并论,这样一来,芯联芯在短时间内很难完成高性能CPU的设计,这就使其在最近1-2年内只能以帮MIPS卖授权来盈利。与此同时,MIPS在中国最大的客户龙芯自立门户,这对于芯联芯而言无疑是当头一棒。
必须说明的是,芯联芯的指责是站不住脚的,从芯联芯公司的声明中看,根本不知道龙芯是否侵犯了“专利”,甚至连是否侵犯了“知识产权”,到底侵犯了什么“知识产权”也不清楚,在龙芯发布《卷一》后,反而要龙芯公布《卷二》和《卷三》,要求龙芯“自证清白”。按照法律上“谁主张,谁举证”的惯例,芯联芯的做法和碰瓷无异。何况芯联芯至今没有公布自己公司的财务情况和人员情况,反而要求龙芯去公布这公布那,这是非常奇怪的。
(芯联芯公司法定代表人为何薇玲,台湾人,早年在美国硅谷工作)
在龙芯和芯联芯互发声明之后,原本认为相对可靠的MIPS,在风险上已经上升到X86和ARM一个等级,在RISC-V珠玉在前的情况下,新晋玩家为何不选择RISC-V呢?
就龙芯而已,必然加速与MIPS做切割,特别是基于LoongArch的龙芯5000系列问世之后,龙芯与MIPS切割并不存在多少包袱,反而可以轻装上阵,逐步基于LoongArch建立自主生态。在失去龙芯这个MIPS阵营的大玩家之后,必然会加速MIPS在中国大陆的衰亡。同时,君正估计也会掂量掂量MIPS背后的风险,三思而后行,不排除君正将来押宝RISC-V处理器,事实上,君正已经有这方面的尝试了。
LoongArch必然崛起
为了推广LoongArch指令集,加速LoongArch生态的建设,龙芯计划建立自主指令集联盟,联盟成员都可以免费获得自主指令集的使用权。今年将与10所高校合作,围绕自主指令集进行教学和研究,以及基于精简版本的指令集开展CPU设计实验。龙芯还计划向联盟成员开源部分CPU核心设计,这些核心的最高性能达到ARM A53的水平,这比只开放指令集的RISC-V更有魄力。这些举动将有助于增强国内整体的CPU设计水平,降低芯片行业的产品研发成本,提高生存和参与国际竞争的能力。
就软件方面,龙芯自己维护了Linux内核的龙芯分支,以及大量基础库和开源软件,并欢迎任何开发者参与开发和优化。龙芯给各种Linux发行版提供一致的内核,以保证各种发行版与龙芯的CPU有最佳的兼容性,并在使用龙芯CPU的电脑上有几乎同等的性能表现,但龙芯本身并不参与国产操作系统的竞争。龙芯为软件开发人员编写了大量教材,以及开展各种专题讲座,降低了在龙芯电脑上开发和移植软件的成本,保持和提高软件行业自主创新的主动性。
龙芯向各个硬件合作企业提供CPU和芯片组产品,以及主板设计方案,但本身并不生产和销售主板,更加不会像Apple那样成为整机商,以保证产业链中各级企业的利益不会被侵犯。对于各种嵌入式应用,龙芯还提供了大量成套的设计方案,和丰富的技术支持,既有利于推广龙芯产品,也能缩减合作企业的研发成本。龙芯在重点地区兴建了不少产业园,有利于产业链企业区域化集中,降低物流及各企业协作成本,缩短新品研发的周期。龙芯为了信息技术产业的自主已经做了许多工作和准备,相信在众多企业的共同努力下一定能有所作为。相信借助信创的东风,龙芯3A5000将有机会大放异彩,LoongArch也将随着大时代乘势而起。