您的位置:首页 > 其它

LM4F120 2.5.2 异常种类

2013-04-03 12:36 120 查看
翻译自ti官方datasheet p97页:

2.5.2 异常种类

重置。在上电或者热重启时候处于重置状态。重置在异常模型中是一种特别形式的异常。当处于重置状态时,处理器停止当前操作,可能会停在一条指令执行时候的任意一个时间点。当接触重置状态时,开始重新从中断向量表提供的重置异常进入地址开始执行。在线程(Thread)模式时,指令作为特权指令重新执行。

不可屏蔽中断(NMI)。一个不可屏蔽中断可以用NMI信号或者软件用中断控制和状态(INTCTRL)寄存器触发来产生。这种异常拥有除了重置(Reset)以外的最高优先级。NMI是永远被启用的并且具有固定的-2优先级。其他任何除了重置异常的异常的激活或抢占都不能屏蔽或者阻止NMI异常。

硬错误(Hard Fault)。一个硬错误是在异常处理中产生的错误或者一个不能被其他任何异常机制所管理的异常。硬错误的优先级固定为-1,意思是拥有比其他所有可调整优先级的异常更高的优先级。

内存管理错误。内存管理错误是一个跟内存保护有关系的错误,包括非法访问和不匹配。MPU或固定的内存保护约束设定了这种错误,对于指令和数据内存交换。这种错误时用来抛弃访问"禁止运行"(Execute Never)内存区域的指令,即使MPU被关闭的情况下。

总线错误。总线错误是一个在指令或数据内存读写时跟内存有关的错误,比如预读取错误或内存访问错误。这个错误可以被使能或者无效。

使用错误。使用错误是产生于指令执行时的,比如一个未定义的指令,一个非法的未对齐访问,指令执行时的无效状态或异常返回时的错误。当处理器正确设置时,一个对字长或半字长内存的访问中一个未对齐的地址,或被0除都会导致这个错误。

保护模式调用(SVC)。保护模式调用是被SVC指令触发的异常。在操作系统环境下,应用程序可以使用SVC指令来访问操作系统内核的功能和设备驱动。

Debug监视器。这个异常是被Debug监视器触发的(当不挂起处理器时)。这种异常只有在被使能的情况下会触发。如果本异常的优先级低于当前活动的优先级,那么本异常不会被触发。

待处理保护模式(PendSV)。待处理保护模式是一个可暂停,中断产生的对系统级服务调用。在操作系统环境下,当没有其他异常产生时,使用待处理保护模式调用可以用来切换上下文。使用中断控制和状态(INTCTRL)寄存器来触发本异常。

系统滴答(SysTick)。系统滴答异常是当系统的定时器被使能时,定时器到达0时产生的异常。软件也可以使用中断控制和状态(INTCTRL)寄存器产生系统滴答异常。在操作系统环境下,处理器可以使用本异常来当做操作系统节拍(滴答)。

中断(IRQ)。中断,或者中断请求(IRQ)是被外设或软件请求并连接到中断向量表(NVIC)(具有优先级)的异常信号。所有的中断对于指令执行都是异步的。在系统里,外设使用中断来和处理器通信,P99页的表2-9列出了LM4F120H5QR所有的中断。
对于一个异步触发的异常,除了重置之外,在当异常被触发的时到处理器进入到异常处理程序前,处理器可以执行另一条指令。
具有特权的程序可以使表2-8里的具有可更改优先级的异常无效。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: