首页 > 其他分享 >【计算机组成原理-61】CISC和RISC

【计算机组成原理-61】CISC和RISC

时间:2025-01-14 09:04:59浏览次数:3  
标签:RISC 61 指令 处理器 指令集 执行 CISC

61. 介绍 CISC 和 RISC

在计算机体系结构中,CISC(复杂指令集计算机,Complex Instruction Set Computer)和 RISC(精简指令集计算机,Reduced Instruction Set Computer)是两种主要的处理器设计理念。它们在指令集设计、执行效率、硬件实现等方面存在显著差异。了解这两种架构对于深入理解计算机性能优化、编译器设计以及现代处理器的发展趋势至关重要。


一、CISC(复杂指令集计算机)

1. 定义

CISC(Complex Instruction Set Computer) 是一种处理器设计理念,其特点是拥有大量且复杂的指令集。这些指令能够执行多种操作,甚至可以完成高层次的任务,如内存访问、算术运算和控制流操作,通常只需一条指令。

2. 历史背景

CISC 的概念最早可以追溯到 1970 年代,当时的计算机存储器昂贵且有限,设计者希望通过更复杂的指令减少程序代码的长度,从而节省存储空间。例如,Intel 8086VAX 系列和 IBM System/360 都是典型的 CISC 架构。

3. 特点

  • 丰富的指令集:包含多种操作指令,能够直接执行高层次的操作,如字符串处理、复杂的算术运算等。

  • 多操作数指令:单条指令可以包含多个操作数,支持多种寻址模式(如立即寻址、寄存器寻址、直接寻址等)。

  • 微指令:复杂的指令通常由多个微操作组成,通过微指令在硬件层面分解执行。

  • 指令长度可变:指令长度不固定,依据指令的复杂度和功能而定,通常从几字节到十几字节不等。

  • 高代码密度:由于指令功能强大,通常能够用较少的指令完成任务,节省存储空间。

4. 优点

  • 代码密度高:复杂指令能够执行多种操作,减少程序所需的指令数量,节省内存。

  • 易于编程:高级操作可以通过单条指令实现,简化了编程复杂性。

  • 适用于复杂任务:适合处理复杂的、高层次的任务,如图形处理、字符串操作等。

5. 缺点

  • 硬件复杂度高:复杂的指令集需要更复杂的解码和执行单元,增加了处理器的设计和制造难度。

  • 执行速度不稳定:由于指令长度和执行时间不一致,流水线设计和优化变得困难,可能导致执行效率不高。

  • 功耗较高:复杂的硬件结构和多功能指令增加了功耗,不利于移动设备等对功耗敏感的应用场景。

6. 典型代表

  • Intel x86 系列:如 8086、80386、Pentium 系列等,广泛应用于个人计算机。

  • IBM System/360 和 System/370:用于大型机和企业级计算。


二、RISC(精简指令集计算机)

1. 定义

RISC(Reduced Instruction Set Computer) 是一种处理器设计理念,其核心思想是通过精简指令集、简化指令执行过程来提高处理器的执行效率。RISC 指令通常是固定长度、执行速度快、且每条指令执行单一操作。

2. 历史背景

RISC 的概念在 1980 年代初期由 John Cocke 等学者提出,旨在通过简化指令集来提升处理器的流水线效率和整体性能。典型的早期 RISC 处理器包括 IBM 801Stanford MIPSSun SPARC

3. 特点

  • 简化的指令集:指令数量较少,且每条指令执行单一、简单的操作,如加载、存储、算术运算等。

  • 固定长度指令:通常采用统一的指令长度(如 32 位),便于指令解码和流水线设计。

  • 单周期执行:设计目标是每条指令在一个时钟周期内完成,简化了执行流程。

  • 大量寄存器:拥有更多的通用寄存器,减少内存访问次数,提高数据访问速度。

  • 流水线优化:简化的指令集和固定长度指令使得流水线设计更高效,提升指令吞吐量。

4. 优点

  • 高执行速度:单周期执行和高效的流水线设计显著提升处理器的指令执行速度。

  • 硬件实现简单:简化的指令集和固定长度指令使得指令解码和执行单元设计更为简单。

  • 功耗较低:简化的硬件结构和高效的执行流程降低了功耗,适合移动设备和嵌入式系统。

  • 高代码性能:通过大量寄存器和高效的指令执行,提升了程序的整体运行性能。

5. 缺点

  • 代码密度较低:由于指令数量较多且功能单一,执行相同任务可能需要更多的指令,增加了代码体积。

  • 需要高效的编译器:为了充分利用 RISC 处理器的优势,需要编译器能够优化寄存器分配和指令调度。

  • 初期开发成本高:在 RISC 早期阶段,设计和开发高效的编译器和工具链需要较高的投入。

6. 典型代表

  • MIPS(Microprocessor without Interlocked Pipeline Stages):广泛应用于嵌入式系统和教育领域。

  • ARM(Advanced RISC Machine):目前全球最广泛使用的处理器架构,应用于智能手机、平板电脑、嵌入式设备等。

  • PowerPC:曾广泛应用于苹果电脑、游戏主机等领域。

  • RISC-V:一个开源的指令集架构,近年来发展迅速,受到广泛关注。


三、CISC 与 RISC 的比较

特性CISCRISC
指令集复杂度高,包含大量复杂指令低,指令数量有限且简单
指令长度可变长度固定长度
执行时间指令执行时间不固定,有些指令可能需要多个周期单周期执行,大部分指令在一个时钟周期内完成
流水线设计复杂,难以优化简单,高效,易于实现深流水线
寄存器数量较少,更多依赖内存操作较多,减少内存访问次数
代码密度高,功能强大的指令减少了指令数量低,更多简单指令导致代码体积增大
硬件实现复杂度高,复杂的指令解码和执行单元低,简化的指令解码和执行单元
功耗较高,由于复杂的硬件结构和多周期执行较低,由于简化的硬件结构和高效的执行
编译器需求较低,指令功能丰富,编译器无需进行过多优化较高,需高效的编译器优化寄存器分配和指令调度
典型应用个人计算机、大型机、服务器移动设备、嵌入式系统、高性能计算

四、现代处理器的发展趋势

随着技术的发展,CISC 和 RISC 的界限逐渐模糊,现代处理器往往融合了两者的优点,形成了 复杂性与高效性的结合。以下是一些关键趋势:

1. 微架构中的 RISC 化

尽管 x86 架构(典型的 CISC 架构)仍然广泛应用于个人计算机和服务器,但其内部微架构已经大量采用了 RISC 的设计理念。例如,x86 处理器内部将复杂的 CISC 指令分解为更简单的微操作(Micro-operations),类似于 RISC 指令的执行方式。这种设计结合了 CISC 的高代码密度和 RISC 的高执行效率。

2. RISC 架构的广泛应用

RISC 架构,尤其是 ARM,在移动设备和嵌入式系统中占据主导地位。随着物联网(IoT)、智能设备和高性能计算需求的增长,RISC 架构的优势进一步凸显。此外,开源的 RISC-V 指令集架构正在快速发展,受到广泛关注和应用。

3. 混合架构与多核设计

现代处理器通常采用多核设计,通过增加处理器核心数量提升性能。同时,混合架构(如 ARM's big.LITTLE 技术)结合高性能核心和高能效核心,实现性能与功耗的平衡。

4. 超标量与并行执行

无论是 CISC 还是 RISC,现代处理器普遍采用超标量设计,能够在同一时钟周期内执行多条指令。同时,指令级并行(ILP)技术进一步提升了处理器的执行效率。

5. 深度流水线与分支预测

为了提升处理器的指令吞吐量,现代处理器采用深度流水线设计,并结合先进的分支预测技术,减少流水线停顿和指令重排,提高整体性能。


五、总结

CISCRISC 作为两种主要的处理器设计理念,各自拥有独特的优势和适用场景:

  • CISC 适合需要高代码密度和复杂操作的应用,如桌面计算机和服务器,能够通过复杂指令减少代码体积。

  • RISC 适合追求高执行效率和低功耗的应用,如移动设备和嵌入式系统,能够通过简化指令集提升处理器的执行速度和能效。

随着技术的进步,现代处理器逐渐融合了 CISC 和 RISC 的优点,形成了更加高效和灵活的微架构设计。理解这两种架构的基本原理和差异,有助于更好地把握计算机体系结构的发展趋势,以及在不同应用场景下选择合适的处理器架构。


六、参考资料

  1. Computer Organization and Design by David A. Patterson and John L. Hennessy
  2. Modern Processor Design: Fundamentals of Superscalar Processors by John P. Shen and Mikko H. Lipasti
  3. The Architecture of Computer Hardware, Systems Software, and Networking by Irv Englander
  4. Wikipedia: CISC
  5. Wikipedia: RISC

如果你有更多关于 CISC 和 RISC 的具体问题或需要进一步的解释,请随时提问!

标签:RISC,61,指令,处理器,指令集,执行,CISC
From: https://blog.csdn.net/m0_69378371/article/details/145125918

相关文章

  • RISCV学习(4)GD32VF103 MCU芯片学习
    笔者有空学习了GD32的RSICV芯片,故来总结一下。GD32RISCV芯片系列GD:GidaDeivce,兆易创新,生产的MCU的内核架构系列如下图所述,主要是ARM架构的,Cortex-M23、M3、M4、M33以及M7,然后也涉及到了RISC-V架构的,笔者今天就来聊一下RISCV架构的MCU产品。GD32的RISC-V的芯片类型主......
  • CS61B srping 2018 disc04 https://sp18.datastructur.es/
    extends(扩展)和override(重写)extends关系导致的类型,子类一定是父类,父类一定不是子类。就赋值而言,父类a=子类b是ok的;反过来子类x=父类y;是不ok的,也就是说赋值时,类型层级上,右边一定是小于(低于)左边的。给定Animal类,填写Cat类的定义,以便在greet()被调用时,......
  • ciscn_2019_n_8 1
    checksec一下能发现开了很多保护,吓人一跳,但其实我们分析一下发现只要var[13]为17就可以了if(*(_QWORD*)&var[13])#判断var[13]开始的8字节(_QWORD表示64位,即8字节)内存区域是否非零。*(_QWORD*)&var[13]是将var[13]的地址转换为_QWORD(64位整数)指针,然后解引用得到该内存区域的......
  • 浙江工商大学 计算机网络期末选择题出题范围161—215题
    161.ARP协议中,ARP响应是发送( )。A.单播B.组播C.广播D.点播162.关于路由器的说法,正确的是( )A.路由器处理的信息量比交换机少,因而转发速度比交换机快B.对于同一目标,路由器只提供延迟最小的最佳路由C.通常的路由器可以支持多种网络层协议,并提供不同协议之间的分......
  • CS61A
    CS61A1.hw01https://cs61a.org/hw/hw01/fromoperatorimportadd,subdefa_plus_abs_b(a,b):"""Returna+abs(b),butwithoutcallingabs.>>>a_plus_abs_b(2,3)5>>>a_plus_abs_b(2,-3)5>&g......
  • 洛谷 P3615 如厕计划
    题意:2n个人排队上厕所,有两个厕所,一个男女都可以上,一个只有女的可以上,每个人上厕所都只有一分钟,你可以调整这些人的顺序,每个的怒气值为有多少后面的人排到自己前面了。求可以n分钟上完厕所的情况中,怒气最大的最小。这题看半天没思路,只能看题解。首先厕所一分钟都不能停,要么男女一......
  • CC430F5137IRGZR数据手册 CC430F613x、CC430F612x、CC430F513一款低功耗射频无线收发
    TICC430系列超低功耗片上系统(SoC)器微控制搭载有集成射频收发器内核,并包含数个采用各种不同外设集的器件,可广泛应用于各种应用。此架构经过优化,与五种低功耗模式相配合使用,可延长便携式测量应用中的电池寿命。该器件具有功能强大的MSP43016位RISCCPU、16位寄存器和有......
  • NS4861 单灯指示独立耳锂电池充放电管理IC
    1特性●最大500mA线性充电电流,外部可调节●内部预设4.2V充电浮充电压●支持0V电池充电激活●支持充满/再充功能●内置同步升压放电模块,输出电压5.1V●同步升压VOUT最大输出电流500mA●VOL/OR独立耳最大输出电流200mA●电池待机电流≤10uA@4.2V●......
  • 电流传感器HLSR50-P KX022-1020加速度计 LM27761DSGR稳压器 MAX14752EUE SAF7755HV音
    1、HLSR50-P是一款开环霍尔效应电流传感器,主要用于电子测量直流、交流和脉冲电流,同时确保初级和次级电路之间的电隔离。HLSR50-P电流传感器规格用于测量:AC/DC传感器类型:霍尔效应,开环电流-检测:50A通道数:1输出:比率,电压灵敏度:16mV/A频率:400kHz线性度:±0.5%......
  • 打卡信奥刷题(561)用C++信奥P7343[普及组/提高] 【DSOI 2021】电子跃迁
    【DSOI2021】电子跃迁题目背景“如果能证明大统一理论,这个世界将焕然一新。”“量子……量子……就差一点……”“嘶……哦。我想我明白了。”题目描述在你的视野下,出现了一排电子,他们分别拥有不同的能量。你需要做的是通过将相邻电子互换的方法,将电子排的有序。有......