ARM处理器

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),常用于处理中断或异常,以及需要访问受保护的系统资源等情况。

你可能感兴趣的:(嵌入式,arm开发)