(57)【要約】【課題】マルチコアプロセッシングの処理性能の低下を抑制しつつ消費電力を低減させる必要がある。【解決手段】データ処理装置は、入力される動作クロックに応じてデータを処理する複数の処理手段と、前記複数の処理手段に一律の周波数の動作クロックを供給している場合に当該複数の処理手段について夫々の応答時間を計測し、計測した複数の応答時間が近づくように前記複数の処理手段の少なくとも１つに供給する動作クロックの周波数を制御する制御手段とを備える。【選択図】図１
2011187045.tif 000002
【特許請求の範囲】
【請求項１】
入力される動作クロックに応じてデータを処理する複数の処理手段と、
前記複数の処理手段に一律の周波数の動作クロックを供給している場合に当該複数の処理手段について夫々の応答時間を計測し、計測した複数の応答時間が近づくように前記複数の処理手段の少なくとも１つに供給する動作クロックの周波数を制御する制御手段と
を備えることを特徴とするデータ処理装置。
【請求項２】
予め設定された順序でデータ処理を行う複数のデータ処理モジュールがリング状に接続されたデータ処理装置であって、
前記複数のデータ処理モジュールの各々について、データ処理の応答時間を計測する計測手段と、
前記複数のデータ処理モジュールの各々について、当該データ処理モジュールの動作周波数と、前記計測された応答時間との比である周波数対応答時間比を算出する算出手段と、
前記算出された周波数対応答時間比に基づいて、前記複数のデータ処理モジュールの各々の動作周波数を制御する制御手段と
を備え、
前記制御手段は、前記複数のデータ処理モジュールのうち、前記計測された応答時間が最も大きいものについて算出された前記周波数対応答時間比に、その他の前記データ処理モジュールの周波数対応答時間比が近づくように、該その他の前記データ処理モジュールの各々の動作周波数を制御する
ことを特徴とするデータ処理装置。
【請求項３】
前記制御手段は、前記複数のデータ処理モジュールの全てが同一の基準周波数で動作しているときの前記周波数対応答時間比に基づいて、前記複数のデータ処理モジュールの各々の動作周波数を制御することを特徴とする請求項２に記載のデータ処理装置。
【請求項４】
前記複数のデータ処理モジュールの各々が前記制御された動作周波数で動作している場合に、いずれかの該データ処理モジュールが保留状態となったときは、前記制御手段は、保留状態が解除されるまで当該データ処理モジュールの動作周波数を前記基準周波数とするように制御することを特徴とする請求項３に記載のデータ処理装置。
【請求項５】
前記複数のデータ処理モジュールの各々が前記制御された動作周波数で動作している場合に、いずれかのデータ処理モジュールが保留状態となったときは、前記制御手段は、保留状態が解除されるまで、前記保留状態が発生したデータ処理モジュールの上流に位置する前記データ処理モジュールの各々の動作周波数を低減させることを特徴とする請求項３又は４に記載のデータ処理装置。
【請求項６】
前記複数のデータ処理モジュールの各々が前記制御された動作周波数で動作している場合に、いずれかのデータ処理モジュールが保留状態となったときに該保留状態となったデータ処理モジュールの動作可能周波数の上限値Ｆmaxを決定する決定手段をさらに備え、
前記制御手段は、保留状態が解除されるまで当該データ処理モジュールの動作周波数を前記上限値Ｆmaxとするように制御する
ことを特徴とする請求項３に記載のデータ処理装置。
【請求項７】
前記複数のデータ処理モジュールの各々が前記制御された動作周波数で動作している場合に、いずれかのデータ処理モジュールが保留状態となったときに該保留状態となったデータ処理モジュールの動作可能周波数の上限値Ｆmaxを決定する決定手段をさらに備え、
前記制御手段は、保留状態が解除されるまで、前記基準周波数を前記上限値Ｆmaxに置き換えると共に前記保留状態が発生したデータ処理モジュールの上流に位置する前記データ処理モジュールの各々の動作周波数を低減させる
ことを特徴とする請求項３又は４に記載のデータ処理装置。
【請求項８】
予め設定された順序でデータ処理を行う複数のデータ処理モジュールがリング状に接続されたデータ処理装置の制御方法であって、
計測手段が、前記複数のデータ処理モジュールの各々について、データ処理の応答時間を計測する計測工程と、
算出手段が、前記複数のデータ処理モジュールの各々について、当該データ処理モジュールの動作周波数と、前記計測された応答時間との比である周波数対応答時間比を算出する算出工程と、
制御手段が、前記算出された周波数対応答時間比に基づいて、前記複数のデータ処理モジュールの各々の動作周波数を制御する制御工程と
を備え、
前記制御工程においては、前記複数のデータ処理モジュールのうち、前記計測された応答時間が最も大きいものについて算出された前記周波数対応答時間比に、その他の前記データ処理モジュールの周波数対応答時間比が近づくように、該その他の前記データ処理モジュールの各々の動作周波数を制御する
ことを特徴とするデータ処理装置の制御方法。
【請求項９】
コンピュータを請求項１から７のいずれか１項に記載のデータ処理装置が備える各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータ処理装置及びその制御方法、プログラムに関し、特に、マルチコアプロセッシングについて処理応答性能の低下を抑制しつつ消費電力を低減させるための技術に関する。
【背景技術】
【０００２】
特許文献１には、複数の処理実行モジュールを有するリング型のバス接続方式において、それぞれの処理実行モジュールにローカルメモリを備え、メモリへのアクセス待ちとなる状態を回避することが記載されている。この構成によれば、少ない消費電力で効率的にデータ処理を行うことができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開2006-285719号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら特許文献１の構成では、処理実行モジュール間で処理応答時間差が生じた場合、処理応答時間が早いモジュールは、遅いモジュールに比べて処理が早く終わることになる。この際、アイドル時間のリーク電流の発生等が、無駄な電力消費につながっていた。また特許文献１の構成では、更なる消費電力低減を実現するためには、システム全体の動作周波数を下げることが必要だが、システム全体の動作周波数を下げるとシステム全体のパフォーマンスも低下してしまう。
【０００５】
本発明は上記課題に鑑みなされたものであり、データ処理回路についてマルチコアの処理性能をの低下を抑制しつつ消費電力を低減させるための技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明によるデータ処理装置は以下の構成を備える。即ち、入力される動作クロックに応じてデータを処理する複数の処理手段と、前記複数の処理手段に一律の周波数の動作クロックを供給している場合に当該複数の処理手段について夫々の応答時間を計測し、計測した複数の応答時間が近づくように前記複数の処理手段の少なくとも１つに供給する動作クロックの周波数を調整する制御手段とを備えることを特徴とする。
【発明の効果】
【０００７】
本発明によれば、マルチコアを有するデータ処理回路について処理性能の低下を抑制しつつ消費電力を低減させることができる。
【図面の簡単な説明】
【０００８】
【図１】データ処理サブシステムの構成を示すブロック図である。
【図２】最適化周波数を供給する基本処理フローを示すフローチャートである。
【図３】保留状態発生時の処理フローを示すフローチャートである。
【図４】本実施形態４における保留状態発生時の処理フローを示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照して本発明の実施の形態を詳細に説明する。
【００１０】
＜＜実施形態１＞＞
（データ処理サブシステム）
まず、本実施形態に係るデータ処理サブシステムの個々の構成要素、周辺要素との相互関係、及びデータ処理の流れに関する基本説明を行う。図１は、本実施形態に係るデータ処理装置としてのデータ処理サブシステム１の構成を示す図である。
【００１１】
データ処理サブシステム１は、通信路１０、通信処理部１０１、１０２、１０３、１０４、データ処理部（データ処理モジュール）１１１〜１１４、応答時間計測部１２１〜１２４、応答時間制御部１３１を備える。図１のように、データ処理サブシステム１では、予め設定された順序でデータ処理を行う複数のデータ処理部がリング状に接続されている通信処理部１０１〜１０４に１対１で接続されている。複数のデータ処理部が予め設定された順序でデータ処理を行うことで、データ処理サブシステム１はパイプライン処理の各ステージを各データ処理部に割り当ててマルチコアプロセッシングを実現できる。
【００１２】
通信処理部１０１〜１０４は、通信路１０及びデータ処理部１１１〜１１４との間で情報のフォーマット変換を行い、通信路１０、他の通信処理部、及び対応するデータ処理部との間で情報を受け渡す。データ処理部１１１〜１１４は受け取った情報に対して定められたデータ処理を行い、その結果を対応する通信処理部１０１〜１０４へ渡す。データ処理部１１１〜１１４は供給される動作クロックに応じて処理を行う。
【００１３】
データ処理部１１２は対応する通信処理部１０２とデータの授受を行う。同様に、データ処理部１１３、１１４は、それぞれ通信制御部１０３、１０４とデータの授受を行う。ただし外部とのデータ入出力端であるデータ処理部１１１は、データ処理サブシステム１の外部からデータを入力し、データ処理後に通信処理部１０１へデータを渡す。また、通信処理部１０１からデータを受け取り、データ処理後にデータ処理サブシステム１の外部へデータを出力する。
【００１４】
データ処理部１１１より入力されたデータは通信処理部１０１へ受け渡され、通信路１０上を流れる形式の情報に変換された後、通信処理部１０１→１０２→１０３→１０４→１０１→・・・と環状（リング状）に伝達される。その過程で必要に応じて通信処理部からデータ処理部へデータが受け渡され、データ処理が行われて、再度、通信処理部へ渡る、といった流れでデータ処理が行われる。通信処理部１０１〜１０４の夫々は内部にＦＩＦＯ構成のフリップフロップ（不図示）を有しサイクルタイム毎に矢印方向の通信処理部へデータをシフトさせるので、通信処理部１０１〜１０４に着目するとリング型のシフトレジスタの様に機能する。また、データ処理部１１１の変換する形式の例として、データを所定データサイズ毎に分割したりデータに送信用の情報を付与してパケット化したりすることが挙げられる。以降の例では説明の簡便のため、データを固定長に分割している例を用いて説明する。
【００１５】
また、通信処理部からデータ処理部へデータが渡される際、データ処理部では前に受け取ったデータがまだ処理途中で次のデータが受け取られない場合がある。この時のデータ処理部の状態を保留状態と呼ぶ。
【００１６】
応答時間計測部１２１は、データ処理部が通信処理部からデータを受け取り、データ処理を開始した時点から、データ処理が完了した時点までの時間を応答時間として計測する。このようにして、応答時間計測部１２１はデータ処理部１１１の応答時間を計測する。同様に、応答時間計測部１２２、１２３、１２４の夫々は、対応する各データ処理部１１２，１１３，１１４の応答時間を計測する。
【００１７】
応答時間制御部１３１は、データ処理部１１１〜１１４夫々に供給する動作周波数を制御し、またデータ処理部１１１〜１１４夫々の保留状態を取得する。また応答時間制御部１３１は、応答時間計測部１２１〜１２４夫々から応答時間を取得する。
【００１８】
（動作周波数制御）
続いて応答時間制御部１３１によるデータ処理部１１１〜１１４の動作周波数制御を説明する。データ処理サブシステム１の立ち上げの直後、応答時間制御部１３１は、データ処理部１１１〜１１４に対して同一の周波数を供給する。立ち上げ時にすべてのデータ処理部１１１〜１１４に対して一律に供給される周波数を基準周波数Ｆbaseと呼ぶ。したがって、データ処理部ｎ（111≦n≦114）に対して供給される夫々の周波数をｆnとすると、データ処理サブシステム１の立ち上げの直後は、ｆn＝Ｆbaseとなる。。
【００１９】
応答時間計測部１２１〜１２４では、この状態におけるデータ処理部１１１〜１１４夫々の応答時間ｒn（111≦n≦114）を算出し、応答時間制御部１３１へ伝達する。ここで応答時間にはデータ処理部ごとにばらつきがあり、データ処理部１１１の応答時間ｒ111＝Ｒ、データ処理部１１２の応答時間ｒ112＝Ｒ、データ処理部１１３の応答時間ｒ113＝２Ｒ、データ処理部１１４の応答時間ｒ114＝４Ｒとする。
【００２０】
応答時間制御部１３１は周波数対応答時間比ｆn／ｒnを夫々のデータ処理部について算出した後、その中から最小となるｆn／ｒn（最小周波数対応答時間比(ｆ／ｒ)minと呼ぶ）を導出する。本実施形態の場合は、ｆ111／ｒ111＝Ｆbase／Ｒ、ｆ112／ｒ112＝Ｆbase／Ｒ、ｆ113／ｒ113＝Ｆbase／２Ｒ、ｆ114／ｒ114＝Ｆbase／４Ｒとなる。したがって、(ｆ／ｒ)min＝ｆ114／ｒ114＝Ｆbase／４Ｒである。
【００２１】
次に、(ｆ／ｒ)min以外の夫々のｆn／ｒnについて、ｆnの値を減らすことで周波数対応答時間比がｆn'／ｒn≒(ｆ／ｒ)minのように、最小周波数対応答時間比の近傍値になる最適化周波数ｆn'を算出する。そして、夫々のデータ処理部の動作周波数として供給し直す。本実施形態の場合は、データ処理部１１１にｆ111'＝Ｆbase／４を、データ処理部１１２にｆ112'＝Ｆbase／４を、データ処理部１１３にｆ113'＝Ｆbase／２を供給する。
【００２２】
（基本処理）
次に、本実施形態のデータ処理サブシステムにおける応答時間制御部１３１が、基準周波数Ｆbaseを設定してから夫々の最適化周波数ｆn'を設定し直すまでの基本処理の流れについて図２を参照して説明する。図２は応答時間制御部１３１と応答時間計測部１２１〜１２４による基本処理の流れを示すフローチャートである。
【００２３】
まずステップＳ２０１において、応答時間制御部１３１は、夫々のデータ処理部１１１〜１１４に対して一律に基準周波数Ｆbaseを供給する。ステップＳ２０２において、夫々の応答時間計測部１２１〜１２４は、夫々のデータ処理部１１１〜１１４の応答時間ｒnを算出し、応答時間制御部１３１へ伝達する。
【００２４】
ステップＳ２０３において、応答時間制御部１３１は、周波数対応答時間比ｆn／ｒnを夫々のデータ処理部１１１〜１１４に対して算出する。ステップＳ２０４では、応答時間制御部１３１が全てのｆn／ｒnから最小となる(ｆ／ｒ)minを導出する。ステップＳ２０５では、応答時間制御部１３１が(ｆ／ｒ)min以外の夫々のｆn／ｒnに対して、ｆnの値を減らして周波数対応答時間比がｆn'／ｒn≒(ｆ／ｒ)minと最小周波数対応答時間比の近傍値になる最適化周波数ｆn'を算出する。さらに、夫々のデータ処理部１１１〜１１４に夫々のｆn'を供給する。これにより、基本処理は終了となる。
【００２５】
以上のように、本実施形態では、各処理実行モジュールについて処理応答時間に差がある場合、周波数対応答時間比が最小値に近傍するような最適化周波数ｆn'を夫々のデータ処理部について算出し、各データ処理部へ最適化周波数ｆn'を供給する。すなわち、様々な処理性能を有する複数のデータ処理モジュールによってパイプライン処理をする場合に、処理性能が最も低いデータ処理モジュールの動作性能に合わせて、その他のデータ処理モジュールの動作周波数を低減させる。このため、本実施形態によれば、パイプライン処理回路の処理応答性能の低下を抑制しつつ消費電力を低減させることが可能である。
【００２６】
＜＜実施形態２＞＞
次に、リング状に接続されたデータ処理部のいずれか（本実施形態ではデータ処理部１１３）で保留状態が発生した場合の応答時間制御部１３１における周波数制御に関する他の実施形態を説明する。なお、本実施形態のシステムの基本構成は実施形態１と同じであり、最適化周波数ｆn'の設定まで済んでいるものとする。
【００２７】
データ処理部１１３に発生した保留状態の情報は応答時間制御部１３１へ通知される。応答時間制御部１３１では、データ処理部１１３の周波数ｆ113＝Ｆbase／２とＦbaseの大小関係を比較する。上記の例では、ｆ113＜Ｆbaseであるため、データ処理部１１３に対し一時的にＦbaseを供給する。
【００２８】
このように、本実施形態では、データ処理モジュールの各々の動作周波数が制御されている場合に、いずれかが保留状態となったときは、保留状態が解除されるまで、当該データ処理モジュールの動作周波数が基準周波数となるように制御される。このため、これにより、保留状態になったデータ処理モジュール（データ処理部１１３）はデータ処理を早く実行できるため、保留状態の短縮化が図れる。
【００２９】
なお、保留状態が解除された後、応答時間制御部１３１はデータ処理部１１３に対し最適化周波数ｆ113＝Ｆbase／２を供給し直す。このため、実施形態１に比べて、動的にパイプライン処理回路の処理応答性能の低下を抑制することができる。また、同時に保留状態となった処理モジュールの上流に位置する処理モジュールの動作周波数を抑制するようにしてもよい。これにより、新たな保留状態の発生を抑制すると共に、上流に位置する処理モジュールの消費電力を削減する。なお、保留状態が解除された場合は、元の動作周波数に戻す。
【００３０】
＜＜実施形態３＞＞
次に、データ処理部１１４で保留状態が発生した場合の応答時間制御部１３１における周波数制御に関する他の実施形態を説明する。なお本実施形態のシステムの基本構成は実施形態１と同じであり、最適化周波数ｆn'の設定まで済んでいるものとする。
【００３１】
データ処理部１１４に発生した保留状態の情報は応答時間制御部１３１へ通知される。応答時間制御部１３１では、データ処理部１１４の周波数ｆ114＝ＦbaseとＦbaseの大小関係を比較し、ｆ114＝Ｆbaseであるため、これ以上データ処理部１１４に対する供給クロックを上げることができない。
【００３２】
この場合、データ処理部１１４（保留状態が発生したデータ処理部）より上流のデータ処理部（本実施形態ではデータ処理部１１４以外のデータ処理部）に対し一時的に最適化周波数ｆn'から更に周波数を低減させたクロックを供給する。これにより上流のデータ処理部の処理が遅くなるため、データ処理部１１４での新たな保留状態の発生が抑制され、データ処理部１１４自体の処理速度は変わっていないが相対的にデータ処理効率が向上し、保留状態の短縮化が図れる。そして保留状態が解除された後、応答時間制御部１３１は上流のデータ処理部（データ処理部１１４以外のデータ処理部）に対し最適化周波数ｆn'を供給し直す。
【００３３】
図３は、実施形態２および実施形態３の両方の処理の流れを示すフローチャートである。まず、ステップＳ３０１は、実施形態１における最適化周波数ｆn'の供給まで行うことを便宜上サブルーチンとして示している。
【００３４】
ステップＳ３０２において、応答時間制御部１３１は保留状態の発生を監視し、いずれかのデータ処理部にて保留状態が発生したらステップＳ３０３へ進む。ステップＳ３０３では、応答時間制御部１３１は保留状態が発生したデータ処理部に供給されている周波数ｆnとＦbaseの大小関係を比較する。ｆn＜Ｆbaseであった場合（Ｓ３０３でＹＥＳ）はステップＳ３０４へ進み、ｆn＝Ｆbaseであった場合（Ｓ３０３でＮＯ）はステップＳ３０７へ進む。
【００３５】
ステップＳ３０４において、応答時間制御部１３１は保留状態が発生したデータ処理部に対してＦbaseを供給する。ステップＳ３０５において、応答時間制御部１３１は保留状態が発生したデータ処理部の保留状態の解除を監視し、保留状態が解除されたらステップＳ３０６へ進む。ステップＳ３０６において、応答時間制御部１３１は保留状態が発生したデータ処理部に対して最適化周波数ｆn'を供給し直してフローチャートは終了する。
【００３６】
一方、ステップＳ３０７において、応答時間制御部１３１は保留状態が発生したデータ処理部より上流のデータ処理部に対して最適化周波数ｆn'から更に周波数を低減させた周波数を供給する。ステップＳ３０８において、応答時間制御部１３１は保留状態が発生したデータ処理部の保留状態の解除を監視し、保留状態が解除されたらステップＳ３０９へ進む。ステップＳ３０９において、応答時間制御部１３１は保留状態が発生したデータ処理部より上流のデータ処理部に対して最適化周波数ｆn'を供給し直して終了する。
【００３７】
上記のように、本実施形態では、データ処理モジュールの各々の動作周波数が制御されている場合に、いずれかが保留状態となったときは、そのデータ処理モジュールの動作周波数が基準周波数未満であるか否かを判定する。基準周波数未満のときは、実施形態２と同様に、保留状態が解除されるまで、着目データ処理モジュールの動作周波数を基準周波数となるように制御するため、保留状態の短縮化が実現される。一方、基準周波数と同一のときは、保留状態が解除されるまで、保留状態が発生したデータ処理モジュールより上流のデータ処理モジュールの各々の動作周波数を低減させる。なお、保留状態が発生したデータ処理モジュールより下流のデータ処理モジュールへデータが出力されない場合は、上流だけでなく下流のデータ処理モジュールの動作周波数を低減させるようにしても良い。この場合、動作周波数を低減するデータ処理モジュール数が増加するため、より消費電力を低減できる。
【００３８】
このように本実施形態では、処理実行モジュールに保留状態が発生した場合、動作周波数を適応的に変化させることで、保留状態からの復帰を早めつつ、消費電力を低減させることが可能である。
【００３９】
＜＜実施形態４＞＞
次に、データ処理部１１３で保留状態が発生した場合の応答時間制御部１３１における周波数制御に関する他の実施形態を説明する。なお本実施形態のシステムの基本構成は実施形態１と同じであり、最適化周波数ｆn'の設定まで済んでいるものとする。また、本実施形態においては、データ処理部１１２およびデータ処理部１１４は使用しないものとし、該２つのデータ処理部１１２、１１４にはクロック（または電源）が供給されないものとする。
【００４０】
データ処理部１１３に発生した保留状態の情報は応答時間制御部１３１へ通知される。応答時間制御部１３１では、基準周波数Ｆbaseを動作可能周波数の上限値Ｆmaxに置き換える。動作可能周波数の上限値Ｆmaxは、チップの出荷検査時に図示しないROM等に記載された値（テーブル）または係数からチップの温度あるいは消費電力より決定される。本実施形態においては上述したように２つのデータ処理部１１２、１１４が動作していないため、チップの消費電力（温度）は低くなるので、動作可能周波数の上限値Ｆmaxは多少大きめの値となる。
【００４１】
一方、保留状態が発生したデータ処理部１１３より上流のデータ処理部（本実施形態ではデータ処理部１１１、なお、データ処理部１１２は動作していないためクロックは供給しない）に対し、一時的に最適化周波数ｆn'から更に周波数を低減させたクロックを供給する。これにより上流のデータ処理部の処理が遅くなるため、データ処理部１１３での新たな保留状態の発生が抑制され、相対的にデータ処理効率が向上し、保留状態の短縮化が図れる。そして保留状態が解除された後、応答時間制御部１３１は上流のデータ処理部（データ処理部１１１）に対し最適化周波数ｆn'を供給し直し、基準周波数をＦmaxからＦbaseに戻す。
【００４２】
図４は、実施形態４の処理の流れを示すフローチャートである。まず、ステップＳ４０１は、実施形態１における最適化周波数ｆn'の供給まで行うことを便宜上サブルーチンとして示している。
【００４３】
ステップＳ４０２において、応答時間制御部１３１は各データ処理部の保留状態の発生を監視し、保留状態が発生したらステップＳ４０３へ進む。ステップＳ４０３では、応答時間制御部１３１は保留状態が発生したデータ処理部に周波数Ｆmaxのクロックを供給する。一方、上流に位置するデータ処理部（本実施形態ではデータ処理部１１１）のクロック周波数を低減する（Ｓ４０４）。
【００４４】
ステップＳ４０５において、応答時間制御部１３１は保留状態が発生したデータ処理部の保留状態の解除を監視し、保留状態が解除されたらステップＳ４０６へ進む。ステップＳ４０６において、応答時間制御部１３１は保留状態が発生したデータ処理部のクロックに元の最適化周波数ｆn'を供給し直す。また、上流に位置するデータ処理部（本実施形態ではデータ処理部１１１）のクロックも元の周波数に戻す（Ｓ４０７）。全ての周波数が元に戻ると処理が終了する。
【００４５】
本実施形態では、データ処理モジュールの各々の動作周波数が制御されている場合に、いずれかが保留状態となったときは、そのデータ処理モジュールの動作周波数を動作可能周波数の上限値Ｆmaxに設定する。このため、保留状態のよりいっそうの短縮化が実現される。一方、保留状態が発生したデータ処理部より上流のデータ処理部に対しては、動作周波数を低減させるようにする。これにより、新たな保留状態の発生を抑制すると共に、上流に位置する処理モジュールの消費電力を削減する。なお、保留状態が発生したデータ処理モジュールより下流のデータ処理モジュールへデータが出力されない場合は、上流だけでなく下流のデータ処理モジュールの動作周波数を低減させるようにしても良い。この場合、動作周波数を低減するデータ処理モジュール数が増加するため、より消費電力を低減できる。
【００４６】
＜＜その他の実施形態＞＞
また、上述の実施形態では本発明はリング型のパイプライン処理回路を説明に用いたが、リング型だけではなく、直線型のパイプライン処理に適用しても同様の効果を得ることができる。また、パイプライン処理である必要もなく、処理を並列に分割して各コアで分散処理をする回路にも適用して同様の効果を得ることができる。このように、入出力について依存関係のある複数のコアで処理をする場合に適用すればよい。また、本発明は処理モジュールの全てに適用しなくても少なくとも２つの処理モジュールに適用すれば効果を期待できる。また、応答時間制御部１３１はクロックジェネレーターとして水晶素子を単独で有していてもよいし、外部から入力されるクロックをそのまま若しくは分周・逓倍させてからデータ処理部へ供給する回路であってもよい。あるいは、適切な割合でクロックを間引くような回路でも良い。
【００４７】
また、最適化周波数ｆn'の設定を応答時間制御部１３１もしくはデータ処理サブシステム外部の記憶装置に記憶させ２回目の起動時にその設定を反映するようにしてもよい。ただし、この場合はデータ処理サブシステムに同様の処理をさせる場合にのみ適用することが好ましい。また、前述の実施形態では周波数対応答時間比が近づくように制御するように説明しているが、動作クロックと応答時間には相関があるため例えば動作クロックを低減することで応答時間が長くなるように制御できる。従って、計測した複数の応答時間が近づくように前記複数の処理手段の少なくとも１つに供給する動作クロックの周波数を低減させることで省電力できる。
【００４８】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2011187045.tif 000003
【図２】
2011187045.tif 000004
【図３】
2011187045.tif 000005
【図４】
2011187045.tif 000006