CPU处理器|20年“炼出”国内首个自主CPU指令集架构 龙芯凭什么?( 二 )


CPU处理器|20年“炼出”国内首个自主CPU指令集架构 龙芯凭什么?
文章图片
2030年基本建成全球第三套CPU生态体系
龙芯能推出自主CPU指令集系统的9个能力
CPU指令系统是计算机的软硬件界面 , 是CPU所执行的软件指令的二进制编码格式规范 。
胡伟武说:“过去把指令系统和CPU芯片联系起来比较多 , 其实指令系统更多关系到的是软件生态 , 比如X86支撑Windows生态、ARM支撑Android生态 。只要把软件想清楚了 , CPU换指令系统并不难 。”
推出一个指令系统不难 , 难的是生态的构建 , 这是芯片业界的共识 。胡伟武说 , “我们敢于构建新的指令系统的生态 , 是因为过去20年的积累让我们掌握了9个能力 。”
这9个能力每三个分为一类 , 第一类是3个基础编译器 , 包括GCC、LLVM、GOLANG;第二类是三个虚拟机 , 包含Java虚拟机、JavaScript虚拟机、.NET虚拟机;第三类是二进制翻译系统 , 包括X86、ARM和MIPS指令系统的翻译 。
编译器是将C语言这类高级语言编为机器标码 , 因为有开源 , 许多经验丰富的团队都能开发编译器 。
“更上一层就是虚拟机 , 全球一大半的服务器都跑在Java上 , .NET与Java一样 , 一个属于微软体系 , 一个属于Linux体系 。JavaScript是浏览器的核心引擎 。因此虚拟机也很重要 。”
胡伟武解释 , “目前很多应用软件都构建在上述三个虚拟机上 , 龙芯自主指令系统只要支持上述三个虚拟机 , 那一半以上的已有应用软件就可以不用迁移直接运行 。要掌握生态的主导权 , 关键就在于虚拟机的能力 。”
二进制翻译的能力 , 是考虑到自主和兼容 , 为生态发展提供的基础能力 。“LoongArch的基础指令有300多条 , 为了二进制翻译 , 兼容x86、ARM以及MIPS , 我们又增加了近200条指令 。”
胡伟武进一步表示 , “LoongArch通过软硬结合 , 提升了兼容其他指令系统应用的二进制翻译效率 , 这方面我们有十几年的积累 。我们希望 , 到2025年前后 , 在龙芯的LoongArch平台上可以不运行Windows但能运行Windows应用 , 不运行Android但能运行Android应用 。”
不仅如此 , LoongArch还抛弃了MIPS的很多历史负担 , 结合新的应用特点增加了一些新的功能 , 这样仅指令系统就能带来10%-20%的性能提升 , 硬件要实现这样的提升需要大概两代 。
【CPU处理器|20年“炼出”国内首个自主CPU指令集架构 龙芯凭什么?】雷锋网(公众号:雷锋网)了解到 , 属于RISC(精简指令集)的LoongArch总共有近2000条指令 , 包含基础架构部分和向量指令、虚拟化、二进制翻译等扩展部分 , 具有完全自主、技术先进、兼容生态的三个特点 。
CPU处理器|20年“炼出”国内首个自主CPU指令集架构 龙芯凭什么?
文章图片
有组织的开放建设生态
“兼容其它指令系统只是建设生态的辅助性手段 , 我们的目标是打造全球第三套CPU生态体系 , 为人民做龙芯 。”胡伟武说:“全球的IT产业被Wintel体系和AA体系制约 , 只要硅谷的企业产品升级 , 中国和其它国家的企业就得跟着升级 , 我们没有产业发展的主导权 。”
回看intel和ARM的成功 , 上世纪九十年代 , 小企业intel做芯片 , 把基础软件平台开放给生态合作伙伴来做 , 打败了封闭的大企业IBM 。进入新世纪以来 , 比intel更加开放的ARM只提供IP , 也取得了巨大的成功 。
胡伟武说LoongArch的生态是要有组织的开放 , 建立生态 。“要建设好一个生态首先要开放 , 组建联盟吸引生态合作伙伴 。其次还要兼容 , 无组织的开放会造成严重碎片化 , 生态没办法发展起来 , 要找到开放和兼容的平衡点 。最后还需要系统优化 , 可以实现数量级的体验提升 。”
那谁会加入龙芯的CPU生态?胡伟武认为非常明确的至少有两类公司 , 一类是针对特定应用做SoC的公司 , 这些公司只要加入龙芯生态联盟就可以使用LoongArch指令系统 , 并且能够免费使用像ARM Cortex A53和A57性能级别的龙芯CPU IP核 , 用于各种SoC设计 , 这也是龙芯已有的客户 。


推荐阅读