说起芯片指令集,大家肯定会提X86、ARM、RISC-V、MIPS、Alpha这些,因为这些指令集,目前国产CPU都有在用。
但大家可能并不清楚,这些指令集都是国外的,所以一直以来,大家都希望能够有100%自研的自主指令集,这样我们就不用依赖国外了。
当然,也许很多人对指令集、微架构等搞不清楚,那我再解释一下。
指令集是CPU与操作系统之间的翻译官,程序被执行前要翻译成CPU理解的语言,这个就是指令集,像X86、ARM这些就是指令集。
在CPU中有一种微架构,那是指CPU的基本组成单元,也称之为核心,类似于ARM推出的Cortex-A78这些才是是微架构,与指令集是不一样的。
那么国内真的没有自主指令集么?其实并不是的,指令集的技术难度并不高,目前国内已经有两大完全自主的指令集,并不是大家认为的没有。
第一个是申威CPU用使用的SW64。申威在早期获得了Alpha指令集的授权,使用的是Alpha指令集,但后来申威推出了100%自研的SW64指令集,放弃了原有的Alpha指令集。
第二个是龙芯,龙芯最早期是获得了MIPS的授权,后来又在MIPS的基础上扩展形成了LoongISA,但到最近发布的3A5000后,龙芯放弃了MIPS指令集和LoongISA指令集,采用了100%自研的LoongArch指令集。
但很明显,由于目前PC领域的主流指令集是X86,因为它与windows是匹配的,而移动芯片的主流指令集是ARM,它是与安卓对应的。
所以就算国内已经有两大完全自主的指令集SW64和LoongArch,但由于龙芯、申威都不是当前主流芯片,所以我们还是无法摆脱对国外指令集的依赖。
可见指令集的技术难度没有想象中的高,与指令集对应的操作系统才是关键,而操作系统本身也并不难,难的是操作系统背后的生态,这些是一环套一环的。