中断管理装置和中断管理方法

文档序号:6472805阅读:224来源:国知局
专利名称:中断管理装置和中断管理方法
技术领域
本发明涉及进行计算机处理的实时操作系统(实时OS)、多任务操作系统(多任务OS)、以及信号处理装置(DPS)中的中断处理管理的装置和方法,特别涉及采用W-CDMA(Wide band-Code Division Multiple Access宽带码分多址)方式的移动通信系统中的携带电视电话装置等的图像终端装置等中使用的中断管理装置和中断管理方法。
背景技术
以往,在微处理装置系统中,在微处理器(以下记为CPU)执行程序的处理中,因来自外部设备或外部装置的中断请求或来自执行中的应用程序的软件中断请求(以下统称为中断请求)等因素而发生非同步的中断请求时,使执行中的程序处理中断来进行中断请求的处理。
另一方面,在DSP中,作为相对于上述CPU的装置,在内部有主处理器(以下记为MP),该MP在执行程序处理中发生中断请求时中断执行中的程序处理,进行中断请求的处理。以下,将程序的最小单位记为任务。
由于对于中断请求进行的处理的内容因中断因素而异,所以用户需要对每个中断因素制定中断处理例行程序(以下记为中断处理任务)。中断请求通过传送发生中断的控制部件(以下称为中断控制器)传送到CPU或MP。CPU或MP识别中断因素,调用对应的中断处理任务来进行中断请求的处理。
在因发生中断请求使CPU或MP中断执行中的任务处理时,在保存再开始的任务的地址或至此使用过的CPU或MP的内容寄存器的内容(以下记为处理中运算资源)后,执行中断处理任务。然后,在中断处理任务结束时,将这些内部寄存器返回到原来的状态,使执行中的任务处理再开始。
在所述中断处理任务中,如果记述处理中运算资源的保存、恢复处理,则中断处理任务的制定变得繁杂,所以在具有CPU的微处理器系统中,这些处理一般通过调用实时OS或多任务OS(以下统称为OS)的中断管理机构(以下记为系统调用)来进行。
在具有MP的DSP中,上述中断管理机构一般构筑为与中断处理任务分离的一个其他任务的软件(在DSP中通常称为微代码、固件)的监视程序。
以下,将上述中断管理机构和所述监视程序统称记为中断处理器。
中断处理分类为在进行中断处理期间禁止接受其他中断的单独中断、以及在进行中断处理期间也可以接受其他中断的复用中断。
在单独中断中,在发生中断时,用中断处理器将处理中运算资源保存到该任务的栈区域和任务控制部件,同时以中断屏蔽为屏蔽来使其他的中断为禁止状态,进行中断处理。然后,中断处理结束,在中断过的任务的执行再开始时,使任务的栈信息、任务的控制部件、中断屏蔽恢复。
另一方面,在可复用中断的情况下,在中断处理器中,在以中断屏蔽作为屏蔽来禁止其他中断时,对于高的中断等级不设定中断屏蔽,而进行中断处理。即,在具有复用中断的中断处理器中,在发生多个中断的情况下,需要判定禁止哪个中断。
但是,在中断任务内判定其他中断的接受/禁止的情况下,中断处理器和中断处理任务紧密关联,存在不能相互独立地进行中断处理器的中断处理内容的变更和中断处理任务的中断处理内容变更这样的问题。
另一方面,在用OS来判定其他中断的接受/禁止的情况下,由于对所有的中断因素OS内的中断处理器集中判定中断的接受/禁止,所以存在用户必须理会OS内的中断处理器的中断管理状态,制定中断处理任务的问题。此外,存在不能构筑不依赖于OS内的中断处理器的中断管理状态的中断处理的问题。
在(日本)特开平5-224951号公报中,披露了以下管理方式,该方式包括双重中断指定部件,在由接受中断请求的CPU起动时指定软件中断,在移动到中断处理器的处理前使处理转移到OS;中断处理器起动部件,在通过双重中断指定部件使处理移动时,在OS内进行中断因素的解析和寄存器的保存并起动中断处理器;以及中断处理器结束处理部件,在通过中断处理器通知中断处理的结束时,在OS内进行寄存器的恢复,使中断的处理再开始。
根据该特开平5-224951号公报中记述的管理方式,由双重中断指定部件来分离OS内的寄存器的保存、恢复处理和中断处理器中的处理,可以提高中断处理器的制定效率。但是,未公开分离中断处理器和中断处理任务的部件,依然存在不能独立进行由中断处理器变更处理内容和由中断处理任务变更中断处理内容的问题。
此外,在(日本)特开平8-297581号公报中,披露了以下技术具有可分别屏蔽的多个中断输入部件,根据对未屏蔽的中断输入部件的输入来设计将中断传送到CPU的中断控制器,在OS内设置操作中断控制器中的中断屏蔽表的特定中断操作处理部件,并且仅将OS中要管理的中断所关联的信息存储在被管理中断存储部件中,在进行OS的系统调用处理中的排斥控制的区间中,仅中断禁止被管理中断存储部件中存储的信息的中断,对于未发行系统调用的中断,使中断许可状态继续。
根据该特开平8-297581号公报所披露的技术,对于OS的资源管理不产生影响的中断任务,不接受OS的影响,可以使该中断处理任务的处理与OS分离来构筑。但是,对于与OS的资源管理有关系的中断处理任务来说,存在与OS的处理密切关联,依然要理会OS内的中断处理器中的中断禁止/许可处理内容,需要制定中断处理任务的问题。

发明内容
本发明的目的在于提供一种中断管理装置和中断管理方法,在中断屏蔽内可接受其他中断的情况下或禁止其他中断情况下等需要变更中断处理器的处理时,可以容易地变更中断处理器或中断处理任务的中断处理内容。此外,本发明的另一目的在于提供一种中断管理装置和中断管理方法,在用OS来管理中断的情况下,对于所有的中断因素,即使OS内的中断处理器集中进行中断的禁止/许可处理,用户可以制定中断处理任务而不理会OS内的中断处理器中的中断的禁止/许可的处理内容,此外,可以构筑不依赖于OS内的中断处理器的中断管理状态的中断处理。
该目的如下实现与规定每个中断因素的处理的中断处理器独立地设置保持对每个中断因素准备的可接受中断状态的中断管理部件、以及解除在接受中断的中断因素中设定的屏蔽的中断屏蔽解除部件,中断处理器用所述中断管理部件和所述中断屏蔽解除部件来更新中断屏蔽,对每个中断因素进行中断的许可/禁止的控制。


图1表示本发明实施例1的中断管理装置的构成图;图2A表示实施例1的中断控制器的工作的图;图2B表示实施例1的中断控制器的工作的流程图;图3表示实施例1的中断管理部中保持的各中断因素的中断屏蔽寄存器的设定状态的图;图4是说明实施例1的中断因素判定处理步骤的图;图5是说明实施例1的复用中断控制部中的处理步骤的图;图6是说明实施例1的中断任务中的处理步骤的图;图7表示本发明实施例2的中断管理装置的构成的图;图8A表示实施例2的执行任务控制部中存储的执行中的任务信息状态的图;图8B表示将实施例2的初始化处理需要的任务对应于各比特来设定的情况下的设定在寄存器中的状态过渡的图;图9表示本发明实施例3的中断管理装置的构成的图;以及图10表示本发明实施例4的中断管理装置的构成的图。
具体实施例方式
以下,参照附图来详细说明实施本发明的最佳实施形态。
(实施例1)图1表示本发明实施例1的中断管理装置的构成图。
图1所示的中断管理装置100包括中断处理器101、中断控制器102、中断管理部103、以及中断屏蔽解除部104;中断处理器101包括保存处理部105、中断因素判定部106、中断屏蔽控制处理部107、任务恢复处理部108、以及复用中断控制部109;中断控制器102包括中断屏蔽部110。
此外,参考标号121~122是第1~第N中断因素,参考标号123是具有第1~第N任务124~126的处理任务,参考标号127是具有第1~第N中断任务128~130的中断处理任务。
中断控制器102包括对第1中断因素121~第N中断因素122组成的每个中断因素设定屏蔽的中断屏蔽部110。中断控制器102在是第1中断因素121~第N中断因素122的输入的情况下,将发生与通过中断屏蔽部110设定的屏蔽的中断因素对应的中断通知到中断处理器101。
保存处理部105在中断发生时进行对保存执行中的任务的各种信息的处理。
中断因素判定部106根据中断因素来决定应该处理的中断处理任务。
中断管理部103与中断处理器101独立,保持对每个中断因素准备的可接受中断状态。
中断屏蔽解除部104与中断处理器101独立,在中断处理任务中,通过解除在接受中断的中断因素中设定的屏蔽来控制中断许可。在中断屏蔽解除部104中,保持将中断屏蔽设定为屏蔽解除状态(1)的设定状态。
复用中断控制部109用中断管理部103和中断屏蔽解除部104来进行中断屏蔽的更新控制。
中断任务控制部107在决定的中断处理任务和中断处理器间使处理转移。
下面,说明上述构成的中断管理装置100的工作状况。
图2A是说明中断控制器102工作的图。这里,为了简单地进行说明,对于本实施例的中断管理装置100来说,说明输入各自可屏蔽的16种类的中断因素(假设为IRQn∶n=0,1,…,15)的情况。中断管理装置100包括中断请求寄存器(称为IRInterrupt Request),表示发生各个中断的因素;中断屏蔽寄存器(称为IMInterrupt Mask),对各个中断因素进行中断的禁止(0)/许可(1)的控制;以及中断请求复位寄存器(称为IRRInterrupt Request Reset),对每个因素都存在、用于对中断请求寄存器IR进行复位。中断屏蔽寄存器被配置在中断屏蔽部110上。此外,对于所有可屏蔽中断因素设定共用的中断许可标记(称为IEInterrupt Enable)。该中断许可标记控制中断的禁止(0)/许可(1)。
在发生中断的情况下,中断请求寄存器的对应比特被设定为1。然后,通过软件将IRR置位(1),使IR的对应比特被复位(0)。在图2A中,示出IR、IM、IRR的各寄存器分别用16位的寄存器来实现情况的一例。
图2A分别示出IR、IM、IRR、IE,将相对于各中断因素IRQn(n=0,1,…,15)的比特表示为Irn、Imn、IRRn(n=0,1,…,15)。
图2B表示发生中断因素时的中断控制器102中的处理流程。如图2B所示,发生中断因素时,在将中断请求寄存器的对应比特置位(1),执行中断许可标记许可(1),将中断屏蔽寄存器的对应比特许可(1)的情况下,在使中断许可标记为禁止(0)后,处理转移到中断处理器。在中断许可标记或中断屏蔽寄存器从禁止(0)状态变更到许可(1)状态的情况下,也进行图2B所示的中断因素判定处理。
以下,说明中断处理器101中的处理。这里,为了简单地进行说明,在处理转移到中断处理器101时,说明在中断请求寄存器IR中将作为中断因素的IRQ14、IRQ12、IRQ1、IRQ0四种类的中断因素置位(1),在中断屏蔽寄存器IM中将IM15、IM14、IM3、IM1、IM0设定为中断许可(1),许可所有的中断的中断屏蔽作为对中断管理部103包括的寄存器(IMFGreg)的设定状态来保持的情况。
此外,在此时的中断屏蔽解除部104中,假设没有应该进行屏蔽解除的中断因素。即,假设中断屏蔽解除部104包括的寄存器所有比特被设定为清除(0)。
此外,作为中断因素的中断等级,设定下述4级的中断等级。
等级0的中断因素IRQ2、IRQ3等级1的中断因素IRQ0、IRQ1等级2的中断因素IRQ15、IRQ14、IRQ13、IRQ12、IRQ4等级3的中断因素IRQ5、IRQ6、IRQ7、IRQ8、IRQ9、IRQ10、IRQ11该中断等级表示中断的优先度,假设以等级0>等级1>等级2>等级3的顺序使优先度提高。
在中断管理部103中,在每个中断中仅将比该中断因素等级高的中断因素作为中断许可(1)的对中断屏蔽寄存器的设定状态(称为IMFG)来保持。
图3表示对上述中断等级要设定的中断屏蔽寄存器的设定状态,IMFGn(n=0,1,…,15)分别对应于IRQn(n=0,1,…,15)。例如,中断因素IRQ14对应的IMFG14比IRQ14的等级高,将IRQ0、IRQ1、IRQ2、IRQ3的对应比特设定为许可(1)。此外,与中断因素IRQ2对应的IMFG2因不存在比IRQ2等级高的中断因素,所以所有比特被设定为禁止(0)。
首先,在处理转移到中断处理器101的情况下,当时执行中的处理任务(假设该处理任务为中断任务125)的各种信息由保存处理部105保存。
接着,在中断因素判定部106中,对于由中断控制器102通知的中断因素,用中断管理部103进行是否对哪个中断因素进行处理的判定,决定调用中断处理任务。
图4是中断因素判定处理步骤的说明图。由于作为中断因素的IRQ14、IRQ12、IRQ1、IRQ0四种中断因素被置位(1),所以中断请求寄存器IR的IR14、IR12、IR1、IR0的各对应比特为1(S1)。
由于作为中断屏蔽寄存器IM的设定状态的IM15、IM14、IM3、IM1、IM0被设定为中断许可(1),所以中断屏蔽寄存器IM的IM15、IM14、IM3、IM1、IM0的各对应比特为1(S2)。
接着,进行与S1和S2分别对应的每个比特的“与”运算(S3)。
在S3的状态中,从MSB(Most Significant Bit最高有效位)侧依次进行评价,选择与值最早变为1的比特对应的中断因素。该情况下,由于相对于IRQ14位置的比特最早变为1,所以选择IRQ14作为中断因素。
接着,相对于中断管理部103中保持的中断屏蔽寄存器的设定状态IMFC,获得与选择出的中断因素IRQ14对应的中断屏蔽寄存器的设定状态IMFG14(即,图3所示的IMFG14的值)(S4)。
接着,以每个比特进行由S3和S4得到的各状态的“或”运算(S5)。
接着,进行与相对于S3的状态进行的相同评价,选择IRQ1作为中断因素。
接着,从进行与S4相同处理的中断管理部103中获得IMFG1(即,图3所示的IMFG1的值)(S6)。
接着,如果与S5同样以每个比特进行由S5和S6得到的各状态的“与”运算,由于所有的比特为0(S7),所以即使进行与相对于S3状态进行的相同评价,也不存在应该选择的中断因素。在不存在应该选择的中断因素的评价之前的评价中选择出的中断因素、即IRQ1被作为中断因素来选择,作为调用中断处理任务,决定对IRQ1的中断处理任务,将处理转移到中断任务控制处理部107。将相对于IRQ1的中断处理任务假设为第R中断处理任务129。
由于选择IRQ1作为中断因素,所以通过在中断请求复位寄存器IRR的IRQ1中将对应的比特、即IRR1置位(1),来进行中断请求寄存器IR中置位的IRQ1的中断因素的复位(0)。
图5是复用中断控制部109中的处理步骤的说明图。
复用中断控制部109从保持对每个中断因素准备的可接受中断状态的中断管理部103中取出与决定的第R中断处理任务129对应的中断屏蔽IMFG1,设定在中断控制器102的中断屏蔽部110中。
此时,在发生中断时,由于在中断控制器102的中断屏蔽部110中已在设定中断屏蔽,所以对与中断禁止的中断因素对应的中断屏蔽不进行变更。
即,以各对应的每个比特来进行S6的IMFG1和S2的IM之间的“与”运算,决定将该运算结果设定在中断屏蔽部110中的中断屏蔽状态。然后,将该屏蔽状态设定在中断屏蔽部110中(S8)。
在发生中断时,在中断控制器102中设定了中断屏蔽的状态中,将中断因素判定部106判定出的中断因素IRQ1对应的屏蔽更新为中断禁止状态,更新过的中断屏蔽的状态被保存处理。
即,保存通过进行使中断因素IRQ1的对应比特更新为1的状态(S9)和S2的IM之间的“异”运算得到的状态(S10)(将保存目的地的寄存器称为IM_SHLTreg)。
而且,在发生中断时,还保存中断管理部103中保持的可接受中断管理状态。即,保存许可所有的中断状态的IMFGreg的内容(S11)(将保存的寄存器称为IMFG_SHLTreg)。
接着,中断任务控制处理部107调用中断因素判定部102决定的第R中断处理任务129。
在第R中断处理任务129中,进行与中断对应的处理。在该处理中,对新输入的中断因素进行中断许可的情况下,在中断屏蔽解除部104中将许可中断的中断因素的信息设定为中断解除状态。此外,在立即进行中断许可的情况下,将许可中断控制器102的中断屏蔽部110的中断的中断因素所对应的中断屏蔽设定为屏蔽解除状态。
即,在第R中断处理任务129的处理中,在可接受新的中断因素IRQ2的情况下,将中断屏蔽解除部104的IRQ2对应的比特从清除(0)变更为设定(1)。
图6所示的S12表示此时的中断屏蔽解除部104的状态。
由于IRQ2的第R中断处理任务129是比作为处理对象的中断因素IRQ1高等级的中断因素,所以成为立即进行中断许可的情况,是中断控制器102的中断屏蔽部110的当前时刻的设定状态,对于S8的状态,使IRQ2的对应比特的中断屏蔽为解除(1)。图6所示的S13表示此时的中断屏蔽部110的状态。
第R的中断处理任务129的处理结束后,再次将处理移动到中断任务控制处理部107。
此时,复用中断控制部109在调用第R中断处理任务129前,通过复用中断控制部109将与IM_SHLTreg中保存的中断屏蔽状态(S10)的IRQ2对应的比特设定为中断许可的状态设定在中断控制器102的中断屏蔽部110中。在图6所示的S14中,表示此时的中断屏蔽部110的状态。IRQ2在IMFG_SHLTreg中预先保存的中断管理部103的状态(S11)和第R中断处理任务129设定的中断屏蔽解除部104的状态(S12)中都变为中断许可状态。
而且,对于此时变更为中断许可状态的中断因素IRQ2,将中断屏蔽解除部104的对应中断因素的信息进行复位。图6所示的S15表示此时的中断屏蔽解除部104的状态。
然后,用任务恢复处理部108来恢复保存处理部105中保存的中断发生时执行中的任务的各种信息,使中断任务125的处理再开始。
于是,在实施例1的中断管理装置100中,对每个中断因素管理是否可中断的中断管理部103、以及管理是否解除中断屏蔽的中断屏蔽解除部104都与中断处理器101独立地设置。中断处理器101用管理是否可进行中断中断管理部103中保持的中断的设定状态、以及进行中断屏蔽解除部104中保持的屏蔽解除的设定状态来规定每个中断因素的处理。特别是管理多个中断因素的中断许可/禁止。
复用中断控制部109用中断管理部103和中断屏蔽解除部104来控制中断的许可/禁止,所以在中断屏蔽内接受其他中断的情况、或在中断后禁止其他中断的情况等需要变更中断的许可/禁止控制的情况下,只要变更中断管理部103和中断屏蔽解除部104的设定状态就可以。因此,程序的制作者可以制作中断处理任务127,而不必理会中断处理器101中的中断许可/禁止的控制(中断管理状态)。此外,能够构筑不依赖于中断处理器101的中断管理状态的中断处理。
此外,本发明可以通过软件来实现,从记录媒体中读出该软件,也可以实现本发明。
此外,本发明可以组合信号处理用处理器(DSP)中的中断管理机构,在实现用独立于DSP内的中断处理的中断处理的应用情况下是有效的。
此外,本发明可以组合计算机处理的实时操作系统和多任务操作系统等OS内的中断处理,在构筑个人计算机上实现的各种应用系统中,在实现用独立于DSP内的中断处理的中断处理的应用情况下是有效的,而且在有复用中断的情况下,能够以独立于OS内的中断机构的形态来构筑中断等级,所以可特别发挥该效果。
(实施例2)图7是表示本发明实施例2的中断管理装置的构成的图。在该图7中,与图1所示的实施例1的各部分对应的部分附以与图1相同的标号,并省略其说明。
图7所示的实施例2的中断管理装置700除了实施例1的构成要素以外,还包括执行任务控制部701、初始化指示部702、初始化任务管理部703、以及中断处理器101内的任务管理控制部704。
初始化任务管理部703独立于中断处理器101,存储进行处理任务的初始化处理的任务的调用地址。
执行任务控制部701保持执行中的任务的信息。
初始化任务指示部702设定需要初始化处理的任务。
任务管理控制部704用执行任务控制部701和初始化任务指示部702来判定是否在恢复中断任务125时进行中断任务125的初始化处理,在需要初始化处理的情况下,调用在初始化任务管理部703中存储的进行初始化处理的任务。
下面说明这样构成的本发明实施例2的中断管理装置700的动作。为了简单地进行说明,对于中断处理器101的处理中与实施例1相同的部分,省略其详细的说明。
图8A表示执行控制部701中存储的执行中的任务信息的状态。在该图8A中,表示与各比特对应管理处理任务123和中断处理任务127的各个任务的情况。
图8B表示在初始化任务指示部702中与执行任务控制部701同样以每个比特对应设定需要初始化处理的任务的情况下的寄存器中设定的状态的过渡。
在执行任务控制部701中,在处理任务123和中断处理任务127内,存储执行中的任务信息(称为TSKINF)。首先,在处理过渡到中断处理器101的情况下,在此时执行中的处理任务(这里是中断任务125)的对应比特设定为1(T1)。
首先,在中断处理器101中,通过复用中断控制部109,将中断发生时执行任务控制部701中存储的执行中的任务(中断任务125)信息、即保存T1的状态(将保存的寄存器称为TSKINF_SHLTreg)、中断因素判定部106决定的第R中断处理任务129的信息(T2)重新存储在执行任务控制部701中。
然后,在第R中断处理任务129中,在需要进行任务的初始化的情况下,将初始化的任务的信息存储在初始化指示部702中。
考虑将中断任务125设定作为需要初始化任务的情况。这种情况下,在初始化任务指示部702中将中断任务125的对应比特设定为1(T3)。
然后,在第R中断处理任务129的处理结束时,将处理再次移动到中断任务控制处理部107。此时,通过复用中断控制部109,在任务管理控制部704中比较调用中断处理任务前预先存储在TSKINF_SHLTreg中的执行任务控制部701的信息(T2)和初始化任务指示部702中存储的初始化任务的信息(T3)。
在任务管理控制部704中比较过的任务指示相同任务的情况下,初始化任务管理部703用进行对应任务的初始化处理的任务的调用地址来进行中断任务125的初始化任务的处理。
例如,TSKINF_SHLTreg中保存的执行任务控制部701的信息是中断发生时执行中的任务的信息,所以仅对应的1比特常常被设定为1。因此,在任务管理控制部704中,进行T2和T3的“与”运算,在该运算结果成为非0值的情况下,就可以判断为已比较的任务指示相同的任务,该情况成为相同的任务。
在任务恢复处理部108中,在需要保存处理部105中保存的中断发生时执行中的任务的各种信息的情况下,进行恢复处理。
于是,本发明实施例2的中断管理装置700包括初始化任务管理部703,存储进行任务的初始化处理的任务的调用地址;执行任务控制部701,保持执行中的任务的信息;以及初始化任务指示部702,设定需要初始化处理的任务。具有这样构成的中断管理装置700用执行任务控制部701和初始化任务指示部702来判定在恢复中断任务时是否需要进行中断任务125的初始化处理,在需要初始化中断任务125的情况下,任务管理控制部704用初始化任务管理部703中存储的调用地址来调用进行初始化处理的任务。
因此,在中断处理任务127中,在发生从初始状态开始就控制任务的处理的情况下,中断处理任务127不必对任务的栈区域、任务控制部件等进行初始化。
因此,中断处理任务127不必理会初始化的任务的处理内容,在中断处理任务127内,能够构筑可以与中断处理任务127和需要初始化的任务独立地控制进行初始化的处理步骤的机构。
此外,本发明可以通过软件来实现,从记录媒体中读出该软件,也可以实现本发明。
此外,本发明可以组合信号处理用处理器(DSP)中的中断管理机构,在实现用独立于DSP内的中断处理的中断处理应用的情况下是有效的。
此外,本发明可以组合计算机处理的实时操作系统和多任务操作系统等OS内的中断处理。因此,在构筑个人计算机上实现的各种应用系统中,能够以独立于OS内的中断机构的形态来构筑任务的初始化处理,所以本发明可特别发挥该效果。
(实施例3)图9是表示本发明实施例3的中断管理装置的构成的图。在该图9中,与图7所示的实施例2的各部分对应的部分附以与图2相同的标号,并省略其说明。
图9所示的实施例3的中断管理装置900除了实施例2的构成要素以外,还包括任务管理器903、以及配置在中断处理器101内的任务中断处理部904。在任务管理器903中,设置调度处理部902。在调度处理部902中,包括任务控制部901。
任务管理器903中包括的调度处理部902对与图7所示的中断管理装置700对应的部分进行作为处理对象的处理任务的判定,用存储每个处理任务的调用地址的任务控制部901、以及存储进行任务的初始化处理的任务调用地址的初始化任务管理部703来进行调用处理任务123的切换处理。
任务中断处理部904在保存处理部105中保存的中断发生时调用调度处理部902,而不进行执行中的任务的各种信息的恢复。
此外,任务管理控制部704用执行任务控制部701和初始化任务指示部702在恢复中断任务125时判定是否进行中断任务125的初始化处理,在需要进行中断任务125的初始化处理的情况下,调用任务中断处理部904,而在不需要初始化处理的情况下,调用任务恢复处理部108。
下面说明这样构成的实施例3的中断管理装置900的工作。
在中断处理器101中,任务恢复处理部108进行中断任务125的恢复处理时,与任务管理控制部704同样,用执行任务控制部701和初始化任务指示部702来判定是否进行中断任务125的初始化处理,在需要初始化处理的情况下,调用进行初始化任务管理部703中存储的初始化处理的任务。
即,在由复用中断控制部109调用中断处理任务前,用TSKINF_SHLTreg中保存的执行任务控制部701的信息(T2)和初始化任务指示部702中存储的初始化的任务的信息(T3)来进行比较处理。
由此,判定是否进行恢复中断任务125时中断任务125的初始化处理,在恢复需要初始化处理的任务的情况下,不是调用保存处理部105中保存的中断发生时保存执行中的任务的各种信息的任务恢复处理部108,而是调用任务中断处理部904。
在不需要初始化处理的情况下,调用保存处理部105中保存的中断发生时保存执行中的任务的各种信息的任务恢复处理部108,使中断任务的处理再开始。
然后,在任务管理器903的调度处理部902进行调用处理任务的切换处理时,用与任务管理控制部704中的比较处理相同的方法来进行与初始化任务指示部702指示的处理任务的比较,在调用的处理任务为需要初始化处理的任务的情况下,用初始化管理部703中存储的调用地址来进行初始化处理的任务的调用。
于是,根据实施例3的中断管理装置900,在发生任务的初始化的情况下,在初始化处理中,在已经没有恢复需要的保存处理部105中保存的中断发生时,不进行执行中的任务的各种信息的恢复,初始化处理仅在用任务管理器903的调度处理部902再次指示该任务时,可以从初始化处理起开始处理。
此外,本发明可以通过软件来实现,从记录媒体中读出该软件,也可以实现本发明。
此外,本发明可以组合信号处理用处理器(DSP)中的中断管理机构和任务管理机构,在独立于DSP内的中断处理和任务管理器来实现中断处理的应用情况下是有效的。
此外,本发明可以组合计算机处理的实时操作系统和多任务操作系统等OS内的中断处理及任务管理器处理。因此,在随着对于在个人计算机上实现的各种应用系统的初始化处理的情况下,已经不必进行恢复所不需要的任务的各种信息的恢复。即使与初始化处理关联,仅在用任务管理器903的调度处理部902再次指示该任务的情况下,可以从初始化处理起开始处理。
(实施例4)图10是表示本发明实施例4的中断管理装置的构成的图。在该图10中,与图9所示的实施例3的各部分对应的部分附以与图9相同的标号,并省略其说明。
图10所示的实施例4的中断管理装置1000除了实施例3的构成要素以外,还包括具有初始化任务管理部703的初始化控制部1001。
初始化控制部1001用存储初始化每个处理任务情况下的任务的起动开始地址的初始化管理部703来进行任务的初始化控制。
任务管理器903由初始化控制部1001、用存储每个处理任务的调用地址的任务控制部901来进行任务切换处理的调度处理部902构成。
下面说明这样构成的实施例4的中断管理装置1000的动作。
初始化控制部1001在从处理任务123被调用出的情况下,将来自处理任务123的调用地址存储到对应的处理任务的初始化管理部703,将对应的处理任务作为初始化的任务的信息存储到初始化任务指示部702之后,将处理移动到调度处理部902。
此外,在从调度处理部902调用初始化控制部1001的情况下,用与调用时指示的处理任务对应的初始化任务管理部703中存储的任务的起动开始地址来进行任务的调用。
调度处理部902在从处理任务123中被调用的情况下,将来自处理任务123的调用地址存储到对应处理任务的任务控制部901。
此外,在从任务中断处理部904或初始化控制部1001调用调度处理部902的情况下,在进行调用处理任务的切换处理时,进行与初始化任务指示部702指示的处理任务的比较。
在调用处理任务为需要初始化处理的任务的情况下,用初始化任务管理部703中存储的起动开始地址来进行任务的调用。
在其他情况下,用从任务控制部901调用的处理任务所对应的调用地址来进行任务的调用。
在初始化控制部1001和调度处理部902中,作为要存储的调用地址的获得方法,例如是使用DSP等的CALL命令和使用POP命令的方法。
CALL命令是将发行CALL命令的程序的下个命令的程序计数器存储在栈中,并将处理过渡到CALL命令所指示的程序计数器的值的命令,而POP命令是取出栈中存储的值的命令。
因此,通过根据该CALL命令将控制转移到初始化控制部1001和调度处理部902的规定处理,将用POP命令调用的任务返回地的程序计数器的值存储在初始化管理部703或任务控制部901中,可以获得地址。
于是,根据本发明实施例4的中断管理装置1000,包括任务管理器903中的初始化的任务的管理,是仅规定地址的管理和控制方法的管理,所以可构筑不依赖于各处理任务的调用地址的处理任务的切换控制。
此外,本发明也可以通过软件来实现,从记录媒体中读出该软件,也可以实现本发明。
此外,本发明可以组合信号处理用处理器(DSP)中的中断管理机构和任务管理机构。本发明在独立于DSP内的中断处理和任务管理器来实现中断处理的应用情况下是有效的。
此外,本发明可以组合计算机处理的实时操作系统和多任务操作系统等OS内的中断处理及任务管理器处理。因此,对于在个人计算机上实现的应用系统,具有能够构筑不依赖于OS内处理的任务切换处理这样的有利效果。
如以上说明,根据本发明,在中断任务内可接受其他中断的情况、或在中断后禁止其他中断的情况等变更中断处理器中的中断许可/禁止处理时,可以容易地进行中断处理器或中断处理任务产生的中断处理内容的变更。
此外,在用OS的中断管理方法中,即使在对于所有的中断因素,OS内的中断处理器集中进行中断的禁止/许可处理的情况下,用户也可以制定中断处理任务,而不必理会OS内的中断处理器的中断管理状态。
此外,可以构筑不依赖于OS内的中断处理器的中断管理状态的中断处理,而且在中断处理任务中,在发生从初始状态开始任务处理控制的情况下,不需要对任务的栈区域、任务控制部件等进行中断处理任务初始化。
因此,中断处理任务不需要理会初始化任务的处理内容,在中断处理任务内,可以将进行初始化的处理步骤构筑成中断处理任务和需要初始化的任务以及可独立控制的机构。
而且,在发生任务的初始化的情况下,在发生保存处理部中保存的中断时的执行中的任务的各种信息中,在初始化处理中,对于不需要恢复的信息不进行恢复。
而且,在初始化处理中,任务管理器903的调用处理部902仅在再次指示该任务时才可以从初始化处理起使处理开始。包括任务管理器902中的初始化的任务管理是地址的管理和仅规定控制方法的管理,所以可以调用各处理任务,进行不依赖于地址的处理任务的切换控制。
本说明书基于1999年12月7日申请的(日本)特愿平11-347294号公报。其内容全部包含于此。
产业上的可利用性本发明是进行计算机处理的实时操作系统(实时OS)和多任务操作系统(多任务OS)、以及信号处理装置(DSP)中的中断管理的发明,适用于采用W-CDMA(Wide band-Code Division Multiple Access宽带码分多址)方式的移动通信系统中的携带电视电话装置等的图像终端装置等中使用的中断管理装置和中断管理方法的领域。
权利要求
1.一种中断管理装置,包括中断控制器,以中断屏蔽来控制向中断处理器的中断通知;保存处理部件,保存在发生所述中断时执行中的任务的信息;中断因素判定部件,根据所述中断的因素来决定要处理的中断处理任务;中断管理部件,与所述中断处理器独立地保持对每个中断因素准备的可接受中断的状态;中断屏蔽解除部件,在中断处理任务中控制中断许可;复用中断控制部件,根据所述中断管理部件和所述中断屏蔽解除部件的处理来进行中断屏蔽的更新控制;中断任务控制部件,进行决定的中断处理任务和所述中断处理器间的处理的转移;以及任务恢复处理部件,恢复所述保存处理部件所保存的中断发生时执行中的任务的信息,使中断的任务的处理再开始。
2.如权利要求1所述的中断管理装置,其特征在于,包括初始化任务管理部件,存储与中断处理器独立地用于进行任务初始化处理的任务的调用地址;执行任务控制部件,保持执行中的任务的信息;初始化任务指示部件,设定初始化处理所需的任务;以及任务管理控制部件,根据所述执行任务控制部件和所述初始化任务指示部件的处理,在恢复中断任务时,进行是否进行所述中断任务的初始化处理的判定,在恢复需要初始化处理的任务的情况下,执行进行所述初始化任务管理部件中存储的初始化处理的任务的调用。
3.如权利要求2所述的中断管理装置,其特征在于,包括任务控制部件,进行作为处理对象的处理任务的判定,存储每个处理任务的调用地址;任务管理器,具有根据初始化任务管理部件的处理来进行调用处理任务的切换处理的调度处理部件;以及任务中断处理部件,不进行在发生保存处理部件中保存的中断时执行中的任务信息的恢复,而调用所述调度处理部件;任务管理控制部件根据执行任务控制部件和初始化指示部件的处理,来判定在恢复中断任务时是否进行中断任务的初始化处理,在恢复需要初始化处理的任务的情况下,调用所述任务中断处理部件,而在不需要初始化的情况下,调用任务恢复处理部件。
4.如权利要求3所述的中断管理装置,其特征在于,在任务管理器中包括初始化控制部件,根据初始任务管理部件的处理来进行任务的初始化控制。
5.一种中断管理方法,以中断屏蔽来控制对中断处理器的中断通知,通过该控制保存发生中断时执行中的任务的信息,根据所述中断的因素来决定要处理的中断处理任务,与所述中断处理器独立地保持对每个所述中断因素准备的可接受中断的状态,根据所述中断处理任务中用于控制中断许可的中断屏蔽解除控制信息和可接受所述中断状态的信息来进行中断屏蔽的更新控制,进行决定的中断处理任务和所述中断处理器间的处理的过渡,恢复发生所述保存的中断时执行中的任务的信息,使中断的任务的处理再开始。
6.如权利要求5所述的中断管理方法,其特征在于,与中断处理器独立,保持如下信息存储进行任务的初始化处理的任务调用地址的初始化任务管理信息、执行中的任务的信息、以及设定初始化处理所需的任务的初始化任务指示信息,在根据所述执行任务控制信息和所述初始化任务指示信息来恢复中断任务时,判定是否进行中断任务的初始化处理,在恢复需要初始化处理的任务的情况下,调用进行所述初始化任务管理信息中存储的初始化处理的任务。
7.如权利要求6所述的中断管理方法,其特征在于,进行作为处理对象的处理任务的判定,根据存储每个处理任务的调用地址的执行任务控制信息和初始化任务管理信息,来进行调用处理任务的切换处理,进行不恢复在发生保存的中断时执行中的任务的信息的所述切换处理,在根据所述执行任务控制信息和所述初始化任务指示信息来恢复中断任务时,判定是否进行中断任务的初始化处理,在恢复需要初始化处理的任务的情况下,进行所述任务中断处理,而在不需要初始化处理的情况下,进行任务恢复处理。
8.如权利要求7所述的中断管理方法,其特征在于,用初始化任务管理信息来进行任务的初始化控制,用执行任务控制信息来进行任务的切换处理。
9.一种记录执行中断管理方法的程序的记录媒体,所述中断管理方法以中断屏蔽来控制对中断处理器的中断通知,通过该控制保存发生中断时执行中的任务的信息,根据所述中断的因素来决定要处理的中断处理任务,与所述中断处理器独立地保持对每个所述中断因素准备的可接受中断的状态,根据所述中断处理任务中用于控制中断许可的中断屏蔽解除控制信息和可接受所述中断状态的信息来进行中断屏蔽的更新控制,进行决定的中断处理任务和所述中断处理器间的处理的过渡,恢复发生所述保存的中断时执行中的任务的信息,使中断的任务的处理再开始。
10.一种具备与中断管理方法对应的处理功能的操作系统,所述中断管理方法以中断屏蔽来控制对中断处理器的中断通知,通过该控制保存发生中断时执行中的任务的信息,根据所述中断的因素来决定要处理的中断处理任务,与所述中断处理器独立地保持对每个所述中断因素准备的可接受中断的状态,根据所述中断处理任务中用于控制中断许可的中断屏蔽解除控制信息和可接受所述中断状态的信息来进行中断屏蔽的更新控制,进行决定的中断处理任务和所述中断处理器间的处理的过渡,恢复发生所述保存的中断时执行中的任务的信息,使中断的任务的处理再开始。
11.一种具备与中断管理方法对应的处理功能的信号处理用处理器,所述中断管理方法以中断屏蔽来控制对中断处理器的中断通知,通过该控制保存发生中断时执行中的任务的信息,根据所述中断的因素来决定要处理的中断处理任务,与所述中断处理器独立地保持对每个所述中断因素准备的可接受中断的状态,根据所述中断处理任务中用于控制中断许可的中断屏蔽解除控制信息和可接受所述中断状态的信息来进行中断屏蔽的更新控制,进行决定的中断处理任务和所述中断处理器间的处理的过渡,恢复发生所述保存的中断时执行中的任务的信息,使中断的任务的处理再开始。
12.一种包括中断管理装置的图像终端装置,所述中断管理装置包括中断控制器,以中断屏蔽来控制向中断处理器的中断通知;保存处理部件,保存发生所述中断时执行中的任务的信息;中断因素判定部件,根据所述中断的因素来决定要处理的中断处理任务;中断管理部件,与所述中断处理器独立地保持对每个中断因素准备的可接受中断的状态;中断屏蔽解除部件,在中断处理任务中控制中断许可;复用中断控制部件,根据所述中断管理部件和所述中断屏蔽解除部件的处理来进行中断屏蔽的更新控制;中断任务控制部件,进行决定的中断处理任务和所述中断处理器间的处理的过渡;以及任务恢复处理部件,恢复所述保存处理部件所保存的中断发生时执行中的任务的信息,使中断的任务的处理再开始。
13.一种包括图像终端装置的移动通信系统,所述图像终端装置包括中断控制器,以中断屏蔽来控制向中断处理器的中断通知;保存处理部件,保存发生所述中断时执行中的任务的信息;中断因素判定部件,根据所述中断的因素来决定要处理的中断处理任务;中断管理部件,与所述中断处理器独立地保持对每个中断因素准备的可接受中断的状态;中断屏蔽解除部件,在中断处理任务中控制中断许可;复用中断控制部件,根据所述中断管理部件和所述中断屏蔽解除部件的处理来进行中断屏蔽的更新控制;中断任务控制部件,进行决定的中断处理任务和所述中断处理器间的处理的过渡;以及任务恢复处理部件,恢复所述保存部件所保存的中断发生时执行中的任务的信息,使中断的任务的处理再开始。
14.一种中断管理装置,包括中断处理器,规定每个中断因素的处理;中断管理部件,与所述中断处理器独立地保持对每个中断因素准备的可接受中断的状态;以及中断屏蔽解除部件,与所述中断处理器独立设置、解除在接受中断的中断因素中设定的屏蔽;所述中断处理器通过用所述中断管理部件和所述中断屏蔽解除部件来更新中断屏蔽,从而对每个中断因素进行中断的许可/禁止的控制。
全文摘要
一种中断管理装置,包括:具有保持对每个中断因素121、122准备的可接受中断状态的中断管理部103、和在中断处理任务127中用于控制中断许可的中断屏蔽解除部104,以及设在中断处理器101内的、使用各部103和104来进行中断屏蔽的更新控制的复用中断控制部109。
文档编号G06F9/48GK1340171SQ00803836
公开日2002年3月13日 申请日期2000年12月7日 优先权日1999年12月7日
发明者伊藤博之 申请人:松下电器产业株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1