Hruska|都2021年了,还把x86和ARM归为CISC和RISC?( 三 )

然而 , 这些文章都过时了 。 Stokes 的文章写于 1999 年 , DeMone 的文章写于 2000 年 。 这里引用他们的文章是为了说明 RISC 与 CISC 和现代计算的关联早已有 20 多年的历史 。
关于实现与 ISA的两种观点
上文提到的引述反映了关于「CISC 与 RISC」的两种不同观点 。 DeMone 的观点与今天 ARM 和苹果的观点基本一致 , 这种观点被称为「以 ISA 为中心(ISA-centric position)」 。
【Hruska|都2021年了,还把x86和ARM归为CISC和RISC?】在过去几十年里 , Stokes 的观点是 PC 领域的主流观点 , 被称为「以实现为中心(implementation-centric position)」 。 我使用「实现(implementation)」这个词是因为它可以在上下文中指代 CPU 的微架构或用于制造物理芯片的制程节点 。
上述两种位置都以「中心(centric)」的形式描述 , 两种观点之间是存在交集的 。 即使观点不一 , 但都遵循一些共同的趋势 。
在以 ISA 为中心的观点中 , RISC 指令集的某些先天特征使其比 x86 更高效 , 包括使用固定长度指令和加载 / 存储设计 。 虽然 CISC 和 RISC 之间的一些原始差异不再有意义 , 但以 ISA 为中心的观点认为 , 就 x86 和 ARM 之间的性能和能效而言 , 仍然具有一些关键差异 。
以 ISA 为中心的观点认为 , 英特尔、AMD 和 x86 胜过 MIPS、SPARC 和 POWER/PowerPC , 原因有以下三个:英特尔卓越的工艺制造、英特尔的优势使所谓的「CISC tax」逐渐减少、二进制兼容性提升了 x86 的价值 。
以实现为中心的观点则着眼于自 RISC、CISC 等术语出现以来现代 CPU 的发展方式 , 并认为这两种术语已完全过时 。
例如 , 现在 x86 和高端 ARM CPU 都使用乱序执行来提高 CPU 的性能 。 而使用芯片即时重排序指令以提高执行效率的做法与 RISC 的原始设计理念完全不一致 , Patterson 和 Ditzel 主张采用能够以更高时钟速度运行的不太复杂的 CPU 。 现代 ARM CPU 还有一些特性 , 例如 SIMD 执行单元和分支预测 , 在 1981 年也都不存在 。 RISC 最初的目标是让所有指令都能在一个周期内执行 , 大多数 ARM 指令都符合这个规则 , 但是 ARMv8 ISA 和 ARMv9 ISA 包含执行时间超过一个时钟周期的指令 。 现代 x86 CPU 也是如此 。
以实现为中心的观点认为:制程节点改进和微架构增强的结合使 x86 在很久以前就可以缩小与 RISC CPU 的差距 , 并且 ISA 级别的差异在非常低的功率范围内无关紧要 。 英特尔和 AMD 等都普遍支持这种观点 , 2014 年我曾撰写一篇题为《The final ISA showdown: Is ARM, x86, or MIPS intrinsically more power efficient?》的相关文章 。
2014 年文章链接:https://www.extremetech.com/extreme/188396-the-final-isa-showdown-is-arm-x86-or-mips-intrinsically-more-power-efficient
但这种观点是完全正确的吗?

推荐阅读