(57)【要約】  本発明に係る半導体装置は、互いに独立して所定処理を行う複数の回路と、前記複数の回路の動作開始又は動作停止によって発生する電源電位変動が互いに干渉し合うように該動作開始又は該動作停止のタイミングを順次変更して制御する回路動作制御部とを有する。
2007108383.tif 000002
【特許請求の範囲】
【請求項１】
互いに独立して所定処理を行う複数の回路と、
前記複数の回路の動作開始又は動作停止によって発生する電源電位変動が互いに干渉し合うように該動作開始又は該動作停止のタイミングを順次変更して制御する回路動作制御部とを有することを特徴とする半導体装置。
【請求項２】
前記各複数の回路は、動作イネーブル端子を備え、
前記回路動作制御部は、
前記複数の回路の前記動作イネーブル端子の信号状態を制御することによって、該複数の回路の各々の動作可能状態を制御する第一コントローラと、
前記第一コントローラから前記複数の回路に対する動作可能要求及び／又は動作不可要求を受信すると、電源電位の共振周期に基づいて動作可能及び／又は動作不可の実行タイミングを調整して、前記第一コントローラへ承認指示を行う調整回路とを有することを特徴とする請求項１記載の半導体装置。
【請求項３】
前記電源の共振周期は、１周期分のシステムクロック数であることを特徴とする請求項２記載の半導体装置。
【請求項４】
前記調整回路は、前記電源の共振周期をプログラマブルに設定可能であることを特徴とする請求項２記載の半導体装置。
【請求項５】
前記調整回路は、初期状態と、前記イネーブル端子の１つのＯＦＦ状態からＯＮ状態へのＯＮ移行によって発動する第一の制約発動状態と、前記イネーブル端子の１つのＯＮ状態からＯＦＦ状態へのＯＦＦ移行によって発動する第二の制約発動状態の３状態を有することを特徴とする請求項２記載の半導体装置。
【請求項６】
前記調整回路は、初期状態において、前記第一コントローラから受信した前記動作可能要求の数と前記動作不可要求の数とが同数である場合、該動作可能要求と該動作不可要求との全てに対して前記承諾指示を該第一コントローラへ送信し、該初期状態を維持することを特徴とする請求項５記載の半導体装置。
【請求項７】
前記調整回路は、初期状態において、前記第一コントローラから受信した前記動作可能要求の数が前記動作不可要求の数より多い場合、該動作不可要求全てと、該動作不可要求の数と同数の該動作可能要求とに対して前記承諾指示を該第一コントローラへ送信し、更に、残りの動作可能要求に対して前記承諾指示を該第一コントローラへ送信して、前記第一の制約発動状態へと遷移することを特徴とする請求項５記載の半導体装置。
【請求項８】
前記調整回路は、初期状態において、前記第一コントローラから受信した前記動作可能要求の数が前記動作不可要求の数より少ない場合、該動作可能要求全てと、該動作可能要求の数と同数の該動作不可要求とに対して前記承諾指示を該第一コントローラへ送信し、更に、残りの動作不可要求に対して前記承諾指示を該第一コントローラへ送信して、前記第二の制約発動状態へと遷移することを特徴とする請求項５記載の半導体装置。
【請求項９】
前記調整回路は、前記第一の制約発動状態と前記第二の制約発動状態の夫々において、前記動作可能要求に対してＯＮ移行禁止期間とＯＮ移行許可期間とを交互に生成し、また、前記動作不可要求に対してＯＦＦ移行禁止期間とＯＦＦ移行許可期間とを交互に生成することを特徴とする請求項５記載の半導体装置。
【請求項１０】
少なくとも、前記第一の制約発動状態における前記動作可能要求に対するＯＮ移行禁止期間とＯＮ移行許可期間の生成方法は、前記第二の制約発動状態における前記動作不可要求に対するＯＦＦ移行禁止期間とＯＦＦ移行許可期間の生成と同様の生成方法、又は、前記第一の制約発動状態における前記動作不可要求に対するＯＦＦ移行禁止期間とＯＦＦ移行許可期間の生成方法は、前記第二の制約発動状態における前記動作可能要求に対するＯＮ移行禁止期間とＯＮ移行許可期間の生成と同様の生成方法であることを特徴とする請求項９記載の半導体装置。
【請求項１１】
前記調整回路は、前記第一の制約発動状態又は前記第二の制約発動状態において、前記第一コントローラから受信した前記動作可能要求の数と前記動作不可要求の数とが同数である場合、前記ＯＮ移行禁止期間と、前記ＯＮ移行許可期間と、前記ＯＦＦ移行禁止期間と、前記ＯＦＦ移行許可期間とに関わらず、該動作可能要求と該動作不可要求との全てに対して前記承諾指示を該第一コントローラへ送信し、該第一の制約発動状態又は該第二の制約発動状態を維持することを特徴とする請求項９記載の半導体装置。
【請求項１２】
前記調整回路は、前記第一の制約発動状態と前記第二の制約発動状態の夫々の前記ＯＮ移行許可期間において、１つの動作可能要求だけに対して前記承諾指示を該第一コントローラへ送信し、そのイベント発生によって制約解除され、前記初期状態に遷移することを特徴とする請求項９記載の半導体装置。
【請求項１３】
前記調整回路は、前記第一の制約発動状態と前記第二の制約発動状態の夫々の前記ＯＦＦ移行許可期間において、１つの動作不可要求だけに対して前記承諾指示を該第一コントローラへ送信し、そのイベント発生によって制約解除され、前記初期状態に遷移することを特徴とする請求項９記載の半導体装置。
【請求項１４】
前記調整回路は、前記第一の制約発動状態と前記第二の制約発動状態の夫々において、前記動作可能要求及び前記動作不可要求を前記第一コントローラから受信することなく一定期間が経過した場合、初期状態に遷移することを特徴とする請求項９記載の半導体装置。
【請求項１５】
前記第一コントローラは、
前記調整回路へ前記動作可能要求及び／又は前記動作不可要求を送信する第二コントローラと、
前記調整回路からの前記承認指示を示す承認パルスに応じて、前記第二コントローラから送信された前記動作可能要求及び／又は前記動作不可要求によって前記動作イネーブル端子の信号状態を切り換える複数のパルスドラッチとを有することを特徴とする請求項２記載の半導体装置。
【請求項１６】
前記複数の回路は１つの内部回路に備えられ、
前記回路動作制御手段は、
前記内部回路の電源電位を測定する電圧センサと、
前記電圧センサから供給される前記電源電位の測定結果を示す測定データの遷移を検知し、その検知結果に基づいて前記複数の回路の前記動作開始又は前記動作停止のタイミングを決定するデータ遷移検知部とを有することを特徴とする請求項１記載の半導体装置。
【請求項１７】
前記データ遷移検知部は、前記測定データから前記電源電位変動の共振周期を検知することを特徴とする請求項１６記載の半導体装置。
【請求項１８】
前記データ遷移検知部は、前記動作開始又は前記動作停止の開始を検知すると、前記電源電位変動が共振周期の干渉によってキャンセルされる前記測定データの遷移期間で、次の動作開始又は次の動作停止を許可することを特徴とする請求項１６記載の半導体装置。
【請求項１９】
前記データ遷移検知部は、前記動作開始又は前記動作停止の開始を検知すると、前記電源電位変動が共振周期の重なりによって増幅される前記測定データの遷移期間で、次の動作開始又は次の動作停止を禁止することを特徴とする請求項１６記載の半導体装置。
【請求項２０】
前記電圧センサは、前記電源電位を測定するための複数の基準電位を有することを特徴とする請求項１６記載の半導体装置。
【請求項２１】
互いに独立して所定処理を行う複数の回路を備えた半導体装置に搭載され、該複数の回路を動作可能又は動作不可とするタイミングを調整する調整回路であって、
前記複数の回路に対する２つ以上の動作可能要求及び／又は動作不可要求に対して、内部電源電圧の共振周期に基づいて電源電圧変動が互いに干渉し合うように前記タイミングを調整することを特徴とする調整回路。
【請求項２２】
前記内部電源電圧が安定している初期状態と、
前記複数の回路の１つの動作不可状態から動作可能状態への動作可能移行によって発動する第一の制約発動状態と、
前記複数の回路の１つの動作可能状態から動作不可状態への動作不可移行によって発動する第二の制約発動状態とを有することを特徴とする請求項２１記載の調整回路。
【請求項２３】
前記第一の制約発動状態と前記第二の制約発動状態の夫々において、前記動作可能要求に対してＯＮ移行禁止期間とＯＮ移行許可期間とを交互に生成し、また、前記動作不可要求に対してＯＦＦ移行禁止期間とＯＦＦ移行許可期間とを交互に生成することを特徴とする請求項２２記載の調整回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、回路動作の開始及び停止のタイミングをスケジュールするように設計されている半導体装置に関し、特に、停止状態から動作状態に移行する際又は動作状態から停止状態へ移行する際に発生する電源ノイズを抑制可能とする半導体装置に関する。
【背景技術】
【０００２】
近年、半導体装置（以下、ＬＳＩ（Large Scale Integration）という）では、複数のプロセッサがマルチコアを形成して配置されるようになってきた。例えば、図１に示すＬＳＩ１おいて、複数のプロセッサがコア０、コア１、コア２、コア３、・・・として配置され、電源電圧ＶＤＤ及び接地電圧ＶＳＳが、それぞれインダクタンスＬｄｄ（Ｈ）とインダクタンスＬｓｓ（Ｈ）を通して、コア０、コア１、コア２、コア３、・・・には内部電源電位ｉｖｄｄ（Ｖ）及び内部接地電位ｉｖｓｓ（Ｖ）が印加される。また、コア０、コア１、コア２、コア３、・・・が動作することによって電源電流Ｉ（Ａ）が流れ、内部の電源電位が変動する。内部電源容量Ｃ（Ｆ）は、その電位変動を抑制するために挿入される。【０００３】
配置されるプロセッサが多くなるにつれて、ＬＳＩ内部で消費される電力は大きくなる傾向にある。また、一方では、消費電力の削減要求もある。図２に示すＬＳＩ１ａは、図１に示すＬＳＩ１の構成に加えて、システムクロックｓｃｌｋに同期して動作イネーブル信号ｅｎ０、ｅｎ１、ｅｎ２、ｅｎ３、・・・のＯＮ及びＯＦＦによってコア０、コア１、コア２、コア３、・・・の動作が制御されるように構成されている。このように構成することによって、コア０、コア１、コア２、コア３、・・・の各々に対して、必要に応じて回路停止ができるようになった。【０００４】
しかしながら、消費電力の削減要求から、このようなマルチコア化と各コアの動作制御では、各コアの動作切り替え頻度を高くする必要があり、ＬＳＩ動作時と停止時の消費電力の差が激しくなることにより、そのステップ応答によるＬＳＩ内部の電源電位の変動が大きくなり、それによってＬＳＩ１及び１ａの内部回路が誤動作する等の問題がある。内部電源容量Ｃ（Ｆ）の挿入量を増やせば、内部の電位変動は抑制されるが、製造コストが上がってしまう。【０００５】
ステップ応答によるＬＳＩ内部の電源電位の変動とは、回路停止状態から動作状態へ遷移、或いは、回路動作状態から回路停止状態へ遷移した時のＬＳＩ内部の急激な電流変化に伴う電源ノイズのことである。【０００６】
図３に示すように、この電源ノイズの特長は、ＬＳＩの動作状態が遷移した瞬間からＬＳＩ内部の電源電位が、共振周期Ｔｒｅｓで非常に大きな振幅で変動し始め、動作状態が安定すると、やがて収束していく。また、動作状態の遷移とは、回路停止状態から回路動作状態への遷移、及び、回路動作状態から回路停止状態への遷移である。【０００７】
システムクロックｓｃｌｋに同期して動作イネーブル信号ｅｎ０からｅｎ３がＯＮになり内部電源電流Ｉが流れ出すと、コア０、コア１、コア２、コア３、・・・は一斉に回路停止状態から回路動作状態へと遷移する。このとき、内部電源電位ｉｖｄｄは、負方向へ大きく振り始める。そして、回路動作状態が安定すると、やがて電圧は収束する。このように、回路停止状態から回路動作状態への遷移時には、共振周期Ｔｒｅｓでの内部電源電位ｉｖｄｄは、非常に大きくなる。【０００８】
一方、動作イネーブル信号ｅｎ０からｅｎ３がＯＦＦになり内部電源電流Ｉが流れなくなると、コア０、コア１、コア２、コア３、・・・は回路動作状態から回路停止状態へと遷移する。内部電源電位ｉｖｄｄは、正方向へ大きく振り始める。そして、回路停止状態が安定すると、やがて電圧は収束する。このように、回路動作状態から回路停止状態への遷移時には、共振周期Ｔｒｅｓでの内部電源電位ｉｖｄｄは、回路停止状態から回路動作状態への遷移の場合の逆相で非常に大きくなる。【０００９】
この共振周期Ｔｒｅｓは、多くは、ＬＳＩ１及び１ａ内部の電源容量Ｃと電源インダクタンスＬ（Ｌｄｄ+Ｌｃｃ）から決っており、
Ｔｒｅｓ＝２×π×√（Ｌ×Ｃ）                      ―――（１）
で表される。ここで、πは円周率を示す。【００１０】
従来のＬＳＩ設計では、単純なスイッチングノイズを防ぐためには、各回路の動作タイミングをずらす等といった手法が適応されている。更に、上述したようなステップ応答に因る電源ノイズに関しては、例えば、Ｔｉｍ  Ｆｉｓｃｈｅｒ等によって、図４に示すように、電源ノイズが発生した際に、ＬＳＩ１及び１ａ内部で誤動作しないように、発生ノイズを検知してクロック周波数を落とす（ａ）ことが提案されている（例えば、非特許文献１）。
【特許文献１】特開２００１−３５８２９４号公報
【特許文献２】特開２００３−２９７９３７号公報
【特許文献３】特開２００４−１３８２０号公報
【特許文献４】特開平１１−７３３０号公報
【非特許文献１】Tim Fischer、Ferd Anderson、Ben Patella、Sam Naffziger、Intel, Fort Collins, CO、"A 90nm Variable-Frequency Clock System for a Power-Managed Itanium(r)-Family Processor"、２００５  IEEE International Solid-State Circuits Conference、ISSCC 20005 Session 16、p294-295、p599
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、Ｔｉｍ  Ｆｉｓｃｈｅｒ等による手法では、発生する電源ノイズに応じてクロック周波数を落とすため、ＬＳＩ性能を劣化させてしまう。また、この手法は、回路動作の周波数が変調することにより共振現象を助長してしまい、むしろ電源ノイズを増幅する危険性がある。更に、ステップ応答に因る電源ノイズそのものを制御することができないため、電源ノイズを抑止することができない（Ｆｉｓｃｈｅｒ等の図４）。【００１２】
本発明はこのような問題点に鑑みてなされたものであり、半導体装置（ＬＳＩ）内部の各回路の動作開始時刻及び停止時刻をスケジューリングして、電源ノイズを抑止する半導体装置を提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記課題を解決するため、本発明に係る半導体装置は、互いに独立して所定処理を行う複数の回路と、前記複数の回路の動作開始又は動作停止によって発生する電源電位変動が互いに干渉し合うように該動作開始又は該動作停止のタイミングを順次変更して制御する回路動作制御部とを有するように構成される。
【発明の効果】
【００１４】
本発明によれば、半導体装置内部の各回路の動作開始時刻と停止時刻とをスケジューリングすることによって、ステップ応答性の電源ノイズを大幅に削減することができる。また、半導体装置の性能を劣化させることもない。
【図面の簡単な説明】
【００１５】
【図１】マルチコアプロセッサを搭載した半導体装置の構成例を示す図である。
【図２】動作イネーブル端子を備えたマルチコアプロセッサの例を示す図である。
【図３】内部電源電位が変動している様子を示す図である。
【図４】電源ノイズの発生に対応してクロック周波数を変更する従来の方法を説明するための図である。
【図５】本発明の第一実施例に係るＬＳＩの回路構成の概略図である。
【図６】本発明の第一実施例に係るコアの動作状態とタイミング調整の概念を説明するための図である。
【図７】本発明の第一実施例に係るアービタの状態遷移を示す図である。
【図８】本発明の第一実施例に係るアービタの基本動作を説明するためのフローチャート図である。
【図９】本発明の第一実施例に係るアービタの回路構成を示すブロック図である。
【図１０】本発明の第一実施例に係る制約発動部の回路構成を示す図である。
【図１１】制約Ａが発動される状態例と制約Ａ発動期間でのＯＮ化要求及びＯＦＦ化要求に対する制御の例とを示す図である。
【図１２】イベント発生が無く制約Ａ発動期間が終了する場合を示す図である。
【図１３】制約Ａ発動期間内で発生したイベント発生によって初期状態となる場合を示す図である。
【図１４】制約Ｂが発動される状態例と制約Ｂ発動期間でのＯＮ化要求及びＯＦＦ化要求に対する制御の例とを示す図である。
【図１５】イベント発生が無く制約Ｂ発動期間が終了する場合を示す図である。
【図１６】ペアとなるＯＮ化要求とＯＦＦ化要求の同時動作による電源電位波形について説明するための図である。
【図１７】回路停止状態から２コア動作状態への移行による電源電位波形について説明するための図である。
【図１８】回路停止状態から４コア動作状態への移行による電源電位波形について説明するための図である。
【図１９】回路動作状態から２コア停止状態への移行による電源電位波形について説明するための図である。
【図２０】回路停止状態から４コア動作状態への移行による電源電位波形について説明するための図である。
【図２１】本発明の第二実施例に係るＬＳＩの全体回路構成を示す図である。
【図２２】本発明の第二実施例に係るＬＳＩ内部における電源ノイズを抑制するための回路構成を示す図である。
【図２３】ＯＮ／ＯＦＦ切換制御回路の構成を示す概略図である。
【図２４】ＯＮ状態個数及びＯＦＦ状態個数に応じたクロック有効化シーケンス及びクロック無効化シーケンスを説明するための図である。
【図２５】クロック有効化シーケンス及びクロック無効化シーケンスによる各動作イネーブル信号の状態を説明するための図である。
【図２６】本発明の第二実施例に係るＯＮ／ＯＦＦ切換制御回路の回路構成を詳細に示すブロック図である。
【図２７】電圧センサが検知する内部電位状態を説明するための図である。
【図２８】電圧センサで検知される内部電位状態と制約発動部へ供給される内部電位モニタデータの対応を示す図である。
【図２９】バンドギャップリファレンスを用いた電圧センサの回路構成を示す図である。
【図３０】論理回路を用いた電圧センサの回路構成を示す図である。
【図３１】コンパレータを用いた電圧センサの回路構成を示す図である。
【図３２】機能ブロックの１つが停止状態から動作開始した場合の制約発動部の動作を示す図である。
【図３３】機能ブロックの１つが動作状態から動作停止した場合の制約発動部の動作を示す図である。
【図３４】クロック有効化シーケンスのＯＮ化許可期間を説明するための図である。
【図３５】クロック有効化シーケンスによるＯＮ化制御の例を示す図である。
【図３６】クロック無効化シーケンスのＯＮ化許可期間を説明するための図である。
【符号の説明】
【００１６】
１０          コア＿０
１１          コア＿１
１２          コア＿２
１３          コア＿３
１０ｇ、１１ｇ、１２ｇ、１３ｇ        クロックゲート
１０ｐ、１１ｐ、１２ｐ、１３ｐ        パルスドラッチ
２０ａ        アービタによるタイミング調整
２０ｂ        アービタによるタイミング調整
５０ｇ、５１ｇ、５２ｇ、５３ｇ        クロックゲート
５０ｐ、５１ｐ、５２ｐ、５３ｐ        パルスドラッチ
１００        ＬＳＩ
１１０        第一コントローラ
１２０        第二コントローラ
２００        アービタ
２１０、６１０        要求信号遷移検出部
２１２、６１２        ＯＮ化要求検出部
２１４、６１４        ＯＦＦ化要求検出部
２２０、６２０        ＯＮ化／ＯＦＦ化要求ペア判定部
２３０、６３０        要求処理部
２３２、６３２        ＯＮ化要求処理部
２３４、６３４        ＯＦＦ化要求処理部
２４０、６４０        制約発動部
２４２        制約期間発生カウンタ
２４４        第一許可期間発生カウンタ
２４６        第二許可期間発生カウンタ
２５０        承認パルス発生器
５００        ＬＳＩ
５０１        内部回路
５０２        クロック発生回路
５０３        インダクタンス
５０４        インダクタンス
５０５        内部電源容量
５１０        ＯＮ／ＯＦＦ切換制御回路
５１３        ＯＮ／ＯＦＦシーケンサ
５１５        データ遷移検知部
５２０        ＰＭＵ
５３０        電圧センサ
【発明を実施するための最良の形態】
【００１７】
以下、本発明の実施形態を図面に基づいて説明する。【００１８】
図５は、本発明の第一実施例に係るＬＳＩ内部における電源ノイズを抑制するための回路構成を示す図である。図５中、ＬＳＩ内部における電源ノイズを抑制するための回路構成のみが例示され、他は省略される。【００１９】
図５において、電源ノイズの抑制に係る回路構成として、ＬＳＩ１００は、コア＿０  １０と、コア＿１  １１と、コア＿２  １２と、コア＿３  １３と、第一コントローラ１１０と、アービタ２００とを有する。図５では、４つのプロセッサが、コア＿０  １０と、コア＿１  １１と、コア＿２  １２と、コア＿３  １３として配列される例を示しているが、本発明は、この回路構成に限定されるものではなく、１からｎ個（ｎは４以上）のプロセッサによるマルチコアプロセッサについても以下に説明する同様の構成を備えることによって適応可能である。【００２０】
コア＿０  １０は、システムクロックｓｃｌｋと動作イネーブル信号ｅｎ０とを入力してコア内システムクロックｓｃｌｋ＿ｃ０を出力するクロックゲート１０ｇを有する。コア＿１  １１は、システムクロックｓｃｌｋと動作イネーブル信号ｅｎ１とを入力してコア内システムクロックｓｃｌｋ＿ｃ１を出力するクロックゲート１１ｇを有する。コア＿２  １２は、システムクロックｓｃｌｋと動作イネーブル信号ｅｎ２とを入力してコア内システムクロックｓｃｌｋ＿ｃ２を出力するクロックゲート１２ｇを有する。コア＿３  １３は、システムクロックｓｃｌｋと動作イネーブル信号ｅｎ３とを入力してコア内システムクロックｓｃｌｋ＿ｃ３を出力するクロックゲート１３ｇを有する。【００２１】
第一コントローラ１１０は、第二コントローラ１２０と、パルスドラッチ１０ｐ、１１ｐ、１２ｐ、及び１３ｐとを有する。【００２２】
第二コントローラ１２０は、アービタ２００に対して、コア＿０  １０と、コア＿１  １１と、コア＿２  １２と、コア＿３  １３とへの動作を開始するためのＯＮ化要求又は動作を停止するためのＯＦＦ化要求を行う。このＯＮ化要求又はＯＦＦ化要求は、パルスドラッチ１０ｐ、１１ｐ、１２ｐ、及び１３ｐへも供給される。【００２３】
パルスドラッチ１０ｐは、コア＿０  １０に接続され、第二コントローラ１２０からＯＮ化要求又はＯＦＦ化要求を受信し、かつ、そのＯＮ化要求又はＯＦＦ化要求に対してアービタ２００から承認パルスａｃｋｐ０を受信した場合に、コア＿０  １０に動作イネーブル信号ｅｎ０を供給する。【００２４】
パルスドラッチ１１ｐは、コア＿１  １１に接続され、第二コントローラ１２０からＯＮ化要求又はＯＦＦ化要求を受信し、かつ、そのＯＮ化要求又はＯＦＦ化要求に対してアービタ２００から承認パルスａｃｋｐ１を受信した場合に、コア＿１  １１に動作イネーブル信号ｅｎ１を供給する。【００２５】
パルスドラッチ１２ｐは、コア＿２  １２に接続され、第二コントローラ１２０からＯＮ化要求又はＯＦＦ化要求を受信し、かつ、そのＯＮ化要求又はＯＦＦ化要求に対してアービタ２００から承認パルスａｃｋｐ２を受信した場合に、コア＿２  １２に動作イネーブル信号ｅｎ２を供給する。【００２６】
パルスドラッチ１３ｐは、コア＿３  １３に接続され、第二コントローラ１２０からＯＮ化要求又はＯＦＦ化要求を受信し、かつ、そのＯＮ化要求又はＯＦＦ化要求に対してアービタ２００から承認パルスａｃｋｐ３を受信した場合に、コア＿３  １３に動作イネーブル信号ｅｎ３を供給する。【００２７】
アービタ２００は、外部から設定された共振周期Ｔｒｅｓに基づいて、ＯＮ化要求及びＯＦＦ化要求のタイミングを調整する回路である。アービタ２００は、コア＿０  １０、コア＿１  １１、コア＿２  １２、及びコア＿３  １３の各々に対応する信号ｒｅｑ０、ｒｅｑ１、ｒｅｑ２、及びｒｅｑ３を受信し、共振周期Ｔｒｅｓに基づくタイミング調整を行って、第一コントローラ１１０に対して承認パルスａｃｋｐ０、ａｃｋｐ１、ａｃｋｐ２、及びａｃｋｐ３を送信する。【００２８】
ＯＮ化とは、動作イネーブル信号ｅｎ０からｅｎ３を同時に又は個々にＯＦＦ状態からＯＮ状態へと移行させることである。また、ＯＦＦ化とは、動作イネーブル信号ｅｎ０からｅｎ３を同時に又は個々にＯＮ状態からＯＦＦ状態へと移行させることである。【００２９】
まず、コア＿０  １０を例にとり、コア＿０の動作状態に応じた信号状態を図６（Ａ）で説明する。動作状態には、ＯＮ状態とＯＦＦ状態とがある。図６（Ａ）は、コア＿０  １０における動作状態の例を示す図である。【００３０】
図６（Ａ）において、コア＿０  １０の動作状態（以下、コア＿０状態という）がＯＮ状態の場合、動作イネーブル信号ｅｎ０はハイレベルを維持し、また、動作イネーブル信号ｅｎ０がハイレベルの間コア＿０  １０が適切に動作するために供給されたシステムクロックｓｃｌｋがコア内システムクロックｓｃｌｋ＿ｃ０として内部で使用される。コア＿０状態がＯＦＦ状態に移行すると、動作イネーブル信号ｅｎ０はローレベルとなり、また、システムクロックｓｃｌｋの内部への供給が停止され、コア内システムクロックｓｃｌｋ＿ｃ０もローレベルとなる。コア＿０  １０は、このようにＯＮ状態とＯＦＦ状態とを繰り返す。また、他のコア＿１からコア＿３についても同様にＯＮ状態とＯＦＦ状態とを繰り返す。【００３１】
アービタ２００による共振周期Ｔｒｅｓに基づくタイミング調整の概念について、図６（Ｂ）で簡単に説明する。図６（Ｂ）は、コア＿０及びコア＿１に対して同時にＯＮ化要求し、更に同時にＯＦＦ化要求が行われた場合の共振周期Ｔｒｅｓに基づくタイミング調整の概念を説明するための図である。【００３２】
図６（Ｂ）において、信号ｒｅｑ０と信号ｒｅｑ１とが同時にＯＮとなりＯＮ化要求を示すと、アービタ２００は、例えば、先ずコア＿０  １０に対する承認パルスａｃｋｐ０を第一コントローラ１１０に送信し、共振周期Ｔｒｅｓに依存するある時間の経過後、コア＿１  １１に対する承認パルスａｃｋｐ１を第一コントローラ１１０に送信する（アービタによるタイミング調整２０ａ）。【００３３】
その後、信号ｒｅｑ０と信号ｒｅｑ１とが同時にＯＦＦとなりＯＦＦ化要求を示すと、アービタ２００は、例えば、先ずコア＿０  １０に対する承認パルスａｃｋｐ０を第一コントローラ１１０に送信し、共振周期Ｔｒｅｓに依存するある時間の経過後、コア＿１  １１に対する承認パルスａｃｋｐ１を第一コントローラ１１０に送信する（アービタによるタイミング調整２０ｂ）。【００３４】
以下、アービタ２００による共振周期Ｔｒｅｓに基づくタイミング調整について詳述する。【００３５】
図７は、本発明の第一実施例に係るアービタ２００の状態遷移を示す図である。図７において、アービタ２００には、初期状態と、制約Ａ発動状態と、制約Ｂ発動状態とがある。初期状態とは、内部電源電位ｉｖｄｄが安定している状態であり、例えば、電源電位変動が発生していない又は収束した状態、複数の電源電位変動が干渉し合ってキャンセルしている状態などである。制約Ａ発動状態とは、初期状態から動作状態へ移行した際に更なる動作開始及び動作停止を制約する状態にすることである。また、制約Ｂ発動状態とは、初期状態から停止状態へ移行した際に更なる動作開始及び動作停止を制約する状態にすることである。【００３６】
初期状態では、コントローラ１１０からのＯＮ化要求の数と、ＯＦＦ化要求の数とが同数の場合、アービタ２００は、全てのＯＮ化要求及び全てのＯＦＦ化要求に対して承認し、初期状態を維持する。【００３７】
初期状態においてＯＮ化要求の数がＯＦＦ化要求の数より多い場合、アービタ２００は、ＯＮ化要求全体のうちＯＦＦ化要求の数分のＯＮ化要求と、ＯＦＦ化要求とに対して承諾し、更に１つだけＯＮ化要求に対して承諾する。アービタ２００は、残りＯＮ化要求は保留させて、制約Ａ発動状態に移行する。【００３８】
制約Ａ発動状態にて設定された許可期間にＯＮ化要求又はＯＦＦ化要求のイベントが発生した場合、アービタ２００は、制約Ａ発動状態から初期状態へと移行する。又は、ＬＳＩ１００内部の電源電位が収束したとみなされる一定時間の経過後、アービタ２００は、制約Ａ発動状態から初期状態へと移行する。【００３９】
初期状態においてＯＦＦ化要求の数がＯＮ化要求の数より多い場合、アービタ２００は、ＯＦＦ化要求全体のうちＯＮ化要求の数分のＯＦＦ化要求と、ＯＮ化要求とに対して承諾し、更に１つだけＯＦＦ化要求に対して承諾する。アービタ２００は、残りＯＦＦ化要求は保留させて、制約Ｂ発動状態に移行する。【００４０】
制約Ｂ発動状態にて設定された許可期間にＯＮ化要求又はＯＦＦ化要求のイベントが発生した場合、アービタ２００は、制約Ｂ発動状態から初期状態へと移行する。又は、ＬＳＩ１００内部の電源電位が収束したとみなされる一定時間の経過後、アービタ２００は、制約Ｂ発動状態から初期状態へと移行する。【００４１】
以下、ＯＮ化要求とＯＦＦ化要求とが同時に発生した場合、１つＯＮ化要求と１つのＯＦＦ化要求とをペアという。【００４２】
図８は、本発明の第一実施例に係るアービタ２００の基本動作を説明するためのフローチャート図である。図８において、アービタ２００は、１つ又は複数のコアに対するＯＮ化要求又はＯＦＦ化要求を検出すと（ステップＳ１１）、ペアとなったＯＮ化要求とＯＦＦ化要求とに対してのみ同時に承認した後、そのＯＮ化要求とＯＦＦ化要求とを解除する（ステップＳ１２）。【００４３】
アービタ２００は、更にＯＮ化要求が存在するか否かを判断する（ステップＳ１３）。ＯＮ化要求が存在する場合、アービタ２００は、初期状態か否かを判断する（ステップＳ１４）。初期状態でない場合、アービタ２００は、ＯＮ化許可期間か否かを判断する（ステップＳ１４−２）。ＯＮ化許可期間でない場合、ＯＮ化許可期間になるのを待つ。【００４４】
一方、ステップＳ１４−２にてＯＮ化許可期間であると判断した場合、アービタ２００は、１つのコアに対してのみＯＮ化を承認した後、ＯＮ化要求を解除する（ステップＳ１４−４）。複数のコアに対してＯＮ化要求がなされた場合、例えば、小さいコア番号を優先して承諾する。【００４５】
そして、アービタ２００は、制約Ａ発動状態又は制約Ｂ発動状態を解除して初期状態に移行する（ステップＳ１４−６）。その後、アービタ２００は、ステップＳ１３へと戻る。【００４６】
一方、ステップＳ１４において、初期状態であると判断した場合、アービタ２００は、１つのコアに対してのみＯＮ化を承認した後、そのＯＮ化要求を解除する（ステップＳ１５）。複数のコアに対してＯＮ化要求がなされた場合、例えば、小さいコア番号を優先して承諾する。【００４７】
そして、アービタ２００は、制約Ａを発動して制約Ａ発動状態に移行する（ステップＳ１６）。その後、アービタ２００は、ステップＳ１３へと戻る。【００４８】
ステップＳ１３においてＯＮ化要求が存在しない場合、アービタ２００は、ＯＦＦ化要求が存在するか否かを判断する（ステップＳ２１）。ＯＦＦ化要求が存在しない場合、アービタ２００は、現状を維持する（ステップＳ２１−２）。【００４９】
一方、ＯＦＦ化要求が存在する場合、アービタ２００は、初期状態か否かを判断する（ステップＳ２２）。初期状態でない場合、アービタ２００は、ＯＦＦ化許可期間か否かを判断する（ステップＳ２２−２）。ＯＦＦ化許可期間でない場合、アービタ２００は、ＯＦＦ化許可期間になるまで待つ。【００５０】
ステップＳ２２−２にてＯＦＦ化許可期間であると判断した場合、アービタ２００は、１つのコアに対してのみＯＦＦ化を承認した後、そのＯＦＦ化要求を解除する（ステップＳ２２−４）。複数のコアに対してＯＦＦ化要求がなされた場合、例えば、小さいコア番号を優先して承諾する。【００５１】
そして、アービタ２００は、制約Ａ発動状態又は制約Ｂ発動状態を解除して初期状態に移行する（ステップＳ２２−６）。【００５２】
ステップＳ２２にて初期状態であると判断した場合、アービタ２００は、１つのコアに対してのみＯＦＦ化を承諾した後、そのＯＦＦ化要求を解除する（ステップＳ２３）。複数のコアに対してＯＦＦ化要求がなされた場合、例えば、小さいコア番号を優先して承諾する。【００５３】
そして、制約Ｂを発動して制約Ｂ発動状態に移行する（ステップＳ２４）。その後、アービタ２００は、ステップＳ１３へと戻る。【００５４】
図８において、第一コントローラ１１０から新たなＯＮ化要求又はＯＦＦ化要求が送信されて検出した場合、割り込み動作となり、アービタ２００は、先頭のステップＳ１１から再び処理を開始する。【００５５】
アービタ２００の回路構成及び信号フローについて図９及び図１０で説明する。図９及び図１０中、＃はコアの番号０から３の少なくとも１つを示し、場合によっては０から３の全て、又は、任意の組み合わせを示す。説明の便宜のため、これら場合を総称して＃で示し、またラインも実際にはコアの数分必要であるが一本の二重線で代表して示している。【００５６】
図９は、本発明の第一実施例に係るアービタ２００の回路構成を示すブロック図である。図９において、アービタ２００は、要求信号遷移検出部２１０と、ＯＮ化／ＯＦＦ化要求ペア判定部２２０と、要求処理部２３０と、制約発動部２４０と、承認パルス発生部２５０とを有する。【００５７】
要求信号遷移検出部２１０は、信号ｒｅｑ＃のＯＦＦからＯＮ又はＯＮからＯＦＦへの変化を検出する回路であり、更に、ＯＮ化要求検出部２１２と、ＯＦＦ化要求検出部２１４とを有する。【００５８】
ＯＮ化／ＯＦＦ化要求ペア判定部２２０は、ペアとなるＯＮ化要求とＯＦＦ化要求とがあるか否かを判定する回路であり、ペアの判定結果がなされるまで、ペア判定待ち信号が要求処理部２３０のＯＮ化要求処理部２３２とＯＦＦ化要求処理部２３４とに送出される。従って、要求処理部２３０は、ペア判定待ち信号がＯＮの間動作を行わない。【００５９】
要求処理部２３０は、ＯＮ化要求による動作状態の遷移を制御するＯＮ化要求処理部２３２と、ＯＦＦ化要求による動作状態の遷移を制御するＯＦＦ化要求処理部２３４とを有する。【００６０】
制約発動部２４０は、システムクロックｓｃｌｋと共振周期Ｔｒｅｓとを用いて、要求処理部２３０に対して種々の制御信号によってＯＮ化要求及びＯＦＦ化要求に対する処理の制御を行う。【００６１】
承認パルス発生部２５０は、ＯＮ化／ＯＦＦ化要求ペア判定部２２０からペア承認信号を受信すると、ペアに対応する信号ｒｅｑ＃に対して認証パルスａｃｋｐ＃を送信する。また、承認パルス発生部２５０は、要求処理部２３０から要求承認信号を受信すると、要求承認信号に対応する信号ｒｅｑ＃に対して認証パルスａｃｋｐ＃を第一コントローラ１１０へと送信する。【００６２】
先ず、信号ｒｅｑ＃は、要求信号遷移検出部２１０によって受信され、ＯＮ化要求検出部２１２と、ＯＦＦ化要求検出部２１４とに同時に供給される。【００６３】
ＯＮ化要求検出部２１２は、第二コントローラ１１０から送信される信号ｒｅｑ＃のＯＦＦからＯＮへの変化を検出し、ＯＦＦ化要求があった信号ｒｅｑ＃をＯＮ化要求検出信号として、ＯＮ化／ＯＦＦ化要求ペア判定部２２０へ送信する。ＯＮ化要求検出信号は、また、要求処理部２３０のＯＮ化要求処理部２３２へと送信される。しかし、要求処理部２３０のＯＮ化要求処理部２３２は、ＯＮ化／ＯＦＦ化要求ペア判定部２２０からペア判定待ち信号を受信しつづけている間は、ＯＮ化要求検出信号に対して何ら処理を行わない。【００６４】
ＯＦＦ化要求検出部２１４は、第二コントローラ１１０から送信される信号ｒｅｑ＃のＯＮからＯＦＦへの変化を検出し、ＯＮ化要求があった信号ｒｅｑ＃をＯＦＦ化要求検出信号として、ＯＦＦ化／ＯＮ化要求ペア判定部２２０へ送信する。ＯＦＦ化要求検出信号は、また、要求処理部２３０のＯＦＦ化要求処理部２３４へと送信される。しかし、要求処理部２３０のＯＦＦ化要求処理部２３４は、ＯＮ化／ＯＦＦ化要求ペア判定部２２０からペア判定待ち信号を受信しつづけている間は、ＯＦＦ化要求検出信号に対して何ら処理を行わない。【００６５】
ＯＮ化／ＯＦＦ化要求ペア判定部２２０は、ＯＮ化要求検出部２１２から受信したＯＮ化要求検出信号と、ＯＦＦ化要求検出信号２１４から受信したＯＦＦ化要求検出信号とからペアが存在するか否かを判定し、承認パルス発生部２５０に対してペアとなる信号ｒｅｑ＃に対してのみペア承認信号を送信する。図５に示す構成の場合、ペアとなるのは１組又は２組である。同時に、１組のペアの信号ｒｅｑ＃に対応するコアの１つはＯＮ状態となり、他方のコアはＯＦＦ状態となることで、電源電位がキャンセルされる（後述される図１６）。アービタ２００の状態遷移は、現状維持となる（図７）。【００６６】
また、ＯＮ化／ＯＦＦ化要求ペア判定部２２０は、承認パルス発生部２５０に対してペアとなる信号ｒｅｑ＃に対してのみペア承認信号を送信した後、ペア判定待ち信号を解除する。【００６７】
ＯＮ化／ＯＦＦ化要求ペア判定部２２０から送信されたペア承認信号によって、承認パルス発生部２５０は、第一コントローラ１１０へペアとなった信号ｒｅｑ＃に対して認証パルスａｃｋｐ＃を送信すると、要求信号遷移検出部２１０へペアとなったＯＮ化要求検出信号とＯＦＦ化要求検出信号とに対して要求検出解除信号を送信する。【００６８】
要求信号遷移検出部２１０にて要求検出解除信号が受信されると、ＯＮ化要求検出部２１２は、要求検出解除信号に対応するＯＮ化要求検出信号のみを解除して残りのＯＮ化要求検出信号を送信する。【００６９】
同様に、ＯＦＦ化要求検出部２１４は、要求検出解除信号に対応するＯＦＦ化要求検出信号のみを解除して残りのＯＦＦ化要求検出信号を送信する。【００７０】
ペア判定待ち信号が解除されているため、アービタ２００の状態遷移に応じた要求処理が行われる。この場合、すでにペア判定が行われているので、１つＯＮ化要求又は１つのＯＦＦ化要求に対して要求処理が行われることとなる。すなわち、ＯＮ化要求処理部２３２又はＯＦＦ化要求処理部２３４のいずれか一方が要求処理を実行する。以下、アービタ２００の状態遷移毎に説明する。
<初期状態>
要求処理部２３０のＯＮ化要求処理部２３２は、制約発動部２４０から送出される制約発動期間信号ｇａｔｅのレベルによって、現在が初期状態なのか制約発動状態なのかを判断し、初期状態（例えば、制約発動期間信号ｇａｔｅがハイレベル）であれば、ＯＮ化要求のあるコアの内最も若いコア番号に対応する信号ｒｅｑ＃に対してのみ要求承認信号を送出する。そして、ＯＮ化要求処理部２３２は、制約発動部２４０へ制約Ａ発動パルスａ＿ｐｕｌｓｅを送信し、制約Ａが発動する。アービタ２００は、制約Ａ発動状態となる。【００７１】
同様に、要求処理部２３０のＯＦＦ化要求処理部２３２は、制約発動部２４０から送出される制約発動期間信号ｇａｔｅのレベルによって、現在が初期状態なのか制約発動状態なのかを判断し、初期状態（例えば、制約発動期間信号ｇａｔｅがハイレベル）であれば、ＯＦＦ化要求のあるコアの内最も若いコア番号に対応する信号ｒｅｑ＃に対してのみ要求承認信号を送出する。そして、ＯＦＦ化要求処理部２３４は、制約発動部２４０へ制約Ｂ発動パルスｂ＿ｐｕｌｓｅを送信し、制約Ｂが発動する。アービタ２００は、制約Ｂ発動状態となる。【００７２】
承認パルス発生部２５０は、要求処理部２３０から受信した要求承認信号に対応する信号ｒｅｑ＃に対して、承認パルスａｃｋｐ＃を第一コントローラ１００へ送信する。また、承認パルス発生部２５０は、要求承認信号に対応するＯＮ化要求検出信号又はＯＦＦ化要求検出信号に対して、要求検出解除信号を送出して要求信号遷移検出部２１０のＯＮ化要求検出信号又はＯＦＦ化要求検出信号を解除する。
<制約発動状態>
要求処理部２３０のＯＮ化要求処理部２３２は、制約発動部２４０から送出される制約発動期間信号ｇａｔｅがローレベルの場合、更に、制約発動部２４０から送出されるＯＮ化許可期間信号ｏｎ＿ｅのレベルによって、現在がＯＮ化許可期間なのかＯＮ化禁止期間なのかを判断し、ＯＮ化禁止期間（例えば、ＯＮ化許可期間信号ｏｎ＿ｅがローレベル）の場合、要求処理を保留し、ＯＮ化許可期間（例えば、ＯＮ化許可期間信号ｏｎ＿ｅがハイレベル）になるのを待つ。【００７３】
ＯＮ化許可期間信号ｏｎ＿ｅがハイレベルになれば、要求処理部２３０のＯＮ化要求処理部２３２は、ＯＮ化要求のあるコア＿０  １０からコア＿３  １３の内最も若いコア番号に対応する信号ｒｅｑ＃に対してのみ要求承認信号を送出する。【００７４】
承認パルス発生部２５０は、要求処理部２３０から受信した要求承認信号に対応する信号ｒｅｑ＃に対して、承認パルスａｃｋｐ＃を第一コントローラ１００へ送信する。また、承認パルス発生部２５０は、要求承認信号に対応するＯＮ化要求検出信号に対して、要求検出解除信号を送出して要求信号遷移検出部２１０のＯＮ化要求検出信号を解除する。【００７５】
更に、この場合、要求処理部２３０は、制約発動部２４０へ制約解除パルスｒ＿ｐｕｌｓｅを送出し、制約発動状態が解除される。そして、アービタ２００は初期状態へ戻る。【００７６】
同様に、要求処理部２３０のＯＦＦ化要求処理部２３４は、制約発動部２４０から送出される制約発動期間信号ｇａｔｅがローレベルの場合、更に、制約発動部２４０から送出されるＯＦＦ化許可期間信号ｏｆｆ＿ｅのレベルによって、現在がＯＦＦ化許可期間なのかＯＦＦ化禁止期間なのかを判断し、ＯＦＦ化禁止期間（例えば、ＯＦＦ化許可期間信号ｏｆｆ＿ｅがローレベル）の場合、要求処理を保留し、ＯＦＦ化許可期間（例えば、ＯＦＦ化許可期間信号ｏｆｆ＿ｅがハイレベル）になるのを待つ。【００７７】
ＯＦＦ化許可期間信号ｏｆｆ＿ｅがハイレベルになれば、要求処理部２３０のＯＦＦ化要求処理部２３４は、ＯＦＦ化要求のあるコアの内最も若いコア番号に対応する信号ｒｅｑ＃に対してのみ要求承認信号を送出する。【００７８】
承認パルス発生部２５０は、要求処理部２３０から受信した要求承認信号に対応する信号ｒｅｑ＃に対して、承認パルスａｃｋｐ＃を第一コントローラ１００へ送信する。また、承認パルス発生部２５０は、要求承認信号に対応するＯＦＦ化要求検出信号に対して、要求検出解除信号を送出して要求信号遷移検出部２１０のＯＦＦ化要求検出信号を解除する。【００７９】
更に、この場合、要求処理部２３０は、制約発動部２４０へ制約解除パルスｒ＿ｐｕｌｓｅを送出し、制約発動状態が解除される。そして、アービタ２００は初期状態へ戻る。【００８０】
図１０は、本発明の第一実施例に係る制約発動部２４０の回路構成を示す図である。図１０において、制約発動部２４０は、制約期間発生カウンタ２４２と、第一許可期間発生カウンタ２４４と、第二許可期間発生カウンタ２４６と、共振周波数格納レジスタ２４９とを有する。【００８１】
ＯＮ化要求処理部２３２から送信される制約Ａ発動信号と、ＯＦＦ化要求処理部２３４から送信される制約Ｂ発動信号と、要求処理部２３０から送信される制約解除信号とは、制約期間発生カウンタ２４２と、第一許可期間発生カウンタ２４４と、第二許可期間発生カウンタ２４６とに供給される。【００８２】
また、システムクロックｓｃｌｋも制約期間発生カウンタ２４２と、第一許可期間発生カウンタ２４４と、第二許可期間発生カウンタ２４６とに供給される。【００８３】
共振周期Ｔｒｅｓは、共振周期格納レジスタ２４９から制約期間発生カウンタ２４２と、第一許可期間発生カウンタ２４４と、第二許可期間発生カウンタ２４６とに供給される。【００８４】
共振周期格納レジスタ２４９は、共振周期Ｔｒｅｓを外部から設定可能なレジスタである。共振周期Ｔｒｅｓは、システムクロックｓｃｌｋのサイクル数で示される。外部から設定可能な共振周期格納レジスタ２４９によって、アービタ２００は、電源の共振周期に係る情報をプログラマブルに設定できる。【００８５】
制約期間発生カウンタ２４２は、制約Ａ発動信号ａ＿ｐｕｌｓｅを検知すると、共振周期Ｔｒｅｓに基づいて決定される制約Ａ発動期間の間、制約発動期間信号ｇａｔｅをローレベルに保つ。制約Ａ発動期間とは、
共振周期Ｔｒｅｓ  ×  制約Ａ発動期間の所定周期数
によって定められシステムクロックｓｃｌｋを用いてカウントされる。【００８６】
また、制約期間発生カウンタ２４２は、制約Ｂ発動信号ｂ＿ｐｕｌｓｅを検知すると、共振周期Ｔｒｅｓに基づいて決定される制約Ｂ発動期間の間、制約発動期間信号ｇａｔｅをローレベルに保つ。制約Ｂ発動期間とは、
共振周期Ｔｒｅｓ  ×  制約Ｂ発動期間の所定周期数
によって定められシステムクロックｓｃｌｋを用いてカウントされる。【００８７】
更に、制約期間発生カウンタ２４２は、制約解除信号ｒ＿ｐｕｌｓｅを検知すると、カウントを解除する。すなわち、制約発動期間信号ｇａｔｅをハイレベルにして制約を解除する。【００８８】
第一許可期間発生カウンタ２４４は、制約Ａ発動信号ａ＿ｐｕｌｓｅを検知すると、共振周期Ｔｒｅｓに基づいて決定されるＯＮ化許可期間の間、ＯＮ化許可期間信号ｏｎ＿ｅをハイレベルに保つ。【００８９】
制約Ａ発動期間のＯＮ化許可期間は、制約Ａ発動期間中のＯＮ化要求による電源電位の変動を互いにキャンセルし合うように決定される。そのため、制約Ａ発動信号ａ＿ｐｕｌｓｅの検知後、ＯＮ化許可期間の開始までシステムクロックｓｃｌｋを用いて所定回数をカウントした後、ＯＮ化許可期間信号ｏｎ＿ｅをハイレベルにし、ＯＮ化許可期間の所定回数をカウントした後、ＯＮ化許可期間信号ｏｎ＿ｅをローレベルにする。そして、次のＯＮ化許可期間の開始までシステムクロックｓｃｌｋを用いて所定回数をカウントした後、ＯＮ化許可期間信号ｏｎ＿ｅをハイレベルにする。このようなカウントを制約Ａ発動によって行う。制約Ａ発動期間のＯＮ化許可期間の決定方法は図１１（Ａ）及び図１１（Ｂ）で詳述される。【００９０】
また、第一許可期間発生カウンタ２４４は、制約Ｂ発動信号ｂ＿ｐｕｌｓｅを検知すると、共振周期Ｔｒｅｓに基づいて決定されるＯＮ化許可期間の間、ＯＮ化許可期間信号ｏｎ＿ｅをハイレベルに保つ。【００９１】
制約Ｂ発動期間のＯＮ化許可期間は、制約Ｂ発動期間中のＯＮ化要求による電源電位の変動を互いにキャンセルし合うように決定される。そのため、制約Ｂ発動信号ｂ＿ｐｕｌｓｅの検知後、ＯＮ化許可期間信号ｏｎ＿ｅをハイレベルにして、最初のＯＮ化許可期間をシステムクロックｓｃｌｋを用いて所定回数をカウントした後、ＯＮ化許可期間信号ｏｎ＿ｅをローレベルにする。そして、次のＯＮ化許可期間の開始までシステムクロックｓｃｌｋを用いて所定回数をカウントした後、ＯＮ化許可期間信号ｏｎ＿ｅをハイレベルにする。このようなカウントを制約Ｂ発動によって行う。制約Ｂ発動期間のＯＮ化許可期間の決定方法は図１４（Ａ）及び図１４（Ｂ）で詳述される。【００９２】
第二許可期間発生カウンタ２４６は、制約Ａ発動信号ａ＿ｐｕｌｓｅを検知すると、共振周期Ｔｒｅｓに基づいて決定されるＯＦＦ化許可期間の間、ＯＦＦ化許可期間信号ｏｆｆ＿ｅをハイレベルに保つ。【００９３】
制約Ａ発動期間のＯＦＦ化許可期間は、制約Ａ発動期間中のＯＦＦ化要求による電源電位の変動を互いにキャンセルし合うように決定される。そのため、制約Ａ発動信号ａ＿ｐｕｌｓｅの検知後、ＯＦＦ化許可期間信号ｏｆｆ＿ｅをハイレベルにして、最初のＯＦＦ化許可期間をシステムクロックｓｃｌｋを用いて所定回数をカウントした後、ＯＦＦ化許可期間信号ｏｆｆ＿ｅをローレベルにする。そして、次のＯＦＦ化許可期間の開始までシステムクロックｓｃｌｋを用いて所定回数をカウントした後、ＯＦＦ化許可期間信号ｏｆｆ＿ｅをハイレベルにする。このようなカウントを制約Ｂ発動によって行う。制約Ｂ発動期間のＯＮ化許可期間の決定方法は図１１（Ａ）及び図１１（Ｂ）で詳述される。【００９４】
また、第二許可期間発生カウンタ２４６は、制約Ｂ発動信号ｂ＿ｐｕｌｓｅを検知すると、共振周期Ｔｒｅｓに基づいて決定されるＯＦＦ化許可期間の間、ＯＦＦ化許可期間信号ｏｆｆ＿ｅをハイレベルに保つ。【００９５】
制約Ｂ発動期間のＯＦＦ化許可期間は、制約Ｂ発動期間中のＯＦＦ化要求による電源電位の変動を互いにキャンセルし合うように決定される。そのため、制約Ｂ発動信号ｂ＿ｐｕｌｓｅの検知後、ＯＦＦ化許可期間の開始までシステムクロックｓｃｌｋを用いて所定回数をカウントした後、ＯＦＦ化許可期間信号ｏｆｆ＿ｅをハイレベルにし、ＯＦＦ化許可期間の所定回数をカウントした後、ＯＦＦ化許可期間信号ｏｆｆ＿ｅをローレベルにする。そして、次のＯＦＦ化許可期間の開始までシステムクロックｓｃｌｋを用いて所定回数をカウントした後、ＯＦＦ化許可期間信号ｏｆｆ＿ｅをハイレベルにする。このようなカウントを制約Ｂ発動によって行う。制約Ｂ発動期間のＯＦＦ化許可期間の決定方法は図１４（Ａ）及び図１４（Ｂ）で詳述される。【００９６】
次に、制約Ａ発動期間において、第一許可期間発生カウンタ２４４によるＯＮ化許可期間の制御と、第二許可期間発生カウンタ２４６によるＯＦＦ化許可期間の制御とについて、図１１（Ａ）及び図１１（Ｂ）で説明する。【００９７】
図１１（Ａ）は、制約Ａが発動される状態例を示す図である。図１１（Ａ）において、動作イネーブル信号ｅｎ０がＯＮ状態、かつ、動作イネーブル信号ｅｎ１、ｅｎ２、及びｅｎ３がＯＦＦ状態の場合に、動作イネーブル信号ｅｎ１がＯＮ状態に移行すると、制約Ａが発動する。【００９８】
図１１（Ｂ）は、図１１（Ａ）に示される状態による制約Ａ発動期間でのＯＮ化要求及びＯＦＦ化要求に対する制御の例を示す図である。図１１（Ｂ）において、例えば、共振周期格納レジスタ２４９（図１０）に、Ｔｒｅｓ値としてシステムサイクル数「１６」が設定されていた場合、制約Ａ発動期間は、電源電位が収束する１９／８周期として設定される。【００９９】
図１１（Ｂ）において、先ず、制約Ａ発動期間でのＯＮ化要求に対する制御について説明する。【０１００】
最初のＯＮ化許可期間は、１／２周期後に出現し、その後のＯＮ化許可期間は１周期毎に出現するように設定される。【０１０１】
ＯＮ化許可期間には、その出現タイミングの前後にマージンが設定されある程度の間隔を持たせてある。マージンは、例えば、±１／８周期又は±１／１６周期等としてもよい。この例では、マージンを±１／８周期として説明する。【０１０２】
図１１（Ａ）の状態例では、ＯＮ化要求は、動作イネーブル信号ｅｎ２又はｅｎ３に対して行われる可能性がある。例えば、要求処理部２３０のＯＮ化要求処理部２３２が動作イネーブル信号ｅｎ２に対するＯＮ化要求を示すＯＮ化要求検出信号を受信している場合で、かつ、ペア判定待ち信号が解除されている場合に、ＯＮ化許可期間信号ｏｎ＿ｅのハイレベルを検知すると、ＯＮ化要求処理部２３２は、そのＯＮ化要求を承認する。【０１０３】
要求処理部２３０は、要求承認信号を送出し、ｅｎ１のＯＮ状態への移行とｅｎ２のＯＮ状態への移行とによる電源電位の変動は互いにキャンセルされるため、制約解除信号ｒ＿ｐｕｌｓｅが制約発動部２４０へ送信される。制約Ａ発動期間は解除され、アービタ２００は、初期状態となる。【０１０４】
ＯＮ化要求処理部２３２は、ＯＮ化禁止期間で動作イネーブル信号ｅｎ２に対するＯＮ化要求を示すＯＮ化要求検出信号を受信した場合、次のＯＮ化許可期間まで保留し、次のＯＮ化許可期間の開始時に要求承認信号を送出する。そして、制約Ａ発動期間は解除され、アービタ２００は、初期状態となる。【０１０５】
図１１（Ｂ）において、次に、制約Ａ発動期間でのＯＦＦ化要求に対する制御について説明する。【０１０６】
最初のＯＦＦ化許可期間は、制約Ａ発動と同時に出現し、その後のＯＦＦ化許可期間は１周期毎に出現するように設定される。【０１０７】
ＯＦＦ化許可期間には、その出現タイミングの前後にマージンが設定されある程度の間隔を持たせてある。マージンは、例えば、±１／８周期又は±１／１６周期等としてもよい。この例では、マージンを±１／８周期として説明する。【０１０８】
図１１（Ａ）の状態例では、ＯＦＦ化要求は、動作イネーブル信号ｅｎ０又はｅｎ１に対して行われる可能性がある。例えば、要求処理部２３０のＯＦＦ化要求処理部２３４が動作イネーブル信号ｅｎ０に対するＯＦＦ化要求を示すＯＦＦ化要求検出信号を受信している場合で、かつ、ペア判定待ち信号が解除されている場合に、ＯＦＦ化許可期間信号ｏｆｆ＿ｅのハイレベルを検知すると、ＯＦＦ化要求処理部２３４は、そのＯＦＦ化要求を承認する。【０１０９】
要求処理部２３０は、要求承認信号を送出し、ｅｎ１のＯＮ状態への移行とｅｎ０のＯＦＦ状態への移行とによる電源電位の変動は互いにキャンセルされるため、制約解除信号ｒ＿ｐｕｌｓｅが制約発動部２４０へ送信される。制約Ａ発動期間は解除され、アービタ２００は、初期状態となる。【０１１０】
ＯＦＦ化要求処理部２３４は、ＯＦＦ化禁止期間で動作イネーブル信号ｅｎ０に対するＯＦＦ化要求を示すＯＦＦ化要求検出信号を受信した場合、次のＯＦＦ化許可期間まで保留し、次のＯＦＦ化許可期間の開始時に要求承認信号を送出する。そして、制約Ａ発動期間は解除され、アービタ２００は、初期状態となる。【０１１１】
また、制約Ａ発動期間でペアとなるＯＮ化要求とＯＦＦ化要求とが発生した場合、ＯＮ化許可期間及びＯＦＦ化許可期間でなくても、そのペアに対して同時に承認がなされ、図１１（Ｂ）に示されるような制約Ａ発動期間が保持される。【０１１２】
次に、制約Ａ発動後のＯＮ化要求又はＯＦＦ化要求によるイベント発生の有無による制約Ａ発動期間の違いについて図１２と図１３とで説明する。イベント発生とは、制約Ａ発動後のＯＮ化要求又はＯＦＦ化要求によって、所定の制約Ａ発動期間を待つことなく制約解除となる状態を示す。【０１１３】
図１２は、イベント発生が無く制約Ａ発動期間が終了する場合を示す図である。図１２において、制約Ａ発動期間の直前から制約Ａ発動期間終了後の初期状態へ移行した後までのシステムクロックｓｃｌｋが示される（図１２（ａ））。制約Ａ発動信号ａ＿ｐｕｌｓｅは、制約Ａの開始を示すＯＮの１クロック後にＯＦＦとなる（図１２（ｂ））。制約Ｂ発動信号ｂ＿ｐｕｌｓｅは、ＯＦＦである（図１２（ｃ））。制約解除信号ｒ＿ｐｕｌｓｅは、ＯＦＦである（図１２（ｄ））。【０１１４】
制約発動期間信号ｇａｔｅは、制約Ａ発動信号ａ＿ｐｕｌｓｅのＯＮ直後にローレベルとなり、制約Ａ発動期間の間はローレベルを維持し、イベント発生（制約解除）がない場合、制約Ａ発動期間の終了でハイレベルとなる（図１２（ｅ））。【０１１５】
ＯＮ化許可期間信号ｏｎ＿ｅは、制約Ａ発動信号ａ＿ｐｕｌｓｅのＯＮに応じて、制約Ａ発動期間に対するＯＮ化禁止期間とＯＮ化許可期間とに対応してローレベルとハイレベルとを繰り返す（図１２（ｆ））。【０１１６】
ＯＦＦ化許可期間信号ｏｆｆ＿ｅも同様に、制約Ａ発動信号ａ＿ｐｕｌｓｅのＯＮに応じて、制約Ａ発動期間に対するＯＦＦ化許可期間とＯＦＦ化禁止期間とに対応してローレベルとハイレベルとを繰り返す（図１２（ｇ））。【０１１７】
共振周期Ｔｒｅｓをシステムクロックｓｃｌｋの１６サイクルとして、時間（図１２（ｊ））が共振周期Ｔｒｅｓで示されると、上述したような信号状態によって、ＯＮ化要求に対しては、最初の３／８周期はＯＮ化禁止期間、３／８周期から５／８周期まではＯＮ化許可期間、５／８周期から１１／８周期まではＯＮ化禁止期間、・・・１９／８周期以降は初期状態となる（図１２（ｈ））。最初のＯＮ化禁止期間を除いて、ＯＮ化許可期間とＯＮ化禁止期間との組で１周期分である。このような制御が第一許可期間発生カウンタ２４４（図１０）によって行われる。【０１１８】
ＯＦＦ化要求に対しては、最初の１／８周期はＯＦＦ化許可期間、１／８周期から７／８周期まではＯＦＦ化禁止期間、７／８周期から９／８周期まではＯＦＦ化許可期間、・・・１９／８周期以降は初期状態となる（図１２（ｉ））。最初のＯＦＦ化許可期間及び最後のＯＦＦ化禁止期間を除いて、ＯＦＦ化許可期間とＯＦＦ化禁止期間との組で１周期分である。このような制御が第二許可期間発生カウンタ２４６（図１０）によって行われる。【０１１９】
図１３は、制約Ａ発動期間内で発生したイベント発生によって初期状態となる場合を示す図である。図１３において、制約Ａ発動期間の直前から制約Ａ発動期間終了後の初期状態へ移行した後までのシステムクロックｓｃｌｋが示される（図１３（ａ））。制約Ａ発動信号ａ＿ｐｕｌｓｅは、制約Ａの開始を示すＯＮの１クロック後にＯＦＦとなる（図１３（ｂ））。制約Ｂ発動信号ｂ＿ｐｕｌｓｅは、ＯＦＦである（図１３（ｃ））。制約解除信号ｒ＿ｐｕｌｓｅは、制約Ａ発動後、例えば、ＯＮ化許可期間でのＯＮ化要求の承諾によって制約解除を示すＯＮの１クロック後にＯＦＦとなる（図１３（ｄ））。【０１２０】
制約発動期間信号ｇａｔｅは、制約Ａ発動信号ａ＿ｐｕｌｓｅのＯＮ直後にローレベルとなり、制約解除信号ｒ＿ｐｕｌｓｅのＯＮに応じてハイレベルとなる（図１３（ｅ））。ＯＮ化許可期間信号ｏｎ＿ｅは、制約Ａ発動信号ａ＿ｐｕｌｓｅのＯＮに応じて、制約Ａ発動期間に対するＯＮ化禁止期間とＯＮ化許可期間とに対応してローレベルとハイレベルとを繰り返す（図１３（ｆ））。ＯＦＦ化許可期間信号ｏｆｆ＿ｅは、制約Ａ発動信号ａ＿ｐｕｌｓｅのＯＮに応じて、制約Ａ発動期間に対するＯＦＦ化許可期間とＯＦＦ化禁止期間とに対応してローレベルとハイレベルとを繰り返す（図１３（ｇ））。【０１２１】
図１２同様に、共振周期Ｔｒｅｓをシステムクロックｓｃｌｋの１６サイクルとして、時間（図１３（ｊ））が共振周期Ｔｒｅｓで示される。上述したような信号状態によって、ＯＮ化要求に対しては、制約Ａが、最初の３／８周期のＯＮ化禁止期間後のＯＮ化許可期間中に解除されて初期状態となる（図１３（ｈ））。【０１２２】
また、ＯＦＦ化要求に対しては、最初の１／８周期のＯＦＦ化許可期間後のＯＦＦ化禁止期間中に解除されて初期状態となる（図１３（ｉ））。【０１２３】
次に、制約Ｂ発動期間において、第一許可期間発生カウンタ２４４によるＯＮ化許可期間の制御と、第二許可期間発生カウンタ２４６によるＯＦＦ化許可期間の制御とについて、図１４（Ａ）及び図１４（Ｂ）で説明する。【０１２４】
図１４（Ａ）は、制約Ｂが発動される状態例を示す図である。図１４（Ａ）において、動作イネーブル信号ｅｎ０、ｅｎ１、及びｅｎ２がＯＮ状態、かつ、動作イネーブル信号ｅｎ３がＯＦＦ状態の場合に、動作イネーブル信号ｅｎ１がＯＦＦ状態に移行すると、制約Ｂが発動する。【０１２５】
図１４（Ｂ）は、図１４（Ａ）に示される状態による制約Ｂ発動期間でのＯＮ化要求及びＯＦＦ化要求に対する制御の例を示す図である。図１４（Ｂ）において、例えば、共振周期格納レジスタ２４９（図１０）にシステムサイクル数「１６」が設定されていた場合、制約Ｂ発動期間は、電源電位が収束する１５／８周期として設定される。【０１２６】
図１４（Ｂ）において、先ず、制約Ｂ発動期間でのＯＮ化要求に対する制御について説明する。【０１２７】
最初のＯＮ化許可期間は、制約Ｂ発動と同時に出現し、その後のＯＮ化許可期間は１周期毎に出現するように設定される。【０１２８】
ＯＮ化許可期間には、その出現タイミングの前後にマージンが設定されある程度の間隔を持たせてある。マージンは、例えば、±１／８周期又は±１／１６周期等としてもよい。この例では、マージンを±１／８周期として説明する。【０１２９】
図１４（Ａ）の状態例では、ＯＮ化要求は、動作イネーブル信号ｅｎ１又はｅｎ３に対して行われる可能性がある。例えば、要求処理部２３０のＯＮ化要求処理部２３２が動作イネーブル信号ｅｎ３に対するＯＮ化要求を示すＯＮ化要求検出信号を受信している場合で、かつ、ペア判定待ち信号が解除されている場合に、ＯＮ化許可期間信号ｏｎ＿ｅのハイレベルを検知すると、ＯＮ化要求処理部２３２は、そのＯＮ化要求を承認する。【０１３０】
要求処理部２３０は、要求承認信号を送出し、ｅｎ１のＯＦＦ状態への移行とｅｎ３のＯＮ状態への移行とによる電源電位の変動は互いにキャンセルされるため、制約解除信号ｒ＿ｐｕｌｓｅが制約発動部２４０へ送信される。制約Ｂ発動期間は解除され、アービタ２００は、初期状態となる。【０１３１】
ＯＮ化要求処理部２３２は、ＯＮ化禁止期間で動作イネーブル信号ｅｎ３に対するＯＮ化要求を示すＯＮ化要求検出信号を受信した場合、次のＯＮ化許可期間まで保留し、次のＯＮ化許可期間の開始時に要求承認信号を送出する。そして、制約Ｂ発動期間は解除され、アービタ２００は、初期状態となる。【０１３２】
図１４（Ｂ）において、次に、制約Ｂ発動期間でのＯＦＦ化要求に対する制御について説明する。【０１３３】
最初のＯＦＦ化許可期間は、１／２周期後に出現し、その後のＯＦＦ化許可期間は１周期毎に出現するように設定される。【０１３４】
ＯＦＦ化許可期間には、その出現タイミングの前後にマージンが設定されある程度の間隔を持たせてある。マージンは、例えば、±１／８周期又は±１／１６周期等としてもよい。この例では、マージンを±１／８周期として説明する。【０１３５】
図１４（Ａ）の状態例では、ＯＦＦ化要求は、動作イネーブル信号ｅｎ０又はｅｎ２に対して行われる可能性がある。例えば、要求処理部２３０のＯＦＦ化要求処理部２３４が動作イネーブル信号ｅｎ２に対するＯＦＦ化要求を示すＯＦＦ化要求検出信号を受信している場合で、かつ、ペア判定待ち信号が解除されている場合に、ＯＦＦ化許可期間信号ｏｆｆ＿ｅのハイレベルを検知すると、ＯＦＦ化要求処理部２３４は、そのＯＦＦ化要求を承認する。【０１３６】
要求処理部２３０は、要求承認信号を送出し、ｅｎ１のＯＦＦ状態への移行とｅｎ２のＯＦＦ状態への移行とによる電源電位の変動は互いにキャンセルされるため、制約解除信号ｒ＿ｐｕｌｓｅが制約発動部２４０へ送信される。制約Ｂ発動期間は解除され、アービタ２００は、初期状態となる。【０１３７】
ＯＦＦ化要求処理部２３４は、ＯＦＦ化禁止期間で動作イネーブル信号ｅｎ２に対するＯＦＦ化要求を示すＯＦＦ化要求検出信号を受信した場合、次のＯＦＦ化許可期間まで保留し、次のＯＦＦ化許可期間の開始時に要求承認信号を送出する。そして、制約Ｂ発動期間は解除され、アービタ２００は、初期状態となる。【０１３８】
また、制約Ｂ発動期間でペアとなるＯＮ化要求とＯＦＦ化要求とが発生した場合、ＯＮ化許可期間及びＯＦＦ化許可期間でなくても、そのペアに対して同時に承認がなされ、図１４（Ｂ）に示されるような制約Ｂ発動期間が保持される。【０１３９】
図１５は、イベント発生が無く制約Ｂ発動期間が終了する場合を示す図である。図１５において、制約Ｂ発動期間の直前から制約Ｂ発動期間終了後の初期状態へ移行した後までのシステムクロックｓｃｌｋが示される（図１５（ａ））。制約Ａ発動信号ａ＿ｐｕｌｓｅは、ＯＦＦである（図１５（ｂ））。制約Ｂ発動信号ｂ＿ｐｕｌｓｅは、制約Ｂの開始を示すＯＮの１クロック後にＯＦＦとなる（図１５（ｃ））。制約解除信号ｒ＿ｐｕｌｓｅは、ＯＦＦである（図１５（ｄ））。【０１４０】
制約発動期間信号ｇａｔｅは、制約Ｂ発動信号ｂ＿ｐｕｌｓｅのＯＮ直後にローレベルとなり、制約Ｂ発動期間の間はローレベルを維持し、イベント発生（制約解除）がない場合、制約Ｂ発動期間の終了でハイレベルとなる（図１５（ｅ））。【０１４１】
ＯＮ化許可期間信号ｏｎ＿ｅは、制約Ｂ発動信号ｂ＿ｐｕｌｓｅのＯＮに応じて、制約Ｂ発動期間に対するＯＮ化禁止期間とＯＮ化許可期間とに対応してローレベルとハイレベルとを繰り返す（図１５（ｆ））。【０１４２】
ＯＦＦ化許可期間信号ｏｆｆ＿ｅも同様に、制約Ａ発動信号ａ＿ｐｕｌｓｅのＯＮに応じて、制約Ｂ発動期間に対するＯＦＦ化許可期間とＯＦＦ化禁止期間とに対応してローレベルとハイレベルとを繰り返す（図１５（ｇ））。【０１４３】
共振周期Ｔｒｅｓをシステムクロックｓｃｌｋの１６サイクルとして、時間（図１５（ｊ））が共振周期Ｔｒｅｓで示されると、上述したような信号状態によって、ＯＮ化要求に対しては、最初の１／８周期はＯＮ化許可期間、そして１／８周期から７／８周期まではＯＮ化禁止期間、７／８周期から９／８周期まではＯＮ化許可期間、・・・１５／８周期以降は初期状態となる（図１５（ｉ））。最初のＯＮ化許可期間を除いて、ＯＮ化許可期間とＯＦＦ化許可期間との組で１周期分である。このような制御が第一許可期間発生カウンタ２４４（図１０）によって行われる。【０１４４】
ＯＦＦ化要求に対しては、最初の３／８周期はＯＦＦ化禁止期間、３／８周期から５／８周期まではＯＦＦ化許可期間、５／８周期から１１／８周期まではＯＦＦ化禁止期間、・・・１５／８周期以降は初期状態となる（図１５（ｈ））。最初と最後のＯＦＦ化許可期間を除いて、ＯＦＦ化許可期間とＯＦＦ化禁止期間との組で１周期分である。このような制御が第二許可期間発生カウンタ２４６（図１０）によって行われる。【０１４５】
制約Ｂ発動期間内で発生したイベント発生によって初期状態となる場合は、制約Ａ発動期間内で発生する場合における制御と同様であるので、その説明を省略する。【０１４６】
以下、アービタ２００の制御による電源電位波形について図１６から図２０で説明する。【０１４７】
図１６は、ペアとなるＯＮ化要求とＯＦＦ化要求の同時動作による電源電位波形について説明するための図である。図１６では、アービタ２００が動作イネーブル信号ｅｎ０へのＯＮ化要求と動作イネーブル信号ｅｎ１へのＯＦＦ化要求とがペアであると判定したときの電源電位波形について説明する。【０１４８】
図１６において、システムクロックｓｃｌｋに同期して（図１６（ａ））、動作イネーブル信号ｅｎ０がＯＦＦ状態からＯＮ状態になり、それと同時に動作イネーブル信号ｅｎ１がＯＮ状態からＯＦＦ状態に移行する（図１６（ｂ））。【０１４９】
動作イネーブル信号ｅｎ０のＯＮ化による内部電位変動１６ａと動作イネーブル信号ｅｎ１のＯＦＦ化による内部電位変動１６ｂとによって互いにキャンセルしつつ、夫々の内部電位変動１６ａ及び１６ｂは収束する（図１６（ｃ））。【０１５０】
結果、動作イネーブル信号ｅｎ０のＯＮ化による内部電位変動１６ａと動作イネーブル信号ｅｎ１のＯＦＦ化による内部電位変動１６ｂとによる合成内部電位変動１６ｃは、一定の電位を保った状態となる（図１６（ｄ））。【０１５１】
このペア判定によるアービタ２００の状態遷移は、初期状態でペアのＯＮ化及びＯＦＦ化を同時に承諾するため、初期状態を維持することとなる（図１６（ｅ））。【０１５２】
このように、２つの動作イネーブルｅｎ０とｅｎ１とに状態遷移があったものの、ＬＳＩ１００に与える内部電位変動は殆どない。【０１５３】
図１７は、回路停止状態から２コア動作状態への移行による電源電位波形について説明するための図である。図１７では、同時に動作イネーブル信号ｅｎ０とｅｎ１とに対してＯＮ化要求がなされた場合、又は、動作イネーブル信号ｅｎ０のＯＮ化による制約Ａ発動期間内に動作イネーブル信号ｅｎ１に対してＯＮ化要求がなされた場合に、アービタ２００が、ＯＮ化許可期間で動作イネーブル信号ｅｎ１のＯＮ化を承諾したときの電源電位波形について説明する。【０１５４】
図１７において、システムクロックｓｃｌｋに同期して（図１７（ａ））、回路停止状態の２コアが動作状態へと移行すると、動作イネーブル信号ｅｎ０をＯＮ化して制約Ａ発動状態となった後、約１／２の共振周期Ｔｒｅｓ後のＯＮ化許可期間で動作イネーブル信号ｅｎ１をＯＮ化する（図１７（ｂ））。アービタ２００では、動作イネーブル信号ｅｎ１のＯＮ化により制約解除となる。【０１５５】
動作イネーブル信号ｅｎ０のＯＮ化による内部電位変動１７ａの発生から約１／２の共振周期Ｔｒｅｓ後、動作イネーブル信号ｅｎ１のＯＮ化による内部電位変動１７ｂが発生する。その後、内部電位変動１７ａと内部電位変動１７ｂとは、互いにキャンセルしつつ、夫々の内部電位変動１７ａ及び１７ｂは収束する（図１７（ｃ））。【０１５６】
結果、動作イネーブル信号ｅｎ０のＯＮ化による内部電位変動１７ａと動作イネーブル信号ｅｎ１のＯＮ化による内部電位変動１７ｂとによって、合成内部電位変動１７ｃが形成される（図１７（ｄ））。その合成内部電位変動１７ｃでは、動作イネーブル信号ｅｎ０のＯＮ化直後から１／２の共振周期Ｔｒｅｓの間に動作イネーブル信号ｅｎ０のＯＮ化による内部電位変動１７ａ'（内部電位変動１７ａの一部）を示すものの、以後急速に変動は収まり一定の電位を保った状態となる。【０１５７】
動作イネーブルｅｎ０のＯＮ化と動作イネーブルｅｎ１のＯＮ化とによって内部電位変動１７ａ及び１７ｂとがキャンセルされる期間は、動作イネーブルｅｎ０のＯＮ化から１／２の共振周期Ｔｒｅｓ後の動作イネーブルｅｎ１のＯＮ化以降である。【０１５８】
この時のアービタ２００の状態遷移は、初期状態から動作イネーブル信号ｅｎ０のＯＮ化により制約Ａ発動状態となり、１／２の共振周期Ｔｒｅｓ後には動作イネーブル信号ｅｎ１のＯＮ化により初期状態へと戻る（図１７（ｅ））。【０１５９】
このように、２つの動作イネーブルｅｎ０とｅｎ１とに状態遷移があったものの、ＬＳＩ１００に与える合成内部電位変動１７ｃは、動作イネーブルｅｎ０のＯＮ化による内部電位変動１７ａ'（内部電位変動１７ａの一部）のみであり、かつ、１／２の共振周期Ｔｒｅｓの間のみである。【０１６０】
図１８は、回路停止状態から４コア動作状態への移行による電源電位波形について説明するための図である。図１８では、同時に動作イネーブル信号ｅｎ０からｅｎ３に対してＯＮ化要求がなされた場合、又は、動作イネーブル信号ｅｎ０のＯＮ化による制約Ａ発動期間内に動作イネーブル信号ｅｎ１から３に対してＯＮ化要求がなされた場合に、アービタ２００が、例えば、動作イネーブル信号ｅｎ０、ｅｎ１、ｅｎ２、ｅｎ３の順にＯＮ化を承諾したときの電源電位波形について説明する。【０１６１】
図１８において、システムクロックｓｃｌｋに同期して（図１８（ａ））、回路停止状態の４コアが動作状態へと移行すると、動作イネーブル信号ｅｎ０をＯＮ化して制約Ａ発動状態となった後、約１／２の共振周期Ｔｒｅｓ後のＯＮ化許可期間で動作イネーブル信号ｅｎ１をＯＮ化する。アービタ２００は、動作イネーブル信号ｅｎ１のＯＮ化により制約解除となって初期状態となった後、動作イネーブル信号ｅｎ２をＯＮ化して制約Ａを発動し、約１／２の共振周期Ｔｒｅｓ後のＯＮ化許可期間で動作イネーブル信号ｅｎ３をＯＮ化する（図１８（ｂ））。アービタ２００では、動作イネーブル信号ｅｎ３のＯＮ化により再び制約解除となる。【０１６２】
図１７に示すように、動作イネーブル信号ｅｎ０と動作イネーブル信号ｅｎ１のＯＮ化によって内部電位変動１７ａと内部電位変動１７ｂとによる干渉が内部的に発生する。更に、図１８に示すように、動作イネーブル信号ｅｎ２のＯＮ化による内部電位変動１８ａの発生から約１／２の共振周期Ｔｒｅｓ後、動作イネーブル信号ｅｎ３のＯＮ化による内部電位変動１８ｂが発生する。その後、内部電位変動１８ａと内部電位変動１８ｂとは、互いにキャンセルしつつ、夫々の内部電位変動１８ａ及び１８ｂは収束する（図１８（ｃ））。【０１６３】
結果、動作イネーブル信号ｅｎ０のＯＮ化による内部電位変動１７ａと、動作イネーブル信号ｅｎ１のＯＮ化による内部電位変動１７ｂと、動作イネーブル信号ｅｎ２のＯＮ化による内部電位変動１８ａと、動作イネーブル信号ｅｎ３のＯＮ化による内部電位変動１８ｂとによって、合成内部電位変動１８ｃが形成される（図１８（ｄ））。【０１６４】
その合成内部電位変動１８ｃでは、動作イネーブル信号ｅｎ０のＯＮ化直後から１／２の共振周期Ｔｒｅｓの間に動作イネーブル信号ｅｎ０のＯＮ化による内部電位変動１７ａ'（内部電位変動１７ａの一部）を示し、その後、動作イネーブル信号ｅｎ２のＯＮ化直後から１／２の共振周期Ｔｒｅｓの間に動作イネーブル信号ｅｎ２のＯＮ化による内部電位変動１８ａ'（内部電位変動１８ａの一部）を示す。【０１６５】
しかしながら、合成内部電位変動１８ｃは以後急速に収まり一定の電位を保った状態となる。また、合成内部電位変動１８ｃは、２度大きく変動するが、２つの内部電位変動１７ａ'と内部電位変動１８ａ'とが重なることはない。【０１６６】
動作イネーブルｅｎ０のＯＮ化と動作イネーブルｅｎ１のＯＮ化とによって内部電位変動１７ａ及び１７ｂとがほぼキャンセルされる期間は、動作イネーブルｅｎ０のＯＮ化から１／２の共振周期Ｔｒｅｓ後の動作イネーブルｅｎ１のＯＮ化以降である。【０１６７】
また、動作イネーブルｅｎ２のＯＮ化と動作イネーブルｅｎ３のＯＮ化とによって内部電位変動１８ａ及び１８ｂとがほぼキャンセルされる期間は、動作イネーブルｅｎ２のＯＮ化から１／２の共振周期Ｔｒｅｓ後の動作イネーブルｅｎ３のＯＮ化以降である。【０１６８】
この時のアービタ２００の状態遷移は、初期状態から動作イネーブル信号ｅｎ０のＯＮ化により制約Ａ発動状態となり、１／２の共振周期Ｔｒｅｓ後には動作イネーブル信号ｅｎ１のＯＮ化により初期状態へと戻り、再び、動作イネーブル信号ｅｎ２のＯＮ化により制約Ａ発動状態となり、１／２の共振周期Ｔｒｅｓ後には動作イネーブル信号ｅｎ３のＯＮ化により初期状態へと戻る（図１８（ｅ））。【０１６９】
このように、４つの動作イネーブルｅｎ０からｅｎ３に状態遷移があったものの、ＬＳＩ１００に与える合成内部電位変動１８ｃは、動作イネーブルｅｎ０のＯＮ化による内部電位変動１７ａ'（内部電位変動１７ａの一部）と動作イネーブルｅｎ２のＯＮ化による内部電位変動１８ａ'（内部電位変動１８ａの一部）のみであり、かつ、夫々１／２の共振周期Ｔｒｅｓの間のみに発生する。【０１７０】
図１９は、回路動作状態から２コア停止状態への移行による電源電位波形について説明するための図である。図１９では、同時に動作イネーブル信号ｅｎ０とｅｎ１とに対してＯＦＦ化要求がなされた場合、又は、動作イネーブル信号ｅｎ０のＯＦＦ化による制約Ｂ発動期間内に動作イネーブル信号ｅｎ１に対してＯＦＦ化要求がなされた場合に、アービタ２００が、ＯＦＦ化許可期間で動作イネーブル信号ｅｎ１のＯＦＦ化を承諾したときの電源電位波形について説明する。【０１７１】
図１９において、システムクロックｓｃｌｋに同期して（図１９（ａ））、回路停止状態の２コアが動作状態へと移行すると、動作イネーブル信号ｅｎ０をＯＦＦ化して制約Ｂ発動状態となった後、約１／２の共振周期Ｔｒｅｓ後のＯＦＦ化許可期間で動作イネーブル信号ｅｎ１をＯＦＦ化する（図１９（ｂ））。アービタ２００では、動作イネーブル信号ｅｎ１のＯＦＦ化により制約解除となる。【０１７２】
動作イネーブル信号ｅｎ０のＯＦＦ化による内部電位変動１９ａの発生から約１／２の共振周期Ｔｒｅｓ後、動作イネーブル信号ｅｎ１のＯＦＦ化による内部電位変動１９ｂが発生する。その後、内部電位変動１９ａと内部電位変動１９ｂとは、互いにキャンセルしつつ、夫々の内部電位変動１９ａ及び１９ｂは収束する（図１９（ｃ））。【０１７３】
結果、動作イネーブル信号ｅｎ０のＯＦＦ化による内部電位変動１９ａと動作イネーブル信号ｅｎ１のＯＦＦ化による内部電位変動１９ｂとによって、合成内部電位変動１９ｃが形成される（図１９（ｄ））。その合成内部電位変動１９ｃでは、動作イネーブル信号ｅｎ０のＯＦＦ化直後から１／２の共振周期Ｔｒｅｓの間に動作イネーブル信号ｅｎ０のＯＦＦ化による内部電位変動１９ａ'（内部電位変動１９ａの一部）を示すものの、以後急速に変動は収まり一定の電位を保った状態となる。【０１７４】
動作イネーブルｅｎ０のＯＦＦ化と動作イネーブルｅｎ１のＯＦＦ化とによって内部電位変動１９ａ及び１９ｂとがキャンセルされる期間は、動作イネーブルｅｎ０のＯＦＦ化から１／２の共振周期Ｔｒｅｓ後の動作イネーブルｅｎ１のＯＦＦ化以降である。【０１７５】
この時のアービタ２００の状態遷移は、初期状態から動作イネーブル信号ｅｎ０のＯＦＦ化により制約Ｂ発動状態となり、１／２の共振周期Ｔｒｅｓ後には動作イネーブル信号ｅｎ１のＯＦＦ化により初期状態へと戻る（図１９（ｅ））。【０１７６】
このように、２つの動作イネーブルｅｎ０とｅｎ１とに状態遷移があったものの、ＬＳＩ１００に与える合成内部電位変動１９ｃは、動作イネーブルｅｎ０のＯＦＦ化による内部電位変動１９ａ'（内部電位変動１９ａの一部）のみであり、かつ、１／２の共振周期Ｔｒｅｓの間のみである。【０１７７】
図２０は、回路停止状態から４コア動作状態への移行による電源電位波形について説明するための図である。図２０では、同時に動作イネーブル信号ｅｎ０からｅｎ３に対してＯＦＦ化要求がなされた場合、又は、動作イネーブル信号ｅｎ０のＯＦＦ化による制約Ｂ発動期間内に動作イネーブル信号ｅｎ１から３に対してＯＦＦ化要求がなされた場合に、アービタ２００が、例えば、動作イネーブル信号ｅｎ０、ｅｎ１、ｅｎ２、ｅｎ３の順にＯＦＦ化を承諾したときの電源電位波形について説明する。【０１７８】
図２０において、システムクロックｓｃｌｋに同期して（図２０（ａ））、回路停止状態の４コアが動作状態へと移行すると、動作イネーブル信号ｅｎ０をＯＦＦ化して制約Ｂ発動状態となった後、約１／２の共振周期Ｔｒｅｓ後のＯＦＦ化許可期間で動作イネーブル信号ｅｎ１をＯＦＦ化する。アービタ２００は、動作イネーブル信号ｅｎ１のＯＦＦ化により制約解除となって初期状態となった後、動作イネーブル信号ｅｎ２をＯＦＦ化して制約Ｂを発動し、約１／２の共振周期Ｔｒｅｓ後のＯＦＦ化許可期間で動作イネーブル信号ｅｎ３をＯＦＦ化する（図２０（ｂ））。アービタ２００では、動作イネーブル信号ｅｎ３のＯＦＦ化により再び制約解除となる。【０１７９】
図１９に示すように、動作イネーブル信号ｅｎ０と動作イネーブル信号ｅｎ１のＯＦＦ化によって内部電位変動１９ａと内部電位変動１９ｂとによる干渉が内部的に発生する。更に、図２０に示すように、動作イネーブル信号ｅｎ２のＯＦＦ化による内部電位変動２０ａの発生から約１／２の共振周期Ｔｒｅｓ後、動作イネーブル信号ｅｎ３のＯＦＦ化による内部電位変動２０ｂが発生する。その後、内部電位変動２０ａと内部電位変動２０ｂとは、互いにキャンセルしつつ、夫々の内部電位変動２０ａ及び２０ｂは収束する（図２０（ｃ））。【０１８０】
結果、動作イネーブル信号ｅｎ０のＯＦＦ化による内部電位変動１９ａと、動作イネーブル信号ｅｎ１のＯＦＦ化による内部電位変動１９ｂと、動作イネーブル信号ｅｎ２のＯＦＦ化による内部電位変動２０ａと、動作イネーブル信号ｅｎ３のＯＦＦ化による内部電位変動２０ｂとによって、合成内部電位変動２０ｃが形成される（図２０（ｄ））。【０１８１】
しかしながら、合成内部電位変動２０ｃは以後急速に収まり一定の電位を保った状態となる。また、合成内部電位変動２０ｃは、２度大きく変動するが、２つの内部電位変動１９ａ'と内部電位変動２０ａ'とが重なることはない。【０１８２】
動作イネーブルｅｎ０のＯＦＦ化と動作イネーブルｅｎ１のＯＦＦ化とによって内部電位変動１９ａ及び１９ｂとがキャンセルされる期間は、動作イネーブルｅｎ０のＯＦＦ化から１／２の共振周期Ｔｒｅｓ後の動作イネーブルｅｎ１のＯＦＦ化以降である。【０１８３】
また、動作イネーブルｅｎ２のＯＦＦ化と動作イネーブルｅｎ３のＯＦＦ化とによって内部電位変動２０ａ及び２０ｂとがキャンセルされる期間は、動作イネーブルｅｎ２のＯＦＦ化から１／２の共振周期Ｔｒｅｓ後の動作イネーブルｅｎ３のＯＦＦ化以降である。【０１８４】
この時のアービタ２００の状態遷移は、初期状態から動作イネーブル信号ｅｎ０のＯＦＦ化により制約Ｂ発動状態となり、１／２の共振周期Ｔｒｅｓ後には動作イネーブル信号ｅｎ１のＯＦＦ化により初期状態へと戻り、再び、動作イネーブル信号ｅｎ２のＯＦＦ化により制約Ｂ発動状態となり、１／２の共振周期Ｔｒｅｓ後には動作イネーブル信号ｅｎ３のＯＦＦ化により初期状態へと戻る（図２０（ｅ））。【０１８５】
このように、４つの動作イネーブルｅｎ０からｅｎ３に状態遷移があったものの、ＬＳＩ１００に与える合成内部電位変動２０ｃは、動作イネーブルｅｎ０のＯＦＦ化による内部電位変動１９ａ'（内部電位変動１９ａの一部）と動作イネーブルｅｎ２のＯＦＦ化による内部電位変動２０ａ'（内部電位変動２０ａの一部）のみであり、かつ、夫々１／２の共振周期Ｔｒｅｓの間のみに発生する。【０１８６】
上述より、たとえＯＮ化及びＯＦＦ化が連続して発生したとしても、合成内部電位変動１８ｃ及び２０ｃは、１つの動作イネーブルの状態遷移による電位変動量を超えることはない。【０１８７】
したがって、図５に示すような４つのコア＿０  １０からコア＿３  １３が配列されるＬＳＩ１００の場合、従来のＬＳＩと比較すると、電位変動量を凡そ４分の１に抑制することができる。また、このような電位変動量の抑制によって、ＬＳＩの性能を劣化させることはない。【０１８８】
また、本発明は、４つのコアが配列されるＬＳＩ１００に限定されるものではなく、４以上のコアが配列されるＬＳＩにも適応可能である。【０１８９】
以下に、共振周期Ｔｒｅｓを外部から設定することなく実際の電位変動を検知してＯＮ化のタイミング及びＯＦＦ化のタイミングを制御する第二実施例について説明する。【０１９０】
図２１は、本発明の第二実施例に係るＬＳＩの回路構成を示す図である。図２１において、ＬＳＩ５００は、複数の機能回路を備える内部回路５０１と、クロック発生回路５０２と、インダクタンス５０３と、インダクタンス５０４と、内部電源容量５０５と、ＯＮ／ＯＦＦ切換制御回路５１０と、ＰＭＵ（Power Management Unit）５２０と、電圧センサ５３０とを有する。【０１９１】
電源電圧ＶＤＤ及び接地電圧ＶＳＳがインダクタンス５０３及び５０４を介して印加され、内部電源電位ｉｖｄｄ（Ｖ）及び内部接地電位ｉｖｓｓ（Ｖ）が内部回路５０１に印加される。また、内部回路５０１が動作することによって電源電流Ｉ（Ａ）が流れ、ＬＳＩ５００内部の電源電位が変動する。内部電源容量５０５は、その電位変動を抑制する。【０１９２】
内部回路５０１では、ＯＮ／ＯＦＦ切換制御回路５１０からの動作の開始（ＯＮ）又は停止（ＯＦＦ）を示す各機能回路への制御信号に従って、対応する機能回路の動作開始及び動作停止が個々に制御される。各機能回路は、クロック発生回路５０２から供給されるシステムクロックｓｃｌｋに同期して動作する。クロック発生回路５０２へは外部クロックｅｃｌｋが与えられる。【０１９３】
ＯＮ／ＯＦＦ切換制御回路５１０は、電圧センサ５３０から供給される実際の電位変動を示す内部電位モニタデータを用いて共振周期を検知し、ＰＭＵ５２０からの機能回路毎のＯＮ要求及びＯＦＦ要求に応じて、ＯＮ切換のタイミングとＯＦＦ切換のタイミングとを制御して、内部回路５０１に対して機能回路毎に制御信号を送出する。【０１９４】
ＯＮ／ＯＦＦ切換制御回路５１０は、第一実施例のアービタ２００と同様に、図８に示される基本動作を実行するが、内部電位モニタデータを用いて電位変動を検知して初期状態と制約発動状態への切り替えを自動的に行なうため、図８に示されるステップＳ１６、Ｓ１４−６、Ｓ２４、Ｓ２４−６は省略される。【０１９５】
ＰＭＵ５２０は、内部回路５０１の動作状態を管理する装置であり、ＯＮ／ＯＦＦ切換制御回路５１０に対して機能回路毎にＯＮ要求又はＯＦＦ要求を送出する。【０１９６】
電圧センサ５３０は、内部電源電位ｉｖｄｄを測定し、その結果をＯＮ／ＯＦＦ切換制御回路５１０に供給する。電圧センサ５３０に内部電源電位ｉｖｄｄとセンサ用電源とが供給されることにより、電圧センサ５３０は、内部電源電位ｉｖｄｄの実際の電位変動を検知した結果を示した内部電位モニタデータをＯＮ／ＯＦＦ切換制御回路５１０に供給する。【０１９７】
図２２は、本発明の第二実施例に係るＬＳＩ内部における電源ノイズを抑制するための回路構成を示す図である。図２２中、ＬＳＩ内部における電源ノイズを抑制するための回路構成のみが例示される。【０１９８】
図２２において、電源ノイズの抑制に係る回路構成として、ＬＳＩ５００は、機能ブロック＿０  ５０と、機能ブロック＿１  ５１と、機能ブロック＿２  ５２と、機能ブロック＿３  ５３と、パルスドラッチ５０ｐ、５１ｐ、５２ｐ、及び５３ｐと、ＯＮ／ＯＦＦ切換制御回路５１０と、ＰＭＵ５２０とを有する。図２２では、内部回路５０１に４つのプロセッサが、機能ブロック＿０  ５０と、機能ブロック＿１  ５１と、機能ブロック＿２  ５２と、機能ブロック＿３  ５３として配列される例を示しているが、本発明は、この回路構成に限定されるものではなく、１からｎ個（ｎは４以上）のプロセッサによるマルチコアプロセッサについても以下に説明する同様の構成を備えることによって適応可能である。【０１９９】
第一実施例のコア＿０  １０と同様に、機能ブロック＿０  ５０は、システムクロックｓｃｌｋと動作イネーブル信号ｅｎ＿ｆ０とを入力して機能ブロック＿０回路内のシステムクロックｓｃｌｋ＿ｆ０を出力するクロックゲート５０ｇを有する。また、機能ブロック＿１  ５１、機能ブロック＿２  ５２及び機能ブロック＿３  ５３のそれぞれに関して、対応する動作イネーブル信号ｅｎ＿ｆ１、ｅｎ＿ｆ２及びｅｎ＿ｆ３と、対応するシステムクロックｓｃｌｋ＿ｆ１、システムクロックｓｃｌｋ＿ｆ２及びシステムクロックｓｃｌｋ＿ｆ３と、対応するクロックゲート５１ｇ、クロックゲート５２ｇ及びクロックゲート５３ｇとに同様の説明が成される。【０２００】
第二実施例では、第一実施例の第二コントローラ１２０の代わりにＰＭＵ５２０が、ＯＮ／ＯＦＦ切換制御回路５１０に対して、機能ブロック＿０  ５０と、機能ブロック＿１  ５１と、機能ブロック＿２  ５２と、機能ブロック＿３  ５３とへの動作を開始するためのＯＮ化要求又は動作を停止するためのＯＦＦ化要求を行う。このＯＮ化要求又はＯＦＦ化要求は、パルスドラッチ５０ｐ、５１ｐ、５２ｐ、及び５３ｐへも供給される。【０２０１】
第一実施例のパルスドラッチ１０ｐと同様に、パルスドラッチ５０ｐは、機能ブロック＿０  ５０に接続され、ＰＭＵ５２０からＯＮ化要求又はＯＦＦ化要求を受信し、かつ、そのＯＮ化要求又はＯＦＦ化要求に対してＯＮ／ＯＦＦ切換制御回路５１０から承認パルスａｃｋｐ＿ｆ０を受信した場合に、機能ブロック＿０  ５０に動作イネーブル信号ｅｎ＿ｆ０を供給する。同様に、パルスドラッチ５１ｐ、パルスドラッチ５２ｐ及びパルスドラッチ５３ｐのそれぞれに関して、ＰＭＵ５２０からＯＮ化要求又はＯＦＦ化要求に対してＯＮ／ＯＦＦ切換制御回路５１０から対応する承認パルスａｃｋｐ＿ｆ１、承認パルスａｃｋｐ＿２及び承認パルスａｃｋｐ＿ｆ３を受信した場合に、対応する機能ブロック＿１  ５１、機能ブロック＿２  ５２及び機能ブロック＿３  ５３にそれぞれの動作イネーブル信号ｅｎ＿ｆ１、動作イネーブル信号ｅｎ＿ｆ２及び動作イネーブル信号ｅｎ＿ｆ３を送出する。【０２０２】
ＯＮ／ＯＦＦ切換制御回路５１０は、実際の電位変動に基づいて、ＯＮ化要求及びＯＦＦ化要求のタイミングを調整する回路である。ＯＮ／ＯＦＦ切換制御回路５１０は、機能ブロック＿０  ５０、機能ブロック＿１  ５１、機能ブロック＿２  ５２、及び機能ブロック＿３  ５３の各々に対応する信号ｒｅｑ＿ｆ０、ｒｅｑ＿ｆ１、ｒｅｑ＿ｆ２、及びｒｅｑ＿ｆ３を受信し、実際の電位変動に基づくタイミング調整を行って、承認パルスａｃｋｐ＿ｆ０、ａｃｋｐ＿ｆ１、ａｃｋｐ＿ｆ２、及びａｃｋｐ＿ｆ３を送信する。【０２０３】
ＯＮ化とは、動作イネーブル信号ｅｎ＿ｆ０からｅｎ＿ｆ３を同時に又は個々にＯＦＦ状態からＯＮ状態へと移行させることである。また、ＯＦＦ化とは、動作イネーブル信号ｅｎ＿ｆ０からｅｎ＿ｆ３を同時に又は個々にＯＮ状態からＯＦＦ状態へと移行させることである。【０２０４】
図２３は、ＯＮ／ＯＦＦ切換制御回路５１０の構成を示す概略図である。図２３において、ＯＮ／ＯＦＦ切換制御回路５１０は、ＯＮ／ＯＦＦシーケンサ５１３と、データ遷移検知部５１５とを有する。【０２０５】
ＯＮ／ＯＦＦシーケンサ５１３は、ＯＮ／ＯＦＦ化要求を示すＯＮ／ＯＦＦ要求信号をＰＭＵ５２０から受信すると、データ遷移検知部５１５へＯＮ／ＯＦＦ化要求を行い、データ遷移検知部５１５からＯＮ／ＯＦＦ化要求に対する許可を得ると内部回路５０１へ制御信号を送信する。【０２０６】
データ遷移検知部５１５は、実際の電位変動から共振周波数の波形を検知して、電源ノイズを増幅させないようにＯＮ化するタイミング及びＯＦＦ化するタイミングを調節して、ＯＮ／ＯＦＦシーケンサ５１３へＯＮ化許可及びＯＦＦ化許可を通知する。一方、データ遷移検知部５１５は、電源ノイズを増幅させるＯＮ化するタイミング及びＯＦＦ化するタイミングでは、ＯＮ／ＯＦＦシーケンサ５１３へＯＮ化禁止及びＯＦＦ化禁止を通知する。【０２０７】
同時に発生するＯＮ化要求個数及びＯＦＦ化要求個数によって変化する内部回路５０１内のＯＮ状態個数及びＯＦＦ状態個数へのシーケンスについて図２４で説明する。図２４は、ＯＮ状態個数及びＯＦＦ状態個数に応じたクロック有効化シーケンス及びクロック無効化シーケンスを説明するための図である。【０２０８】
図２４において、内部回路５０１の機能ブロック＿０  ５０から機能ブロック＿３  ５３（以下、総称して機能ブロック＿＃と言う）の全てが全ＯＦＦ状態である場合をＳＴＥＰ１、機能ブロック＿＃のうち１つがＯＮ状態かつ他３つがＯＦＦ状態である場合をＳＴＥＰ２、機能ブロック＿＃のうち２つがＯＮ状態かつ他２つがＯＦＦ状態である場合をＳＴＥＰ３、機能ブロック＿＃のうち３つがＯＮ状態かつ他１つがＯＦＦ状態である場合をＳＴＥＰ４、機能ブロック＿＃の全てがＯＮ状態である場合をＳＴＥＰ５とする。【０２０９】
クロック有効化シーケンスとはＯＮ状態個数を増やすためのシーケンスであり、クロック無効化シーケンスとはＯＦＦ状態個数を増やすためのシーケンスである。つまり、機能ブロック＿＃のうち１つがＯＮ状態かつ他３つがＯＦＦ状態であるＳＴＥＰ２において、ＯＮ状態の１つの機能ブロックに対してＯＦＦ化要求及びＯＦＦ状態の３つの機能ブロックの１つに対してＯＮ化要求が同時に発生した場合、結果として内部回路５０１のＯＮ状態個数とＯＦＦ状態個数とに変化はないため、クロック有効化シーケンス及びクロック無効化シーケンスのいずれもなされない。【０２１０】
クロック有効化シーケンスについて簡単に説明する。全ＯＦＦ状態から全ＯＮ状態へのＯＮ化要求がなされた場合、クロック有効化シーケンスでは、機能ブロック＿＃を１つずつＯＮ化するためにＳＴＥＰ１からＳＴＥＰ５までが、状態切換制約期間（後述）内にて調整されたタイミングで順番に実行される。【０２１１】
また、内部回路５０１の現在の状態が機能ブロック＿＃のうち２つがＯＮ状態かつ他２つがＯＦＦ状態であるＳＴＥＰ３にある場合で、１つのＯＮ化要求によって、又は、同時のＯＮ化要求及びＯＦＦ化要求の組み合わせによって、機能ブロック＿＃のうち３つがＯＮ状態かつ他１つがＯＦＦ状態であるＳＴＥＰ４へと移行する場合、内部回路５０１は、状態切換制約期間内にて調整されたタイミングで移行する。他ＳＴＥＰへの移行も同様である。【０２１２】
クロック無効化シーケンスについて簡単に説明する。全ＯＮ状態から全ＯＦＦ状態へのＯＦＦ化要求がなされた場合、クロック無効化シーケンスでは、機能ブロック＿＃を１つずつＯＦＦ化するためにＳＴＥＰ５からＳＴＥＰ１までが、状態切換制約期間（後述）内にて調整されたタイミングで順番に実行される。【０２１３】
また、内部回路５０１の現在の状態が機能ブロック＿＃のうち２つがＯＮ状態かつ他２つがＯＦＦ状態であるＳＴＥＰ３にある場合で、１つのＯＦＦ化要求によって、又は、同時のＯＮ化要求及びＯＦＦ化要求の組み合わせによって、機能ブロック＿＃のうち１つがＯＮ状態かつ他３つがＯＦＦ状態であるＳＴＥＰ２へと移行する場合、内部回路５０１は、状態切換制約期間内にて調整されたタイミングで移行する。他ＳＴＥＰへの移行も同様である。【０２１４】
クロック有効化シーケンス及びクロック無効化シーケンスによる各動作イネーブル信号ｅｎ＿ｆ０〜ｅｎ＿ｆ３の状態について図２５で説明する。図２５中、クロック有効化シーケンスによって全ＯＦＦ状態から全ＯＮ状態へと移行し、その後、クロック無効化シーケンスによって全ＯＮ状態から全ＯＦＦ状態へと移行する状態が例示される。【０２１５】
図２５（ａ）は、動作イネーブルｅｎ＿ｆ０からｅｎ＿ｆ３のＯＮ又はＯＦＦ状態を示す。図２５（ｂ）は、時間軸を示す。図２５（ｃ）は、クロック有効化シーケンス及びクロック無効化シーケンスによる内部回路５０１内のステップを示す。【０２１６】
動作イネーブルｅｎ＿ｆ０からｅｎ＿ｆ３全てへのＯＮ化要求に応じて、クロック有効化シーケンスが開始され、調整されたタイミングで、動作イネーブルｅｎ＿ｆ０をＯＮにしてＳＴＥＰ１からＳＴＥＰ２へと移行し、動作イネーブルｅｎ＿ｆ１をＯＮにしてＳＴＥＰ２からＳＴＥＰ３へと移行し、動作イネーブルｅｎ＿ｆ２をＯＮにしてＳＴＥＰ３からＳＴＥＰ４へと移行し、動作イネーブルｅｎ＿ｆ３をＯＮにしてＳＴＥＰ４からＳＴＥＰ５へと移行する。【０２１７】
その後、動作イネーブルｅｎ＿ｆ０からｅｎ＿ｆ３全てへのＯＦＦ化要求に応じて、クロック無効化シーケンスが開始され、調整されたタイミングで、動作イネーブルｅｎ＿ｆ３をＯＦＦにしてＳＴＥＰ５からＳＴＥＰ４へと移行し、動作イネーブルｅｎ＿ｆ２をＯＦＦにしてＳＴＥＰ４からＳＴＥＰ３へと移行し、動作イネーブルｅｎ＿ｆ１をＯＦＦにしてＳＴＥＰ３からＳＴＥＰ２へと移行し、動作イネーブルｅｎ＿ｆ０をＯＦＦにしてＳＴＥＰ２からＳＴＥＰ１へと移行する。【０２１８】
動作イネーブルｅｎ＿ｆ０からｅｎ＿ｆ３は順に１つずつ制御されればよく、制御される動作イネーブルｅｎ＿ｆ０からｅｎ＿ｆ３の順番は、図２５の例示によって制限されない。【０２１９】
ＯＮ／ＯＦＦ切換制御回路５１０の回路構成及び信号フローについて図２６で説明する。図２６中、＃は機能ブロックの番号０から３の少なくとも１つを示し、場合によっては０から３の全て、又は、任意の組み合わせを示す。説明の便宜のため、これら場合を総称して＃で示し、またラインも実際には機能ブロックの数分必要であるが一本の二重線で代表して示している。【０２２０】
図２６は、本発明の第二実施例に係るＯＮ／ＯＦＦ切換制御回路５１０の回路構成を詳細に示すブロック図である。図２６に示すＯＮ／ＯＦＦ切換制御回路５１０において、ＯＮ／ＯＦＦシーケンサ５１３は、要求信号遷移検出部６１０と、ＯＮ化／ＯＦＦ化要求ペア判定部６２０と、要求処理部６３０と、承認パルス発生部６５０とを有する。また、データ遷移検知部５１５は、制約発動部６４０を有する。【０２２１】
要求信号遷移検出部６１０は、信号ｒｅｑ＿ｆ＃のＯＦＦからＯＮ又はＯＮからＯＦＦへの変化を検出する回路であり、更に、ＯＮ化要求検出部６１２と、ＯＦＦ化要求検出部６１４とを有する。【０２２２】
ＯＮ化／ＯＦＦ化要求ペア判定部６２０は、ペアとなるＯＮ化要求とＯＦＦ化要求とがあるか否かを判定する回路であり、ペアの判定結果がなされるまで、ペア判定待ち信号が要求処理部６３０のＯＮ化要求処理部６３２とＯＦＦ化要求処理部６３４とに送出される。従って、要求処理部６３０は、ペア判定待ち信号がＯＮの間動作を行わない。【０２２３】
要求処理部６３０は、ＯＮ化要求による動作状態の遷移を制御するＯＮ化要求処理部６３２と、ＯＦＦ化要求による動作状態の遷移を制御するＯＦＦ化要求処理部６３４とを有する。【０２２４】
制約発動部６４０は、内部電位モニタデータを用いて、要求処理部６３０に対して種々の制御信号によってＯＮ化要求及びＯＦＦ化要求に対する処理の制御を行う。【０２２５】
承認パルス発生部６５０は、ＯＮ化／ＯＦＦ化要求ペア判定部６２０からペア承認信号を受信すると、ペアに対応する信号ｒｅｑ＿ｆ＃に対して認証パルスａｃｋｐ＿ｆ＃を送信する。また、承認パルス発生部６５０は、要求処理部６３０から要求承認信号を受信すると、要求承認信号に対応する信号ｒｅｑ＿ｆ＃に対して認証パルスａｃｋｐ＿ｆ＃を対応するパルスドラッチ５０ｐから５３ｐの夫々へ送信する。【０２２６】
このように、第二実施例における要求信号遷移検出部６１０と、ＯＮ化／ＯＦＦ化要求ペア判定部６２０と、要求処理部６３０と、制約発動部６４０と、承認パルス発生部６５０とは、第一実施例における要求信号遷移検出部２１０と、ＯＮ化／ＯＦＦ化要求ペア判定部２２０と、要求処理部２３０と、制約発動部２４０と、承認パルス発生部２５０とに対応するため、更なる詳細な説明を省略する。【０２２７】
第二実施例における初期状態と制約発動状態とについて説明する。第二実施例において、初期状態とは、第一実施例と同様に、内部電源電位ｉｖｄｄが安定している状態であり、例えば、電源電位変動が発生していない又は収束した状態、複数の電源電位変動が干渉し合ってキャンセルしている状態などである。制約発動状態とは、電源電圧変動の検知開始から内部電源電位ｉｖｄｄが安定して初期状態となるまでの期間、更なる動作開始及び動作停止を制約する状態にすることである。
<初期状態>
要求処理部６３０は、制約発動部６４０からの制約発動期間信号ｇａｔｅ＿ｆのレベルによって、現在が初期状態なのか制約発動状態なのかを判断する。例えば、制約発動期間信号ｇａｔｅ＿ｆがハイレベルであれば初期状態であると判断する。
<制約発動状態>
要求処理部６３０のＯＮ化要求処理部６３２は、制約発動部６４０から送出される制約発動期間信号ｇａｔｅ＿ｆがローレベルの場合、更に、制約発動部６４０から送出されるＯＮ化許可期間信号ｏｎ＿ｆｅのレベルによって、現在がＯＮ化許可期間なのかＯＮ化禁止期間なのかを判断し、ＯＮ化禁止期間（例えば、ＯＮ化許可期間信号ｏｎ＿ｆｅがローレベル）の場合、要求処理を保留し、ＯＮ化許可期間（例えば、ＯＮ化許可期間信号ｏｎ＿ｆｅがハイレベル）になるのを待つ。【０２２８】
ＯＮ化許可期間信号ｏｎ＿ｆｅがハイレベルになれば、要求処理部６３０のＯＮ化要求処理部６３２は、ＯＮ化要求のある機能ブロック＿０  ５０から機能ブロック＿３  ５３の内最も若い機能ブロック番号に対応する信号ｒｅｑ＿ｆ＃に対してのみ要求承認信号を送出する。【０２２９】
承認パルス発生部６５０は、要求処理部６３０から受信した要求承認信号に対応する信号ｒｅｑ＿ｆ＃に対して、承認パルスａｃｋｐ＿ｆ＃を対応するパルスドラッチ５０ｐから５３ｐの１つへ送信する。【０２３０】
同様に、要求処理部６３０のＯＦＦ化要求処理部６３４は、制約発動部６４０から送出される制約発動期間信号ｇａｔｅ＿ｆがローレベルの場合、更に、制約発動部６４０から送出されるＯＦＦ化許可期間信号ｏｆｆ＿ｆｅのレベルによって、現在がＯＦＦ化許可期間なのかＯＦＦ化禁止期間なのかを判断し、ＯＦＦ化禁止期間（例えば、ＯＦＦ化許可期間信号ｏｆｆ＿ｆｅがローレベル）の場合、要求処理を保留し、ＯＦＦ化許可期間（例えば、ＯＦＦ化許可期間信号ｏｆｆ＿ｆｅがハイレベル）になるのを待つ。【０２３１】
ＯＦＦ化許可期間信号ｏｆｆ＿ｆｅがハイレベルになれば、要求処理部６３０のＯＦＦ化要求処理部６３４は、ＯＦＦ化要求のある機能ブロック＿０  ５０から機能ブロック＿３  ５３の内最も若い機能ブロック番号に対応する信号ｒｅｑ＿ｆ＃に対してのみ要求承認信号を送出する。【０２３２】
承認パルス発生部６５０は、要求処理部６３０から受信した要求承認信号に対応する信号ｒｅｑ＿ｆ＃に対して、承認パルスａｃｋｐ＿ｆ＃を対応するパルスドラッチ５０ｐから５３ｐの１つへ送信する。【０２３３】
その後、制約発動期間信号ｇａｔｅ＿ｆがローレベルになると、要求処理部６３０は初期状態へ移行したと判断する。【０２３４】
第二実施例において、第一実施例とは異なり、制約発動部６４０の制約発動期間信号ｇａｔｅ＿ｆは、内部電位モニタデータによってハイレベル又はローレベルへと切り替えられる（後述）。従って、要求処理部６３０は、制約発動要求及び制約解除要求を制約発動部６４０へ行う必要がない。【０２３５】
データ遷移検知部５１５の制約発動部６４０へ供給される内部電位モニタデータについて図２７及び図２８で説明する。図２７は、電圧センサ５３０が検知する内部電位状態を説明するための図である。【０２３６】
図２７に示すグラフ図は、ＬＳＩ５００の内部電源電位ｉｖｄｄを横軸に示し、電圧センサ５３０が検知する電位を縦軸に示している。【０２３７】
電圧センサ５３０には、基準電位Ａと、基準電位Ｂと、基準電位Ｃとが与えられており、縦軸に示される。例えば、基準電位Ａと、基準電位Ｂと、基準電位Ｃとは、予め高精度なバンドギャップリファレンス電位（以下、ＶＢＧ電位と記す）に基づいて生成される。【０２３８】
基準電位Ａは、電位変動によって開始される共振周波数の波形の立ち上がりから約１／２の共振周期Ｔｒｅｓ後の基準電位Ｂより高い電位である。基準電位Ｂは、内部回路５０１の電源電位が安定したときの電位である。基準電位Ｃは、電位変動によって開始される共振周波数の波形の立ち下がりから約１／２の共振周期Ｔｒｅｓ後の基準電位Ｂより低い電位である。【０２３９】
基準電位Ａ以上を超高電位３０、基準電位Ａから基準電位Ｂまでを高電位３１、基準電位Ｂから基準電位Ｃまでを低電位３２、基準電位Ｃ以下を超低電位３３とする。【０２４０】
そして、ＬＳＩ５００の内部電源電位ｉｖｄｄは、共振周期Ｔｒｅｓで変動し、その変動する内部電位状態を内部電位ｉｖｄｄ３で示している。目標電位６は、内部電位ｉｖｄｄ３が安定した時の上述した初期状態の電位を示し、かつ、基準電位Ｂとして設定される。【０２４１】
電圧センサ５３０は、基準電位Ａと、基準電位Ｂと、基準電位Ｃとを用いて検知した内部電位状態を示す内部電位モニタデータを制約発動部６４０へ供給する。【０２４２】
図２８は、電圧センサ５３０で検知される内部電位状態と制約発動部６４０へ供給される内部電位モニタデータの対応を示す図である。図２８において、内部電位モニタデータは０又は１の信号ａ、ｂ及びｃで構成される。【０２４３】
図２７に示す内部電位ｉｖｄｄ  ３が基準電位Ａ以上となる超高電位である場合、内部電位モニタデータは「１１１」（信号ａ、ｂ及びｃの全てが「１」）を示す。内部電位ｉｖｄｄ  ３が基準電位Ａに満たないが基準電位Ｂ以上となる高電位である場合、内部電位モニタデータは「０１１」（信号ａが「０」かつ信号ｂ及びｃが「１」）を示す。内部電位ｉｖｄｄ  ３が基準電位Ａ及びＢに満たないが基準電位Ｃ以上となる低電位である場合、内部電位モニタデータは「００１」（信号ａ及びｂが「０」かつ信号ｃが「１」）を示す。そして、内部電位ｉｖｄｄ  ３が基準電位Ａ、基準電位Ｂおよび基準電位Ｃのいずれにも満たない超低電位である場合、内部電位モニタデータは「０００」（信号ａ、ｂ及びｃの全てが「０」）を示す。【０２４４】
制約発動部６４０は、内部電位モニタデータの遷移によって電位変動を把握し、その電位変動に基づいて制約発動期間、ＯＮ化許可期間、及びＯＦＦ化許可期間を決定する。【０２４５】
図２９は、バンドギャップリファレンスを用いた電圧センサ５３０の回路構成を示す図である。図２９に示す電圧センサ５３０は、バンドギャップリファレンス（ＶＧＢ）部３１と、内部電位判定部３３とを有する。【０２４６】
ＶＧＢ部３１は、高精度なＶＢＧ電位を生成して内部電位判定部３３へと供給する。ＶＢＧ電位は、基準電位Ａより高い電位を示す。【０２４７】
内部電位判定部３３は、オペアンプ３４と、抵抗３５ａと、抵抗３５ｂと、抵抗３５ｃと、抵抗３５ｄと、コンパレータ３６ａと、コンパレータ３６ｂと、コンパレータ３６ｃとを有する。コンパレータ３６ａから３６ｃは、Ａ／Ｄ変換して比較結果を出力するコンパレータである。【０２４８】
ＶＧＢ部３１で生成されたＶＢＧ電位は、オペアンプ３４に印加され、抵抗３５ａによって基準電位Ａとなり、抵抗３５ｂによって基準電位Ｂとなり、抵抗３５ｃによって基準電位Ｃとなり、抵抗３５ｄによって低電位されたのち接地される。基準電位Ａはコンパレータ３５ａに印加され、基準電位Ｂはコンパレータ３５ｂに印加され、基準電位Ｃはコンパレータ３５ｃに印加される。【０２４９】
コンパレータ３５ａは、内部電位ｉｖｄｄと基準電位Ａとを比較した結果を信号ａとして出力する。内部電位ｉｖｄｄが基準電位Ａ以上となる場合に信号ａは０を示し、内部電位ｉｖｄｄが基準電位Ａ未満となる場合に信号ａは１を示す。【０２５０】
コンパレータ３５ｂは、内部電位ｉｖｄｄと基準電位Ｂとを比較した結果を信号ｂとして出力する。内部電位ｉｖｄｄが基準電位Ｂ以上となる場合に信号ｂは０を示し、内部電位ｉｖｄｄが基準電位Ａ未満となる場合に信号ｂは１を示す。【０２５１】
コンパレータ３５ｃは、内部電位ｉｖｄｄと基準電位Ｃとを比較した結果を信号ｃとして出力する。内部電位ｉｖｄｄが基準電位Ｃ以上となる場合に信号ａは０を示し、内部電位ｉｖｄｄが基準電位Ｃ未満となる場合に信号ｃは１を示す。【０２５２】
電圧センサ５３０の他の回路構成について図３０及び図３１で示す。図３０は、論理回路を用いた電圧センサ５３２の回路構成を示す図である。図３０に示す電圧センサ５３２は、基準電位Ａを閾値とするＮＯＴ回路３７ａと、基準電位Ｂを閾値とするＮＯＴ回路３７ｂと、基準電位Ｃを閾値とするＮＯＴ回路３７ｃと、信号ａを出力するＮＯＴ回路３８ａと、信号ｂを出力するＮＯＴ回路３８ｂと、信号ｃを出力するＮＯＴ回路３８ｃとを有する。【０２５３】
ＮＯＴ回路３７ａは、入力された内部電位ｉｖｄｄに対して基準電位Ａの閾値でＮＯＴ演算を行って、その演算結果をＮＯＴ回路３８ａへ出力する。ＮＯＴ回路３８ａが更にＮＯＴ演算することによって信号ａを出力する。【０２５４】
ＮＯＴ回路３７ｂは、入力された内部電位ｉｖｄｄに対して基準電位Ｂの閾値でＮＯＴ演算を行って、その演算結果をＮＯＴ回路３８ｂへ出力する。ＮＯＴ回路３８ｂが更にＮＯＴ演算することによって信号ｂを出力する。【０２５５】
ＮＯＴ回路３７ｃは、入力された内部電位ｉｖｄｄに対して基準電位Ｃの閾値でＮＯＴ演算を行って、その演算結果をＮＯＴ回路３８ｃへ出力する。ＮＯＴ回路３８ｃが更にＮＯＴ演算することによって信号ｃを出力する。【０２５６】
このような回路構成によって、電圧センサ５３２は、信号ａ、ｂ及びｃによる内部電位モニタデータを制約発動部６４０へ供給する。【０２５７】
図３１は、コンパレータを用いた電圧センサ５３４の回路構成を示す図である。図３１に示す電圧センサ５３４は、コンパレータ３９ａと、コンパレータ３９ｂと、コンパレータ３９ｃとを有する。コンパレータ３９ａと、コンパレータ３９ｂと、コンパレータ３９ｃとは、Ａ／Ｄ変換を行なうコンパレータである。【０２５８】
電圧センサ５３４は、図２９に示す電圧センサ５３０と異なり、ＶＧＢ部３１を備えない回路構成となっており、基準電位Ａから基準電位Ｃは外部から夫々コンパレータ３９ａから３９ｃへと印加される。【０２５９】
そして、コンパレータ３９ａ、３９ｂ及び３９ｃの夫々が、内部電位ｉｖｄｄと比較した結果を信号ａ、ｂ及びｃとして出力する。【０２６０】
このような回路構成によって、電圧センサ５３４は、信号ａ、ｂ及びｃによる内部電位モニタデータを制約発動部６４０へ供給する。【０２６１】
データ遷移検知部５１５の制約発動部６４０の動作例について図３２及び図３３で説明する。図３２は、機能ブロック＿０  ５０から機能ブロック＿３  ５３の１つが停止状態から動作開始した場合の制約発動部６４０の動作を示す図である。【０２６２】
図３２において、変動波形７２ａは、機能ブロック＿０  ５０から機能ブロック＿３  ５３の１つが停止状態から動作開始したことによるＬＳＩ５００の内部電源電位ｉｖｄｄの変動波形を示す（図３２（ａ））。【０２６３】
制約発動期間信号ｇａｔｅ＿ｆは、初期状態を示す凡そ基準電位Ｂからの変動波形７２ａの下がり波形ｆ１によるデータ遷移から、変動波形７２ａの下がり波形ｆ４によるデータ遷移までを制約発動期間として示す（図３２（ｄ））。初期状態からの変動波形７２ａの下がり波形ｆ１にて内部電位モニタデータが「０００」になると、制約発動期間信号ｇａｔｅ＿ｆは、ＯＮからＯＦＦへと切り替わり制約発動期間を開始する。その後、変動波形７２ａの下がり波形ｆ４にて内部電位モニタデータが「００１」になると、制約発動期間信号ｇａｔｅ＿ｆは、ＯＦＦからＯＮへと切り替わり制約発動期間を終了する。【０２６４】
ＯＮ化許可期間信号ｏｎ＿ｆｅは、制約発動期間において、変動波形７２ａの上がり波形ｒ１、ｒ２及びｒ３でのデータ遷移でＯＮとなりＯＮ化を許可し、上がり波形ｒ１、ｒ２及びｒ３以外においてＯＦＦとなりＯＮ化を禁止する（図３２（ｂ））。変動波形７２ａの上がり波形ｒ１、ｒ２及びｒ３の夫々において、内部電位モニタデータが「００１」になると、ＯＮ化許可期間信号ｏｎ＿ｆｅはＯＦＦからＯＮへと切り替わりＯＮ化許可期間を開始し、内部電位モニタデータが「１１１」になると、ＯＮ化許可期間信号ｏｎ＿ｆｅはＯＮからＯＦＦへと切り替わりＯＮ化許可期間を終了する。【０２６５】
ＯＦＦ化許可期間信号ｏｆｆ＿ｆｅは、制約発動期間において、変動波形７２ａの下がり波形ｆ２及びｆ３でのデータ遷移でＯＮとなりＯＦＦ化を許可し、下がり波形ｆ２及びｆ３以外においてＯＦＦとなりＯＦＦ化を禁止する（図３２（ｃ））。変動波形７２ａの下がり波形ｆ２及びｆ３の夫々において、内部電位モニタデータが「０１１」になると、ＯＦＦ化許可期間信号ｏｆｆ＿ｆｅはＯＦＦからＯＮへと切り替わりＯＦＦ化許可期間を開始し、内部電位モニタデータが「０００」になると、ＯＦＦ化許可期間信号ｏｆｆ＿ｆｅはＯＮからＯＦＦへと切り替わりＯＦＦ化許可期間を終了する。【０２６６】
このように、内部電位モニタデータを用いて制約発動期間、ＯＮ化許可期間及びＯＦＦ化許可期間が決定されるため、タイマー制御によって共振周期Ｔｒｅｓを固定にすることなく、実際の電源電位ｉｖｄｄの変動に応じてＯＮ化するタイミング及びＯＦＦ化するタイミングが調整される。【０２６７】
また、ＰＭＵ５２０から要求される２以上の機能ブロックに対するＯＮ化要求に対して順次動作状態とするクロック有効化シーケンスでは、制約動作期間において、実際の立ち下がり波形で始まる内部電源電位ｉｖｄｄの変動に応じて、内部電源電位ｉｖｄｄがキャンセルされるように、Ｎを奇数とするＮ／２の共振周期Ｔｒｅｓとなる時点を含む時間帯でＯＮ化許可期間となり、また、Ｍを整数とするＭ倍の共振周期Ｔｒｅｓとなる時点を含む時間帯でＯＮ化禁止期間となる。【０２６８】
最初のＯＮ化によって内部電源電位ｉｖｄｄが立ち下がり波形で大きく変動開始し、データ遷移検知部５１５が、電圧センサ５３０から供給される内部電位モニタデータに基づいて基準電位Ｃを横切った瞬間を検知して、次のＯＮ化に対する制約が発動し、ＯＮ化許可期間とＯＮ化禁止期間の時間帯を交互に作り出し、十分な時間が経過すると制約を解除する。【０２６９】
また、クロック有効化シーケンスにおいて、制約発動後のＯＦＦ化によって立ち上がり波形で変動開始する内部電源電位ｉｖｄｄがキャンセルされるように、Ｍを整数とするＭ倍の共振周期Ｔｒｅｓとなる時点を含む時間帯でＯＦＦ化許可期間となり、Ｎを奇数とするＮ／２の共振周期Ｔｒｅｓとなる時点を含む時間帯でＯＦＦ化禁止期間となる。【０２７０】
図３３は、機能ブロック＿０  ５０から機能ブロック＿３  ５３の１つが動作状態から動作停止した場合の制約発動部６４０の動作を示す図である。【０２７１】
図３３において、変動波形７３ａは、機能ブロック＿０  ５０から機能ブロック＿３  ５３の１つが動作状態から動作停止したことによるＬＳＩ５００の内部電源電位ｉｖｄｄの変動波形を示す（図３３（ａ））。【０２７２】
制約発動期間信号ｇａｔｅ＿ｆは、初期状態を示す凡そ基準電位Ｂからの変動波形７３ａの上がり波形ｒ２１によるデータ遷移から、変動波形７３ａの上がり波形ｒ２４によるデータ遷移までを制約発動期間として示す（図３３（ｄ））。初期状態からの変動波形７３ａの上がり波形ｒ２１にて内部電位モニタデータが「１１１」になると、制約発動期間信号ｇａｔｅ＿ｆは、ＯＮからＯＦＦへと切り替わり制約発動期間を開始する。その後、変動波形７３ａの上がり波形ｒ２４にて内部電位モニタデータが「０１１」になると、制約発動期間信号ｇａｔｅ＿ｆは、ＯＦＦからＯＮへと切り替わり制約発動期間を終了する。【０２７３】
ＯＮ化許可期間信号ｏｎ＿ｆｅは、制約発動期間において、変動波形７３ａの上がり波形ｒ２２及びｒ２３でのデータ遷移でＯＮとなりＯＮ化を許可し、上がり波形ｒ２２及びｒ２３以外においてＯＦＦとなりＯＮ化を禁止する（図３３（ｂ））。変動波形７３ａの上がり波形ｒ２２及びｒ２３の夫々において、内部電位モニタデータが「００１」になると、ＯＮ化許可期間信号ｏｎ＿ｆｅはＯＦＦからＯＮへと切り替わりＯＮ化許可期間を開始し、内部電位モニタデータが「１１１」になると、ＯＮ化許可期間信号ｏｎ＿ｆｅはＯＮからＯＦＦへと切り替わりＯＮ化許可期間を終了する。【０２７４】
ＯＦＦ化許可期間信号ｏｆｆ＿ｆｅは、制約発動期間において、変動波形７３ａの下がり波形ｆ２１及びｆ２２でのデータ遷移でＯＮとなりＯＦＦ化を許可し、下がり波形ｆ２１及びｆ２２以外においてＯＦＦとなりＯＦＦ化を禁止する（図３３（ｃ））。変動波形７３ａの下がり波形ｆ２１及びｆ２２の夫々において、内部電位モニタデータが「０１１」になると、ＯＦＦ化許可期間信号ｏｆｆ＿ｆｅはＯＦＦからＯＮへと切り替わりＯＦＦ化許可期間を開始し、内部電位モニタデータが「０００」になると、ＯＦＦ化許可期間信号ｏｆｆ＿ｆｅはＯＮからＯＦＦへと切り替わりＯＦＦ化許可期間を終了する。【０２７５】
このように、内部電位モニタデータを用いて制約発動期間、ＯＮ化許可期間及びＯＦＦ化許可期間が決定されるため、タイマー制御によって共振周期Ｔｒｅｓを固定にすることなく、実際の電源電位ｉｖｄｄの変動に応じてＯＮ化するタイミング及びＯＦＦ化するタイミングが調整される。【０２７６】
また、ＰＭＵ５２０から要求される２以上の機能ブロックに対するＯＦＦ化要求に対して順次停止状態とするクロック無効化シーケンスでは、制約動作期間において、実際の立ち下がり波形で始まる内部電源電位ｉｖｄｄの変動に応じて、内部電源電位ｉｖｄｄがキャンセルされるように、Ｎを奇数とするＮ／２の共振周期Ｔｒｅｓとなる時点を含む時間帯でＯＦＦ化許可期間となり、また、Ｍを整数とするＭ倍の共振周期Ｔｒｅｓとなる時点を含む時間帯でＯＦＦ化禁止期間となる。【０２７７】
最初のＯＦＦ化によって内部電源電位ｉｖｄｄが立ち上がり波形で大きく変動開始し、データ遷移検知部５１５が、電圧センサ５３０から供給される内部電位モニタデータに基づいて基準電位Ａを横切った瞬間を検知して、次のＯＦＦ化に対する制約が発動し、ＯＦＦ化許可期間とＯＦＦ化禁止期間の時間帯を交互に作り出し、十分な時間が経過すると制約を解除する。【０２７８】
また、クロック無効化シーケンスにおいて、制約発動後のＯＮ化によって立ち下がり波形で変動開始する内部電源電位ｉｖｄｄがキャンセルされるように、Ｍを整数とするＭ倍の共振周期Ｔｒｅｓとなる時点を含む時間帯でＯＮ化許可期間となり、Ｎを奇数とするＮ／２の共振周期Ｔｒｅｓとなる時点を含む時間帯でＯＮ化禁止期間となる。【０２７９】
機能ブロック＿０  ５０から機能ブロック＿３  ５３の全てをＯＮ化する場合を例として、クロック有効化シーケンスについて図３４及び図３５で説明する。図３４及び図３５中、機能ブロック＿０  ５０から機能ブロック＿３  ５３の順にＯＮ化するものとする。【０２８０】
図３４は、クロック有効化シーケンスのＯＮ化許可期間を説明するための図である。図３４において、機能ブロック＿０  ５０から機能ブロック＿３  ５３の順に全てをＯＮ化する場合、機能ブロック＿０  ５０がＯＮ化される時、及び、機能ブロック＿２  ５２がＯＮ化される時に、ＬＳＩ５００の内部電源電位ｉｖｄｄに変動波形７２ａが発生し（図３４（ａ））、ＯＮ化許可期間信号ｏｎ＿ｆｅによって示されるＯＮ化許可期間（図３４（ｂ））のいずれかで、機能ブロック＿０  ５０がＯＮ化後には機能ブロック＿１  ５１がＯＮ化され、機能ブロック＿２  ５２がＯＮ化後には機能ブロック＿３  ５３がＯＮ化される。【０２８１】
この場合、機能ブロック＿０  ５０がＯＮ化後には機能ブロック＿１  ５１がＯＮ化されると、互いの共振周期によって電源電位ｉｖｄｄの変動がキャンセルされ初期状態となる。【０２８２】
制約発動期間において、上がり波形での基準電位Ｃの検出によって約１／２の共振周期Ｔｒｅｓ後に最初のＯＮ化許可期間が開始され、次の機能ブロック＿１  ５１又は機能ブロック＿３  ５３がＯＮ化されない場合は、その開始からＯＮ化禁止期間を経て、再度上がり波形での基準電位Ｃの検出によって約１共振周期Ｔｒｅｓ後に次のＯＮ化許可期間が開始される。【０２８３】
内部電位モニタデータを用いて決定された制約発動期間及びＯＮ化許可期間に従って、実際の電源電位ｉｖｄｄの変動に応じて調整されたＯＮ化されるタイミングにて、クロック有効化シーケンスが実行される。【０２８４】
図３５は、クロック有効化シーケンスによるＯＮ化制御の例を示す図である。図３５において、機能ブロック＿０  ５０から機能ブロック＿３  ５３の全てを順にＯＮ化する場合、ＳＴＥＰ１からＳＴＥＰ５までのクロック有効化シーケンスが実行される（図３５（ａ））。【０２８５】
クロック有効化シーケンスに従って順次ＯＮ化されることによって、機能ブロック＿０  ５０の内部電位変動８１ａと、機能ブロック＿１  ５１の内部電位変動８１ｂと、機能ブロック＿２  ５２の内部電位変動８１ｃと、機能ブロック＿３  ５３の内部電位変動８１ｄとが発生する（図３５（ｂ））。【０２８６】
内部電位変動８１ａから８１ｄとが干渉し合って合成内部電位変動８１ｅが形成される（図３５（ｃ））。【０２８７】
その合成内部電位変動８１ｅでは、機能ブロック＿０  ５０のＯＮ化直後から約１／２の共振周期Ｔｒｅｓの間に機能ブロック＿０  ５０のＯＮ化による内部電位変動８１ａ'（内部電位変動８１ａの一部）を示し、その後、機能ブロック＿２  ５２のＯＮ化直後から約１／２の共振周期Ｔｒｅｓの間に機能ブロック＿２  ５２のＯＮ化による内部電位変動８１ｃ'（内部電位変動８１ｃの一部）を示す。【０２８８】
しかしながら、合成内部電位変動８１ｅは以後急速に収まり一定の電位を保った状態となる。また、合成内部電位変動８１ｅは、２度大きく変動するが、２つの内部電位変動８１ａ'と内部電位変動８１ｃ'とが重なることはない。【０２８９】
機能ブロック＿０  ５０のＯＮ化と機能ブロック＿１  ５１のＯＮ化とによって内部電位変動８１ａ及び８１ｂとがほぼキャンセルされる期間は、機能ブロック＿０  ５０のＯＮ化から約１／２の共振周期Ｔｒｅｓ後の機能ブロック＿１  ５１のＯＮ化以降である。【０２９０】
また、機能ブロック＿２  ５２のＯＮ化と機能ブロック＿３  ５３のＯＮ化とによって内部電位変動８１ｃ及び８１ｄとがほぼキャンセルされる期間は、機能ブロック＿２  ５２のＯＮ化から約１／２の共振周期Ｔｒｅｓ後の機能ブロック＿３  ５３のＯＮ化以降である。【０２９１】
この時のＯＮ／ＯＦＦ切換制御回路５１０のデータ遷移検知部５１５の状態遷移は、初期状態から機能ブロック＿０  ５０のＯＮ化により約１／２の共振周期Ｔｒｅｓの間で制約発動状態となり、その間のＯＮ化許可期間で機能ブロック＿１  ５１のＯＮ化により初期状態へと戻り、再び、機能ブロック＿２  ５２のＯＮ化により約１／２の共振周期Ｔｒｅｓの間で制約発動状態となり、その間のＯＮ化許可期間で機能ブロック＿３  ５３のＯＮ化により初期状態へと戻る（図３５（ｄ））。【０２９２】
クロック有効化シーケンスの場合、基準電位Ｃの設定によって約１／２の共振周期Ｔｒｅｓの間で制約発動状態となる。【０２９３】
このように、４つの機能ブロック＿０  ５０から機能ブロック＿３  ５３に状態遷移があったものの、ＬＳＩ５００に与える合成内部電位変動８１ｅは、機能ブロック＿０  ５０のＯＮ化による内部電位変動８１ａ'（内部電位変動８１ａの一部）と機能ブロック＿２  ５２のＯＮ化による内部電位変動８１ｃ'（内部電位変動８１ｃの一部）のみであり、かつ、夫々約１／２の共振周期Ｔｒｅｓの間のみに発生する。【０２９４】
図３６は、クロック無効化シーケンスのＯＮ化許可期間を説明するための図である。図３６において、機能ブロック＿０  ５０から機能ブロック＿３  ５３の順に全てをＯＦＦ化する場合、機能ブロック＿０  ５０がＯＦＦ化される時、及び、機能ブロック＿２  ５２がＯＦＦ化される時に、ＬＳＩ５００の内部電源電位ｉｖｄｄに変動波形７３ａが発生し（図３６（ａ））、ＯＦＦ化許可期間信号ｏｆｆ＿ｆｅによって示されるＯＦＦ化許可期間（図３６（ｂ））のいずれかで、機能ブロック＿０  ５０がＯＦＦ化後には機能ブロック＿１  ５１がＯＦＦ化され、機能ブロック＿２  ５２がＯＦＦ化後には機能ブロック＿３  ５３がＯＦＦ化される。【０２９５】
この場合、機能ブロック＿０  ５０がＯＦＦ化後には機能ブロック＿１  ５１がＯＦＦ化されると、互いの共振周期によって電源電位ｉｖｄｄの変動がキャンセルされ初期状態となる。【０２９６】
制約発動期間において、下がり波形での基準電位Ａの検出によって約１／２の共振周期Ｔｒｅｓ後に最初のＯＦＦ化許可期間が開始され、次の機能ブロック＿１  ５１又は機能ブロック＿３  ５３がＯＦＦ化されない場合は、その開始からＯＦＦ化禁止期間を経て、再度下がり波形での基準電位Ａの検出によって約１共振周期Ｔｒｅｓ後に次のＯＦＦ化許可期間が開始される。【０２９７】
内部電位モニタデータを用いて決定された制約発動期間及びＯＦＦ化許可期間に従って、実際の電源電位ｉｖｄｄの変動に応じて調整されたＯＦＦ化されるタイミングにて、クロック無効化シーケンスが実行される。【０２９８】
クロック無効化シーケンスによるＯＦＦ化制御は、図３５に示すクロック有効化シーケンスによるＯＮ化制御に同様であるので、その説明を省略する。ただし、クロック無効化シーケンスの場合、基準電位Ａの設定によって約１／２の共振周期Ｔｒｅｓの間で制約発動状態となる。【０２９９】
上述より、たとえ内部回路５０１にＯＮ化及びＯＦＦ化が連続して発生したとしても、合成内部電位変動８１ｅ（即ち、ＬＳＩ５００の内部電源電位ｉｖｄｄ）は、１つの機能ブロックの状態遷移による電位変動量を超えることはない。【０３００】
したがって、図２２に示すような４つの機能ブロック＿０  ５０から機能ブロック＿３  ５３が配列されるＬＳＩ５００の場合、従来のＬＳＩと比較すると、電位変動量を凡そ４分の１に抑制することができる。また、このような電位変動量の抑制によって、ＬＳＩの性能を劣化させることはない。【０３０１】
また、第二実施例では、実際の電位変動を検知してＯＮ化のタイミング及びＯＦＦ化のタイミングを調整することができる。従って、タイマー制御を用いない実際の電位変動を検知して制御するイベント・ドリブン型であり、プログラム的に共振周期Ｔｒｅｓの設定をしなくても良い。【０３０２】
更に、本発明は、内部回路５０１内に４つの機能ブロックが配列されるＬＳＩ５００に限定されるものではなく、４以上の機能ブロックが配列されるＬＳＩにも適応可能である。【０３０３】
本発明は、具体的に開示された実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。【０３０４】
本国際出願は、２００６年３月１６日に出願した国際出願ＰＣＴ／ＪＰ２００６／３０５２１２号に基づく優先権を主張するものであり、ＰＣＴ／ＪＰ２００６／３０５２１２号の全内容を本国際出願に援用する。
【図１】
2007108383.tif 000003
【図２】
2007108383.tif 000004
【図３】
2007108383.tif 000005
【図４】
2007108383.tif 000006
【図５】
2007108383.tif 000007
【図６】
2007108383.tif 000008
【図７】
2007108383.tif 000009
【図８】
2007108383.tif 000010
【図９】
2007108383.tif 000011
【図１０】
2007108383.tif 000012
【図１１】
2007108383.tif 000013
【図１２】
2007108383.tif 000014
【図１３】
2007108383.tif 000015
【図１４】
2007108383.tif 000016
【図１５】
2007108383.tif 000017
【図１６】
2007108383.tif 000018
【図１７】
2007108383.tif 000019
【図１８】
2007108383.tif 000020
【図１９】
2007108383.tif 000021
【図２０】
2007108383.tif 000022
【図２１】
2007108383.tif 000023
【図２２】
2007108383.tif 000024
【図２３】
2007108383.tif 000025
【図２４】
2007108383.tif 000026
【図２５】
2007108383.tif 000027
【図２６】
2007108383.tif 000028
【図２７】
2007108383.tif 000029
【図２８】
2007108383.tif 000030
【図２９】
2007108383.tif 000031
【図３０】
2007108383.tif 000032
【図３１】
2007108383.tif 000033
【図３２】
2007108383.tif 000034
【図３３】
2007108383.tif 000035
【図３４】
2007108383.tif 000036
【図３５】
2007108383.tif 000037
【図３６】
2007108383.tif 000038
【手続補正書】
【提出日】平成20年9月12日(2008.9.12)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
互いに独立して所定処理を行う複数の回路と、
前記複数の回路の動作開始又は動作停止によって発生する電源電位変動が互いに干渉し合うように該動作開始又は該動作停止のタイミングを順次変更して制御する回路動作制御部とを有することを特徴とする半導体装置。
【請求項２】
前記各複数の回路は、動作イネーブル端子を備え、
前記回路動作制御部は、
前記複数の回路の前記動作イネーブル端子の信号状態を制御することによって、該複数の回路の各々の動作可能状態を制御する第一コントローラと、
前記第一コントローラから前記複数の回路に対する動作可能要求及び／又は動作不可要求を受信すると、電源電位の共振周期に基づいて動作可能及び／又は動作不可の実行タイミングを調整して、前記第一コントローラへ承認指示を行う調整回路とを有することを特徴とする請求項１記載の半導体装置。
【請求項３】
前記電源の共振周期は、１周期分のシステムクロック数であることを特徴とする請求項２記載の半導体装置。
【請求項４】
前記調整回路は、前記電源の共振周期をプログラマブルに設定可能であることを特徴とする請求項２記載の半導体装置。
【請求項５】
前記調整回路は、初期状態と、前記イネーブル端子の１つのＯＦＦ状態からＯＮ状態へのＯＮ移行によって発動する第一の制約発動状態と、前記イネーブル端子の１つのＯＮ状態からＯＦＦ状態へのＯＦＦ移行によって発動する第二の制約発動状態の３状態を有することを特徴とする請求項２記載の半導体装置。
【請求項６】
前記調整回路は、初期状態において、前記第一コントローラから受信した前記動作可能要求の数と前記動作不可要求の数とが同数である場合、該動作可能要求と該動作不可要求との全てに対して前記承諾指示を該第一コントローラへ送信し、該初期状態を維持することを特徴とする請求項５記載の半導体装置。
【請求項７】
前記複数の回路は１つの内部回路に備えられ、
前記回路動作制御手段は、
前記内部回路の電源電位を測定する電圧センサと、
前記電圧センサから供給される前記電源電位の測定結果を示す測定データの遷移を検知し、その検知結果に基づいて前記複数の回路の前記動作開始又は前記動作停止のタイミングを決定するデータ遷移検知部とを有することを特徴とする請求項１記載の半導体装置。
【請求項８】
前記データ遷移検知部は、前記測定データから前記電源電位変動の共振周期を検知することを特徴とする請求項７記載の半導体装置。
【請求項９】
前記データ遷移検知部は、前記動作開始又は前記動作停止の開始を検知すると、前記電源電位変動が共振周期の干渉によってキャンセルされる前記測定データの遷移期間で、次の動作開始又は次の動作停止を許可することを特徴とする請求項７記載の半導体装置。
【請求項１０】
互いに独立して所定処理を行う複数の回路を備えた半導体装置に搭載され、該複数の回路を動作可能又は動作不可とするタイミングを調整する調整回路であって、
前記複数の回路に対する２つ以上の動作可能要求及び／又は動作不可要求に対して、内部電源電圧の共振周期に基づいて電源電圧変動が互いに干渉し合うように前記タイミングを調整することを特徴とする調整回路。
【国際調査報告】
2007108383.tif 000039
2007108383.tif 000040