CN1632773A - 芯片内的中断处理装置及方法 - Google Patents
芯片内的中断处理装置及方法 Download PDFInfo
- Publication number
- CN1632773A CN1632773A CN 200410104052 CN200410104052A CN1632773A CN 1632773 A CN1632773 A CN 1632773A CN 200410104052 CN200410104052 CN 200410104052 CN 200410104052 A CN200410104052 A CN 200410104052A CN 1632773 A CN1632773 A CN 1632773A
- Authority
- CN
- China
- Prior art keywords
- interrupt
- interruption
- chip
- module
- functional module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000012545 processing Methods 0.000 title description 2
- 239000013598 vector Substances 0.000 claims abstract description 45
- 230000006870 function Effects 0.000 claims abstract description 7
- 238000003672 processing method Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 3
- 230000008676 import Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
Images
Landscapes
- Bus Control (AREA)
Abstract
本发明公开了一种芯片内的中断处理装置及方法,以解决现有技术中同时产生的多个相同优先级中断中只能有一个被处理的问题。该中断处理装置包括中断产生单元、中断屏蔽控制单元、中断向量存储单元和控制输出单元,中断产生单元内具有多个功能模块;产生中断的功能模块将中断信号通过中断屏蔽控制单元分别输入到中断向量存储单元和控制输出单元;控制输出单元向芯片的上位机发出中断请求信号,芯片的上位机通过中断屏蔽控制单元对功能模块进行屏蔽设置后,读取中断向量存储单元,在执行中断的过程中,若被设置为屏蔽的功能模块产生新的中断,则该中断被忽略;若被设置为未屏蔽的功能模块产生新的中断,则中止执行当前中断,转而执行新的中断。
Description
技术领域
本发明涉及中断的处理装置及方法,尤其涉及一种芯片内的中断处理装置及方法。
背景技术
在一个芯片中可能会存在许多中断源,而芯片分配给中断的引脚是有限的,通常一块芯片只有一个中断引脚。
如图1所示,现有技术中用于芯片内的中断处理装置包括一个中断输入部分1,用于输入多个中断;一个中断控制器2,用于从中断输入部分1中有选择输出一个最高优先级的中断;以及一个中断处理器3,用于处理在中断控制器2上选择的中断。
在图1的中断处理装置中,当一个新的中断输入到中断输入部分1中时,将新输入的中断的优先级与中断处理器3上正在处理的中断的优先级进行比较,如果新输入的中断的优先级不高于中断处理器3上正在处理的中断的优先级,则继续当前正在处理的中断;如果新输入的中断的优先级高于中断处理器3上正在处理的中断的优先级,则停止当前正在进行的中断,由中断控制器2将优先级较高的中断输出到中断处理器3,由中断处理器3进行处理。
当新产生的中断的优先级与中断处理器3上正在处理的中断的优先级相同时,中断控制器2按照中断产生的先后顺序将中断输出到中断处理器3,先产生的中断将首先得到处理,在处理这个中断的时候,其他的相同优先级的中断将被忽略,若几个相同优先级的中断同时产生时,只能有一个中断被处理,其他的中断也将被忽略掉。
在上述中断处理方法中,当几个相同优先级的中断同时产生时,只能有一个中断被处理,其他的中断将被忽略掉。这样有些中断就得不到处理,如果忽略掉的中断是芯片必须处理的,就会对芯片的功能造成影响。
发明内容
本发明的目的在于提供一种芯片内的中断处理装置及方法,以解决现有技术在进行中断处理时,同时产生的多个相同优先级中断中只能有一个被处理,其他的将被忽略掉的问题。
为解决上述问题,本发明提供以下技术方案:
一种芯片内的中断处理装置,包括:
中断产生单元,用于产生中断信号;
中断屏蔽控制单元,用于有选择的屏蔽从中断产生单元输出的中断信号;
中断向量存储单元,用于存储未被屏蔽的中断向量;
控制输出单元,用于当未被屏蔽的中断向量被存入中断向量存储单元时,发出中断请求信号;
中断产生单元内具有多个功能模块,所有功能模块的中断信号输入到中断屏蔽控制单元,中断屏蔽控制单元的输出端分别输入中断向量存储单元和控制输出单元。
所述中断屏蔽控制单元由中断屏蔽寄存器和若干与门构成,每一个功能模块分别对应一个中断屏蔽寄存器位和一个与门,功能模块的中断信号和所对应的中断屏蔽寄存器位为与门的输入端。
所述中断向量存储单元为读清零式寄存器,该寄存器中的每一位都与中断产生单元内的一个功能模块相对应。
所述中断向量存储单元与芯片的上位机连接。
所述控制输出单元为或门,或门的输出端与芯片的上位机连接。
一种中断处理方法,包括步骤:
A、产生中断的功能模块将中断信号通过中断屏蔽控制单元分别输入到中断向量存储单元和控制输出单元;
B、控制输出单元发出中断请求信号,芯片的上位机通过中断屏蔽控制单元对功能模块进行屏蔽设置后,读取中断向量存储单元,执行读取到的中断;
C、在执行中断的过程中,若被设置为屏蔽的功能模块产生新中断,则该中断被忽略;若被设置为未屏蔽的功能模块产生新中断,则中止当前执行的中断,转而执行新中断。
在所述步骤B中,对功能模块进行屏蔽设置通过设置功能模块的中断屏蔽寄存器对应位来完成。
在所述步骤B中,芯片的上位机顺序执行读取到的中断或者根据预先定义的中断优先级来执行读取到的中断。
由于本发明采用了以上技术方案,故具有以下有益效果:
本发明的中断处理装置可以将同时产生的多个中断向量记录下来,由上位机的中断服务程序来决定执行哪一个中断向量,中断的优先级由中断服务程序来判断,也可以由上位机顺序的将所有中断向量处理完。在执行中断的同时,通过对中断屏蔽控制单元的设置,可以对较重要的中断进行选择输出。采用本发明进行中断处理时,不会出现重要的中断被忽略掉的问题。
附图说明
图1为现有技术中用于芯片内的中断处理装置的结构示意图;
图2为将芯片划分为不同级别模块的示意图;
图3为本发明的中断处理装置的原理图;
图4为本发明的中断处理装置的结构示意图;
图5为本发明的中断处理方法的流程图。
具体实施方式
如图2所示,在芯片设计过程中,会将芯片划分为很多一级模块,每个一级模块又是由若干的二级模块组成的,二级模块中又包含更小的模块。这样将整个芯片划分为很多级。在本发明中,芯片可以被看作一个模块,有一个总中断处理装置与其相对应,芯片内的每个模块都对应一个中断处理装置,每个中断处理装置都有一个中断输出信号。各个一级模块输出的中断信号为一级中断,将所有一级中断信号线或在一起构成总中断处理装置的中断输出引脚,由中断输出引脚将中断请求信号发送给芯片的上位机。每个一级模块由许多二级模块组成,每个一级模块都具有一个与其相对应的一级中断处理装置,与一级中断一样,每个一级模块内的二级中断信号线也都或在一起构成一级中断处理装置的中断输出引脚,该中断输出引脚与芯片的上位机连接,其工作方式和总中断处理装置相同,以此类推,产生多级中断处理方式。
芯片内不同级别的中断处理装置的结构相同,如图3所示,本发明的中断处理装置包括:一个中断产生单元,用于产生同一级别多个功能模块的中断信号;一个中断屏蔽控制单元,用于有选择的屏蔽从中断产生单元输出的中断信号;一个中断向量存储单元,用于存储未被屏蔽的中断向量;一个控制输出单元,用于当未被屏蔽的中断向量被存入中断向量存储单元时,发出中断请求信号;中断产生单元内具有多个功能模块,所有功能模块的中断信号输入到中断屏蔽控制单元。
如图4所示,上述中断屏蔽控制单元由中断屏蔽寄存器和若干与门所组成,每一个功能模块分别对应中断屏蔽寄存器中的一位和一个与门。上述中断向量存储单元与芯片的上位机连接,为读清零式的寄存器,该中断向量寄存器中的每一位都与中断产生单元内的一个功能模块相对应。上述控制输出单元为一个或门,与芯片的上位机连接,从中断屏蔽控制单元输出的所有功能模块的中断信号线或在一起构成了该中断处理装置的中断输出引脚。每一个功能模块的中断信号输入中断屏蔽控制单元后,和对应的中断屏蔽寄存器位通过一个与门进行与运算,与门的输出端分别输入该功能模块的中断向量寄存器对应位和控制输出单元中的或门。
如图5所示,当中断产生单元内的功能模块产生中断时,按照下面的方法来处理芯片的中断。
在上述中断处理装置中,当中断产生单元内的功能模块产生中断时,功能模块的中断信号线将高电平信号输入到中断屏蔽控制单元中,和所对应的中断屏蔽寄存器位通过与门进行与运算,在非屏蔽状态下,中断屏蔽寄存器位的值为“1”,因此中断屏蔽控制单元的输出为高电平,该高电平信号被分别输入中断向量寄存器的对应位和控制输出单元中的或门,或门的输出端为中断输出引脚,中断输出引脚输出一个高电平信号给芯片的上位机。
芯片的上位机收到该高电平信号后通过中断服务程序将中断屏蔽寄存器使能,即将中断屏蔽寄存器清零,屏蔽掉所有后来的中断向量。然后芯片的上位机读取中断向量寄存器,当发现中断向量寄存器的某些位发生变化时,即可断定出是哪些模块产生中断,由于中断向量寄存器是读清零的设计,因此当读完中断向量寄存器后,中断向量寄存器为零,当执行完所读取的中断后,将中断屏蔽寄存器打开,允许新的中断向量进入中断向量寄存器中。中断服务程序可以顺序执行所读取的中断向量,也可以按照预先定义好的优先级来执行中断。
中断屏蔽寄存器在芯片的上位机的控制下也可以对后来的中断向量进行有选择的屏蔽,当某个模块的中断较为重要或者优先级较高时,芯片的上位机在收到控制单元的高电平信号后,通过中断服务程序将与其相对应的中断屏蔽寄存器位置“1”,其他的中断屏蔽寄存器位置“0”,然后芯片的上位机读取中断向量寄存器并执行相应的中断,在执行中断的过程中,若上述中断屏蔽寄存器位为“1”的模块产生中断,则当前正在执行的中断被停止,中断服务程序开始执行该模块所产生的中断,当执行完该中断后,将中断屏蔽寄存器中被置“0”的位重新置“1”,允许新的中断向量进入中断向量寄存器中。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
Claims (8)
1、一种芯片内的中断处理装置,其特征在于包括:
中断产生单元,用于产生中断信号;
中断屏蔽控制单元,用于有选择的屏蔽从中断产生单元输出的中断信号;
中断向量存储单元,用于存储未被屏蔽的中断向量;
控制输出单元,用于当未被屏蔽的中断向量被存入中断向量存储单元时,发出中断请求信号;
中断产生单元内具有多个功能模块,所有功能模块的中断信号输入到中断屏蔽控制单元,中断屏蔽控制单元的输出端分别输入中断向量存储单元和控制输出单元。
2、根据权利要求1所述的中断处理装置,其特征在于:所述中断屏蔽控制单元由中断屏蔽寄存器和若干与门构成,每一个功能模块分别对应一个中断屏蔽寄存器位和一个与门,功能模块的中断信号和所对应的中断屏蔽寄存器位为与门的输入端。
3、根据权利要求1所述的中断处理装置,其特征在于:所述中断向量存储单元为读清零式寄存器,该寄存器中的每一位都与中断产生单元内的一个功能模块相对应。
4、根据权利要求1所述的中断处理装置,其特征在于:所述中断向量存储单元与芯片的上位机连接。
5、根据权利要求1所述的中断处理装置,其特征在于:所述控制输出单元为或门,或门的输出端与芯片的上位机连接。
6、一种利用权利要求1所述芯片内的中断处理装置进行中断处理方法,其特征在于包括步骤:
A、产生中断的功能模块将中断信号通过中断屏蔽控制单元分别输入到中断向量存储单元和控制输出单元;
B、控制输出单元发出中断请求信号,芯片的上位机通过中断屏蔽控制单元对功能模块进行屏蔽设置后,读取中断向量存储单元,执行读取到的中断;
C、在执行中断的过程中,若被设置为屏蔽的功能模块产生新中断,则该中断被忽略;若被设置为未屏蔽的功能模块产生新中断,则中止当前执行的中断,转而执行新中断。
7、根据权利要求6所述的芯片内的中断处理方法,其特征在于:在所述步骤B中,对功能模块进行屏蔽设置通过设置功能模块的中断屏蔽寄存器对应位来完成。
8、根据权利要求6所述的芯片内的中断处理方法,其特征在于:在所述步骤B中,芯片的上位机顺序执行读取到的中断或者根据预先定义的中断优先级来执行读取到的中断。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200410104052 CN1292361C (zh) | 2004-12-31 | 2004-12-31 | 芯片内的中断处理装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200410104052 CN1292361C (zh) | 2004-12-31 | 2004-12-31 | 芯片内的中断处理装置及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1632773A true CN1632773A (zh) | 2005-06-29 |
CN1292361C CN1292361C (zh) | 2006-12-27 |
Family
ID=34848206
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200410104052 Expired - Fee Related CN1292361C (zh) | 2004-12-31 | 2004-12-31 | 芯片内的中断处理装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1292361C (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101382923B (zh) * | 2007-09-06 | 2010-04-14 | 联想(北京)有限公司 | 虚拟机系统及其客户操作系统的中断处理方法 |
CN102156668A (zh) * | 2011-04-14 | 2011-08-17 | 松下家电研究开发(杭州)有限公司 | 一种利用单片机内置flash程序存贮器进行实时数据记忆的方法 |
CN102262205A (zh) * | 2010-05-31 | 2011-11-30 | 无锡中星微电子有限公司 | 一种测试向量源文件的测试点的屏蔽方法和屏蔽装置 |
CN112181877A (zh) * | 2020-10-28 | 2021-01-05 | 瑞芯微电子股份有限公司 | 一种显示变频方法和系统 |
CN113325766A (zh) * | 2021-05-26 | 2021-08-31 | 珠海格力电器股份有限公司 | 一种驱动控制芯片、暖通设备 |
CN113419450A (zh) * | 2021-06-29 | 2021-09-21 | 北京猎户星空科技有限公司 | 一种电机foc控制及运行方法、装置、电子设备及介质 |
-
2004
- 2004-12-31 CN CN 200410104052 patent/CN1292361C/zh not_active Expired - Fee Related
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101382923B (zh) * | 2007-09-06 | 2010-04-14 | 联想(北京)有限公司 | 虚拟机系统及其客户操作系统的中断处理方法 |
CN102262205A (zh) * | 2010-05-31 | 2011-11-30 | 无锡中星微电子有限公司 | 一种测试向量源文件的测试点的屏蔽方法和屏蔽装置 |
CN102262205B (zh) * | 2010-05-31 | 2015-08-26 | 无锡中星微电子有限公司 | 一种测试向量源文件的测试点的屏蔽方法和屏蔽装置 |
CN102156668A (zh) * | 2011-04-14 | 2011-08-17 | 松下家电研究开发(杭州)有限公司 | 一种利用单片机内置flash程序存贮器进行实时数据记忆的方法 |
CN102156668B (zh) * | 2011-04-14 | 2014-06-25 | 松下家电研究开发(杭州)有限公司 | 一种利用单片机内置flash程序存贮器进行实时数据记忆的方法 |
CN112181877A (zh) * | 2020-10-28 | 2021-01-05 | 瑞芯微电子股份有限公司 | 一种显示变频方法和系统 |
CN112181877B (zh) * | 2020-10-28 | 2022-06-21 | 瑞芯微电子股份有限公司 | 一种显示变频方法和系统 |
CN113325766A (zh) * | 2021-05-26 | 2021-08-31 | 珠海格力电器股份有限公司 | 一种驱动控制芯片、暖通设备 |
CN113419450A (zh) * | 2021-06-29 | 2021-09-21 | 北京猎户星空科技有限公司 | 一种电机foc控制及运行方法、装置、电子设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN1292361C (zh) | 2006-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1258154C (zh) | 多处理器系统、数据处理系统和数据处理方法 | |
CN1218248C (zh) | 堆栈使用的方法 | |
CN1292361C (zh) | 芯片内的中断处理装置及方法 | |
CN109726126B (zh) | 一种分布式并行fuzz方法及系统 | |
CN1038792C (zh) | 三维计算机图形设备 | |
CN1849584A (zh) | 混合模式指令的动态最佳匹配编译的方法和设备 | |
CN1240021C (zh) | 票据图象处理装置 | |
CN1716184A (zh) | 处理器和流水线重配置控制方法 | |
CN1204495C (zh) | 处理器系统 | |
CN2762225Y (zh) | 芯片内的中断处理装置 | |
CN1308828C (zh) | 用于处理事件的方法和装置 | |
CN101086721A (zh) | 中断处理方法和装置 | |
CN110187884B (zh) | 一种多线程应用场景下的访存指令插桩优化方法 | |
CN1845087A (zh) | 中断处理方法及中断处理装置 | |
CN1632772A (zh) | 芯片内的中断处理装置及方法 | |
CN108555901B (zh) | 一种机器人分拣物品的方法、装置及机械臂 | |
Hsieh | Reconfigurable fault tolerant deadlock avoidance controller synthesis for assembly production processes | |
CN1337024A (zh) | 跟踪数据的方法 | |
CN104572482A (zh) | 一种过程变量的存储方法及装置 | |
CN104598917B (zh) | 一种支持向量机分类器ip核 | |
CN111047498B (zh) | 一种面向gpu硬件拷贝缓冲区算法的tlm微结构 | |
CN1277182C (zh) | 具有辅助处理单元的可编程逻辑控制器 | |
CN1866231A (zh) | 在嵌入式实时操作系统中实现逻辑中断优先级的方法 | |
CN101183348A (zh) | 存储器控制方法及相关装置 | |
CN1432929A (zh) | 多微处理器系统内响应中断服务要求的仲裁结构及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20061227 Termination date: 20111231 |