运算处理系统和控制方法,任务管理系统和方法

文档序号:6464472阅读:252来源:国知局
专利名称:运算处理系统和控制方法,任务管理系统和方法
技术领域
本发明涉及关于同时执行一个或多个任务类型的处理器的功率降低技术。特别涉及关于工作在不同周期执行一个或多个任务的处理器的功率降低技术。
又特别涉及关于一种处理器功率降低的技术,这种处理器类型是执行需要在下一个周期开始之前必须完成的周期性实时任务,作为免除这种限制的非实时任务的并行运算,并涉及减少处理器功耗同时符合应用程序实时执行的需要的降低技术。
背景技术
随着近来在LSI(大规模集成)技术方面的革命性进展,已经开发和面市了各种信息处理设备和信息通信设备。使用这些设备,CPU(中央处理器)或其它的处理器执行预设的程序代码,以便执行各种处理服务。
另一方面,因为关系到电池驱动型的信息设备中延长电池的使用寿命,故信息设备中功耗降低日益成为必要。即使在能够以市电驱动限制显然较少的信息设备中,从自然资源不能无限提供这种社会生态学角度而言,也最好要节能。
在信息设备中,在整个设备功耗中处理器作为其主要控制器的功耗比例是很高的。换言之,处理器的节能将导致整个信息设备的节能的实现。大体上来说,处理器的运算速度随工作频率变得越来越高,这样功耗趋向增加。
例如,日本公开专利公报H-11-194849透露了一种数据处理方法和装置,其中预置的处理运算能够在预置的处理时间内结束,而不会无用地增加功耗,且其中即使任务处理能力改变也能便于设置运算。
在以上引述的公报中透露的数据处理装置中,微型计算机执行各种处理操作情形下的处理能力和处理时间分别被记录在能力记录装置和时间存储装置中,处理能力和时间是对于由微型计算机进行的各种处理操作计算出的,且处理能力除以处理时间计算出微型计算机的处理速度,以改变标准时钟频率。由于微型计算机的处理速度随处理能力和处理时间而变化,故预置的处理操作必定能够在预置的处理时间内结束,同时标准时钟频率能够设置在最优值,故防止了数据处理装置中功耗浪费地增加。
然而,在以上引述的公报中所透露的数据处理方法和装置中,只注意到通过改变处理器的工作时钟频率来降低功耗。换言之,在通过减少工作时钟频率而降低每单位时间的功耗,于是不能实现充分降低总功耗的效果。特别地,所达到的节省功耗的程度并不高于处理器处于闲置状态时的功耗量,其结果是不能有效地节省功耗。
此外,使用以上引述的公报中透露的数据处理方法和装置,要预先假定每一处理的处理定时是预定的,并通过不间断地顺序进行各处理操作,整个的处理操作才能按时结束。这样,该数据处理方法和装置不能用于这样的系统,即可能必须中断给定的处理操作而进行更紧迫的诸如实时处理这样的处理。
日本公开专利公报2000-122747透露了一种控制方法和装置,其中装有向数字信号运算处理器提供时钟的时钟发生器,且其中基于数字信号运算处理器中的运算处理量,控制从时钟发生器向数字信号运算处理器提供的时钟频率,以减少功耗。
此外,使用以上引述的公报中透露的数据处理方法和装置,只试图通过改变处理器的工作时钟频率降低功耗。换言之,当通过降低工作时钟频率可以降低每单位时间的功耗时,就会延长完成每一处理所需的时间,其结果是降低总功耗的效果并不那么高。特别地,所达到的节省功耗的程度并不高于处理器处于闲置状态时的功耗量,于是不能实现充分节省功耗的效果。
此外,使用以上引述的公报中透露的控制方法和装置,从闲置时间的比例计算工作频率。然而,在设计供以不同周期进行大数量任务操作的多任务环境中,不能计算闲置时间的比例。
另一方面,如在Takanori Okuma,Tohru Ishihara与HirotoYasuura的标题为 可变电压处理器的实时任务调度’论文(IEEE第12届系统综合国际研讨会,1999年11月)中提出的SS和SD调度技术中,预先假设任务执行的开始时间在系统运行之前是已知的。这指出,每当补充或删除任务时必须重新进行调度。此外,必须通过计算以各周期任务的最小公共的多个周期作为周期的调度进行这种调度。如果这些周期的最小公共多周期不是充分小,则任务的补充和删除效率恶化。
此外,至于在该论文中提出的DD调度技术,不使用考虑以特定模式开始的任务这样的事实的调度,如在周期性滑板(sled)中那样,不能充分实现降低功耗的效果。
如在Yann-Hang Lee与C.M.Krishna的标题为“对于实时嵌入系统中的低能耗的电压时钟标定”的论文中提出的称为“基于任务的静态调度”的技术(IEEE关于实时系统和应用的第六届国际会议,1999年12月),假设按静态优先权方法调度任务。然而,已知静态优先权方法对于最快终期优先权调度在其调度能力方面是不良的,使得这种技术在其降低功耗的效果方面也不令人满意。
大体来说,如果工作频率增加,处理器运算速度趋向于变得更快,但如上所述功耗也增加。另一方面,电源的电压,换言之功耗必须随处理器的工作频率而增加。然而,由于LSI制造工艺中的设计规则变得更为精细,对电源电压设置了上限,使得实际上,通过提高电压来提高频率已经不实际。
在处理器工作频率以及电源电压能够通过动态控制而变化的系统中,可以设想不延迟地自适应改变对于处理各被引导的任务所必须的工作频率,并通过对随时间进程的变化的工作频率确定最优电源电压而降低处理器功耗。然而,还没有对此付诸实现的先有技术。
本发明的公开就本技术方面的上述状态来看,本发明的一个目的是要提供用于处理器的功耗降低技术,该处理器执行一个或多个任务而以分别不同的频率工作。
本发明的另一目的是要提供用于处理器的一种功耗降低技术,该处理器的类型是,并行执行周期性实时任务,该任务需要在下一个周期开始之前完成,以及非实时任务,其中直到执行完成之前对时间没有限制。
本发明的另一目的是要提供一种功耗降低技术,其中处理器的功耗能够按应用程序的实时需要被调节而降低。
本发明的另一目的是要在处理器的工作频率和电源电压能够通过动态控制而变化的系统中提供一种功耗降低技术,根据这种技术无延迟地处理被引导的任务所必须的工作频率自适应地变化,同时由于根据随时间进程而改变的工作频率确定最优电源电压,因而降低了处理器功耗。
根据本发明的运算处理系统或方法或方法包括一处理器,该处理器能够并行执行周期性实时任务,该任务的执行需要在下一个周期开始之前完成,以及执行非实时任务,对其执行完成的时间点不加限制,并还包括一工作频率计算装置或步骤,用于计算足以满足对每一周期性实时任务在处理器工作的每一时间点作出的请求的工作频率,以及处理器时钟产生装置或步骤,用于提供通过工作频率计算装置计算的结果推导出的工作频率的时钟。
‘系统’在这里意思是一组逻辑上组合在一起的多个装置(或功能模块,其每一个实现特定的功能),而不论各装置或功能模块是否装设在同一外壳中。
要注意的是,由处理器执行的任务的管理,或执行任务中必须的处理器工作频率的计算,例如可作为操作系统的功能而实现。
使用根据本发明的运算处理系统和运算处理控制方法,用于处理在被无延迟引导时的周期性实时任务和非实时任务所必须的处理器工作频率是自适应改变的,同时,由于对时间进程中变化的工作频率确定处理器电源电压的最优值,以便降低处理器的功耗。
根据本发明的运算处理系统和运算处理控制方法还包括一个任务选择和执行装置或步骤,在处理器工作期间每一时间点,用于选择给定的将被执行的任务之一,并用于执行这样选择的任务。更具体来说,如果从可执行周期性实时任务列表的前端取出一个任务,或者如果在列表为空的情形下,从可执行非实时任务的前端取出一任务,各任务可被执行,以使加于周期性实时任务的要求被满足。
可以进而包括休眠转变装置或步骤,用于在处理器工作期间的每一时间点响应被执行的任务的减少,引起处理器转变为降低工作速率的休眠状态。
根据本发明的运算处理系统和运算处理控制方法还可以包括电源电压计算装置或步骤,用于计算足以按工作频率计算装置或步骤计算的工作频率驱动处理器的电源电压,以及处理器电源供给装置或步骤,用于向处理器供给从电源电压计算装置或步骤计算结果推导出的电源电压。
一般来说,如果处理器的工作频率增加,供电电源电压必须升高。通过自适应改变处理在处理器无延迟引导的任务所必须的工作频率,并通过响应不间断变化的工作频率而确定电源电压的最优值,能够有效地降低处理器的功耗。
根据本发明的运算处理系统和运算处理控制方法,可进而包括任务信息记录装置或步骤,用于在任务执行之前记录有关加于每一周期性实时任务的开始时间,周期或每周期处理负荷的信息,以及任务登记限制装置或步骤,用于参照由任务信息记录装置或步骤记录的信息限制新的周期性实时任务的登记,使得电源电压或工作频率都不超过处理器的限度和/或使得将满足加于预先登记的周期性实时任务的要求。
根据本发明的运算处理系统和运算处理控制方法,可进而包括下限值设置装置或步骤,用于响应在没有非实时任务时由工作频率计算装置发现工作频率低于预设下限值,把处理器的工作频率装设为下限值。另外,根据本发明的运算处理系统和运算处理控制方法还可以包括下限值设置装置或步骤,用于响应在没有非实时任务时由电源电压计算装置发现处理器电源电压低于预设低值,设置处理器电源电压的低值。
这种情形下,执行非实时任务造成的功耗能够被降低,同时通过设置下限值使用处理器中产生的冗余时间执行非实时任务,保证了在下一个周期开始之前周期性实时任务执行的完成。
根据本发明,包括能够执行一个或多个任务的处理器的运算处理系统和运算处理控制方法,包括一个工作频率装置或步骤,用于计算足以满足加于由处理器执行的每一任务的请求的工作频率,处理器时钟产生装置或步骤,用于向处理器提供由工作频率计算装置计算结果推导出的工作频率,电源电压计算装置或步骤,用于计算在由工作频率计算装置计算的工作频率下驱动处理器足够的电源电压,以及处理器电源提供装置或步骤,用于向处理器提供从电源电压计算装置计算结果推导出的电源电压。
注意,由处理器执行的任务的管理,或执行这些任务中所必须的处理器工作频率的计算,例如可以作为操作系统的功能而实现。
使用根据本发明的运算处理系统和运算处理控制方法,用于处理被无延迟引导的周期性实时任务和非实时任务所必须的处理器工作频率是自适应变化的,同时响应在时间进程中变化的工作频率确定处理器电源电压的最优值,从而降低了处理器的功耗。
根据本发明用于一种处理器的任务管理系统和方法,该处理器能够并行执行必须在下一个周期开始之前完成的周期性实时任务,以及对其执行完成的时间点不加限制的非实时任务,该系统和方法包括任务信息记录装置或步骤,在任务执行之前记录加于每一周期性实时任务的信息,关于下一个周期开始的时间,周期或关于每周期处理负荷,工作设置装置或步骤,响应加于处理器的处理负荷设置处理器的电源电压和工作频率,以及任务登记限制装置或步骤,参照由任务信息记录步骤记录的信息,限制新的周期性实时任务的登记,使得电源电压或工作频率都不超过处理器的限制,和/或使得将满足加于预登记周期性实时任务的要求。
使用根据本发明的管理系统和方法,能够限制新的周期性实时任务的登记,使得电源电压和工作频率都不会超过处理器限制,和/或使得满足加于预登记的周期性实时任务的要求。
根据本发明的任务管理系统和方法可以包括下限值设置步骤,响应在没有非实时任务时由电源电压计算步骤发现的处理器电源电压变得低于预设低值,把电源电压设置在预设的低值。
这种情形下,由于通过在处理器设置下限值采用产生的冗余时间执行非实时任务,保证了下一个周期开始之前周期性实时任务的完成,可以降低由执行非实时任务引起的功耗。
根据本发明的存储介质,具有以计算机可读形式物理地存储在其上的计算机软件,该计算机软件是这样写成的,使得由处理器进行的计算处理的控制将在计算机系统上管理,处理器能够并行执行在下一个周期开始之前必须完成的周期性实时任务,以及对其执行完成的时间点不加限制的非实时任务。该计算机软件包括工作频率计算步骤,计算足以满足加于由处理器执行的每一任务的请求的工作频率,以及处理器时钟产生步骤,向处理器提供对应于由工作频率计算步骤计算结果的工作频率时钟。
根据本发明的存储介质,具有以计算机可读形式物理地存储在其上的计算机软件,该计算机软件是这样写成的,使得由能够执行一个或多个任务的处理器进行的运算处理的控制将在计算机系统上执行。该计算机软件包括工作频率步骤,计算足以满足加于由处理器执行的每一任务的请求的工作频率,处理器时钟产生步骤,向处理器提供从工作频率计算步骤计算结果推导出的工作频率时钟,电源电压计算步骤,计算按工作频率计算步骤计算的工作频率驱动处理器的足够的电源电压,以及处理器电源电压提供步骤,向处理器提供从电源电压计算步骤的计算结果所推导出电源电压。
根据本发明的存储介质,具有以计算机可读形式物理地存储在其上的计算机软件,该计算机软件是这样写成的,使得对于处理器的任务管理,能够并行执行在下一个周期开始之前其执行必须被完成的周期性实时任务,以及对其执行完成的时间点不加限制的非实时任务。该计算机软件包括任务信息记录步骤,记录加于每一周期性实时任务的信息,诸如下一个周期,周期开始的时间,或任务执行之前加于每周期的处理负荷,工作设置步骤,响应加于处理器的处理负荷设置处理器的电源电压和工作频率,以及任务登记控制步骤,参照由任务信息记录步骤记录的信息限制新的周期性实时任务的登记,使得电源电压或工作频率都不超过处理器的限制,和/或使得将满足加于预登记周期性实时任务的要求。根据本发明的每一记录介质是这样的介质,其物理上向能够执行计算机可读形式的各种程序代码的通用计算机系统供给计算机软件。该记录介质是可移动的并便于携带,诸如CD(小型盘),FD(软盘)或MO(磁光盘)。而且技术上便于以计算机可读形式,向特定计算机系统通过可以是有线或无线的网络传输介质提供计算机软件。
这些记录介质规定了用于实现计算机系统上预设的计算机软件功能的协作的结构或功能关系。换言之,通过本发明的记录介质在计算机系统上安装预设的计算机软件可以在计算机系统上明显表示出该协作关系,使得可以实现类似于运算处理系统或方法及任务管理系统和方法的操作和效果。
从阅读如附图所示的本发明的实施例,本发明的其它目的,特征和优点将更为明显。
附图的简要说明

图1是表示实施本发明运算处理系统10的硬件结构的示意图。
图2简略表示在不同周期所执行的多个实时任务同时执行的状态。
图3是表示实施本发明的操作系统的功能结构的简化框图。
图4是表示在登记周期性实时任务的界面所实现的处理顺序的流程图。
图5是表示在删除周期性实时任务的登记的界面所实现的处理顺序的流程图。
图6是表示在开始引导实时任务的界面所实现的处理顺序的流程图。
图7是表示当时间是引导周期性实时任务的定时器的设置时间时处理顺序的流程图。
图8是表示在登记非实时任务的界面所实现的处理顺序的流程图。
图9是表示在删除非实时任务的登记的界面所实现的处理顺序的流程图。
图10是一流程图,表示在周期性实时任务的登记的删除和开始引导时以及在非实时任务的登记和删除登记时,所进行重新调度处理的处理顺序。
以下参照附图将详细说明本发明的优选实施例。
1.系统结构实施本发明的运算处理系统10的硬件结构在图1中简略示出,其中运算处理系统10由处理器11,随机访问存储器(RAM)12,只读存储器(ROM)13,一个或多个外围装置14和定时器15构成。
处理器11是运算处理系统10的主控制器,并在操作系统(OS)的控制下执行各种程序代码。
一般来说,通过操作系统程序执行的管理和控制单元称为任务。本实施例的处理器11具有在各不同周期同时执行多任务操作的多任务机制。任务可大体分为其执行必须在下一个周期开始之前完成的周期性实时任务’,以及其中直到执行完成对时间不加限制的‘非实时任务’。
处理器11通过总线16与将在以下说明的其它设备互连。总线16上的各设备配有其自己固有的存储器地址或I/O地址。处理器11能够通过这些地址访问改设备。总线16是包含地址总线,数据总线和控制总线的公共信号传输通路。
RAM12是可重写存储器,用于加载由处理器11执行d的程序代码,或暂时存储被执行的程序的工作数据。例如,程序代码的例子可以是BIOS(基本输入/输出系统),用于操作外围装置的硬件的装置的驱动程序,操作系统和应用程序。
ROM13是用于永久存储预置代码和数据的非易失存储器,并例如保存BIOS和加电自检(POST)程序。
外围装置14的例子可以是用户输出装置,诸如显示器或打印机,用户输入装置,诸如键盘或鼠标,外部存储装置,诸如硬盘或其它介质驱动器,以及通信装置,诸如网络接口卡。
对外围装置指定一中断水平,使得响应诸如键盘输入或鼠标点击等预置事件的发生,通过中断请求信号线路19对处理器11作出对应的通知。
定时器15是用于以预置周期产生定时器信号的装置。对于定时器15,也指定一中断水平,使得可以通过中断请求信号线路19引起周期性中断出现在处理器11中。应当注意,如果存在具有不同的分离周期的多个周期性实时任务,定时器信号不提供周期性中断。
以上系统10的上述各组件从电源装置17通过电源供电线路18供电。虽然电源装置17例如由电池或市电AC电源构成,通过AC/DC适配器或DC/DC转换器也可以供给直流电源电压。
在所示的实施例中,为处理器11装设了专用的DC/DC转换器21。本实施例中,对处理器11提供了从DC/DC转换器21设置供电电压的功能。
对处理器11供给由处理器时钟发生器22产生的工作时钟,并与工作时钟频率同步被驱动。大体来说,处理器11的性能和处理速度随着存在频率的增加而增加,而功耗也随之增加。本实施例中,处理器11具有在操作系统控制下设置通过处理器时钟发生器22产生的时钟的工作频率的功能。
其间,并不强制通过用于处理器11的DC/DC转换器21及通过处理器时钟传输器22动态控制用于处理器11电源电压和工作频率两者,而是只通过它们之一的操作满足实现本发明的良好效果。换言之,即使在操作系统不是动态控制处理器11的电源电压和工作频率两者,而只是动态控制处理器的电源电压和工作频率之一的情形下,也能够实现本发明的良好效果。另外,通过运算处理可以只设置电源电压和工作频率之一,另一个自动跟随该设置(例如,可通过操作系统设置处理器11的频率,在这样设置的的频率下工作的必须最小电源电压自动提供给处理器11)。
2.应用程序的接口运算处理系统10上的运算处理是这样发生的,处理器11在上述操作系统控制之下执行应用程序任务。操作系统是指一种基本软件,用于全面地管理系统10的硬件和软件,并提供带有用于调用(调用)操作系统基本功能的接口的应用程序,这就是API(应用程序接口)。
如前所述,通过操作系统程序执行的管理和控制单元称为任务。任务可大体分为其执行必须在下一个周期开始之前完成的 周期性实时任务’,以及其中直到执行完成对时间不加限制的‘非实时任务’。
周期性实时任务是以一定的周期被周期性引导的任务。应当注意,有可变的周期性实时任务的周期。图2简略示出多个周期性实时任务正在以不同周期同时执行的状态。
周期性实时任务每当被引导,就在不超过由应用程序开端所设置的处理器使用量范围内执行。‘处理器使用量’是指在处理器工作频率固定在最小值的条件下要完成一个周期所需的时间。
本实施例的操作系统这样控制工作频率和任务执行顺序,使得周期性实时任务的执行将在下一个周期开始之前完成。
非实时任务’是其中直到执行完成对时间不加限制的任务。
本实施例的操作系统提供带有各种接口的应用程序,即‘周期性实时任务的登记’,‘周期性实时任务的周期性执行’,周期性实时任务的登记删除’,‘非实时任务执行的开始’,‘非实时任务执行的完成’及工作频率下限的设置’。
(1)周期性实时任务的登记在采用这种接口时,应用程序向操作系统提供以下信息任务引导周期,这是任务引导的周期;任务的每一周期处理负荷;以及任务执行所需的其它信息。
处理负荷可以按各种方式表示。例如,当处理器11连续以最小工作频率执行任务时,处理负荷可以由为处理一个周期所需的计算时间表示。任务执行所需的其它信息可以由任务执行开始地址或由叠置区位置列举。应当注意,这一信息对工作频率,电源电压或任务执行顺序的控制不是主要的。
基于上述信息,操作系统验证在满足已经登记的周期性实时任务的请求时,新的周期性实时任务的执行是否可行。如果验证了新的周期性实时任务的执行不可行,结果通知给应用程序,同时任务不登记。
(2)周期性实时任务的周期性执行通过上述接口‘周期性实时任务的登记’成功赢得登记的周期性实时任务,能够通过这一接口的调用开始周期性引导。在采用这一接口时,应用程序向操作系统提供能够设备任务的值。
还能够省略这一接口而实现,使得引导将与任务登记成功同时开始,这时通过提供适于形成从指定时间开始周期性引导的请求接口而实现。
(3)周期性实时任务的登记删除当采用这一接口时,应用程序向操作系统提供能够识别任务的值。
(4)非实时任务的执行开始这一接口的调用使能够执行指定的非实时任务。当采用这一接口时,应用程序向操作系统提供这样的信息,诸如任务执行开始地址,开始区域位置或非实时任务之间执行的优先顺序。
(5)非实时任务执行的完成这一接口的调用使指定任务的后继执行不可能。然而能够实现通过上述接口‘非实时任务执行的开始’的调用可重新开始执行。
(6)对工作频率设置下限这是用于设置工作频率的接口,通过操作系统设置,使不会低于一定的阈值。操作系统通常试图以执行周期性实时任务所必须的足够最小工作频率驱动处理器。因而,用于执行非实时任务的处理器时间趋于不足。这种情形下,这一阈值能够设置为较大的值,以允许执行非实时任务。
3.操作系统的实现本实施例的操作系统保有以下从一个任务到另一任务的变量ei下一个周期开始时间pi周期ci每周期处理负荷应当注意,各变量的下标是用来标识任务的任务号码。
此外,本实施例的操作系统保有以下变量Ir使当前在操作系统中登记的周期性实时任务的处理负荷除以周期而获得的商的和。就是说,这一变量对应于处理器11的使用率,并取从0到1.0的值。如果Ir是小于1.0的值,则处理器11重新处于执行周期性实时任务的位置。变量Ir在周期性实时任务登记时被更新。
Ia当前在操作系统中登记并发出引导请求的周期性实时任务的处理负荷除以周期而获得的商的和。就是说,这一变量对应于处理器11的使用率,并取从0到1.0的值。变量Ia在周期性实时任务登记时被更新。
fmin由应用程序设置的工作频率的下限值。
Rr这是能够被执行的周期性实时任务的列表。这一列表是由全部周期性实时任务构成,其每一个在一定的周期开始但是还没有完成周期的执行,且它们处于不是等待各种事件发生的状态。这一列表中的任务按ei(下一个周期开始时间)增加值的顺序排列。
Rb这是可执行的非实时任务的列表。这列表由已起动且没有执行完的所有非实时任务组成,它们不是在等待各种时间的发生。这一列表中任务的排列顺序是可选的,例如可以使用先入先出(FIFO)系统。然而,如果对非实时任务设置了优先顺序,列表中的任务可以按与这一优先顺序相同的顺序排列。
图3示出本实施例操作系统的功能结构,有指向任务管理功能的特别注意之点。
如所示,操作系统包括包括调度程序和定时器管理程序。
定时器管理程序是根据从定时器15的提供的定时器信号负责处理器11的定时器管理的功能模块。定时器管理程序是用于保持请求的任务处于预置顺序,例如处于与执行的开始时间一致的顺序,的队列。队列中的每一任务包括任务标识符和执行开始时间(释放时间)。
在所示的例子中,对于任务10在释放时间80的请求1,以及对于任务11在释放时间95的请求2,存储在定时器管理程序的队列中。
调度程序是负责每一已引导的任务调度管理的功能模块,并包括列表可执行实时任务的列表Rr及可执行非实时任务列表Rb。调度程序还管理周期性实时任务的处理负荷除以周期所获得的商Ir和Ia的和,注意,Ir是周期性实时任务登记时间处的值,而Ia是用于引导周期性实时任务的请求时间处的值。
在所示例子中,周期性实时任务在列表Rr中按任务1,3,4和2的顺序登记。在列表Rb中,非实时任务按6,8,7和5的顺序登记。处理负荷除以周期所获得的和Ir和Ia,都是80%,指示周期性实时任务能够被重新执行。
定时器管理程序向调度程序通知释放的任务的引导。另一方面,调度程序向定时器管理程序通知任务号码和任务引导时间。
应用程序与操作系统中的调度程序连接,被设定为用于通过上述接口接收,由pi和ci通知伴随的周期性实时任务的登记请求,对于周期性实时任务的引导和登记的删除的请求,以及对于非实时任务的登记和登记删除的请求。
4.通过操作系统的任务控制以下将说明带有上述操作系统的每一接口的程序执行的处理操作。
图4示出一流程图,表示每一接口中适用于登记周期性实时任务所实现的处理顺序。参见这一流程图,现在说明周期性实时任务的登记处理。
首先,对新登记的周期性实时任务赋予任务号码i(步骤S1),以试图计算当前在操作系统中登记的周期性实时任务的处理负荷除以周期获得的和值Ir。
然后,Ir与1进行比较看其是否大于1(步骤S2)。如果Ir超过1,则没有新的周期性实时任务能够被执行,于是登记被验证为失败。如果Ir小于1,则新的周期性实时任务仍然除以可执行状态,于是Ir值被更新(步骤S3),登记被验证为成功。
图5以流程图形式示出,在适于进行删除周期性实时任务的登记的接口中实现的处理序列。通过参照这一流程将说明周期性实时任务登记删除的处理。
首先,对其登记要被删除的周期性实时任务赋予任务号码i(步骤S11)。删除定时器管理程序中用于引导该任务的定时器登记。
然后,从当前在操作系统中登记的周期性实时任务的处理负荷除以周期获得的商的和Ir,及从当前在操作系统中登记的并具有发出的引导请求的周期性实时任务的处理负荷除以周期获得的商的和Ia,减去对周期性实时任务的ci/pi(步骤S13和S14)。
其登记要被删除的周期性实时任务i已经登记在调度程序中的可执行实时列表的列表Rr中,则从列表Rr删除任务i(步骤S15)。
执行分开定义的再调度(步骤S16),以整个结束当前处理的程序。稍后将详细说明再调度处理。
图6是一流程图,表示起动周期性实时任务引导的接口中实现的处理序列。现在参照这一流程图说明用于起动周期性实时任务的引导的处理。
向要被起动引导的周期性实时任务赋予任务号码i(步骤S21)。对在当前在操作系统中登记并具有发出的引导请求的周期性实时任务的处理负荷除以周期而获得的值求和,即以ci/pi对任务i求和(步骤S22)。
然后,当前在操作系统中登记并具有发出的引导请求的周期性实时任务的处理负荷除以周期而获得的商的和Ia,或由应用程序设置的工作频率的下限fmin,其中较大者设置为变量f(步骤S23)。
处理器11的工作频率设置为f,同时向处理器11的供给的电源电压设置为在频率f可工作的最小电压(步骤S24)。如上所述,可以通过向处理器时钟发生器22及用于处理器的DC/DC转换器21每一个传送命令值而改变处理器11的工作频率或电源电压。如果从加于处理器11的处理负荷发现工作频率低于由应用程序设置的工作频率的下限fmin,则设置下限值fmin作为工作频率,以使得非实时任务在处理器11中产生的冗余时间期间执行。其结果是,保证了否则在下一个周期开始之前在周期性实时任务执行完成时非实时任务能够被割除的结果而被消耗的电能。
加到任务i的周期pi的当前时间取代了下一个周期ei开始的时间(步骤S25),并这样设置定时器15,使得任务i在时间ei被引导(步骤S26)。
任务i添加并记录在调度程序中的可执行实时任务列表Rr中(步骤S27)。
通过执行不同定义的再调度处理(步骤S28),本处理程序整体上结束。将在以下详细说明再调度处理。
图7通过一流程图表示当时间是引导周期性实时任务的定时器设置时间时的处理序列。参见这一流程图,说明当时间是通过周期性实时任务指定的时间时的处理。
首先,号码i赋予要被引导的周期性实时任务(步骤S31)。
对任务i的周期pi求和的当前时间取代下一个周期ei开始的时间(步骤S32),且设置定时器15,使得任务在时间ei被引导(步骤S33)。
任务i被添加并记录到调度程序中的可执行实时任务的列表Rr(步骤S34)。
通过执行不同定义的再调度处理(步骤S35),本处理程序整体上结束。将在以下详细说明再调度处理。
图8以一流程图形式表示在登记非实时任务的接口中实现的处理序列。参见这一流程图,现在说明非实时任务的登记处理。
任务号码i首先赋予要被新登记的非实时任务(步骤S41)。这一任务i添加并登记到调度程序中的可执行非实时任务的列表Rb中(步骤S42)。
执行不同定义的再调度(步骤S43),以整体结束当前处理程序。将在以下详细说明再调度处理。
图9以一流程图形式表示在删除非实时任务的接口中实现的处理序列。参见这一流程图,现在说明非实时任务的删除处理。
首先,任务号码i赋予其登记将要被删除的非实时任务(步骤S51)。
如果这一任务i已经登记在调度程序中的可执行的非实时任务列表Rb中,则任务i从列表Rb中删除(步骤S52)。
执行不同定义的再调度(步骤S53),以整体结束当前处理程序。将在以下详细说明再调度处理。
图10以一流程图形式表示,在周期性实时任务的登记删除和引导的起动时,以及在非实时任务的登记和登记删除时,每一处理子程序中所执行的再调度处理序列。参见这一流程图,说明任务的再调度处理。
首先检验可执行周期性实时任务的列表Rr是否为空(步骤S61)。
如果列表Rr不为空,任务号码i赋予在列表Rr前端的周期性实时任务(步骤S64)。然后,控制移动到任务i(步骤S66)以整体完成当前的处理程序。
如果列表Rr为空,检验可执行非实时任务的列表Rb是否为空(步骤S62)。
如果列表Rb不为空,任务号码i赋予在列表Rb前端的非实时任务(步骤S65)。然后,控制移动到任务i(步骤S66)以整体完成当前的处理程序。
如果调度程序中的列表Rr和Rb都是空的,则当前没有要由处理器11执行的任务。于是处理器11移动到休眠状态(步骤S63),并被引入待命状态直到下一个任务出现。
休眠状态这里是指处理器降低活动以达到节能的工作方式。然而,这里不给出休眠状态的定义,因为这不直接关系本发明的主旨。
至此已参照其特定实施例对本发明进行了阐述。然而,这些实施例能够由业内专业人员在不背离本发明的范围下进行修改或由其它装置代替。
在上述本发明的实施例中,周期性实时任务是由定时器引导的。然而,本发明不是必须限于这种特定的实施例。周期性实时任务可以在一可选的时间被引导,只要最小的引导间隔不小于指定的周期即可。例如,z具有形式装置的运算处理系统中,可以考虑在垂直消隐周期期间出现中断信号时引导任务。周期性实时任务还可以在来自网络的信息包到达时被引导。
总之,本发明只是以示例的方式进行了透露,而不是以限制的方式构成的。在验证本发明的主旨时必须参照权利要求的说法。
工业应用正如以上详细的讨论,本发明提供了出色的功耗降低技术,该技术能够适用于工作在不同周期执行一个或多个任务的处理器。
本发明还提供了出色的功耗降低技术,这种技术能够适用于执行周期性实时任务类型的处理器,这种任务必须在下一个周期开始之前完成执行,作为以周期性实时任务并行操作,对其不加这种限制。
本发明还提供了出色的功耗降低技术,该技术在满足应用程序的实时请求时能够降低处理器的功耗。
对于通过动态控制能够改变处理工作频率和处理器电源电压的系统,本发明还提供了一种出色的功耗降低技术,该技术能够自适应改变用于处理每一无延迟被引导的任务所必须的工作频率,并能够响应随时间流逝工作频率的变化而设置最优的处理器电源电压,以便能够使处理器的功耗降低。
根据本发明,由于处理的工作频率和电源电压的变化频率被保持在较低值,故能够降低处理器的功耗。
周期性实时任务是其处理要在下一个周期开始之前完成的一种任务。虽然可以考虑扩展系统,使得能够自由设置处理完成的时间,即截期,但是本发明对处理完成的时间故意加以限制,以便通过在任务登记和删除任务登记时简单地变化工作频率,达到充分高的功耗简单效果。
于是,本发明能够用于其中需要相对长的时间改变处理器的电源电压或工作频率的硬件。
例如,如果由于系统结构的原因,必须对下一个周期开始时间之前的一点设置截期,则除了任务引导定时器的时间设置之外,通过以对截期的参照代替所有对变量pi的参照,这是能够达到的。
权利要求
1.包括一处理器的运算处理系统,该处理器能够并行执行其执行必须在下一个周期开始之前完成的周期性实时任务,以及对其执行完成的时间点不加限制的非实时任务,所述系统包括工作频率计算装置,用于计算足以满足在所述处理器工作的每一时间点对每一周期性实时任务作出的请求的工作频率;以及处理器时钟产生装置,用于提供通过所述工作频率计算装置计算的结果推导出的工作频率的时钟。
2.根据权利要求1的运算处理系统,还包括任务选择和执行装置,在处理器工作期间每一时间点,用于选择给定的将被执行的任务之一,并用于执行这样选择的任务。
3.根据权利要求1的运算处理系统,还包括休眠转变装置,用于在处理器工作期间的每一时间点响应将被执行的任务的减少,引起所述处理器转变为降低工作速率的休眠状态。
4.根据权利要求1的运算处理系统,还包括电源电压计算装置,用于计算足以按所述工作频率计算装置计算的工作频率驱动所述处理器的电源电压,以及处理器电源供给装置,用于向所述处理器供给从所述电源电压计算装置计算结果推导出的电源电压。
5.根据权利要求1的运算处理系统,还包括任务信息记录装置,用于在任务执行之前记录有关加于每一周期性实时任务的开始时间,周期或每周期处理负荷的信息;以及任务登记限制装置,用于参照由所述任务信息记录装置记录的信息限制新的周期性实时任务的登记,使得电源电压或工作频率都不超过所述处理器的限度,和/或使得将满足加于预先登记的周期性实时任务的要求。
6.根据权利要求1的运算处理系统,还包括下限值设置装置,用于响应在没有非实时任务时由所述工作频率计算装置发现工作频率低于预设下限值,把所述处理器的工作频率设为下限值。
7.根据权利要求4的运算处理系统,还包括下限值设置装置,用于响应在没有非实时任务时由所述电源电压计算装置发现所述处理器电源电压低于预设低值,设置所述处理器电源电压的低值。
8.包括能够执行一个或多个任务的处理器的运算处理系统,所述系统包括工作频率装置,用于计算足以满足加于由所述处理器执行的每一任务的请求的工作频率;处理器时钟产生装置,用于向所述处理器提供由所述工作频率计算装置计算结果推导出的工作频率;电源电压计算装置,用于计算在由所述工作频率计算装置计算的工作频率下驱动所述处理器的足够的电源电压;以及处理器电源提供装置,用于向所述处理器提供从所述电源电压计算装置计算结果推导出的电源电压。
9.用于通过处理器控制计算处理的运算处理控制方法,该处理器能够并行执行其执行必须在下一个周期开始之前完成的周期性实时任务,以及对其执行完成的时间点不加限制的非实时任务,所述方法包括工作频率计算步骤,计算足以满足在所述处理器工作的每一时间点对每一周期性实时任务作出的请求的工作频率;以及处理器时钟产生步骤,向所述处理器提供通过所述工作频率计算步骤计算的结果推导出的工作频率的时钟。
10.根据权利要求9的运算处理控制方法,还包括任务选择和执行步骤,在所述处理器工作期间每一时间点,选择给定的将被执行的任务之一,并用于执行这样选择的任务。
11.根据权利要求9的运算处理控制方法,还包括休眠转变步骤,用于在处理器工作期间的每一时间点响应将被执行的任务的减少,引起所述处理器转变为降低工作速率的休眠状态。
12.根据权利要求9的运算处理控制方法,还包括电源电压提供步骤,计算在由所述工作频率计算步骤计算的工作频率下足以驱动所述处理器的电源电压;以及处理器电源提供步骤,用于向所述处理器提供从所述电源电压计算步骤计算结果推导出的电源电压。
13.根据权利要求9的运算处理控制方法,还包括任务信息记录步骤,在任务执行之前记录有关加于每一周期性实时任务的下一个周期开始时间,周期,或每周期处理负荷的信息;以及任务登记限制步骤,参照由所述任务信息记录步骤记录的信息限制新的周期性实时任务的登记,使得电源电压或工作频率都不超过所述处理器的限度,和/或使得将满足加于预先登记的周期性实时任务的要求。
14.根据权利要求9的运算处理控制方法,还包括下限值设置步骤,响应在没有非实时任务时由所述工作频率计算步骤发现工作频率低于所述预设下限值,把所述处理器的工作频率设为预设的下限值。
15.根据权利要求12的运算处理控制方法,还包括下限值设置步骤,响应在没有非实时任务时由所述电源电压计算步骤发现处理器电源电压低于一个预设低值,设置所述处理器电源电压在所述预设的低值。
16.用于通过能够执行一个或多个任务的处理器控制运算处理的运算处理控制方法,所述方法包括工作频率步骤,计算足以满足加于由所述处理器执行的每一任务的请求的工作频率;处理器时钟产生步骤,向所述处理器提供由所述工作频率计算步骤计算结果推导出的工作频率时钟;电源电压计算步骤,计算在由所述工作频率计算步骤计算的工作频率下驱动所述处理器足够的电源电压;以及处理器电源提供步骤,用于向所述处理器提供从所述电源电压计算步骤计算结果推导出的电源电压。
17.用于一种处理器的任务管理系统,该处理器能够并行执行其执行必须在下一个周期开始之前完成的周期性实时任务,以及对其执行完成的时间点不加限制的非实时任务,所述系统包括任务信息记录装置,用于在任务执行之前记录加于每一周期性实时任务的的信息,诸如下一个周期开始的时间,周期或每周期施加的处理负荷;工作设置装置,用于响应加于所述处理器的处理负荷设置处理器的电源电压和工作频率;以及任务登记控制装置,用于通过参照由所述任务信息记录装置记录的信息,限制新的周期性实时任务的登记,使得电源电压或工作频率不超过所述处理器的限制,和/或使得将满足对预登记周期性实时任务所作的请求。
18.根据权利要求17的任务管理系统,还包括下限值设置装置,用于在没有所述预置的下限值时,响应由所述工作设置装置计算的工作频率和/或电源电压变得低于所述预置下限值,把由所述工作设置装置计算的所述处理器的工作频率和/或电源电压设置为预置下限值。
19.用于一种处理器的任务管理方法,该处理器能够并行执行其执行必须在下一个周期开始之前完成的周期性实时任务,以及对其执行完成的时间点不加限制的非实时任务,所述系统包括任务信息记录步骤,在任务执行之前记录加于每一周期性实时任务的的信息,诸如下一个周期开始的时间,周期或每周期施加的处理负荷;工作设置步骤,响应加于所述处理器的处理负荷设置处理器的电源电压和工作频率;以及任务登记控制步骤,通过参照由所述任务信息记录步骤记录的信息,限制新的周期性实时任务的登记,使得电源电压或工作频率都不超过所述处理器的限制,和/或使得将满足对预登记周期性实时任务所作的请求。
20.根据权利要求17的任务管理系统,还包括下限值设置步骤,用于在没有所述预置的下限值时,响应由所述工作设置步骤计算的工作频率和/或电源电压变得低于所述预置下限值,把由所述工作设置步骤计算的所述处理器的工作频率和/或电源电压设置为预置下限值。
21.一种存储介质,具有以计算机可读形式物理地存储在其上的计算机软件,所述计算机软件是这样写成的,使得由处理器进行的计算处理的控制将在计算机系统上进行,所述处理器能够并行执行其执行在下一个周期开始之前必须完成的周期性实时任务,以及对其执行完成的时间点不加限制的非实时任务,所述计算机软件包括工作频率计算步骤,计算足以满足加于由所述处理器执行的每一任务的请求的工作频率;以及处理器时钟产生步骤,向所述处理器提供对应于由所述工作频率计算步骤计算结果的工作频率时钟。
22.一种存储介质,具有以计算机可读形式物理地存储在其上的计算机软件,所述计算机软件是这样写成的,使得由能够执行一个或多个任务的处理器进行的运算处理的控制将在计算机系统上执行,所述计算机软件包括工作频率步骤,计算足以满足加于由所述处理器执行的每一任务的请求的工作频率;处理器时钟产生步骤,向所述处理器提供从所述工作频率计算步骤计算结果推导出的工作频率时钟;电源电压计算步骤,计算按所述工作频率计算步骤计算的工作频率驱动所述处理器的足够的电源电压;以及处理器电源电压提供步骤,向所述处理器提供从所述电源电压计算步骤的计算结果所推导出的电源电压。
23.一种存储介质,具有以计算机可读形式物理地存储在其上的计算机软件,所述计算机软件是这样写成的,使得对于处理器的任务管理,能够并行执行在下一个周期开始之前其执行必须被完成的周期性实时任务,以及对其执行完成的时间点不加限制的非实时任务,所述计算机软件包括任务信息记录步骤,记录任务执行之前加于每一周期性实时任务的信息,诸如下一个周期开始的时间,周期或每周期施加的处理负荷;操作设置步骤,响应加于所述处理器的处理负荷设置处理器的电源电压和工作频率;以及任务登记控制步骤,参照由所述任务信息记录步骤记录的信息限制新的周期性实时任务的登记,使得电源电压或工作频率不超过所述处理器的限制,和/或使得将满足对预登记周期性实时任务所作的请求。
全文摘要
通过操作系统的控制能够改变处理器的工作频率和电源电压的一种系统,使用于处理无延迟起动的周期性实时任务和非实时任务所必须的处理器的工作频率自适应变化,并使根据操作频率确定的最优电源电压不时切换。其结果是降低了处理器的功耗,同时适应了应用程序软件的实时请求。
文档编号G06F9/48GK1394308SQ01803244
公开日2003年1月29日 申请日期2001年9月21日 优先权日2000年9月22日
发明者户川敦之 申请人:索尼株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1