JP2010277300A - Power saving control device for multiprocessor system, and mobile terminal - Google Patents

Power saving control device for multiprocessor system, and mobile terminal Download PDF

Info

Publication number
JP2010277300A
JP2010277300A JP2009128667A JP2009128667A JP2010277300A JP 2010277300 A JP2010277300 A JP 2010277300A JP 2009128667 A JP2009128667 A JP 2009128667A JP 2009128667 A JP2009128667 A JP 2009128667A JP 2010277300 A JP2010277300 A JP 2010277300A
Authority
JP
Japan
Prior art keywords
processor
performance
task
multiprocessor system
time
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.)
Pending
Application number
JP2009128667A
Other languages
Japanese (ja)
Inventor
Naoya Ichinose
直也 一ノ瀬
Ryoko Morita
良子 森田
Keita Kobayashi
圭太 小林
Osamu Nishimura
修 西村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Original Assignee
Panasonic Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Panasonic Corp filed Critical Panasonic Corp
Priority to JP2009128667A priority Critical patent/JP2010277300A/en
Priority to PCT/JP2010/002884 priority patent/WO2010137233A1/en
Publication of JP2010277300A publication Critical patent/JP2010277300A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5094Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Power Sources (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To effectively reduce power consumption while securing real time performance without assuming that a processor load is set to a low load state according to the lapse of a time in a multiprocessor system in which both performance securing/performance non-securing tasks coexist. <P>SOLUTION: This multiprocessor system equipped with a plurality of processors for performing the distributed processing of a plurality of tasks includes an assignment control means E1 for controlling the assignment of each performance securing task to each processor so that the number of use processors can be minimized on the basis of a relative relationship between each of processing performance value Φi of each performance securing task Ti and each of processing capability values Wj of a processor Pj in consideration of a real time performance time τi required by each performance securing task; and an operation state control means E2 for applying a power saving state to the operating states of non-use processors to which the assignment of the performance securing tasks has been canceled as the result of the assignment control means. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、複数のタスクを分散処理する複数のプロセッサを備えるとともに、性能保証タスクと性能非保証タスクとが混在するマルチプロセッサシステムにおける省電力制御装置にかかわり、特には、リアルタイム性を保証しながら消費電力を効果的に削減するための技術に関する。また、上記と同様の機能を有するデジタルスチルカメラなどのモバイル端末に関する。リアルタイム性とは、所定時間内に所定のタスクを完了する能力のことである。本発明の技術は、特にマルチプロセッサ方式を採用している情報処理装置に好適に適用される。   The present invention relates to a power-saving control apparatus in a multiprocessor system including a plurality of processors that perform distributed processing of a plurality of tasks, and in which a performance guarantee task and a performance non-guarantement task coexist. The present invention relates to a technique for effectively reducing power consumption. The present invention also relates to a mobile terminal such as a digital still camera having the same function as described above. Real-time property refers to the ability to complete a predetermined task within a predetermined time. The technique of the present invention is preferably applied particularly to an information processing apparatus adopting a multiprocessor system.

マルチプロセッサシステムは、複数のプロセッサから構成されるため、単一のプロセッサで構成されるシングルプロセッサシステムに比べて消費電力が大きい。マルチプロセッサシステムは、複数のプロセッサによって分散処理を行うのでシステム全体の処理効率は高いものの、低負荷状態ではすべてのプロセッサを用いて分散処理を行う必要はない。低負荷状態ですべてのプロセッサを動作させることは、システムとして必要以上の電力を消費することとなる。そのため、従来より、低負荷状態のときに消費電力の低減を図る技術が提案されている。   Since a multiprocessor system is composed of a plurality of processors, it consumes more power than a single processor system composed of a single processor. In a multiprocessor system, distributed processing is performed by a plurality of processors, so that the processing efficiency of the entire system is high, but it is not necessary to perform distributed processing using all the processors in a low load state. Operating all processors in a low load state consumes more power than necessary for the system. Therefore, conventionally, a technique for reducing power consumption in a low load state has been proposed.

例えば、特許文献1に記載された省電力制御システムは、2以上のプロセッサ(CPU)を備えるマルチプロセッサシステムにおいて、システムの動作状態を常に検知する状態監視手段と、前記状態監視手段に検知されるシステムの動作状態が所定の境界条件(しきい値)を超えて変化したとき、指定されたプロセッサについて状態遷移制御を行う状態制御手段とで構成されている。ここで状態遷移制御とは、プロセッサの動作状態を通常動作状態から動作待機状態に遷移させる省電力制御と、プロセッサの動作状態を動作待機状態から通常動作状態に遷移させる復帰制御との相互切り替えを行うことである。またシステムの動作状態とは、プロセッサの動作状態に関しての通常動作状態と動作待機状態とである。あるいは、キーボードからの入力待ち状態と低負荷状態とである。同文献では、状態監視手段に相当するものとしてシステム状態監視部が記載され、状態制御手段に相当するものとしてシステム状態制御部が記載されている。また、システムの動作状態が所定の境界条件を超えるとは、システムの構成要素間でやり取りされる信号を中継するバスの現時点における負荷状態を表す値が所定のしきい値を超えるということである。あるいは、システム全体におけるアプリケーション実行の現時点における負荷状態を表す値が所定のしきい値を超えるということである。あるいは、アプリケーションの機能を実現させるタスクを各々のプロセッサに分配するためのスケジューリング状態を表す値が所定のしきい値を超えるということである。   For example, in the power saving control system described in Patent Document 1, in a multiprocessor system including two or more processors (CPUs), a state monitoring unit that constantly detects the operating state of the system and the state monitoring unit detect When the operating state of the system changes beyond a predetermined boundary condition (threshold value), it is constituted by state control means for performing state transition control for a designated processor. Here, state transition control refers to mutual switching between power saving control that changes the processor operating state from the normal operating state to the standby state and return control that changes the processor operating state from the standby state to the normal operating state. Is to do. In addition, the system operation state includes a normal operation state and an operation standby state regarding the operation state of the processor. Alternatively, there are a waiting state for input from the keyboard and a low load state. In this document, a system state monitoring unit is described as corresponding to the state monitoring unit, and a system state control unit is described as corresponding to the state control unit. Further, the system operating state exceeding a predetermined boundary condition means that a value representing a current load state of a bus that relays signals exchanged between system components exceeds a predetermined threshold value. . Alternatively, the value representing the current load state of application execution in the entire system exceeds a predetermined threshold value. Alternatively, the value indicating the scheduling state for distributing the task for realizing the function of the application to each processor exceeds a predetermined threshold value.

この従来技術においては、システムの動作状態すなわち時間的に変化する要素値(バス負荷状態、アプリケーション実行負荷状態、スケジューリング状態)が所定のしきい値を超えるか否かを常時的に監視し、時間的に変化する要素値がしきい値を下回るに至ったときは、プロセッサの動作状態を通常動作状態から動作待機状態に遷移させる。また、時間的に変化する要素値がしきい値を上回るに至ったときは、プロセッサの動作状態を動作待機状態から通常動作状態に遷移させる。具体的には、個々のプロセッサの動作状態を監視し、キー入力待ちなどのために特定のプロセッサに対する負荷が少ない状態が続くと、当該のプロセッサへ供給するクロックを低い周波数に切り替えることにより最適な消費電力での運用を維持する。   In this prior art, the operating state of the system, that is, the time-varying element value (bus load state, application execution load state, scheduling state) is constantly monitored to determine whether or not a predetermined threshold value is exceeded. When the element value that changes automatically falls below the threshold value, the operation state of the processor is changed from the normal operation state to the operation standby state. Further, when the element value that changes with time exceeds a threshold value, the operation state of the processor is changed from the operation standby state to the normal operation state. Specifically, the operating state of each processor is monitored, and if the load on a specific processor continues to be low due to waiting for key input, etc., the optimum clock can be obtained by switching the clock supplied to the processor to a low frequency. Maintain operation with power consumption.

この従来技術の特徴は、
(a)バス負荷状態、アプリケーション実行負荷状態、スケジューリング状態などの「システムにおいて時間的に変化する要素値」を判断基準にしているということと、
(b)制御対象であるプロセッサの動作状態の制御(通常動作状態から動作待機状態に遷移させる省電力制御と動作待機状態から通常動作状態に遷移させる復帰制御との切り替え)も時間経過に伴って遷移する、
ということである。つまり、監視対象も制御対象もともに時間的変化を伴うということが重点になっている。
The feature of this prior art is that
(A) It is based on “element values that change with time in the system” such as a bus load state, an application execution load state, and a scheduling state, and
(B) Control of the operating state of the processor to be controlled (switching between power saving control for switching from the normal operating state to the standby state for operation and return control for switching from the standby state to the normal operating state) is also performed over time. Transition,
That's what it means. In other words, it is important that both the monitoring target and the control target are accompanied by temporal changes.

特開平8−6681号公報(段落[0013]、[0014]、[0018]、[0020]、[0029]、[0071]、[0075])JP-A-8-6681 (paragraphs [0013], [0014], [0018], [0020], [0029], [0071], [0075])

上記の特許文献1の省電力制御システムにおいては、システムの動作状態であるバス負荷状態、アプリケーション実行負荷状態、スケジューリング状態などの時間的に変化する要素値を判断基準としている。そのため、この時間的に変化する要素値を常時的に監視する必要がある。さらに、その判断結果に応じてプロセッサの動作状態を省電力制御と復帰制御との間で切り替え制御するが、この制御自体も時間的に遷移することになる。つまり、監視対象の時間的変化が制御対象の時間的変化を結果し、さらに制御対象の時間的変化が監視対象の時間的変化を誘起するという時間的循環が発生することになる。このような時間的循環を伴う常時的な監視および制御は、結果として、マルチプロセッサシステムの処理速度の低下を招くことになる。   In the power saving control system of the above-mentioned Patent Document 1, element values that change with time such as a bus load state, an application execution load state, and a scheduling state, which are operating states of the system, are used as judgment criteria. Therefore, it is necessary to constantly monitor the element value changing with time. Further, the operation state of the processor is controlled to be switched between the power saving control and the return control according to the determination result, and this control itself also changes with time. That is, a temporal circulation occurs in which a temporal change in the monitoring target results in a temporal change in the control target, and further, a temporal change in the control target induces a temporal change in the monitoring target. Such constant monitoring and control with temporal circulation results in a decrease in processing speed of the multiprocessor system.

加えて、プロセッサへの供給クロックの周波数低減の制御はプロセッサ負荷が低負荷状態になることを条件にしているため、プロセッサ負荷が低負荷状態にならない限り供給クロックの周波数を低減することができず、これでは効果的な消費電力削減にとって障害となる。   In addition, since the control for reducing the frequency of the supply clock to the processor is based on the condition that the processor load is in a low load state, the frequency of the supply clock cannot be reduced unless the processor load is in a low load state. This is an obstacle to effective power consumption reduction.

本発明は、このような事情に鑑みて創作したものであり、性能保証タスクと性能非保証タスクとが混在するマルチプロセッサシステムにおいて、時間的に変化する要素値を常時的に監視したり、プロセッサ動作状態を常時的に制御下に置いたりすることなく、またプロセッサ負荷が時間経過に伴って低負荷状態になることを前提条件にすることなく、リアルタイム性(所定時間内に所定のタスクを完了しなければならないという制約を満たすこと)を保証しながら消費電力を効果的に削減することが可能な省電力制御装置を提供することを目的としている。   The present invention was created in view of such circumstances, and in a multiprocessor system in which performance assurance tasks and performance non-guaranteed tasks are mixed, element values that change over time are constantly monitored, Real-time performance (predetermined tasks are completed within a predetermined time without requiring the operating state to be under constant control and without assuming that the processor load becomes low over time. An object of the present invention is to provide a power saving control apparatus capable of effectively reducing power consumption while guaranteeing that the restriction that must be satisfied is satisfied.

(1)本発明によるマルチプロセッサシステムにおける省電力制御装置は、
複数のタスクを分散処理する複数のプロセッサを備えるとともに、性能保証タスクと性能非保証タスクとが混在するマルチプロセッサシステムにおいて、
各プロセッサに割り当てられるべき各性能保証タスクTiの処理性能値Φiのそれぞれと、各性能保証タスクTiが必要とするリアルタイム性能時間τiを加味したプロセッサPjの処理能力値Wjのそれぞれとの相関関係に基づいて、使用プロセッサ数が最小限となるように、前記各性能保証タスクの前記各プロセッサへの割り当ての制御を行う割り当て制御手段と、
前記割り当て制御手段による割り当ての結果、前記性能保証タスクの割り当てが解消された不使用プロセッサの動作状態に対して省電力状態を適用する動作状態制御手段とを備えるものである。
(1) A power saving control device in a multiprocessor system according to the present invention includes:
In a multiprocessor system that has multiple processors that distribute and process multiple tasks, and that includes both performance guarantee tasks and non-performance guarantee tasks,
There is a correlation between each processing performance value Φi of each performance assurance task Ti to be assigned to each processor and each processing performance value Wj of the processor Pj taking into account the real-time performance time τi required by each performance assurance task Ti. Based on allocation control means for controlling allocation of each performance assurance task to each processor so that the number of processors used is minimized,
As a result of the assignment by the assignment control means, an operation state control means for applying a power saving state to the operation state of the unused processor for which the assignment of the performance guarantee task has been eliminated is provided.

個々の性能保証タスクTi(i=1,2…n)の属性として、そのタスクのサイズ(命令数)を表す処理性能値Φi(i=1,2…n)がある。ある性能保証タスクTiについて、その実行完了に要する時間がリアルタイム性能時間τi(i=1,2…n)である。一方、個々のプロセッサPj(j=1,2…m)には、それに割り当てられる性能保証タスクTiが必要とするリアルタイム性能時間τiを加味したプロセッサの処理能力値Wj(j=1,2…m)がある。この処理能力値Wjは、そのプロセッサPjがリアルタイム性能時間τi内に処理することができるタスクの総処理量である。   As an attribute of each performance guarantee task Ti (i = 1, 2,... N), there is a processing performance value Φi (i = 1, 2,... N) representing the size (number of instructions) of the task. The time required to complete execution of a certain performance guarantee task Ti is the real-time performance time τi (i = 1, 2,... N). On the other hand, each processor Pj (j = 1, 2,... M) has a processor processing capacity value Wj (j = 1, 2,... M) that takes into account the real-time performance time τi required by the performance guarantee task Ti assigned thereto. ) The processing capability value Wj is the total processing amount of tasks that the processor Pj can process within the real-time performance time τi.

割り当て制御手段は、性能保証タスクTiの処理性能値Φiと、リアルタイム性能時間τiを加味したプロセッサの処理能力値Wjとの相関関係に基づいて、使用プロセッサ数が最小限となるように、各性能保証タスクTiの各プロセッサPjへの割り当ての制御を行う。ある任意のプロセッサ割り当て状態において、あるプロセッサに、他のプロセッサに割り当て済みの性能保証タスクの割り当て変更(移動)が可能であるという余力(処理能力の余裕)があれば、その性能保証タスクの割り当て変更を行う。これが性能保証タスクの再割り当てである。このような性能保証タスクの再割り当てを可能な限り進めれば、性能保証タスクの割り当てが解消された不使用プロセッサが出現し、さらにはそのような不使用プロセッサの数が増えるようになる。動作状態制御手段は、この性能保証タスクの割り当てが解消された不使用プロセッサの動作状態に対して省電力状態を適用する。もし省電力状態が適用されたプロセッサに性能非保証タスクが割り当てられているとしても、それは性能非保証であるので、省電力状態にしても性能保証上の問題は生じない。   Based on the correlation between the processing performance value Φi of the performance guarantee task Ti and the processing capacity value Wj of the processor taking into account the real-time performance time τi, the allocation control means is configured to minimize the number of processors used. The allocation of the guaranteed task Ti to each processor Pj is controlled. In any given processor allocation state, if a certain processor has the capacity (allowance for processing power) that it is possible to change (move) the allocation of a performance assurance task that has already been allocated to another processor, the allocation of that performance assurance task Make a change. This is reassignment of the performance guarantee task. If such reassignment of performance assurance tasks is advanced as much as possible, unused processors whose performance assurance task assignments have been resolved will appear, and the number of such unused processors will increase. The operation state control means applies the power saving state to the operation state of the unused processor for which the assignment of the performance guarantee task is eliminated. Even if a performance non-guaranteed task is assigned to a processor to which the power saving state is applied, it is a performance non-guaranteed, and therefore there is no problem in performance guarantee even in the power saving state.

ここでは、従来技術の場合のように、時間的に変化する要素値(プロセッサ負荷)を常時的に監視する必要もなければ、その要素値としきい値との比較結果が時間的に変動することに伴う動作状態の常時的な制御の必要もない。   Here, as in the case of the prior art, if it is not necessary to constantly monitor an element value that changes over time (processor load), the comparison result between the element value and the threshold value changes over time. There is no need for continuous control of the operating state.

このようにして、上記構成の省電力制御装置によれば、性能保証タスクと性能非保証タスクとが混在するマルチプロセッサシステムにおいて、プロセッサ負荷が時間経過に伴って低負荷状態になることを前提条件にすることなく、リアルタイム性を保証しながら消費電力を効果的に削減することが可能となる。   Thus, according to the power saving control device having the above configuration, in a multiprocessor system in which a performance guarantee task and a performance non-guarantement task coexist, it is a precondition that the processor load becomes a low load state as time passes Therefore, it is possible to effectively reduce power consumption while ensuring real-time performance.

(2)上記(1)の構成において、前記割り当て制御手段は、前記性能保証タスクの他のプロセッサへの再割り当てが可能であるか否かを判断し、可能であるときに再割り当てを行うように構成されているという態様がある。この構成によれば、再割り当て可能な性能保証タスクについては、これを漏れなく再割り当てすることにより、使用プロセッサ数を確実に最小限にすることが可能となる。   (2) In the configuration of (1), the allocation control unit determines whether or not the performance guarantee task can be reassigned to another processor, and performs the reassignment when it is possible. There is an aspect of being configured. According to this configuration, it is possible to reliably minimize the number of processors used by reassigning performance guarantee tasks that can be reassigned without omission.

(3)また上記(2)の構成において、前記割り当て制御手段は、判断対象の性能保証タスクTiの処理性能値Φiを他のプロセッサPjの余力性能Mjと比較し、前記判断対象の性能保証タスクTiの処理性能値Φiが他のプロセッサPjの余力性能Mj以下のときにその判断対象の性能保証タスクを余力のある他のプロセッサに再割り当てするように構成されているという態様がある。ある性能保証タスクTiがすでにあるプロセッサに割り当てられているときに、その性能保証タスクTiを他のプロセッサに再割り当て可能か否かを判断するに際して、他のプロセッサの余力性能Mjを検討する。すなわち、他のプロセッサの余力性能Mjに比べて判断対象の性能保証タスクTiの処理性能値Φiが小さいか等しい場合には、再割り当て可能と判断し、その性能保証タスクTiを他プロセッサに再割り当てする。   (3) In the configuration of (2), the allocation control unit compares the processing performance value Φi of the performance assurance task Ti to be determined with the remaining performance Mj of another processor Pj, and determines the performance assurance task to be determined There is a mode in which when the processing performance value Φi of Ti is equal to or less than the remaining capacity Mj of the other processor Pj, the performance guarantee task to be determined is reassigned to another processor having remaining capacity. When a performance guarantee task Ti is already assigned to a certain processor, the remaining performance Mj of the other processor is examined when determining whether or not the performance guarantee task Ti can be reassigned to another processor. That is, when the processing performance value Φi of the performance guarantee task Ti to be judged is smaller than or equal to the remaining performance Mj of the other processor, it is judged that the reallocation is possible and the performance guarantee task Ti is reallocated to the other processor. To do.

(4)上記(1)〜(3)の構成において、前記プロセッサPjの処理能力値Wjは、当該プロセッサPjの単位時間当たりの処理能力qjに、前記性能保証タスクTiのリアルタイム性能時間τiを乗算したものであるという態様がある。すなわち、Wj=qj×τiである。これで、プロセッサPjの処理能力値Wjについて、これを、性能保証タスクTiが必要とするリアルタイム性能時間τiを加味したものにすることが可能となる。   (4) In the configurations of (1) to (3), the processing capability value Wj of the processor Pj multiplies the processing capability qj per unit time of the processor Pj by the real-time performance time τi of the performance assurance task Ti. There is a mode that it is. That is, Wj = qj × τi. Thus, the processing capability value Wj of the processor Pj can be made to take into account the real-time performance time τi required by the performance guarantee task Ti.

(5)上記(3),(4)の構成において、前記プロセッサPjの余力性能Mjは、前記性能保証タスクTiのリアルタイム性能時間τiを加味した前記プロセッサPjの処理能力値Wjから、当該プロセッサPjにすでに割り当て済みの性能保証タスクTiの処理性能値Φiの総和ΣΦiを減算したものであるという態様がある。すなわち、Mj=Wj−ΣΦiである。このような演算を採用することにより、リアルタイム性を保証した上での消費電力の削減の効果を良好に達成することが可能となる。   (5) In the configurations of (3) and (4) above, the remaining performance Mj of the processor Pj is calculated from the processing capability value Wj of the processor Pj taking into account the real-time performance time τi of the performance guarantee task Ti. Is a value obtained by subtracting the sum ΣΦi of the processing performance values Φi of the performance guarantee tasks Ti that have already been assigned. That is, Mj = Wj−ΣΦi. By adopting such an operation, it is possible to satisfactorily achieve the effect of reducing power consumption while guaranteeing real-time performance.

(6)上記(1)〜(5)の構成において、前記割り当て制御手段は、前記再割り当てのための性能保証タスクのプロセッサ間移動を最小限とするように構成されているという態様がある。この構成によれば、再割り当て自体を効率化することが可能となる。   (6) In the configurations of (1) to (5), there is an aspect in which the allocation control means is configured to minimize the movement of the performance guarantee task between the processors for the reallocation. According to this configuration, it is possible to improve the efficiency of the reallocation itself.

(7)また上記(2)〜(6)の構成において、前記割り当て制御手段は、前記性能保証タスクの他のプロセッサへの再割り当てに際して、前記性能保証タスクが使用する資源のプロセッサ間競合が最小限となることを優先して再割り当てを行うように構成されているという態様がある。この構成によれば、資源のプロセッサ間競合を最小限とするので、マルチプロセッサシステムのトータルなタスク分散処理を効率良く進めることが可能となる。   (7) In the configurations of (2) to (6), the allocation control means minimizes contention between processors of resources used by the performance assurance task when the performance assurance task is reassigned to another processor. There is an aspect in which reassignment is performed with priority given to being limited. According to this configuration, since contention among resources is minimized, the total task distribution processing of the multiprocessor system can be efficiently advanced.

(8)また上記(2)〜(6)の構成において、前記割り当て制御手段は、シーケンス的に処理する必要のある性能保証タスク群を優先して同一のプロセッサへ再割り当てするように構成されているという態様がある。この構成によれば、シーケンス的処理の性能保証タスクのディスパッチ回数が最小限となり、マルチプロセッサシステムのトータルなタスク分散処理を効率良く進めることが可能となる。ディスパッチ(dispatch)とは、オペレーティングシステム(OS)が処理する複数のタスクに対し、優先順位に従ってプロセッサの割り当てを行うことである(スケジューリングともいう)。   (8) In the configurations of (2) to (6), the allocation control means is configured to preallocate performance guarantee task groups that need to be processed in sequence to the same processor. There is an aspect of being. According to this configuration, the number of times the performance guarantee task for sequential processing is dispatched is minimized, and the total task distribution processing of the multiprocessor system can be efficiently advanced. Dispatch refers to assigning processors to a plurality of tasks processed by an operating system (OS) according to priority (also called scheduling).

(9)また上記(1)〜(8)の構成において、前記割り当て制御手段は、前記性能保証タスクの再割り当てを行った後に前記性能非保証タスクのプロセッサ間での再割り当てを行う場合に、前記性能保証タスクの再割り当てが行われた前記プロセッサに対しては前記性能非保証タスクの再割り当てを禁止する状態で再割り当てを行うように構成されているという態様がある。使用プロセッサ数を最小限にするためのタスクの再割り当てについては、性能保証タスクの再割り当てを優先し、それが完了すれば、性能非保証タスクの再割り当てに進むこととする場合に、マルチプロセッサシステムのトータルなタスク分散処理の効率を可能な限り高く保つ状態で、性能非保証タスクの再割り当てが行える。   (9) In the configurations of (1) to (8), the allocation control unit performs the reallocation between the processors of the performance non-guaranteed task after the reallocation of the performance guaranteed task. There is an aspect in which the processor to which the performance assurance task has been reassigned is configured to be reassigned in a state where the reassignment of the performance non-guaranteed task is prohibited. For task reassignment to minimize the number of processors used, priority is given to reassignment of performance assurance tasks, and if this is completed, it will proceed to reassignment of performance non-guaranteed tasks. The performance non-guaranteed tasks can be reassigned while keeping the total task distributed processing efficiency of the system as high as possible.

(10)また上記(1)〜(9)の構成において、前記動作状態制御手段は、性能保証タスクの割り当てが解消された不使用プロセッサの動作モードを変更するように構成されているという態様がある。   (10) In the configurations of (1) to (9), the operation state control means is configured to change the operation mode of the unused processor in which the allocation of the performance guarantee task is canceled. is there.

(11)さらに上記(10)の構成において、前記性能保証タスクの割り当てが解消された不使用プロセッサの動作モードを変更するとは、前記不使用プロセッサへのクロック供給を停止することであるという態様がある。   (11) Further, in the configuration of the above (10), the mode of changing the operation mode of the unused processor in which the allocation of the performance guarantee task has been canceled is to stop the clock supply to the unused processor. is there.

(12)また上記(1)〜(9)の構成において、前記動作状態制御手段は、性能保証タスクの割り当てが確定された使用プロセッサの動作モードを変更するように構成されているという態様がある。   (12) In the configurations of (1) to (9), the operation state control means is configured to change the operation mode of the processor in use for which the performance guarantee task assignment is determined. .

(13)さらに上記(12)の構成において、前記性能保証タスクの割り当てが確定された使用プロセッサの動作モードを変更するとは、前記使用プロセッサの状態を低消費電力状態から通常動作状態へ変更すること、または、通常動作状態から高速動作状態へ変更することであるという態様がある。   (13) Further, in the configuration of (12) above, changing the operation mode of the used processor for which the assignment of the performance guarantee task has been determined means changing the state of the used processor from the low power consumption state to the normal operation state. Alternatively, there is a mode in which the normal operation state is changed to the high-speed operation state.

(14)また上記(1)〜(13)の構成において、前記動作状態制御手段は、メモリのプロセッサへの割り当てを動的に変更するよう構成されているという態様がある。   (14) In the configurations of (1) to (13), the operation state control means is configured to dynamically change the allocation of the memory to the processor.

(15)さらに上記(14)の構成において、前記メモリのプロセッサへの割り当てを動的に変更するとは、不使用プロセッサに割り当てられていたメモリを使用プロセッサへ再割り当てすることであるという態様がある。性能保証タスクの割り当てが解消された不使用プロセッサへ割り当てられていたメモリを、性能保証タスクの割り当てが確定された使用プロセッサに割り当て変更すれば、マルチプロセッサシステムのトータルなタスク分散処理をさらに効率良く進めることが可能となる。   (15) Further, in the configuration of (14), there is an aspect in which dynamically changing the allocation of the memory to the processor is to reallocate the memory allocated to the unused processor to the used processor. . If the memory allocated to the unused processor for which the performance assurance task assignment has been resolved is reassigned to the used processor for which the performance assurance task assignment has been determined, the total task distribution processing of the multiprocessor system will be more efficient. It is possible to proceed.

(16)また上記(1)〜(15)の構成において、前記動作状態制御手段は、スヌーピング機能を備えたキャッシュのスヌープモードを変更するように構成されているという態様がある。スヌーピング(snooping)機能とは、周辺機器からのDMA(Direct Memory Access)などで、メモリ内容がキャッシュ内容と不一致にならないかを監視し、必要に応じてキャッシュ内容を破棄する機能のことである。   (16) In the configurations of (1) to (15), the operation state control means is configured to change the snoop mode of a cache having a snooping function. The snooping function is a function that monitors whether the memory contents do not match the cache contents by DMA (Direct Memory Access) from a peripheral device, and discards the cache contents if necessary.

(17)さらに上記(16)の構成において、前記スヌーピング機能を備えたキャッシュのスヌープモードを変更するとは、前記不使用プロセッサのキャッシュのスヌープモードを停止させることであるという態様がある。不使用プロセッサのキャッシュのスヌープモードを停止させることにより、マルチプロセッサシステムのトータルなタスク分散処理の効率を高くすることが可能となる。   (17) Further, in the configuration of (16), there is an aspect in which changing the snoop mode of the cache having the snooping function is stopping the snoop mode of the cache of the unused processor. By stopping the snoop mode of the unused processor cache, it is possible to increase the efficiency of the total task distribution processing of the multiprocessor system.

(18)また上記(1)〜(17)の構成において、前記動作状態制御手段は、前記割り当て制御手段による割り当ての結果、前記性能保証タスクの割り当てが解消された不使用プロセッサに代えて、または不使用プロセッサとともに、周辺デバイスの動作状態の変更を行うように構成されているという態様がある。単に不使用プロセッサを省電力状態に制御するだけでなく、不使用プロセッサに代えて、または不使用プロセッサとともに、周辺デバイスを省電力状態に制御することにより、マルチプロセッサシステムのトータルなタスク分散処理の効率をさらに高くすることが可能となる。   (18) In the above configurations (1) to (17), the operation state control unit may replace the unused processor whose allocation of the performance guarantee task has been eliminated as a result of the allocation by the allocation control unit, or There is an aspect in which the operation state of the peripheral device is changed together with the unused processor. In addition to simply controlling unused processors to a power-saving state, by controlling peripheral devices to a power-saving state instead of or together with unused processors, the total task distribution processing of a multiprocessor system can be reduced. The efficiency can be further increased.

(19)本発明によるモバイル端末は、上記(1)〜(18)のいずれかのマルチプロセッサシステムにおける省電力制御装置を搭載したモバイル端末である。   (19) A mobile terminal according to the present invention is a mobile terminal equipped with a power saving control device in the multiprocessor system according to any one of (1) to (18).

(20)上記(19)の構成において、通常動作状態で動作させる通常動作モードと低消費電力状態で動作させる低消費電力モードを備え、前記割り当て制御手段と前記動作状態制御手段は、前記低消費電力モードの場合においてのみ起動されるように構成されているという態様がある。   (20) The configuration of (19) includes a normal operation mode that operates in a normal operation state and a low power consumption mode that operates in a low power consumption state, and the allocation control unit and the operation state control unit include the low power consumption mode. There is a mode that it is configured to be activated only in the case of the power mode.

(21)また上記(20)の構成において、前記通常動作モードと前記低消費電力モードとは、ユーザが設定可能であるように構成されているという態様がある。このように構成すれば、使用状況に応じた使い分けができ、使用勝手がよくなる。   (21) In the configuration of (20), there is an aspect in which the normal operation mode and the low power consumption mode are configured to be settable by a user. If comprised in this way, the use according to a use condition can be performed and usability will improve.

(22)また上記(20)の構成において、前記通常動作モードと前記低消費電力モードとは、バッテリの残電力量が一定以下となった場合に切り替わるように構成されているという態様がある。これにより、バッテリの残電力量が多い状況下では能力フル状態で高速処理動作を保ち、バッテリの残電力量が少なくなったときに限って、低消費電力モードで動作させることが可能となる。   (22) In addition, in the configuration of (20), there is an aspect in which the normal operation mode and the low power consumption mode are configured to switch when the remaining power amount of the battery becomes equal to or less than a certain level. As a result, under a situation where the remaining amount of battery power is large, the high-speed processing operation can be maintained in a full capacity state, and it is possible to operate in the low power consumption mode only when the remaining power amount of the battery decreases.

本発明によれば、性能保証タスクと性能非保証タスクとが混在するマルチプロセッサシステムにおいて、リアルタイム性を保持しつつ最小限のプロセッサ数でタスクの実行が可能なようにプロセッサへの性能保証タスクの割り当て制御を行い、性能保証タスクの割り当てが解消された不使用プロセッサの動作状態に対して省電力状態を適用するので、プロセッサ負荷が時間経過に伴って低負荷状態になることを前提条件にすることなく、リアルタイム性を保証しながら消費電力を効果的に削減することができる。   According to the present invention, in a multiprocessor system in which performance assurance tasks and performance non-guaranteed tasks coexist, the performance assurance tasks to the processors can be executed with a minimum number of processors while maintaining real-time performance. The power-saving state is applied to the operating state of the unused processor whose performance assurance task has been unassigned by performing allocation control, so it is a prerequisite that the processor load becomes a low-load state over time Therefore, power consumption can be effectively reduced while guaranteeing real-time performance.

本発明の実施の形態1のマルチプロセッサシステムにおける省電力制御装置の構成を示すブロック図The block diagram which shows the structure of the power saving control apparatus in the multiprocessor system of Embodiment 1 of this invention 本発明の実施の形態1における省電力制御装置の主要部の機能を表す機能説明図Functional explanatory drawing showing the function of the principal part of the power-saving control device in Embodiment 1 of the present invention 本発明の実施の形態1における省電力制御装置のタスク管理情報の構造を示す図The figure which shows the structure of the task management information of the power saving control apparatus in Embodiment 1 of this invention 本発明の実施の形態1における省電力制御装置の再割り当て前のタスク管理情報の具体的な内容を示す図The figure which shows the specific content of the task management information before reallocation of the power saving control apparatus in Embodiment 1 of this invention 本発明の実施の形態1における省電力制御装置のプロセッサのMIPS値の一例を示す図The figure which shows an example of the MIPS value of the processor of the power saving control apparatus in Embodiment 1 of this invention 本発明の実施の形態1における省電力制御装置のプロセッサの余力性能の説明図Explanatory drawing of the remaining performance of the processor of the power saving control device in Embodiment 1 of the present invention 本発明の実施の形態1における省電力制御装置の動作説明図Operation explanatory diagram of the power saving control device in Embodiment 1 of the present invention 本発明の実施の形態1における省電力制御装置の再割り当て後のタスク管理情報の具体的な内容を示す図The figure which shows the specific content of the task management information after reallocation of the power saving control apparatus in Embodiment 1 of this invention 本発明の実施の形態1における省電力制御装置の動作を示すフローチャートThe flowchart which shows operation | movement of the power saving control apparatus in Embodiment 1 of this invention. 本発明の実施の形態2における省電力制御装置のタスク管理情報の構造を示す図The figure which shows the structure of the task management information of the power saving control apparatus in Embodiment 2 of this invention 本発明の実施の形態2における省電力制御装置の再割り当て前のタスク管理情報の具体的な内容を示す図The figure which shows the specific content of the task management information before reallocation of the power saving control apparatus in Embodiment 2 of this invention 本発明の実施の形態2における省電力制御装置の動作説明図Operation explanatory diagram of the power saving control device in Embodiment 2 of the present invention 本発明の実施の形態2における省電力制御装置の再割り当て後のタスク管理情報の具体的な内容を示す図The figure which shows the specific content of the task management information after reallocation of the power saving control apparatus in Embodiment 2 of this invention 本発明の実施の形態2における省電力制御装置の動作を示すフローチャートThe flowchart which shows operation | movement of the power saving control apparatus in Embodiment 2 of this invention. 本発明の実施の形態3におけるデジタルスチルカメラの概略構成を示すブロック図Block diagram showing a schematic configuration of a digital still camera according to Embodiment 3 of the present invention. 本発明の実施の形態3におけるデジタルスチルカメラの主要部の機能を表す機能説明図Functional explanatory drawing showing the function of the principal part of the digital still camera in Embodiment 3 of the present invention

以下、本発明にかかわるマルチプロセッサシステムにおける省電力制御装置の実施の形態を図面を用いて詳細に説明する。以下では、すべての図を通じて同一または相当する要素には同じ参照符号を付してその重複する説明を省略する。   Embodiments of a power saving control device in a multiprocessor system according to the present invention will be described below in detail with reference to the drawings. In the following, the same or corresponding elements are denoted by the same reference symbols throughout all the drawings, and redundant description thereof is omitted.

(実施の形態1)
図1は本発明の実施の形態1の性能保証タスクと性能非保証タスクとが混在するマルチプロセッサシステムにおける省電力制御装置の構成を示すブロック図である。図1において、1はCPU(Central Processing Unit)、2はROM(Read Only Memory)、3はRAM(Random Access Memory)、4はクロック制御部、5は周辺デバイス、P1〜P4は第1ないし第4のプロセッサであり、これらの各構成要素はバス6を介して互いに接続されている。周辺デバイス5は複数のタスクを伴うもので、ここでは第1ないし第8のタスクT1〜T8を伴うものとなっている。αは性能保証を行うタスクである性能保証タスクを示し、βは性能保証を行わないタスクである性能非保証タスクを示す。ここでの一例では、第1ないし第5のタスクT1〜T5が性能保証タスクαに該当し、第6ないし第8のタスクT6〜T8が性能非保証タスクβに該当している。マルチプロセッサシステムは、一般的に複数のタスクTi(i=1,2…n)を複数のプロセッサPj(j=1,2…m)で分散処理するものである。ここでの一例では、整数nは、n=8であり、整数mは、m=4である。10はCPU1とROM2とRAM3の機能的結合によって生成されるオペレーティングシステム(OS)であり、このオペレーティングシステム10には、少なくとも割り当て制御手段E1と動作状態制御手段E2とが含まれている。
(Embodiment 1)
FIG. 1 is a block diagram showing the configuration of a power saving control device in a multiprocessor system in which performance guarantee tasks and non-performance guarantee tasks are mixed according to the first embodiment of the present invention. In FIG. 1, 1 is a CPU (Central Processing Unit), 2 is a ROM (Read Only Memory), 3 is a RAM (Random Access Memory), 4 is a clock controller, 5 is a peripheral device, and P1 to P4 are first through first. These processors are connected to each other via a bus 6. The peripheral device 5 includes a plurality of tasks, and here, includes the first to eighth tasks T1 to T8. α indicates a performance guarantee task that is a task for performing performance guarantee, and β indicates a performance non-guaranteed task that is a task for which performance is not guaranteed. In this example, the first to fifth tasks T1 to T5 correspond to the performance guarantee task α, and the sixth to eighth tasks T6 to T8 correspond to the performance non-guaranteed task β. A multiprocessor system generally performs a distributed processing of a plurality of tasks Ti (i = 1, 2,... N) by a plurality of processors Pj (j = 1, 2,... M). In an example here, the integer n is n = 8 and the integer m is m = 4. Reference numeral 10 denotes an operating system (OS) generated by the functional combination of the CPU 1, the ROM 2, and the RAM 3. The operating system 10 includes at least an allocation control unit E1 and an operation state control unit E2.

割り当て制御手段E1は、複数のタスクを複数のプロセッサに割り当てるに際して、使用プロセッサ数が最小限となるように割り当ての制御を行うものとして構成されている(詳しくは後述する)。   The assignment control means E1 is configured to control assignment so that the number of processors used is minimized when assigning a plurality of tasks to a plurality of processors (details will be described later).

動作状態制御手段E2は、割り当て制御手段E1による割り当ての結果、性能保証タスクTiの割り当てが解消された不使用プロセッサの動作状態に対して省電力状態を適用するものとして構成されている。省電力状態の適用に際しては、クロック制御部4でのクロック周波数の制御を介して行うものとなっている。   The operation state control means E2 is configured to apply the power saving state to the operation state of the unused processor in which the assignment of the performance guarantee task Ti is eliminated as a result of the assignment by the assignment control means E1. The application of the power saving state is performed through the control of the clock frequency in the clock control unit 4.

個々の性能保証タスクTi(i=1,2…n)の属性として、そのタスクのサイズ(命令数)を表す処理性能値Φi(i=1,2…n)がある(図3、図4、図6参照)。各性能保証タスクTiが、それぞれある時間τi(i=1,2…n)内に実行完了することが望まれているとする。その時間τiがリアルタイム性能時間である。一方、個々のプロセッサPj(j=1,2…m)には、単位時間当たりに実行が可能な処理量を表す処理能力qj(j=1,2…m)がある(図5、図6参照)。処理能力qiは、MIPS値で表されることが多い。   As an attribute of each performance guarantee task Ti (i = 1, 2,... N), there is a processing performance value Φi (i = 1, 2,... N) representing the size (number of instructions) of the task (FIGS. 3, 4). FIG. 6). It is assumed that each performance guarantee task Ti is desired to be completed within a certain time τi (i = 1, 2,... N). The time τi is the real-time performance time. On the other hand, each processor Pj (j = 1, 2,... M) has a processing capability qj (j = 1, 2,... M) that represents the amount of processing that can be executed per unit time (FIGS. 5, 6). reference). The processing capability qi is often represented by a MIPS value.

リアルタイム性能時間τi内に単位時間当たりの処理能力qjのプロセッサPjが実行可能な処理量である処理能力値Wjは、
Wj=qj×τi
となる(具体例については後述する)。
The processing capability value Wj, which is the processing amount that can be executed by the processor Pj having the processing capability qj per unit time within the real-time performance time τi, is:
Wj = qj × τi
(A specific example will be described later).

割り当て制御手段E1は、各性能保証タスクTiの各プロセッサPjへの割り当ての制御を行うに際して、各性能保証タスクTiの処理性能値Φi(i=1,2…n)のそれぞれと、リアルタイム性能時間τi(i=1,2…n)を加味したプロセッサPjの処理能力値Wj(より具体的には、余力性能Mj)(j=1,2…m)のそれぞれとの相関関係に基づいて、使用プロセッサ数が最小限となるように制御するものとして構成されている。   The allocation control means E1 controls the allocation of each performance assurance task Ti to each processor Pj, the processing performance value Φi (i = 1, 2,... N) of each performance assurance task Ti, and the real-time performance time. Based on the correlation with each of the processing capability values Wj (more specifically, the surplus performance Mj) (j = 1, 2,... m) of the processor Pj taking into account τi (i = 1, 2,... n), It is configured to control so that the number of processors used is minimized.

また、動作状態制御手段E2は、割り当て制御手段E1による割り当ての結果、性能保証タスクTiの割り当てが解消された不使用プロセッサの動作状態に対して省電力状態を適用するものとして構成されている。省電力状態を適用するに際しては、クロック制御部4におけるクロック周波数の変更をもって対応するように構成されている。   The operation state control unit E2 is configured to apply the power saving state to the operation state of the unused processor in which the assignment of the performance guarantee task Ti is canceled as a result of the assignment by the assignment control unit E1. When the power saving state is applied, the clock controller 4 is configured to respond by changing the clock frequency.

図2は本実施の形態1における省電力制御装置の主要部の機能を表す機能説明図である。オペレーティングシステム10は、第1ないし第4のプロセッサP1〜P4上で動作するものであり、第1ないし第8のタスクT1〜T8のプロセッサP1〜P4への割り当てと、プロセッサP1〜P4の動作状態とを制御する。   FIG. 2 is a function explanatory diagram showing functions of main parts of the power saving control device according to the first embodiment. The operating system 10 operates on the first to fourth processors P1 to P4, assigns the first to eighth tasks T1 to T8 to the processors P1 to P4, and the operating states of the processors P1 to P4. And control.

オペレーティングシステム10における割り当て制御手段E1は、前段階の割り当て処理として、所定のアルゴリズムに従って、第1ないし第8のタスクT1〜T8を第1ないし第4のプロセッサP1〜P4に割り当てる。いま、割り当て制御手段E1は、図2に示すように、第1のタスクT1と第5のタスクT5とを第1のプロセッサP1に割り当て、第2のタスクT2と第6のタスクT6とを第2のプロセッサP2に割り当て、第3のタスクT3と第7のタスクT7とを第3のプロセッサP3に割り当て、第4のタスクT4と第8のタスクT8とを第4のプロセッサP4に割り当てているとする。また、第1ないし第5のタスクT1〜T5はリアルタイム性能が求められる性能保証タスクαであり、第6ないし第8のタスクT6〜T8はリアルタイム性能が求められない性能非保証タスクβであるとする。   The assignment control means E1 in the operating system 10 assigns the first to eighth tasks T1 to T8 to the first to fourth processors P1 to P4 according to a predetermined algorithm as the previous stage assignment process. Now, as shown in FIG. 2, the assignment control means E1 assigns the first task T1 and the fifth task T5 to the first processor P1, and assigns the second task T2 and the sixth task T6 to the first task. Assigned to the second processor P2, the third task T3 and the seventh task T7 are assigned to the third processor P3, and the fourth task T4 and the eighth task T8 are assigned to the fourth processor P4. And The first to fifth tasks T1 to T5 are performance guarantee tasks α for which real-time performance is required, and the sixth to eighth tasks T6 to T8 are performance non-guaranteed tasks β for which real-time performance is not required. To do.

性能保証タスクT1〜T5が4つのプロセッサP1〜P4に振り分けて割り当てられていることになる。このあらかじめの割り当て状態において、割り当て制御手段E1は、性能保証タスクT1〜T5のうち、現在の割り当てプロセッサから他のプロセッサへ再割り当て可能なタスクおよびプロセッサが存在するか否かを判断する。割り当て制御手段E1は、各プロセッサP1〜P4に割り当てられている各性能保証タスクT1〜T5の処理性能値Φ1〜Φ5のそれぞれと、各プロセッサP1〜P4において割り当てられている性能保証タスクT1〜T5が必要とするリアルタイム性能時間τ1〜τ5を加味したプロセッサの処理能力値W1〜W4のそれぞれとの相関関係に基づいて、性能保証タスクT1〜T5の他のプロセッサへの再割り当てが可能であるか否かを判断する(より詳しくは後述する)。   The performance guarantee tasks T1 to T5 are allocated and assigned to the four processors P1 to P4. In this pre-assignment state, the assignment control means E1 determines whether or not there are tasks and processors that can be reassigned from the currently assigned processor to other processors among the performance guarantee tasks T1 to T5. The allocation control means E1 includes the processing performance values Φ1 to Φ5 of the performance assurance tasks T1 to T5 allocated to the processors P1 to P4 and the performance assurance tasks T1 to T5 allocated to the processors P1 to P4. Whether the performance guarantee tasks T1 to T5 can be reassigned to other processors based on the correlations with the processing capability values W1 to W4 of the processors taking into account the real-time performance times τ1 to τ5 required by the It is determined whether or not (more details will be described later).

図3は個々のタスクT1〜T8がそれぞれ保持しているタスク管理情報20の構造を示す。このタスク管理情報20は、リアルタイム性能が求められる処理か否かを示すリアルタイムフラグ情報a1と、リアルタイム性能を保証するために必要な性能を示すリアルタイム性能情報a2と、実際の処理性能を示す処理性能情報a3とから構成されている。   FIG. 3 shows the structure of the task management information 20 held by each of the tasks T1 to T8. The task management information 20 includes real-time flag information a1 indicating whether or not the processing requires real-time performance, real-time performance information a2 indicating performance necessary for guaranteeing real-time performance, and processing performance indicating actual processing performance. Information a3.

リアルタイムフラグ情報a1については、リアルタイム性能が求められる処理であることを示すときは“1”が設定され、リアルタイム性能が求められない処理であることを示すときは“0”が設定される。   As for the real-time flag information a1, “1” is set to indicate that the process requires real-time performance, and “0” is set to indicate that the process does not require real-time performance.

リアルタイム性能情報a2については、当該のタスクTi(i=1,2…n)を一定時間内に実行完了しなければならない場合の、その処理に要する時間を表す。具体的には、リアルタイム性能時間τi(i=1,2…n)に対応し、本動作例では単位がms(ミリ秒)となっている。   The real-time performance information a2 represents the time required for processing when the task Ti (i = 1, 2,... N) must be completed within a certain time. Specifically, it corresponds to the real-time performance time τi (i = 1, 2,... N), and in this operation example, the unit is ms (millisecond).

処理性能情報a3については、当該のタスクTiがもつ負荷量(処理量)であり、具体的には処理性能値Φi(i=1,2…n)に対応するものであって、KI(Kilo Instructions:1000命令)を単位とする命令数に相当している。   The processing performance information a3 is a load amount (processing amount) of the task Ti, specifically corresponds to the processing performance value Φi (i = 1, 2,... N), and is represented by KI (Kilo This corresponds to the number of instructions in units of “Instructions: 1000 instructions”.

オペレーティングシステム10は、個々のタスクTi(i=1,2…n)について、それぞれのリアルタイムフラグ情報a1に基づいて、リアルタイム性能が求められる性能保証タスクαかリアルタイム性能が求められない性能非保証タスクβかを判定し、さらにその判定結果において性能保証タスクαについては、リアルタイム性能情報a2と処理性能情報a3とに基づいて、リアルタイム性能を保証しながらプロセッサPj(j=1,2…m)へ割り当てる方法の中で、使用プロセッサ数が最小限となるように割り当て方法を判定し、その判定結果の割り当て方法に従って性能保証タスクαを適切なプロセッサへ割り当てする。この割り当てには、再割り当ても含まれる。ここで、性能保証タスクαか性能非保証タスクβかの判定の処理と、使用プロセッサ数が最小限となる状態での性能保証タスクの割り当ての処理との2つの処理が行われるが、これらの処理はオペレーティングシステム10における割り当て制御手段E1が担当する。   For each task Ti (i = 1, 2,... N), the operating system 10 is based on the respective real-time flag information a1, and is a performance guarantee task α that requires real-time performance or a performance non-guaranteed task that does not require real-time performance. It is determined whether it is β, and the performance assurance task α in the determination result is sent to the processor Pj (j = 1, 2... m) while guaranteeing the real-time performance based on the real-time performance information a2 and the processing performance information a3. Among the allocation methods, the allocation method is determined so that the number of processors used is minimized, and the performance guarantee task α is allocated to an appropriate processor according to the allocation method of the determination result. This assignment includes reassignment. Here, two processes are performed: a process for determining whether the performance guarantee task α is a performance non-guaranteed task β and a process for assigning a performance guarantee task in a state where the number of processors used is minimized. The processing is performed by the allocation control means E1 in the operating system 10.

以下、オペレーティングシステム10がリアルタイム性能を保証しながらプロセッサへ再割り当てを行う方法について説明する。   Hereinafter, a method in which the operating system 10 performs reallocation to a processor while guaranteeing real-time performance will be described.

図4は第1ないし第8のタスクT1〜T8についてのタスク管理情報20の具体的な内容を示し、図5は第1ないし第4のプロセッサP1〜P4の単位時間当たりの処理能力qj(j=1,2…4)であるMIPS値の一例を示す。   FIG. 4 shows the specific contents of the task management information 20 for the first to eighth tasks T1 to T8, and FIG. 5 shows the processing capability qj (j per unit time of the first to fourth processors P1 to P4. = 1, 2... 4) shows an example of the MIPS value.

第1のプロセッサP1に割り当てられている第1のタスクT1は、リアルタイム性能が求められる性能保証タスクαに相当する。この第1のタスクT1のタスク管理情報20を見ると、リアルタイムフラグ情報a1が“1”となっている。また、リアルタイム性能情報a2であるリアルタイム性能時間τ1は10msであり、処理性能情報a3である処理性能値Φ1は50KI(Kilo Instructions)である(τ1=10ms、Φ1=50KI)。同じく第1のプロセッサP1に割り当てられている第5のタスクT5も、性能保証タスクαに相当し、リアルタイムフラグ情報a1が“1”となっている。また、リアルタイム性能時間τ5は同じく10msであり、処理性能値Φ5は10KIである(τ5=10ms、Φ5=10KI)。   The first task T1 assigned to the first processor P1 corresponds to a performance guarantee task α that requires real-time performance. Looking at the task management information 20 of the first task T1, the real-time flag information a1 is “1”. The real-time performance time τ1 that is real-time performance information a2 is 10 ms, and the processing performance value Φ1 that is processing performance information a3 is 50 KI (Kilo Instructions) (τ1 = 10 ms, Φ1 = 50 KI). Similarly, the fifth task T5 assigned to the first processor P1 also corresponds to the performance guarantee task α, and the real-time flag information a1 is “1”. The real-time performance time τ5 is also 10 ms, and the processing performance value Φ5 is 10 KI (τ5 = 10 ms, Φ5 = 10 KI).

第2のプロセッサP2に割り当てられている第2のタスクT2は、性能保証タスクαに相当し、リアルタイムフラグ情報a1が“1”となっている。また、リアルタイム性能時間τ2は12msであり、処理性能値Φ2は60KIである(τ2=12ms、Φ2=60KI)。同じく第2のプロセッサP2に割り当てられている第6のタスクT6は、リアルタイム性能が求められない性能非保証タスクβに相当し、リアルタイムフラグ情報a1が“0”となっている。また、リアルタイム性能時間τ6は0msであり、処理性能値Φ6は0KIである(τ6=0ms、Φ6=0KI)。   The second task T2 assigned to the second processor P2 corresponds to the performance guarantee task α, and the real-time flag information a1 is “1”. The real-time performance time τ2 is 12 ms, and the processing performance value Φ2 is 60 KI (τ2 = 12 ms, Φ2 = 60 KI). Similarly, the sixth task T6 assigned to the second processor P2 corresponds to a performance non-guaranteed task β for which real-time performance is not required, and the real-time flag information a1 is “0”. Further, the real-time performance time τ6 is 0 ms, and the processing performance value Φ6 is 0 KI (τ6 = 0 ms, Φ6 = 0 KI).

第3のプロセッサP3に割り当てられている第3のタスクT3は、性能保証タスクαに相当し、リアルタイムフラグ情報a1が“1”となっている。また、リアルタイム性能時間τ3は12msであり、処理性能値Φ3は50KIである(τ3=12ms、Φ3=50KI)。同じく第3のプロセッサP3に割り当てられている第7のタスクT7は、性能非保証タスクβに相当し、リアルタイムフラグ情報a1が“0”となっている。また、リアルタイム性能時間τ7は0msであり、処理性能値Φ7は0KIである(τ7=0ms、Φ7=0KI)。   The third task T3 assigned to the third processor P3 corresponds to the performance guarantee task α, and the real-time flag information a1 is “1”. The real-time performance time τ3 is 12 ms, and the processing performance value Φ3 is 50 KI (τ3 = 12 ms, Φ3 = 50 KI). Similarly, the seventh task T7 assigned to the third processor P3 corresponds to the performance non-guaranteed task β, and the real-time flag information a1 is “0”. The real-time performance time τ7 is 0 ms, and the processing performance value Φ7 is 0 KI (τ7 = 0 ms, Φ7 = 0 KI).

第4のプロセッサP4に割り当てられている第4のタスクT4は、性能保証タスクαに相当し、リアルタイムフラグ情報a1が“1”となっている。また、リアルタイム性能時間τ4は10msであり、処理性能値Φ4は40KIである(τ4=10ms、Φ4=40KI)。同じく第4のプロセッサP4に割り当てられている第8のタスクT8は、性能非保証タスクβに相当し、リアルタイムフラグ情報a1が“0”となっている。また、リアルタイム性能時間τ8は0msであり、処理性能値Φ8は0KIである(τ8=0ms、Φ8=0KI)。   The fourth task T4 assigned to the fourth processor P4 corresponds to the performance guarantee task α, and the real-time flag information a1 is “1”. The real-time performance time τ4 is 10 ms, and the processing performance value Φ4 is 40 KI (τ4 = 10 ms, Φ4 = 40 KI). Similarly, the eighth task T8 assigned to the fourth processor P4 corresponds to the performance non-guaranteed task β, and the real-time flag information a1 is “0”. The real-time performance time τ8 is 0 ms, and the processing performance value Φ8 is 0 KI (τ8 = 0 ms, Φ8 = 0 KI).

図5を見ると、第1のプロセッサP1の単位時間当たりの処理能力q1のMIPS値は10MIPS、同じく、第2ないし第4のプロセッサP2,P3,P4の単位時間当たりの処理能力q2,q3,q4のMIPS値はいずれも10MIPSである(q1=q2=q3=q4=10MIPS)。MIPS(Million Instructions Per Second)はコンピュータの処理能力を表す単位であり、1MIPSは1秒間に100万命令を実行する処理能力である。   Referring to FIG. 5, the MIPS value of the processing capacity q1 per unit time of the first processor P1 is 10 MIPS, and similarly, the processing capacities q2, q3 of the second to fourth processors P2, P3, and P4 per unit time. All of the MIPS values of q4 are 10 MIPS (q1 = q2 = q3 = q4 = 10MIPS). MIPS (Million Instructions Per Second) is a unit representing the processing capacity of a computer, and 1 MIPS is a processing capacity for executing 1 million instructions per second.

オペレーティングシステム10における割り当て制御手段E1は、リアルタイム性能情報a2と処理性能情報a3とを参照して、第1のタスクT1については10ms以内に50KIの処理を実行する必要があると判定し、第2のタスクT2については12ms以内に60KIの処理を実行する必要があると判定し、第3のタスクT3については12ms以内に50KIの処理を実行する必要があると判定し、第4のタスクT4については10ms以内に40KIの処理を実行する必要があると判定し、第5のタスクT5については10ms以内に10KIの処理を実行する必要があると判定する。   The allocation control means E1 in the operating system 10 refers to the real-time performance information a2 and the processing performance information a3, determines that it is necessary to execute 50 KI processing within 10 ms for the first task T1, and the second For task T2, it is determined that 60 KI processing needs to be executed within 12 ms, for third task T3 it is determined that 50 KI processing needs to be executed within 12 ms, and for fourth task T4 Determines that it is necessary to execute 40 KI processing within 10 ms, and determines that it is necessary to execute 10 KI processing within 10 ms for the fifth task T5.

さらに、割り当て制御手段E1は、リアルタイムフラグ情報a1が“1”となっている第1ないし第5のタスクT1〜T5について、それぞれをプロセッサに対するタスクの再割り当ての対象とすべきことを判定する。このプロセッサに対するタスクの再割り当ては、個々のタスクT1〜T5の処理性能値Φ1〜Φ5のそれぞれと、個々のプロセッサPj(j=1,2…4)の余力性能Mj(j=1,2…4)との比較対照に基づいて行う。   Furthermore, the assignment control means E1 determines that each of the first to fifth tasks T1 to T5 whose real-time flag information a1 is “1” should be the target of task reassignment to the processor. Reassignment of tasks to the processors is performed by the processing performance values Φ1 to Φ5 of the individual tasks T1 to T5 and the remaining performance Mj (j = 1, 2,...) Of the individual processors Pj (j = 1, 2,. Based on the comparison with 4).

ここで、図6を用いてプロセッサPjの余力性能Mj(j=1,2…m)について説明する。   Here, the remaining performance Mj (j = 1, 2,... M) of the processor Pj will be described with reference to FIG.

タスクTi(Ta,Tb)のリアルタイム性能時間τiを加味したプロセッサPjの処理能力値Wjは、プロセッサPjの単位時間当たりの処理能力qjにリアルタイム性能時間τiを乗算したもので、前述の通り、
Wj=qj×τi
である。この処理能力値Wjは、図で太線で囲った矩形の面積(全体面積)に相当する。矩形の横幅はプロセッサPjの単位時間当たりの処理能力qjを表し、縦軸方向は時間軸方向である。このように時間軸方向の要素が加味されているところが、従来技術との比較上のポイントとなっている。
The processing capability value Wj of the processor Pj taking into account the real-time performance time τi of the task Ti (Ta, Tb) is obtained by multiplying the processing capability qj per unit time of the processor Pj by the real-time performance time τi.
Wj = qj × τi
It is. This processing capability value Wj corresponds to a rectangular area (total area) surrounded by a thick line in the figure. The horizontal width of the rectangle represents the processing capability qj of the processor Pj per unit time, and the vertical axis direction is the time axis direction. In this way, the factor in the time axis direction is taken into consideration, which is a point for comparison with the prior art.

第1のプロセッサP1の単位時間当たりの処理能力をq1、第1のプロセッサP1に割り当てられた性能保証タスクT1のリアルタイム性能時間をτ1として、第1のプロセッサP1のリアルタイム性能時間τ1に相当する処理能力値W1は、
W1=q1×τ1
となる。
Processing corresponding to the real-time performance time τ1 of the first processor P1, where q1 is the processing capacity per unit time of the first processor P1, and τ1 is the real-time performance time of the performance guarantee task T1 assigned to the first processor P1 The ability value W1 is
W1 = q1 × τ1
It becomes.

第2のプロセッサP2の単位時間当たりの処理能力をq2、第2のプロセッサP2に割り当てられた性能保証タスクT2のリアルタイム性能時間をτ2として、第2のプロセッサP2のリアルタイム性能時間τ2に相当する処理能力値W2は、
W2=q2×τ2
となる。
Processing corresponding to the real-time performance time τ2 of the second processor P2, where q2 is the processing capacity per unit time of the second processor P2, and τ2 is the real-time performance time of the performance guarantee task T2 assigned to the second processor P2. The ability value W2 is
W2 = q2 × τ2
It becomes.

第3のプロセッサP3の単位時間当たりの処理能力をq3、第3のプロセッサP3に割り当てられた性能保証タスクT3のリアルタイム性能時間をτ3として、第3のプロセッサP3のリアルタイム性能時間τ3に相当する処理能力値W3は、
W3=q3×τ3
となる。
Processing corresponding to the real-time performance time τ3 of the third processor P3, where q3 is the processing capacity per unit time of the third processor P3 and τ3 is the real-time performance time of the performance guarantee task T3 assigned to the third processor P3 The ability value W3 is
W3 = q3 × τ3
It becomes.

第4のプロセッサP4の単位時間当たりの処理能力をq4、第4のプロセッサP4に割り当てられた性能保証タスクT4のリアルタイム性能時間をτ4として、第4のプロセッサP4のリアルタイム性能時間τ4に相当する処理能力値W4は、
W4=q4×τ4
となる。なお、マルチプロセッサシステムにおける4つのプロセッサP1〜P4において、それぞれの単位時間当たりの処理能力q1〜q4は互いに等しいのが一般的である(q1=q2=q3=q4)。
Processing corresponding to the real-time performance time τ4 of the fourth processor P4, where q4 is the processing capacity per unit time of the fourth processor P4 and τ4 is the real-time performance time of the performance guarantee task T4 assigned to the fourth processor P4 The ability value W4 is
W4 = q4 × τ4
It becomes. In the four processors P1 to P4 in the multiprocessor system, the processing capabilities q1 to q4 per unit time are generally equal to each other (q1 = q2 = q3 = q4).

図4の例であれば、第1のプロセッサP1の処理能力値W1は、単位時間当たりの処理能力q1=10MIPSにリアルタイム性能時間τ1=10msを掛け算したもので、
W1=10MIPS×10ms=100KI
となる(図7(a)左端のブロック参照)。
In the example of FIG. 4, the processing capability value W1 of the first processor P1 is obtained by multiplying the processing capability q1 = 10 MIPS per unit time by the real-time performance time τ1 = 10 ms.
W1 = 10 MIPS × 10 ms = 100 KI
(Refer to the leftmost block in FIG. 7A).

図6において、プロセッサPjに割り当てられた性能保証タスクをTa,Tbとし、タスクTaの処理性能値をΦa、タスクTbの処理性能値をΦbとすると、現在割り当ての性能保証タスクTa,Tbの処理性能値総和ΣΦiは、
ΣΦi=Φa+Φb
となる。第1のプロセッサP1の処理性能値総和ΣΦiは、図6において太線の矩形の
内部における塗りつぶし部分に対応する。図4の例では、
ΣΦi=Φ1+Φ5=50KI+10KI=60KI
となる(図7(a)左端のブロック参照)。
In FIG. 6, assuming that the performance assurance tasks assigned to the processor Pj are Ta and Tb, the processing performance value of the task Ta is Φa, and the processing performance value of the task Tb is Φb, the processing of the currently assigned performance assurance tasks Ta and Tb The total performance value ΣΦi is
ΣΦi = Φa + Φb
It becomes. The total processing performance value ΣΦi of the first processor P1 corresponds to the filled portion inside the bold rectangle in FIG. In the example of FIG.
ΣΦi = Φ1 + Φ5 = 50 KI + 10 KI = 60 KI
(Refer to the leftmost block in FIG. 7A).

図6において、プロセッサPjの余力性能Mjは、タスクTi(Ta,Tb)のリアルタイム性能時間τiを加味したプロセッサPjの処理能力値Wj(=qj×τi)から、現在割り当ての性能保証タスクTiの処理性能値総和ΣΦiを減算したものであり

Mj=Wj−ΣΦi
=qj×τi−ΣΦi
=qj×τi−(Φa+Φb)
となる。すなわち、余力性能Mjは、プロセッサPjの単位時間当たりの処理能力qj(MIPS値)と判断対象のタスクのリアルタイム性能時間τiの値との乗算結果から、当該のプロセッサPjに割り当てられているタスクの加算結果(処理性能値総和ΣΦ
i)を減算したものである(余力性能Mj=qj×τi−ΣΦi)。余力性能Mjは、
図6において太線の矩形の内部における白色部分に対応する。
In FIG. 6, the remaining performance Mj of the processor Pj is determined from the processing capability value Wj (= qj × τi) of the processor Pj taking into consideration the real-time performance time τi of the task Ti (Ta, Tb). The processing performance value sum ΣΦi is subtracted.
Mj = Wj−ΣΦi
= Qj × τi−ΣΦi
= Qj × τi− (Φa + Φb)
It becomes. In other words, the surplus performance Mj is obtained by multiplying the processing capability qj (MIPS value) per unit time of the processor Pj by the value of the real-time performance time τi of the task to be determined, based on the task assigned to the processor Pj. Addition result (total processing performance value ΣΦ
i) is subtracted (remaining power performance Mj = qj × τi−ΣΦi). The remaining capacity Mj is
In FIG. 6, this corresponds to the white portion inside the bold rectangle.

割り当て制御手段E1は、まずは、余力性能Mj(=qj×τi−ΣΦi)が最小と
なるプロセッサを検索する。
The allocation control means E1 first searches for a processor that has the minimum surplus performance Mj (= qj × τi−ΣΦi).

ここで、図4、図5の例について、第1ないし第4のプロセッサP1〜P4それぞれの余力性能M1〜M4を求めておく。その計算式は、
M1=W1−(Φ1+Φ5)=q1×τ1−(Φ1+Φ5)
M2=W2−(Φ2+Φ6)=q2×τ2−Φ2
M3=W3−(Φ3+Φ7)=q3×τ3−Φ3
M4=W4−(Φ4+Φ8)=q4×τ4−Φ4
となる。
Here, with respect to the examples of FIGS. 4 and 5, the remaining capacity performances M1 to M4 of the first to fourth processors P1 to P4 are obtained. The calculation formula is
M1 = W1- (Φ1 + Φ5) = q1 × τ1- (Φ1 + Φ5)
M2 = W2- (Φ2 + Φ6) = q2 × τ2-Φ2
M3 = W3- (Φ3 + Φ7) = q3 × τ3-Φ3
M4 = W4- (Φ4 + Φ8) = q4 × τ4-Φ4
It becomes.

以下では、具体的な動作例を図7を用いながら説明する。図7は実施の形態1における省電力制御装置の動作説明図である。図7では、第1のプロセッサP1と第4のプロセッサP4の縦軸方向幅が互いに等しく、また第2のプロセッサP2と第3のプロセッサP3の縦軸方向幅が互いに等しいが、前者(リアルタイム性能時間=10ms)と後者(リアルタイム性能時間=12ms)では縦軸方向幅が互いに相違している。上記の余力性能Mjについての一連の式に具体的数値を代入すると、第1のプロセッサP1の余力性能M1は、
M1=q1×τ1−(Φ1+Φ5)
=[(10MIPS×10ms)−(50KI+10KI)]
=100KI−60KI=40KI
となる(図4の最下段と図7(a)左端のブロック参照)。
Hereinafter, a specific operation example will be described with reference to FIG. FIG. 7 is an operation explanatory diagram of the power saving control device according to the first embodiment. In FIG. 7, the vertical widths of the first processor P1 and the fourth processor P4 are equal to each other, and the vertical widths of the second processor P2 and the third processor P3 are equal to each other. The vertical axis width is different between the time (time = 10 ms) and the latter (real time performance time = 12 ms). Substituting specific numerical values into a series of expressions for the above-described remaining capacity Mj, the remaining capacity M1 of the first processor P1 is
M1 = q1 × τ1- (Φ1 + Φ5)
= [(10 MIPS × 10 ms) − (50 KI + 10 KI)]
= 100KI-60KI = 40KI
(See the bottom row in FIG. 4 and the leftmost block in FIG. 7A).

第2のプロセッサP2の余力性能M2は、
M2=[(10MIPS×12ms)−(60KI+0KI)]=60KI
第3のプロセッサP3の余力性能M3は、
M3=[(10MIPS×12ms)−(50KI+0KI)]=70KI
第4のプロセッサP4の余力性能M4は、
M4=[(10MIPS×10ms)−(40KI+0KI)]=60KI
となる。
The remaining capacity M2 of the second processor P2 is
M2 = [(10 MIPS × 12 ms) − (60 KI + 0 KI)] = 60 KI
The remaining capacity M3 of the third processor P3 is
M3 = [(10 MIPS × 12 ms) − (50 KI + 0 KI)] = 70 KI
The remaining capacity M4 of the fourth processor P4 is
M4 = [(10 MIPS × 10 ms) − (40 KI + 0 KI)] = 60 KI
It becomes.

以上で、4つのプロセッサP1〜P4それぞれの余力性能M1〜M4が求められた。   Thus, the remaining performances M1 to M4 of the four processors P1 to P4 are obtained.

ここで、割り当て制御手段E1は、余力性能Mjの値が最小となるプロセッサを検索する。第1ないし第4のプロセッサP1〜P4の余力性能M1〜M4(40KI,60KI,70KI,60KI)のうち最小の余力性能は、第1のプロセッサP1の余力性能M1=40KIである。すなわち、余力性能が最小であるプロセッサは第1のプロセッサP1である。   Here, the allocation control means E1 searches for a processor having the minimum value of the remaining capacity Mj. Among the remaining power performances M1 to M4 (40 KI, 60 KI, 70 KI, 60 KI) of the first to fourth processors P1 to P4, the minimum remaining power performance is the remaining power performance M1 of the first processor P1 = 40 KI. In other words, the processor having the minimum surplus performance is the first processor P1.

次に、割り当て制御手段E1は、再割り当ての可能性を検索する。すなわち、最小の余力性能M1=40KIに該当する第1のプロセッサP1以外の第2、第3、第4のプロセッサP2,P3,P4に割り当てられているタスクは、第2のタスクT2、第3のタスクT3および第4のタスクT4である。これら3つのタスクT2,T3,T4について、第1のプロセッサP1へ再割り当て可能なタスクが存在するか否かを、第1のプロセッサP1の余力性能M1=40KIを基準にして検索する。   Next, the allocation control means E1 searches for the possibility of reassignment. That is, the tasks assigned to the second, third, and fourth processors P2, P3, and P4 other than the first processor P1 corresponding to the minimum surplus performance M1 = 40 KI are the second task T2, the third task Task T3 and fourth task T4. With respect to these three tasks T2, T3, and T4, whether there is a task that can be reassigned to the first processor P1 is searched based on the remaining performance M1 = 40 KI of the first processor P1.

第2のタスクT2は、その処理性能値Φ2が60KIであり、第1のプロセッサP1の余力性能M1=40KIより大きいので、第1のプロセッサP1への再割り当ては不可能である。   Since the second task T2 has a processing performance value Φ2 of 60 KI and is larger than the surplus performance M1 of the first processor P1 = 40 KI, it cannot be reassigned to the first processor P1.

第3のタスクT3は、その処理性能値Φ3が50KIであり、やはり第1のプロセッサP1の余力性能M1=40KIより大きいので、第1のプロセッサP1への再割り当ては不可能である。   The third task T3 has a processing performance value Φ3 of 50 KI and is still larger than the remaining capacity M1 = 40 KI of the first processor P1, and therefore cannot be reassigned to the first processor P1.

第4のタスクT4は、その処理性能値Φ4が40KIであり、第1のプロセッサP1の余力性能M1=40KIの大きさ範囲内に収まるので、第1のプロセッサP1への再割り当てが可能である。   The fourth task T4 has a processing performance value Φ4 of 40 KI and falls within the size range of the surplus performance M1 of the first processor P1 = 40 KI. Therefore, it can be reassigned to the first processor P1. .

そこで、図7(a)から図7(b)への矢印で示すように、それまで第4のプロセッサP4に割り当てられていた第4のタスクT4を第1のプロセッサP1へ再割り当て(移動)する。この再割り当ての結果、第1のプロセッサP1の余力性能M1は0KIとなり、第4のプロセッサP4はプロセッサの割り当てが解消される。   Therefore, as indicated by the arrows from FIG. 7A to FIG. 7B, the fourth task T4 that has been assigned to the fourth processor P4 so far is reassigned (moved) to the first processor P1. To do. As a result of this reassignment, the surplus performance M1 of the first processor P1 becomes 0 KI, and the processor assignment of the fourth processor P4 is canceled.

以上により、
第1のプロセッサP1の余力性能M1は、M1=0KI(フル割り当て)
第2のプロセッサP2の余力性能M2は、M2=60KI(変化なし)
第3のプロセッサP3の余力性能M3は、M3=70KI(変化なし)
第4のプロセッサP4の余力性能M4は、M4=100KI(割り当て解消)
となる。
With the above,
The remaining capacity M1 of the first processor P1 is M1 = 0 KI (full allocation)
The remaining capacity M2 of the second processor P2 is M2 = 60 KI (no change)
The remaining capacity M3 of the third processor P3 is M3 = 70 KI (no change)
The remaining capacity M4 of the fourth processor P4 is M4 = 100 KI (assignment cancellation)
It becomes.

結果として、次に余力性能が最小であるプロセッサは、60KIの第2のプロセッサP2となる。以下、図7(b)に従って説明する。   As a result, the next processor with the smallest surplus performance is the second processor P2 with 60 KI. Hereinafter, a description will be given with reference to FIG.

最小の余力性能M2=60KIに該当する第2のプロセッサP2以外で割り当てられているタスクは、第3のタスクT3である。このタスクT3について、再割り当て可能なタスクか否かを、第2のプロセッサP2の余力性能M2=60KIを基準にして検索する。   The task assigned to other than the second processor P2 corresponding to the minimum remaining power performance M2 = 60 KI is the third task T3. Whether or not this task T3 is a reassignable task is searched based on the remaining performance M2 = 60 KI of the second processor P2.

第3のタスクT3は、その処理性能値Φ3が50KIであり、第2のプロセッサP2の余力性能M2=60KIの大きさ範囲内に収まるので、第2のプロセッサP2への再割り当てが可能である。   Since the third task T3 has a processing performance value Φ3 of 50 KI and falls within the size range of the remaining performance M2 of the second processor P2 = 60 KI, it can be reassigned to the second processor P2. .

そこで、図7(b)から図7(c)への矢印で示すように、それまで第3のプロセッサP3に割り当てられていた第3のタスクT3を第2のプロセッサP2へ再割り当て(移動)する。この再割り当ての結果、第2のプロセッサP2の余力性能M2は10KIとなり、第3のプロセッサP3はプロセッサの割り当てが解消される。   Therefore, as indicated by the arrows from FIG. 7B to FIG. 7C, the third task T3 that has been assigned to the third processor P3 so far is reassigned (moved) to the second processor P2. To do. As a result of this reassignment, the remaining capacity M2 of the second processor P2 becomes 10 KI, and the processor assignment of the third processor P3 is canceled.

以上により、
第1のプロセッサP1の余力性能M1は、M1=0KI(フル割り当て)
第2のプロセッサP2の余力性能M2は、M2=10KI(減少)
第3のプロセッサP3の余力性能M3は、M3=120KI(割り当て解消)
第4のプロセッサP4の余力性能M4は、M4=100KI(割り当て解消)
となる。
With the above,
The remaining capacity M1 of the first processor P1 is M1 = 0 KI (full allocation)
The remaining capacity M2 of the second processor P2 is M2 = 10 KI (decrease)
The remaining capacity M3 of the third processor P3 is M3 = 120 KI (assignment cancellation)
The remaining capacity M4 of the fourth processor P4 is M4 = 100 KI (assignment cancellation)
It becomes.

以上のように再割り当てすると、第1のプロセッサP1に第1のタスクT1と第5のタスクT5と第4のタスクT4が割り当てられ、第2のプロセッサP2に第2のタスクT2と第6のタスクT6と第3のタスクT3が割り当てられ、第3のプロセッサP3には第7のタスクT7が割り当てられ、第4のプロセッサP4には第8のタスクT8が割り当てられた状態となる。性能保証タスクT1〜T5だけに注目し、性能非保証タスクT6〜T8は無視すると、第1のプロセッサP1には第1のタスクT1と第5のタスクT5と第4のタスクT4が割り当てられ、第2のプロセッサP2には第2のタスクT2と第3のタスクT3が割り当てられ、第3のプロセッサP3と第4のプロセッサP4には割り当てがない状態となる。結果として、これ以上の再割り当て可能な性能保証タスクはなくなる。   When reassigned as described above, the first task T1, the fifth task T5, and the fourth task T4 are assigned to the first processor P1, and the second task T2 and the sixth task T4 are assigned to the second processor P2. The task T6 and the third task T3 are assigned, the seventh processor T3 is assigned to the third processor P3, and the eighth task T8 is assigned to the fourth processor P4. If attention is paid only to the performance guarantee tasks T1 to T5 and the performance non-guarantee tasks T6 to T8 are ignored, the first task T1, the fifth task T5, and the fourth task T4 are allocated to the first processor P1, A second task T2 and a third task T3 are assigned to the second processor P2, and no assignment is made to the third processor P3 and the fourth processor P4. As a result, there are no more reassignable performance assurance tasks.

以上の割り当て制御手段E1によるタスクのプロセッサへの割り当ておよび再割り当ての処理が完了すると、次に動作状態制御手段E2が起動し、性能保証タスクの割り当てが解消された第3のプロセッサP3と第4のプロセッサP4の動作状態に対して省電力状態を適用する。ここでは、動作状態制御手段E2がクロック制御部4を制御して、第3のプロセッサP3および第4のプロセッサP4に対するクロックの供給を停止する。第3のプロセッサP3、第4のプロセッサP4には、性能保証タスクαは割り当てられていないから、クロックの供給の停止は問題ない。   When the above assignment control means E1 completes the assignment and reassignment of tasks to processors, the operation state control means E2 is activated next, and the third processor P3 and the fourth processor 4 in which the performance guarantee task assignment is canceled The power saving state is applied to the operation state of the processor P4. Here, the operation state control means E2 controls the clock controller 4 to stop the supply of clocks to the third processor P3 and the fourth processor P4. Since the performance guarantee task α is not assigned to the third processor P3 and the fourth processor P4, there is no problem in stopping the supply of the clock.

以上のようにして、図4の状態から始めてタスクの再割り当て(移動)を実行した結果を図8に示す。リアルタイムフラグ情報a1が“1”となっている第1ないし第5のタスクT1〜T5は、第1のプロセッサP1と第2のプロセッサP2とに集約され、使用プロセッサ数が最小限となる割り当てが実現されている。   FIG. 8 shows the result of task reassignment (movement) starting from the state of FIG. 4 as described above. The first to fifth tasks T1 to T5 in which the real-time flag information a1 is “1” are aggregated into the first processor P1 and the second processor P2, and an allocation that minimizes the number of processors used is performed. It has been realized.

図9は本実施の形態1の省電力制御装置の動作を示すフローチャートである。以下、このフローチャートに従って動作を説明する。   FIG. 9 is a flowchart showing the operation of the power saving control apparatus according to the first embodiment. The operation will be described below according to this flowchart.

まずステップS1において、オペレーティングシステム10の割り当て制御手段E1は、余力性能Mjの値が最小となるプロセッサを検索する。より詳しくは、次のとおりである。   First, in step S1, the allocation control means E1 of the operating system 10 searches for a processor having a minimum surplus performance Mj. More details are as follows.

余力性能Mjを、処理能力値Wjと処理性能値総和ΣΦiの差分として求める(Mj
=Wj−ΣΦi)。処理能力値Wjは、プロセッサPjの単位時間当たりの処理能力qjにリアルタイム性能時間τiを乗算したものとして求める(Wj=qj×τi)。すなわち、余力性能Mjは、
Mj=qj×τi−ΣΦi
に従って求める。ステップS1では、この余力性能Mjの値が最小となるプロセッサを検索する。
The remaining performance Mj is obtained as a difference between the processing capability value Wj and the processing performance value sum ΣΦi (Mj
= Wj-ΣΦi). The processing capability value Wj is obtained by multiplying the processing capability qj per unit time of the processor Pj by the real-time performance time τi (Wj = qj × τi). That is, the remaining capacity performance Mj is
Mj = qj × τi−ΣΦi
Ask according to. In step S1, a processor having a minimum value of the surplus performance Mj is searched.

次いでステップS2において、別のプロセッサに割り当てられているタスクの中でステップS1にて検索されたプロセッサへ性能保証が可能なまま再割り当て可能なタスク(タスクA)が存在するかどうかを検索する。上記の動作例では、第4のプロセッサP4に割り当てられていたタスクT4が該当する。   Next, in step S2, a search is made as to whether there is a task (task A) that can be reassigned while the performance is guaranteed to the processor searched in step S1 among the tasks assigned to another processor. In the above operation example, the task T4 assigned to the fourth processor P4 corresponds.

ステップS3は、ステップS2にて検索された結果において、再割り当て可能タスク(タスクA)が存在するか否かに応じて分岐を行う処理である。再割り当て可能タスク(タスクA)が存在すると判定したときはステップS4に分岐し、再割り当て可能タスク(タスクA)が存在しないと判定したときはステップS5に分岐する。   Step S3 is a process of branching according to whether or not a reassignable task (task A) exists in the result searched in step S2. If it is determined that there is a reassignable task (task A), the process branches to step S4. If it is determined that there is no reassignable task (task A), the process branches to step S5.

ステップS4においては、再割り当て可能タスク(タスクA)をステップS1で検索したプロセッサへ移動させ、再度ステップS2へ移行する。   In step S4, the reassignable task (task A) is moved to the processor searched in step S1, and the process proceeds to step S2 again.

ステップS2,S3,S4のループを繰り返すと、ステップS1で求めたプロセッサに対する再割り当て可能なタスクの検索の処理が終了したことになり、ステップS3からステップS5へと進む。   When the loop of steps S2, S3, and S4 is repeated, the process of searching for a reassignable task for the processor obtained in step S1 is completed, and the process proceeds from step S3 to step S5.

ステップS5において、再割り当て未完了のプロセッサ・タスクが存在するかどうかを判定し、再割り当て未完了のプロセッサ・タスクが存在すると判定された場合は、再割り当て未完了のプロセッサ・タスクについて、再度ステップS1から同様のステップを繰り返す。   In step S5, it is determined whether or not there is a processor task that has not been reassigned. If it is determined that there is a processor task that has not yet been reassigned, the processor task that has not yet been reassigned is re-stepped. The same steps are repeated from S1.

ステップS5にて再割り当て未完了のプロセッサ・タスクが存在しないと判定された場合は、ステップS6に進む。ステップS6において、動作状態制御手段E2は、リアルタイムフラグ情報a1が“1”のタスクの割り当てが解消された不使用プロセッサについて、クロック制御部4を介してクロック供給を停止することにより消費電力を削減する。   If it is determined in step S5 that there are no unassigned processor tasks, the process proceeds to step S6. In step S6, the operation state control means E2 reduces power consumption by stopping the clock supply via the clock control unit 4 for the unused processor whose real-time flag information a1 is assigned with the task “1”. To do.

以上で説明したように本実施の形態1の省電力制御装置においては、各プロセッサPj(j=1,2…m)に割り当てられる性能保証タスクTiが必要とするリアルタイム性能時間τi(i=1,2…n)を加味した要素値としてプロセッサPjの処理能力値Wjを用いることとし、割り当て制御手段E1は、各プロセッサPjに割り当てられるべき各性能保証タスクTiの処理性能値Φi(i=1,2…n)のそれぞれと、プロセッサPjの処理能力値Wj(j=1,2…m)のそれぞれとの相関関係に基づいて、使用プロセッサ数が最小限となるように、各性能保証タスクTiの各プロセッサPjへの割り当ての制御を行うものとして構成されている。より詳しくは、判断対象の性能保証タスクTiの処理性能値Φiを他のプロセッサPjの余力性能Mjと比較し、判断対象の性能保証タスクTiの処理性能値Φiが他のプロセッサPjの余力性能Mj以下のときにその判断対象の性能保証タスクを余力のある他のプロセッサに再割り当てするように構成されている。そして、動作状態制御手段E2は、割り当て制御手段E1による割り当ての結果、性能保証タスクTiの割り当てが解消された不使用プロセッサの動作状態に対して省電力状態を適用するものとして構成されている。その結果として、本実施の形態1の省電力制御装置によれば、性能保証タスクと性能非保証タスクとが混在するマルチプロセッサシステムにおいて、時間的に変化する要素値を常時的に監視したり、プロセッサ動作状態を常時的に制御下に置いたりすることなく、また従来技術のようにプロセッサ負荷が時間経過に伴って低負荷状態になることを前提条件にすることなく、リアルタイム性を保証しながら消費電力を効果的に削減することができる。   As described above, in the power saving control device according to the first embodiment, the real-time performance time τi (i = 1) required by the performance guarantee task Ti allocated to each processor Pj (j = 1, 2,... M). , 2... N) is used as the element value taking into account the processor Pj's processing capability value Wj, and the allocation control means E1 processes the processing performance value Φi (i = 1) of each performance assurance task Ti to be allocated to each processor Pj. , 2... N) and the processing capability values Wj (j = 1, 2,... M) of the processor Pj, so that each performance assurance task is minimized so that the number of processors used is minimized. It is configured to control allocation of Ti to each processor Pj. More specifically, the processing performance value Φi of the performance assurance task Ti to be determined is compared with the remaining performance Mj of the other processor Pj, and the processing performance value Φi of the performance assurance task Ti to be determined is the remaining performance Mj of the other processor Pj. The performance guarantee task to be determined is reassigned to another processor having a surplus at the following time. The operation state control unit E2 is configured to apply the power saving state to the operation state of the unused processor in which the assignment of the performance guarantee task Ti is canceled as a result of the assignment by the assignment control unit E1. As a result, according to the power saving control device of the first embodiment, in a multiprocessor system in which a performance guarantee task and a performance non-guarantement task are mixed, a temporally changing element value is constantly monitored, While guaranteeing real-time performance without always keeping the processor operating state under control and without assuming that the processor load becomes low over time as in the prior art Power consumption can be effectively reduced.

なお、性能保証タスクの割り当てが解消された不使用プロセッサへのクロック供給を停止する代わりに、周波数を低く(低クロックモードに)してもよい(※1)。   Instead of stopping the clock supply to the unused processor whose performance assurance task assignment has been eliminated, the frequency may be lowered (low clock mode) (* 1).

また、プロセッサの動作モードを変更することとし、性能保証タスクの割り当てが確定された使用プロセッサの動作モードについて、プロセッサのクロック供給を低クロックモードから高クロックモードへ変更するのでもよいし、低消費電力状態から通常動作状態へ変更するようにしてもよい(※2)。   In addition, the processor operating mode may be changed, and the processor clock supply may be changed from the low clock mode to the high clock mode for the operating mode of the used processor for which the performance guarantee task assignment has been confirmed. The power state may be changed to the normal operation state (* 2).

なお、性能保証タスクの割り当てが解消された不使用プロセッサに割り当てられていたメモリを、性能保証タスクが割り当てられている使用プロセッサへ再割り当てるように構成してもよい。あるいは、性能保証タスクの割り当てが解消された不使用プロセッサのキャッシュモードを変更するのでもよい。例えば、スヌーピング機能を備えたキャッシュにおいては、周辺機器からのDMAなどによって、メモリ内容がキャッシュ内容と不一致にならないかを監視し、不一致となった場合にはキャッシュ内容を破棄するように機能している。そこで、性能保証タスクの割り当てが解消された不使用プロセッサについては、そのキャッシュのスヌープモードを停止させる。スヌープモードを停止させることにより、マルチプロセッサシステムのトータルなタスク分散処理の効率を高くすることが可能となる(※3)。   Note that the memory allocated to the unused processor for which the allocation of the performance guarantee task is eliminated may be reassigned to the used processor to which the performance assurance task is allocated. Alternatively, the cache mode of the unused processor in which the performance guarantee task assignment is canceled may be changed. For example, in a cache having a snooping function, it is monitored whether the memory contents do not match the cache contents by DMA or the like from a peripheral device, and if it does not match, the cache contents are discarded. Yes. Therefore, the snoop mode of the cache is stopped for the unused processor for which the performance guarantee task assignment has been eliminated. By stopping the snoop mode, the total task distribution processing efficiency of the multiprocessor system can be increased (* 3).

なお、本実施の形態1では、リアルタイムフラグ情報a1により性能非保証タスクを判定しているが、例えば、リアルタイム性能情報a2あるいは処理性能情報a3の値が“0”のタスクを性能非保証タスクと判定してもよい(※4)。   In the first embodiment, the performance non-guaranteed task is determined based on the real-time flag information a1. For example, a task whose real-time performance information a2 or processing performance information a3 has a value of “0” is regarded as a performance non-guaranteed task. It may be judged (* 4).

なお、本実施の形態1ではステップS1にて、余力性能Mj(=qj×τi−ΣΦi
)の値が最小となるプロセッサを検索しているが、余力性能Mjの値が最大となるプロセッサを優先してもよいし、または単純にプロセッサ番号の昇順や降順に従って検索するのでもよい(※5)。
In the first embodiment, in step S1, the remaining capacity Mj (= qj × τi−ΣΦi
) Is searched for, but priority may be given to the processor having the maximum surplus performance Mj, or the search may be simply performed in ascending or descending order of the processor numbers (* 5).

なお、図9に示すフローチャートのステップにおいては、ループ処理(S2→S3→S4→S2…、S1→S2→S3→S5→S1…)が含まれるため、このループ処理時間が長くなる可能性もある。そのため、図9に示すフローチャートのステップを実行するか否かを判定する(つまり、図9の「開始」へ処理を移行するか否かを判定する)処理を別途行うように構成してもよい(※6)。   9 includes a loop process (S2 → S3 → S4 → S2..., S1 → S2 → S3 → S5 → S1...), The loop processing time may be long. is there. Therefore, it may be configured to separately perform a process of determining whether to execute the steps of the flowchart shown in FIG. 9 (that is, determining whether to shift the process to “start” in FIG. 9). (* 6).

なお、本実施の形態1では割り当て制御手段E1と動作状態制御手段E2は、CPU1とROM2とRAM3の機能的結合によるオペレーティングシステム10をもって構成されているが、このオペレーティングシステム10に代えて専用のDSP(Digital Signal Processor)をもって構成してもよい(※7)。   In the first embodiment, the allocation control means E1 and the operation state control means E2 are configured with an operating system 10 that is a functional combination of the CPU 1, the ROM 2, and the RAM 3, but a dedicated DSP is used instead of the operating system 10. (Digital Signal Processor) may be used (* 7).

(実施の形態2)
本発明の実施の形態2は、性能保証タスクが使用する資源について競合がないことを優先条件にして、性能保証タスクのプロセッサへの再割り当てを行うように構成したものである。
(Embodiment 2)
The second embodiment of the present invention is configured to reallocate a performance guarantee task to a processor on the condition that there is no contention for resources used by the performance guarantee task.

本実施の形態2のマルチプロセッサシステムにおける省電力制御装置の構成については、実施の形態1の場合の図1が援用される。   For the configuration of the power saving control device in the multiprocessor system of the second embodiment, FIG. 1 in the case of the first embodiment is used.

図10は実施の形態2の場合において、個々のタスクT1〜T8がそれぞれ保持しているタスク管理情報20の構造を示す。このタスク管理情報20は、実施の形態1の場合の図3でのリアルタイムフラグ情報a1、リアルタイム性能情報a2および処理性能情報a3に加えて、各タスクがそれぞれ使用する資源を示す使用資源情報a4も保持している。   FIG. 10 shows the structure of the task management information 20 held by each of the tasks T1 to T8 in the case of the second embodiment. In addition to the real-time flag information a1, the real-time performance information a2, and the processing performance information a3 in FIG. 3 in the case of the first embodiment, the task management information 20 includes used resource information a4 indicating resources used by each task. keeping.

図11は実施の形態2の場合において、第1ないし第8のタスクT1〜T8についてのタスク管理情報20の具体的な内容を示す。第1ないし第4のプロセッサP1〜P4の単位時間当たりの処理能力qj(j=1,2…4)であるMIPS値については、実施の形態1の場合の図5が援用される。   FIG. 11 shows the specific contents of the task management information 20 for the first to eighth tasks T1 to T8 in the case of the second embodiment. As for the MIPS value, which is the processing capability qj (j = 1, 2,..., 4) per unit time of the first to fourth processors P1 to P4, FIG.

図11において、実施の形態1の場合の図4と相違する点は、リアルタイム性能時間τiについてである。実施の形態1(図4)の場合には、第1および第4のプロセッサP1,P4のリアルタイム性能時間τ1とτ4は等しく10msであり、また第2および第3のプロセッサP2,P3のリアルタイム性能時間τ2とτ3は等しく12msである。τ1,τ4とτ2,τ3とでは相違している。これに対して、本実施の形態2では、すべての性能保証タスクαT1〜T5のリアルタイム性能時間τ1〜τ5は互いに等しく、すべて10msとなっている。   In FIG. 11, the difference from FIG. 4 in the case of the first embodiment is the real-time performance time τi. In the case of the first embodiment (FIG. 4), the real-time performance times τ1 and τ4 of the first and fourth processors P1 and P4 are equal to 10 ms, and the real-time performance of the second and third processors P2 and P3. Times τ2 and τ3 are equally 12 ms. There is a difference between τ1, τ4 and τ2, τ3. On the other hand, in the second embodiment, the real-time performance times τ1 to τ5 of all the performance guarantee tasks αT1 to T5 are equal to each other and are all 10 ms.

図12(a)は図11に対応している。図4との比較で説明すると、リアルタイムフラグ情報a1については同じであり、リアルタイム性能時間τi、処理性能値Φiについては、第1のタスクT1、第4のタスクT4および第5のタスクT5では同じである。第2のタスクT2と第3のタスクT3では相違している。すなわち、第2のタスクT2では、リアルタイム性能時間τ2は10msであり、処理性能値Φ2は40KIである(τ2=10ms、Φ2=40KI)。第3のタスクT3では、リアルタイム性能時間τ3は10msであり、処理性能値Φ3は30KIである(τ3=10ms、Φ3=30KI)。   FIG. 12A corresponds to FIG. In comparison with FIG. 4, the real-time flag information a1 is the same, and the real-time performance time τi and the processing performance value Φi are the same in the first task T1, the fourth task T4, and the fifth task T5. It is. The second task T2 and the third task T3 are different. That is, in the second task T2, the real-time performance time τ2 is 10 ms, and the processing performance value Φ2 is 40 KI (τ2 = 10 ms, Φ2 = 40 KI). In the third task T3, the real-time performance time τ3 is 10 ms, and the processing performance value Φ3 is 30 KI (τ3 = 10 ms, Φ3 = 30 KI).

本実施の形態2において、オペレーティングシステム10の割り当て制御手段E1は、使用資源情報a4を参照して、第1のタスクT1は資源Aと資源Bを使用すると判定し、第2のタスクT2は資源Cと資源Dを使用すると判定し、第3のタスクT3は資源Aと資源Cを使用すると判定し、第4のタスクT4は資源Bと資源Dを使用すると判定し、第5のタスクT5は資源Eを使用すると判定する。   In the second embodiment, the allocation control means E1 of the operating system 10 refers to the used resource information a4, determines that the first task T1 uses the resource A and the resource B, and the second task T2 C and resource D are determined to be used, the third task T3 is determined to use resource A and resource C, the fourth task T4 is determined to use resource B and resource D, and the fifth task T5 is It is determined that the resource E is used.

余力性能Mj(=qj×τi−ΣΦi)については、実施の形態1の場合と同じとな
っている。すなわち、第1のプロセッサP1の余力性能はM1=40KI、第2のプロセッサP2の余力性能はM2=60KI、第3のプロセッサP3の余力性能はM3=70KI、第4のプロセッサP4の余力性能はM4=60KIである。ここでも、余力性能が最小となるのは第1のプロセッサP1である。
The remaining performance Mj (= qj × τi−ΣΦi) is the same as that in the first embodiment. That is, the remaining capacity of the first processor P1 is M1 = 40 KI, the remaining capacity of the second processor P2 is M2 = 60 KI, the remaining capacity of the third processor P3 is M3 = 70 KI, and the remaining capacity of the fourth processor P4 is M4 = 60 KI. Again, it is the first processor P1 that has the minimum surplus performance.

割り当て制御手段E1は、再割り当ての可能性を検索する。すなわち、最小の余力性能M1=40KIに該当する第1のプロセッサP1以外の第2、第3、第4のプロセッサP2,P3,P4に割り当てられているタスクは、第2のタスクT2、第3のタスクT3および第4のタスクT4であるが、これら3つのタスクT2,T3,T4について、比較基準である第1のプロセッサP1が使用する資源A,B,Eに対して競合しないタスクが存在するかどうかを検索する。第3のプロセッサP3が使用する資源はA,Cであり、資源Aが競合する。第4のプロセッサP4が使用する資源はB,Dであり、資源Bが競合する。これに対して、第2のプロセッサP2が使用する資源はC,Dであり、第1のプロセッサP1が使用する資源A,B,Eとは競合しない。そこで、資源競合のない第2のプロセッサP2を再割り当ての候補に選択する。   The allocation control means E1 searches for the possibility of reassignment. That is, the tasks assigned to the second, third, and fourth processors P2, P3, and P4 other than the first processor P1 corresponding to the minimum surplus performance M1 = 40KI are the second task T2, the third task Task T3 and fourth task T4, but for these three tasks T2, T3, and T4, there are tasks that do not compete with resources A, B, and E used by the first processor P1, which is the comparison criterion Search if you want to. The resources used by the third processor P3 are A and C, and the resource A competes. The resources used by the fourth processor P4 are B and D, and the resource B competes. On the other hand, the resources used by the second processor P2 are C and D, and do not compete with the resources A, B, and E used by the first processor P1. Therefore, the second processor P2 having no resource contention is selected as a reassignment candidate.

そこで、図12(a)から図12(b)への矢印で示すように、それまで第2のプロセッサP2に割り当てられていた第2のタスクT2を第1のプロセッサP1へ再割り当て(移動)する。この再割り当ての結果、第1のプロセッサP1の余力性能M1は0KIとなり、第2のプロセッサP2はプロセッサの割り当てが解消される。   Therefore, as shown by the arrows from FIG. 12A to FIG. 12B, the second task T2 that has been assigned to the second processor P2 until then is reassigned (moved) to the first processor P1. To do. As a result of this reassignment, the remaining capacity M1 of the first processor P1 becomes 0 KI, and the processor assignment of the second processor P2 is canceled.

以上により、
第1のプロセッサP1の余力性能M1は、M1=0KI(フル割り当て)
第2のプロセッサP2の余力性能M2は、M2=100KI(割り当て解消)
第3のプロセッサP3の余力性能M3は、M3=70KI(変化なし)
第4のプロセッサP4の余力性能M4は、M4=60KI(変化なし)
となる。
With the above,
The remaining capacity M1 of the first processor P1 is M1 = 0 KI (full allocation)
The remaining performance M2 of the second processor P2 is M2 = 100 KI (assignment cancellation)
The remaining capacity M3 of the third processor P3 is M3 = 70 KI (no change)
The remaining capacity M4 of the fourth processor P4 is M4 = 60 KI (no change)
It becomes.

結果として、次に余力性能が最小であるプロセッサは、60KIの第4のプロセッサP4となる。以下、図12(b)に従って説明する。   As a result, the next processor with the smallest surplus performance is the fourth processor P4 with 60 KI. Hereinafter, a description will be given with reference to FIG.

最小の余力性能M4=60KIに該当する第4のプロセッサP4以外で割り当てられているタスクは、第3のタスクT3である。このタスクT3について、再割り当て可能なタスクか否かを、第4のプロセッサP4の余力性能M4=60KIを基準にして検索する。   The task assigned to other than the fourth processor P4 corresponding to the minimum remaining power performance M4 = 60 KI is the third task T3. The task T3 is searched for whether or not it is a reassignable task on the basis of the remaining capacity M4 = 60 KI of the fourth processor P4.

第3のタスクT3は、その処理性能値Φ3が30KIであり、第4のプロセッサP4の余力性能M4=60KIの大きさ範囲内に収まるので、第4のプロセッサP4への再割り当てが可能である。第4のプロセッサP4の第4のタスクT4が使用する資源は資源Bと資源Dとであり、第3のタスクT3が使用する資源Aと資源Cは競合しない。   Since the third task T3 has a processing performance value Φ3 of 30 KI and falls within the size range of the remaining performance M4 of the fourth processor P4 = 60 KI, it can be reassigned to the fourth processor P4. . The resources used by the fourth task T4 of the fourth processor P4 are the resource B and the resource D, and the resource A and the resource C used by the third task T3 do not compete.

そこで、図12(b)から図12(c)への矢印で示すように、それまで第3のプロセッサP3に割り当てられていた第3のタスクT3を第4のプロセッサP4へ再割り当て(移動)する。この再割り当ての結果、第4のプロセッサP4の余力性能M4は30KIとなり、第3のプロセッサP3はプロセッサの割り当てが解消される。   Therefore, as indicated by the arrows from FIG. 12B to FIG. 12C, the third task T3 that has been assigned to the third processor P3 so far is reassigned (moved) to the fourth processor P4. To do. As a result of this reassignment, the remaining capacity M4 of the fourth processor P4 becomes 30 KI, and the processor assignment of the third processor P3 is canceled.

以上により、
第1のプロセッサP1の余力性能M1は、M1=0KI(フル割り当て)
第2のプロセッサP2の余力性能M2は、M2=100KI(割り当て解消)
第3のプロセッサP3の余力性能M3は、M3=100KI(割り当て解消)
第4のプロセッサP4の余力性能M4は、M4=30KI(減少)
となる。
With the above,
The remaining capacity M1 of the first processor P1 is M1 = 0 KI (full allocation)
The remaining performance M2 of the second processor P2 is M2 = 100 KI (assignment cancellation)
The remaining capacity M3 of the third processor P3 is M3 = 100 KI (assignment cancellation)
The remaining capacity M4 of the fourth processor P4 is M4 = 30 KI (decrease)
It becomes.

以上の再割り当てにおいて、性能保証タスクT1〜T5だけに注目すると、第1のプロセッサP1には第1のタスクT1と第5のタスクT5と第2のタスクT2が割り当てられ、第4のプロセッサP4には第4のタスクT4と第3のタスクT3が割り当てられ、第2のプロセッサP2と第3のプロセッサP3には割り当てがない状態となる。結果として、これ以上の再割り当て可能な性能保証タスクはなくなる。   In the above reassignment, when focusing only on the performance guarantee tasks T1 to T5, the first processor T1, the fifth task T5, and the second task T2 are assigned to the first processor P1, and the fourth processor P4. Are assigned the fourth task T4 and the third task T3, and the second processor P2 and the third processor P3 are not assigned. As a result, there are no more reassignable performance assurance tasks.

以上の割り当て制御手段E1によるタスクのプロセッサへの割り当ておよび再割り当ての処理が完了すると、次に動作状態制御手段E2が起動し、性能保証タスクの割り当てが解消された第2のプロセッサP2と第3のプロセッサP3の動作状態に対して省電力状態を適用する。ここでは、動作状態制御手段E2がクロック制御部4を制御して、第2のプロセッサP2および第3のプロセッサP3に対するクロックの供給を停止する。第2のプロセッサP2、第3のプロセッサP3には、性能保証タスクαは割り当てられていないから、クロックの供給の停止は問題ない。   When the above assignment control means E1 completes the process of assigning and reassigning tasks to processors, the operation state control means E2 is activated next, and the second processor P2 and the third processor 3 in which the performance guarantee task assignment is canceled The power saving state is applied to the operating state of the processor P3. Here, the operation state control means E2 controls the clock control unit 4 to stop the supply of clocks to the second processor P2 and the third processor P3. Since the performance guarantee task α is not allocated to the second processor P2 and the third processor P3, there is no problem in stopping the supply of the clock.

以上のようにして、図11の状態から始めてタスクの再割り当て(移動)を実行した結果を図13に示す。リアルタイムフラグ情報a1が“1”となっている第1ないし第5のタスクT1〜T5は、第1のプロセッサP1と第4のプロセッサP4とに集約され、使用プロセッサ数が最小限となる割り当てが実現されている。   FIG. 13 shows the result of task reassignment (movement) starting from the state shown in FIG. 11 as described above. The first to fifth tasks T1 to T5 in which the real-time flag information a1 is “1” are aggregated into the first processor P1 and the fourth processor P4, and an allocation that minimizes the number of processors used is performed. It has been realized.

図14は本実施の形態2の省電力制御装置の動作を示すフローチャートである。以下、このフローチャートに従って動作を説明する。実施の形態1の場合の図9との対比では、ステップS12がステップS2と相違し、他のステップは同じである。   FIG. 14 is a flowchart showing the operation of the power saving control apparatus according to the second embodiment. The operation will be described below according to this flowchart. In contrast to FIG. 9 in the case of the first embodiment, step S12 is different from step S2, and the other steps are the same.

まずステップS11において、オペレーティングシステム10の割り当て制御手段E1は、余力性能Mj(=qj×τi−ΣΦi)の値が最小となるプロセッサを検索する
First, in step S11, the allocation control means E1 of the operating system 10 searches for a processor having a minimum surplus performance Mj (= qj × τi−ΣΦi).

次いでステップS12において、別のプロセッサに割り当てられているタスクの中でステップS11にて検索されたプロセッサへ性能保証が可能なまま再割り当て可能なタスクの中で、使用する資源の競合がないタスク(タスクB)が存在するかどうかを検索する。上記の動作例では、第2のプロセッサP2に割り当てられていたタスクT2が該当する。   Next, in step S12, among the tasks assigned to another processor, among the tasks that can be reassigned while the performance guarantee is possible to the processor searched in step S11, there is no contention of resources to be used ( Search for task B). In the above operation example, the task T2 assigned to the second processor P2 corresponds.

ステップS13は、ステップS12にて検索された結果において、資源競合のない再割り当て可能タスク(タスクB)が存在するか否かに応じて分岐を行う処理である。資源競合のない再割り当て可能タスク(タスクB)が存在すると判定したときはステップS14に分岐し、資源競合のない再割り当て可能タスク(タスクB)が存在しないと判定したときはステップS15に分岐する。   Step S13 is a process of branching according to whether or not a reassignable task (task B) having no resource conflict exists in the result searched in step S12. If it is determined that there is a reassignable task (task B) without resource conflict, the process branches to step S14. If it is determined that there is no reassignable task (task B) without resource conflict, the process branches to step S15. .

ステップS14においては、資源競合のない再割り当て可能タスク(タスクB)をステップS11で検索したプロセッサへ移動させ、再度ステップS12へ移行する。   In step S14, the reassignable task (task B) having no resource conflict is moved to the processor searched in step S11, and the process proceeds to step S12 again.

ステップS12,S13,S14のループを繰り返すと、ステップS11で求めたプロセッサに対する再割り当て可能なタスクの検索の処理が終了したことになり、ステップS13からステップS15に進む。   When the loop of steps S12, S13, and S14 is repeated, the process of searching for a reassignable task for the processor obtained in step S11 is completed, and the process proceeds from step S13 to step S15.

ステップS15において、再割り当て未完了のプロセッサ・タスクが存在するかどうかを判定し、再割り当て未完了のプロセッサ・タスクが存在すると判定された場合は、再割り当て未完了のプロセッサ・タスクについて、再度ステップS11から同様のステップを繰り返す。   In step S15, it is determined whether or not there is a processor task that has not been reassigned. If it is determined that there is a processor task that has not yet been reassigned, the step is performed again for the processor task that has not been reassigned. The same steps are repeated from S11.

ステップS15にて再割り当て未完了のプロセッサ・タスクが存在しないと判定された場合は、ステップS16に進む。ステップS16において、動作状態制御手段E2は、リアルタイムフラグ情報a1が“1”のタスクの割り当てが解消された不使用プロセッサについて、クロック制御部4を介してクロック供給を停止することにより消費電力を削減する。   If it is determined in step S15 that there are no unassigned processor tasks, the process proceeds to step S16. In step S16, the operation state control means E2 reduces the power consumption by stopping the clock supply via the clock control unit 4 for the unused processor whose real-time flag information a1 is assigned with the task “1”. To do.

以上のように本実施の形態2によれば、資源のプロセッサ間競合を最小限とするので、効率の良いタスク処理が可能となる。   As described above, according to the second embodiment, resource contention between processors is minimized, so that efficient task processing can be performed.

なお、本実施の形態2では性能保証タスクが使用する資源のプロセッサ間競合を最小限とするように再割り当てを行っているが、これに代えて、次のような実施の形態も有効である。   In the second embodiment, reallocation is performed so as to minimize contention between processors for resources used by the performance assurance task. Instead, the following embodiment is also effective. .

すなわち、性能保証タスクにおいてシーケンス的に処理する必要のある性能保証タスク群をなるべく同一のプロセッサへ再割り当てするようにする。このように構成すれば、ディスパッチ回数を最小限とすることができる。   That is, a performance guarantee task group that needs to be processed in sequence in the performance guarantee task is reassigned to the same processor as much as possible. With this configuration, the number of dispatches can be minimized.

また、性能保証タスクが再割り当てされたプロセッサへは性能非保証タスクを割り当てないようにする。このように構成すれば、性能非保証タスクのプロセッサ間移動を最小限とすることができる。   In addition, a performance non-guaranteed task is not assigned to a processor to which a performance assurance task is reassigned. With this configuration, the movement of non-guaranteed tasks between processors can be minimized.

なお、実施の形態1の場合の尚書き(※1)〜(※7)は本実施の形態2にも該当する。   Note that the notes (* 1) to (* 7) in the first embodiment also correspond to the second embodiment.

(実施の形態3)
本発明の実施の形態3は、実施の形態1および実施の形態2の省電力制御装置をデジタルスチルカメラ(モバイル端末)に用いた形態を例示するものである。
(Embodiment 3)
The third embodiment of the present invention exemplifies a form in which the power saving control device according to the first and second embodiments is used in a digital still camera (mobile terminal).

図15は本発明の実施の形態3におけるデジタルスチルカメラの機能的構成を示すブロック図、図16はそのデジタルスチルカメラの主要部の機能を表す機能説明図である。   FIG. 15 is a block diagram showing a functional configuration of a digital still camera according to Embodiment 3 of the present invention, and FIG. 16 is a functional explanatory diagram showing functions of a main part of the digital still camera.

本実施の形態3のデジタルスチルカメラ30は、CPU40と、キー操作部51と、タイマ部52と、カメラ部53と、オーディオ部54と、USB(Universal Serial Bus)インターフェース部55とを含んで構成されている。キー操作部51はこれを制御するキー判別タスクT1およびキー実行タスクT5を含み、タイマ部52はこれを制御するタイマタスクT2を含み、カメラ部53はこれを制御するカメラタスクT3を含み、オーディオ部54はこれを制御するオーディオタスクT4を含み、USBインターフェース部55はこれを制御するUSBタスクT6〜T8を含んでいる。タスクT1〜T5は性能保証タスクαに該当し、タスクT6〜T8は性能非保証タスクβに該当する。   The digital still camera 30 according to the third embodiment includes a CPU 40, a key operation unit 51, a timer unit 52, a camera unit 53, an audio unit 54, and a USB (Universal Serial Bus) interface unit 55. Has been. The key operation unit 51 includes a key determination task T1 and a key execution task T5 that control the key operation unit 51. The timer unit 52 includes a timer task T2 that controls the task. The camera unit 53 includes a camera task T3 that controls the task. The unit 54 includes an audio task T4 that controls this, and the USB interface unit 55 includes USB tasks T6 to T8 that control this. Tasks T1 to T5 correspond to the performance guarantee task α, and tasks T6 to T8 correspond to the performance non-guaranteed task β.

CPU40は、マルチプロセッサシステムを含む。このマルチプロセッサシステムは、複数(ここでは4つ)のプロセッサ、すなわち第1ないし第4のプロセッサP1〜P4を含む。CPU40は、複数のタスクを並列的に処理しながらデジタルスチルカメラ30の全体を制御する。具体的には、CPU40は、キー操作部51から入力される各種の指示信号に応じて、オペレーティングシステムプログラム(OS)および各種アプリケーションプログラムを読み出して実行し、タイマ部52、カメラ部53、オーディオ部54およびUSBインターフェース部55を制御する。   The CPU 40 includes a multiprocessor system. The multiprocessor system includes a plurality of (here, four) processors, that is, first to fourth processors P1 to P4. The CPU 40 controls the entire digital still camera 30 while processing a plurality of tasks in parallel. Specifically, the CPU 40 reads and executes an operating system program (OS) and various application programs in response to various instruction signals input from the key operation unit 51, and performs a timer unit 52, a camera unit 53, and an audio unit. 54 and the USB interface unit 55 are controlled.

このように構成されたデジタルスチルカメラのCPU40における動作シーケンスは、実施の形態1または実施の形態2の省電力制御装置の動作と本質的に同じであるので、説明を省略する。   The operation sequence in the CPU 40 of the digital still camera configured as described above is essentially the same as the operation of the power saving control device according to the first or second embodiment, and thus the description thereof is omitted.

本実施の形態3のデジタルスチルカメラによれば、消費電力削減が可能となり、バッテリーの持ち時間が長くなるという効果がある。   According to the digital still camera of the third embodiment, it is possible to reduce power consumption and to increase the battery life.

なお、デジタルスチルカメラの機能として、消費電力を特には抑えないで動作する通常消費電力モードと消費電力を抑えて動作する低消費電力モードとを切り替え可能な状態にして搭載した型式において、低消費電力モードが設定された場合に本実施の形態3にあるような再割り当てを行うように構成してもよい。   In addition, as a function of the digital still camera, low power consumption can be achieved by switching between a normal power consumption mode that operates without particularly reducing power consumption and a low power consumption mode that operates with less power consumption. When the power mode is set, the reassignment as in the third embodiment may be performed.

また、低消費電力モードへの移行はユーザによって設定可能な機能としてもよいし、特定の条件が揃った場合に自動的に低消費電力モードへ移行するとしてもよい。   Further, the transition to the low power consumption mode may be a function that can be set by the user, or the transition to the low power consumption mode may be automatically performed when specific conditions are met.

なお、実施の形態1の場合の尚書き(※1)〜(※7)は本実施の形態3にも該当する。   Note that the notes (* 1) to (* 7) in the first embodiment also correspond to the third embodiment.

本実施の形態が適用される他のモバイル端末としては、バッテリ駆動され、携帯して持ち運び可能な携帯装置で、具体的には、携帯電話機、PHS(Personal Handy-phone System)、PDA(Personal Digital Assistant)、携帯ゲーム機、その他ノートパソコンなどがある。また、モバイル端末上で動作するタスクについては、通話機能、メール機能、インターネット機能、ゲーム機能、TV電話機能、TV視聴機能、TV録画機能、写真撮影機能、動画撮影機能、音楽再生機能、その他各種のアプリケーションが挙げられる。   Other mobile terminals to which this embodiment is applied are battery-powered portable devices that can be carried around. Specifically, cellular phones, PHS (Personal Handy-phone System), PDA (Personal Digital) Assistant), portable game consoles, and other notebook computers. For tasks that run on mobile terminals, call functions, mail functions, Internet functions, game functions, TV phone functions, TV viewing functions, TV recording functions, photo shooting functions, video shooting functions, music playback functions, and various other functions Application.

上記の実施の形態では、本発明をマルチプロセッサシステムおよびデジタルスチルカメラのCPUに適用する場合を示したが、本発明はこれらの実施の形態に限定されるものではない。本発明は、上記マルチプロセッサシステムを含む集積回路として実現したり、コンピュータを上記マルチプロセッサとして機能させるプログラムとして実現することもできる。そして、これらのプログラムは、CD−ROM等の記録媒体やインターネット等の通信媒体を介して配信してもよい。   In the above embodiments, the case where the present invention is applied to the CPU of a multiprocessor system and a digital still camera has been described. However, the present invention is not limited to these embodiments. The present invention can be realized as an integrated circuit including the multiprocessor system, or as a program that causes a computer to function as the multiprocessor. These programs may be distributed via a recording medium such as a CD-ROM or a communication medium such as the Internet.

本発明の、性能保証タスクと性能非保証タスクとが混在するマルチプロセッサシステムにおける省電力制御装置は、リアルタイム性を保証しながら消費電力を効果的に削減するための技術として有用である。また、デジタルスチルカメラなどのモバイル端末としても優れたものである。   The power saving control device in a multiprocessor system in which performance guarantee tasks and performance non-guaranteed tasks coexist according to the present invention is useful as a technique for effectively reducing power consumption while guaranteeing real-time performance. It is also excellent as a mobile terminal such as a digital still camera.

E1 割り当て制御手段
E2 動作状態制御手段
P1〜P4 プロセッサ
T1〜T8 タスク
a1 リアルタイムフラグ情報
a2 リアルタイム性能情報
a3 処理性能情報
a4 使用資源情報
α 性能保証タスク
β 性能非保証タスク
1 CPU
2 ROM
3 RAM
4 クロック制御手段
5 周辺デバイス
6 バス
10 オペレーティングシステム(OS)
20 タスク管理情報
30 デジタルスチルカメラ
40 CPU
51 キー操作部
52 タイマ部
53 カメラ部
54 オーディオ部
55 USBインターフェース部
E1 Allocation control means E2 Operation state control means P1-P4 Processor T1-T8 Task a1 Real-time flag information a2 Real-time performance information a3 Processing performance information a4 Used resource information α Performance assurance task β Performance non-guaranteed task 1 CPU
2 ROM
3 RAM
4 Clock control means 5 Peripheral device 6 Bus 10 Operating system (OS)
20 Task management information 30 Digital still camera 40 CPU
51 Key operation section 52 Timer section 53 Camera section 54 Audio section 55 USB interface section

Claims (22)

複数のタスクを分散処理する複数のプロセッサを備えるとともに、性能保証タスクと性能非保証タスクとが混在するマルチプロセッサシステムにおいて、
各プロセッサに割り当てられるべき各性能保証タスクの処理性能値のそれぞれと、各性能保証タスクが必要とするリアルタイム性能時間を加味したプロセッサの処理能力値のそれぞれとの相関関係に基づいて、使用プロセッサ数が最小限となるように、前記各性能保証タスクの前記各プロセッサへの割り当ての制御を行う割り当て制御手段と、
前記割り当て制御手段による割り当ての結果、前記性能保証タスクの割り当てが解消された不使用プロセッサの動作状態に対して省電力状態を適用する動作状態制御手段とを備えるマルチプロセッサシステムにおける省電力制御装置。
In a multiprocessor system that has multiple processors that distribute and process multiple tasks, and that includes both performance guarantee tasks and non-performance guarantee tasks,
The number of processors used based on the correlation between the processing performance value of each performance assurance task to be assigned to each processor and the processing capacity value of the processor taking into account the real-time performance time required by each performance assurance task Assignment control means for controlling the assignment of each performance assurance task to each processor,
A power saving control apparatus in a multiprocessor system, comprising: an operation state control means for applying a power saving state to an operation state of an unused processor whose assignment of the performance guarantee task has been eliminated as a result of assignment by the assignment control means.
前記割り当て制御手段は、前記性能保証タスクの他のプロセッサへの再割り当てが可能であるか否かを判断し、可能であるときに再割り当てを行うように構成されている請求項1に記載のマルチプロセッサシステムにおける省電力制御装置。   2. The allocation control unit according to claim 1, wherein the allocation control unit is configured to determine whether or not the performance guarantee task can be reassigned to another processor, and to perform the reassignment when it is possible. A power-saving control device in a multiprocessor system. 前記割り当て制御手段は、判断対象の性能保証タスクの処理性能値を他のプロセッサの余力性能と比較し、前記判断対象の性能保証タスクの処理性能値が他のプロセッサの余力性能以下のときにその判断対象の性能保証タスクを余力のある他のプロセッサに再割り当てするように構成されている請求項2に記載のマルチプロセッサシステムにおける省電力制御装置。   The allocation control means compares the processing performance value of the performance assurance task to be determined with the remaining performance of another processor, and when the processing performance value of the performance assurance task to be determined is equal to or less than the remaining performance of another processor 3. The power saving control device in a multiprocessor system according to claim 2, wherein the performance guarantee task to be determined is reassigned to another processor having a surplus capacity. 前記プロセッサの処理能力値は、当該プロセッサの単位時間当たりの処理能力に、前記性能保証タスクのリアルタイム性能時間を乗算したものである請求項1から請求項3までのいずれかに記載のマルチプロセッサシステムにおける省電力制御装置。   4. The multiprocessor system according to claim 1, wherein the processing capacity value of the processor is obtained by multiplying the processing capacity per unit time of the processor by the real-time performance time of the performance guarantee task. Power-saving control device. 前記プロセッサの余力性能は、前記性能保証タスクのリアルタイム性能時間を加味した前記プロセッサの処理能力値から、当該プロセッサにすでに割り当て済みの性能保証タスクの処理性能値の総和を減算したものである請求項3または請求項4に記載のマルチプロセッサシステムにおける省電力制御装置。   The surplus performance of the processor is obtained by subtracting the sum of the processing performance values of the performance assurance tasks already assigned to the processor from the processing capacity value of the processor taking into account the real-time performance time of the performance assurance task. A power saving control device in a multiprocessor system according to claim 3 or 5. 前記割り当て制御手段は、前記再割り当てのための性能保証タスクのプロセッサ間移動を最小限とするように構成されている請求項1から請求項5までのいずれかに記載のマルチプロセッサシステムにおける省電力制御装置。   The power saving in the multiprocessor system according to any one of claims 1 to 5, wherein the allocation control unit is configured to minimize the movement of the performance guarantee task for the reallocation between processors. Control device. 前記割り当て制御手段は、前記性能保証タスクの他のプロセッサへの再割り当てに際して、前記性能保証タスクが使用する資源のプロセッサ間競合が最小限となることを優先して再割り当てを行うように構成されている請求項2から請求項6までのいずれかに記載のマルチプロセッサシステムにおける省電力制御装置。   The allocation control unit is configured to perform the reassignment with priority given to minimizing contention between processors of resources used by the performance guarantee task when the performance guarantee task is reassigned to another processor. The power saving control device in the multiprocessor system according to any one of claims 2 to 6. 前記割り当て制御手段は、シーケンス的に処理する必要のある性能保証タスク群を優先して同一のプロセッサへ再割り当てするように構成されている請求項2から請求項6までのいずれかに記載のマルチプロセッサシステムにおける省電力制御装置。   The multi-assignment according to any one of claims 2 to 6, wherein the assignment control unit is configured to pre-assign a performance guarantee task group that needs to be processed in a sequential manner to the same processor. A power saving control device in a processor system. 前記割り当て制御手段は、前記性能保証タスクの再割り当てを行った後に前記性能非保証タスクのプロセッサ間での再割り当てを行う場合に、前記性能保証タスクの再割り当てが行われた前記プロセッサに対しては前記性能非保証タスクの再割り当てを禁止する状態で再割り当てを行うように構成されている請求項1から請求項8までのいずれかに記載のマルチプロセッサシステムにおける省電力制御装置。   The assignment control means, when reassigning the performance non-guaranteed task between processors after reassigning the performance guarantee task, to the processor on which the performance guarantee task has been reassigned 9. The power saving control apparatus in a multiprocessor system according to claim 1, wherein reassignment is performed in a state in which reassignment of the performance non-guaranteed task is prohibited. 前記動作状態制御手段は、性能保証タスクの割り当てが解消された不使用プロセッサの動作モードを変更するように構成されている請求項1から請求項9までのいずれかに記載のマルチプロセッサシステムにおける省電力制御装置。   The multiprocessor system according to any one of claims 1 to 9, wherein the operation state control means is configured to change an operation mode of an unused processor in which assignment of a performance guarantee task has been canceled. Power control device. 前記性能保証タスクの割り当てが解消された不使用プロセッサの動作モードを変更するとは、前記不使用プロセッサへのクロック供給を停止することである請求項10に記載のマルチプロセッサシステムにおける省電力制御装置。   11. The power saving control device in a multiprocessor system according to claim 10, wherein changing the operation mode of the unused processor for which the assignment of the performance guarantee task has been canceled is stopping the clock supply to the unused processor. 前記動作状態制御手段は、性能保証タスクの割り当てが確定された使用プロセッサの動作モードを変更するように構成されている請求項1から請求項9までのいずれかに記載のマルチプロセッサシステムにおける省電力制御装置。   The power saving in the multiprocessor system according to any one of claims 1 to 9, wherein the operation state control means is configured to change an operation mode of a processor in use for which assignment of a performance guarantee task is fixed. Control device. 前記性能保証タスクの割り当てが確定された使用プロセッサの動作モードを変更するとは、前記使用プロセッサの状態を低消費電力状態から通常動作状態へ変更すること、または、通常動作状態から高速動作状態へ変更することである請求項12に記載のマルチプロセッサシステムにおける省電力制御装置。   Changing the operating mode of the processor in use for which the assignment of the performance guarantee task is fixed means changing the state of the processor to be used from the low power consumption state to the normal operation state or from the normal operation state to the high speed operation state. The power saving control device in the multiprocessor system according to claim 12, wherein 前記動作状態制御手段は、メモリのプロセッサへの割り当てを動的に変更するように構成されている請求項1から請求項13までのいずれかに記載のマルチプロセッサシステムにおける省電力制御装置。   The power-saving control device in a multiprocessor system according to any one of claims 1 to 13, wherein the operation state control means is configured to dynamically change allocation of a memory to a processor. 前記メモリのプロセッサへの割り当てを動的に変更するとは、不使用プロセッサに割り当てられていたメモリを使用プロセッサへ再割り当てすることである請求項14に記載のマルチプロセッサシステムにおける省電力制御装置。   15. The power saving control apparatus in a multiprocessor system according to claim 14, wherein dynamically changing the allocation of the memory to the processor is to reallocate the memory allocated to the unused processor to the used processor. 前記動作状態制御手段は、スヌーピング機能を備えたキャッシュのスヌープモードを変更するように構成されている請求項1から請求項15までのいずれかに記載のマルチプロセッサシステムにおける省電力制御装置。   The power saving control device in a multiprocessor system according to any one of claims 1 to 15, wherein the operation state control means is configured to change a snoop mode of a cache having a snooping function. 前記スヌーピング機能を備えたキャッシュのスヌープモードを変更するとは、前記不使用プロセッサのキャッシュのスヌープモードを停止させることである請求項16に記載のマルチプロセッサシステムにおける省電力制御装置。   17. The power saving control device in a multiprocessor system according to claim 16, wherein changing the snoop mode of the cache having the snooping function is to stop the cache snoop mode of the unused processor. 前記動作状態制御手段は、前記割り当て制御手段による割り当ての結果、前記性能保証タスクの割り当てが解消された不使用プロセッサに代えて、または不使用プロセッサとともに、周辺デバイスの動作状態の変更を行うように構成されている請求項1から請求項17までのいずれかに記載のマルチプロセッサシステムにおける省電力制御装置。   The operation state control unit changes the operation state of the peripheral device in place of or together with the unused processor in which the allocation of the performance guarantee task is canceled as a result of the allocation by the allocation control unit. The power saving control device in the multiprocessor system according to any one of claims 1 to 17, wherein the power saving control device is configured. 請求項1から請求項18までのいずれかに記載のマルチプロセッサシステムにおける省電力制御装置を搭載するモバイル端末。   A mobile terminal equipped with the power saving control device in the multiprocessor system according to any one of claims 1 to 18. 通常動作状態で動作させる通常動作モードと低消費電力状態で動作させる低消費電力モードを備え、前記割り当て制御手段と前記動作状態制御手段は、前記低消費電力モードの場合においてのみ起動されるように構成されている請求項19に記載のモバイル端末。   A normal operation mode that operates in a normal operation state and a low power consumption mode that operates in a low power consumption state are provided, and the allocation control unit and the operation state control unit are activated only in the case of the low power consumption mode. The mobile terminal according to claim 19, which is configured. 前記通常動作モードと前記低消費電力モードとは、ユーザが設定可能であるように構成されている請求項20に記載のモバイル端末。   The mobile terminal according to claim 20, wherein a user can set the normal operation mode and the low power consumption mode. 前記通常動作モードと前記低消費電力モードとは、バッテリの残電力量が一定以下となった場合に切り替わるように構成されている請求項20に記載のモバイル端末。   The mobile terminal according to claim 20, wherein the normal operation mode and the low power consumption mode are configured to be switched when the remaining power amount of the battery becomes equal to or less than a certain level.
JP2009128667A 2009-05-28 2009-05-28 Power saving control device for multiprocessor system, and mobile terminal Pending JP2010277300A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009128667A JP2010277300A (en) 2009-05-28 2009-05-28 Power saving control device for multiprocessor system, and mobile terminal
PCT/JP2010/002884 WO2010137233A1 (en) 2009-05-28 2010-04-21 Power saving control device for multiprocessor system, and mobile terminal

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009128667A JP2010277300A (en) 2009-05-28 2009-05-28 Power saving control device for multiprocessor system, and mobile terminal

Publications (1)

Publication Number Publication Date
JP2010277300A true JP2010277300A (en) 2010-12-09

Family

ID=43222365

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009128667A Pending JP2010277300A (en) 2009-05-28 2009-05-28 Power saving control device for multiprocessor system, and mobile terminal

Country Status (2)

Country Link
JP (1) JP2010277300A (en)
WO (1) WO2010137233A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013018184A1 (en) * 2011-07-29 2013-02-07 富士通株式会社 Allocation method, and multi-core processor system
KR101856750B1 (en) 2017-02-17 2018-05-10 성균관대학교산학협력단 Apparatus, method and computer readable recording medium for performing load balancing considering characteristic of turbo mode

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5783259B2 (en) * 2011-09-16 2015-09-24 富士通株式会社 Computer system
CN107132903B (en) * 2016-02-29 2020-11-13 中兴通讯股份有限公司 Energy-saving management implementation method, device and network equipment
CN108121433B (en) * 2017-12-06 2021-10-15 中国航空工业集团公司西安航空计算技术研究所 Task scheduling method of GPU (graphics processing Unit) multiprocessor system

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10161985A (en) * 1996-11-28 1998-06-19 Hitachi Ltd Processor allocating method, and multiprocessor computer system
JPH11202988A (en) * 1998-01-13 1999-07-30 Hitachi Ltd System power consumption control method
JP2002099435A (en) * 2000-09-21 2002-04-05 Toshiba Corp Control method of multi-task and information processor
US20050228967A1 (en) * 2004-03-16 2005-10-13 Sony Computer Entertainment Inc. Methods and apparatus for reducing power dissipation in a multi-processor system
US7451333B2 (en) * 2004-09-03 2008-11-11 Intel Corporation Coordinating idle state transitions in multi-core processors

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013018184A1 (en) * 2011-07-29 2013-02-07 富士通株式会社 Allocation method, and multi-core processor system
JPWO2013018184A1 (en) * 2011-07-29 2015-03-02 富士通株式会社 Allocation method and multi-core processor system
US9189279B2 (en) 2011-07-29 2015-11-17 Fujitsu Limited Assignment method and multi-core processor system
KR101856750B1 (en) 2017-02-17 2018-05-10 성균관대학교산학협력단 Apparatus, method and computer readable recording medium for performing load balancing considering characteristic of turbo mode

Also Published As

Publication number Publication date
WO2010137233A1 (en) 2010-12-02

Similar Documents

Publication Publication Date Title
US8296773B2 (en) Systems and methods for thread assignment and core turn-off for integrated circuit energy efficiency and high-performance
JP5922778B2 (en) System and method for managing the generation of thermal energy in a heterogeneous multi-core processor
US8032891B2 (en) Energy-aware scheduling of application execution
Kwon et al. Optimal voltage allocation techniques for dynamically variable voltage processors
JP6483609B2 (en) Multi CPU system
Seo et al. Energy efficient scheduling of real-time tasks on multicore processors
JP5324934B2 (en) Information processing apparatus and information processing method
Jejurikar et al. Procrastination scheduling in fixed priority real-time systems
US20070204268A1 (en) Methods and systems for scheduling processes in a multi-core processor environment
Bhuiyan et al. Energy-efficient parallel real-time scheduling on clustered multi-core
JP2009140157A (en) Virtual computer system and control method for virtual computer and program
KR20130004502A (en) System and method of executing threads at a processor
Raghunathan et al. Adaptive power-fidelity in energy-aware wireless embedded systems
JP2010277300A (en) Power saving control device for multiprocessor system, and mobile terminal
Zeng et al. Practical energy-aware scheduling for real-time multiprocessor systems
Tong et al. Supporting soft real-time sporadic task systems on uniform heterogeneous multiprocessors with no utilization loss
Kumar et al. A green SLA constrained scheduling algorithm for parallel/scientific applications in heterogeneous cluster systems
US20170255246A1 (en) Reducing Power by Vacating Subsets of CPUs and Memory
El Ghor et al. Energy efficient scheduler of aperiodic jobs for real-time embedded systems
Kuo et al. Task assignment with energy efficiency considerations for non-DVS heterogeneous multiprocessor systems
Funk et al. A global optimal scheduling algorithm for multiprocessor low-power platforms
Lee et al. Voltage-clock scaling for low energy consumption in fixed-priority real-time systems
US20070136615A1 (en) System and method for reducing power used to execute application program
Cho et al. A high performance load balance strategy for real‐time multicore systems
Huang et al. Leakage-aware reallocation for periodic real-time tasks on multicore processors