摘要
在ARM体系结构中,硬件产生的外部中断(IRQ)具有单一的程序入口。为了识别中籽源,进而运行对应的中断服务例程(ISR),程序需读取中断悬挂寄存器,获得中断号。在这种方式中,程序必须通过软件方法对中断悬挂寄存器的每一位进行比较,直到找到中断源为止,效率较低。本文移植了基于2.6.11内核的uClinux[1],在此基础上设计了一套向量中断机制,并基于ARM7TDMI架构的S3C44BOX处理器,实现了这套向量中断机制。结果表明,这套机制可以大规模地减少外部中断的响应时间。
Under ARM architecture, hardware generated external interrupts (IRQ) have one single entry point. To recognize theinterrupt source and run the corresponding interrupt service routine(ISR), the program has to check every bit of the interruptpending register until the interrupt source is found. Consequently, the efficiency is relatively low. In this paper, uClinux[1] 2.6 is ported and a vector interrupt mechanism is implemented using S3C44BOX, which is based on ARM7TDMI architecture. Theresult shows that this mechanism can dramatically reduce the response time of external interrupt.
出处
《微型电脑应用》
2006年第3期18-21,66-67,共4页
Microcomputer Applications