(57)【要約】【課題】ＣＰＵへ供給するクロックを動的に変更して最適なクロックを供給する。【解決手段】予め設定した任意時間をカウントするシステム時間計測部１０５と、ＣＰＵ１０２がメモリブロック１０６、周辺ブロック１０７、１０８へアクセスするための選択信号を監視し、予め設定した時間内で選択信号がアサートする割合（バス占有率）を算出するブロック選択信号・バス占有率監視部１０４と、バス占有率に応じてＣＰＵへ供給するクロックを変更するシステムクロック変換生成部１０３とを備える。【選択図】    図１
2004246598.tif 000002
【特許請求の範囲】
【請求項１】
周辺装置を制御するＣＰＵへ供給するクロックを制御するクロック制御方法において、
前記ＣＰＵが前記周辺装置へアクセスするための選択信号を監視し、
予め設定した時間内で前記選択信号がアサートする割合を得、
前記割合に応じて前記ＣＰＵへ供給するクロックを変更するクロック制御方法。
【請求項２】
周辺装置を制御するＣＰＵへ供給するクロックを制御するクロック制御プログラムであって、コンピュータを、
前記ＣＰＵが前記周辺装置へアクセスするための選択信号を監視する手段、
予め設定した時間内で前記選択信号がアサートする割合を算出する手段、
前記割合に応じて前記ＣＰＵへ供給するクロックを変更する手段として機能させるプログラム。
【請求項３】
周辺装置を制御するＣＰＵへ供給するクロックを制御するクロック制御プログラムを格納する記録媒体であって、
前記ＣＰＵが前記周辺装置へアクセスするための選択信号を監視するステップと、
予め設定した時間内で前記選択信号がアサートする割合を算出するステップと、
前記割合に応じて前記ＣＰＵへ供給するクロックを変更するステップとをコンピュータに実行させるプログラムを格納したコンピュータ読み取り可能な記録媒体。
【請求項４】
周辺装置を制御するＣＰＵへ供給するクロックを制御するクロック制御システムにおいて、
予め設定した任意時間をカウントする手段と、
前記ＣＰＵが前記周辺装置へアクセスするための選択信号を監視する手段と、
前記予め設定した時間内で前記選択信号がアサートする割合を算出する手段と、
前記割合に応じて前記ＣＰＵへ供給するクロックを変更する手段とを備えるクロック制御システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＣＰＵとそれに接続される周辺装置とで構成されるシステムの消費電力低減技術に係り、特に、システムに供給するクロックを最適化するクロック制御方法に関する。
【０００２】
【従来の技術】
ＣＰＵシステムの処理速度の向上に伴い、システムの消費電力増大に対する対策が採られている。従来の消費電力低減技術は、システム上のプログラムの負荷によって、ＣＰＵへ供給するクロックをソフトウェアで制御したり、ＣＰＵに接続される各周辺制御装置などが非活性かどうかを判断して、周辺制御装置の消費電力を制御している（特許文献１、２、非特許文献１参照）。
【０００３】
【特許文献１】
特開２０００−２２７８９２号公報
【特許文献２】
特開平７−２９５６７５号公報
【非特許文献１】
Ｃｒｕｓｏｅ  ＬｏｎｇＲｕｎパワーマネジメント技術、［平成１４年９月２０日検索］、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｃｒｕｓｏｅ．ｊｐ／ｔｅｃｈｏｎｏｌｏｇｙ／ａｒｃｈｉｔｅｃｔｕｒｅ／ｌｏｎｇｒｕｎ．ｈｔｍｌ＞
【０００４】
【発明が解決しようとする課題】
上記従来の消費電力低減技術は、ＣＰＵへ供給するクロックを段階的に切り替えるだけで、細かく制御できないなどの問題があった。また、システム上で動作するプログラムがアイドル状態に陥ったとき、ＣＰＵへ供給するクロックの制御をソフトウェアで実行しているため即応性に欠けるという問題があった。
【０００５】
本発明は、上記事情に鑑みてなされたもので、ＣＰＵへ供給するクロックを動的に変更して最適なクロックを供給することができるクロック制御方法を提供することを目的とする。
【０００６】
【課題を解決するための手段】
本発明は、周辺装置を制御するＣＰＵへ供給するクロックを制御するクロック制御方法において、前記ＣＰＵが前記周辺装置へアクセスするための選択信号を監視し、予め設定した時間内で前記選択信号がアサートする割合を得、前記割合に応じて前記ＣＰＵへ供給するクロックを変更するものである。
【０００７】
上記構成によれば、ＣＰＵが周辺装置へアクセスするための選択信号が一定時間内でアサートする割合をバス占有率として取得し、バス占有率に応じてＣＰＵへ供給するクロックを変更することで、クロックの動的変更が可能となり最適なクロックを供給することができる。
【０００８】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照して説明する。
図１は、本発明のクロック制御システムを示すブロック図である。システム１０１は、ＣＰＵ１０２と、システムクロック変換生成部１０３と、ブロック選択信号・バス占有率監視部１０４と、システム時間計測部１０５と、システムバス１０８に接続されるメモリブロック１０６と、周辺ブロック１０７、１０８とを有する。
【０００９】
システムクロック変換生成部１０３は、ＣＰＵ１０２へ供給するクロックを生成する。ブロック選択信号・バス占有率監視部１０４は、ＣＰＵ１０２がシステムバス１０９に接続されたメモリブロック１０６や周辺ブロック１０７、１０８を選択するためのブロック選択信号のアサート時間とネゲート時間を計測し、ブロック選択信号がアサートする割合を算出してシステムクロック変換生成部１０３に通知する。システム時間計測部１０５は、設定された任意時間をカウントするタイマ機能を備え、任意時間をカウントしてブロック選択信号・バス占有率監視部１０４へ通知する。
【００１０】
図２はシステム時間計測部１０５の動作を示すフローチャートである。まず、タイマカウント設定値をリードし（ステップＳ１）、タイマカウント値を設定する（ステップＳ２）。タイマカウント設定値は、ＣＰＵ１０２がメモリブロック１０６に設定した値またはシステム時間計測部１０５に予め設定されている値である。その後、タイマカウントを開始し（ステップＳ３）、タイマカウント設定値までカウントして（ステップＳ４）、ブロック選択信号・バス占有率監視へ通知する（ステップＳ５）。
【００１１】
図３はブロック選択信号・バス占有率監視部１０４の動作を示すフローチャートである。まず、ブロック選択信号がアサートしている時間（カウント値）を初期化し（ステップＳ１１）、システム時間計測部１０５からカウント終了の通知を待つ（ステップＳ１２）。
【００１２】
通知を受けていない場合は、ブロック選択信号がアサートされているかを判定し（ステップＳ１３）、ブロック選択信号がアサートされている場合は、ブロック選択信号アサート値をカウントし（ステップＳ１４）、ステップＳ１２へ戻る。ブロック選択信号がアサートされていない場合は、ブロック選択信号がネゲート状態であると判定し、ブロック選択信号ネゲート値をカウントし（ステップＳ１５）、ステップＳ１２へ戻る。
【００１３】
通知を受けている場合は、ステップＳ１４、１５でカウントしたブロック選択信号アサート値、ネゲート値を読み出し（ステップＳ１６）、ブロック選択信号アサート率（バス占有率）を算出し（ステップＳ１７）、システムクロック変換生成部１０３へ通知し（ステップＳ１８）、ステップＳ１１へ戻る。
【００１４】
図４はシステムクロック変換生成部１０３の動作を示すフローチャートである。まず、ＣＰＵ１０２へクロックを供給し（ステップＳ２１）、ブロック選択信号・バス占有率監視部１０４からの通知を待つ（ステップＳ２２）。通知がある場合は、バス占有率に対応するクロックを表１に示すクロック換算表に基づいて選択し（ステップＳ２３）、選択したクロックに切り替えて（ステップＳ２４）、ＣＰＵ１０２へクロックを供給する。
【００１５】
【表１】
2004246598.tif 000003
【００１６】
【発明の効果】
以上説明したように、本発明によれば、ＣＰＵが周辺装置へアクセスするための選択信号が一定時間内でアサートする割合をバス占有率として取得し、バス占有率に応じてＣＰＵへ供給するクロックを変更することで、クロックの動的変更が可能となり最適なクロックを供給して消費電力を低減することができる。
【図面の簡単な説明】
【図１】本発明におけるクロック制御システムの構成を示すブロック図である。
【図２】クロック制御システムのシステム時間計測部の動作を示すフローチャートである。
【図３】クロック制御システムのブロック選択信号・バス占有率監視部の動作を示すフローチャートである。
【図４】クロック制御システムのシステムクロック変換生成部の動作を示すフローチャートである。
【符号の説明】
１０１  クロック制御システム
１０２  ＣＰＵ
１０３  システムクロック変換生成部
１０４  ブロック選択信号・バス占有率監視部
１０５  システム時間計測部
１０６  メモリブロック
１０７、１０８  周辺ブロック
１０９  システムバス
【図１】
2004246598.tif 000004
【図２】
2004246598.tif 000005
【図３】
2004246598.tif 000006
【図４】
2004246598.tif 000007