ARM系列处理器有两种中断请求类型:普通中断请求(Interrupt Request, IRQ)和快速中断请求(Fast Interrupt Request, FIQ) 。
1、IRQ和FIQ
IRQ中断请求(也叫IRQ异常)属于普通中断请求,由nIRQ引脚上的低电平触发。IRQ中断请求的优先级低于FIQ,即当FIQ信号进人时,IRQ被暂停执行。FIQ中断(也叫FIQ异常)用于高速数据传输和通道处理。在ARM工作模式下,FIQ拥有充足的专用寄存器。程序员在编程时无需考虑节省寄存器的问题,从而减小了任务切换时的开销。FIQ由外部的nFIQ引脚上的低电平产生,其电平输人依赖于ISYNC (ARM7TDMI输人信号),能够排除同步或者异步的情况。当ISYNC信号为低电平时,IRQ和FIQ被认为是异步的,在中断影响处理器流程之前,会产生一个时钟周期延时以转人同步状态。
2、IRQ中断和FIQ中断的禁能/使能方式
在特权(非用户)模式下,设置/复位PSR(CPSR和SPSR的统称)的1位和F位,能够禁止/允许CPU响应IRQ和FIQ中断请求。因此.为了开放IRQ和FIQ中断响应功能,I位和F位必须被清零e,同时INTMSK(中断屏蔽寄存器)的相应位也必须清零。
文章由
arm核心板供应商小编原创,转载请注明文章来源出处,谢谢合作!
文章评论(0条评论)
登录后参与讨论