精简指令集(RISC)的代表ARM确实占领了手机等移动市场,但没必要把它捧上天,复杂指令集(CISC)的代表英特尔和AMD的CPU也并非一无是处,仅在性能和兼容性上的两大优势,就是ARM的处理器无法替代的。所以现在断言复杂指令集(CISC)过时,有点言之过早。
打个比方,复杂指令集(CISC)的代表英特尔处理器相当于三国演义中的曹操,占据最有利的地形,兵强马壮(PC领域和服务器领域绝对的王者);
精简指令集(RISC)的代表ARM处理器相当于东吴,实力也不弱,曾击退曹操百万大军(在移动领域打败英特尔);
而精简指令集(RISC)阵营的另一代表是MIPS处理器,相当于蜀汉。三者关系详见下图:
“曹操”英特尔能混到今天的地位,靠的是什么?靠的是强大的性能和良好的兼容性。
先说性能。
没错,复杂指令集(CISC)的缺点是指令集臃肿,但这个缺点也是它的优点,因为指令多意味着能完成的功能也多,性能也强大。英特尔处理器近几年增加了几百条MMX、SSE指令,提高了执行多媒体程序和其它特殊程序的性能,所以成为工作站、服务器、游戏机等高性能CPU的绝对首选。
在这些对计算性能要求高的场所,打酱油都是同为复杂指令集(CISC)的AMD处理器(服务器市场份额为5%),ARM的份额基本等于零。
此外,英特尔处理器在1995年让复杂指令集(CISC)这棵老树发出了新芽,发布的Pentium Pro处理器采用著名的P6微架构,成为教科书式的一代经典。其经典之处在于,X86指令集(属于CISC)先解码成类似精简指令集(RISC)的微操作(microoperations),然后采用RISC内核执行。这句话读起来太专业晦涩?不要紧,记住这句话就行:现在的英特尔处理器,相当于用复杂指令集(CISC)这张饺子皮,包着精简指令集(RISC)的馅儿。
P6架构虽然复杂,但提升了性能,不仅让复杂指令集(CISC)这颗老树成功发芽,还开花结果,越来越繁盛,20多年来不仅统治PC市场,还在服务器领域将精简指令集(RISC)CPU碾成渣渣,逼得其代表ARM只能向低功耗和嵌入式方向发展,最后遇上手机崛起,才由衰转盛,和霉运说拜拜。
和英特尔硬抗到底、不愿撤退的Power处理器,现在坟头树已经有合抱粗了。
精简指令集(RISC)CPU败给英特尔,主要就栽在了兼容这道坎上。
IBM最先提出RISC思想,开发的Power处理器性能强过CISC指令集的老大英特尔处理器,还拉来苹果、摩托罗拉、SUN公司、微软等成立软硬件联盟,但最终结果是,英特尔凭借良好的兼容性,打败了Power处理器,苹果也转投英特尔怀抱。这就是兼容的威力。
性能和兼容是两大指令集交锋的重点,其中兼容又是决定性因素,因为它牵涉到生态问题。现在CISC指令集CPU主要集中在PC和服务器领域,RISC指令集CPU主要占据移动和嵌入式设备,井水不犯河水,就是因为两大阵营都建立了各自强大的生态系统,想犯也没有用。
至于以后,RISC指令集中的ARM处理器是否会一统天下,CISC指令集中的英特尔处理器是否会因此被淘汰,这个谁也不好说,但在可见的未来,两大指令集系统还是会保持互不侵犯的状态。
说过CISC指令集并不过时、生命力依然旺盛后,现在可以回答题主问题了。我国自主设计的CPU基本采用RISC指令集,主要因为它是一个开放的生态,花钱可以买指令集授权,买IP核搞集成设计,总之可以随意买买买。而CISC指令集是一个封闭的生态,代表是英特尔处理器,目前仅授权AMD,给钱人家也不卖。
直接一句话道出根本原因:想用复杂指令集但得不到授权,没办法,只能使用精简指令集。吹精简指令集属于自欺欺人。