论文首页哲学论文经济论文法学论文教育论文文学论文历史论文理学论文工学论文医学论文管理论文艺术论文 |
中断是嵌入式芯片的灵魂,这是因为多数嵌入式系统对实时性都有很高的要求,即对出现事件的响应要极为迅速。中断与软件查询方式相比有着更高的执行效率。在TI公司的TMS320C54x系列(以下简称C54x系列)DSP中,同样也提供了很好的中断机制。
1 C54x中的中断机制
中断信号实质上是由硬件或者是软件驱动的信号,它能使DSP暂停正在执行的程序并进入中断服务程序(ISR)。在最典型的DSP系统中,如果A/D转换器需要送数据到DSP中,或者D/A转换器需要从DSP中取走数据,都是通过硬件中断向DSP发出请求的。
C54x系列DSP支持软件中断和硬件中断。软件中断是由指令(INTR、TRAP、RESET)触发的,硬件中断是由外围器件触发的。硬件中断实际上又分为两类:一类是由DSP的片外外设(如A/D转换器)触发的,另外一类是由DSP的片内外设(如定时器中断)触发的。硬件中断又有优先级的区分,这是为了处理同一时刻有多个硬件中断源触发中断的情况。硬件中断的种类和优先级请参看具体使用的芯片资料。
如果按照可屏蔽情况分类,中断又可分为可屏蔽中断(C54x至多支持16个)和不可屏蔽中断。可屏蔽中断受ST1寄存器中的INTM位和IMR寄存器中相应位的影响。当INTM=0时,IMR中某位为1,则开放相应的中断。其实,在C54x中硬件中断并不一定要由外围器件触发,它同样可以由指令INTR、TRAP触发,并且不受INTM的限制。有一点需要引起注意的是:指令RESET复位和硬件RS复位对IPTR和外围电路初始化是不相同的。硬件复位时IPTR总是被置为0x1FF,软件复位时则不会修改当前IPTR的值。C54x的中断处理过程分为三个阶段:
①中断请求。可以用硬件器件或者软件指令请求中断。如果请求的中断是可屏蔽中断,则IFR寄存器中相应的位被置为1,而不管中断是否会被响应。
②中断响应。对于软件中断和不可屏蔽中断,CPU是立即响应的。对于可屏蔽中断,要满足下列条件才能响应:
·优先级最高(同时出现多个中断时)
·INTM位为0
·IMR中相应位为1
CPU在取到软件向量的第一个字后会产生IACK信号,对可屏蔽中断而言,IACK会清除IFR中相应位。
③中断处理。保护特定的寄存器,执行中断服务程序,完成后恢复寄存器。保护寄存器的原则是执行中断服务程序后能正确返回并恢复原来运行程序的环境。
(科教作文网 zw.nseac.com整理)