- 博客(4)
- 收藏
- 关注
原创 浅谈ARM Cortex-M系列架构——异常和中断(二)
对于Cortex-M 处理器(包括ARMv6-M和ARMv7-M)异常是否能被处理器接受以及何时被处理器接受并执行异常处理,是由异常的优先级和处理器当前的优先级决定的。更高优先级的异常(优先级编号更小)可以抢占低优先级的异常(优先级编号更大),这就是异常/中断嵌套的情形。有些异常(复位、NMI和 HardFault)具有固定的优先级,其优先级由负数表示这样,它们的优先级就会比其他的异常高。其他异常则具有可编程的优先级,范围为 0~255。
2023-05-22 02:42:16 1282 2
原创 浅谈ARM Cortex-M系列架构——异常和中断(一)
Cortex-M3和Cortex-M4 处理器中存在一个名为嵌套向量中断控制器(NVIC)的中断控制器,它是可编程的且其寄存器经过了存储器映射。NVIC 的地址固定,而且 NVIC 的编程模型对于所有的Cortex-M处理器都是一致的。下图是NVIC(嵌套向量中断控制器)在存储器中映射的位置。除了外设和其他外部输入的中断外,NVIC还支持多个系统异常,其中,包括不可屏蔽中断(NMI)和处理器内部的其他异常源。
2023-05-09 17:29:24 2180 1
原创 浅谈ARM Cortex-M系列架构——架构篇
Cortex-M3和Cortex-M4 处理器都基于ARMv7-M架构。最初的ARMv7-M架构是随着Cortex-M3处理器一同引入的,而在Cortex-M4发布时,架构中又额外增加了新的指令和特性,改进后的架构有时也被称为 ARMv7E-M。要了解ARMv7-M和ARMv7E-M 的特性可以参考架构说明文献:ARMv7-M架构参考手册。ARMv7-M架构参考手册非常庞大,超过了1000页其中括从指令集存储器系统到调试支持的处理器行为的架构需求细节。
2023-05-01 15:20:11 4895 3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人