JP3910422B2 - Management apparatus and management method - Google Patents

Management apparatus and management method Download PDF

Info

Publication number
JP3910422B2
JP3910422B2 JP2001363898A JP2001363898A JP3910422B2 JP 3910422 B2 JP3910422 B2 JP 3910422B2 JP 2001363898 A JP2001363898 A JP 2001363898A JP 2001363898 A JP2001363898 A JP 2001363898A JP 3910422 B2 JP3910422 B2 JP 3910422B2
Authority
JP
Japan
Prior art keywords
execution
program
interrupt
unit
selection
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.)
Expired - Fee Related
Application number
JP2001363898A
Other languages
Japanese (ja)
Other versions
JP2003167750A (en
Inventor
仁志 石田
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2001363898A priority Critical patent/JP3910422B2/en
Publication of JP2003167750A publication Critical patent/JP2003167750A/en
Application granted granted Critical
Publication of JP3910422B2 publication Critical patent/JP3910422B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • 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

Description

【0001】
【発明の属する技術分野】
この発明は、システムの処理速度を低下させることなくシステムの消費電力を抑えて、プログラムを実行する処理システムに関するものである。
【0002】
【従来の技術】
図10は、例えば特開平7−141074号に記載されたブロック図である。
図において、601は半導体集積回路、602は主電源端子612で受け取った電源を電源分配制御信号に従って対応する各機能ブロック604〜611に分配する電源制御部、603は電源分配制御信号が設定される電源制御レジスタ、604〜611は機能ブロック、612は主電源端子である。
【0003】
次に動作について説明する。
電源制御部602は主電源端子612に供給された電源を、電源制御レジスタ603に設定された電源分配制御信号に従って指定された機能ブロック604〜611に分配する。例えば、電源制御レジスタの“1”は対応する機能ブロックへの電源供給を、“0”は対応する機能ブロックへの電源無供給をそれぞれ示す。
【0004】
【発明が解決しようとする課題】
従来の処理システムは、低消費電力を図るための回路を備えているが同回路を制御するための処理手順が特定されていない。
【0005】
この発明は、低消費電力を図るための回路をスケジューラで制御することにより、システムの処理速度を低下させることなく低消費電力化を図ることを目的とする。
【0006】
【課題を解決するための手段】
本発明に係る管理装置は、
複数のプログラム実行装置に接続され、前記複数のプログラム実行装置を管理する管理装置であって、
プログラム実行装置によるプログラム実行の対象となる実行対象プログラムを入力する入力部と、
前記実行対象プログラムの実行中の割込みが可能か否かを判断する割込み可否判断部と、
前記複数のプログラム実行装置の中から、前記実行対象プログラムを実行するプログラム実行装置を選択プログラム実行装置として選択する選択部と、
前記選択プログラム実行装置に前記実行対象プログラムの実行を開始させるとともに、前記割込み可否判断部が前記実行対象プログラムについて割込み不可と判断した場合に、前記選択プログラム実行装置以外の他のプログラム実行装置の稼動を停止させる稼動制御部とを有することを特徴とする。
【0007】
前記稼動制御部は、前記割込み可否判断部が前記実行対象プログラムについて割込み可能と判断した場合に、前記選択プログラム実行装置以外の他のプログラム実行装置の稼動を停止させないことを特徴とする。
【0008】
前記管理装置は、前記複数のプログラム実行装置がプログラム実行時に使用する複数のレジスタ装置を管理し、
前記選択部は、前記選択プログラム実行装置を選択するとともに、前記複数のレジスタ装置の中から、前記選択プログラム実行装置が使用するレジスタ装置を選択レジスタ装置として選択し、
前記稼動制御部は、前記割込み可否判断部により割込み不可と判断された場合に、前記選択レジスタ装置以外の他のレジスタ装置の稼動を停止させることを特徴とする。
【0009】
前記管理装置は、更に、前記選択プログラム実行装置による前記実行対象プログラムの実行状況を監視し、前記実行対象プログラムの実行中に発生した割込み要求を検出する割込み要求検出部を有し、
前記選択プログラム実行装置による実行後に前記実行対象プログラムが再度前記入力部により入力された場合に、前記割込み可否判断部は、前記実行対象プログラムの実行中に前記割込み要求検出部により割込み要求が検出されたか否かに基づき前記実行対象プログラムの実行中の割込みが可能か否かを判断することを特徴とする。
【0010】
前記選択部は、前記割込み可否判断部が前記実行対象プログラムについて割込み不可と判断した場合に、前記選択プログラム実行装置による前記実行対象プログラムの実行開始時期と実行終了時期を決定し、
前記稼動制御部は、前記実行開始時期に前記選択プログラム実行装置に前記実行対象プログラムの実行を開始させ、前記実行終了時期に前記選択プログラム実行装置の稼動を停止させることを特徴とする。
【0011】
前記選択部は、前記割込み可否判断部が前記実行対象プログラムについて割込み不可と判断した場合に、前記選択プログラム実行装置による前記実行対象プログラムの実行開始時期と実行終了時期とを決定し、前記実行開始時期に、前記選択プログラム実行装置による前記実行対象プログラムの実行開始を指示する開始指示を出力し、前記実行終了時期に、前記選択プログラム実行装置の稼動停止を指示する停止指示を出力し、
前記稼動制御部は、前記開始指示に従って前記選択プログラム実行装置に前記実行対象プログラムの実行を開始させ、前記停止指示に従って前記選択プログラム実行装置の稼動を停止させることを特徴とする。
【0012】
本発明に係る管理方法は、
複数のプログラム実行装置を管理する管理方法であって、
プログラム実行装置によるプログラム実行の対象となる実行対象プログラムを入力する入力ステップと、
前記実行対象プログラムの実行中の割込みが可能か否かを判断する割込み可否判断ステップと、
前記複数のプログラム実行装置の中から、前記実行対象プログラムを実行するプログラム実行装置を選択プログラム実行装置として選択する選択ステップと、前記選択プログラム実行装置に前記実行対象プログラムの実行を開始させるとともに、前記割込み可否判断ステップにより前記実行対象プログラムについて割込み不可と判断された場合に、前記選択プログラム実行装置以外の他のプログラム実行装置の稼動を停止させる稼動制御ステップとを有することを特徴とする。
【0013】
【発明の実施の形態】
実施の形態1.
図1は本実施の形態の処理システムの構成を示す構成図である。
図において、101は処理待ちのプログラム情報を格納した管理テーブル、102は実行するプログラムコード、103はプログラム実行単位の実行順序を制御するスケジューラ、104は演算処理に使用するデータを格納するレジスタファイル(レジスタ群)、105〜107はプログラムコードを実行する実行ユニット(例えば、加算器や乗算器など)、108は各実行ユニットの稼動/停止を制御する制御信号である。
管理テーブル101は、スケジューリング対象となるプログラム実行単位と、該プログラム実行単位が含まれるプログラム及び該プログラム実行単位を実行する際の割込みモードを格納する。
なお、各プログラム実行単位ごとのプログラムは、繰り返し実行されるものとし、スケジューラ103では、プログラムコード102が入力されるたびに、管理テーブル101の情報を参照して該当するプログラム実行単位について割込みモードを判断する。
ここで、スケジューラ103は、管理装置に相当し、各実行ユニット105〜107は、プログラム実行装置に相当し、レジスタファイル104は複数のレジスタ装置に相当する。
また、プログラムコード102は、複数のプログラム実行単位より構成される。スケジューラ103に入力されるプログラムコード102内の各プログラム実行単位ごとのプログラムが実行対象プログラムに相当する。
【0014】
図2は、スケジューラ103の内部構成を示す図である。
図において、1はプログラムコード102を入力する入力部である。2は、入力部1で入力されたプログラムコード102についてプログラム実行単位ごとに管理テーブル101の情報を参照して割込みモードを判断する割込み可否判断部である。3は、プログラム実行単位ごとに実行ユニット105〜107を選択する選択部である。なお、選択部3により選択された実行ユニットは、選択プログラム実行装置に相当する。4は、所定の場合に、制御信号108を出力して実行ユニット及びレジスタファイルの稼動/停止を制御する稼動制御部である。
【0015】
図3は、スケジューラ103等の動作を示すフローチャートである。
図において、S201は割込み可能モードか否かを判定するステップ、S202はペンディングしている割込みがあるか否かを判定するステップ、S203は割込み処理を実行するステップ、S204は使用する実行ユニットを解析するステップ、S205はプログラムを実行するステップ、S206はプログラムの終了を判定するステップ、S207は使用する実行ユニットを解析するステップ、S208は使用しない実行ユニットを停止するステップ、S209はプログラムを実行するステップ、S210は全実行ユニットを稼動させるステップである。
【0016】
次に図3のフローチャートを用いて動作について説明する。
スケジューラ103では、入力部1がプログラムコード102を受け付けると、割込み可否判断部2が管理テーブル101の情報を参照してそれぞれのプログラム実行単位について割込み可能モードか否かを判断する(S201)。
割込み可否判断部2は、割込み可能モードであればペンディングされている割込みがあるか否かをチェックし(S202)、割込みがある場合は選択部3が割込み処理を行う実行ユニットを選択し、稼動制御部4が制御信号を出力して割込み処理を担当する実行ユニットに割込み処理を実行させる(S203)。
割込み処理を実行後、プログラム実行単位ごとにプログラム内容を解析し、実行ユニットを選択し(S204)、受け付けたプログラムコード102をプログラム実行単位ごとに実行ユニット105〜107並びにレジスタファイル104を使用して実行する(S205)。
具体的には、選択部3が、プログラム実行単位ごとにプログラム内容を解析し、解析結果に基づいて実行ユニットを選択し、稼動制御部4が選択された実行ユニットに制御信号を出力して各プログラム実行単位について実行処理を行わせる。
次に、プログラム実行後プログラム終了か否かをチェックし(S206)、終了でなければ次のプログラムコード102を受け付ける。
S201で割込み不可モードの場合、選択部3はプログラム実行単位ごとに使用する実行ユニットを解析する(S207)。具体的には、プログラム実行単位に含まれる命令コード、レジスタ番地を解析し、使用する実行ユニットとレジスタを選択する。
選択結果から稼動制御部4は、制御信号108を用いて使用しない実行ユニットやレジスタを停止させる(S208)。停止させる方法は特定しないが、例えばクロックの供給を停止する、又は電力の供給を停止するといった方法でもよい。
さらに、S209で、稼動制御部4は、選択された実行ユニットに制御信号108を出力して各プログラム実行単位ごとにプログラムの実行を開始させる。
また、稼動制御部4は、各プログラム実行単位ごとにプログラムが実行された後、制御信号108を使用して停止していた実行ユニット105〜107やレジスタファイル104を稼動させる(S210)。
プログラム実行後プログラム終了か否かをチェックし(S206)、終了でなければ次のプログラムコード102を受け付ける。
【0017】
以上のように、スケジューラが使用しない実行ユニットを停止するようにしているので、無駄な電力を消費する必要がなく、システム全体の消費電力を低減することができる。
【0018】
実施の形態2.
以上の実施の形態1では、プログラム実行単位の割込みモードはスケジューリング時固定であるが、次に動的にモードを変更する実施の形態を示す。
図4は、本実施の形態の処理システムの構成を示す構成図である。
図において、図1と同一の符号は同一又は相当の部分を示す。
301は処理待ちのプログラム情報を格納した管理テーブルである。管理テーブル301では、実施の形態1で示した管理テーブル101と比較して、割込み要求の有無の実績を示す項目が追加されている点が異なる。
302は、プログラム実行単位の実行順序を制御するスケジューラである。
【0019】
図5は、本実施の形態に係るスケジューラ302の内部構成を示す図である。
入力部1、割込み可否判断部2、選択部3、稼動制御部4は実施の形態1で示したものと同様である。本実施の形態では、実施の形態1のスケジューラ103に割込み要求監視部5が追加されている構成となっている。
割込み要求監視部5は、各プログラム実行単位ごとにプログラム実行中に割込み要求が発生するか否かを監視し、監視結果を管理テーブル301に書き込む。
【0020】
次に動作について説明する。
スケジューラ302では、入力部1がプログラムコード102を受け付けると、割込み可否判断部2が管理テーブル301の情報を参照して、プログラム実行単位が割込み可能モードか否かを判断する(S201)。その際、割込みモードと割込み有無が異なる場合は、割込み有無の設定にしたがって割込みモードを選択する。前述したように、各プログラム実行単位のプログラムは繰り返し実行されるため、入力部に入力されたプログラムコード102内のプログラム実行単位が過去に実行されたものであれば、管理テーブル301に前回の実行時の割込み要求の有無が記録されている。図4の例では、プログラム実行単位A1は割込みモードが可であるが割込み有無が無なので、割込み不可と判断し、プログラム実行単位A2は割込みモードが不可であるが割込み有無が有なので、割込み可能と判断し、プログラム実行単位A3は割込みモードが不可で割込み有無が無なので、割込み不可と判断する。つまり、割込み有無で有となっていれば割込み可能と判断し、無となっていれば割込み不可と判断する。
次に、割込み可否判断部2により割込み可能と判断された場合は、ペンディングされている割込みがあるか否かをチェックし(S202)、割込みがある場合は割込み処理を実行する(S203)。割込み処理を実行後、使用実行ユニットの解析を行い(S204)、受け付けたプログラムコード102を実行ユニット105〜107並びにレジスタファイル104を使用して実行する(S205)。
ここで、割込み要求監視部5は、実行ユニットによるプログラム実行単位の実行中に割込み要求が発生するか否かを監視し、プログラム実行後、割込み要求の有無を管理テーブル301に書き込む。その後プログラム終了か否かをチェックし(S206)、終了でなければ次のプログラムコード102を受け付ける。
一方、割込み可否判断部2により割込み不可と判断された場合、選択部3がプログラム実行単位ごとに使用する実行ユニットを解析する(S207)。具体的には、プログラム実行単位に含まれる命令コード、レジスタ番地から使用する実行ユニットとレジスタを選択する。選択結果から稼動制御部4は、制御信号108を用いて使用しない実行ユニットやレジスタを停止させる。
次に稼動制御部4は、選択された実行ユニットに制御信号108を出力して各プログラム実行単位ごとにプログラムの実行を開始させる(S209)。
ここで、割込み要求監視部5は、実行ユニットによるプログラムの実行中に割込み要求が発生するか否かを監視し、プログラム実行後、割込み要求の有無を管理テーブル301に書き込む。
プログラムの実行後、稼動制御部4は、制御信号108を使用して停止していた実行ユニット105〜107やレジスタファイル104を稼動させる(S210)。
その後プログラム終了か否かをチェックし(S206)、終了でなければ次のプログラムコード102を受け付ける。
【0021】
以上のように、管理テーブル301に最新の割込み発生情報を格納するようにしたため、プログラム実行中に実働に即した割込みモードの設定が可能となり、システム性能を低下させることなくシステム全体の消費電力を低減することができる。
【0022】
実施の形態3.
図6は、本実施の形態の処理システムの構成を示す構成図である。
図において、図1と同一の符号は同一又は相当の部分を示す。401はプログラム実行単位の実行順序を制御するスケジューラ、402はタイマの設定値を保持するタイマレジスタ、403はタイマ、404は実行ユニットの稼動/停止を制御する実行ユニット制御部である。
本実施の形態では、スケジューラ401、タイマレジスタ402、タイマ403、実行ユニット制御部404を合わせたものが管理装置に相当する。
【0023】
図7は、本実施の形態に係るスケジューラ401の内部構成を示す図である。
入力部1、割込み可否判断部2、選択部3、は実施の形態1で示したものと同様である。本実施の形態では、実施の形態1で示した稼動制御部4はスケジューラの内部になく、タイマレジスタ402、タイマ403、実行ユニット制御部404が実施の形態1で示した稼動制御部4の役割を果たす。
また、本実施の形態では、選択部3は、プログラム実行単位ごとに使用する実行ユニットを決定するだけでなく、実行ユニットにおける稼動時間(実行開始時期、実行終了時期)を設定する。
【0024】
次に動作について説明する。
スケジューラ401では、入力部1がプログラムコード102を受け付けると、割込み可否判断部2が管理テーブル101の情報を参照して、プログラム実行単位が割込み可能モードか否かを判断する(S201)。
割込み可能モードの場合は、実施の形態1で説明した割込み可能モードの処理手順(S202〜S206)と同様の処理を行う。
割込み不可モードの場合、スケジューラ401の選択部3はプログラム実行単位ごとに使用する実行ユニットを解析する(S207)。具体的には、プログラム実行単位に含まれる命令コード、レジスタ番地から使用する実行ユニットとレジスタを選択する。また、選択部3は、各プログラム実行単位の実行の際に使用する実行ユニットの稼動時間(実行開始時期と実行終了時期)をタイマレジスタ402に設定する。
設定される時間は、タイマ403が起動されてから実行ユニットが稼動する相対時間である。実行ユニット制御部404は、タイマレジスタ402とタイマ403の値にしたがって該当する実行ユニット105〜107とレジスタファイル104の稼動/停止を制御する(S209)。すなわち、実行ユニット制御部404は、実行開始時期に、該当する実行ユニットにプログラム実行処理の開始を指示する制御信号を出力し、実行終了時期に、該当する実行ユニットに稼動停止を指示する制御信号を出力して稼動を停止させる。また、実施の形態1で示したのと同様に、実行ユニット制御部404はプログラム実行単位の実行に先立ち、又は実行と同時に、プログラム実行単位の実行に使用しない実行ユニット及びレジスタファイルに制御信号を出力して、これら実行ユニット、レジスタファイルの稼動を停止させておく(S208)。
その後、プログラムの実行後(S209)、全実行ユニットを稼動させた後(S210)、プログラム終了か否かをチェックし(S206)、終了でなければ次のプログラムコード102を受け付ける。
【0025】
以上のように、スケジューラ401が各実行ユニットの稼動/停止時間を設定し、実行ユニット制御部404が同設定値にしたがって実行ユニットを制御するようにしているので、使用しない実行ユニットを停止でき、システム全体の消費電力低減できる。
【0026】
実施の形態4.
図8は本実施の形態の処理システムの構成を示す構成図である。
図において、図1及び図6と同一の符号は同一又は相当の部分を示す。501はプログラム実行単位の実行順序を制御するスケジューラ、502は実行ユニット制御部の設定値を保持する設定レジスタである。
本実施の形態では、スケジューラ501、設定レジスタ502、実行ユニット制御部404を合わせたものが管理装置に相当する。
【0027】
図9は、本実施の形態に係るスケジューラ501の内部構成を示す図である。
入力部1、割込み可否判断部2、選択部3は実施の形態1で示したものと同様である。但し、選択部3は、プログラム実行単位ごとに使用する実行ユニットを決定するだけでなく、実行ユニットにおける稼動時間(実行開始時期、実行終了時期)を設定する。
また、6はタイマレジスタであり、7はタイマである。タイマレジスタ6は、選択部3により設定された稼動時間(実行開始時期、実行終了時期)を記憶する。
また、本実施の形態では、実施の形態1で示した稼動制御部4はスケジューラの内部になく、設定レジスタ502、実行ユニット制御部404が実施の形態1で示した稼動制御部4の役割を果たす。
【0028】
次に動作について説明する。
スケジューラ501では、入力部1がプログラムコード102を受け付けると、割込み可否判断部2が管理テーブル101の情報を参照して、プログラム実行単位が割込み可能モードか否かを判断する(S201)。
割込み可能モードの場合は、実施の形態1で説明した割込み可能モードの処理手順(S202〜S206)と同様の処理を行う。
割込み不可モードの場合、スケジューラ401の選択部3はプログラム実行単位ごとに使用する実行ユニットを解析する(S207)。具体的には、プログラム実行単位に含まれる命令コード、レジスタ番地から使用する実行ユニットとレジスタを選択する。また、選択部3は、各プログラム実行単位の実行の際に使用する実行ユニットの稼動時間(実行開始時期と実行終了時期)をタイマレジスタ6に設定する。
その後、選択部3は、タイマレジスタ6とタイマ7の値に従い、実行開始時期になると、設定レジスタ502に実行開始を指示する値(開始指示)を設定する。設定する値は、使用する実行ユニットを示す値及びその実行ユニットの稼動状態を示す値である。
実行ユニット制御部404は、設定レジスタ502の値にしたがって該当する実行ユニット105〜107とレジスタファイル104の稼動を制御する。
また、選択部3は、タイマレジスタ6とタイマ7の値に従い、実行終了時期になると、設定レジスタ502に稼動停止を指示する値(停止指示)を設定する。設定する値は、稼動を停止する実行ユニットを示す値及びその実行ユニットの稼動停止状態を示す値である。
実行ユニット制御部404は、設定レジスタ502の値にしたがって該当する実行ユニット105〜107とレジスタファイル104の稼動停止を制御する。プログラムの実行後(S209)、プログラム終了か否かをチェックし(S206)、終了でなければ次のプログラムコード102を受け付ける。
【0029】
以上のように、スケジューラ501が各実行ユニットの稼動/停止時間を設定し、実行ユニット制御部503が同設定値にしたがって実行ユニットを制御するようにしているので、使用しない実行ユニットを停止でき、システム全体の消費電力低減できる。
【0030】
以上の実施の形態1〜4では、本発明に係る管理装置について説明したが、実施の形態1〜4に示した処理と同様の処理を行うことにより、本発明に係る管理方法も実現することができる。
【0031】
ここで、実施の形態1〜4で示した処理システムの特徴を再言する。
【0032】
実施の形態1に係る処理システムは、プログラム実行単位を割込み可能モードと割込み不可モードにスケジューリングするスケジューラを備えた処理システムにおいて、割込み不可モード内にスケジューリングされたプログラム実行単位が使用する実行ユニットを解析し、同解析結果に従って各プログラム実行単位が使用していない実行ユニットを停止させるスケジューラを備えることを特徴とする。
【0033】
実施の形態2に係る処理システムは、プログラム実行中に、各プログラム実行単位の開始/完了と割込みの発生を監視し、同監視手段の結果に基づいてプログラム実行単位毎のモードへのスケジューリングを変更するスケジューラを備えることを特徴とする。
【0034】
実施の形態3に係る処理システムは、タイマ値に従って各実行ユニットの稼動/停止を制御する制御手段と、割込み不可モードで実行するプログラム実行単位の処理時間と割込み不可モード開始から各実行単位が使用する実行ユニットの稼動/停止時間を算出しタイマに設定する手段とを備えることを特徴とする。
【0035】
実施の形態4に係る処理システムは、各実行ユニットの稼動/停止を直接制御するレジスタと、プログラム実行単位を実行する際に実行ユニットを稼動し処理完了の際に実行ユニットの稼動を停止させるために同レジスタに設定値を設定する手段を備えることを特徴とする。
【0036】
【発明の効果】
以上のように、本発明によれば、割込み可否の判断にしたがって選択プログラム実行装置以外のプログラム実行装置の稼動を停止させるため、システム全体の消費電力が低減できるという効果がある。
【0037】
また、本発明によれば、プログラム実行時の割込み要求発生の有無を割込み可否の判断に反映することにより、プログラム実行の実働に沿った割込み可否の判断を行うことができ、システム性能を低下させることなく消費電力低減できるという効果がある。
【0038】
また、本発明によれば、選択プログラム実行装置による実行対象プログラムの実行開始時期と実行終了時期を決定し、実行開始時期に実行対象プログラムの実行を開始させ、実行終了時期に選択プログラム実行装置の稼動を停止させるため、選択プログラム実行装置の稼動においても消費電力の節約を図れるため、システム全体の消費電力を低減できるという効果がある。
【図面の簡単な説明】
【図1】 実施の形態1に係る処理システムの構成を示す図。
【図2】 実施の形態1に係るスケジューラの内部構成を示す図。
【図3】 実施の形態1に係るスケジューラ等の処理を示すフローチャート図。
【図4】 実施の形態2に係る処理システムの構成を示す図。
【図5】 実施の形態2に係るスケジューラの内部構成を示す図。
【図6】 実施の形態3に係る処理システムの構成を示す図。
【図7】 実施の形態3に係るスケジューラの内部構成を示す図。
【図8】 実施の形態4に係る処理システムの構成を示す図。
【図9】 実施の形態4に係るスケジューラの内部構成を示す図。
【図10】 従来の処理システムの構成を示す図。
【符号の説明】
1 入力部、2 割込み可否判断部、3 選択部、4 稼動制御部、5 割込み要求監視部、6 タイマレジスタ、7 タイマ、101 管理テーブル、102 プログラムコード、103 スケジューラ、104 レジスタファイル、105 実行ユニット、106 実行ユニット、107 実行ユニット、108 制御信号、301 管理テーブル、302 スケジューラ、401 スケジューラ、402 タイマレジスタ、403 タイマ、404 実行ユニット制御部、501 スケジューラ、502 設定レジスタ。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a processing system that executes a program while suppressing power consumption of the system without reducing the processing speed of the system.
[0002]
[Prior art]
FIG. 10 is a block diagram described in, for example, Japanese Patent Laid-Open No. 7-141074.
In the figure, 601 is a semiconductor integrated circuit, 602 is a power control unit that distributes the power received at the main power terminal 612 to the corresponding functional blocks 604 to 611 according to the power distribution control signal, and 603 is set with the power distribution control signal. Power control registers 604 to 611 are functional blocks, and 612 is a main power supply terminal.
[0003]
Next, the operation will be described.
The power control unit 602 distributes the power supplied to the main power terminal 612 to the function blocks 604 to 611 designated according to the power distribution control signal set in the power control register 603. For example, “1” in the power control register indicates power supply to the corresponding functional block, and “0” indicates no power supply to the corresponding functional block.
[0004]
[Problems to be solved by the invention]
A conventional processing system includes a circuit for reducing power consumption, but a processing procedure for controlling the circuit is not specified.
[0005]
An object of the present invention is to reduce power consumption without reducing the processing speed of a system by controlling a circuit for reducing power consumption with a scheduler.
[0006]
[Means for Solving the Problems]
The management device according to the present invention is:
A management device connected to a plurality of program execution devices and managing the plurality of program execution devices,
An input unit for inputting an execution target program to be executed by the program execution device;
An interrupt enable / disable determining unit that determines whether an interrupt during execution of the execution target program is possible;
A selection unit that selects a program execution device that executes the execution target program as a selection program execution device from the plurality of program execution devices;
When the selected program execution device starts execution of the execution target program and the interrupt availability determination unit determines that the execution target program cannot be interrupted, operation of a program execution device other than the selected program execution device And an operation control unit for stopping the operation.
[0007]
The operation control unit does not stop the operation of a program execution device other than the selected program execution device when the interrupt possibility determination unit determines that the execution target program can be interrupted.
[0008]
The management device manages a plurality of register devices used by the plurality of program execution devices during program execution,
The selection unit selects the selection program execution device, and selects a register device used by the selection program execution device as a selection register device from the plurality of register devices,
The operation control unit stops operation of a register device other than the selected register device when the interrupt enable / disable determining unit determines that an interrupt is impossible.
[0009]
The management device further includes an interrupt request detection unit that monitors an execution status of the execution target program by the selected program execution device and detects an interrupt request generated during execution of the execution target program,
When the execution target program is input again by the input unit after execution by the selected program execution device, the interrupt availability determination unit detects an interrupt request by the interrupt request detection unit during execution of the execution target program. It is determined whether or not an interruption during execution of the execution target program is possible based on whether or not the execution target program is executed.
[0010]
The selection unit determines an execution start time and an execution end time of the execution target program by the selection program execution device when the interrupt enable / disable determination unit determines that an interrupt is not possible for the execution target program,
The operation control unit causes the selected program execution device to start executing the execution target program at the execution start time, and stops the operation of the selection program execution device at the execution end time.
[0011]
The selection unit determines an execution start time and an execution end time of the execution target program by the selected program execution device when the interrupt enable / disable determination unit determines that an interrupt is not possible for the execution target program, and the execution start At the time, a start instruction for instructing execution start of the execution target program by the selected program execution device is output, and at the execution end time, a stop instruction for instructing operation stop of the selected program execution device is output,
The operation control unit causes the selection program execution device to start executing the execution target program according to the start instruction, and stops the operation of the selection program execution device according to the stop instruction.
[0012]
The management method according to the present invention includes:
A management method for managing a plurality of program execution devices,
An input step for inputting an execution target program to be executed by the program execution device;
An interrupt enable / disable determining step for determining whether an interrupt during execution of the execution target program is possible;
A selection step of selecting a program execution device that executes the execution target program as a selection program execution device from among the plurality of program execution devices, and causing the selection program execution device to start executing the execution target program, An operation control step for stopping the operation of a program execution device other than the selected program execution device when it is determined in the interruption availability determination step that the execution target program is not interruptible.
[0013]
DETAILED DESCRIPTION OF THE INVENTION
Embodiment 1 FIG.
FIG. 1 is a configuration diagram showing the configuration of the processing system of the present embodiment.
In the figure, 101 is a management table storing program information waiting to be processed, 102 is a program code to be executed, 103 is a scheduler that controls the execution order of program execution units, and 104 is a register file that stores data used for arithmetic processing ( Register groups) 105 to 107 are execution units (for example, an adder and a multiplier) for executing the program code, and 108 is a control signal for controlling operation / stop of each execution unit.
The management table 101 stores a program execution unit to be scheduled, a program including the program execution unit, and an interrupt mode when executing the program execution unit.
The program for each program execution unit is repeatedly executed, and the scheduler 103 refers to the information in the management table 101 and sets the interrupt mode for the corresponding program execution unit each time the program code 102 is input. to decide.
Here, the scheduler 103 corresponds to a management device, the execution units 105 to 107 correspond to program execution devices, and the register file 104 corresponds to a plurality of register devices.
The program code 102 is composed of a plurality of program execution units. A program for each program execution unit in the program code 102 input to the scheduler 103 corresponds to an execution target program.
[0014]
FIG. 2 is a diagram illustrating an internal configuration of the scheduler 103.
In the figure, reference numeral 1 denotes an input unit for inputting a program code 102. Reference numeral 2 denotes an interrupt enable / disable determining unit that determines an interrupt mode by referring to information in the management table 101 for each program execution unit for the program code 102 input by the input unit 1. Reference numeral 3 denotes a selection unit that selects execution units 105 to 107 for each program execution unit. The execution unit selected by the selection unit 3 corresponds to a selection program execution device. An operation control unit 4 outputs a control signal 108 to control operation / stop of the execution unit and the register file in a predetermined case.
[0015]
FIG. 3 is a flowchart showing the operation of the scheduler 103 and the like.
In the figure, S201 is a step for determining whether or not it is an interruptible mode, S202 is a step for determining whether or not there is a pending interrupt, S203 is a step for executing interrupt processing, and S204 is an analysis of an execution unit to be used. S205 is a step of executing the program, S206 is a step of determining the end of the program, S207 is a step of analyzing the execution unit to be used, S208 is a step of stopping the execution unit that is not used, and S209 is a step of executing the program S210 is a step of operating all execution units.
[0016]
Next, the operation will be described with reference to the flowchart of FIG.
In the scheduler 103, when the input unit 1 receives the program code 102, the interrupt enable / disable determining unit 2 refers to the information in the management table 101 to determine whether or not each program execution unit is in the interrupt enable mode (S201).
In the interrupt enable mode, the interrupt enable / disable determination unit 2 checks whether there is a pending interrupt (S202). If there is an interrupt, the selection unit 3 selects an execution unit that performs interrupt processing and operates. The control unit 4 outputs a control signal to cause the execution unit in charge of interrupt processing to execute interrupt processing (S203).
After executing the interrupt processing, the program contents are analyzed for each program execution unit, an execution unit is selected (S204), and the received program code 102 is used for each program execution unit using the execution units 105 to 107 and the register file 104. Execute (S205).
More specifically, the selection unit 3 analyzes the program contents for each program execution unit, selects an execution unit based on the analysis result, and the operation control unit 4 outputs a control signal to the selected execution unit. Execution processing is performed for the program execution unit.
Next, it is checked whether or not the program is finished after the program is executed (S206). If the program is not finished, the next program code 102 is accepted.
In the case of the interrupt disabled mode in S201, the selection unit 3 analyzes the execution unit used for each program execution unit (S207). Specifically, an instruction code and a register address included in the program execution unit are analyzed, and an execution unit and a register to be used are selected.
From the selection result, the operation control unit 4 uses the control signal 108 to stop unused execution units and registers (S208). The method of stopping is not specified, but may be a method of stopping the supply of clock or the supply of power, for example.
Furthermore, in S209, the operation control unit 4 outputs a control signal 108 to the selected execution unit to start execution of the program for each program execution unit.
Further, after the program is executed for each program execution unit, the operation control unit 4 operates the execution units 105 to 107 and the register file 104 which have been stopped by using the control signal 108 (S210).
After the program execution, it is checked whether or not the program is finished (S206). If the program is not finished, the next program code 102 is accepted.
[0017]
As described above, since the execution units not used by the scheduler are stopped, it is not necessary to consume useless power, and the power consumption of the entire system can be reduced.
[0018]
Embodiment 2. FIG.
In the first embodiment described above, the interrupt mode of the program execution unit is fixed at the time of scheduling. Next, an embodiment in which the mode is dynamically changed will be described.
FIG. 4 is a configuration diagram showing the configuration of the processing system of the present embodiment.
In the figure, the same reference numerals as those in FIG. 1 denote the same or corresponding parts.
A management table 301 stores program information waiting for processing. The management table 301 is different from the management table 101 shown in the first embodiment in that an item indicating the presence / absence of an interrupt request is added.
A scheduler 302 controls the execution order of program execution units.
[0019]
FIG. 5 is a diagram showing an internal configuration of the scheduler 302 according to the present embodiment.
The input unit 1, interrupt enable / disable determination unit 2, selection unit 3, and operation control unit 4 are the same as those described in the first embodiment. In the present embodiment, an interrupt request monitoring unit 5 is added to the scheduler 103 of the first embodiment.
The interrupt request monitoring unit 5 monitors whether or not an interrupt request is generated during program execution for each program execution unit, and writes the monitoring result in the management table 301.
[0020]
Next, the operation will be described.
In the scheduler 302, when the input unit 1 receives the program code 102, the interrupt enable / disable determining unit 2 refers to the information in the management table 301 to determine whether the program execution unit is in the interrupt enable mode (S201). At that time, if the interrupt mode is different from the interrupt presence / absence, the interrupt mode is selected according to the interrupt presence / absence setting. As described above, since each program execution unit program is repeatedly executed, if the program execution unit in the program code 102 input to the input unit has been executed in the past, the previous execution is stored in the management table 301. The presence or absence of an interrupt request at the time is recorded. In the example of FIG. 4, the program execution unit A1 can be interrupted because the interrupt mode is possible but there is no interrupt, so it is determined that the interrupt is impossible. The program execution unit A2 cannot interrupt mode but has an interrupt, so interrupt is possible. The program execution unit A3 determines that the interrupt is not possible because the interrupt mode is not possible and there is no interrupt. That is, it is determined that an interrupt is possible if it is present due to the presence or absence of an interrupt, and it is determined that an interrupt is impossible if it is not present.
Next, when it is determined by the interrupt enable / disable determining unit 2 that interrupt is possible, it is checked whether there is a pending interrupt (S202), and if there is an interrupt, interrupt processing is executed (S203). After executing the interrupt process, the execution execution unit is analyzed (S204), and the received program code 102 is executed using the execution units 105 to 107 and the register file 104 (S205).
Here, the interrupt request monitoring unit 5 monitors whether or not an interrupt request is generated during execution of the program execution unit by the execution unit, and writes the presence or absence of the interrupt request in the management table 301 after executing the program. Thereafter, it is checked whether or not the program is finished (S206). If it is not finished, the next program code 102 is accepted.
On the other hand, when it is determined by the interrupt enable / disable determining unit 2 that interrupt is not possible, the selection unit 3 analyzes the execution unit used for each program execution unit (S207). Specifically, an execution unit and a register to be used are selected from an instruction code and a register address included in the program execution unit. From the selection result, the operation control unit 4 uses the control signal 108 to stop unused execution units and registers.
Next, the operation control unit 4 outputs a control signal 108 to the selected execution unit to start program execution for each program execution unit (S209).
Here, the interrupt request monitoring unit 5 monitors whether or not an interrupt request is generated during execution of the program by the execution unit, and writes the presence or absence of the interrupt request in the management table 301 after executing the program.
After executing the program, the operation control unit 4 operates the execution units 105 to 107 and the register file 104 that have been stopped by using the control signal 108 (S210).
Thereafter, it is checked whether or not the program is finished (S206). If it is not finished, the next program code 102 is accepted.
[0021]
As described above, since the latest interrupt occurrence information is stored in the management table 301, it is possible to set an interrupt mode according to actual operation during program execution, and to reduce the power consumption of the entire system without degrading the system performance. Can be reduced.
[0022]
Embodiment 3 FIG.
FIG. 6 is a configuration diagram showing the configuration of the processing system of the present embodiment.
In the figure, the same reference numerals as those in FIG. 1 denote the same or corresponding parts. 401 is a scheduler that controls the execution order of program execution units, 402 is a timer register that holds a set value of a timer, 403 is a timer, and 404 is an execution unit control unit that controls operation / stop of an execution unit.
In the present embodiment, a combination of the scheduler 401, the timer register 402, the timer 403, and the execution unit control unit 404 corresponds to the management device.
[0023]
FIG. 7 is a diagram showing an internal configuration of the scheduler 401 according to the present embodiment.
The input unit 1, the interrupt enable / disable determination unit 2, and the selection unit 3 are the same as those described in the first embodiment. In the present embodiment, the operation control unit 4 shown in the first embodiment is not in the scheduler, and the timer register 402, the timer 403, and the execution unit control unit 404 function as the operation control unit 4 shown in the first embodiment. Fulfill.
In the present embodiment, the selection unit 3 not only determines the execution unit to be used for each program execution unit, but also sets the operation time (execution start time, execution end time) in the execution unit.
[0024]
Next, the operation will be described.
In the scheduler 401, when the input unit 1 receives the program code 102, the interrupt enable / disable determining unit 2 refers to the information in the management table 101 to determine whether the program execution unit is in the interrupt enable mode (S201).
In the case of the interruptible mode, the same processing as the processing procedure (S202 to S206) of the interruptable mode described in the first embodiment is performed.
In the interrupt disabled mode, the selection unit 3 of the scheduler 401 analyzes an execution unit to be used for each program execution unit (S207). Specifically, an execution unit and a register to be used are selected from an instruction code and a register address included in the program execution unit. Further, the selection unit 3 sets the operation time (execution start time and execution end time) of the execution unit used when executing each program execution unit in the timer register 402.
The set time is a relative time during which the execution unit operates after the timer 403 is activated. The execution unit control unit 404 controls the operation / stop of the corresponding execution units 105 to 107 and the register file 104 according to the values of the timer register 402 and the timer 403 (S209). That is, the execution unit control unit 404 outputs a control signal instructing the corresponding execution unit to start program execution processing at the execution start time, and instructing the corresponding execution unit to stop operation at the execution end time. Is output to stop the operation. As in the first embodiment, the execution unit control unit 404 sends control signals to execution units and register files that are not used for execution of program execution units prior to or simultaneously with execution of program execution units. The operation of these execution units and register files is stopped (S208).
Thereafter, after the execution of the program (S209), after all the execution units are operated (S210), it is checked whether or not the program is finished (S206). If it is not finished, the next program code 102 is accepted.
[0025]
As described above, the scheduler 401 sets the operation / stop time of each execution unit, and the execution unit control unit 404 controls the execution unit according to the set value. Power consumption of the entire system can be reduced.
[0026]
Embodiment 4 FIG.
FIG. 8 is a configuration diagram showing the configuration of the processing system of the present embodiment.
In the figure, the same reference numerals as those in FIGS. 1 and 6 denote the same or corresponding parts. Reference numeral 501 denotes a scheduler that controls the execution order of program execution units, and reference numeral 502 denotes a setting register that holds setting values of the execution unit control unit.
In this embodiment, a combination of the scheduler 501, the setting register 502, and the execution unit control unit 404 corresponds to a management device.
[0027]
FIG. 9 is a diagram showing an internal configuration of the scheduler 501 according to the present embodiment.
The input unit 1, the interrupt availability determination unit 2, and the selection unit 3 are the same as those described in the first embodiment. However, the selection unit 3 not only determines an execution unit to be used for each program execution unit, but also sets an operation time (execution start time, execution end time) in the execution unit.
6 is a timer register, and 7 is a timer. The timer register 6 stores the operation time (execution start time, execution end time) set by the selection unit 3.
Further, in the present embodiment, the operation control unit 4 shown in the first embodiment is not in the scheduler, and the setting register 502 and the execution unit control unit 404 play the role of the operation control unit 4 shown in the first embodiment. Fulfill.
[0028]
Next, the operation will be described.
In the scheduler 501, when the input unit 1 receives the program code 102, the interrupt enable / disable determining unit 2 refers to the information in the management table 101 to determine whether the program execution unit is in the interrupt enable mode (S201).
In the case of the interruptible mode, the same processing as the processing procedure (S202 to S206) of the interruptable mode described in the first embodiment is performed.
In the interrupt disabled mode, the selection unit 3 of the scheduler 401 analyzes an execution unit to be used for each program execution unit (S207). Specifically, an execution unit and a register to be used are selected from an instruction code and a register address included in the program execution unit. Further, the selection unit 3 sets the operation time (execution start time and execution end time) of the execution unit used when executing each program execution unit in the timer register 6.
Thereafter, the selection unit 3 sets a value (start instruction) for instructing the start of execution in the setting register 502 at the execution start time according to the values of the timer register 6 and the timer 7. The values to be set are a value indicating the execution unit to be used and a value indicating the operating state of the execution unit.
The execution unit control unit 404 controls the operation of the corresponding execution units 105 to 107 and the register file 104 according to the value of the setting register 502.
Further, the selection unit 3 sets a value (stop instruction) for instructing operation stop to the setting register 502 at the end of execution according to the values of the timer register 6 and the timer 7. The value to be set is a value indicating an execution unit whose operation is stopped and a value indicating the operation stop state of the execution unit.
The execution unit control unit 404 controls the operation stop of the corresponding execution units 105 to 107 and the register file 104 according to the value of the setting register 502. After execution of the program (S209), it is checked whether or not the program is finished (S206). If the program is not finished, the next program code 102 is accepted.
[0029]
As described above, the scheduler 501 sets the operation / stop time of each execution unit, and the execution unit control unit 503 controls the execution unit according to the set value. Power consumption of the entire system can be reduced.
[0030]
In the above first to fourth embodiments, the management apparatus according to the present invention has been described. However, the management method according to the present invention is also realized by performing the same processing as the processing described in the first to fourth embodiments. Can do.
[0031]
Here, the characteristics of the processing system shown in the first to fourth embodiments will be described again.
[0032]
The processing system according to the first embodiment analyzes an execution unit used by a program execution unit scheduled in the interrupt disable mode in a processing system including a scheduler that schedules a program execution unit in an interrupt enable mode and an interrupt disable mode. And a scheduler for stopping execution units not used by each program execution unit according to the analysis result.
[0033]
The processing system according to the second embodiment monitors the start / completion of each program execution unit and the occurrence of an interrupt during program execution, and changes the scheduling to the mode for each program execution unit based on the result of the monitoring means It is characterized by having a scheduler which performs.
[0034]
The processing system according to the third embodiment uses a control unit that controls the operation / stop of each execution unit according to a timer value, the processing time of the program execution unit executed in the interrupt disabled mode, and the execution unit used from the start of the interrupt disabled mode. Means for calculating an operation / stop time of the execution unit to be set and setting it in a timer.
[0035]
The processing system according to the fourth embodiment has a register that directly controls the operation / stop of each execution unit, and operates the execution unit when executing the program execution unit, and stops the operation of the execution unit when the processing is completed. And a means for setting a set value in the register.
[0036]
【The invention's effect】
As described above, according to the present invention, since the operation of the program execution devices other than the selected program execution device is stopped according to the determination of whether interrupt is possible, there is an effect that the power consumption of the entire system can be reduced.
[0037]
In addition, according to the present invention, it is possible to determine whether or not an interrupt is possible in accordance with the actual execution of program execution by reflecting the presence or absence of an interrupt request during program execution in the determination of whether or not interrupt is possible, thereby reducing system performance. There is an effect that power consumption can be reduced without any problems.
[0038]
Further, according to the present invention, the execution start time and the execution end time of the execution target program by the selection program execution device are determined, the execution of the execution target program is started at the execution start time, and the execution of the selection program execution device at the execution end time. Since the operation is stopped, the power consumption can be saved even in the operation of the selected program execution device, so that the power consumption of the entire system can be reduced.
[Brief description of the drawings]
FIG. 1 is a diagram showing a configuration of a processing system according to a first embodiment.
FIG. 2 is a diagram showing an internal configuration of a scheduler according to the first embodiment.
FIG. 3 is a flowchart showing processing of a scheduler and the like according to the first embodiment.
FIG. 4 is a diagram showing a configuration of a processing system according to a second embodiment.
5 is a diagram showing an internal configuration of a scheduler according to Embodiment 2. FIG.
FIG. 6 is a diagram showing a configuration of a processing system according to a third embodiment.
7 is a diagram showing an internal configuration of a scheduler according to Embodiment 3. FIG.
FIG. 8 is a diagram showing a configuration of a processing system according to a fourth embodiment.
FIG. 9 is a diagram showing an internal configuration of a scheduler according to the fourth embodiment.
FIG. 10 is a diagram showing a configuration of a conventional processing system.
[Explanation of symbols]
1 input unit, 2 interrupt enable / disable determination unit, 3 selection unit, 4 operation control unit, 5 interrupt request monitoring unit, 6 timer register, 7 timer, 101 management table, 102 program code, 103 scheduler, 104 register file, 105 execution unit , 106 execution unit, 107 execution unit, 108 control signal, 301 management table, 302 scheduler, 401 scheduler, 402 timer register, 403 timer, 404 execution unit control unit, 501 scheduler, 502 setting register.

Claims (7)

複数のプログラム実行装置に接続され、前記複数のプログラム実行装置を管理する管理装置であって、
プログラム実行装置によるプログラム実行の対象となる実行対象プログラムを入力する入力部と、
前記実行対象プログラムの実行中に他のプログラムの割込みが可能か否かを判断する割込み可否判断部と、
前記複数のプログラム実行装置の中から、前記実行対象プログラムを実行するプログラム実行装置を選択プログラム実行装置として選択する選択部と、
前記選択プログラム実行装置に前記実行対象プログラムの実行を開始させるとともに、前記割込み可否判断部が前記実行対象プログラムについて他のプログラムの割込み不可と判断した場合に、前記選択プログラム実行装置以外の他のプログラム実行装置の稼動を停止させる稼動制御部とを有することを特徴とする管理装置。
A management device connected to a plurality of program execution devices and managing the plurality of program execution devices,
An input unit for inputting an execution target program to be executed by the program execution device;
An interrupt enable / disable determining unit that determines whether an interrupt of another program is possible during execution of the execution target program;
A selection unit that selects a program execution device that executes the execution target program as a selection program execution device from the plurality of program execution devices;
When the selected program execution device starts execution of the execution target program and the interrupt availability determination unit determines that interruption of another program is not possible for the execution target program, other than the selected program execution device A management apparatus comprising: an operation control unit that stops operation of the program execution apparatus.
前記稼動制御部は、前記割込み可否判断部が前記実行対象プログラムについて他のプログラムの割込み可能と判断した場合に、前記選択プログラム実行装置以外の他のプログラム実行装置の稼動を停止させないことを特徴とする請求項1に記載の管理装置。The operation control unit, characterized in that the interrupt determination section is when it is determined that the possible interruption of other programs for the execution target program, not stop the operation of the other program execution device other than the selected program execution device The management device according to claim 1. 前記管理装置は、前記複数のプログラム実行装置がプログラム実行時に使用する複数のレジスタ装置を管理し、
前記選択部は、前記選択プログラム実行装置を選択するとともに、前記複数のレジスタ装置の中から、前記選択プログラム実行装置が使用するレジスタ装置を選択レジスタ装置として選択し、
前記稼動制御部は、前記割込み可否判断部により前記実行対象プログラムについて他のプログラムの割込み不可と判断された場合に、前記選択レジスタ装置以外の他のレジスタ装置の稼動を停止させることを特徴とする請求項1に記載の管理装置。
The management device manages a plurality of register devices used by the plurality of program execution devices during program execution,
The selection unit selects the selection program execution device, and selects a register device used by the selection program execution device as a selection register device from the plurality of register devices,
The operation control unit is configured to stop the operation of another register device other than the selected register device when the interrupt enable / disable determining unit determines that an interrupt of another program is not possible for the execution target program. The management device according to claim 1.
前記管理装置は、更に、前記選択プログラム実行装置による前記実行対象プログラムの実行状況を監視し、前記実行対象プログラムの実行中に発生した割込み要求を検出する割込み要求検出部を有し、
前記選択プログラム実行装置による実行後に前記実行対象プログラムが再度前記入力部により入力された場合に、前記割込み可否判断部は、前記実行対象プログラムの実行中に前記割込み要求検出部により割込み要求が検出されたか否かに基づき前記実行対象プログラムの実行中の他のプログラムの割込みが可能か否かを判断することを特徴とする請求項1に記載の管理装置。
The management device further includes an interrupt request detection unit that monitors an execution status of the execution target program by the selected program execution device and detects an interrupt request generated during execution of the execution target program,
When the execution target program is input again by the input unit after execution by the selected program execution device, the interrupt availability determination unit detects an interrupt request by the interrupt request detection unit during execution of the execution target program. The management apparatus according to claim 1, wherein it is determined whether interruption of another program being executed on the execution target program is possible based on whether the execution target program is executed.
前記選択部は、前記割込み可否判断部が前記実行対象プログラムについて他のプログラムの割込み不可と判断した場合に、前記選択プログラム実行装置による前記実行対象プログラムの実行開始時期と実行終了時期を決定し、
前記稼動制御部は、前記実行開始時期に前記選択プログラム実行装置に前記実行対象プログラムの実行を開始させ、前記実行終了時期に前記選択プログラム実行装置の稼動を停止させることを特徴とする請求項1に記載の管理装置。
The selection unit determines an execution start time and an execution end time of the execution target program by the selected program execution device when the interrupt enable / disable determination unit determines that another program can not interrupt the execution target program. ,
The operation control unit causes the selected program execution device to start executing the execution target program at the execution start time and stops the operation of the selection program execution device at the execution end time. The management apparatus as described in.
前記選択部は、前記割込み可否判断部が前記実行対象プログラムについて他のプログラムの割込み不可と判断した場合に、前記選択プログラム実行装置による前記実行対象プログラムの実行開始時期と実行終了時期とを決定し、前記実行開始時期に、前記選択プログラム実行装置による前記実行対象プログラムの実行開始を指示する開始指示を出力し、前記実行終了時期に、前記選択プログラム実行装置の稼動停止を指示する停止指示を出力し、
前記稼動制御部は、前記開始指示に従って前記選択プログラム実行装置に前記実行対象プログラムの実行を開始させ、前記停止指示に従って前記選択プログラム実行装置の稼動を停止させることを特徴とする請求項1に記載の管理装置。
The selection unit determines an execution start time and an execution end time of the execution target program by the selected program execution device when the interrupt enable / disable determination unit determines that another program can not interrupt the execution target program. Then, at the execution start time, a start instruction for instructing execution start of the execution target program by the selected program execution device is output, and at the execution end time, a stop instruction for instructing operation stop of the selected program execution device is output. Output,
The operation control unit causes the selection program execution device to start executing the execution target program according to the start instruction, and stops the operation of the selection program execution device according to the stop instruction. Management device.
複数のプログラム実行装置を管理する管理方法であって、
プログラム実行装置によるプログラム実行の対象となる実行対象プログラムを入力する入力ステップと、
前記実行対象プログラムの実行中に他のプログラムの割込みが可能か否かを判断する割込み可否判断ステップと、
前記複数のプログラム実行装置の中から、前記実行対象プログラムを実行するプログラム実行装置を選択プログラム実行装置として選択する選択ステップと、
前記選択プログラム実行装置に前記実行対象プログラムの実行を開始させるとともに、前記割込み可否判断ステップにより前記実行対象プログラムについて他のプログラムの割込み不可と判断された場合に、前記選択プログラム実行装置以外の他のプログラム実行装置の稼動を停止させる稼動制御ステップとを有することを特徴とする管理方法。
A management method for managing a plurality of program execution devices,
An input step for inputting an execution target program to be executed by the program execution device;
An interrupt enable / disable determination step for determining whether interrupt of another program is possible during execution of the execution target program;
A selection step of selecting, as a selection program execution device, a program execution device that executes the execution target program from among the plurality of program execution devices;
When the selected program execution device starts execution of the execution target program, and it is determined by the interrupt enable / disable determination step that interruption of another program is not possible for the execution target program, other than the selected program execution device And an operation control step for stopping the operation of the program execution apparatus.
JP2001363898A 2001-11-29 2001-11-29 Management apparatus and management method Expired - Fee Related JP3910422B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001363898A JP3910422B2 (en) 2001-11-29 2001-11-29 Management apparatus and management method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001363898A JP3910422B2 (en) 2001-11-29 2001-11-29 Management apparatus and management method

Publications (2)

Publication Number Publication Date
JP2003167750A JP2003167750A (en) 2003-06-13
JP3910422B2 true JP3910422B2 (en) 2007-04-25

Family

ID=19174159

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001363898A Expired - Fee Related JP3910422B2 (en) 2001-11-29 2001-11-29 Management apparatus and management method

Country Status (1)

Country Link
JP (1) JP3910422B2 (en)

Also Published As

Publication number Publication date
JP2003167750A (en) 2003-06-13

Similar Documents

Publication Publication Date Title
JP3507822B2 (en) Computer device and power saving control method thereof
US6820155B1 (en) Interruption managing device and interruption managing method
KR0177536B1 (en) Information processing apparatus, processing method thereof, and power supply control method therefor
KR950005217B1 (en) Clock signal control method and data processing system
KR100746797B1 (en) Processor and information processing method
US7346791B2 (en) Method for controlling a clock frequency of an information processor in accordance with the detection of a start and a end of a specific processing section
US20080307248A1 (en) Cpu Clock Control Device, Cpu Clock Control Method, Cpu Clock Control Program, Recording Medium, and Transmission Medium
JP2000047872A (en) Microprocessor equipped with low-power-consumption operating function
US20110016247A1 (en) Multiprocessor system and multiprocessor system interrupt control method
JP4609113B2 (en) Processor
JP2007164421A (en) Parallel processors, parallel processing method and parallel processing program
JP3910422B2 (en) Management apparatus and management method
US20050066093A1 (en) Real-time processor system and control method
JP2008225641A (en) Computer system, interrupt control method and program
US20100107169A1 (en) Periodical task execution apparatus, periodical task execution method, and storage medium
CN114556120A (en) Method, arrangement and computer program product for organizing the excitation of a processing path for testing microcircuits
JP3830133B2 (en) Power control apparatus and method, and power control program
JP3027526B2 (en) Job scheduling method
EP1341092A1 (en) Method and arrangement for virtual direct memory access
JPS6368934A (en) Task scheduing system
JP2001147821A (en) Processor
JPH08137703A (en) Task switching device
JP2002312302A (en) Peripheral device
JP4535663B2 (en) State machine control method and state machine
JPS59146387A (en) Stack control system of multiprocessing

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20040518

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040924

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20041019

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061017

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061024

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061130

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070123

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070124

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100202

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110202

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees