异常与中断

本文介绍了CPU的三种运行状态及异常模式,包括usr、sys和异常模式。详细阐述了异常,如und、SVC、Abt、IRQ和FIQ,并提及CPSR和SPSR寄存器的作用。讨论了中断处理流程,包括保存、处理和恢复现场,以及arm对异常处理的具体步骤。此外,还解析了硬件中断线与软件中断号的对应,以及handle_edge_irq与handle_level_irq两种中断触发方式的区别。
摘要由CSDN通过智能技术生成

CPU的运行状态有三种:

  1. usr 正常工作模式
  2. sys 系统模式
  3. 异常模式

CPU在运行过程中,会被各种“异常”打断。“异常”包括:

  1. und 指令未定义
  2. SVC 管理模式
  3. Abt 中止模式
  4. IRQ 中断模式
  5. FIQ 快中断模式

CPSR:当前程序状态寄存器(Current Program Status Register)

SPSR:CPSR的备份寄存器

每种异常下都会有特有的一些寄存器(带有三角符号的)

中断处理流程:保存、处理、恢复

 

arm对异常(中断)处理过程:

① 初始化:

  a. 设置中断源,让它可以产生中断

  b. 设置中断控制器(可以屏蔽某个中断,优先级)

  c. 设置CPU总开关(使能中断)

② 执行其他程序:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值