1、RISC处理器:
RISC (Reduced Instruction Set Computer) 微处理器是一种计算机微处理器架构,其设计原则是通过简化指令集来提高执行速度。
(1)、RISC处理器的设计理念:
- 简化指令集:RISC 微处理器的指令集非常精简,每条指令都执行一个基本的操作。这有助于简化处理器的硬件设计和流水线执行,从而提高指令的执行速度。
- 以寄存器为中心:RISC 微处理器使用大量的寄存器来存储和处理数据。因为指令集精简,需要频繁从内存中加载数据的次数减少,从而减少了内存访问的延迟,提高了性能。
- 流水线架构:RISC 微处理器通常采用流水线执行指令的方式,将指令的执行分为多个阶段,使得在同一时刻可以有多条指令在不同阶段同时执行。这样可以提高处理器的吞吐量。
- 延迟槽:一些RISC架构在分支指令后会有一个延迟槽,允许在分支指令执行前执行紧跟在后面的指令。这有助于减少因分支预测错误而造成的性能损失。
- 加载/存储架构:RISC 微处理器通常使用加载/存储架构,意味着大部分操作都在寄存器上执行,而不是直接在内存中操作数据。这可以提高内存访问的效率。
- 硬件多线程:一些RISC 微处理器支持硬件多线程,允许多个线程在同一时刻共享处理器的资源,提高处理器的利用率。
(2)、常见的RISC微处理器:
- ARM:用于移动设备、嵌入式系统和服务器领域,具有低功耗和高性能的特点。
- MIPS:广泛应用于嵌入式系统、网络设备和嵌入式控制器等领域。
- PowerPC:曾在 IBM 的计算机和一些游戏主机中使用,如早期的 Macintosh 和 PlayStation 3。
- RISC-V:开源的 RISC 架构,受到了广泛的关注,可以用于各种用途,从嵌入式设备到高性能计算。
2、CISC处理器:
CISC(Complex Instruction Set Computer)处理器是一种计算机微处理器架构,其设计理念是在单条指令中执行多个复杂操作,以便减少编程工作量和内存访问次数。
CISC处理器的特点:
- 复杂指令集: CISC 处理器的指令集相对较大且复杂,每条指令可以执行多个操作,包括访问内存、执行算术运算和逻辑操作等。
- 内存访问: CISC 处理器通常支持直接访问内存,这意味着许多操作可以直接在内存中执行,而不需要频繁地加载数据到寄存器。
- 指令格式多样性: CISC 指令通常有多种格式和寻址模式,允许在一条指令中执行多个操作,这可以减少程序员编写代码的工作量。
- 微代码: CISC 处理器通常使用微代码(microcode)来实现指令,这是一种低级别的指令集,与硬件层面的指令集之间的映射。
- 复杂的执行单元: CISC 处理器通常包含复杂的执行单元,用于支持多个指令的同时执行。
(2)、常见的CISC处理器:
- x86: 由 Intel 和 AMD 开发的处理器架构,广泛用于个人电脑和服务器领域。
- x86-64(也称为AMD64或Intel 64): 扩展了 x86 架构,增加了 64 位寻址和操作能力,用于现代 64 位计算机。
- DEC Alpha: 由 Digital Equipment Corporation(DEC)开发的处理器架构,曾用于高性能计算和服务器领域。
- VAX: 由 Digital Equipment Corporation(DEC)开发的处理器架构,曾在早期的计算机系统中广泛使用。
3、ARM处理器:
(1)、ARM处理器:
ARM微处理器支持两种指令集:ARM指令集和Thumb指令集。其中,ARM指令为32位的长度,Thumb指令为16位长度。Thumb指令集为ARM指令集的功能子集,但与等价的ARM代码相比较,可节省30%~40%及以上的存储空间,同时具备32位代码的所有优点。
(2)、ARM处理器的寄存器:
RM处理器共有37个寄存器,被分为若干个组(BANK):
- 31个通用寄存器,包括程序计数器(PC指针),均为32位寄存器。
- 6个状态寄存器,用以标识CPU的工作状态及程序的运行状态,均为32位。
(3)、ARM微处理器有以下7种运行模式:
- 用户模式(usr):ARM处理器正常的程序执行状态。
- 快速中断模式(fiq):用于高速数据传输或通道处理。
- 外部中断模式(irq):用于通常的中断处理。
- 管理模式(svc):操作系统使用的保护模式。
- 数据访问终止模式(abt):当数据或指令预取终止时进入该模式,可用于虚拟存储及存储保护。
- 系统模式(sys):运行具有特权的操作系统任务。
- 未定义指令中止模式(und):当未定义的指令执行时进入该模式,可用于支持硬件协处理器的软件仿真。
ARM微处理器的运行模式既可以通过软件来改变,也可以通过外部中断或异常处理来改变。大多数的应用程序运行在用户模式下,当处理器运行在用户模式下时,某些被保护的系统资源是不能被访问的。除用户模式以外,其余的所有6种模式称为非用户模式,或特权模式(Privileged Modes);其中除用户模式和系统模式以外的5种又称为异常模式(Exception Modes),常用于处理中断或异常,以及需要访问受保护的系统资源等情况。