1、FIQ为什么比IRQ快?
ARM 之FIQ(快速中断) IRQ(中断)
FIQ:
1、多的寄存器备份,减少压栈等操作
2、优先级高
3、入口地址是0x1c,IRQ的入口地址是0x18。写过完整汇编系统的都比较明白这点的差别,18只能放一条指令,为了不与1C处的FIQ冲突,这个地方只能跳转,而FIQ不一样,1C以后没有任何中断向量表了,这样可以直接在1C处放FIQ的中断处理程序,由于跳转的范围限制,至少少了一条跳转指令。
2023-11-09 14:29:40
ARM 之FIQ(快速中断) IRQ(中断)
FIQ:
1、多的寄存器备份,减少压栈等操作
2、优先级高
3、入口地址是0x1c,IRQ的入口地址是0x18。写过完整汇编系统的都比较明白这点的差别,18只能放一条指令,为了不与1C处的FIQ冲突,这个地方只能跳转,而FIQ不一样,1C以后没有任何中断向量表了,这样可以直接在1C处放FIQ的中断处理程序,由于跳转的范围限制,至少少了一条跳转指令。