保存桌面快捷方式 - - 设为首页 - 手机版
凹丫丫旗下网站:四字成语大全 - 故事大全 - 范文大全
您现在的位置: 范文大全 >> 理工论文 >> 电子通信论文 >> 正文

TMS320F24x的实时多中断任务处理


~INT6)正在被挂起或正在等待响应。将1写入到相应的标志位,可清除相应位,并清除其中断请求。在图2中,0表示一般情况下读的数为0,R表示读,W1C表示写1时把这位清为0,-0表示复位后这位为0。

(2)外设备中断源分级控制寄存器

由外设产生的每一个特定中断源,DSP都提供两个相应的分级控制寄存器,包括一个子标志位中断控制寄存器和一个子屏蔽位中断控制寄存器。

对于由事件管理器产生的中断事件,每个中断源都有相应的中断控制寄存器,如图3所示。

①三组事件中断子屏蔽寄存器(EVIMRA/EVIMRB/EVIMRC),用以屏蔽对应的事件管理器中断。EVIMRi(i=A,B,C)各位的意义基本与IMR一致。

②三组事件中断子标志寄存器(EVIFRA/EVIFRB/EVIFRC),用以指示对应的事件管理器中断。EVIFRi(i=A,B,C)各位的意义基本与IFR一致。

对于系统模块中断,其各个中断事件的中断屏蔽位和中断标志位由各个专用的分级模块寄存器提供。如SCI中断,其扫收中断RXINT的屏蔽与使能由SCI模块内的控制寄存器SCICLT2的中断位RX/BKEN设置。当接收中断产生后,SCI的接收状态寄存器SCIRXST的RXRDY位置1,以表示接收中断产生。

图4 可屏蔽中断的多中断任务响应处理示意图

    另外,值得注意的是,DSP内核的ST0状态寄存器中还有一个中断总屏蔽位-INTM。INTM为0时,开中断,允许没有被屏蔽的中断使能;INTM为1时,则禁止所有可屏蔽中断。

1.3 TMS320F240的中断响应过程

(1)TMS320F240中断响应过程

当有中断事件发生时,F240器件分三个阶段进行中断处理。

①接收中断请求。由软件中断(来自程序代码)或硬件中断(来自引脚或片内外设)提出中断请求,将主程序挂起。

②响应中断。如果中断是可屏蔽的,当这些可屏蔽中断的应用条件满足时,F240器件响应中断;对于不可屏蔽的硬件中断和软件中断,F240器件将立即作出响应。

③执行中断服务子程序。一时中断被响应,F240器件便转移到其相应的中断子程序ISR(Interrupt Service Routine)。F240按用户放置在预定地址(向量存储单元)处的转移指令,执行用户写好的中断服务程序。

在完成对多中断任务的实时处理时,对不同级别的中断源响应,直接进入相应的ISR进行处理即可。对共享DSP内核中同一中断优先级的多中断源,DSP则利用内部的多级中断控制寄存器,对每一个中断源发出的中断请求都用多个中断标志进行标识。图4是一个多中断源共享INT3级中断的多中断任务请求响应处理过程示意图。当接收到一个中断信号(TPINT2/TOFINT3)时,相应的中断源子标志寄存器(EVIFRB)中的标志位被置位,用以指示中断已被请求。如果中断源子屏蔽寄存器(EVIMRB)中的屏蔽位也被设置为开中断,则该信号被送至仲裁逻辑器,仲裁逻辑可能同时从一个或多个中断控制寄存器接收到类似的多中断任务信号。仲裁逻辑通过比较这些竞争中断请求的优先级,将具有最高优先级的中断送至CPU。CPU的总中断级标志寄存器IFR中与所接收的中断优先级相对应的中断标志位将被置位,指示中断被挂起。如果总中断级屏蔽寄存器IMR中相应的屏蔽位为1,并且DSP中断总屏蔽位INTM为0,则CPU响应该中断并执行相应的中断服务子程序。

(2)中断向量偏移地址

为了更好地处理多中断源复用的问题,DSP采用了向量偏移地址的方法。因为采用中断标志分辨的方法需要进行多次条件判断才能把涉及到的具体中断源分辨出来;而采用中断向量偏移地址的方法,只需两条指令即可完成分辨任务,减少了程序存储器的存储开销,节约了CPU的时钟开销。

DSP控制器为事件管理模块的每一个中断都分配了一个不同的中断向量偏移地址。当某个事件管理模块发出了请求信号,分自动地将该中

《TMS320F24x的实时多中断任务处理(第2页)》
本文链接地址:http://www.oyaya.net/fanwen/view/164989.html

★温馨提示:你可以返回到 电子通信论文 也可以利用本站页顶的站内搜索功能查找你想要的文章。