(57)【要約】【課題】誤動作せずに、消費電力を一層低減した、多電源ＡＶＳ制御技術を適用した半導体装置の実現。【解決手段】第１の電源電圧VDD1を供給する第１電源6と、VDD1以上の第２電源電圧VDD2を供給する第２電源15と、VDD1の供給を受けて動作する第１回路ブロック1と、VDD2の供給を受けて動作する第２回路ブロック11と、VDD1用の信号をVDD2用の信号に変換するかまたはVDD2用の信号をVDD1用の信号に変換するレベル変換器21,22と、第１電源6を制御してVDD1を変化させる電源制御回路7と、VDD1が低下した時に、レベル変換器が正常に機能しなくなるVDD1よりも高い第１余裕電圧で第１誤動作信号Warningを生成するレベル変換器監視回路31と、を有し、電源制御回路は、VDD1が第１余裕電圧より低くならないように第１電源を制御する半導体装置。【選択図】図８
2015119311.tif 000002
【特許請求の範囲】
【請求項１】
第１の電源電圧を供給する第１電源と、
前記第１の電源電圧以上の第２電源電圧を供給する第２電源と、
前記第１電源から前記第１の電源電圧の供給を受けて動作する第１回路ブロックと、
前記第２電源から前記第２の電源電圧の供給を受けて動作する第２回路ブロックと、
前記第１電源および前記第２電源から前記第１の電源電圧および前記第２の電源電圧の供給を受けて動作し、前記第１の電源電圧用の信号を前記第２の電源電圧用の信号に変換するかまたは前記第２の電源電圧用の信号を前記第１の電源電圧用の信号に変換するレベル変換器と、
前記第１電源を制御して前記第１の電源電圧を変化させる電源制御回路と、
前記第１の電源電圧が低下した時に、前記レベル変換器が正常に機能しなくなる前記第１の電圧よりも高い第１余裕電圧で第１誤動作信号を生成するレベル変換器監視回路と、を備え、
前記電源制御回路は、前記第１の電源電圧が前記第１余裕電圧より低くならないように前記第１電源を制御することを特徴とする半導体装置。
【請求項２】
レベル変換器監視回路は、前記第１余裕電圧で誤動作する第１誤動作レベル変換器を少なくとも１つ有し、前記レベル変換器が正常に動作し且つ前記第１誤動作レベル変換器が正常に動作しない場合に第１誤動作未然検知信号を生成する請求項１に記載の半導体装置。
【請求項３】
レベル変換器監視回路は、前記第１余裕電圧よりも高い第２余裕電圧で誤動作する第２誤動作レベル変換器を少なくとも１つ有し、前記第２誤動作レベル変換器が正常に動作しない場合に第２誤動作未然検知信号を生成する請求項２に記載の半導体装置。
【請求項４】
前記電源制御回路は、前記第１誤動作未然検知信号および前記第２誤動作未然検知信号を受けない場合には前記第１の電源電圧を単位量ずつ低下させ、前記第１誤動作未然検知信号を受けず且つ前記第２誤動作未然検知信号を受けると前記第１の電源電圧を維持し、前記第１誤動作未然検知信号を受けると前記第１の電源電圧を単位量ずつ増加させる、ように前記第１電源を制御する請求項３に記載の半導体装置。
【請求項５】
前記電源制御回路は、動作開始時には、前記第１の電源電圧を、前記第１回路ブロックおよび前記レベル変換器が誤動作することのない電圧に設定する請求項１から４のいずれか１項に記載の半導体装置。
【請求項６】
前記第１誤動作レベル変換器は、前記レベル変換器と同一の構造を有し、前記レベル変換器よりも大きな抵抗値の抵抗を介して前記第１電源に接続されている請求項２に記載の半導体装置。
【請求項７】
前記第２誤動作レベル変換器は、前記レベル変換器と同一の構造を有し、前記レベル変換器の前記第１電源への接続抵抗よりも大きく、前記第１誤動作レベル変換器の前記第１電源への接続抵抗よりも大きい抵抗を介して前記第１電源に接続されている請求項３に記載の半導体装置。
【請求項８】
前記第１の電源電圧が低下した時に、遅延量が増加する遅延パスを有し、前記遅延パスの遅延量が所定値を超えると動作限界信号を生成する動作監視回路を、さらに備え、
前記電源制御回路は、前記第１の電源電圧を単位量ずつ低下させる時に、前記動作限界信号が発生すると、前記第１の電源電圧を単位量ずつ増加するように前記第１電源を制御することを特徴とする請求項１から７のいずれか１項に記載の半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置に関する。
【背景技術】
【０００２】
近年、半導体装置（ＬＳＩ）の低消費電力化の要求がより一層強くなってきている。そこで、負荷が軽くなった場合、動作周波数を下げて消費電力を低減することが行われる。さらに、製造バラつき、温度変化などがあっても、要求される性能を満たした上で、低消費電力化することが必要である。
【０００３】
例えば、製造バラつきによってトランジスタの閾値（Ｖｔｈ）が高くなった場合、トランジスタの動作速度は低下し(Slow)、回路の信号伝搬遅延(Delay)が大きくなってしまう。このため、電源電圧ＶＤＤを高めに設定して、遅延量(Delay)が要求動作周波数を満足できるように小さくする必要がある。
【０００４】
一方、製造バラつきによってトランジスタの閾値（Ｖｔｈ）が低くなった場合、トランジスタの動作速度は高くなり(Fast)は、回路のリーク電流量が増大するため消費エネルギが増大してしまう。このため、電源電圧ＶＤＤを低めに設定して遅延量が要求動作周波数を満足できる限界まで、回路の消費エネルギを低く抑える必要がある。
【０００５】
そこで、動作周波数、製造バラつき、温度変化に応じて電源電圧を制御することで、要求される性能を満たしながら、単位性能当たりの消費エネルギを削減することが行われる。これをＡＶＳ(Adaptive Voltage Scaling)電源制御技術と称する。
【０００６】
上記のＡＶＳ電源制御技術は、半導体装置の回路全体に対して適用することも、半導体装置を複数の回路ブロックに分割し、各回路ブロックへの負荷の分散を含めて、各回路ブロックの電源を制御する場合もある。各回路ブロックの電源を制御するには、各回路ブロックの電源を独立に設け、少なくとも１つの回路ブロックは個別に電源電圧を制御する。これを多電源ＡＶＳ制御技術と称する。この場合、回路ブロック間で電源電圧の異なる状態が生じるため、回路ブロック間で信号を受け渡す（インターフェースする）場合には、信号のレベルを変換するレベル変換器（レベルシフタ）(Level Shifter)を介して行う。
【０００７】
本出願での多電源ＡＶＳ制御技術は、少なくとも２つの電源線（ＶＤＤ１，ＶＤＤ２）にそれぞれ接続される回路領域を有し、少なくとも一方の領域にＡＶＳ制御技術が適用され、さらに、領域間でレベルシフタを介して信号のやり取りが行われる回路構成をとる。例えば、非特許文献１は、多電源構成の一例を記載している。
【０００８】
各回路ブロックに対してＡＶＳ制御技術を適用する場合、各回路ブロックが正常に動作する範囲で、できるだけ電源電圧を低下させる。一般に、回路の遅延量は、リングオシレータおよびカウンタを有する遅延量モニタ回路を設け、電源電圧に応じて変化するリングオシレータの周波数の変化を、出力信号の変化をカウントすることにより測定する。そして、カウント値が、要求される動作周波数を満たす遅延量より小さいかを判定する。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００４−１６５７３２号公報
【特許文献２】特開２００５−１０２０８６号公報
【特許文献３】特開２００５−３０１０８３号公報
【非特許文献】
【００１０】
【非特許文献１】David Bol,et.al, "A 25MHz 7μW/MHz Ultra-Low-Voltage Microcontroller SoC in 65nm LP/GP CMOS for Low-Carbon Wireless Sensor Nodes", ISSCC 2012
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかし、半導体装置を複数の回路ブロックに分割し、多電源ＡＶＳ制御技術を適用する場合、第１の回路ブロックのトランジスタの閾値ＶｔｈがＦａｓｔ側に振れている場合には、ＡＶＳ制御技術により第１の回路ブロックの電源電圧ＶＤＤ１が下げられる。一方、レベルシフタを介して第１の回路ブロックから信号が供給される第２の回路ブロックの電源電圧ＶＤＤ２が高い状態で維持されると、第１の回路ブロックの電源電圧ＶＤＤ１と第２の回路ブロックの電源電圧ＶＤＤ２の差が生じる。この差が大きくなった場合、レベルシフタが動作しなくなり、電源電圧ＶＤＤ１の信号を電源電圧ＶＤＤ２の信号に昇圧ができなくなる。
【００１２】
ＡＶＳ制御技術を適用する場合、回路動作に動作不良（誤動作）が発生するまで電源電圧を低下させずに、誤動作が発生する手前の電源電圧より少し高い電源電圧にする。上記の遅延量モニタ回路では、レベルシフタの誤動作を事前に検知できず、誤動作が発生する電源電圧より少し高い電源電圧に制御することが難しい。
【００１３】
実施形態によれば、複数の回路ブロックを有し、多電源ＡＶＳ制御技術を適用する半導体装置で、動作不良（誤動作）の発生を防止し、一層の省電力化を実現する。
【課題を解決するための手段】
【００１４】
発明の第１の観点によれば、半導体装置は、第１電源と、第２電源と、第１回路ブロックと、第２回路ブロックと、レベル変換器と、電源制御回路と、レベル変換器監視回路と、を有する。第１電源は、第１の電源電圧を供給する。第２電源は、第１の電源電圧以上の第２電源電圧を供給する。第１回路ブロックは、第１電源から第１の電源電圧の供給を受けて動作する。第２回路ブロックは、第２電源から第２の電源電圧の供給を受けて動作する。レベル変換器は、第１電源および第２電源から第１の電源電圧および第２の電源電圧の供給を受けて動作し、第１の電源電圧用の信号を第２の電源電圧用の信号に変換するかまたは第２の電源電圧用の信号を第１の電源電圧用の信号に変換する。電源制御回路は、第１電源を制御して第１の電源電圧を変化させる。レベル変換器監視回路は、第１の電源電圧が低下した時に、レベル変換器が正常に機能しなくなる第１の電圧よりも高い第１余裕電圧で第１誤動作信号を生成する。電源制御回路は、第１の電源電圧が第１余裕電圧より低くならないように第１電源を制御する。
【発明の効果】
【００１５】
実施形態によれば、多電源ＡＶＳ制御技術を適用した場合に、回路ブロック間の信号を受け渡す（インターフェースする）レベル変換器（レベルシフタ）が誤動作せずに正常に動作する範囲で、電源電圧ができるだけ低くなるように制御する。これにより、誤動作せずに、消費電力を一層低減した半導体装置が実現される。
【図面の簡単な説明】
【００１６】
【図１】図１は、回路全体に電源電圧を供給する単一電源に対してＡＶＳ技術を適用する半導体装置の概略構成を示す図である。
【図２】図２は、図１に示した単一電源に対するＡＶＳ技術における制御を説明する図である。
【図３】図３は、複数の回路ブロックを有し、複数の回路ブロックにそれぞれ電源電圧を供給する複数の電源を有する場合の多電源ＡＶＳ技術を適用する半導体装置の概略構成を示す図である。
【図４】図４は、図３の多電源ＡＶＳ技術を適用する半導体装置の動作シーケンスを示す動作状態(State)遷移図である。
【図５】図５は、図３の多電源ＡＶＳ技術を適用する半導体装置の動作を示すタイムチャートである。
【図６】図６は、ＶＤＤ１を大きく低下させた場合の問題を説明する図であり、（Ａ）が回路構成を示し、（Ｂ）がＡＶＳ技術における制御の問題を説明する。
【図７】図７は、図６に示した多電源ＡＶＳ技術を適用する半導体装置で、トランジスタがＦａｓｔで、ＶＤＤ１をＶＤＤｍｉｎ以上にするという制限無しに動作させた場合のタイムチャートである。
【図８】図８は、第１実施形態の半導体装置の回路構成を示す図である。
【図９】図９は、第１実施形態で実行されるＡＶＳ技術における制御を説明する図である。
【図１０】図１０は、レベルシフタモニタ回路の構成例を示すブロック図である。
【図１１】図１１は、レベルシフタモニタ回路のより詳細な構成例を示す回路図である。
【図１２】図１２は、誤動作回路の構成例を示す図である。
【図１３】図１３は、図１１のレベルシフタモニタ回路の動作シミュレーションの結果を示す図である。
【図１４】図１４は、第１実施形態の多電源ＡＶＳ技術を適用する半導体装置の動作シーケンスを示す動作状態(State)遷移図である。
【図１５】図１５は、電源制御回路(PMU: Power Management Unit)の回路構成を示すブロック図である。
【図１６】図１６は、電源制御回路（ＰＭＵ）の動作を示すタイムチャートである。
【図１７】図１７は、第２実施形態の半導体装置のレベルシフタモニタ回路の回路構成を示す図である。
【図１８】図１８は、第２実施形態の多電源ＡＶＳ技術を適用する半導体装置の動作シーケンスを示す動作状態(State)遷移図である。
【図１９】図１９は、第２実施形態の半導体装置の電源制御回路(PMU: Power Management Unit)の回路構成を示すブロック図である。
【図２０】図２０は、第２実施形態の電源制御回路（ＰＭＵ）の動作を示すタイムチャートである。
【図２１】図２１は、第２実施形態の電源制御回路（ＰＭＵ）の動作を示すタイムチャートである。
【発明を実施するための形態】
【００１７】
実施形態を説明する前に、一般的な電源制御技術について説明する。
図１は、回路全体に電源電圧を供給する単一電源に対してＡＶＳ技術を適用する半導体装置の概略構成を示す図である。
【００１８】
半導体装置は、回路ブロック１と、電源(Power Supply)６と、電源制御部(Power Management Unit(PMU))７と、ＰＬＬ(Phase Locked Loop)８と、を有する。電源６、ＰＭＵ７およびＰＬＬ８をＬＳＩ外に設け、ＬＳＩには回路ブロック１のみを設ける場合もあるが、そのような場合も含めて、半導体装置と称する。
【００１９】
電源６は、回路ブロック１等（ＰＭＵ７およびＰＬＬ８も含めて）に電源電圧ＶＤＤを供給する。電源６は、ＰＭＵ７からの指令に応じて、電源電圧ＶＤＤを変化する。ＰＭＵ７は、外部から供給される（または内部で別途生成した）システムクロックＳＹＳＣＬＫを受け、後述する遅延量モニタ回路５から遅延量(Delay)に関する情報を受け、電源６の出力する電源電圧ＶＤＤを制御する電源制御信号(Up/Down/Hold)を出力する。ＰＭＵ７は、さらに遅延量モニタ回路５の動作状態を制御する。なお、図示していないが、ＰＭＵ７は、何らかの形で半導体装置の負荷状態に関する情報を受け、その情報に応じて電源６を制御する。ＰＬＬ８は、システムクロックＳＹＳＣＬＫから内部クロックＣＬＫを生成して回路ブロック１に供給する。なお、図示していないが、ＰＬＬ８は、何らかの形で（例えばＰＭＵ７から）内部クロックＣＬＫの周波数に関する指令を受け、指令された周波数の内部クロックＣＬＫを生成する。
【００２０】
回路ブロック１は、ＦＦ(Flip Flop)２と、組合せ論理回路(Combinational Logic)３と、ＦＦ４と、を含む回路要素を多数有する。ＦＦ２は、ＰＬＬ８から供給される内部クロックＣＬＫに同期して動作し、他の回路部分または外部からの信号を内部ＣＬＫに同期して組合せ論理回路３に出力する。組合せ論理回路３は、ＦＦ２および図示していないＦＦからの信号を受け、論理演算を行って、ＦＦ４に出力する。ＦＦ４は、内部クロックＣＬＫに同期して動作し、組合せ論理回路３からの信号を、ＣＬＫに同期して他の回路部分または外部に出力する。
【００２１】
回路ブロック１は、リングオシレータとカウンタからなり、システムクロックＳＹＳＣＬＫおよび内部クロックＣＬＫを受けて、電源電圧ＶＤＤで動作した場合の回路の遅延量(Delay)を生成する遅延量モニタ回路５を有する。回路ブロック１が誤動作せずに正常に動作する回路（トランジスタ）の遅延量があらかじめ調べられており、それに対応する遅延量モニタ回路５の遅延量が設定されている。遅延量モニタ回路５は、ＰＭＵ７からの制御信号ＥＮに応じて、動作状態（オン(On)／オフ(Off)）が制御される。
【００２２】
ＰＭＵ７は、半導体装置の負荷状態に関する情報を受け、遅延量モニタ回路５の遅延情報があらかじめ設定された条件を満たす範囲で、電源電圧ＶＤＤをできるだけ低くするように電源６を制御する。
【００２３】
図２は、図１に示した単一電源に対するＡＶＳ技術における制御を説明する図である。図２の上側は、電源電圧ＶＤＤの変化に対する回路（トランジスタ）の遅延量Ｄｅｌａｙの変化を示し、トランジスタの動作速度がＳｌｏｗの場合とＦａｓｔの場合を示している。図２の下側は、電源電圧ＶＤＤの変化に対する回路消費エネルギの変化例を示し、トランジスタの動作速度がＳｌｏｗの場合とＦａｓｔの場合を示している。図示のカーブは温度条件に応じても変化する。
【００２４】
図２の上側において、要求動作周波数ラインＤｅｌａｙで示すラインより下のＤｅｌａｙであれば回路は正常に動作し、ラインより上のＤｅｌａｙであれば回路は誤動作するようになる。図示のように、電源電圧ＶＤＤが低下するにしたがって遅延情報Ｄｅｌａｙが低下するが、トランジスタの動作速度がＳｌｏｗの場合とＦａｓｔの場合で、回路の要求動作周波数を実現する電源電圧ＶＤＤの値が異なる。
【００２５】
ＡＶＳ技術を適用しない場合には、製造バラつきを考慮して、Ｓｌｏｗの場合でも、遅延量Ｄｅｌａｙが、要求動作周波数ラインＤｅｌａｙよりかならず下になるように電源電圧ＶＤＤを高く設定していた。そのため、図２の下側に示すように、製造によりＦａｓｔのトランジスタが製造された場合には、電源電圧ＶＤＤが高く設定され、回路のリーク電流量が増大するため消費エネルギが増大してしまう。言い換えれば、さらに電源電圧ＶＤＤを低下させて消費エネルギを低減可能であるにもかかわらず、高い電源電圧ＶＤＤに設定することになる。
【００２６】
図２の下側に示すように、ＡＶＳ技術を適用した場合には、遅延量モニタ回路５により実際に製造されたトランジスタの遅延量Ｄｅｌａｙを測定し、Ｆａｓｔのトランジスタである場合には、電源電圧ＶＤＤをさらに限界まで低下させて消費エネルギを低減する。
【００２７】
図３は、複数の回路ブロックを有し、複数の回路ブロックにそれぞれ電源電圧を供給する複数の電源を有する場合の多電源ＡＶＳ技術を適用する半導体装置の概略構成を示す図である。
【００２８】
半導体装置は、第１回路ブロック１と、第１回路ブロック用の電源６と、第１回路ブロック用のＰＭＵ７と、第１回路ブロック用のＰＬＬ８と、第２回路ブロック１１と、第２回路ブロック用の電源１５と、レベルシフタ(LS: Level Shifter)２１および２２と、を有する。
【００２９】
第１回路ブロック（第１Ｄｏｍａｉｎ）１は、図１と同様に、ＦＦ２と、組合せ論理回路３と、ＦＦ４と、遅延モニタ回路５と、出力バッファ９と、入力バッファ１０と、を有する。言い換えれば、第１回路ブロック１は、出力バッファ９および入力バッファ１０を有する以外、図１の構成と同じであり、電源６、ＰＭＵ７およびＰＬＬ８も、図１の構成と同じである。
【００３０】
第２回路ブロック（第２Ｄｏｍａｉｎ）１１は、例としてＳＲＡＭの場合を示しており、多数のＳＲＡＭ素子１２と、その周辺回路と、入力バッファ１３と、出力バッファ１４と、を有する。第２回路ブロック用の電源(power Supply)１５は、第２Ｄｏｍａｉｎ１１に電源電圧ＶＤＤ２を供給する。ＳＲＡＭは、電源電圧を低下させると、記憶しているデータが破壊される場合があるので、ここでは、電源電圧ＶＤＤ２は固定であるとする。したがって、電源１５は出力電圧が固定で、第２Ｄｏｍａｉｎ１１用にはＰＭＵは設けられない。
【００３１】
レベルシフタ２１は、第１Ｄｏｍａｉｎ１からの信号をレベル変換して、第２Ｄｏｍａｉｎ１１に出力する。レベルシフタ２２は、第２Ｄｏｍａｉｎ１１からの信号をレベル変換して、第１Ｄｏｍａｉｎ１に出力する。ここでは、ＡＶＳ技術が適用されるのは第１Ｄｏｍａｉｎ１のみであり、第２Ｄｏｍａｉｎ１１には適用されないので、ＶＤＤ１≦ＶＤＤ２であるとする。
【００３２】
図４は、図３の多電源ＡＶＳ技術を適用する半導体装置の動作シーケンスを示す動作状態(State)遷移図である。この遷移図は、第１Ｄｏｍａｉｎ１にのみ関係する。
【００３３】
図４に示すように、“ＳＴＡＲＴ”から始まり、“ＰＯＷＥＲＦＵＬＬ”、“ＭＯＮＩＴＯＲＯＮ”、“ＶＤＤＤＯＷＮ”および“ＶＤＤＵＰ”の状態を遷移する。各状態の説明、および“ＶＤＤＤＯＷＮ”および“ＶＤＤＵＰ”の状態における遷移のトリガについては図の表に記載されているので、説明は省略する。
このＡＶＳ技術によれば、第１Ｄｏｍａｉｎ１の遅延量Ｄｅｌａｙが、限界より小さければＶＤＤ１を低下させ、限界より大きくなるとＶＤＤ１を上昇させる。
【００３４】
図５は、図３の多電源ＡＶＳ技術を適用する半導体装置の動作を示すタイムチャートである。このタイムチャートは、第１Ｄｏｍａｉｎ１にのみ関係する。
”ＳＴＡＲＴ”から始まり、“ＰＯＷＥＲＦＵＬＬ”では、ＶＤＤ１が上昇し、例えば、最大値１．２Ｖまで上昇する。
【００３５】
“ＭＯＮＩＴＯＲＯＮ”では、ＰＭＵ７が遅延モニタ回路５に出力するＥＮをオン(High)にする。これに応じて、遅延モニタ回路５が遅延量Ｄｅｌａｙを測定して出力する。ここで、要求動作周波数の限界ラインの遅延量は“１０”であるとする。ＶＤＤ１は最大値であるから、Ｄｅｌａｙは小さく、例えば“１”が出力される。
【００３６】
Ｄｅｌａｙが限界ラインより下であるので、“ＶＤＤＤＯＷＮ”に遷移し、ＶＤＤ１を単位量低下させる。これを繰り返すと、Ｄｅｌａｙは段階的に増加し、限界ラインの遅延量は“１０”を超えて大きくなる（“１１”）になる。これに応じて、状態は“ＶＤＤＵＰ”に遷移し、ＶＤＤ１を単位量上昇させる。ＶＤＤ１が上昇するので、Ｄｅｌａｙは再度“１０”になり、状態は“ＶＤＤＤＯＷＮ”に遷移する。以下このような動作を繰り返す。これにより、Ｄｅｌａｙが限界ライン付近になるように、ＶＤＤ１が制御される。
【００３７】
実際に第１回路ブロック（第１Ｄｏｍａｉｎ）１が正常に動作しなくなるのは、例えば遅延モニタ回路５が出力する遅延量Ｄｅｌａｙが“１２”あり、このような場合に要求動作周波数の限界ラインの遅延量を“１０”に設定する。これにより、動作中に誤動作が発生することはない。
【００３８】
ここで、第１回路ブロック（第１Ｄｏｍａｉｎ）１のトランジスタの閾値ＶｔｈがＦａｓｔ側に大きく振れている場合には、ＡＶＳ制御技術によりＶＤＤ１を大きく低下させることができる。
【００３９】
図６は、ＶＤＤ１を大きく低下させた場合の問題を説明する図であり、（Ａ）が回路構成を示し、（Ｂ）がＡＶＳ技術における制御の問題を説明する。
上記のように、ＡＶＳ制御技術を適用してＶＤＤ１を低下させる場合、第１Ｄｏｍａｉｎ１が正常に動作する範囲でＶＤＤ１を低下させるので、第１Ｄｏｍａｉｎ１は正常に動作する。しかし、ＶＤＤ１とＶＤＤ２の差が大きくなった場合は、レベルシフタ２１および２２、特にＶＤＤ１の信号からＶＤＤ２の信号にレベル変換するレベルシフタ２１が動作しなくなってしまうという問題が生じる。
【００４０】
レベルシフタ(LS: Level Shifter)は、ＶＤＤ１およびＶＤＤ２を受けて、ＶＤＤ１用の信号をＶＤＤ２用に信号に変換するか、またはＶＤＤ２用の信号をＶＤＤ１用に信号に変換する。例えば、レベルシフタ２１では、ＶＤＤ１用の信号が、ＶＤＤ２用の判定回路の閾値より高ければＶＤＤ２信号の高レベルに変換し、ＶＤＤ２用の判定回路の閾値より低ければＶＤＤ２信号の低レベルに変換する。ＶＤＤ１がＶＤＤ２より大幅に低いと、ＶＤＤ１用の信号の高レベルが、ＶＤＤ２用の回路の閾値より低くなり、ＶＤＤ２用の信号の高レベルに変換されなくなる。
【００４１】
例えば、ＶＤＤ２＝０．８Ｖで、ＶＤＤ１が０．３Ｖまで低下すると、レベルシフタ２１は動作しなくなり、高レベルのＶＤＤ２用の信号を出力しなくなる。
【００４２】
図６の（Ｂ）に示すように、第１Ｄｏｍａｉｎ１のトランジスタの閾値ＶｔｈがＳｌｏｗである場合には、遅延量Ｄｅｌａｙが要求動作周波数ラインより小さくするため、ＶＤＤ１をある程度高くする。そのため、上記のような問題は生じない。ところが、第１Ｄｏｍａｉｎ１のトランジスタの閾値ＶｔｈがＦａｓｔ側に大きく振れていると、ＶＤＤ１を大きく低下させても、遅延量Ｄｅｌａｙは要求動作周波数ラインより小さい。しかし、この状態では、ＶＤＤ１とＶＤＤ２の差が大きくなり、レベルシフタが動作しなくなる。言い換えれば、レベルシフタを有する半導体装置の場合、遅延量のみに応じて電源電圧を制御するだけでは不十分で、レベルシフタが誤動作しないように電源電圧を制御する必要もある。
【００４３】
レベルシフタが誤動作しないようにするには、ＶＤＤ１とＶＤＤ２の差が所定値以上にならないようにする必要がある。上記の場合、ＶＤＤ２は固定なので、ＶＤＤ１を所定のレベルシフタ最小動作可能電圧ＶＤＤｍｉｎ以上にすることが求められる。
【００４４】
図７は、図６に示した多電源ＡＶＳ技術を適用する半導体装置で、トランジスタがＦａｓｔで、ＶＤＤ１をＶＤＤｍｉｎ以上にするという制限無しに動作させた場合のタイムチャートである。
【００４５】
図７では、要求動作周波数の限界ラインの遅延量は“１００”であるとする。ＶＤＤ１が最大値（＝ＶＤＤ２）である時には、Ｄｅｌａｙは小さく、例えば“１”が出力される。
【００４６】
“ＶＤＤＤＯＷＮ”に遷移し、ＶＤＤ１を順次低下させると、Ｄｅｌａｙが“１００”を超える前に、ＶＤＤ１はＶＤＤｍｉｎより低くなる。そして、ＶＤＤ１をＤｅｌａｙが“１００”の付近になるように制御すると、ＶＤＤ１は常時ＶＤＤｍｉｎより低くなり、レベルシフタは動作しなくなる。
【００４７】
第１Ｄｏｍａｉｎ１の遅延量モニタ回路５では、ＶＤＤ１がＶＤＤｍｉｎより低くなり、レベルシフタが動作しなくなる（誤動作する）のを事前に検知できない。そのため、ＰＭＵ７は、ＶＤＤ１がＶＤＤｍｉｎより低くならないように制御することはできず、誤動作が発生する場合が起こり得る。
以下に説明する実施形態の多電源ＡＶＳ制御を行う半導体装置では、誤動作を発生しないように電源電圧を制御しながら、消費エネルギを低減する。
【００４８】
図８は、第１実施形態の半導体装置の回路構成を示す図である。
第１実施形態の半導体装置は、複数の回路ブロックを有し、複数の回路ブロックにそれぞれ電源電圧を供給する複数の電源を有し、多電源ＡＶＳ技術を適用する半導体装置である。
【００４９】
第１実施形態の半導体装置は、第１回路ブロック１と、電源６と、ＰＭＵ７と、ＰＬＬ８と、第２回路ブロック１１と、電源１５と、レベルシフタ(Level Shifter)２１および２２と、レベルシフタモニタ(Level Shifter Monitor)回路３１と、を有する。電源６、ＰＭＵ７およびＰＬＬ８は、第１回路ブロック（第１Ｄｏｍａｉｎ）１用である。電源１５は、第２回路ブロック（第２Ｄｏｍａｉｎ）１１用である。
【００５０】
第１Ｄｏｍａｉｎ１は、ＦＦ２と、組合せ論理回路３と、ＦＦ４と、遅延モニタ回路５と、出力バッファ９と、入力バッファ１０と、を有する。第２Ｄｏｍａｉｎ１１は、多数のＳＲＡＭ素子１２と、その周辺回路と、入力バッファ１３と、出力バッファ１４と、を有する。
【００５１】
言い換えれば、第１実施形態の半導体装置は、レベルシフタモニタ回路３１を設け、ＰＭＵ７が、レベルシフタモニタ回路３１の出力する警告信号Ｗａｒｎｉｎｇを制御に利用することが、前述の図３に示した半導体装置と異なり、他は同じである。そのため、レベルシフタモニタ回路３１およびＰＭＵ７について説明し、他の回路要素についての説明は省略する。レベルシフタモニタ回路３１は、レベルシフタ２１および２２と同様に、ＶＤＤ１およびＶＤＤ２を受ける。レベルシフタモニタ回路３１は、ＶＤＤ１が、レベルシフタ２１および２２が動作しなくなるレベルシフタ最小動作可能電圧（ＶＤＤｍｉｎ）を超えて小さくなる直前に警告信号Warningを出力する。さらに、レベルシフタモニタ回路３１は、ＰＭＵ７により動作状態（オン／オフ）が制御される。
【００５２】
まず、レベルシフタモニタ回路３１による警告信号Ｗａｒｎｉｎｇの生成と、それを利用したＰＭＵ７による制御について説明する。
図９は、第１実施形態で実行されるＡＶＳ技術における制御を説明する図である。図９の上側は、電源電圧ＶＤＤの変化に対する回路（トランジスタ）の遅延量Ｄｅｌａｙの変化を示し、トランジスタの動作速度がＳｌｏｗの場合とＦａｓｔの場合を示している。図９の下側は、電源電圧ＶＤＤの変化に対する回路消費エネルギの変化例を示し、トランジスタの動作速度がＳｌｏｗの場合とＦａｓｔの場合を示している。図９の上側は、図６の（Ｂ）と同じであり、Ｄｅｌａｙが要求動作周波数ラインより小さく、ＶＤＤ１がレベルシフタ最小動作可能電圧より大きい範囲が動作可能範囲であり、ＶＤＤ１がこの範囲内に入るように制御を行う。ＶＤＤ１がレベルシフタ最小動作可能電圧より小さくなるとレベルシフタに誤動作が発生し、動作中に誤動作することは望ましくないので、レベルシフタ最小動作可能電圧より少し大きい電圧を第１余裕電圧として設定する。そして、レベルシフタモニタ回路３１は、ＶＤＤ１が第１余裕電圧より低くなると誤動作して警告信号Ｗａｒｎｉｎｇを発生する。
【００５３】
前述の図６のＡＶＳ技術によれば、図９の下側に示すように、Ｆａｓｔのトランジスタの場合、ＶＤＤ１を大きく低下させても、遅延量Ｄｅｌａｙは要求動作周波数ラインより小さいため、ＶＤＤ１はＸで示す電圧まで低下される。しかしこの状態では、レベルシフタが動作しなくなる。これに対して、第１実施形態では、ＶＤＤ１を低下させる場合に、レベルシフタモニタ回路３１が警告信号Ｗａｒｎｉｎｇを発生すると、すなわちＶＤＤ１が第１余裕電圧（図９でＹで示す点）より低下すると、ＶＤＤ１を逆に単位量上昇させるように制御する。これにより、ＶＤＤ１がレベルシフタ最小動作可能電圧より小さくなることはなく、レベルシフタ２１および２２は正常に動作する。
【００５４】
以上説明した第１実施形態のＡＶＳ制御をまとめると、レベルシフタモニタ回路３１が、ＶＤＤ１がレベルシフタ最小動作可能電圧（ＶＤＤｍｉｎ）まで低下する前に警告信号Ｗａｒｎｉｎｇを発生する。
さらに、ＰＭＵ７は、警告信号Ｗａｒｎｉｎｇを受け取ったら、電源６にＶＤＤ１を上げるように指示を出す。
【００５５】
図１０は、レベルシフタモニタ回路３１の構成例を示すブロック図である。
レベルシフタモニタ回路３１は、入力信号生成回路３２と、レプリカ回路３３と、誤動作回路３４と、比較回路３５と、を有する。入力信号生成回路３２は、ＰＭＵ７からの制御信号ＥＮが高レベル(High)の時に、０／１に交互に変化するＶＤＤ１用の信号を発生する。レプリカ回路３３は、レベルシフタ２１と同じ回路構成および特性を有する回路で、ＶＤＤ１およびＶＤＤ２を供給され、入力信号生成回路３２から入力するＶＤＤ１用の信号をＶＤＤ２用の信号にレベルシフトする。誤動作回路３４は、レベルシフタ２１と同じ回路構成を有し、ＶＤＤ１およびＶＤＤ２を供給され、入力信号生成回路３２から入力するＶＤＤ１用の信号をＶＤＤ２用の信号にレベルシフトするが、ＶＤＤ１が第１余裕電圧より低くなると誤動作する。言い換えれば、誤動作回路３４は、レプリカ回路３３が誤動作する電圧より高い電圧で誤動作する。比較回路３５は、レプリカ回路３３の出力する０／１に交互に変化するＶＤＤ２用の信号と、誤動作回路３４の出力する０／１に交互に変化するＶＤＤ２用の信号とが、一致するかを判定する。レプリカ回路３３と誤動作回路３４は、ともにレベルシフタであり、入力信号生成回路３２から同じ信号が入力される。したがって、レプリカ回路３３と誤動作回路３４が共に正常に動作する場合には、比較回路３５は、一致を検出する。もし、比較回路３５の出力Ｙが不一致を示す場合には、レプリカ回路３３と誤動作回路３４の一方が誤動作している、具体的にはより高いＶＤＤ１で誤動作する誤動作回路３４が誤動作したと判定される。
【００５６】
図１１は、レベルシフタモニタ回路３１のより詳細な構成例を示す回路図である。
入力信号生成回路３２は、ＮＡＮＤゲート４１と、ＦＦ４２と、インバータ４３と、を有する。ＮＡＮＤゲート４１は、ＰＭＵ７からの制御信号ＥＮが高レベルの時に、ＰＬＬ８からの内部クロックＣＬＫを通過させてＶＤＤ１用の信号として出力し、ＥＮが低レベルの時には、遮断して高レベルに固定した信号を出力する。ＦＦ４２とインバータ４３は、１／２分周回路を形成し、ＥＮが高レベルの時には内部クロックＣＬＫを１／２分周した信号を出力する。
【００５７】
レプリカ回路３３は、レベルシフタ２１と同じ回路構成および特性を有するレベルシフタ５１を有し、入力信号を、ＶＤＤ２用の信号にレベルシフトしてＹＬＳとして出力する。
誤動作回路３４は、レベルシフタ２１と同じ回路構成および特性を有するレベルシフタ６１を有し、入力信号を、ＶＤＤ２用の信号にレベルシフトしてＹＬＳＷＲとして出力するが、ＶＤＤ１が、ＶＤＤｍｉｎより高い第１余裕電圧より低くなると誤動作する。言い換えれば、ＶＤＤ１を低下させた場合に、レベルシフタ６１は、レベルシフタ５１より先に誤動作する。
【００５８】
比較回路３５は、ＹＬＳとＹＬＳＷＲの一致を検出する排他的論理和ゲート（ＥＸＯＲ）７１と、その結果をＣＬＫに同期して取り込んで保持し、Ｙとして出力するＦＦ７２と、を有する。
【００５９】
図１２は、誤動作回路３４の構成例を示す図である。
図１２の（Ａ）は、レベルシフタ２１と同じ構成のレベルシフタ６１を、ＶＤＤ１およびＶＤＤ２には、レベルシフタ２１と同様に直接接続するが、ＧＮＤには抵抗Ｒ１を介して接続したものである。これにより、レベルシフタ６１に供給される電源電圧が実効的に低下し、レベルシフタ６１は、ＶＤＤ１が、ＶＤＤｍｉｎより高い第１余裕電圧より低くなると誤動作する。
【００６０】
図１２の（Ｂ）は、レベルシフタ２１と同じ構成のレベルシフタ６１を、ＶＤＤ２およびＧＮＤには、レベルシフタ２１と同様に直接接続するが、ＶＤＤ１には抵抗Ｒ２を介して接続したものである。これにより、レベルシフタ６１に実行的に供給される電源電圧ＶＤＤ１が低下し、レベルシフタ６１は、ＶＤＤ１が、ＶＤＤｍｉｎより高い第１余裕電圧より低くなると誤動作する。
【００６１】
図１３は、図１１のレベルシフタモニタ回路３１の動作シミュレーションの結果を示す図である。ＥＮを高レベルにして、ＶＤＤ１が高い電圧であると、レプリカ回路３３の出力ＹＬＳおよび誤動作回路３４の出力ＹＬＳＷＲは０／１に交互に変化する。そのため、比較回路３５の出力Ｙは低レベル（０）である。ＶＤＤ１を徐々に低下させると、レプリカ回路３３の出力ＹＬＳは依然０／１に交互に変化するが、誤動作回路３４の出力ＹＬＳＷＲは高レベルにならなくなる。そのため、比較回路３５の出力Ｙは０／１に交互に変化し、警告信号Ｗａｒｎｉｎｇが生成される。
【００６２】
このように、誤動作回路３４が正常に動作する第１余裕電圧は、レプリカ回路３３が正常に動作する動作可能最小電圧ＶＤＤｍｉｎよりも高い。このため、レベルシフタモニタ回路３１は、レプリカ回路３３が正常に動作しなくなる前に(マージンをもって)警告信号Ｗａｒｎｉｎｇを出力する。
【００６３】
図１４は、第１実施形態の多電源ＡＶＳ技術を適用する半導体装置の動作シーケンスを示す動作状態(State)遷移図である。この遷移図は、第１Ｄｏｍａｉｎ１にのみ関係する。
【００６４】
図４に示すように、“ＰＯＷＥＲＦＵＬＬ”、“ＭＯＮＩＴＯＲＯＮ”、“ＶＤＤＤＯＷＮ”および“ＶＤＤＵＰ”の状態が存在し、その間を遷移する。
“ＰＯＷＥＲＦＵＬＬ”状態では、レベルシフタ２１、２２およびＶＤＤ１に接続される第１Ｄｏｍａｉｎ１の内部回路の動作が確実に保障できる高い電圧にＶＤＤ１の電圧を設定する。例えば、ＶＤＤ１＝１．２Ｖにする。これにより、回路に誤動作を生じることなく電源制御を行うことが可能になる。
【００６５】
“ＭＯＮＩＴＯＲＯＮ”状態では、ＰＭＵ７がＥＮを高レベル（ＶＤＤ１）にして、遅延モニタ回路５およびレベルシフタモニタ回路３１を起動する。
“ＶＤＤＤＯＷＮ”状態では、一定周期ごとにＰＭＵ７が電源６にＶＤＤ１を所定量ずつ下げる命令を繰り返し出す。例えば、ＰＭＵ７は、１０μ秒ごとにＶＤＤ１＝ＶＤＤ１−２５ｍＶとする命令を出す。ここで、トリガ(Trigger)ＴＮの時には“ＶＤＤＤＯＷＮ”状態を維持し、トリガＴＷの時には“ＶＤＤＵＰ”状態に遷移する。
【００６６】
“ＶＤＤＵＰ”状態では、一定周期ごとにＰＭＵ７が電源６にＶＤＤ１を所定量ずつ上げる命令を繰り返し出す。例えば、ＰＭＵ７は、１０μ秒ごとにＶＤＤ１＝ＶＤＤ１＋２５ｍＶとする命令を出す。ここで、トリガＴＮの時には“ＶＤＤＤＯＷＮ”状態に遷移し、トリガＴＷの時には“ＶＤＤＵＰ”状態を維持する。
【００６７】
トリガＴＮは、遅延モニタ回路５の出力Ｄｅｌａｙが要求動作周波数ラインを越えず、且つレベルシフタモニタ回路３１が警告信号Ｗａｒｎｉｎｇを出力しない場合に出力される。
トリガＴＷは、遅延モニタ回路５の出力Ｄｅｌａｙが要求動作周波数ラインを越えるか、またはレベルシフタモニタ回路３１が警告信号Ｗａｒｎｉｎｇを出力する場合に出力される。
【００６８】
図１５は、電源制御回路(PMU: Power Management Unit)７の回路構成を示すブロック図である。
ＰＭＵ７は、トリガ(Trigger)生成部８１と、電源(Power Supply)制御部８４と、を有する。トリガ(Trigger)生成部８１は、カウンタ８２と、コンパレータ（比較器）８３と、を有する。カウンタ８２は、システムクロックＳＹＳＣＬＫが高レベルの間動作状態になり、レベルシフタモニタ回路３１の出力する図１３に示す警告信号Ｗａｒｎｉｎｇをカウントする。コンパレータ８３は、カウンタ８２のカウント値を所定の値と比較して多い場合に内部トリガＴＲＩＧを出力する。これにより、レベルシフタモニタ回路３１の出力Ｙへのノイズによる影響を除いて、警告信号Warningを確実に判定できる。
【００６９】
電源制御部８４は、内部トリガＴＲＩＧに応じて図１４のトリガＴＮまたはＴＷに対応する電源６の制御信号Ｕｐ／Ｄｏｗｎを生成して出力する。
【００７０】
図１６は、電源制御回路（ＰＭＵ）７の動作を示すタイムチャートである。
“ＰＯＷＥＲＦＵＬＬ”では、ＶＤＤ１が上昇し、例えば、最大値１．２Ｖまで上昇する。この間、レベルシフタモニタ３１は動作状態になっていないので、レベルシフタモニタ３１の出力Ｙは低レベルで、カウンタ８２の出力するカウント値はゼロであり、コンパレータ８３の出力するＴＲＩＧも低レベルである。
【００７１】
“ＭＯＮＩＴＯＲＯＮ”では、ＰＭＵ７が遅延モニタ回路５およびレベルシフタモニタ３１を動作状態にする信号ＥＮをオン(High)にする。これに応じて、遅延モニタ回路５が遅延量Ｄｅｌａｙを測定して出力し、レベルシフタモニタ３１が一致検出結果を出力Ｙとして出力する。ＶＤＤ１が１．２Ｖで十分に高いので、レベルシフタモニタ３１の出力Ｙは低レベルで、カウンタ８２の出力するカウント値はゼロであり、コンパレータ８３の出力するＴＲＩＧも低レベルである。
【００７２】
Ｄｅｌａｙが限界ラインより下で、且つレベルシフタモニタ３１の出力Ｙは低レベルであるので、“ＶＤＤＤＯＷＮ”に遷移し、ＶＤＤ１を単位量低下させる。これを繰り返すと、ＶＤＤ１が低下する。前述のように遅延量モニタ５の出力するＤｅｌａｙも増加するが、ここではＤｅｌａｙが要求動作周波数ラインを超える前に、ＶＤＤ１が第１余裕電圧を下回るものとして説明する。ＶＤＤ１が第１余裕電圧を下回ると、レベルシフタモニタ３１の誤動作回路３４が誤動作し、レベルシフタモニタ３１の出力Ｙが、０／１を繰り返すようになる。これに応じて、カウンタ８２の出力するカウント値が増加し（ここでは５になる）、基準値（例えば１）を超えるので、ＴＲＩＧが高レベルになり、電源制御部８４はＶＤＤ１の増加を指示する指令Ｕｐを出力する。これに応じて、状態は“ＶＤＤＵＰ”に遷移し、ＶＤＤ１を単位量上昇させる。ＶＤＤ１が上昇するので、レベルシフタモニタ３１の出力Ｙはゼロに固定され、カウント値がゼロになるので、状態は“ＶＤＤＤＯＷＮ”に遷移する。以下このような動作を繰り返す。これにより、ＶＤＤ１がレベルシフタ最小動作可能電圧より低くなること無しに、その近傍（第１余裕電圧の前後）になるように制御される。
【００７３】
以上、第１実施形態の半導体装置を説明した。第１実施形態では、第１Ｄｏｍａｉｎ１の遅延量と、レベルシフタが動作可能であるかの判定結果との両方に基づいてＶＤＤ１を制御する。特に、動作周波数が低くなり（例えば数１００ｋＨｚ以下）、遅延量が大きくても第１Ｄｏｍａｉｎ１の内部回路は正常に動作するため、ＶＤＤ１が低電圧まで制御される場合がある。このような場合、レベルシフタが動作しなくなり、半導体装置は正常に動作しなくなる。第１実施形態の半導体装置は、レベルシフタが動作しなくなる電圧までＶＤＤ１が下がることはない。このように、第１実施形態によれば、信頼性の高い多電源ＡＶＳ電源制御技術が提供される。
【００７４】
第１実施形態の半導体装置では、図１６に示すように、状態が“ＶＤＤＤＯＷＮ”と“ＶＤＤＵＰ”の間を頻繁に遷移することになる。そのため、第１Ｄｏｍａｉｎ１に供給されるＶＤＤ１にリップル（小さな電圧変動）がのってしまう。これは、第１Ｄｏｍａｉｎ１の安定動作の点からは好ましくない。
次に説明する第２実施形態では、ＶＤＤ１の頻繁な変動が抑制される。
【００７５】
図１７は、第２実施形態の半導体装置のレベルシフタモニタ回路３１の回路構成を示す図である。第２実施形態の半導体装置は、レベルシフタモニタ回路３１が異なり、ＰＭＵ７が、レベルシフタモニタ回路３１の出力するべつの信号も考慮して制御を行うことが、第１実施形態と異なり、他は同じである。
【００７６】
第２実施形態のレベルシフタモニタ回路３１では、誤動作回路３４が、レベルシフタ６１に加えて、レベルシフタ６２を有する。レベルシフタ６２は、入力信号を、ＶＤＤ２用の信号にレベルシフトして出力するが、ＶＤＤ１が、第１余裕電圧より高い第２余裕電圧より低くなると誤動作する。言い換えれば、ＶＤＤ１を低下させた場合に、レベルシフタ６２は、レベルシフタ６１より先に誤動作する。
【００７７】
さらに、第２実施形態のレベルシフタモニタ回路３１では、比較回路３５が、ＥＸＯＲ７１およびＦＦ７２に加えて、ＥＸＯＲ７３およびＦＦ７４を有する。ＥＸＯＲ７３は、レベルシフタ５１の出力するＹＬＳとレベルシフタ６２の出力の一致を検出する。ＦＦ７４は、ＥＸＯＲ７３の比較結果をＣＬＫに同期して取り込んで保持し、ホールド信号ＹＨとして出力する。なお、ＦＦ７２は、ＥＸＯＲ７１の比較結果をＣＬＫに同期して取り込んで保持し、警告信号ＹＷとして出力する。
【００７８】
図１７の第１余裕電圧より高い第２余裕電圧より低くなると誤動作するレベルシフタ６２は、例えば、図１２の（Ａ）の抵抗Ｒ１および（Ｂ）の抵抗Ｒ２の抵抗値を、より大きな値とすることにより実現される。
【００７９】
図１８は、第２実施形態の多電源ＡＶＳ技術を適用する半導体装置の動作シーケンスを示す動作状態(State)遷移図である。この遷移図は、第１Ｄｏｍａｉｎ１にのみ関係する。
【００８０】
図１４と比較して明らかなように、第２実施形態の動作状態遷移図は、“ＶＤＤＨＯＬＤ”状態が追加され、トリガ(Trigger)ＴＨが追加されたことが、第１実施形態と異なり、他は同じである。したがって、異なる点について説明する。
【００８１】
状態“ＶＤＤＨＯＬＤ”は、ＶＤＤ１の値を維持する。トリガＴＨは、遅延モニタ回路５の出力Ｄｅｌａｙが要求動作周波数ラインを越えず、且つレベルシフタモニタ回路３１がホールド信号ＹＨを出力する場合に出される。具体的には、レベルシフタモニタ回路３１の出力ＹＷにはパルスが出力されておらず、出力ＹＨにはパルスが出力されている場合に出される。
【００８２】
“ＶＤＤＨＯＬＤ”では、トリガＴＨが出される時にはその状態を維持し、トリガＴＮが出されると“ＶＤＤＤＯＷＮ”に遷移し、トリガＴＷが出されると “ＶＤＤＵＰ”に遷移する。
【００８３】
“ＶＤＤＤＯＷＮ”では、トリガＴＮが出される時にはその状態を維持し、トリガＴＨが出されると“ＶＤＤＨＯＬＤ”に遷移し、トリガＴＷが出されると “ＶＤＤＵＰ”に遷移する。
【００８４】
“ＶＤＤＵＰ”では、トリガＴＷが出される時にはその状態を維持し、トリガＴＨが出されると“ＶＤＤＨＯＬＤ”に遷移し、トリガＴＮが出されると “ＶＤＤＤＯＷＮ”に遷移する。
【００８５】
図１９は、第２実施形態の半導体装置の電源制御回路(PMU: Power Management Unit)７の回路構成を示すブロック図である。
第２実施形態のＰＭＵ７は、トリガ生成部８１が、カウンタ８５およびコンパレータ８６をさらに有し、電源制御部８７が、コンパレータ８３および８６の出力から電源６の制御信号Ｕｐ／Ｄｏｗｎ／Ｈｏｌｄを生成することが、第１実施形態と異なる。他は、第１実施形態と同じである。
【００８６】
カウンタ８５は、ＦＦ７４の出力ＹＨが入力することが異なるのみで、他はカウンタ８２と同じである。コンパレータ８６は、コンパレータ８３と同じである。コンパレータ８３の出力をＴＲＩＧＷとし、コンパレータ８６の出力をＴＲＩＧＨとする。したがって、ＦＦ７４の出力ＹＨにパルスが生じると、ＴＲＩＧＨは高レベルになる。
【００８７】
電源制御部８７は、ＴＲＩＧＷおよびＴＲＩＧＨに基づいて、図１８で説明したシーケンスにしたがって、電源６の制御信号Ｕｐ／Ｄｏｗｎ／Ｈｏｌｄを生成する。
【００８８】
図２０および図２１は、第２実施形態の電源制御回路（ＰＭＵ）７の動作を示すタイムチャートである。
開始から“ＶＤＤＤＯＷＮ”に遷移するまでは、図１６の第１実施形態と同じなので、説明は省略する。
【００８９】
“ＶＤＤＤＯＷＮ”では、ＶＤＤ１を単位量低下させる。これを繰り返すと、ＶＤＤ１が低下する。前述のように遅延量モニタ５の出力するＤｅｌａｙも増加するが、ここではＤｅｌａｙが要求動作周波数ラインを超える前に、第２余裕電圧および第１余裕電圧を超えるとする。これに応じて、誤動作回路３４のレベルシフタ６２が誤動作し、レベルシフタモニタ３１の出力ＹＨが、０／１を繰り返すようになる。これに応じて、カウンタ８５の出力するカウント値ＣＯＵＮＴＨが増加し（ここでは４になる）、基準値（例えば３）を超えるので、ＴＲＩＧＨが高レベルになる。この間、誤動作回路３４のレベルシフタ６１は正常に動作し、レベルシフタモニタ３１の出力ＹＷは、低レベルに維持され、カウンタ８２のカウント値ＣＯＵＮＴＷはゼロであり、ＴＲＩＧＷは低レベルを維持する。したがって、電源制御部８４はＶＤＤ１の維持を指示する指令ＨＯＬＤを出力し、これに応じて、状態は“ＶＤＤＨＯＬＤ”に遷移する。この後、ＶＤＤ１の電圧値は維持されるので、出力ＹＨは０／１を繰り返すのでＴＲＩＧＨは高レベルを維持し、出力ＹＷは低レベルに維持されるのでＴＲＩＧＷは低レベルを維持する。したがって、状態は“ＶＤＤＨＯＬＤ”に維持され、電源制御部８４はＶＤＤ１の維持を指示する指令ＨＯＬＤを出力するので、ＶＤＤ１は変化しない。このように、ＶＤＤ１は安定し、ＶＤＤ１にリップルは生じない。
【００９０】
図２１に示すように、何らかの理由（例えば温度上昇）で、動作可能最小電圧ＶＤＤｍｉｎが上昇し、ＶＤＤ１がＶＤＤｍｉｎより低くなるとする。この場合、誤動作回路３４のレベルシフタ６１も誤動作し、レベルシフタモニタ３１の出力ＹＷは、０／１を繰り返すようになる。これに応じて、カウンタ８２の出力するカウント値ＣＯＵＮＴＷが増加し（ここでは２になる）、基準値（例えば１）を超えるので、ＴＲＩＧＷが高レベルになる。
この時、誤動作回路３４のレベルシフタ６２は依然誤動作し、レベルシフタモニタ３１の出力ＹＨは０／１を繰り返しており、カウント値ＣＯＵＮＴＨは基準値以上（ここでは５）であり、ＴＲＩＧＨは高レベルになる。したがって、電源制御部８４はＶＤＤ１の増加を指示する指令Ｕｐを出力し、これに応じて、状態は“ＶＤＤＵＰ”に遷移し、ＶＤＤ１を単位量上昇させる。ＶＤＤ１が上昇するので、レベルシフタモニタ３１の出力ＹＷは低レベルになり、カウント値がゼロになるので、状態は“ＶＤＤＨＯＬＤ”に遷移する。以下このような動作を繰り返す。これにより、ＶＤＤ１は、第１余裕電圧と第２余裕電圧の間に安定的に維持され、第１余裕電圧より低くなった場合も第２余裕電圧より高くなった場合も、第１余裕電圧と第２余裕電圧の間に戻るように制御される。
【００９１】
以上第１および第２実施形態を説明したが、各種の変形例があり得るのはいうまでもない。例えば、第２回路ブロック（第２Ｄｏｍａｉｎ）１１は、ＳＲＡＭ以外でもよい。第１および第２実施形態では、第２回路ブロック（第２Ｄｏｍａｉｎ）１１に供給する電源電圧ＶＤＤ２は固定であったが、負荷に応じてＶＤＤ２を変化させてもよい。
さらに、誤動作回路は、動作可能最小電圧ＶＤＤｍｉｎより高い電圧で誤動作し、誤動作が容易に検知できれば、どのような回路でもよい。
【００９２】
以上、実施形態を説明したが、ここに記載したすべての例や条件は、発明および技術に適用する発明の概念の理解を助ける目的で記載されたものである。特に記載された例や条件は発明の範囲を制限することを意図するものではなく、明細書のそのような例の構成は発明の利点および欠点を示すものではない。発明の実施形態を詳細に記載したが、各種の変更、置き換え、変形が発明の精神および範囲を逸脱することなく行えることが理解されるべきである。
【符号の説明】
【００９３】
１    第１回路ブロック（第１Ｄｏｍａｉｎ）
２、４    ＦＦ（フリップフロップ）
３    組合せ論理回路(Combinational Logic)
５    遅延モニタ回路
６    第１回路ブロック用電源(Power Supply)
７    電源制御回路(PMU: Power Management Unit)
８    ＰＬＬ
１１    第２回路ブロック（第２Ｄｏｍａｉｎ）
１２    ＳＲＡＭ素子
２１、２２    レベルシフタ
３１    レベルシフタモニタ回路
３３    レプリカ回路
３４    誤動作回路
３５    比較回路
【図１】
2015119311.tif 000003
【図２】
2015119311.tif 000004
【図３】
2015119311.tif 000005
【図４】
2015119311.tif 000006
【図５】
2015119311.tif 000007
【図６】
2015119311.tif 000008
【図７】
2015119311.tif 000009
【図８】
2015119311.tif 000010
【図９】
2015119311.tif 000011
【図１０】
2015119311.tif 000012
【図１１】
2015119311.tif 000013
【図１２】
2015119311.tif 000014
【図１３】
2015119311.tif 000015
【図１４】
2015119311.tif 000016
【図１５】
2015119311.tif 000017
【図１６】
2015119311.tif 000018
【図１７】
2015119311.tif 000019
【図１８】
2015119311.tif 000020
【図１９】
2015119311.tif 000021
【図２０】
2015119311.tif 000022
【図２１】
2015119311.tif 000023