国产芯片为何要经过世界规范认证? ​

未知 2022-09-06 19:45

国产芯片为何要经过世界规范认证? 

近来,看到两条新闻:阿里的倚天710服务器芯片经过PCIe5.0规范认证,龙芯LoongArch进入UEFI和ACPI规范。

阿里宣告倚天710服务器芯片经过PCIe5.0规范认证(图源:”阿里云基础设施“微信大众号截图)

 

龙芯LoongArch进入UFFI和ACPI规范(图源:UEFI社区微信大众号截图)

有人提出一些问题——为何国产芯片要去经过这些世界规范认证?为何像LoongArch这样的自研指令集也要兼容英特尔主导的世界规范?(英特尔在PCIe和UEFI规范的发展过程中都起到了主导效果,UEFI本身就是英特尔在1998 年启动的“Intel Boot Initiative(IBI)”项目的副产品)

这些问题正好和孙凝晖院士主持的一个关于处理器生态软课题研讨内容相关。这里我就借用该课题的一些定论对上述问题进行剖析与解读,不当之处请大家多指正。

一、阿里与龙芯为何要兼容世界规范规范?

一台计算机如何运转,是由一组规范规范所定义。例如,在手机上接触屏幕访问一个网站的操作,会触及到上百个规范规范,包含硬件规范规范(如ISA、DDR、PCIe、 AXI、WiFi等)、软件规范规范(如ABI、Syscall、API、TCP/IP、SQL等)和数据格式规范(如IEEE 754、JPEG、H.264、HTML、XML、JSON等) 。这些规范规范紧密耦合、交互协同,有机组成一个文本概念层面的技能系统网络。

只要经过工程开发将这些规范规范详细完成为各种源代码或物理载体,并彼此适配构成一个详细完成层面的技能系统网络,才能构成真正作业的物理计算机。

 

处理器生态示意图(图源:包云岗)

二、指令集在处理器生态起什么效果?

处理器指令集(ISA)是一种规范规范,一般以文本手册方式出现。从规范规范角度来看,指令集就是整个技能系统网络中的一个节点,它必须要和其他节点协同作业。

因此,处理器芯片生态的核心技能要素在于经过高质量完成将指令集规范转变为处理器微架构设计与RTL源代码,并与其他规范规范的源代码适配,完成协同作业。

依据梅特卡夫规律,当一个网络内的节点数越多,则该网络的价值也越大。对于一个处理器指令集,其对应RTL源代码能兼容的规范越多(点越多),完成的质量越高(边权重越大),则功能越好、用户体验越好,处理器生态也将会越好。

三、X86和ARM为何成为干流处理器生态?

现在X86和ARM成为两大干流处理器生态,要害原因并不是Intel、AMD、ARM这些世界处理器头部企业掌控着X86和ARM指令集规范的制定权(反例:IBM掌控PowerPC指令集、SUN掌控SPARC指令集、DEC掌控Alpha指令集),更为要害的是它们投入大力研制经费在其他规范规范的源代码完成上,使其更好地兼容X86和ARM处理器,例如Intel在PCIe、Ethernet、SATA等规范规范和Linux等开源软件上有很多投入。

四、生态的商业壁垒如何构成?

如前所述,处理器生态可视为一个网络,并且网络的节点之间经过很多的认证构成了商业壁垒。今日,一项技能要进入干流市场,需求经过这些认证。

即使是一些开源技能也相同需求面对这个问题。例如,在Linux开源社区,Red Hat和SUSE这两家商业上很成功,很重要的一点是这两家企业现已积累了上万个认证——SUSE/RedHat 经过与上下游企业交叉认证,包含联想、浪潮等硬件厂商,以及Oracle等各类应用厂商。这些认证构成了很高的准入门槛。

例如Oracle数据库只对SUSE/RedHat的Linux发行版进行认证,这也意味着每个Oracle产品新版本,他们会在这两个Linux上进行评测,出现问题会主动修改。可是他们不会在Ubuntu上测试,这就会导致Oracle在Ubuntu上的稳定性不如SUSE和RedHat。

 

每个Oracle产品新版本都会在Red Hat和SUSE的Linux上进行评测(图源:包云岗)

综上,我们可以总结处理器生态的几个要害词——规范规范、高质量完成、技能系统网络、认证。

 

标签