(57)【要約】【課題】回路規模の増大を抑えてコストを低減することができるとともに、クロック供給制御の粒度を細かくして消費電力をより低減化することができる半導体集積回路装置を提供する。【解決手段】クロック供給部１は、第１のクロック制御部３からの制御によってクロックの供給を停止し、プロセッサ４からの制御によってクロックの供給を開始する。【選択図】図１
2008003728.tif 000002
【特許請求の範囲】
【請求項１】
任意の機能を作動させるための処理を実行する処理手段と、
前記処理手段にクロックを供給するクロック供給手段と、
前記処理手段の状態に応じて前記クロック供給手段を制御する第１のクロック制御手段と、
前記処理手段の状態に関わらず前記クロック供給手段を制御する第２のクロック制御手段とを備え、
前記クロック供給手段は、
前記第１のクロック制御手段からの制御によって前記クロックの供給を停止し、前記第２のクロック制御手段からの制御によって前記クロックの供給を開始する
ことを特徴とする半導体集積回路装置。
【請求項２】
前記第１のクロック制御手段は、
前記処理手段がクロック供給を必要とする状態であることを検出して、前記クロック供給手段からのクロック供給を継続する
ことを特徴とする請求項１記載の半導体集積回路装置。
【請求項３】
前記第１のクロック制御手段は、
前記処理手段がクロック供給を必要としない状態であることを検出して、前記クロック供給手段からのクロック供給を停止する
ことを特徴とする請求項１記載の半導体集積回路装置。
【請求項４】
前記第２のクロック制御手段は、
クロック供給開始要求の命令によって、前記クロック供給手段からのクロック供給の開始を指示する
ことを特徴とする請求項１または請求項２または請求項３記載の半導体集積回路装置。
【請求項５】
前記第２のクロック制御手段は、
前記クロック供給開始要求の命令を、コンパイル時に自動挿入する
ことを特徴とする請求項４記載の半導体集積回路装置。
【請求項６】
前記第２のクロック制御手段は、
Ｉ／Ｏｍａｐｐｅｄレジスタ（アイオーマップドレジスタ）の設定によって、前記クロック供給手段からのクロック供給の開始を指示する
ことを特徴とする請求項１または請求項２または請求項３記載の半導体集積回路装置。
【請求項７】
前記第１のクロック制御手段は、
前記処理手段がクロック供給を必要としない状態であることを検出して、前記クロック供給手段からのクロック供給を停止すると共に、
前記処理手段とは異なる他のモジュールに対して、任意に前記処理手段へのクロック供給の停止を通知する
ことを特徴とする請求項３記載の半導体集積回路装置。
【請求項８】
前記第１のクロック制御手段は、
前記第２のクロック制御手段に割り込みを発生させることによって、前記他のモジュールに対して前記処理手段へのクロック供給の停止を通知する
ことを特徴とする請求項７記載の半導体集積回路装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路装置に関し、特に、低消費電力化技術に関するものである。
【背景技術】
【０００２】
従来から、例えばＯＡ周辺機器や工業用制御機器等のデジタル機器には、マイクロプロセッサを含むコンピュータシステムを１チップに集積化したシステムＬＳＩなど、多機能で大規模な半導体集積回路装置が広く搭載利用されており、このような半導体集積回路装置に対して、近年ますます低消費電力化の要求が高まっている。
【０００３】
このような要求に対して、従来の半導体集積回路装置の低消費電力化技術の１つに、装置内で使用されるクロックの供給開始及び終了を制御するクロック供給制御があり、このクロック供給制御として、装置内の処理回路の動作が必要な場合にのみクロック供給を行う方法が採用されており、このようなクロック供給方法として、クロック供給をハードウェア処理のみで制御する方法が取られているもの（例えば、特許文献１を参照）や、クロック供給をソフトウェア処理のみで制御する方法が取られているものがある。
【特許文献１】特開平１０−１６１７６６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記のような従来の構成には、それぞれに一長一短がある。
例えば、クロック供給をハードウェア処理のみで制御する方法では、クロック供給制御の粒度を細かくすることが可能であり、その結果、消費電力を低減することが可能になるが、クロックの供給開始を検出するための回路が既存回路とは別に必要になる。そのため、回路規模が増大し、その増大によりコストも増加する。
【０００５】
一方、クロック供給をソフトウェア処理のみで制御する方法では、クロック供給開始や終了判断のための回路が不要なため、回路規模の増大によるコスト増加は低減できるが、クロックが停止可能な状態をソフトウェアで検出するため、本来停止できるはずのクロックサイクルにも無駄にクロックを供給することになる。そのため、クロック制御の粒度が粗くなり、消費電力が低減しにくくなる。
【０００６】
本発明は、上記従来の問題点を解決するもので、回路規模の増大を抑えてコストを低減することができるとともに、クロック供給制御の粒度を細かくして消費電力をより低減化することができる半導体集積回路装置を提供する。
【課題を解決するための手段】
【０００７】
上記の課題を解決するために、本発明の請求項１記載の半導体集積回路装置は、任意の機能を作動させるための処理を実行する処理手段と、前記処理手段にクロックを供給するクロック供給手段と、前記処理手段の状態に応じて前記クロック供給手段を制御する第１のクロック制御手段と、前記処理手段の状態に関わらず前記クロック供給手段を制御する第２のクロック制御手段とを備え、前記クロック供給手段は、前記第１のクロック制御手段からの制御によって前記クロックの供給を停止し、前記第２のクロック制御手段からの制御によって前記クロックの供給を開始することを特徴とする。
【０００８】
また、本発明の請求項２記載の半導体集積回路装置は、請求項１記載の半導体集積回路装置であって、前記第１のクロック制御手段は、前記処理手段がクロック供給を必要とする状態であることを検出して、前記クロック供給手段からのクロック供給を継続することを特徴とする。
【０００９】
また、本発明の請求項３記載の半導体集積回路装置は、請求項１記載の半導体集積回路装置であって、前記第１のクロック制御手段は、前記処理手段がクロック供給を必要としない状態であることを検出して、前記クロック供給手段からのクロック供給を停止することを特徴とする。
【００１０】
これらの構成により、クロック供給が必要な状態、もしくは、停止可能な状態が既存の内部状態から容易に検出できるため、クロック供給を最適に制御することが可能になり、積極的な電力低減を図ることができる。
【００１１】
また、本発明の請求項４記載の半導体集積回路装置は、請求項１または請求項２または請求項３記載の半導体集積回路装置であって、前記第２のクロック制御手段は、クロック供給開始要求の命令によって、前記クロック供給手段からのクロック供給の開始を指示することを特徴とする。
【００１２】
また、本発明の請求項６記載の半導体集積回路装置は、請求項１または請求項２または請求項３記載の半導体集積回路装置であって、前記第２のクロック制御手段は、Ｉ／Ｏｍａｐｐｅｄレジスタ（アイオーマップドレジスタ）の設定によって、前記クロック供給手段からのクロック供給の開始を指示することを特徴とする。
【００１３】
これらの構成により、クロック供給の必要な状態がソフトウェアから一意に決定できるモジュールに対して、ソフトウェアにより可能な制御を利用し、使用直前からクロック供給を開始することによって、積極的な電力低減を図ることができる。
【００１４】
また、本発明の請求項５記載の半導体集積回路装置は、請求項４記載の半導体集積回路装置であって、前記第２のクロック制御手段は、前記クロック供給開始要求の命令を、コンパイル時に自動挿入することを特徴とする。
【００１５】
この構成により、ソフトウェア開発者が意識しないところで、積極的な電力低減を図ることができる。
また、本発明の請求項７記載の半導体集積回路装置は、請求項３記載の半導体集積回路装置であって、前記第１のクロック制御手段は、前記処理手段がクロック供給を必要としない状態であることを検出して、前記クロック供給手段からのクロック供給を停止すると共に、前記処理手段とは異なる他のモジュールに対して、任意に前記処理手段へのクロック供給の停止を通知することを特徴とする。
【００１６】
また、本発明の請求項８記載の半導体集積回路装置は、請求項７記載の半導体集積回路装置であって、前記第１のクロック制御手段は、前記第２のクロック制御手段に割り込みを発生させることによって、前記他のモジュールに対して前記処理手段へのクロック供給の停止を通知することを特徴とする。
【００１７】
これらの構成により、処理手段による処理の終了を受けて、次の新たな処理に移行する場合に、最大限にクロック供給を停止することが可能になり、電力の低減のための有効な手段となる。
【発明の効果】
【００１８】
以上のように本発明によれば、ソフトウェア処理により制御可能で、かつ、機能ブロックごとにクロック制御が可能なモジュール構成であれば、ソフトウェアにおけるクロック供給の開始を一意に決定して制御することが可能で、かつ、ハードウェアにおける内部処理状態からその処理終了の判断が、既存信号を用いて実現することができる。
【００１９】
そのため、クロック供給開始及びクロック供給終了を、ハードウェア処理のみで行う場合と比較して、容易に、回路規模を減少し、かつ、消費電力の低減効果もほとんど変えることなく、効率的な機能実現、及び、低消費電力化を図ることができる。
【発明を実施するための最良の形態】
【００２０】
以下、本発明の実施の形態を示す半導体集積回路装置について、図面を参照しながら具体的に説明する。
図１は本実施の形態の半導体集積回路装置として、クロック供給部１、処理回路２、第１のクロック制御部３、及びプロセッサ（第２のクロック制御手段）４を含むコンピュータシステム（例えば、システムＬＳＩ）Ｃ１の全体構成を示すブロック図である。
【００２１】
図２及び図３は本実施の形態の半導体集積回路装置におけるクロック供給の開始から終了までのフローチャートである。
図２及び図３に示すように、まず、クロック供給部１は処理回路２に対してクロック停止状態（ステップＳ１）にあり、クロック供給部１は、プロセッサ４からクロック供給開始要求の指示を受ける（ステップＳ２）ことで、処理回路２及び第１のクロック制御部３にクロック供給を開始（ステップＳ３）し、処理回路２は供給されたクロックによって内部処理を行う（ステップＳ４）、処理回路２から第１のクロック制御部３に内部状態を通知し、第１のクロック制御部３では、図２に示すように通知された内部状態から処理の継続を検出する（図２のステップＳ５）か、もしくは、図３に示すように処理の終了を検出（図３のステップＳ５０）し、クロック動作通知をクロック供給部１に通知することで、クロック供給部１は、処理回路２及び第１のクロック制御部３へのクロック供給を継続（ステップＳ３）、もしくは、クロックを停止（すなわちクロック供給を停止）する（ステップＳ１）。
【００２２】
また、本実施の形態において、図２のステップＳ５もしくは図３のステップＳ５０における第１のクロック制御部３での状態検出の条件を、複数の内部状態のいずれかが動作していること、もしくは、複数の内部動作状態の全てが終了していることとし、処理状態の終了を判断する。
【００２３】
この構成は、いずれをとったとしても、従来のハードウェアに大規模な追加および修正を施すことなく、処理回路２の既存の状態を利用して処理の継続、もしくは、終了の検出が可能であり、かつ容易に実現可能である。
【００２４】
また、本実施の形態において、ステップＳ２における処理回路２及び第１のクロック制御部３へのクロック供給の開始指示を、プロセッサ４の命令によって行う。具体的には、プロセッサ４における処理命令に、該当する機能モジュールへのクロック供給開始命令を設ける（例えば、図４に示す「ｃｌｋｏｎ  ＃ａ」などの命令コード）ことにより、プロセッサ４からクロック供給部１に、該当する機能モジュールへのクロック供給開始の指示を行うことで実施する。
【００２５】
この構成は、プロセッサ４から制御が可能な機能モジュールである場合には、好適である。
また、さらに好ましくは、本実施の形態において、ステップＳ２における処理回路２及び第１のクロック制御部３へのクロック供給の開始指示を、プロセッサ４の命令によって行うが、その特定の命令をコンパイラによりプログラム中に挿入してもよい。具体的には、コンパイラは、データの生存期間を判断するなどしてデータが最初にアクセスされるプログラム位置を知って、その前にクロック供給開始を要求する命令を挿入するといったことが考えられる。
【００２６】
また、本実施の形態において、ステップＳ２における処理回路２及び第１のクロック制御部３へのクロック供給の開始指示を、Ｉ／Ｏｍａｐｐｅｄレジスタ（アイオーマップドレジスタ）の設定によって行う。具体的には、プロセッサ４に処理回路２及び第１のクロック制御部３へのクロック供給開始を制御するＩ／Ｏｍａｐｐｅｄレジスタを保有し、当該レジスタに処理回路２及び第１のクロック制御部３へのクロック供給開始指示をセットすることによって、プロセッサ４からクロック供給部１にクロック供給開始の指示を行うことで、処理回路２及び第１のクロック制御部３へのクロック供給を開始する。
【００２７】
また、本実施の形態において、処理回路２へのクロック供給の終了を要因として、プロセッサ４、もしくは、処理回路２とは異なるモジュールへ任意の通知や割り込みとして通知する。
【００２８】
この構成は、処理回路２の処理終了を受けて、その後処理を開始する関係にある別モジュールへのクロック供給を最適にすることによって、積極的な電力低減が可能である。具体的には、ＤＭＡ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）コントローラによってデータ転送を行った後、その転送されたデータの使用を開始する外部へのデータ出力モジュールのような場合などが考えられる。
【００２９】
ハードウェアを上記の程度に簡素化し、かつ、ソフトウェアからの制御を受け入れるために好ましい構成とすることによって、ハードウェアとソフトウェアとの良好な機能分担が可能となり、その結果、消費電力の低減を行い、ハードウェアがいたずらに大規模化する事態も回避することができる。
【産業上の利用可能性】
【００３０】
本発明の半導体集積回路装置は、回路規模の増大を抑えてコストを低減することができるとともに、クロック供給制御の粒度を細かくして消費電力をより低減化することができるもので、ソフトウェアからの制御が可能なモジュールに利用可能であり、例えば、アクセラレータやマルチプロセッサ等に適用できる。
【図面の簡単な説明】
【００３１】
【図１】本発明の実施の形態の半導体集積回路装置をモジュール化したコンピュータシステムのブロック図
【図２】同実施の形態の半導体集積回路装置におけるクロック供給停止制御を処理の継続検出から行うためのフローチャート
【図３】同実施の形態の半導体集積回路装置におけるクロック供給停止制御を処理の終了検出から行うためのフローチャート
【図４】同実施の形態の半導体集積回路装置におけるクロック供給開始制御を行うための命令の記載例の説明図
【符号の説明】
【００３２】
１    クロック供給部
２    処理回路
３    第１のクロック制御部
４    プロセッサ（第２のクロック制御手段）
【図１】
2008003728.tif 000003
【図２】
2008003728.tif 000004
【図３】
2008003728.tif 000005
【図４】
2008003728.tif 000006