【发布时间】:2016-12-28 07:38:39
【问题描述】:
在设计指令集架构时要考虑的两个主要因素是什么?
我知道 ISA 是什么。但是要考虑哪些因素呢?我已经查看了 Wikipedia,但没有多大帮助。
我发现这是 ISA 的设计问题。
- 向后兼容性
- 是否需要中断?
但是这两个因素我是不是有点糊涂了!请帮助任何人!准备计算机组织和架构考试
【问题讨论】:
-
抱歉英语不好!我来自尼泊尔。
-
“的”两大因素?有很多重要的因素。不明显的是,其中两个应该被称为比其他任何因素都更重要。例如,参见this article and the following discussion on Agner Fog's blog about designing a new ISA for high-performance computing,试图将 RISC 的高效解码优势与可变长度 CISC 的更高代码密度相结合。那里肯定有一些巧妙的想法。
-
如果你正在准备考试,你可能应该问你的教授他/她认为什么是“两个主要因素”,因为我怀疑现实世界的 CPU 架构师会同意哪两个,除非我忽略了一些明显的东西。是否喜欢可变长度指令字,以及寄存器数量?一些 ISA(如 AVR)通过让一些指令只能在有限范围的寄存器上操作来解决寄存器计数问题。 AVR 有 32 个寄存器,因此每个寄存器需要 5 位,但大多数指令只有 16 位长。
-
或许最重要的是它是否是一台注册机。您可以想象一种架构,其中所有指令仅使用内存操作数,没有寄存器。
-
谢谢彼得!现在我可以将这与我所研究的内容联系起来。我确实找到了可变长度和寄存器数量!现在我有些自信了!非常感谢!
标签: cpu-architecture instruction-set