(57)【特許請求の範囲】
【請求項１】
夫々対応するコマンド信号がアサートされると起動動作を開始しネゲートされると動作を停止する複数の機能ブロックと、
クロック信号を生成するクロック生成回路と、
該複数の機能ブロックに対して、該夫々対応するコマンド信号のアサート状態に応答して該クロック信号の供給を開始すると共にネゲート状態に応答して該クロック信号の供給を停止するクロック制御回路と、
該複数の機能ブロックに対して該コマンド信号の状態を制御するコントローラ
を含み、該複数の機能ブロックの少なくとも１つは該コマンド信号を格納するレジスタを含み、該コントローラが該レジスタを該コマンド信号のアサート状態に設定し、該少なくとも１つの機能ブロックの動作が終了すると該少なくとも１つの機能ブロックにより該レジスタを該コマンド信号のネゲート状態にリセットし、
該複数の機能ブロックの少なくとも１つに対しては、該クロック制御回路は前記レジスタから供給される前記コマンド信号を前記少なくとも１つの機能ブロックが起動動作する場合の処理遅延に対応する第１の遅延量遅延させ該第１の遅延量遅延されたコマンド信号の状態に応答して該クロック信号の供給を開始すると共に、前記レジスタから供給される前記コマンド信号を前記少なくとも１つの機能ブロックの停止する場合の処理遅延に対応する第２の遅延量遅延させ該第２の遅延量遅延されたコマンド信号の状態に応答して該クロック信号の供給を停止する
ことを特徴とする半導体集積回路。
【請求項２】
該複数の機能ブロックの少なくとも１つは、所定の回路の所定の動作シーケンスに応じて該対応するコマンド信号がアサート及びネゲートされることを特徴とする請求項１記載の半導体集積回路。
【請求項３】
夫々対応するコマンド信号がアサートされると起動動作を開始しネゲートされると動作を停止する複数の機能ブロックに供給するクロック信号を生成し、
該複数の機能ブロックに対して該夫々対応するコマンド信号のアサート状態に応答して該クロック信号の供給を開始し、
該複数の機能ブロックに対して該夫々対応するコマンド信号のネゲート状態に応答して該クロック信号の供給を停止し、
該コマンド信号を遅延する
各段階を含み、該クロック信号の供給を開始する段階は該遅延されたコマンド信号のアサート状態に応答して該クロック信号を供給し、該クロック信号の供給を停止する段階は該遅延されたコマンド信号のネゲート状態に応答して該クロック信号の供給を停止し、該複数の機能ブロックの少なくとも１つは該コマンド信号を格納するレジスタを含み、該レジスタを該コマンド信号のアサート状態に設定して開始された該少なくとも１つの機能ブロックの動作が終了すると該少なくとも１つの機能ブロックにより該レジスタを該コマンド信号のネゲート状態にリセットし、
該クロック信号の供給を開始する段階は、該複数の機能ブロックの少なくとも１つに対しては、前記レジスタから供給される前記コマンド信号を前記少なくとも１つの機能ブロックが起動動作する場合の処理遅延に対応する第１の遅延量遅延させ該第１の遅延量遅延されたコマンド信号の状態に応答して該クロック信号の供給を開始し、該クロック信号の供給を停止する段階は、前記レジスタから供給される前記コマンド信号を前記少なくとも１つの機能ブロックの停止する場合の処理遅延に対応する第２の遅延量遅延させ該第２の遅延量遅延されたコマンド信号の状態に応答して該クロック信号の供給を停止する
ことを特徴とするクロック制御方法。
【請求項４】
前記少なくとも１つの機能ブロックは、当該機能ブロックの動作が終了すると動作終了フラグを発行する内部回路を有し、前記動作終了フラグによって前記レジスタがリセットされることを特徴とする請求項１記載の半導体集積回路。
【請求項５】
前記少なくとも１つの機能ブロックは、当該機能ブロックの動作が終了すると動作終了フラグを発行する内部回路を有し、前記動作終了フラグによって前記レジスタがリセットされることを特徴とする請求項３記載のクロック制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、一般に半導体集積回路に関し、詳しくは内部回路へのクロック供給を開始及び停止するクロック制御回路を備えた半導体集積回路及び内部回路へのクロック供給を開始及び停止するクロック制御方法に関する。
【０００２】
【従来の技術】
半導体集積回路等の大規模な論理回路においては、消費電力を削減するために、回路内でのクロックの供給を必要に応じて制御する技術が重要となっている。特に、電力の消費量が問題となる携帯用機器では、そのような技術が広く用いられる。
【０００３】
従来、クロックの供給開始・停止に係る制御は、システムとしては特に行われることなく、電源の投入及び切断に伴い、クロックを供給開始したり停止したりするのが通常の構成であった。しかし携帯用機器が普及しかつ回路規模が増大するに伴って、クロック配線に付随する負荷容量により消費される待機電力が無視できなくなり、ゲーテッドクロックを使用することによりクロックの開始・停止を制御することが一般的になっている。
【０００４】
従来のクロック制御においては、マイクロコントローラのバスに繋がるクロック制御部を設け、このクロック制御部を用いて、バスに繋がる複数の機能ブロックに対するクロック信号の供給・停止についての制御を行う。クロック制御部には、例えば制御対象の各機能ブロックに対応するレジスタが設けられ、クロックの供給開始・停止に関するコマンドをマイクロコントローラからレジスタに格納することで、対応する機能ブロックに関するクロック制御を実行する。
【０００５】
【発明が解決しようとする課題】
上記の制御方法では、マイクロコントローラが指定する開始・停止タイミングでクロック制御がなされるので、各機能ブロックの実際の動作開始・停止タイミングに合わせてクロック制御を実現するためには、マイクロコントローラ側で常に各制御対象ブロックの動作状態をチェックする必要がある。これを実現するためには、非常に短いサイクルで各機能ブロックをポーリングしなければならず現実的でない。従って実際には、クロック供給開始停止の制御対象を比較的大きな論理回路ブロックに設定して、比較的長いチェックサイクルでクロック制御を行うことになる。
【０００６】
半導体集積技術の進歩によって一つのＬＳＩに数百万ゲートの回路を組み込むことが可能となっている現在、１つのシステムを１つのＬＳＩに組み込むことが多い。このような構成の場合、１つのＬＳＩの内部には、多数の機能ブロックが配置されることになる。上記の従来の方法では、マイクロコントローラの処理負荷との関係で、クロック制御を行なうブロックの単位を小さくすること、及び短い処理サイクルでクロック制御することは難しく、低消費電力化するうえでの大きな阻害要因になっていた。
【０００７】
以上を鑑みて、本発明は、機能ブロック毎にクロック供給の開始・停止を効率的に制御するクロック制御回路を備えた半導体集積回路、及び機能ブロック毎にクロック供給の開始・停止を効率的に制御するクロック制御方法を提供することを目的とする。
【０００８】
【課題を解決するための手段】
本発明の半導体集積回路は、夫々対応するコマンド信号がアサートされると起動動作を開始しネゲートされると動作を停止する複数の機能ブロックと、クロック信号を生成するクロック生成回路と、該複数の機能ブロックに対して、該夫々対応するコマンド信号のアサート状態に応答して該クロック信号の供給を開始すると共にネゲート状態に応答して該クロック信号の供給を停止するクロック制御回路と、該複数の機能ブロックに対して該コマンド信号の状態を制御するコントローラを含み、該複数の機能ブロックの少なくとも１つは該コマンド信号を格納するレジスタを含み、該コントローラが該レジスタを該コマンド信号のアサート状態に設定し、該少なくとも１つの機能ブロックの動作が終了すると該少なくとも１つの機能ブロックにより該レジスタを該コマンド信号のネゲート状態にリセットし、該複数の機能ブロックの少なくとも１つに対しては、該クロック制御回路は前記レジスタから供給される前記コマンド信号を前記少なくとも１つの機能ブロックが起動動作する場合の処理遅延に対応する第１の遅延量遅延させ該第１の遅延量遅延されたコマンド信号の状態に応答して該クロック信号の供給を開始すると共に、前記レジスタから供給される前記コマンド信号を前記少なくとも１つの機能ブロックの停止する場合の処理遅延に対応する第２の遅延量遅延させ該第２の遅延量遅延されたコマンド信号の状態に応答して該クロック信号の供給を停止することを特徴とする。
【０００９】
上記半導体集積回路においては、各ブロックの動作開始・停止を指示する各ブロックのコマンド信号に応じて、各ブロックに対するクロック供給の開始・停止に係る制御を行う。この構成では、マイクロコントローラがクロック供給の開始・停止に係るタイミングを決定するのではないので、クロック制御の単位となるブロックが細分化され数が増大しても、マイクロコントローラにかかる負荷が増大することはない。またクロック供給の開始及び停止のタイミングについては、マイクロコントローラの処理サイクルに関わらずに、実際の機能ブロックの動作の開始・停止に応じたきめ細かな制御をすることが可能となる。
【００１０】
【発明の実施の形態】
以下に、本発明の実施例を添付の図面を用いて詳細に説明する。
【００１１】
図１は、本発明による半導体集積回路の構成の一例を示す構成図である。
【００１２】
図１の半導体集積回路は、マイクロコントローラ１１、クロック制御回路１２、論理ブロック１３乃至１５、論理回路１６、及びクロック生成回路１７を含む。クロック制御回路１２は、ＡＮＤ回路２１乃至２３を含む。論理ブロック１３は、コマンドレジスタ（例えばフリップフロップ）３１と内部回路３２を含む。論理ブロック１４は、コマンドレジスタ（例えばフリップフロップ）３３と内部回路３４を含む。更に論理ブロック１５は、内部回路３５を含む。
【００１３】
マイクロコントローラ１１が、論理ブロック１３及び１４に対して起動コマンドを発行すると、論理ブロック１３及び１４のコマンドレジスタ３１及び３３に“１”がセットされる。またマイクロコントローラ１１が、論理回路１６に対して起動コマンドを発行すると、論理回路１６が動作を開始する。論理回路１６はタイマーやシーケンサ等の回路であり、所定のシーケンスに従い動作し、あるタイミングで論理ブロック１５の動作イネーブル端子１５ｂに対してイネーブル信号をアサートする。
【００１４】
クロック制御回路１２のＡＮＤ回路２１は、コマンドレジスタ３１に格納された設定データを一方の入力とし、クロック生成回路１７から供給されるクロック信号を他方の入力とする。従って、コマンドレジスタ３１に格納される設定データが“１”である場合には、クロック制御回路１２はクロック生成回路１７で生成されるクロック信号を論理ブロック１３のクロック供給端子１３ａに供給する。論理ブロック１３の内部回路３２は、コマンドレジスタ３１の設定データ“１”に応答して起動し、クロック供給端子１３ａから供給されるクロック信号に基づいて動作する。内部回路３２は、動作が終了すると動作終了フラグを発行し、これによりコマンドレジスタ３１の内容が“０”にリセットされる。
【００１５】
コマンドレジスタ３１の内容が“０”にリセットされると、クロック制御回路１２のＡＮＤ回路２１の一方の入力が“０”となり、論理ブロック１３のクロック供給端子１３ａに対するクロック供給が停止される。
【００１６】
クロック制御回路１２のＡＮＤ回路２２は、コマンドレジスタ３３に格納された設定データを一方の入力とし、クロック生成回路１７から供給されるクロック信号を他方の入力とする。従って、コマンドレジスタ３３に格納される設定データが“１”である場合には、クロック制御回路１２はクロック生成回路１７で生成されるクロック信号を論理ブロック１４のクロック供給端子１４ａに供給する。論理ブロック１４の内部回路３４は、コマンドレジスタ３３の設定データ“１”に応答して起動し、クロック供給端子１４ａから供給されるクロック信号に基づいて動作する。マイクロコントローラ１１が停止コマンドを論理ブロック１４に対して発行すると、論理ブロック１４のコマンドレジスタ３３に“０”がセットされる。コマンドレジスタ３３の設定データ“０”に応答して、内部回路３４は動作を終了する。
【００１７】
コマンドレジスタ３３の内容が“０”にリセットされると、クロック制御回路１２のＡＮＤ回路２２の一方の入力が“０”となり、論理ブロック１４のクロック供給端子１４ａに対するクロック供給が停止される。
【００１８】
クロック制御回路１２のＡＮＤ回路２３は、論理ブロック１５の動作イネーブル端子１５ｂに供給されるイネーブル信号を一方の入力とし、クロック生成回路１７から供給されるクロック信号を他方の入力とする。従って、論理ブロック１５に供給されるイネーブル信号がアサート（例えば“１”）である場合には、クロック制御回路１２はクロック生成回路１７で生成されるクロック信号を論理ブロック１５のクロック供給端子１５ａに供給する。論理ブロック１５の内部回路３５は、イネーブル信号のアサート状態に応答して起動し、クロック供給端子１５ａから供給されるクロック信号に基づいて動作する。論理回路１６が所定のシーケンスを実行してイネーブル信号をネゲート状態に設定すると、これに応答して内部回路３５は動作を終了する。
【００１９】
動作イネーブル端子１５ｂに供給されるイネーブル信号がネゲート状態となると、クロック制御回路１２のＡＮＤ回路２３の一方の入力が“０”となり、論理ブロック１５のクロック供給端子１５ａに対するクロック供給が停止される。
【００２０】
このように、各ブロックの動作開始・停止を指示する各ブロックに設けられるコマンドレジスタ或いは端子の信号（データ）に応じて、各ブロックに対するクロック供給の開始・停止に係る制御を行う。この構成では、マイクロコントローラがクロック供給の開始・停止に係るタイミングを決定するのではないので、クロック制御の単位となるブロックが細分化され数が増大しても、マイクロコントローラにかかる負荷が増大することはない。またクロック供給の開始及び停止のタイミングについては、マイクロコントローラの処理サイクルに関わらずに、実際の機能ブロックの動作の開始・停止に応じたきめ細かな制御をすることが可能となる。
【００２１】
図２は、本発明による半導体集積回路の構成の変形例を示す構成図である。図２において、図１と同一の構成要素は同一の参照番号で参照される。
【００２２】
図２の半導体集積回路は、マイクロコントローラ１１、クロック制御回路１２Ａ、論理ブロック１３、及びクロック生成回路１７を含む。クロック制御回路１２Ａは、ＡＮＤ回路２１及び遅延回路２４を含む。論理ブロック１３は、コマンドレジスタ３１と内部回路３２を含む。
【００２３】
マイクロコントローラ１１が、論理ブロック１３に対して起動コマンドを発行すると、論理ブロック１３のコマンドレジスタ３１に“１”がセットされる。
【００２４】
クロック制御回路１２ＡのＡＮＤ回路２１は、コマンドレジスタ３１に格納された設定データを遅延回路２４で所定の時間遅延させたデータを一方の入力とし、クロック生成回路１７から供給されるクロック信号を他方の入力とする。従って、コマンドレジスタ３１に格納される設定データが“１”になった場合には、遅延回路２４の遅延時間で決まる所定の時間後に、クロック制御回路１２Ａはクロック生成回路１７で生成されるクロック信号を論理ブロック１３のクロック供給端子１３ａに供給開始する。論理ブロック１３の内部回路３２は、コマンドレジスタ３１の設定データ“１”に応答して起動し、クロック供給端子１３ａから供給されるクロック信号に基づいて動作する。内部回路３２は、動作が終了すると動作終了フラグを発行し、これによりコマンドレジスタ３１の内容が“０”にリセットされる。
【００２５】
コマンドレジスタ３１の内容が“０”にリセットされると、遅延回路２４の遅延時間で決まる所定の時間後に、クロック制御回路１２ＡのＡＮＤ回路２１の一方の入力が“０”となり、論理ブロック１３のクロック供給端子１３ａに対するクロック供給が停止される。
【００２６】
コマンドレジスタ３１に対する動作終了フラグの発行は、内部回路３２の制御回路等によってなされる構成が一般的である。このような構成においては、内部回路３２の制御回路が動作終了と判断して動作終了フラグを発行しても、実際の動作はまだ完全には終了しておらず、内部回路３２を構成するフリップフロップ等の回路要素にはまだ有効なデータが存在し、例えばこのデータを何サイクルか後に出力した時点で完全に動作が終了する場合等が考えられる。このような場合には、クロック信号の供給を直ちに停止してしまったのでは、データ出力等の動作を完全に終了することが出来なくなってしまう。
【００２７】
図２に示される構成例では、動作終了フラグの発行によるコマンドレジスタ３１のリセットから実際の動作終了までの処理遅延を考慮して、クロック制御回路に遅延回路２４を設け、この遅延回路２４によってコマンドレジスタ３１の設定データを遅延させることで、上記処理遅延を吸収可能な構成としている。なおこの構成は、図１の論理ブロック１４或いは論理ブロック１５に対して適用することも可能である。なお遅延回路２４による遅延時間は、遅延素子列の遅延素子数等を調整することで、コマンドレジスタ３１のリセットから実際の動作終了までの時間差に応じた所望の時間に設定しておく。なお遅延回路２４による遅延は、コマンドレジスタ３１をセットしてから実際に内部回路３２が動作を開始するまでの、動作開始時の処理遅延を補償する役割を果たすことも可能である。
【００２８】
このように、各ブロックの動作開始・停止を指示する各ブロックに設けられるコマンドレジスタ或いは端子の信号（データ）に応じて、各ブロックに対するクロック供給の開始・停止に係る制御を行う構成において、コマンドレジスタ或いは端子の信号（データ）を遅延回路により遅延させることで、各機能ブロック内の内部回路の処理遅延を補償するように、クロック供給の開始・停止を制御することが可能になる。
【００２９】
図３は、本発明による半導体集積回路の構成の変形例を示す構成図である。図３において、図１と同一の構成要素は同一の参照番号で参照される。
【００３０】
図３の半導体集積回路は、マイクロコントローラ１１、クロック制御回路１２Ｂ、論理ブロック１３、及びクロック生成回路１７を含む。クロック制御回路１２Ｂは、ＡＮＤ回路２１、変化点検出回路４１、遅延回路４２及び４３、及びセレクタ４４を含む。また論理ブロック１３は、コマンドレジスタ３１と内部回路３２を含む。
【００３１】
クロック制御回路１２Ｂの変化点検出回路４１は、コマンドレジスタ３１のデータ変化が“０”から“１”であるか或いは“１”から“０”であるかを検出する。図４は、変化点検出回路４１の回路構成の一例を示す回路図である。図４の変化点検出回路４１は、フリップフロップ５１乃至５４及びＡＮＤ回路５５及び５６を含む。ＡＮＤ回路５５及び５６の一方の入力は負論理入力となっている。コマンドレジスタ３１のデータが“０”から“１”に変化した場合には、フリップフロップ５１及び５３は“０”を格納してその出力は０となり、フリップフロップ５２及び５４は“１”を格納してその出力は１となる。従って、ＡＮＤ回路５５及び５６の出力はそれぞれ１及び０となり、これがセレクタ４４に供給される。またコマンドレジスタ３１のデータが“１”から“０”に変化した場合には、フリップフロップ５１及び５３は“１”を格納してその出力は１となり、フリップフロップ５２及び５４は“０”を格納してその出力は０となる。従って、ＡＮＤ回路５５及び５６の出力はそれぞれ０及び１となり、これがセレクタ４４に供給される。
【００３２】
図３を再び参照し、セレクタ４４は、変化点検出回路４１の変化検出結果に応じて、遅延回路４２或いは遅延回路４３の何れかの出力を選択して、ＡＮＤ回路２１の一方の入力に供給する。遅延回路４２及び４３は、コマンドレジスタ３１の設定データを入力とし、それぞれ異なる遅延時間を有する回路である。従って、セレクタ４４が選択した遅延回路に応じた遅延時間で遅延されたコマンドレジスタ３１の設定データが、ＡＮＤ回路２１の一方の入力に供給される。ＡＮＤ回路２１の他方の入力は、クロック生成回路１７から供給されるクロック信号である。
【００３３】
図５は、クロック制御回路１２Ｂの動作を説明するタイミング波形図である。
【００３４】
マイクロコントローラ１１が、論理ブロック１３に対して起動コマンドを発行すると、論理ブロック１３のコマンドレジスタ３１に“１”がセットされる。このようにコマンドレジスタ３１に格納される設定データが“０”から“１”に変化した場合には、セレクタ４４は例えば遅延回路４２（遅延時間Ｄ１）の出力を選択して、ＡＮＤ回路２１に入力する。従って、遅延回路４２の遅延時間で決まる所定の時間後に、クロック制御回路１２Ｂはクロック生成回路１７で生成されるクロック信号を論理ブロック１３のクロック供給端子１３ａに供給開始する。論理ブロック１３の内部回路３２は、コマンドレジスタ３１の設定データ“１”に応答して起動し、クロック供給端子１３ａから供給されるクロック信号に基づいて動作する。内部回路３２は、動作が終了すると動作終了フラグを発行し、これによりコマンドレジスタ３１の内容が“０”にリセットされる。
【００３５】
コマンドレジスタ３１の内容が“０”にリセットされると、コマンドレジスタ３１に格納される設定データが“１”から“０”に変化したことになるので、セレクタ４４は遅延回路４３（遅延時間Ｄ２）の出力を選択して、ＡＮＤ回路２１に入力する。従って、遅延回路４３の遅延時間で決まる所定の時間後に、クロック制御回路１２ＢのＡＮＤ回路２１の一方の入力が“０”となり、論理ブロック１３のクロック供給端子１３ａに対するクロック供給が停止される。
【００３６】
前述のように、内部回路３２の実際の動作は、コマンドレジスタ３１の設定データの内容からは遅延する。即ち、動作開始時には、コマンドレジスタ３１に“１”が設定されるタイミングに対して処理遅延が存在し、また動作終了時にはコマンドレジスタ３１に“０”が設定されるタイミングに対して処理遅延が存在する。この動作開始時の処理遅延と動作終了時の処理遅延とは、同一の遅延量とは限らない。従って、論理ブロック１３の内部回路３２の構成・特性に応じて、動作開始時と動作終了時とでクロック制御回路１２Ｂからのクロック制御タイミングを変化させることが望ましい。
【００３７】
図３に示される構成例では、変化点検出回路４１によってコマンドレジスタ３１の内容が“０”から“１”へ変化したのか或いは“１”から“０”へ変化したのかを検出し、この検出結果に応じてセレクタ４４で遅延回路４２の出力或いは遅延回路４３の出力を選択する。このように、選択した遅延回路の遅延量でコマンドレジスタ３１の設定データを遅延させることで、動作開始時の処理遅延及び動作終了時の処理遅延を、それぞれ適切なタイミングで吸収可能な構成としている。なおこの構成は、図１の論理ブロック１４或いは論理ブロック１５に対して適用することも可能である。なお遅延回路４２及び４３による遅延時間は、遅延素子列の遅延素子数等を調整することで、動作開始時の処理遅延及び動作終了時の処理遅延に応じた所望の時間に設定しておく。
【００３８】
このように、各ブロックの動作開始・停止を指示する各ブロックに設けられるコマンドレジスタ或いは端子の信号（データ）に応じて、各ブロックに対するクロック供給の開始・停止に係る制御を行う構成において、コマンドレジスタ或いは端子の信号（データ）を選択した遅延時間だけ遅延させることで、各機能ブロック内の内部回路における動作開始時と動作終了時とで異なる処理遅延を補償するように、動作開始時と動作終了時とで異なるタイミングでクロック供給の開始・停止を制御することが可能になる。
【００３９】
図６は、本発明による半導体集積回路の構成の変形例を示す構成図である。図６において、図１と同一の構成要素は同一の参照番号で参照される。
【００４０】
図６の半導体集積回路は、マイクロコントローラ１１、クロック制御回路１２Ｃ、論理ブロック１３Ａ、及びクロック生成回路１７を含む。クロック制御回路１２Ｃは、ＡＮＤ回路２１、ＡＮＤ回路２５、及び遅延回路６２及び６３を含む。論理ブロック１３Ａは、コマンドレジスタ３１と内部回路３２Ａを含む。
【００４１】
マイクロコントローラ１１が、論理ブロック１３Ａに対して起動コマンドを発行すると、論理ブロック１３Ａのコマンドレジスタ３１に“１”がセットされる。
【００４２】
クロック制御回路１２ＣのＡＮＤ回路２１は、コマンドレジスタ３１に格納された設定データを遅延回路６２で所定の時間遅延させたデータを一方の入力とし、クロック生成回路１７から供給されるクロック信号を他方の入力とする。従って、コマンドレジスタ３１に格納される設定データが“１”になった場合には、遅延回路６２の遅延時間で決まる所定の時間後に、クロック制御回路１２Ｃはクロック生成回路１７で生成されるクロック信号を論理ブロック１３Ａのクロック供給端子１３ｅに供給開始する。同様に、クロック制御回路１２ＣのＡＮＤ回路２５は、コマンドレジスタ３１に格納された設定データを遅延回路６３で所定の時間遅延させたデータを一方の入力とし、クロック生成回路１７から供給されるクロック信号を他方の入力とする。従って、コマンドレジスタ３１に格納される設定データが“１”になった場合には、遅延回路６３の遅延時間で決まる所定の時間後に、クロック制御回路１２Ｃはクロック生成回路１７で生成されるクロック信号を論理ブロック１３Ａのクロック供給端子１３ｆに供給開始する。
【００４３】
論理ブロック１３Ａの内部回路３２Ａは、コマンドレジスタ３１の設定データ“１”に応答して起動し、クロック供給端子１３ｅ及び１３ｆから供給されるクロック信号に基づいて動作する。内部回路３２Ａは、動作が終了すると動作終了フラグを発行し、これによりコマンドレジスタ３１の内容が“０”にリセットされる。
【００４４】
コマンドレジスタ３１の内容が“０”にリセットされると、遅延回路６２の遅延時間で決まる所定の時間後に、論理ブロック１３Ａのクロック供給端子１３ｅに対するクロック供給が停止される。また遅延回路６３の遅延時間で決まる所定の時間後に、論理ブロック１３Ａのクロック供給端子１３ｆに対するクロック供給が停止される。なおこの構成は、図１の論理ブロック１４或いは論理ブロック１５に対して適用することも可能である。
【００４５】
このように、各ブロックの動作開始・停止を指示する各ブロックに設けられるコマンドレジスタ或いは端子の信号（データ）に応じて、各ブロックに対するクロック供給の開始・停止に係る制御を行う構成において、異なった遅延量を有する複数の遅延回路によりコマンドレジスタ或いは端子の信号（データ）を遅延させることで、異なった供給開始・停止タイミングを有する複数のクロック信号を機能ブロックに供給することが出来る。これにより各機能ブロック内での各部分のシーケンスに合わせてクロック信号を供給することが可能になり、よりきめ細かなクロック制御動作を実現することが出来る。
【００４６】
以上、本発明を実施例に基づいて説明したが、本発明は上記実施例に限定されるものではなく、特許請求の範囲に記載の範囲内で様々な変形が可能である。
【００４７】
なお本発明は、以下に記載する内容を含むものである。
（付記１）夫々対応するコマンド信号がアサートされると動作を開始しネゲートされると動作を停止する複数の機能ブロックと、クロック信号を生成するクロック生成回路と、該複数の機能ブロックに対して、該夫々対応するコマンド信号のアサート状態に応答して該クロック信号の供給を開始すると共にネゲート状態に応答して該クロック信号の供給を停止するクロック制御回路を含むことを特徴とする半導体集積回路。
（付記２）該複数の機能ブロックに対して該コマンド信号の状態を制御するコントローラを更に含むことを特徴とする付記１記載の半導体集積回路。
（付記３）該複数の機能ブロックの少なくとも１つは該コマンド信号を格納するレジスタを含み、該コントローラが該レジスタを該コマンド信号のアサート状態に設定し、該少なくとも１つの機能ブロックの動作が終了すると該少なくとも１つの機能ブロックが該レジスタを該コマンド信号のネゲート状態にリセットすることを特徴とする付記２記載の半導体集積回路。
（付記４）該クロック制御回路は該レジスタの設定状態に応じて、該少なくとも１つの機能ブロックに対して該クロック信号の供給の開始及び停止を制御することを特徴とする付記３記載の半導体集積回路。
（付記５）該複数の機能ブロックの少なくとも１つに対しては、該クロック制御回路は該コマンド信号を遅延させ、該遅延されたコマンド信号の状態に応答して該クロック信号の供給の開始及び停止を制御することを特徴とする付記１記載の半導体集積回路。
（付記６）該複数の機能ブロックの少なくとも１つに対しては、該クロック制御回路は該コマンド信号を第１の遅延量遅延させ該第１の遅延量遅延されたコマンド信号の状態に応答して該クロック信号の供給を開始すると共に、該コマンド信号を第２の遅延量遅延させ該第２の遅延量遅延されたコマンド信号の状態に応答して該クロック信号の供給を停止することを特徴とする付記１記載の半導体集積回路。
（付記７）該複数の機能ブロックの少なくとも１つに対しては、該クロック制御回路は該コマンド信号を第１の遅延量遅延させ該第１の遅延量遅延されたコマンド信号の状態に応答して供給の開始及び停止のタイミングを制御した該クロック信号を供給すると共に、該コマンド信号を第２の遅延量遅延させ該第２の遅延量遅延されたコマンド信号の状態に応答して供給の開始及び停止のタイミングを制御した該クロック信号を供給することを特徴とする付記１記載の半導体集積回路。
（付記８）該複数の機能ブロックの少なくとも１つは、所定の回路の所定の動作シーケンスに応じて該対応するコマンド信号がアサート及びネゲートされることを特徴とする付記１記載の半導体集積回路。
（付記９）夫々対応するコマンド信号がアサートされると動作を開始しネゲートされると動作を停止する複数の機能ブロックに供給するクロック信号を生成し、該複数の機能ブロックに対して該夫々対応するコマンド信号のアサート状態に応答して該クロック信号の供給を開始し、該複数の機能ブロックに対して該夫々対応するコマンド信号のネゲート状態に応答して該クロック信号の供給を停止する各段階を含むことを特徴とするクロック制御方法。
（付記１０）該コマンド信号を遅延する段階を更に含み、該クロック信号の供給を開始する段階は該遅延されたコマンド信号のアサート状態に応答して該クロック信号を供給し、該クロック信号の供給を停止する段階は該遅延されたコマンド信号のネゲート状態に応答して該クロック信号の供給を停止することを特徴とする付記９記載のクロック制御方法。
（付記１１）該コマンド信号を第１の遅延量遅延すると共に該コマンド信号を第２の遅延量遅延する段階を更に含み、該クロック信号の供給を開始する段階は該第１の遅延量遅延されたコマンド信号のアサート状態に応答して該クロック信号の供給を開始し、該クロック信号の供給を停止する段階は該第２の遅延量遅延されたコマンド信号のネゲート状態に応答して該クロック信号の供給を停止することを特徴とする付記９記載のクロック制御方法。
（付記１２）該コマンド信号を第１の遅延量遅延すると共に該コマンド信号を第２の遅延量遅延する段階を更に含み、該クロック信号の供給を開始する段階及び該クロック信号の供給を停止する段階は、該第１の遅延量遅延されたコマンド信号の状態に応答して供給の開始及び停止のタイミングを制御した該クロック信号を供給すると共に、該第２の遅延量遅延されたコマンド信号の状態に応答して供給の開始及び停止のタイミングを制御した該クロック信号を供給することを特徴とする付記９記載のクロック制御方法。
【００４８】
【発明の効果】
本発明においては、各ブロックの動作開始・停止を指示する各ブロックに設けられるコマンドレジスタ或いは端子の信号（データ）に応じて、各ブロックに対するクロック供給の開始・停止に係る制御を行う。この構成では、マイクロコントローラがクロック供給の開始・停止に係るタイミングを決定するのではないので、クロック制御の単位となるブロックが細分化され数が増大しても、マイクロコントローラにかかる負荷が増大することはない。またクロック供給の開始及び停止のタイミングについては、マイクロコントローラの処理サイクルに関わらずに、実際の機能ブロックの動作の開始・停止に応じたきめ細かな制御をすることが可能となる。
【図面の簡単な説明】
【図１】本発明による半導体集積回路の構成の一例を示す構成図である。
【図２】本発明による半導体集積回路の構成の変形例を示す構成図である。
【図３】本発明による半導体集積回路の構成の変形例を示す構成図である。
【図４】変化点検出回路の回路構成の一例を示す回路図である。
【図５】クロック制御回路の動作を説明するタイミング波形図である。
【図６】本発明による半導体集積回路の構成の変形例を示す構成図である。
【符号の説明】
１１  マイクロコントローラ
１２  クロック制御回路
１３  論理ブロック
１７  クロック生成回路
【図１】
0004831899.tif 000002
【図２】
0004831899.tif 000003
【図３】
0004831899.tif 000004
【図４】
0004831899.tif 000005
【図５】
0004831899.tif 000006
【図６】
0004831899.tif 000007