(57)【要約】【課題】周辺の回路ブロックの動作に与える影響を抑制しつつ、パワーゲーティングによって回路ブロックが動作状態に移行できるようになるまでの時間を短くする。【解決手段】タイミング制御部１３は、回路ブロックＢ１の動作中に回路ブロックＢ２が待機状態から動作状態へ移行するように指示された場合、スイッチング素子Ｔ１−１〜Ｔ１−ｎがオンしないように制御し、回路ブロックＢ１の停止中に回路ブロックＢ２が待機状態から動作状態へ移行するように指示された場合、スイッチング素子Ｔ１−１〜Ｔ１−ｎがオンするように制御する。【選択図】      図１
2010081068.tif 000002
【特許請求の範囲】
【請求項１】
複数の回路ブロックと、
前記回路ブロックに電力を供給する電源線と、
前記電源線と前記回路ブロックとの間の通電および遮断を行うスイッチング素子と、
前記スイッチング素子のスイッチング制御を行うスイッチング制御部と、
互いに隣接する回路ブロックの稼働状況に基づいて、前記スイッチング素子が遮断状態から導通状態に移行するタイミングを制御するタイミング制御部とを備えることを特徴とする半導体集積回路。
【請求項２】
前記タイミング制御部は、現在動作中の第１の回路ブロックに隣接する第２の回路ブロックが待機状態から動作状態へ移行するように指示された場合、前記第１の回路ブロック側では、前記第２の回路ブロックと前記電源線との間の通電が行われないように、前記スイッチング素子の導通のタイミングを制御することを特徴とする請求項１に記載の半導体集積回路。
【請求項３】
前記タイミング制御部は、前記第２の回路ブロックに隣接する第３の回路ブロックが停止中の場合、前記第３の回路ブロック側では、前記第２の回路ブロックと前記電源線との間の通電が行われるように、前記スイッチング素子の導通のタイミングを制御し、
前記第３の回路ブロック側において、前記第２の回路ブロックと前記電源線との間の通電が行われた後に、前記第１の回路ブロック側において、前記第２の回路ブロックと前記電源線との間の通電が行われるように、前記スイッチング素子の導通のタイミングを制御することを特徴とする請求項２に記載の半導体集積回路。
【請求項４】
前記第２の回路ブロックと前記電源線との間の通電を指示する制御信号を遅延させる遅延回路と、
前記第１および第３の回路ブロックの稼働状況に基づいて、遅延前または遅延後の制御信号を選択するセレクタとを備えることを特徴とする請求項３に記載の半導体集積回路。
【請求項５】
前記回路ブロックの動作状況を一覧形式で表現したパワーステートテーブルを備え、
前記タイミング制御部は、前記パワーステートテーブルの参照結果に基づいて、前記スイッチング素子の導通のタイミングを制御することを特徴とする請求項１から４のいずれか１項に記載の半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は半導体集積回路に関し、特に、リーク電流を低減させるスイッチセルが電源線に挿入されたＭＴ（Ｍｕｌｔｉ  Ｔｈｒｅｓｈｏｌｄ）−ＣＭＯＳ回路に適用して好適なものである。
【背景技術】
【０００２】
半導体集積回路では、パワーゲーティングという手法を用いることで、半導体集積回路を構成する論理素子のリーク電流を低減させる方法がある。このパワーゲーティングという手法では、論理素子に電源を供給する電源線にスイッチセルが挿入される。また、しきい値の低いトランジスタにて論理素子が構成されるとともに、しきい値の高いトランジスタにてスイッチセルが構成される。そして、論理素子の動作時には、スイッチセルがオンされ、論理素子が高速に動作されるとともに、論理素子の待機時には、スイッチセルがオフされ、論理素子のリーク電流が低減される。
【０００３】
また、例えば、非特許文献１には、複数のスイッチセルをオンさせるタイミングをスイッチセル間でずらし、スイッチセルを順々にオンさせる方法が開示されている。
【０００４】
また、例えば、非特許文献２には、スイッチセルのゲート電圧を徐々に増加させることで、スイッチセルをゆっくりオンさせ、スイッチセルがオンした時に発生する瞬時電流量を減少させる方法が開示されている。
【０００５】
しかしながら、従来のパワーゲーティングでは、スイッチセルがオフされると、論理素子がグランドと切り離され、論理素子の配線容量や寄生容量に電荷が蓄積されたままの状態になる。このため、スイッチセルがオンすると、これらの電荷がグランドに向かって一斉に流れ出し、グランド線に定常状態時よりも大きな電圧降下が発生することから、その周辺の動作中の回路ブロックの動作速度が低下するという問題があった。
【０００６】
また、非特許文献１、２に開示された方法では、全てのスイッチセルが完全にオンするまでに時間がかかるようになり、それらのスイッチセルに接続された回路ブロックが動作状態に移行するのが遅れるという問題があった。
【０００７】
【非特許文献１】Ｐ．Ｒｏｙａｎｎｅｚ，  ｅｔ  ａｌ．，“９０ｎｍ  Ｌｏｗ  Ｌｅａｋａｇｅ  ＳｏＣ  Ｄｅｓｉｇｎ  Ｔｅｃｈｎｉｑｕｅｓ  ｆｏｒ  Ｗｉｒｅｌｅｓｓ  Ａｐｐｌｉｃａｔｉｏｎｓ”，ＩＥＥＥ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｓｏｌｉｄ−Ｓｔａｔｅ  Ｃｉｒｃｕｉｔｓ  Ｃｏｎｆｅｒｅｎｃｅ  Ｄｉｇｅｓｔ  ｏｆ  Ｔｅｃｈｎｉｃａｌ  Ｐａｐｅｒｓ，ｐｐ．１３８−１３９，Ｆｅｂ．２００５．
【非特許文献２】Ｔ．  Ｈａｔｔｏｒｉ，  ｅｔ  ａｌ．，“Ａ  Ｐｏｗｅｒ  Ｍａｎａｇｅｍｅｎｔ  Ｓｃｈｅｍｅ  Ｃｏｎｔｒｏｌｌｉｎｇ  ２０  Ｐｏｗｅｒ  Ｄｏｍａｉｎｓ  ｆｏｒ  ａ  Ｓｉｎｇｌｅ−Ｃｈｉｐ  Ｍｏｂｉｌｅ  Ｐｒｏｃｅｓｓｏｒ”，ＩＥＥＥ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｓｏｌｉｄ−Ｓｔａｔｅ  Ｃｉｒｃｕｉｔｓ  Ｃｏｎｆｅｒｅｎｃｅ  Ｄｉｇｅｓｔ  ｏｆ  Ｔｅｃｈｎｉｃａｌ  Ｐａｐｅｒｓ，ｐｐ．５４２−５４３，Ｆｅｂ．２００６．
【発明の開示】
【発明が解決しようとする課題】
【０００８】
そこで、本発明の目的は、周辺の回路ブロックの動作に与える影響を抑制しつつ、パワーゲーティングによって回路ブロックが動作状態に移行できるようになるまでの時間を短くすることが可能な半導体集積回路を提供することである。
【課題を解決するための手段】
【０００９】
上述した課題を解決するために、本発明の一態様によれば、複数の回路ブロックと、前記回路ブロックに電力を供給する電源線と、前記電源線と前記回路ブロックとの間の通電および遮断を行うスイッチング素子と、前記スイッチング素子のスイッチング制御を行うスイッチング制御部と、互いに隣接する回路ブロックの稼働状況に基づいて、前記スイッチング素子が遮断状態から導通状態に移行するタイミングを制御するタイミング制御部とを備えることを特徴とする半導体集積回路を提供する。
【発明の効果】
【００１０】
以上説明したように、本発明によれば、周辺の回路ブロックの動作に与える影響を抑制しつつ、パワーゲーティングによって回路ブロックが動作状態に移行できるようになるまでの時間を短くすることが可能となる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施形態に係る半導体集積回路について図面を参照しながら説明する。
【００１２】
（第１実施形態）
図１は、本発明の第１実施形態に係る半導体集積回路の概略構成を示すブロック図である。
図１において、半導体集積回路には、回路ブロックＢ１、Ｂ２、Ｂ３が設けられ、回路ブロックＢ１、Ｂ３は、回路ブロックＢ２に隣接して配置されている。なお、回路ブロックＢ１、Ｂ２、Ｂ３は機能ごとに分けることができ、例えば、回路ブロックＢ１には音声処理機能、回路ブロックＢ２には通信処理機能、回路ブロックＢ３には画像処理機能を持たせることができる。
【００１３】
ここで、回路ブロックＢ１には、論理素子Ｇ１−１〜Ｇ１−ｍ（ｍは正の整数）およびスイッチング素子Ｔ１−１〜Ｔ１−ｎ（ｎは正の整数）が設けられている。そして、論理素子Ｇ１−１〜Ｇ１−ｍの高電位電源側は高電位電源線ＤＨに接続され、論理素子Ｇ１−１〜Ｇ１−ｍの低電位電源側は仮想電源線ＤＶ１に接続されている。また、仮想電源線ＤＶ１は、スイッチング素子Ｔ１−１〜Ｔ１−ｎをそれぞれ介して低電位電源線ＤＬに接続されている。
【００１４】
また、回路ブロックＢ２には、論理素子Ｇ２−１〜Ｇ２−ｚ（ｚは正の整数）、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘ（ｘは正の整数）およびスイッチング素子Ｔ２−２−１〜Ｔ２−２−ｙ（ｙは正の整数）が設けられている。ここで、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘは、回路ブロックＢ１側に配置され、スイッチング素子Ｔ２−２−１〜Ｔ２−２−ｙ、回路ブロックＢ３側に配置されている。そして、論理素子Ｇ２−１〜Ｇ２−ｚの高電位電源側は高電位電源線ＤＨに接続され、論理素子Ｇ２−１〜Ｇ２−ｚの低電位電源側は仮想電源線ＤＶ２に接続されている。また、仮想電源線ＤＶ２は、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘ、Ｔ２−２−１〜Ｔ２−２−ｙをそれぞれ介して低電位電源線ＤＬに接続されている。
【００１５】
また、回路ブロックＢ３には、論理素子Ｇ３−１〜Ｇ３−ｋ（ｋは正の整数）およびスイッチング素子Ｔ３−１〜Ｔ３−ｊ（ｊは正の整数）が設けられている。そして、論理素子Ｇ３−１〜Ｇ３−ｋの高電位電源側は高電位電源線ＤＨに接続され、論理素子Ｇ３−１〜Ｇ３−ｋの低電位電源側は仮想電源線ＤＶ３に接続されている。また、仮想電源線ＤＶ３は、スイッチング素子Ｔ３−１〜Ｔ３−ｊをそれぞれ介して低電位電源線ＤＬに接続されている。
【００１６】
なお、論理素子Ｇ１−１〜Ｇ１−ｍ、Ｇ２−１〜Ｇ２−ｚ、Ｇ３−１〜Ｇ３−ｋは、例えば、排他的論理和回路、論理和回路、論理積回路、インバータ、フリップフロップなどを用いることができ、電源の供給を受けて動作する回路ならばどのような回路であってもよい。また、論理素子Ｇ１−１〜Ｇ１−ｍ、Ｇ２−１〜Ｇ２−ｚ、Ｇ３−１〜Ｇ３−ｋは、しきい値の低いトランジスタにて構成することができ、スイッチング素子Ｔ１−１〜Ｔ１−ｎ、Ｔ２−１−１〜Ｔ２−１−ｘ、Ｔ２−２−１〜Ｔ２−２−ｙ、Ｔ３−１〜Ｔ３−ｊは、しきい値の高いトランジスタにて構成することができる。
また、高電位電源線ＤＨは、例えば、正の電源電位に接続することができ、低電位電源線ＤＬは、例えば、グランド電位または負の電源電位に接続することができる。
【００１７】
また、半導体集積回路には、スイッチング制御部１１、パワーステートテーブル１２、タイミング制御部１３、遅延回路１４およびセレクタ１５、１６が設けられている。ここで、スイッチング制御部１１は、スイッチング素子Ｔ１−１〜Ｔ１−ｎ、Ｔ２−１−１〜Ｔ２−１−ｘ、Ｔ２−２−１〜Ｔ２−２−ｙ、Ｔ３−１〜Ｔ３−ｊのスイッチング制御を回路ブロックＢ１、Ｂ２、Ｂ３ごとに行うことができる。具体的には、スイッチング制御部１１は、スイッチング素子Ｔ１−１〜Ｔ１−ｎをオンさせる制御信号ＭＥ１を生成し、スイッチング素子Ｔ１−１〜Ｔ１−ｎのゲートに出力することができる。また、スイッチング制御部１１は、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘ、Ｔ２−２−１〜Ｔ２−２−ｙをオンさせる制御信号ＭＥ２を生成し、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘ、Ｔ２−２−１〜Ｔ２−２−ｙのゲートに出力することができる。また、スイッチング制御部１１は、スイッチング素子Ｔ３−１〜Ｔ３−ｊをオンさせる制御信号ＭＥ３を生成し、スイッチング素子Ｔ３−１〜Ｔ３−ｊのゲートに出力することができる。
パワーステートテーブル１２は、回路ブロックＢ１、Ｂ２、Ｂ３の動作状況を一覧形式で表現することができる。
【００１８】
図２は、図１のパワーステートテーブル１２の構成例を示す図である。
図２において、パワーステートテーブル１２では、回路ブロックＢ１、Ｂ２、Ｂ３がそれぞれオン、オフ、オフの場合、パワーステートがｐ_ｓｔａｔｅ_１に設定され、回路ブロックＢ１、Ｂ２、Ｂ３がそれぞれオン、オン、オフの場合、パワーステートがｐ_ｓｔａｔｅ_２に設定され、回路ブロックＢ１、Ｂ２、Ｂ３がそれぞれオフ、オフ、オンの場合、パワーステートがｐ_ｓｔａｔｅ_３に設定され、回路ブロックＢ１、Ｂ２、Ｂ３がそれぞれオフ、オン、オンの場合、パワーステートがｐ_ｓｔａｔｅ_４に設定されている。
なお、回路ブロックＢ１、Ｂ２、Ｂ３がオンとは、回路ブロックＢ１、Ｂ２、Ｂ３が動作状態にあることを言う。また、回路ブロックＢ１、Ｂ２、Ｂ３がオフとは、回路ブロックＢ１、Ｂ２、Ｂ３が待機状態にあることを言う。
【００１９】
また、図１において、タイミング制御部１３は、互いに隣接する回路ブロックＢ１、Ｂ２、Ｂ３の稼働状況に基づいて、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘ、Ｔ２−２−１〜Ｔ２−２−ｙが遮断状態から導通状態に移行するタイミングを制御することができる。ここで、タイミング制御部１３には、パワーステートテーブル１２にて表現された現在のパワーステートを保持するパワーステート情報保持部１３ａが設けられている。
【００２０】
例えば、タイミング制御部１３は、回路ブロックＢ１の動作中に回路ブロックＢ２が待機状態から動作状態へ移行するように指示された場合、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘがオンしないように制御し、回路ブロックＢ１の停止中に回路ブロックＢ２が待機状態から動作状態へ移行するように指示された場合、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘがオンするように制御することができる。
【００２１】
また、タイミング制御部１３は、回路ブロックＢ３の動作中に回路ブロックＢ２が待機状態から動作状態へ移行するように指示された場合、スイッチング素子Ｔ２−２−１〜Ｔ２−２−ｙがオンしないように制御し、回路ブロックＢ３の停止中に回路ブロックＢ２が待機状態から動作状態へ移行するように指示された場合、スイッチング素子Ｔ２−２−１〜Ｔ２−２−ｙがオンするように制御することができる。
【００２２】
あるいは、タイミング制御部１３は、回路ブロックＢ１の動作中かつ回路ブロックＢ３の停止中に回路ブロックＢ２が待機状態から動作状態へ移行するように指示された場合、スイッチング素子Ｔ２−２−１〜Ｔ２−２−ｙをオンさせてから、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘがオンするように制御することができる。
【００２３】
あるいは、タイミング制御部１３は、回路ブロックＢ１の停止中かつ回路ブロックＢ３の動作中に回路ブロックＢ２が待機状態から動作状態へ移行するように指示された場合、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘをオンさせてから、スイッチング素子Ｔ２−２−１〜Ｔ２−２−ｙがオンするように制御することができる。
【００２４】
あるいは、タイミング制御部１３は、回路ブロックＢ１、Ｂ３の双方が停止中に回路ブロックＢ２が待機状態から動作状態へ移行するように指示された場合、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘ、Ｔ２−２−１〜Ｔ２−２−ｙが同時にオンするように制御することができる。
【００２５】
例えば、タイミング制御部１３は、以下の条件を満たした時に、制御信号ＭＥ２がスイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘのゲートに入力されるように、制御信号ＭＥ２の入力タイミングを制御することができる。
（（ｃｕｒｒｅｎｔ_ｐ_ｓｔａｔｅ＝ｐ_ｓｔａｔｅ_３）ａｎｄ（ｎｅｘｔ_ｐ_ｓｔａｔｅ＝ｐ_ｓｔａｔｅ_４））ｏｒ（ｃｕｒｒｅｎｔ_ｐ_ｓｔａｔｅ＝ｐ_ｓｔａｔｅ_２）ｏｒ（ｃｕｒｒｅｎｔ_ｐ_ｓｔａｔｅ＝ｐ_ｓｔａｔｅ_４）
【００２６】
また、タイミング制御部１３は、以下の条件を満たした時に、制御信号ＭＥ２がスイッチング素子Ｔ２−２−１〜Ｔ２−２−ｙのゲートに入力されるように、制御信号ＭＥ２の入力タイミングを制御することができる。
（（ｃｕｒｒｅｎｔ_ｐ_ｓｔａｔｅ＝ｐ_ｓｔａｔｅ_１）ａｎｄ（ｎｅｘｔ_ｐ_ｓｔａｔｅ＝ｐ_ｓｔａｔｅ_２））ｏｒ（ｃｕｒｒｅｎｔ_ｐ_ｓｔａｔｅ＝ｐ_ｓｔａｔｅ_２）ｏｒ（ｃｕｒｒｅｎｔ_ｐ_ｓｔａｔｅ＝ｐ_ｓｔａｔｅ_４）
ただし、ｃｕｒｒｅｎｔ_ｐ_ｓｔａｔｅは、回路ブロックＢ１、Ｂ２、Ｂ３の現在の稼働状況を示すパワーステート、ｎｅｘｔ_ｐ_ｓｔａｔｅは、回路ブロックＢ１、Ｂ２、Ｂ３の次の稼働状況を示すパワーステートである。
【００２７】
具体的には、タイミング制御部１３は、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘをオンさせる遅延前または遅延後の制御信号ＭＥ２を選択させる選択信号ＳＥＬ１を生成し、セレクタ１５に出力するとともに、スイッチング素子Ｔ２−２−１〜Ｔ２−２−ｙをオンさせる遅延前または遅延後の制御信号ＭＥ２を選択させる選択信号ＳＥＬ２を生成し、セレクタ１６に出力することができる。
【００２８】
遅延回路１４は、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘ、Ｔ２−２−１〜Ｔ２−２−ｙをオンさせる制御信号ＭＥ２を遅延させることができる。なお、遅延回路１４における遅延時間は、論理素子Ｇ２−１〜Ｇ２−ｚの配線容量や寄生容量に蓄積された電荷が、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘまたはスイッチング素子Ｔ２−２−１〜Ｔ２−２−ｙを介して放電されるまでにかかる時間以上に設定することが好ましい。ここで、論理素子Ｇ２−１〜Ｇ２−ｚの配線容量や寄生容量に蓄積された電荷が完全に放電されるまで遅延させる必要は必ずしもなく、動作中の周辺の回路ブロックＢ１、Ｂ３に影響がなくなる程度に放電されていればよい。
【００２９】
セレクタ１５は、遅延回路１４による遅延前または遅延後の制御信号ＭＥ２を選択し、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘのゲートに出力することができる。セレクタ１６は、遅延回路１４による遅延前または遅延後の制御信号ＭＥ２を選択し、スイッチング素子Ｔ２−２−１〜Ｔ２−２−ｙのゲートに出力することができる。
【００３０】
そして、回路ブロックＢ１、Ｂ２、Ｂ３の動作状態への移行を指示する動作指示信号Ｓｒがスイッチング制御部１１およびタイミング制御部１３に入力されるともに、回路ブロックＢ１、Ｂ２、Ｂ３の現在の稼働状況を示すパワーステート情報がパワーステート情報保持部１３ａに保持される。
【００３１】
そして、動作指示信号Ｓｒがスイッチング制御部１１に入力されると、スイッチング制御部１１は、回路ブロックＢ１、Ｂ２、Ｂ３をそれぞれ動作させる制御信号ＭＥ１、ＭＥ２、ＭＥ３を生成する。そして、回路ブロックＢ１を動作させる制御信号ＭＥ１は、スイッチング素子Ｔ１−１〜Ｔ１−ｎのゲートに出力される。また、回路ブロックＢ２を動作させる制御信号ＭＥ２は、遅延回路１４およびセレクタ１５、１６に出力される。また、回路ブロックＢ３を動作させる制御信号ＭＥ３は、スイッチング素子Ｔ３−１〜Ｔ３−ｊのゲートに出力される。
【００３２】
そして、制御信号ＭＥ１が、スイッチング素子Ｔ１−１〜Ｔ１−ｎのゲートに出力されると、スイッチング素子Ｔ１−１〜Ｔ１−ｎがオンし、仮想電源線ＤＶ１と低電位電源線ＤＬとが通電される。この結果、高電位電源線ＤＨと低電位電源線ＤＬとの間の電圧が論理素子Ｇ１−１〜Ｇ１−ｍに印加され、論理素子Ｇ１−１〜Ｇ１−ｍは待機状態から動作状態に移行する。
【００３３】
また、制御信号ＭＥ３が、スイッチング素子Ｔ３−１〜Ｔ３−ｊのゲートに出力されると、スイッチング素子Ｔ３−１〜Ｔ３−ｊがオンし、仮想電源線ＤＶ３と低電位電源線ＤＬとが通電される。この結果、高電位電源線ＤＨと低電位電源線ＤＬとの間の電圧が論理素子Ｇ３−１〜Ｇ３−ｋに印加され、論理素子Ｇ３−１〜Ｇ３−ｋは待機状態から動作状態に移行する。
【００３４】
また、制御信号ＭＥ２が、遅延回路１４に出力されると、遅延回路１４にて遅延された後、セレクタ１５、１６に出力される。そして、各セレクタ１５、１６にて遅延前または遅延後の制御信号ＭＥ２が選択され、セレクタ１５にて選択された制御信号ＭＥ２は、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘのゲートに出力されるとともに、セレクタ１６にて選択された制御信号ＭＥ２は、スイッチング素子Ｔ２−２−１〜Ｔ２−２−ｙのゲートに出力される。
【００３５】
そして、制御信号ＭＥ２が、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘのゲートに出力されると、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘがオンし、回路ブロックＢ１側の仮想電源線ＤＶ２と低電位電源線ＤＬとが通電される。また、制御信号ＭＥ２が、スイッチング素子Ｔ２−２−１〜Ｔ２−２−ｙのゲートに出力されると、スイッチング素子Ｔ２−２−１〜Ｔ２−２−ｙがオンし、回路ブロックＢ３側の仮想電源線ＤＶ２と低電位電源線ＤＬとが通電される。この結果、高電位電源線ＤＨと低電位電源線ＤＬとの間の電圧が論理素子Ｇ２−１〜Ｇ２−ｚに印加され、論理素子Ｇ２−１〜Ｇ２−ｚは待機状態から動作状態に移行する。
【００３６】
ここで、セレクタ１５、１６には、タイミング制御部１３から選択信号ＳＥＬ１、ＳＥＬ２が入力される。そして、選択信号ＳＥＬ１、ＳＥＬ２にそれぞれ従って、遅延前または遅延後の制御信号ＭＥ２がセレクタ１５、１６にてそれぞれ選択される。
【００３７】
ここで、スイッチング制御部１１から制御信号ＭＥ２が出力された時に、スイッチング素子Ｔ１−１〜Ｔ１−ｎがオン、スイッチング素子Ｔ３−１〜Ｔ３−ｊがオフしている場合、タイミング制御部１３は、遅延後の制御信号ＭＥ２をセレクタ１５にて選択させ、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘのゲートに出力させるとともに、遅延前の制御信号ＭＥ２をセレクタ１６にて選択させ、スイッチング素子Ｔ２−２−１〜Ｔ２−２−ｙのゲートに出力させることができる。
【００３８】
一方、スイッチング制御部１１から制御信号ＭＥ２が出力された時に、スイッチング素子Ｔ１−１〜Ｔ１−ｎがオフ、スイッチング素子Ｔ３−１〜Ｔ３−ｊがオンしている場合、タイミング制御部１３は、遅延前の制御信号ＭＥ２をセレクタ１５にて選択させ、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘのゲートに出力させるとともに、遅延後の制御信号ＭＥ２をセレクタ１６にて選択させ、スイッチング素子Ｔ２−２−１〜Ｔ２−２−ｙのゲートに出力させることができる。
【００３９】
図３は、図１のタイミング制御部１３の動作を示すフローチャートである。
図３において、動作指示信号Ｓｒがタイミング制御部１３に入力されると、タイミング制御部１３は、動作指示信号Ｓｒから次のパワーステート情報を生成する。そして、タイミング制御部１３は、次のパワーステート情報を、パワーステート情報保持部１３ａに保持された現在のパワーステート情報と比較する（ステップＳ１）。
【００４０】
そして、次のパワーステート情報が現在のパワーステート情報と異なる場合（ステップＳ２）、回路ブロックＢ２の現在のパワーステートがオフで、回路ブロックＢ２の次のパワーステートがオンかどうかを判断する（ステップＳ３）。
【００４１】
そして、回路ブロックＢ２の現在のパワーステートがオフで、回路ブロックＢ２の次のパワーステートがオンの場合、回路ブロックＢ１、Ｂ３の現在および次のパワーステート情報をそれぞれ取り出す（ステップＳ４）。
【００４２】
そして、回路ブロックＢ１、Ｂ３の現在および次のパワーステートがどのようになっているかを判断し（ステップＳ５）、（回路ブロックＢ１の現在のパワーステート，回路ブロックＢ１の次のパワーステート；回路ブロックＢ３の現在のパワーステート，回路ブロックＢ３の次のパワーステート）が、（オン，オン；オン，オフ）または（オン，オン；オフ，オン）または（オン，オン；オフ，オフ）の場合、選択信号ＳＥＬ１を０、選択信号ＳＥＬ２を１に設定し（ステップＳ６）、ステップＳ１１に移行する。
【００４３】
そして、選択信号ＳＥＬ１が０、選択信号ＳＥＬ２が１に設定されると、セレクタ１５では、遅延後の制御信号ＭＥ２が選択され、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘのゲートに出力されるとともに、セレクタ１６では、遅延前の制御信号ＭＥ２が選択され、スイッチング素子Ｔ２−２−１〜Ｔ２−２−ｙのゲートに出力される。
【００４４】
そして、遅延後の制御信号ＭＥ２がスイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘのゲートに出力されるとともに、遅延前の制御信号ＭＥ２がスイッチング素子Ｔ２−２−１〜Ｔ２−２−ｙのゲートに出力されると、回路ブロックＢ３側のスイッチング素子Ｔ２−２−１〜Ｔ２−２−ｙが始めにオンし、論理素子Ｇ２−１〜Ｇ２−ｚの配線容量や寄生容量に蓄積された電荷がスイッチング素子Ｔ２−２−１〜Ｔ２−２−ｙを介して放電してから、回路ブロックＢ１側のスイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘがオンする。このため、論理素子Ｇ２−１〜Ｇ２−ｚの配線容量や寄生容量に蓄積された電荷が回路ブロックＢ１側の低電位電源線ＤＬに一斉に流れ出すのを抑制することができ、回路ブロックＢ１側の低電位電源線ＤＬに定常状態時よりも大きな電圧降下が発生するのを抑制することが可能となることから、動作状態にある回路ブロックＢ１の動作速度の低下を防止することができる。
【００４５】
一方、（回路ブロックＢ１の現在のパワーステート，回路ブロックＢ１の次のパワーステート；回路ブロックＢ３の現在のパワーステート，回路ブロックＢ３の次のパワーステート）が、（オン，オフ；オン，オン）または（オフ，オン；オン，オン）または（オフ，オフ；オン，オン）の場合、選択信号ＳＥＬ１を１、選択信号ＳＥＬ２を０に設定し（ステップＳ７）、ステップＳ１１に移行する。
【００４６】
そして、選択信号ＳＥＬ１が１、選択信号ＳＥＬ２が０に設定されると、セレクタ１５では、遅延前の制御信号ＭＥ２が選択され、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘのゲートに出力されるとともに、セレクタ１６では、遅延後の制御信号ＭＥ２が選択され、スイッチング素子Ｔ２−２−１〜Ｔ２−２−ｙのゲートに出力される。
【００４７】
そして、遅延前の制御信号ＭＥ２がスイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘのゲートに出力されるとともに、遅延後の制御信号ＭＥ２がスイッチング素子Ｔ２−２−１〜Ｔ２−２−ｙのゲートに出力されると、回路ブロックＢ１側のスイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘが始めにオンし、論理素子Ｇ２−１〜Ｇ２−ｚの配線容量や寄生容量に蓄積された電荷がスイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘを介して放電してから、回路ブロックＢ３側のスイッチング素子Ｔ２−２−１〜Ｔ２−２−ｙがオンする。このため、論理素子Ｇ２−１〜Ｇ２−ｚの配線容量や寄生容量に蓄積された電荷が回路ブロックＢ３側の低電位電源線ＤＬに一斉に流れ出すのを抑制することができ、回路ブロックＢ３側の低電位電源線ＤＬに定常状態時よりも大きな電圧降下が発生するのを抑制することが可能となることから、動作状態にある回路ブロックＢ３の動作速度の低下を防止することができる。
【００４８】
一方、（回路ブロックＢ１の現在のパワーステート，回路ブロックＢ１の次のパワーステート；回路ブロックＢ３の現在のパワーステート，回路ブロックＢ３の次のパワーステート）が、（オン，オン；オン，オン）の場合、選択信号ＳＥＬ１、ＳＥＬ２を１に設定する（ステップＳ８）。
【００４９】
そして、選択信号ＳＥＬ１、ＳＥＬ２が１に設定されると、セレクタ１５、１６では、遅延前の制御信号ＭＥ２が選択され、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘ、Ｔ２−２−１〜Ｔ２−２−ｙのゲートに出力される。
【００５０】
そして、遅延前の制御信号ＭＥ２がスイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘ、Ｔ２−２−１〜Ｔ２−２−ｙのゲートに出力されると、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘ、Ｔ２−２−１〜Ｔ２−２−ｙが同時にオンし、論理素子Ｇ２−１〜Ｇ２−ｚの配線容量や寄生容量に蓄積された電荷がスイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘ、Ｔ２−２−１〜Ｔ２−２−ｙを介して放電される。
【００５１】
また、ステップＳ８において選択信号ＳＥＬ１、ＳＥＬ２が１に設定されると、この放電による電圧降下が収まるまで、回路ブロックＢ１、Ｂ３のクロックの供給を停止させてから（ステップＳ９）、ステップＳ１１に移行する。
【００５２】
一方、（回路ブロックＢ１の現在のパワーステート，回路ブロックＢ１の次のパワーステート；回路ブロックＢ３の現在のパワーステート，回路ブロックＢ３の次のパワーステート）が、以上の組み合わせ以外の場合、選択信号ＳＥＬ１、ＳＥＬ２を１に設定し（ステップＳ１０）、ステップＳ１１に移行する。
そして、ステップＳ１１に移行すると、タイミング制御部１３は、次のパワーステート情報を現在のパワーステート情報としてパワーステート情報保持部１３ａに保持させる。
【００５３】
これにより、隣接する回路ブロックＢ１、Ｂ３の稼働状況に基づいて、回路ブロックＢ２に電源を印加させるスイッチセルを選択することができる。このため、回路ブロックＢ２の周辺の回路ブロックＢ１、Ｂ３の動作に与える影響を抑制しつつ、パワーゲーティングによって回路ブロックＢ２が動作状態に移行できるようになるまでの時間を短くすることが可能となる。
【００５４】
なお、上述した第１実施形態では、回路ブロックＢ１、Ｂ２、Ｂ３が３個だけ設けられている構成を例にとって説明したが、４個以上の回路ブロックがある場合に本発明を適用してもよい。また、回路ブロックＢ２には、２個の回路ブロックＢ１、Ｂ３が隣接している構成を例にとって説明したが、３個以上の回路ブロックが回路ブロックＢ２に隣接している場合に本発明を適用してもよい。
【００５５】
（第２実施形態）
また、上述した第１実施形態では、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘ、Ｔ２−２−１〜Ｔ２−２−ｙが遮断状態から導通状態に移行するタイミングを制御するために、制御信号ＭＥ２を遅延させる方法について説明したが、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘと、スイッチング素子Ｔ２−２−１〜Ｔ２−２−ｙとで制御信号ＭＥ２を分け、スイッチング素子Ｔ２−１−１〜Ｔ２−１−ｘのゲートには制御信号ＭＥ２−１、スイッチング素子Ｔ２−２−１〜Ｔ２−２−ｙのゲートには制御信号ＭＥ２−２が入力されるようにしてもよい。
【００５６】
（第３実施形態）
また、上述した第１実施形態では、パワーゲーティングを実現するために、低電位電源線ＤＬ側にスイッチング素子Ｔ１−１〜Ｔ１−ｎ、Ｔ２−１−１〜Ｔ２−１−ｘ、Ｔ２−２−１〜Ｔ２−２−ｙ、Ｔ３−１〜Ｔ３−ｊを挿入する方法について説明したが、高電位電源線ＤＨ側にスイッチング素子Ｔ１−１〜Ｔ１−ｎ、Ｔ２−１−１〜Ｔ２−１−ｘ、Ｔ２−２−１〜Ｔ２−２−ｙ、Ｔ３−１〜Ｔ３−ｊを挿入するようにしてもよい。
【図面の簡単な説明】
【００５７】
【図１】本発明の第１実施形態に係る半導体集積回路の概略構成を示すブロック図。
【図２】図１のパワーステートテーブル１２の構成例を示す図。
【図３】図１のタイミング制御部１３の動作を示すフローチャート。
【符号の説明】
【００５８】
Ｂ１、Ｂ２、Ｂ３  回路ブロック、１１  スイッチング制御部、１２  パワーステートテーブル、１３  タイミング制御部、１３ａ  パワーステート情報保持部、１４  遅延回路、１５、１６  セレクタ、Ｇ１−１〜Ｇ１−ｍ、Ｇ２−１〜Ｇ２−ｚ、Ｇ３−１〜Ｇ３−ｋ  論理素子、Ｔ１−１〜Ｔ１−ｎ、Ｔ２−１−１〜Ｔ２−１−ｘ、Ｔ２−２−１〜Ｔ２−２−ｙ、Ｔ３−１〜Ｔ３−ｊ  スイッチング素子、ＤＨ  高電位電源線、ＤＬ  低電位電源線、ＤＶ１、ＤＶ２、ＤＶ３  仮想電源線
【図１】
2010081068.tif 000003
【図２】
2010081068.tif 000004
【図３】
2010081068.tif 000005