文章图片
注:此处「英特尔架构」仅指 x86 CPU , 而不是 8080 等芯片 , 后者在早期的计算机市场上很受欢迎 。 此外 , 英特尔在 2000 年拥有许多属于「RISC」类的超级计算机 , 并且 x86 机器在市场上还占据较大的份额 。
上图分析了 80 年代 - 00 年代 CPU 的市场状况 。 截止到 1990 年 , 在个人计算机市场 , x86 占据了相当大的市场份额 , 非 x86 CPU 仅占约 20%;但在数据中心方面 , x86 几乎没有份额 , 在 HPC 中也没有 。 当时苹果正准备设计下一代 CPU , 1991 年苹果、IBM、Motorola 组成的 AIM 联盟推出了微处理器架构 PowerPC , 他们相信按照 RISC 原则构建的高性能 CPU 将是计算机的未来 。
CISC 与 RISC 并肩发展的历史至 20 世纪 90 年代初为止 。 英特尔的 x86 架构在 PC、数据中心和 HPC 等计算行业继续占据主导地位的事实是无可争议的 , 有争议的是:英特尔和 AMD 的 CPU 架构是否真的是采用 RISC 设计原则实现的
观点分歧
在 CPU 开发领域 , 一些概念和属性是长期存在分歧的 。 例如 Paul DeMone 曾在《RISC vs. CISC Still Matters》一文中写道:
随着使用固定长度控制字来操纵乱序执行数据路径的现代 x86 处理器的出现 , RISC 和 CISC 之间的混淆变得越来越严重 。 「RISC 和 CISC 正在融合」是一个在根本上就存在缺陷的观点 , 可以追溯到 1992 年 i486 的发布 。 其根源在于人们对指令集架构和物理处理器实现细节之间的差异普遍无知 。相比之下 , Jon Stokes 在《RISC vs. CISC: the Post-RISC Era》中说:
显然到目前为止 , 「RISC」和「CISC」这两种缩写术语掩盖了一个事实 , 即两种设计理念都不仅仅处理指令集的简单性或复杂性...... 从 RISC 和 CISC 的发展史以及两种方法试图解决的问题看 , 这两个术语都很荒谬…… 关于「RISC 与 CISC」的辩论早已结束 , 现在必须要进行一个更细致入微、更有趣的讨论 , 即基于硬件和软件、ISA 和实现等方面进行讨论 。然而 , 这些文章都过时了 。 Stokes 的文章写于 1999 年 , DeMone 的文章写于 2000 年 。 这里引用他们的文章是为了说明 RISC 与 CISC 和现代计算的关联早已有 20 多年的历史 。
关于实现与 ISA的两种观点
上文提到的引述反映了关于「CISC 与 RISC」的两种不同观点 。 DeMone 的观点与今天 ARM 和苹果的观点基本一致 , 这种观点被称为「以 ISA 为中心(ISA-centric position)」 。
在过去几十年里 , 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 的发展方式 , 并认为这两种术语已完全过时 。
特别声明:本站内容均来自网友提供或互联网,仅供参考,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
