(57)【要約】【課題】停止・休止状態からの復帰時において、ＰＬＬ回路の動作の要否を判断し、さらなる省電力化を行うことができる半導体集積回路を提供する。【解決手段】復帰検出＆選択回路２が、復帰要因に基づいて、ＰＬＬ回路３の電源と発振ＥＮをＯＮするか否かを判断し、ＰＬＬ回路３の電源と発振ＥＮをＯＮしないと判断した場合は、基準クロック信号で機能ブロック５とＣＰＵ６を動作させる。【選択図】図１
2013131014.tif 000002
【特許請求の範囲】
【請求項１】
基準クロック信号が入力され、前記基準クロック信号を所定の倍数に周波数逓倍した逓倍クロック信号を出力するＰＬＬ回路と、外部から要求に応じて前記ＰＬＬ回路の動作を停止または休止させる制御回路と、前記基準クロック信号または前記逓倍クロック信号を選択して出力する選択回路と、前記選択回路により選択された前記基準クロック信号または前記逓倍クロック信号により動作する機能回路と、を備えた半導体集積回路において、
前記制御回路が、前記ＰＬＬ回路の動作を停止または休止させている際に、前記機能回路に対する処理要求が入力された場合は、該機能回路に対する処理要求に基づいて、前記ＰＬＬ回路の動作を復帰させるか否か判断し、前記ＰＬＬ回路の動作を復帰させないと判断した場合は、前記選択回路に前記基準クロック信号を選択させるように制御することを特徴とする半導体集積回路。
【請求項２】
前記機能回路に対する処理要求ごとに当該処理が完了するまでの時間を計測する計測回路と、
前記計測回路が計測した前記処理が完了するまでの時間を記憶する記憶回路と、を備え、
前記制御回路が、前記機能回路に対する処理要求が入力された場合に、前記記憶回路に記憶された前記処理が完了するまでの時間に基づいて前記ＰＬＬ回路の動作を復帰させるか否か判断する
ことを特徴とする請求項１に記載の半導体集積回路。
【請求項３】
前記機能回路のリセットを行うリセット信号が入力され、前記制御回路から前記機能回路に出力するリセット信号の解除タイミングが設定されるリセット制御回路を備え、
前記制御回路が、前記機能回路に対する処理要求が入力された場合に、該機能回路に対する処理要求に基づいて前記リセット信号の解除タイミングを設定する
ことを特徴とする請求項１または２に記載の半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、基準クロック信号が入力され、基準クロック信号を所定の倍数に周波数逓倍した逓倍クロック信号を出力するＰＬＬ回路を備える半導体集積回路に関する。
【背景技術】
【０００２】
現在多くの電子機器は環境問題への対策として省エネ対応が必須項目となっている。そこで、無駄な消費電力を抑えるために不要な機能は停止・休止状態にし、必要となったときに復帰させる技術が考案されている。
【０００３】
ＬＳＩ（Large Scale Integration）などの半導体集積回路は、必要な機能に応じてブロック分けされた論理回路を集積し、それぞれの機能ブロックに対して動作タイミングを決定するクロック信号が分配されることが一般的である。半導体集積回路外部からの入力信号をクロック信号に使用する時に、必要とする処理速度が得られない場合には、ＰＬＬ（Phase Locked Loop）回路と呼ばれる位相同期回路を搭載して、元のクロック信号を逓倍化して使用することが多い。また、半導体集積回路内、あるいは外に設けたＣＰＵ（Central Processing Unit）あるいは制御回路等によりＰＬＬ回路の動作や、ＰＬＬ回路で生成されたクロック信号を選択する機能が設けられることもある。
【０００４】
ＰＬＬ回路を備えた半導体集積回路において停止・休止状態にする場合、次の３通りに制御することが一般的である。（１）分配するクロック信号をマスクし、機能ブロックに対するクロック信号を停めた状態にする。（２）ＰＬＬ回路のイネーブルをＯＦＦした休止状態（ＰＬＬ回路の電源はＯＮであるが発振は停止した状態）にする。（３）ＰＬＬ回路の電源をＯＦＦにして停止状態にする。この（２）と（３）は、例えば、半導体集積回路を搭載した機器などにおいて、まず復帰までの時間が短い休止状態にしてから、さらに省電力状態が継続する場合は、停止状態にするなどとしてさらに電力を少なくするといった使い分けがある。
【０００５】
そして、停止・休止状態のときに、何らかの復帰要因が発生したことにより復帰させる場合は、（１）の場合はマスク解除、（２）の場合はイネーブルをＯＮ、（３）の場合は電源をＯＮに切り替えＰＬＬ回路を復帰させることが既に知られている。
【０００６】
上述した従来の停止・休止状態から復帰させる方法は、機能ブロックに対する処理要求などの復帰要因が複数あった場合に、どの復帰要因による復帰であってもＰＬＬ回路は電源ＯＮかつイネーブルＯＮ状態にしていた。具体的に説明すると、復帰信号が入力されるとＰＬＬ回路はクロック信号の逓倍を開始する。ＰＬＬ回路に入力される基準クロック信号を逓倍した逓倍クロック信号を出力できるようになるまでは、基準クロック信号が機能ブロックを動作させるシステムクロック信号として用いられる。そして、ＰＬＬ回路の発振安定化が完了した時点で逓倍クロック信号をシステムクロックに切り替えて用いる、という構成になっていた（例えば、特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１に記載されたクロック供給装置などの従来の停止・休止状態から復帰させる方法では、停止・休止状態からの復帰要因によってはＰＬＬ回路の発振安定化を待っている間に機能ブロックにおける処理が完了してしまいＰＬＬ回路の起動自体が必要でなかったということもあり、その分無駄な電力を消費してしまうという問題があった。
【０００８】
本発明はかかる問題を解決することを目的としている。
【０００９】
すなわち、本発明は、ＰＬＬ回路の停止・休止状態、即ち、上述した（２）および（３）からの復帰時において、ＰＬＬ回路の動作の要否を判断し、さらなる省電力化を行うことができる半導体集積回路を提供することを目的としている。
【課題を解決するための手段】
【００１０】
上記課題を解決するためになされた請求項１に記載された発明は、基準クロック信号が入力され、前記基準クロック信号を所定の倍数に周波数逓倍した逓倍クロック信号を出力するＰＬＬ回路と、外部から要求に応じて前記ＰＬＬ回路の動作を停止または休止させる制御回路と、前記基準クロック信号または前記逓倍クロック信号を選択して出力する選択回路と、前記選択回路により選択された前記基準クロック信号または前記逓倍クロック信号により動作する機能回路と、を備えた半導体集積回路において、前記制御回路が、前記ＰＬＬ回路の動作を停止または休止させている際に、前記機能回路に対する処理要求が入力された場合は、該機能回路に対する処理要求に基づいて、前記ＰＬＬ回路の動作を復帰させるか否か判断し、前記ＰＬＬ回路の動作を復帰させないと判断した場合は、前記選択回路に前記基準クロック信号を選択させるように制御することを特徴とする半導体集積回路である。
【発明の効果】
【００１１】
本発明によれば、制御回路が、ＰＬＬ回路の動作を停止または休止させている際に、機能回路に対する処理要求が入力された場合は、該機能回路に対する処理要求を示す信号に基づいて、ＰＬＬ回路の動作を復帰させるか否か判断し、ＰＬＬ回路の動作を復帰させないと判断した場合は、選択回路に基準クロック信号を選択させるように制御しているので、無駄なＰＬＬ回路の復帰を少なくすることができ、ＰＬＬ回路動作分の省電力化を行うことができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の第１の実施形態にかかる半導体集積回路のブロック構成図である。
【図２】図１に示された復帰検出＆選択回路の停止・休止状態からの復帰動作を示したフローチャートである。
【図３】本発明の第１の実施形態にかかる半導体集積回路のブロック構成図である。
【図４】図３に示された復帰検出＆選択回路の停止・休止状態からの復帰動作を示したフローチャートである。
【図５】本発明の第３の実施形態にかかる半導体集積回路のブロック構成図である。
【図６】図５に示された復帰検出＆選択回路の停止・休止状態からの復帰動作を示したフローチャートである。
【図７】本発明の第４の実施形態にかかる半導体集積回路のブロック構成図である。
【図８】図７に示された復帰検出＆選択回路の停止・休止状態からの復帰動作を示したフローチャートである。
【発明を実施するための形態】
【００１３】
（第１実施形態）
以下、本発明の第１の実施形態を、図１および図２を参照して説明する。図１は、本発明の第１の実施形態にかかる半導体集積回路のブロック構成図である。図２は、図１に示された復帰検出＆選択回路の停止・休止状態からの復帰動作を示したフローチャートである。
【００１４】
図１に示した半導体集積回路１は、復帰検出＆選択回路２と、ＰＬＬ回路３と、クロック選択回路４と、機能ブロック５と、ＣＰＵ６と、を備えている。
【００１５】
制御回路としての復帰検出＆選択回路２は、例えば、停止要求信号が入力され、入力された停止要求信号に基づいて、ＰＬＬ回路３の電源をＯＦＦ状態にするとともに発振イネーブル信号（発振ＥＮ信号）をＯＦＦ状態にし、クロック選択回路４の出力を基準クロック信号に切り替える。また、復帰検出＆選択回路２は、複数の復帰要因を示す信号が入力され、入力された復帰要因を示す信号に基づいて、ＰＬＬ回路３の電源をＯＮ状態にするとともに発振ＥＮ信号をＯＮ状態にするか（ＰＬＬ回路３の動作を復帰させるか）否かを判断する。また、復帰検出＆選択回路２は、入力された復帰要因を示す信号に基づいて、機能ブロック５やＣＰＵ６に処理要求を示す信号を出力する。なお、この処理要求を示す信号はＣＰＵ６のみに供給して機能ブロック５はＣＰＵ６からの指示により動作するようにしてもよい。
【００１６】
この復帰要因を示す信号とは、例えばデータ転送要求信号やデータ処理要求信号など、機能ブロック５やＣＰＵ６に対して何らかの処理（動作）を要求する信号である。したがって、復帰検出＆選択回路２からＣＰＵ６等に処理要求を示す信号として出力する場合は、その処理内容を示す情報が信号として出力される。
【００１７】
ＰＬＬ回路３は、基準クロック信号が入力され、所定の倍数に周波数逓倍した逓倍クロック信号を出力する周知の位相同期回路であり、復帰検出＆選択回路２によって、電源ＯＮまたはＯＦＦの切り替えや、発振ＥＮ信号のＯＮまたはＯＦＦが切り替えられて逓倍クロック信号の出力の有無が制御される。
【００１８】
選択回路としてのクロック選択回路４は、基準クロック信号と逓倍クロック信号が入力され、復帰検出＆選択回路２の制御により、基準クロック信号と逓倍クロック信号のうちいずれかのクロック信号を選択して出力する。
【００１９】
機能回路としての機能ブロック５は、組み合せ回路や順序回路などクロック選択回路４から入力されたクロック信号を基準として動作する論理回路である。機能回路としてのＣＰＵ６は、クロック選択回路４から入力されたクロック信号を基準として動作する中央演算処理回路である。なお、本実施形態では、クロック信号を基準として（同期して）動作する回路として論理回路である機能ブロック５やＣＰＵ６で説明するが、これらに限らず、クロック信号を基準として動作する回路であればよい。
【００２０】
次に、上述した構成の半導体集積回路１における停止・休止状態からの復帰動作を図２示したフローチャートを参照して説明する。図２に示したフローチャートは、復帰検出＆選択回路２で動作する。
【００２１】
まず、前提として、停止要求信号により停止状態となった場合、ＰＬＬ回路３の電源、発振ＥＮ信号ともにＯＦＦとし、クロック選択回路４は、基準クロックに切り替えられている。つまり、機能ブロック５とＣＰＵ６は、基準クロック信号により動作している。
【００２２】
そして、ステップＳ１０１において、復帰要因を受信したか否かを判断し、受信した場合（ＹＥＳの場合）はステップＳ１０２に進み、受信していない場合（ＮＯの場合）は本ステップで待機する。つまり、停止状態中に機能ブロック５やＣＰＵ６に対する処理要求がなされたか否かを判断している。
【００２３】
次に、ステップＳ１０２において、処理を開始してステップＳ１０３に進む。この処理開始とは、ステップＳ１０１で受信した復帰要因にかかる処理を機能ブロック５および／またはＣＰＵ６に処理要求を示す信号を出力して処理開始指示を行うことである。
【００２４】
次に、ステップＳ１０３において、ＰＬＬ回路３の動作が必要か否かを判断し、必要な場合（ＹＥＳの場合）はステップＳ１０４に進み、必要でない場合（ＮＯの場合）はステップＳ１０７に進む。本ステップでは、ステップＳ１０１で受信した復帰要因に基づいて、当該復帰要因がＰＬＬ回路３を動作させる必要があるか否かを判断している。この判断を行うために、復帰検出＆選択回路２には、入力される復帰要因ごとにＰＬＬ回路３の動作の要否が予め設定されている。即ち、機能回路に対する処理要求に基づいて、ＰＬＬ回路の動作を復帰させるか否か判断している。なお、本ステップで、ＮＯと判断された場合は、機能ブロック５やＣＰＵ６では基準クロックのみで処理が行われる（クロック選択回路４の出力を基準クロック信号のままとする）。即ち、ＰＬＬ回路の動作を復帰させないと判断した場合は、選択回路に基準クロック信号を選択させるように制御している。
【００２５】
この復帰要因ごとに設定するＰＬＬ回路３の動作の要否は、復帰要因となる処理ごとに限らず、例えば、データ転送要求で同時にデータ長も送信されてくる場合は、データ長に応じて要否を設定してもよい。つまり、処理するデータによって処理時間が変化する場合は、データの大きさも考慮するようにしてもよい。
【００２６】
次に、ステップＳ１０４において、ＰＬＬ回路３の復帰が必要と判断されたので、ＰＬＬ回路３を停止状態から復帰させてステップＳ１０５に進む。つまり、ＰＬＬ回路３に対して電源、発振ＥＮ信号ともにＯＮにしている。
【００２７】
次に、ステップＳ１０５において、ＰＬＬ回路３の安定化の完了を確認してステップＳ１０６に進む。この安定化とは、ＰＬＬ回路３の引き込み期間が経過して安定した逓倍クロック信号が出力されるようになることである。
【００２８】
次に、ステップＳ１０６において、クロック信号の切り替えを行ってステップＳ１０７に進む。本ステップでは、クロック選択回路４に対して、基準クロック信号から逓倍クロック信号に切り替えさせて、機能ブロック５やＣＰＵ６を逓倍クロック信号で動作させる。
【００２９】
次に、ステップＳ１０７において、ステップＳ１０２で開始した処理が完了したことを確認する。そして、処理完了後は再び停止状態とする。
【００３０】
本実施形態によれば、復帰検出＆選択回路２が、復帰要因に基づいて、ＰＬＬ回路３の電源と発振ＥＮ信号をＯＮするか否かを判断し、ＰＬＬ回路３の電源と発振ＥＮ信号をＯＮしないと判断した場合は、基準クロック信号で機能ブロック５とＣＰＵ６を動作させるので、復帰要因による処理が短時間で終了する場合など無駄なＰＬＬ回路３の復帰を少なくすることができ、ＰＬＬ回路３動作分の省電力化を行うことができる。
【００３１】
なお、上述した実施形態では、復帰検出＆選択回路２がＰＬＬ回路３に対して電源と発振ＥＮ信号を制御する停止状態について説明したが、発振ＥＮ信号のみを制御する休止状態においても同様に行うことができる。
【００３２】
（第２実施形態）
次に、本発明の第２の実施形態を図３および図４を参照して説明する。なお、前述した第１の実施形態と同一部分には、同一符号を付して説明を省略する。図３は、本発明の第１の実施形態にかかる半導体集積回路のブロック構成図である。図４は、図３に示された復帰検出＆選択回路の停止・休止状態からの復帰動作を示したフローチャートである。
【００３３】
本実施形態にかかる半導体集積回路１は、第１の実施形態の半導体集積回路１に対して処理時間判定回路７が追加されている。計測回路、記憶回路としての処理時間判定回路７は、復帰要因ごとの機能ブロック５やＣＰＵ６における処理サイクル数や処理時間を計測し、その計測結果を復帰時間テーブルとして記憶している。
【００３４】
復帰検出＆選択回路２は、入力された復帰要因が２回目以降である場合は、処理時間判定回路７に記憶されている復帰時間テーブルを参照して、ＰＬＬ回路３の安定化より短い時間で処理が終了する場合はＰＬＬ回路３の電源や発振ＥＮ信号をＯＮせず（動作させず）に基準クロック信号で動作させる。
【００３５】
次に、本実施形態における停止・休止状態からの復帰動作を図４示したフローチャートを参照して説明する。図４に示したフローチャートは、復帰検出＆選択回路２で動作する。
【００３６】
まず、ステップＳ２０１において、復帰要因を受信したか否かを判断し、受信した場合（ＹＥＳの場合）はステップＳ２０２に進み、受信していない場合（ＮＯの場合）は本ステップで待機する。つまり、停止・休止状態中に機能ブロック５やＣＰＵ６に対する処理要求がなされたか否かを判断している。
【００３７】
次に、ステップＳ２０２において、ステップＳ２０１で受信した復帰要因が初回か否かを判断し、初回である場合（ＹＥＳの場合）はステップＳ２０３に進む、初回でない場合（ＮＯの場合）はステップＳ２０９に進む。初回か否かは、例えば、復帰時間テーブルに当該復帰要因の処理時間（復帰時間）が記憶されているか否かで判断すればよい。
【００３８】
次に、ステップＳ２０３において、処理を開始してステップＳ２０４に進む。この処理開始とは、ステップＳ１０２と同様である。また、本ステップの実行とともに処理時間判定回路７に処理時間を計測するためにタイマやカウンタ等で処理時間の計測を開始させる。なお、図４において、ステップＳ２０３からＳ２０７へ矢印が設けられているのは、機能ブロック５やＣＰＵ６において、基準クロックで処理を継続させていることを示しており、基準クロック信号のみで処理が終了する場合もあれば、途中から逓倍クロック信号に切り替わって処理が終了する場合もある。
【００３９】
次に、ステップＳ２０４において、ＰＬＬ回路３を停止・休止状態から復帰させてステップＳ２０５に進む。つまり、ＰＬＬ回路３に対して電源や発振ＥＮ信号をＯＮにしている。
【００４０】
次に、ステップＳ２０５において、ＰＬＬ回路３の安定化の完了を確認してステップＳ２０６に進む。この安定化とは、ＰＬＬ回路３の引き込み期間が経過して安定した逓倍クロック信号が出力されるようになることである。
【００４１】
次に、ステップＳ２０６において、クロック信号の切り替えを行ってステップＳ２０７に進む。本ステップでは、クロック選択回路４に対して、基準クロック信号から逓倍クロック信号に切り替えさせて、機能ブロック５やＣＰＵ６を逓倍クロック信号で動作させる。
【００４２】
次に、ステップＳ２０７において、ステップＳ２０３で開始した処理が完了したことを確認してステップＳ２０８に進む。そして、本ステップにおいて、ステップＳ２０３で動作させたタイマやカウンタ等を停止させて処理時間の計測が終了する。
【００４３】
次に、ステップＳ２０８において、処理時間判定回路７にステップＳ２０７で計測が終了した処理時間の復帰時間テーブルを作成させる。なお、復帰時間テーブルが既に作成されている場合は作成済みの復帰時間テーブルにステップＳ２０７で計測が終了した処理時間を追加するように更新させる。復帰時間テーブル作成後は再び停止・休止状態となる。
【００４４】
一方、ステップＳ２０９においては、処理を開始してステップＳ２１０に進む。この処理開始とは、ステップＳ２０３と同様である。
【００４５】
次に、ステップＳ２１０において、ＰＬＬ回路３の動作が必要か否かを判断し、必要な場合（ＹＥＳの場合）はステップＳ２１１に進み、必要でない場合（ＮＯの場合）はステップＳ２１４に進む。本ステップでは、ステップＳ２０１で受信した復帰要因に基づいて、当該復帰要因がＰＬＬ回路３を動作させる必要があるか否かを判断している。この判断は、予め設定されているＰＬＬ回路３の復帰時間と処理時間判定回路７に記憶されている復帰時間テーブルとを参照して判断する。即ち、記憶回路に記憶された処理が完了するまでの時間に基づいてＰＬＬ回路の動作を復帰させるか否か判断している。
【００４６】
次に、ステップＳ２１１において、ＰＬＬ回路３を停止・休止状態から復帰させてステップＳ２１２に進む。つまり、ＰＬＬ回路３に対して電源や発振ＥＮ信号をＯＮにしている。
【００４７】
次に、ステップＳ２１２において、ＰＬＬ回路３の安定化の完了を確認してステップＳ２１３に進む。この安定化とは、ＰＬＬ回路３の引き込み期間が経過して安定した逓倍クロック信号が出力されるようになることである。
【００４８】
次に、ステップＳ２１３において、クロック信号の切り替えを行ってステップＳ２１４に進む。本ステップでは、クロック選択回路４に対して、基準クロック信号から逓倍クロック信号に切り替えさせて、機能ブロック５やＣＰＵ６を逓倍クロック信号で動作させる。
【００４９】
次に、ステップＳ２１４において、ステップＳ２０９で開始した処理が完了したことを確認する。そして、処理完了後は再び停止・休止状態となる。
【００５０】
本実施形態によれば、復帰検出＆選択回路２が、受信した復帰要因が初回であった場合は、処理時間を計測し、復帰時間テーブルに記憶させて、２回目以降に当該復帰要因を受信した場合は、復帰時間テーブルに基づいて、ＰＬＬ回路３の電源や発振ＥＮをＯＮするか否かを判断し、ＰＬＬ回路３の電源や発振ＥＮをＯＮしないと判断した場合は、基準クロック信号で機能ブロック５とＣＰＵ６を動作させるので、処理時間が予め判明していなくＰＬＬ回路３の安定化よりも速く処理が終了するかが分からない場合でも、処理時間を計測して記憶するために、２回目以降は無駄なＰＬＬ回路３の復帰を少なくすることができ、省電力化を行うことができる。
【００５１】
（第３実施形態）
次に、本発明の第３の実施形態を図５および図６を参照して説明する。なお、前述した第１、第２の実施形態と同一部分には、同一符号を付して説明を省略する。図５は、本発明の第３の実施形態にかかる半導体集積回路のブロック構成図である。図６は、図５に示された復帰検出＆選択回路の停止・休止状態からの復帰動作を示したフローチャートである。
【００５２】
本実施形態にかかる半導体集積回路１は、第１の実施形態の半導体集積回路１に対してリセット引き伸ばしカウンタ８が追加されている。リセット制御回路としてのリセット引き伸ばしカウンタ８は、外部から入力される元リセット信号のリセット期間を引き延ばして機能ブロック５やＣＰＵ６に出力する。
【００５３】
リセット信号は、第１、第２の実施形態においても図示はしていなかったが入力されていた。このリセット信号は、ＰＬＬ回路３から出力される逓倍クロック信号が安定したことを示す信号を出力し、その逓倍クロック信号が安定したことを示す信号を受けて解除されるが、実際はこの解除タイミングは所定のマージンを設け、逓倍クロック信号が安定したことを示す信号出力からマージン分引き伸ばしてから解除される。しかしながら、基準クロック信号で動作する場合と、逓倍クロック信号で動作する場合とでは、このマージンが異なる場合があり、従来はどちらの場合でも問題がないように余裕を持ってマージンが設定させていた。本実施形態のリセット引き伸ばしカウンタ８は、このマージンを復帰検出＆選択回路２からカウンタ閾値として設定され、このカウンタ閾値を越えたらリセットが解除される。
【００５４】
復帰検出＆選択回路２は、復帰要因ごとに、基準クロック信号と逓倍クロック信号の両方を使用する、基準クロック信号のみ、逓倍クロック信号のみ、の３パターンのうちどのパターンで動作するかが設定されており、受信した復帰要因に基づいて、これらのパターンに合ったカウンタ閾値をリセット引き伸ばしカウンタ８に出力する。つまり、復帰要因によってＰＬＬ回路３を動作させるか否かが決まっており、また、ＰＬＬ回路３を動作させる場合でも基準クロック信号と逓倍クロック信号の双方を使用する場合と逓倍クロック信号のみで動作する場合とでは異なる値とすることができる。
【００５５】
次に、本実施形態における停止・休止状態からの復帰動作を図６示したフローチャートを参照して説明する。図６に示したフローチャートは、復帰検出＆選択回路２で動作する。
【００５６】
まず、ステップＳ３０１において、復帰要因を受信したか否かを判断し、受信した場合（ＹＥＳの場合）はステップＳ３０２に進み、受信していない場合（ＮＯの場合）は本ステップで待機する。つまり、停止・休止状態中に機能ブロック５やＣＰＵ６に対する処理要求がなされたか否かを判断している。
【００５７】
次に、ステップＳ３０２において、ＰＬＬ回路３の動作が必要か否かを判断し、必要な場合（ＹＥＳの場合）はステップＳ３０６に進み、必要でない場合（ＮＯの場合）はステップＳ３０３に進む。本ステップでは、ステップＳ３０１で受信した復帰要因に基づいて、当該復帰要因がＰＬＬ回路３を動作させる必要があるか否かを判断している。この判断を行うために、第１の実施形態と同様に入力される復帰要因ごとにＰＬＬ回路３の動作の要否が予め設定されている。
【００５８】
次に、ステップＳ３０３において、リセット引き伸ばしカウンタ８のカウンタ閾値を設定して、ステップＳ３０４に進む。本ステップでは、上述したように、復帰要因に応じたカウント閾値をリセット引き伸ばしカウンタ８に設定している。即ち、機能回路に対する処理要求が入力された場合に、該機能回路に対する処理要求に基づいてリセット信号の解除タイミングを設定している。
【００５９】
次に、ステップＳ３０４において、処理を開始してステップＳ３０５に進む。この処理開始とは、ステップＳ１０２などと同様である。また、本ステップ実行前にステップＳ３０３で設定したカウント閾値によるリセット信号の解除が行われている。
【００６０】
次に、ステップＳ３０５において、ステップＳ３０４で開始した処理が完了したことを確認する。そして、処理完了後は再び停止・休止状態となる。このステップＳ３０５を実行するルートではＰＬＬ回路３は動作せず基準クロックで機能ブロック５やＣＰＵ６が動作する。
【００６１】
一方、ステップＳ３０６においては、リセット引き伸ばしカウンタ８のカウンタ閾値を設定して、ステップＳ３０７に進む。本ステップでは、ステップＳ３０３と同様に上述したようにリセット信号の解除のタイミングを設定するためのカウント閾値をリセット引き伸ばしカウンタ８に設定している。なお、本ステップで設定されるカウント閾値は、ステップＳ３０３で設定されるカウント閾値とは異なる値である。
【００６２】
次に、ステップＳ３０７において、処理を開始してステップＳ３０８に進む。この処理開始とは、ステップＳ３０４と同様である。なお、図６において、ステップＳ３０７からＳ３１１へ矢印が設けられているのは、機能ブロック５やＣＰＵ６において、基準クロックで処理が継続していることを示している。また、本ステップ実行前にステップＳ３０６で設定したカウント閾値によるリセット信号の解除が行われている。
【００６３】
次に、ステップＳ３０８において、ＰＬＬ回路３を停止・休止状態から復帰させてステップＳ３０９に進む。つまり、ＰＬＬ回路３に対して電源、発振ＥＮ信号ともにＯＮにしている。
【００６４】
次に、ステップＳ３０９において、ＰＬＬ回路３の安定化の完了を確認してステップＳ３１０に進む。この安定化とは、ＰＬＬ回路３の引き込み期間が経過して安定した逓倍クロック信号が出力されるようになることである。
【００６５】
次に、ステップＳ３１０において、クロック信号の切り替えを行ってステップＳ３１１に進む。本ステップでは、クロック選択回路４に対して、基準クロック信号から逓倍クロック信号に切り替えさせて、機能ブロック５やＣＰＵ６を逓倍クロック信号で動作させる。
【００６６】
次に、ステップＳ３１１において、ステップＳ３０７で開始した処理が完了したことを確認する。そして、処理完了後は再び停止・休止状態となる。
【００６７】
本実施形態では、ステップＳ３０２の判断の結果、ステップＳ３０３〜Ｓ３０５を実行する復帰要因は、基準クロック信号のみで動作するパターンとなり、ステップＳ３０６〜Ｓ３１１を実行する復帰要因は、基準クロック信号と逓倍クロック信号の両方を使用するまたは逓倍クロック信号のみで動作するパターンとなる。
【００６８】
本実施形態によれば、リセット引き伸ばしカウンタ８に機能ブロック５が動作するクロック信号の形態にあわせてカウント閾値を設定しているので、復帰要因ごとにリセット解除タイミングの最適化が図れ、処理開始を早めることができる。
【００６９】
（第４実施形態）
次に、本発明の第４の実施形態を図７および図８を参照して説明する。なお、前述した第１〜第３の実施形態と同一部分には、同一符号を付して説明を省略する。図７は、本発明の第４の実施形態にかかる半導体集積回路のブロック構成図である。図８は、図７に示された復帰検出＆選択回路の停止・休止状態からの復帰動作を示したフローチャートである。
【００７０】
本実施形態は上述した第１〜第３の実施形態を全て組み合せたものであり、図７に示した半導体集積回路１は、復帰検出＆選択回路２と、ＰＬＬ回路３と、クロック選択回路４と、機能ブロック５と、ＣＰＵ６と、処理時間判定回路７と、リセット引き伸ばしカウンタ８と、を備えている。
【００７１】
つまり、本実施形態は、復帰要因が初回の場合は処理時間判定回路７内の復帰時間テーブルに復帰時間を記憶させ、当該復帰要因が２回目以降は、復帰時間テーブルに基づいてＰＬＬ回路３を動作させるか否かを判断する。また、リセット引き伸ばしカウンタ８も備えているので、復帰要因に応じてリセット期間を設定することができる。
【００７２】
次に、上述した構成の半導体集積回路１における停止・休止状態からの復帰動作を図７示したフローチャートを参照して説明する。図８に示したフローチャートは、復帰検出＆選択回路２で動作する。
【００７３】
まず、ステップＳ４０１において、復帰要因を受信したか否かを判断し、受信した場合（ＹＥＳの場合）はステップＳ４０２に進み、受信していない場合（ＮＯの場合）は本ステップで待機する。つまり、停止・休止状態中に機能ブロック５やＣＰＵ６に対する処理要求がなされたか否かを判断している。
【００７４】
次に、ステップＳ４０２において、ステップＳ４０１で受信した復帰要因が初回か否かを判断し、初回である場合（ＹＥＳの場合）はステップＳ４０３に進み、初回でない場合（ＮＯの場合）はステップＳ４０９に進む。初回か否かは、例えば、復帰時間テーブルに当該復帰要因の処理時間が記憶されているか否かで判断すればよい。
【００７５】
次に、ステップＳ４０３において、処理を開始してステップＳ４０４に進む。また、本ステップの実行とともに処理時間判定回路７に処理時間を計測するためにタイマやカウンタ等で処理時間の計測を開始させる。なお、図４において、ステップＳ４０３からＳ４０７へ矢印が設けられているのは、機能ブロック５やＣＰＵ６において、基準クロックで処理を継続させていることを示しており、基準クロック信号のみで処理が終了する場合もあれば、途中から逓倍クロック信号に切り替わって処理が終了する場合もある。
【００７６】
次に、ステップＳ４０４において、ＰＬＬ回路３を停止・休止状態から復帰させてステップＳ４０５に進む。つまり、ＰＬＬ回路３に対して電源や発振ＥＮ信号をＯＮにしている。
【００７７】
次に、ステップＳ４０５において、ＰＬＬ回路３の安定化の完了を確認してステップＳ４０６に進む。この安定化とは、ＰＬＬ回路３の引き込み期間が経過して安定した逓倍クロック信号が出力されるようになることである。
【００７８】
次に、ステップＳ４０６において、クロック信号の切り替えを行ってステップＳ４０７に進む。本ステップでは、クロック選択回路４に対して、基準クロック信号から逓倍クロック信号に切り替えさせて、機能ブロック５やＣＰＵ６を逓倍クロック信号で動作させる。
【００７９】
次に、ステップＳ４０７において、ステップＳ４０３で開始した処理が完了したことを確認してステップＳ４０８に進む。そして、本ステップにおいて、ステップＳ４０３で動作させたタイマやカウンタ等を停止させて処理時間の計測が終了する。
【００８０】
次に、ステップＳ４０８において、第２の実施形態と同様に処理時間判定回路７にステップＳ４０７で計測が終了した処理時間の復帰時間テーブルを作成させる。復帰時間テーブル作成後は再び停止・休止状態となる。
【００８１】
一方、ステップＳ４０９においては、ＰＬＬ回路３の動作が必要か否かを判断し、必要な場合（ＹＥＳの場合）はステップＳ４１３に進み、必要でない場合（ＮＯの場合）はステップＳ４１０に進む。本ステップでは、ステップＳ４０１で受信した復帰要因に基づいて、当該復帰要因がＰＬＬ回路３を動作させる必要があるか否かを判断している。この判断は、第２の実施形態と同様に予め設定されているＰＬＬ回路３の復帰時間と復帰時間テーブルを参照して判断する。
【００８２】
次に、ステップＳ４１０において、リセット引き伸ばしカウンタ８のカウンタ閾値を設定して、ステップＳ４１１に進む。本ステップでは、第３の実施形態と同様に、上述したようにリセット信号の解除のタイミングを設定するためのカウント閾値をリセット引き伸ばしカウンタ８に設定している。
【００８３】
次に、ステップＳ４１１において、処理を開始してステップＳ４１２に進む。
【００８４】
次に、ステップＳ４１２において、ステップＳ４１１などで開始した処理が完了したことを確認する。そして、処理完了後は再び停止・休止状態となる。
【００８５】
また、ステップＳ４１３においては、ＰＬＬ回路３が休止または停止のいずれかを判断し、休止である場合はステップＳ４１４に進み、停止の場合はステップＳ４１９に進む。本ステップでは、ＰＬＬ回路３が発振ＥＮ信号をＯＦＦにされて休止しているか、電源と発振ＥＮ信号をＯＦＦにされて停止しているかを判断している。
【００８６】
次に、ステップＳ４１４においては、リセット引き伸ばしカウンタ８のカウンタ閾値を設定して、ステップＳ４１５に進む。本ステップでは、ステップＳ４１０と同様に上述したようにリセット信号の解除のタイミングを設定するためのカウント閾値をリセット引き伸ばしカウンタ８に設定している。また、本ステップで設定されるカウンタ閾値はステップＳ４１０とは異なる値である。
【００８７】
次に、ステップＳ４１５において、処理を開始してステップＳ４１６に進む。また、本ステップ実行前にステップＳ３０３で設定したカウント閾値によるリセット信号の解除が行われている。なお、図８において、ステップＳ４１５からＳ４１２へ矢印が設けられているのは、機能ブロック５やＣＰＵ６において、基準クロック信号で処理が継続していることを示しているが、ステップＳ４０７と同様に基準クロック信号のみで処理が行われるわけではなく、途中から逓倍クロック信号に切り替わる場合もある。
【００８８】
次に、ステップＳ４１６において、ＰＬＬ回路３を休止状態から復帰させてステップＳ４１７に進む。つまり、ＰＬＬ回路３に対して発振ＥＮ信号をＯＮにしている。
【００８９】
次に、ステップＳ４１７において、ＰＬＬ回路３の安定化の完了を確認してステップＳ４１８に進む。この安定化とは、ＰＬＬ回路３の引き込み期間が経過して安定した逓倍クロック信号が出力されるようになることである。
【００９０】
次に、ステップＳ４１８において、クロック信号の切り替えを行ってステップＳ４１２に進む。本ステップでは、クロック選択回路４に対して、基準クロック信号から逓倍クロック信号に切り替えさせて、機能ブロック５やＣＰＵ６を逓倍クロック信号で動作させる。
【００９１】
また、ステップＳ４１９においては、リセット引き伸ばしカウンタ８のカウンタ閾値を設定して、ステップＳ４２０に進む。本ステップでは、ステップＳ４１０と同様に上述したようにリセット信号の解除のタイミングを設定するためのカウント閾値をリセット引き伸ばしカウンタ８に設定している。また、本ステップで設定されるカウンタ閾値はステップＳ４１４とは異なる値としてもよい。つまり、休止状態と停止状態とでリセット解除タイミングが異なる場合はカウント閾値を異ならせてもよい。
【００９２】
次に、ステップＳ４２０において、処理を開始してステップＳ４２１に進む。また、本ステップ実行前にステップＳ３０３で設定したカウント閾値によるリセット信号の解除が行われている。なお、図８において、ステップＳ４２０からＳ４１２へ矢印が設けられているのは、機能ブロック５やＣＰＵ６において、基準クロックで処理が継続していることを示しているが、ステップＳ４０７と同様に基準クロック信号のみで処理が行われるわけではなく、途中から逓倍クロック信号に切り替わる場合もある。
【００９３】
次に、ステップＳ４２１において、ＰＬＬ回路３を停止状態から復帰させてステップＳ４２２に進む。つまり、ＰＬＬ回路３に対して電源をＯＮにしている。
【００９４】
次に、ステップＳ４２２において、ＰＬＬ回路３の安定化の完了を確認してステップＳ４２３に進む。この安定化とは、ＰＬＬ回路３の引き込み期間が経過して安定した逓倍クロック信号が出力されるようになることである。
【００９５】
次に、ステップＳ４２３において、クロック信号の切り替えを行ってステップＳ４１２に進む。本ステップでは、クロック選択回路４に対して、基準クロック信号から逓倍クロック信号に切り替えさせて、機能ブロック５やＣＰＵ６を逓倍クロック信号で動作させる。
【００９６】
本実施形態によれば、復帰検出＆選択回路２が、受信した復帰要因が初回であった場合は、復帰時間を計測し、復帰時間テーブルに記憶させて、２回目以降に当該復帰要因を受信した場合は、復帰時間テーブルに基づいて、ＰＬＬ回路３の電源と発振ＥＮをＯＮするか否かを判断し、ＰＬＬ回路３の電源と発振ＥＮをＯＮしないと判断した場合は、基準クロック信号で機能ブロック５とＣＰＵ６を動作させるので、復帰時間が予め判明していない場合でも、復帰時間を計測して記憶するために、２回目以降は無駄なＰＬＬ回路３の復帰を少なくすることができ、省電力化を行うことができる。さらに、リセット引き伸ばしカウンタ８に復帰要因ごとにカウント閾値を設定しているので、復帰要因ごとにリセット解除タイミングの最適化が図れる。
【００９７】
また、本発明は上記実施形態に限定されるものではない。即ち、本発明の骨子を逸脱しない範囲で種々変形して実施することができる。
【符号の説明】
【００９８】
１          半導体集積回路
２          復帰検出＆選択回路（制御回路）
３          ＰＬＬ回路
４          クロック選択回路（選択回路）
５          機能ブロック（機能回路）
６          ＣＰＵ（機能回路）
７          処理時間判定回路（計測回路、記憶回路）
８          リセット引き伸ばしカウンタ（リセット制御回路）
【先行技術文献】
【特許文献】
【００９９】
【特許文献１】特開２００２−９１６０８号公報
【図１】
2013131014.tif 000003
【図２】
2013131014.tif 000004
【図３】
2013131014.tif 000005
【図４】
2013131014.tif 000006
【図５】
2013131014.tif 000007
【図６】
2013131014.tif 000008
【図７】
2013131014.tif 000009
【図８】
2013131014.tif 000010