中断处理方法及中断控制器技术

技术编号:12386641 阅读:66 留言:0更新日期:2015-11-25 19:00
本发明专利技术公开了一种中断处理方法及中断控制器,在处理器将当前中断的中断处理完毕标识信息写入中断控制器之前,就将该中断的中断源清除信息存入中断控制器;然后在中断控制器接收到处理器发送的写入中断处理完毕标识信息请求时,直接根据中断控制器中存储的中断源清除信息对该中断的中断源进行清除;并不需要处理器先通过多个总线转换桥去访问相应外设的中断清除寄存器以获取清除中断源所需要的信息,然后再进行清除。因此本发明专利技术提供的方案可以在较大程度上缩短中断源清除所需的处理器时间,避免延迟其他中断的响应时间。

【技术实现步骤摘要】

本专利技术涉及通信领域,具体涉及一种中断处理方法及中断控制器
技术介绍
在移动芯片上的中断控制器设计领域,目前常见的中断控制器处理方式为被动接受中断信号的方式,当前中断控制器结构如图1所示。目前移动芯片的设计都是SOC的架构,几乎所有的外设都集成在片上,通过不同的总线和总线桥作为slave完成与CPU的交互,通过中断线作为master完成与CPU的交互。外设内部所有的中断通过共享一根中断线连接到中断控制器上。中断控制器中的采样接口对接入的中断线进行采样,并将采样结果送给中断控制逻辑。当连接在中断控制器上的某根中断线有效时,中断控制逻辑根据用户预先通过slave口设定在寄存器组中的信息(中断使能与否,中断触发方式和中断优先级等信息)来判决当前采样的信号是否有效。如果有效,则控制采样接口停止对当前响应中断线的采样,同时使连接CPU的中断线有效,使CPU响应中断。CPU自动关闭总中断,然后运行中断处理程序,从中断控制器组中读取当前相应的中断号,然后根据中断号处理对应的中断。如果响应的中断的触发方式是电平类型的,还需要在中断处理程序中写相应的外设中的中断清除寄存器来清除中断源。当中断处理完毕后,中断处理程序会写入中断控制器要求的值给中断控制器组中的指定寄存器,这样中断控制逻辑就会使能采样接口对当前响应的中断线继续采样,以响应新的中断。同时CPU总中断会被打开,以响应其它的中断。在上述中断控制器对中断的处理方法中,对于电平触发的中断,在用户没有清除中断源的情况下,中断控制器会在响应完一次中断后继续响应当前的中断,造成系统运行故障。同时在SOC系统中外设往往挂在不同的速度的子总线下,CPU在进行中断源的清除时,需要经过很多个总线转换桥去访问相应外设的中断清除寄存器以获取清除中断源所需要的信息;导致CPU做一次中断源清除操作需要花费很多时间,不利于对中断的快速响应;而中断的处理原则是关闭系统总中断的时间尽量短,否者会延迟其它中断的响应时间。
技术实现思路
本专利技术要解决的主要技术问题是,提供一种中断处理方法及中断控制器,解决现有中断源的清除需花费处理器较多时间的问题。为解决上述技术问题,本专利技术提供一种中断处理方法,包括:在处理器将当前中断的中断处理完毕标识信息写入中断控制器之前,将所述中断的中断源清除信息存入所述中断控制器;在所述中断控制器接收到所述处理器发送的写入所述中断处理完毕标识信息请求时,根据所述中断控制器中存储的所述中断源清除信息对所述中断的中断源进行清除。在本专利技术的一种实施例中,所述中断源清除信息包括产生所述中断的外设的中断清除寄存器地址以及所述中断对应的中断状态寄存器中的内容。在本专利技术的一种实施例中,将所述中断清除寄存器地址存入所述中断控制器包括:在所述外设初始化时,获取所述外设的中断清除寄存器地址并存入所述中断控制器中。在本专利技术的一种实施例中,所述方法还包括:在所述外设初始化时,获取所述外设的中断状态寄存器地址并存入所述中断控制器中。在本专利技术的一种实施例中,将所述中断对应的中断状态寄存器内容存入所述中断控制器包括:监测到所述处理器模块响应所述外设产生的中断时,根据所述中断状态寄存器地址读取所述中断对应的中断状态寄存器中的内容存入所述中断控制器中。在本专利技术的一种实施例中,所述处理器响应所述中断后,当需要获取所述中断对应的中断状态寄存器内容时,从所述中断控制器直接获取。在本专利技术的一种实施例中,根据所述中断控制器中存储的所述中断源清除信息对所述中断的中断源进行清除包括:采用所述中断清除寄存器地址,以所述中断状态寄存器中的内容为数据发起总线写传输。在本专利技术的一种实施例中,所述中断为电平触发式中断。为了解决上述问题,本专利技术还提供了一种中断控制器,包括存储模块和中断清除模块;所述中断清除模块用于在处理器将当前中断的中断处理完毕标识信息写入所述中断控制器之前,获取所述中断的中断源清除信息并存储在所述存储模块中;以及用于在所述中断控制器接收到所述处理器发送的写入所述中断处理完毕标识信息请求时,根据所述存储模块存储的所述中断源清除信息对所述中断的中断源进行清除。在本专利技术的一种实施例中,所述中断源清除信息包括产生所述中断的外设的中断清除寄存器地址以及所述中断对应的中断状态寄存器中的内容。在本专利技术的一种实施例中,所述存储模块包括中断清除寄存器地址存储单元;所述中断清除模块在所述外设初始化时,获取所述外设的中断清除寄存器地址并存入所述中断清除寄存器地址存储单元。在本专利技术的一种实施例中,所述存储模块包括中断状态寄存器地址存储单元所述中断清除模块在所述外设初始化时,获取所述外设的中断状态寄存器地址并存入所述中断状态寄存器地址存储单元。在本专利技术的一种实施例中,所述存储模块还包括中断状态寄存器内容存储单元;所述中断清除模块用于在所述处理器模块响应所述外设产生的中断时,根据所述外设的中断状态寄存器地址读取所述中断对应的中断状态寄存器中的内容存入所述中断状态寄存器内容存储单元。在本专利技术的一种实施例中,所述中断状态寄存器内容存储单元还用于在所述处理器响应所述中断后且需要获取所述中断对应的中断状态寄存器内容时,直接为所述处理器提供其存储的中断状态寄存器内容。在本专利技术的一种实施例中,所述中断清除模块根据所述存储模块存储的所述中断源清除信息对所述中断的中断源进行清除包括:采用所述中断清除寄存器地址,以所述中断状态寄存器中的内容为数据发起总线写传输。本专利技术的有益效果是:本专利技术提供的中断处理方法及中断控制器,在处理器将当前中断的中断处理完毕标识信息写入中断控制器之前,就将该中断的中断源清除信息存入中断控制器;然后在中断控制器接收到处理器发送的写入中断处理完毕标识信息请求时,直接根据中断控制器中存储的中断源清除信息对该中断的中断源进行清除;并不需要处理器先通过多个总线转换桥去访问相应外设的中断清除寄存器以获取清除中断源所需要的信息,然后再进行清除。因此本专利技术提供的方案可以在较大程度上缩短中断源清除所需的时间,避免延迟其他中断的响应时间。附图说明图1为现有的中断控制器结构示意图;图2为本专利技术实施例一提供的中断处理方法流程图;图3为本专利技术实施例二提供的中断控制器结构图;图4为本专利技术实施例三提供的中断控制器结构图;图5为本专利技术实施例三提供的触发中断源清除的流程示意图;图6为本专利技术实施例三提供的本文档来自技高网
...

【技术保护点】
一种中断处理方法,其特征在于包括:在处理器将当前中断的中断处理完毕标识信息写入中断控制器之前,将所述中断的中断源清除信息存入所述中断控制器;在所述中断控制器接收到所述处理器发送的写入所述中断处理完毕标识信息请求时,根据所述中断控制器中存储的所述中断源清除信息对所述中断的中断源进行清除。

【技术特征摘要】
1.一种中断处理方法,其特征在于包括:
在处理器将当前中断的中断处理完毕标识信息写入中断控制器之前,将所
述中断的中断源清除信息存入所述中断控制器;
在所述中断控制器接收到所述处理器发送的写入所述中断处理完毕标识信
息请求时,根据所述中断控制器中存储的所述中断源清除信息对所述中断的中
断源进行清除。
2.如权利要求1所述的中断处理方法,其特征在于,所述中断源清除信息
包括产生所述中断的外设的中断清除寄存器地址以及所述中断对应的中断状态
寄存器中的内容。
3.如权利要求2所述的中断处理方法,其特征在于,将所述中断清除寄存
器地址存入所述中断控制器包括:
在所述外设初始化时,获取所述外设的中断清除寄存器地址并存入所述中
断控制器中。
4.如权利要求2所述的中断处理方法,其特征在于,所述方法还包括:在
所述外设初始化时,获取所述外设的中断状态寄存器地址并存入所述中断控制
器中。
5.如权利要求4所述的中断处理方法,其特征在于,将所述中断对应的中
断状态寄存器内容存入所述中断控制器包括:监测到所述处理器模块响应所述
外设产生的中断时,根据所述中断状态寄存器地址读取所述中断对应的中断状
态寄存器中的内容存入所述中断控制器中。
6.如权利要求5所述的中断处理方法,其特征在于,所述处理器响应所述
中断后,当需要获取所述中断对应的中断状态寄存器内容时,从所述中断控制
器直接获取。
7.如权利要求2-6任一项所述的中断处理方法,其特征在于,根据所述中
断控制器中存储的所述中断源清除信息对所述中断的中断源进行清除包括:
采用所述中断清除寄存器地址,以所述中断状态寄存器中的内容为数据发

\t起总线写传输。
8.如权利要求1-6任一项所述的中断处理方法,其特征在于,所述中断为
电平触发式中断。
9.一种中断控制器,其特征在于,包括存储模块和中断清除模块;

【专利技术属性】
技术研发人员:徐志国
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1