gpt4 book ai didi

x86 - 为什么 CISC 处理器更难流水线化?某些指令 "more complex"与其他指令相比有何意义?

转载 作者:行者123 更新时间:2023-12-01 20:21:53 25 4
gpt4 key购买 nike

根据 Miles Murdoca 和 Vincent Heuring 的“计算机体系结构和组织”,

CISC instructions do not fit pipelined architectures very well. For pipelining to work effectively, each instruction needs to have similarities to other instructions, at least in terms of relative instruction complexity.

为什么这是真的?指令的复杂性是什么意思?不是所有指令都需要一个时钟周期才能开始执行吗?如果指令正在读取或写入内存,则需要更长的时间,但 RISC 处理器也读取或写入内存(当然)?

最佳答案

指令的“复杂性”与其大小和格式的变化程度有关。以x86 IA32(Intel 32位)架构为例,即CISC。指令的大小范围可以从 1 到 15 个字节,并且它们的格式也有很大差异(格式是每个字段使用多少位,这些位位于何处等等)。

这意味着只有在开始解码指令后,您才会知道指令何时完成。有些指令只需要一个周期来获取,其他指令则需要更长的时间,这使管道过程变得复杂。

另一方面,所有 ARM 指令(RISC 架构)都恰好有 4 个字节。因此,一旦获取 4 个字节,您就知道可以将这些字节发送到管道的解码阶段,并且可以立即开始获取下一条指令。

关于x86 - 为什么 CISC 处理器更难流水线化?某些指令 "more complex"与其他指令相比有何意义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17288394/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com