《Cortex-M0权威指南》之Cortex-M0技术综述

Cortex-M0 处理器简介【《Cortex-M0权威指南》之Cortex-M0技术综述】1. Cortex-M0 处理器基于冯诺依曼架构(单总线接口) , 使用32位精简指令集(RISC) , 该指令集被称为Thumb指令集 。与之前相比 , 新的指令集增加了几条ARMv6架构的指令 , 并且加入了eThumb-2指令集的部分指令 。Thumb-2技术扩展了Thumb的应用 , 允许所有的操作都可以在同一种CPU状态下执行 。Thumb指令集既包括16位指令 , 也包括32位指令 。C编译器生成的指令大部分是16位的 , 当16位的指令无法实现所需要的操作时 , 32位指令就会发挥作用 。这样以来 , 在代码密度得到提升的同时 , 还避免了两套指令集之间进行切换带来的开销
2. Cortex-M0总共支持56个基本指令 , 其中某些指令可能会有多种形式 。相对于Cortex-M0较小的指令集 , 其处理器的能力可不一般 , 因为Thumb是经过高度优化的指令集 。从理论来说 , 由于读写存储是的指令是相互独立的 , 而且算数或逻辑操作的指令使用寄存器 , Cortex-M0处理器可以被归到加载-存储(load-store)结构中 。
 3. 处理器核心包括:
寄存器组 包含16个32位寄存器 , 其中有一些特殊寄存器
算术逻辑单元
数据总线
控制逻辑
流水线根据设计可分为三种状态: 取指、译码、执行 。

4.嵌套向量中断控制器(NVIC)可以处理最多32个中断请求和一个不可屏蔽中断(NMI)输入 。
5.NVIC需要比较这个在执行中断和请求中断的优先级 ,  , 然后自动执行高优先级的中断 。
6.如果要处理一个中断 , NVIC会和处理器进行通信 , 通知处理器执行中断处理程序 。
7.唤醒中断控制器(WIC)为可选的单元 , 在低功耗应用中 , 在关闭了处理器大部分模块后 , 微控制器会进入待机装填 , 此时 , WIC可以在NVIC和处理器处于休眠的情况下 , 执行中断屏蔽功能 。当WIC检测到一个中断时 , 会通知电源管理部分给系统商店 , 让NVIC和处理器内核执行剩余的中断处理 。
8.关于调试子系统 , 当调试事件发生时 , 处理器内核会被置于暂停状态 , 这是开发人员可以检查当前处理器的状态 。硬件调试工具有JTAG和SWD(串行线调试) 。

    推荐阅读