Cortex-M23与Cortex-M33处理器架构解析
1. VTOR与向量表
在Cortex - M23处理器中,向量表偏移寄存器(VTOR)是可选的。芯片设计人员可以省略VTOR以最小化硅片面积。若未实现VTOR寄存器,它会被固定为芯片设计人员定义的值且不可更改。即便未实现VTOR,向量表的值仍可以非零,这与Cortex - M0 + 处理器不同,后者若未实现VTOR则固定为0。
若实现了TrustZone安全扩展,会有两个向量表。安全异常的向量表应位于安全地址范围,非安全异常的向量表位于非安全地址范围。VTOR寄存器分为VTOR_S(安全VTOR)和VTOR_NS(非安全VTOR)。
2. 故障处理
故障异常在处理器检测到错误(如执行未定义指令)或总线系统对内存访问返回错误响应时触发。故障异常机制能快速检测错误,使系统无需等待看门狗定时器即可响应错误。
Armv8 - M Baseline(Cortex - M23处理器)和Armv8 - M Mainline(如Cortex - M33处理器)在故障处理特性上存在差异:
- 可用异常不同 :Armv8 - M Mainline支持BusFault、UsageFault、MemManage Fault和SecureFault异常,而Armv8 - M Baseline不支持。
|异常类型|Armv8 - M Baseline(Cortex - M23)|Armv8 - M Mainline(Cortex - M33)|
| ---- | ---- | ---- |
|BusFault|不支持|支持|
|Usage
超级会员免费看
订阅专栏 解锁全文
118

被折叠的 条评论
为什么被折叠?



