RISC-V与其他ISA之间的差异

时间:2013-06-13 08:31:05

标签: cpu-architecture riscv isa

有人可以向我解释(RISC与CISC)与RISC-V ISA之间的巨大差异吗?我在互联网上找不到CISC和RISC-V之间的任何相关区别。

2 个答案:

答案 0 :(得分:8)

RISC-V是伯克利开发的新ISA,用于协助研究和教育。它开放,干净,易于扩展(也很逼真)。

构建研究处理器的一个常见问题是找到一个使用的ISA,它不会与传统决策混淆(延迟槽,注册窗口),不受专利保护,并且有足够的操作码空间来探索新的指令/加速器/处理器微架构。

公众发布(v2.0)即将推出,您可以在riscv.org阅读当前的草稿。 (披露:我使用RISC-V进行自己的研究,我坐在那些设计和实现它的人旁边)。 [编辑:自2014年5月起正式发布(http://riscv.org/download.html#tab_isaspec)]

在与其他ISA的比较方面,它可能与MIPS和ARMv8最相似(RISC-V v1.0实际上是在ARMv8发布之前发布的)。它是一个加载存储架构(没有像x86这样的寄存器内存操作,除了一组AMO)。 RISC-V的某些部分可以说是“CISC-y”,比如支持能源原因的压缩指令选项(16b)或更大的指令用于更多的操作码空间(可变指令长度是一个可选的超集, ISA的基本集是所有32b指令)。此外,FMA也感觉有点CISC-y,有三个源操作数和两个操作。但是现在我们正在酝酿什么是CISC以及什么是RISC的意见领域。在一天结束时,RISC-V是一个非常容易解码的ISA,其中的所有指令都易于安排并进行危险检查(没有像CISC ISA中那样的奇怪副作用)。 p>

答案 1 :(得分:5)

RISC-V是一个研究型ISA,但已经有多个FPGA软核实现,而不是 提到模拟器。它与MIPS(以及NIOS 2,MicroBlaze,Alpha,LM32,......)最相似,但一个重要的区别是如何处理分支:

可见分支延迟时隙在很大程度上被认为是复杂的超标量实现,并且对于编译器来说是一个挑战。随着分支预测的进步,不再需要它们,因此RISC-V省略了它们。此外,由于分支可以在管道中稍后解析,RISC-V的条件分支可以比较任何两个寄存器的相等性和排序。