RISC和CISC之间的区别
作者:
Laura McKinney
创建日期:
1 四月 2021
更新日期:
4 可能 2024
内容
RISC和CISC是计算机指令集的特征,它是计算机体系结构的一部分。它们在复杂性,指令和数据格式,寻址模式,寄存器,操作码规范以及流控制机制等方面有所不同。
当对机器进行编程时,程序员使用一些特定的原始命令或机器指令,这些通常称为计算机指令集。
- 比较表
- 定义
- 关键差异
- 结论
比较表
比较依据 | RISC | 中钢国际 |
---|---|---|
强调 | 软件 | 硬件 |
包括 | 单钟 | 多时钟 |
指令集大小 | 小 | 大 |
指令格式 | 固定(32位)格式 | 不同的格式(每条指令16-64位)。 |
使用的寻址模式 | 仅限3-5 | 12-24 |
使用通用寄存器 | 32-192 | 8-24 |
记忆推论 | 注册注册 | 内存到内存 |
缓存设计 | 拆分数据缓存和指令缓存。 | 指令和数据的统一缓存。 |
时钟频率 | 50-150 MHz | 33-50 MHz |
每个指令的周期 | 所有指令为单周期,平均CPI <1.5。 | CPI在2到15之间。 |
CPU控制 | 硬接线,无控制存储器。 | 使用控制存储器(ROM)进行微编码。 |
RISC的定义
精简指令集计算机(RISC) 指令集通常容纳少于100条指令,并使用固定的指令格式(32位)。它使用一些简单的寻址模式。使用基于寄存器的指令,这意味着采用寄存器到寄存器机制。 LOAD / STORE是访问内存的唯一独立指令。
为了提高转换的速度,使用了一个大的寄存器文件。指令集的简单性使得整个处理器可以在单个VLSI芯片上实现。额外的好处是时钟频率更高,CPI更低,从而可以在可用的RISC /超标量处理器上控制较高的MIPS等级。
CISC的定义
复杂指令集计算机(CISC) 指令集包含约120至350条指令。它使用可变指令/数据格式,但使用少量通用寄存器,即8-24。使用大型指令集的原因是使用了可变格式指令。通过使用大量的寻址模式来执行大量的存储器引用操作。
CISC体系结构直接在硬件/固件中采用HLL语句。统一缓存用于传统的CISC体系结构中,该体系结构既包含数据又包含指令,并使用公共路径。
- 在RISC中,指令集大小较小,而在CISC中,指令集大小较大。
- RISC使用固定格式(32位)和大多数基于寄存器的指令,而CISC使用可变格式范围为每条指令16-64位。
- RISC使用单个时钟和有限的寻址模式(即3-5)。另一方面,CISC使用12到24个多时钟寻址模式。
- RISC使用的通用寄存器的数量为32-192。相反,CISC体系结构使用8-24 GPR。
- 寄存器到寄存器存储机制在RISC中与独立的LOAD和STORE指令一起使用。相比之下,CISC使用内存到内存机制来执行操作,此外还包含LOAD和STORE指令。
- RISC具有拆分数据和指令缓存设计。与之相反,CISC使用统一的缓存来存储数据和指令,尽管最新的设计还使用了拆分缓存。
- RISC中的大多数CPU控制都是硬连线的,没有控制存储器。相反,CISC是经过微编码的,并且使用控制存储器(ROM),但是现代CISC也使用硬接线控制。
结论
CISC指令比较复杂,并且往往比RISC慢,但是使用更少的周期和更少的指令。