RISC与CISC:计算机指令集架构的前世今生
创作时间:
作者:
@小白创作中心
RISC与CISC:计算机指令集架构的前世今生
引用
新浪网
1.
https://finance.sina.com.cn/tech/roll/2024-08-02/doc-inchfezi7259732.shtml
在计算机体系结构中,指令集架构(ISA)是CPU与软件之间的接口,决定了计算机如何执行程序。CISC(复杂指令集计算)和RISC(精简指令集计算)是两种主要的指令集架构。本文将详细对比这两种架构的特点、优劣以及应用场景,并解释为什么现代CISC处理器实际上采用了RISC核心设计。
CISC(复杂指令集计算)
- 复杂指令集:CISC架构设计了大量的复杂指令,每条指令可以完成较为复杂的操作。
- 较少的指令数:因为每条指令可以完成较多的操作,所以总体的指令数较少。
- 内存使用效率高:由于指令的复杂性,单个指令可以在较少的时钟周期内完成任务,从而减少内存带宽的占用。
- 硬件实现复杂:实现这些复杂指令需要更复杂的硬件逻辑。
- 常见应用:早期的计算机和一些特定应用中使用较多,如x86架构。
RISC(精简指令集计算)
- 精简指令集:RISC架构设计了一组相对简单且数量较少的指令,每条指令执行一个非常简单的操作。
- 较多的指令数:由于每条指令执行的操作简单,完成一个任务需要更多的指令。
- 指令执行速度快:简单指令可以在一个时钟周期内完成,从而提高了指令执行速度。
- 硬件实现简单:由于指令集的精简,硬件设计相对简单且更容易优化。
- 常见应用:现代嵌入式系统和移动设备中广泛使用,如ARM架构。
两种架构的对比
特征 | CISC | RISC |
---|---|---|
复杂性 | 指令复杂 | 指令简单 |
执行速度 | RISC通常具有更快的执行速度,因为每条指令在一个时钟周期内完成。 | |
指令数 | CISC指令数少,但每条指令功能强大;RISC指令数多,但每条指令功能简单。 | |
硬件设计 | CISC硬件设计复杂,RISC硬件设计简单。 | |
应用领域 | CISC多用于台式机和服务器,RISC多用于嵌入式系统和移动设备。 |
RISC的起源与发展
- 定义:RISC是一种执行较少类型计算机指令的微处理器架构。通过减少指令集的数量,可以更快地执行操作。
- 起源:1974年,纽约约克镇IBM研究中心的John Cocke提出了RISC的概念。他发现计算机中约20%的指令承担了80%的工作。
- 主要特点:
- 指令简单:RISC设计者将主要精力放在经常使用的简单指令上,这些指令可以在一个时钟周期内完成。
- 指令数少:较少的指令类型需要更少的晶体管和电路元件,从而简化微处理器设计,提高执行速度。
- 存储器操作限制:对存储器操作有限制,使控制简单化。
- 程序复杂性:由于简单的指令集,实现复杂功能时需要组合多条指令,程序复杂度增加,内存占用较大。
- 中断处理:可以在一条指令执行的适当位置响应中断。
- CPU芯片电路:包含较少的单元电路,面积小、功耗低。
- 设计周期短:结构简单,布局紧凑,设计周期短,易于采用最新技术。
- 常见处理器:DEC Alpha、ARC、ARM、MIPS、PowerPC、SPARC、SuperH等。
CISC的特点与应用
- 定义:CISC是一种复杂指令集计算机架构,使用丰富的指令集,每条指令可以完成较为复杂的操作。
- 主要特点:
- 指令丰富:指令系统比较丰富,有专用指令来完成特定功能。
- 存储器操作直接:存储器操作指令多,操作直接。
- 程序简单性:汇编语言程序编写相对简单,特别是科学计算及复杂操作的程序设计效率较高。
- 中断处理:在一条指令执行结束后响应中断。
- CPU芯片电路:包含丰富的电路单元,功能强大,但面积大、功耗高。
- 设计周期长:结构复杂,设计周期长。
- 用户使用:功能强大,实现特殊功能容易。
- 常见处理器:X86。
两种架构的详细对比
特征 | RISC | CISC |
---|---|---|
指令系统 | 专注于简单、高效的常用指令,通过组合指令完成不常用功能。 | 提供丰富的指令系统,有专用指令完成特定功能。 |
存储器操作 | 对存储器操作有限制,控制简单。 | 存储器操作指令多,操作直接。 |
程序复杂性 | 程序复杂,需要较大内存空间。 | 程序编写相对简单,设计效率高。 |
中断处理 | 在一条指令执行的适当位置响应中断。 | 在一条指令执行结束后响应中断。 |
CPU芯片电路 | 单元电路少,面积小、功耗低。 | 电路单元丰富,面积大、功耗高。 |
设计周期 | 设计周期短,易于采用新技术。 | 设计周期长,结构复杂。 |
用户使用 | 指令规整,性能容易把握,易学易用。 | 结构复杂,功能强大,实现特殊功能容易。 |
应用范围 | 更适合于专用机。 | 更适合于通用机。 |
现代CISC处理器的RISC实现
如今的CISC处理器都参考了RISC设计,将指令在处理器内翻译成微码再工作。
- 性能优化
- 指令解码和执行效率:RISC核心设计简单,指令集较少,容易进行指令解码和执行优化。因此,在现代CISC处理器中,首先将复杂的CISC指令解码成更简单的RISC微操作(micro-operations),再由RISC核心执行。这种方式可以提高指令执行效率。
- 设计复杂性降低:RISC核心的设计相对简单,可以简化处理器设计的复杂性。通过在CISC处理器中采用RISC核心,可以降低设计和验证的难度,缩短开发周期。
- 能效比提升:RISC核心因为其简单的设计,通常具有较低的功耗和较小的芯片面积。这对于移动设备和嵌入式系统等功耗敏感的应用场景尤为重要。
- 模块化设计:通过使用RISC核心,处理器设计可以更加模块化和灵活。这使得在同一架构下可以更容易地进行不同型号和规格处理器的扩展和开发。
- 兼顾旧有软件支持和新性能:现代CISC处理器(如x86架构)需要兼容大量已有的软件和系统,因此外部接口依然保持CISC架构。但是,内部通过RISC核心执行,可以兼顾性能和兼容性,提供更好的用户体验。
- 微操作:Intel的x86处理器内部使用了一种被称为“微操作(micro-ops)”的机制,将复杂的x86指令解码为更简单的微操作,然后由内部的RISC风格的执行单元处理。
- 超标量和超流水:现代x86处理器利用超标量和超流水技术,同时执行多条微操作,以提高指令级并行度和处理速度。
这两种架构各有优劣,具体选择取决于应用场景和性能需求。现代处理器设计往往结合了两者的优点,以实现最佳的性能和效率。
热门推荐
奶茶隔夜可以喝吗?这份饮用指南请收好
岩板餐桌 vs 大理石餐桌:如何选择最适合你的餐桌材料?
如何看懂肺癌基因检测结果?详解基因报告中的关键信息
DNA鉴定结果出现错误时如何解决
事件驱动之下,盘点2月份的重点治理动态和集成浪潮
南山铝业入选“2024 年山东省智能制造场景”名单
父母遗产继承指南:归属与分配全解析
父母房产遗产谁给评估
筛选机的奥秘与应用:提升生产效率与产品质量的利器
医保个人账户余额怎么用,详细教程
如何正确使用液体蜡以保护汽车漆面?这种使用方法对车辆外观有什么影响?
qt450是什么材料
如何利用SQL数据库提升复杂报表生成与数据分析效率?
纳米晶软磁合金材料特性和产业现状
怎么把excel项目批量导入word文档
怎么把excel的数据批量导入word中
神经网络 | CNN 与 RNN——深度学习主力军
Y染色体和线粒体DNA分析:特殊DNA鉴定技术详解
银行卡的转账到账时间可以加快吗?
房产纠纷怎么打官司
系统温度精准控制“指南”
刑事案件处理完毕后还能翻案吗
长期投资的基金选择标准及策略是什么?这些策略如何适应市场变化?
2024文明中国主题采访:沧州大运河文化保护与传承
甲酸铯的用途及其毒性
不同颜色工作服的意义,定制工作服颜色推荐
汗蒸后不洗澡直接睡觉可以吗?汗蒸对身体有什么好处
在采用EOD模式进行水生态综合治理时,应当关注哪些方面?
公司间交易的模式和规则是什么?这种模式和规则对企业发展有何作用?
珍珠港事件后,各国领导人作何反应?最反常的竟然是他俩