Cortex-M23与Cortex-M33处理器技术解析
1. 访问权限定义机制
在处理器中,特权和非特权执行级别概念已存在多年。在有操作系统(OS)的系统中,OS内核和异常处理程序在特权访问级别执行,而应用线程通常在非特权访问级别执行。借助内存保护单元(MPU),可限制非特权线程/任务的访问权限。
若实现了TrustZone安全扩展,处理器内部可能有两个MPU(两者均为可选)。一个用于管理安全软件的访问权限,另一个用于管理非安全软件的访问权限。在支持TrustZone的系统中,这两种内存保护机制可协同工作。当执行软件尝试访问内存位置,且访问权限检查未通过其中一项保护措施时,传输将被阻止到达内存/外设,并引发故障异常以处理该问题。
2. 中断和异常处理
在Arm处理器中,中断(如外设生成的IRQ)是异常的子集。异常还包括故障事件处理和OS支持的异常。在Cortex - M处理器中,异常(包括中断)由内置的嵌套向量中断控制器(NVIC)处理。NVIC的设计让中断的管理和处理变得非常容易,其中“嵌套”和“向量”有如下含义:
- 嵌套中断处理 :处理器自动处理中断服务的嵌套,无需软件干预。例如,在执行低优先级中断服务时,高优先级中断可正常处理。
- 向量中断处理 :处理器硬件自动从向量表获取中断服务例程(ISRs)的起始程序地址,无需软件确定哪个中断请求需要处理,从而减少了中断服务的延迟。
NVIC可由芯片设计人员进行如下配置:
- 支持的中断数量可定制。
- Cortex - M33处理器支持的优先级级别数量可配置,而Cort
超级会员免费看
订阅专栏 解锁全文
119

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



