全网最详细的Cortex-M0的CPU结构基础知识

文章目录

    • ARM处理器类型
      • Cortex-A系列
      • Cortex-R系列
      • Cortex-M系列
      • SecurCore系列
      • Classic系列
    • Cortex-M系列处理器的特点
    • ARM架构之间的关系
    • Cortex-M0处理器的性能
    • Cortex-M0处理器结构
      • 处理器内核
      • 嵌套向量中断控制器
      • 总线系统
      • 调试子系统
      • 唤醒中断控制器
    • Cortex-M0处理器寄存器组
      • 通用寄存器组
      • 特殊寄存器
        • 组合程序状态寄存器(xPSR)
          • APSR
          • IPSR
          • EPSR
        • 中断屏蔽特殊寄存器
        • 特殊寄存器(CONTROL)
    • Cortex-M0存储器空间映射
    • Cortex-M0程序镜像原理及生成方法
    • Cortex-M0的端及分配
    • Cortex-M0处理器异常及处理
      • 异常原理
      • 异常优先级
      • 向量表
      • 异常类型
        • 复位
        • 不可屏蔽中断NMI
        • 硬件故障(HardFault)
        • 请求管理调用(SVCall,SuperVisor Call)
        • 可挂起的系统调用(PendSV)
        • 系统滴答(SysTick)
        • 外部中断

ARM处理器类型

ARM 处理器采用的是精简指令集 (Reduced Instruction Set Computing,RISC)处理器架构。RISC 架构的特点包括:

  1. 在功耗,尤其是低功耗方面优势明显。
  2. 这种架构已经被广泛的应用在移动设备中,比如: 智能电话和平板电脑中。
  3. 这种架构具有良好的生态系统支持,生态系统包括:技术文档、设计参考、驱动程序代码,以及不同的操作系统。对于设计用户来说,很容易找到相关的设计资源。

目前,ARM 处理器主要分为 Cortex-A、Cortex-R、Cortex-M、SecurCore 和 Classic 几大类

Cortex-A系列

该系列处理器也称为应用处理器,该系列属于高性能处理器,可使用各种开放的操作系统,比如 Linux。Cortex-A 系列处理器主要应用于智能电话、数字电视、智能书、家用网关等。

Cortex-R系列

该系列处理器也称为实时处理器,基于该处理器在异常事件处理方面的性能,它主要用于实时方面的应用,包括:汽车刹车系统、动力装置等。.

Cortex-M系列

该系列处理器主要应用于对价格比较敏感,也就是低成本的场合,比如:微控制器、混合信号设备、智能传感器、汽车电子和安全气囊。

SecurCore系列

该系列处理器主要应用于对安全性要求较高的场合。

Classic系列

该系列是以前传统的处理器架构,包括ARM7、ARM9 和ARM11等。

Cortex-M系列处理器的特点

Cortex-M 系列处理器包括: Cortex-M0、Cortex-M0+、Cortex-M1、Cortex-M3、Cortex-M4、
Cortex-M7,该系列处理器的特点主要包括:

  1. 该系列处理器主要应用于低功耗,以及对电池续航能力要求较高的场合。
  2. 该系列处理器结构相对简单,所消耗的晶圆面积较少,因此该系列处理器封装体积较小。
  3. 通过 Keil uVision 集成开发环境,可以迅速完成软件应用程序的开发,以及实现设计代码的重用。·

Cortex-M0的ARM架构为ARMv6-M,内核架构为冯诺依曼架构,包含大部分的Thumb和Thumb-2子集,硬件乘法为1或者32个周期,无硬件除法,无饱和数运算,无DSP扩展,无浮点

ARM架构之间的关系

在这里插入图片描述

Cortex-M0处理器的性能

Cortex-M0处理器是Cortex-M 系列处理器中结构和功能最简单的一个处理器,其性能和特点主要包括:

  1. 采用32位RISC架构的处理器。
  2. 采用冯诺依曼架构,即:指令和数据共享一个总线接口。
  3. 当使用 Cortex-M0处理器的最小配置时,构成该处理器大约只消耗 12,000 个逻辑门资源。
  4. 该处理器支持绝大部分的16位Thumb-1 指令和某些32位Thumb-2 指令。
  5. 采用了90nm低功耗制造工艺。当使用Cortex-M0的最小配置时,功耗仅为16uw/MHz。
  6. 该处理器指令集包含 56 条指令,提供对C语言的友好设计框架 CMSIS。
  7. 该处理器采用ARMv6-M 架构。
  8. 该处理器支持一个不可屏蔽中断(NMI)和1~32个物理中断。
  9. 提供休眠模式。

Cortex-M0处理器结构

Cortex-M0微处理器内部结构,ARM Cortex-M0微处理器包括:处理器核、嵌套向量中断控制器 (Nested VectorInterrupt Controller,NVIC)、调试子系统、唤醒中断控制器 (WakeupInterrupt Controller,WIC)、AHB LITE 总线接口以及连接这些单元的内部总线系统。下面对这些单元进行详细说明:

在这里插入图片描述

处理器内核

处理器核是 Cortex-M0最核心的功能部件,它负责对数据进行处理。

  1. 该处理器包含内部寄存器、算术逻辑单元(ALU)、数据通路和控制逻辑
  2. 该处理器核内部用于取指、译码和执行指令的指令通道采用三级流水结构

在这里插入图片描述

嵌套向量中断控制器

专用的 NVIC用于对中断进行管理,并且向处理器核发出中断请求信号。

  1. 包含最多32个中断请求信号,以及1个不可屏蔽中断。
  2. 自动处理嵌套中断,包括: 比较中断请求之问的优先级、以及当前中断的优先级。

总线系统

总线系统用于将 Cortex-M0内部的各个功能部件连接在一起。总线系统包含:

  1. 内部总线系统
  2. 处理器核内部的数据通道
  3. AHB Lite 接口单元

Cortex-M0总线系统的所有总线均为 32位宽度。

AHB-Lite

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

书阁下

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值