为什么Intel没有从CISC架构转向RISC架构?

肖聊数码吖 2024-02-27 11:33:45

首先,CISC是啥?它代表的是“复杂指令集计算机”,拥有大约5000条指令,像x86这样的家伙就属于这一类。而RISC则是“精简指令集计算机”,通常只有几百条指令,少的只有50来条指令,最牛的内核也就400条。

x86的生态系统是完全开放的,仍有大把的人在使用Windows XP。甚至还有基于Windows 3.11的工控电脑在运行,前几天德国铁路还在招聘DOS的维护人员,美国的一些公共服务机构还在用Cobol编写的程序。

如果Intel说,我们要转向RISC了,那岂不是得重新写数十亿行代码?这几乎是不可能的任务。

而且精简指令和复杂指令的界限正在变得模糊,因为它们都在添加一些额外的指令集,比如x86添加AVX512指令集,瞧,又多了数百条新指令。RISC也一样,添加了SVE指令,因此RISC慢慢地变成了CISC,但还保留了固定长度的指令。

而且Intel也不傻,它转向超标量微架构时,内部的东西就更不重要了。超标量意味着用于编程的指令不是由核心执行的,而是被转换成了微操作和宏操作(uOps),然后并行且无序地执行。这就是x86进行微代码更新的原因。

从程序的角度来看,CISC代码比RISC小。至于速度嘛?速度取决于微架构的宽度(核心有多宽)。看看AMD Zen 5吧,它在不增加时钟的情况下将IPC提高了约10-15%。这个核心能够并行执行6个整数运算、N个浮点运算、4个加载和2个存储,全部同时进行!它使用的还是40年前的x86指令,依然是CISC。

所以说,CISC和RISC不再重要了。

0 阅读:27

肖聊数码吖

简介:感谢大家的关注