【少儿禁】马建《亮出你的舌苔或空空荡荡》

重磅!各种迹象证明中国经济进入大萧条

去泰国看了一场“成人秀”,画面尴尬到让人窒息.....

危险的大东北

清明时节一声吼:“加班?加个锤子!”

生成图片,分享到微信朋友圈

自由微信安卓APP发布,立即下载! | 提交文章网址
查看原文

历史性突破!龙芯公开LoongArch指令集:自主可控

晓磊 维科网电子工程 2023-01-11

胡伟武在进行 CPU 主板信号测试/来源:瞭望新周刊
集成电路是我国信息产业发展的核心领域,而CPU(中央处理器)则是集成电路中的核心元器件。国产CPU的发展一直是众人关注的焦点,如果没有CPU的国产化与自主化,国家信息安全将无从谈起。
但国产CPU的发展一直备受争议,它到底要走自主之路,还是走兼容之路?众所周知,“国产”一词本身就具备一定的争议性,有人说,国产就是指本国生产的东西。以中国为例,印有“中国制造”或“made in China”字样的就叫国产。但实际上,随着经济全球化的深入,国产的概念发生了变化,在手机业和汽车业,国产是指中国自主研发生产制造,或者零部件半数以上国产化的产品。尤其是在半导体芯片等高科技行业,对于“国产”一词的标准也要求更高。
从某种意义上来说,高科技行业的“国产”也可以理解为“自主可控”。拥有自主可控的CPU目前国内的企业可以分为两种,一种是借助国际上成熟的CPU核,比如华为海思,采用基于ARM的CPU核心来做自己的SoC(单芯片系统方案)芯片,这种方式的优势在于可以快速推出系统级芯片方案,但必须获取对方授权,如果再遇到之前美国对华为实施的技术制裁,悲剧难保不会再次上演。另外一类公司是目前真正意义上走自主之路的企业,比如龙芯,就一直基于自主设计的CPU核心架构进行研发并不断更新换代。

龙芯中科董事长胡伟武发表了《龙芯指令系统架构LoongArch解析》的演讲

视频源自-龙芯中科


CPU自主可控还存在两大“卡脖子”问题


在近日举办的第四届关键信息基础设施自主安全创新论坛上,龙芯中科董事长胡伟武发表了《龙芯指令系统架构LoongArch解析》的演讲,围绕自主信息体系建设,以及指令系统生态发展,进一步解读了龙芯最新发布的龙芯架构LoongArch。

可以说,龙芯推出的LoongArc指令集某种程度中解决了上文提到的国产CPU路线之争,那就是自主与兼容全都要。


(截图源自第四届关键信息基础设施自主安全创新论坛,下同)


在演讲前,胡伟武首先提出了一个关键问题,国产CPU发展速度很快,但自主可控度有待提高,现存的多款CPU,有从源代码开始就自己写自己研发的,还有引进技术的,以及通过合资公司等方式实现,而龙芯在这方面自主性最强,但还不够。

胡伟武还提出,目前CPU自主可控还存在两大“卡脖子”问题,一是指令系统架构受制于人,二是生产工艺受制于人。

胡伟武认为,自主体系建设的三个环节包括:基于自主IP核的芯片设计(CPU设计)、基于自主指令系统的软件生态(CPU应用)、基于自主材料设备的生产工艺(CPU生产)。



关于LoongArch指令集


当然,本次演讲中最受人关注的还是LoongArch指令集的情况,具体来看可以归结出如下特点:

1、LoongArch是全新的指令集,不是在 MIPS 上做的扩展。LoongArch包含基础指令 337 条、虚拟机扩展 10 条、二进制翻译扩展 176 条、128 位向量扩展 1024 条、256 位向量扩展 1018 条,共计 2565 条原生指令;

2、区别于MIPS,摒弃了部分不适合现代CPU的指令,又做了大量改进和扩展。例如单条指令支持的立即数从MIPS的最大16位扩展到最大24位,分支跳转偏移也从64K扩展到1M字节,以及寻址空间从固定分段改变为单一平面等,都有效减少了编译结果的目标指令条数和访存次数,提高了效能;

3、LoongArch保持了RISC指令集的特点,32位定长指令、32个通用寄存器、32个浮点/向量寄存器。MIPS只有3种指令格式,LoongArch重新设计了指令格式 ,使可用的格式多达10种 ,其包含3种无立即数格式和7种有立即数格式。重新设计的指令格式可以包含更多的指令槽,有利于以后的长远发展。LoongArch的指令系统在设计时,以先进性、扩展性、兼容性为目标。这也是胡伟武在演讲中指出的,LoongArch指令集还可以通过二进制翻译的方式兼容MIPS、ARM及x86处理器。


不过胡伟武也指出,对于指令集翻译,除了技术问题之外,最大的麻烦还是法律,不过现在也不是大问题了,龙芯找了国内外的知识产权团队作了梳理,哪怕是二进制翻译别的指令集系统,也没有专利权的纠纷。当然,翻译其他指令也面临效率问题,好在LoongArch对MIPS指令的翻译效率是100%,对ARM可以达到90%。最难的当属x86,在Linux下翻译的效率可达80%,Windows下的效率还要减少到70%,不过后续还会有更多的优化。

目前,LoongArch指令集已经通过了国内第三方知名知识产权评估机构的评估,并在2021年信息技术应用创新论坛主论坛上正式对外发布,将在龙芯的新款芯片3A5000系列上首发,这也就意味着龙芯的3A5000将成为首款全自主指令集的国产CPU。

胡伟武表示还,龙芯还会继续进行知识产权分析,并建立LoongArch上游社区分支,同时组建LoongArch联盟,联盟成员免费使用 LoongArch 指令集,联盟成员可以免费获得龙芯的低于 ARM A53 性能的那些CPU核心设计,联盟成员之间不发生指令系统诉讼。通过这些方式,一方面免费开放LoongArch,另一方面也要在高校推广,取代RISC-V。

中国为什么要打造自主CPU


实际上,在龙芯LoongArch指令集出来之前,也是采用“授权+自主指令集”的模式进行研发的。通过早期花钱购买MIPS架构授权,然后再在MIPS架构的基础之上,研发了自己的LoongISA指令集,形成兼容MIPS指令集+LoongISA指令集。

所以严格来讲,龙芯LoongISA指令集中含有MIPS架构,因此也并非100%国产,但相对于其它采用ARM、X86架构的国产CPU而言,还是更加的自主可控。而这也导致另一方面的问题,MIPS指令集是美国公司的产品,所以一定程度上也存在一定风险,于是后来龙芯做了一个决定,要研发出一套真正100%自研的指令集,彻底抛弃掉MIPS,真正做到完完全全的自主可控。

在近日央视《对话》节目中,龙芯中科董事长胡伟武也被问及“我们中国为什么要打造自主CPU?什么才算是自主?”时,胡伟武表示,“自主CPU关乎国家安全,涉及到产业发展。“自主”关乎到产业主导权和利润在谁手里,涉及到自主体系建设的三个环节。

一个是关乎国家安全,软件后门攻击一个国家的例子很多。按照习近平总书记的说法,在别人的地基上盖房子,再大,再漂亮,也经不起风雨,甚至会不堪一击。第二个是涉及到产业发展。2017年的时候,中国电子信息产业平均利润率是5.4%,中国工业平均利润是6.5%,我们的IT产业虽然大,但是基础不强。

外延就是说这个产业什么时候升级,这个产品怎么升级我得自己说了算,我不一定什么都自己做。从外延上看,它就是产业的主导权和利润,在我手里。从内涵上来说,一个产业体系分为三个环节。第一个是基于自主IP核的芯片设计。第二个是基于自主指令系统的软件生态。第三个是基于自主材料和设备的生产工艺。”


参考资料:

1、《做国家网信事业的坚强底座,龙芯中科胡伟武“419”论坛发表LoongArch深度解读》-龙芯中科

2、《龙芯详解LoongArch指令集:通吃MIPS/ARM/x86》-快科技



往期回顾


最新活动 


文章有问题?点此查看未经处理的缓存