(57)【要約】【課題】電源電圧が非常に低電圧であっても正確に動作するＤＶＦＳ技術を適用した半導体装置の実現。【解決手段】複数の回路部分11A,11Bと、電源電圧VDDを供給するグローバル電源25と、ローカル電源26とグローバル電源を接続する複数の電源供給回路と、ローカル電源の電圧値が所望の値になるように複数の電源供給回路を制御する複数のローカル電源制御回路と、を有し、各電源供給回路は、離散化された複数の供給スイッチ21A-21Gを有し、各ローカル電源制御回路は、ローカル電源の電圧値の変化に応じて遅延量が変化する遅延パスを有し、遅延パスの遅延量に応じて出力の論理値が変化する遅延モニタ回路41と、遅延モニタ回路の出力の論理値に基づいて離散化された複数の供給スイッチのオン数を制御するスイッチ制御回路42と、を有する半導体装置。【選択図】図６
2014057265.tif 000002
【特許請求の範囲】
【請求項１】
複数の回路部分と、
外部から供給される電源電圧を供給するグローバル電源と、
前記複数の回路部分のローカル電源と前記グローバル電源を接続する複数の電源供給回路と、
前記複数の回路部分に対応して設けられ、前記複数の回路部分の前記ローカル電源の電圧値が所望の値になるように前記複数の電源供給回路を制御する複数のローカル電源制御回路と、を備え、
前記複数の電源供給回路のそれぞれは、離散化された複数の供給スイッチを備え、
前記複数のローカル電源制御回路のそれぞれは、
前記ローカル電源の電圧値の変化に応じて遅延量が変化する遅延パスを有し、前記遅延パスの遅延量に応じて出力の論理値が変化する遅延モニタ回路と、
前記遅延モニタ回路の前記出力の論理値に基づいて前記離散化された複数の供給スイッチのオン数を制御するスイッチ制御回路と、を備えることを特徴とする半導体装置。
【請求項２】
前記遅延パスは、各回路部分が正常に動作する限界動作周波数を決めるクリティカルパス遅延に基づく模擬遅延パスを含むことを特徴とする請求項１に記載の半導体装置。
【請求項３】
前記遅延モニタ回路は、前記回路部分の動作周波数で変化する信号が、前記模擬遅延パスで遅延された場合に、正常動作するかどうかを判定する判定回路を有することを特徴とする請求項２に記載の半導体装置。
【請求項４】
前記離散化された複数の供給スイッチは、離散化された複数のＭＯＳトランジスタで形成されることを特徴とする請求項１から３のいずれか１項記載の半導体装置。
【請求項５】
前記遅延モニタ回路が、前記遅延パスの遅延量が前記回路部分の正常遅延量を超えていると判定した場合には、前記スイッチ制御回路は、前記離散化された複数の供給スイッチのオン数を増加するように制御し、正常遅延量を超えていないと判定した場合には、前記離散化された複数の供給スイッチのオン数が減少するように制御することを特徴とする請求項１から４のいずれか１項記載の半導体装置。
【請求項６】
前記遅延モニタ回路は、前記ローカル電源の電圧値の変化に応じて遅延量が変化する第１遅延パスおよび第２遅延パスを備え、前記第２遅延パスの遅延量は前記第１遅延パスの遅延量より大きく、
前記遅延モニタ回路は、前記第１遅延パスの遅延量に応じて論理値が変化する第１出力と、前記第２遅延パスの遅延量に応じて論理値が変化する第２出力と、を出力し、
前記スイッチ制御回路は、
前記第１出力および前記第２出力の両方が、正常遅延量を超えていることを示している時には、前記離散化された複数の供給スイッチのオン数を増加させ、
前記第１出力および前記第２出力の両方が、正常遅延量を超えていないことを示す時には、前記離散化された複数の供給スイッチのオン数を増加させ、
前記第２出力が正常遅延量を超えているが、前記第１出力が正常遅延量を超えていないことを示す時には、前記離散化された複数の供給スイッチのオン数を維持するように制御することを特徴とする請求項１記載の半導体装置。
【請求項７】
前記スイッチ制御回路は、対応する前記回路部分を停止して前記ローカル電源の供給を停止する場合には、前記離散化された複数の供給スイッチを全てオフにし、対応する前記回路部分を再び動作させる場合には、一旦前記離散化された複数の供給スイッチを全てオンにすることを特徴とする請求項１から６のいずれか１項記載の半導体装置。
【請求項８】
前記スイッチ制御回路は、対応する前記回路部分へのクロック供給を停止した後、再び前記クロックの供給を行い場合には、一旦前記離散化された複数の供給スイッチを全てオンにすることを特徴とする請求項１から７のいずれか１項記載の半導体装置。
【請求項９】
前記遅延モニタ回路が、前記遅延パスの遅延量が正常遅延量を超えていると判定した場合には、前記回路部分へのクロック供給を停止し、前記遅延パスの遅延量が正常遅延量を超えていないと判定した場合には、前記回路部分へのクロック供給を再開する請求項１から８のいずれか１項記載の半導体装置。
【請求項１０】
前記回路部分へ供給するクロックの周波数が変更され、供給するクロックの周波数が増加するように変更される場合には、一旦前記離散化された複数の供給スイッチを全てオンにすることを特徴とする請求項１から９のいずれか１項記載の半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置に関する。
【背景技術】
【０００２】
近年、半導体装置（ＬＳＩ）の低消費電力化の要求がより一層強くなってきている。そこで、ＬＳＩ内部を複数の回路部分（回路ブロック）に分割し、負荷が軽くなった回路は動作周波数を下げて消費電力を低減することが行われる。
【０００３】
図１は、回路部分ごとに動作周波数を変更可能にしたＬＳＩの概略構成と動作を示す図であり、（Ａ）が回路の概略構成を、（Ｂ）が動作を示すタイムチャートである。
【０００４】
図１の（Ａ）に示すように、ＬＳＩ１０は、第１回路ブロック１１Ａおよび第２回路ブロック１１Ｂを含む複数の回路ブロックと、電力制御回路(PMU: Power Management Unit)１２と、を有する。ＰＭＵ１２は、第１回路ブロック１１Ａにはクロックｃｋａを、第２回路ブロック１１Ｂにはクロックｃｋｂを供給する。ＰＭＵ１２は、システムクロックｃｌｋを分周して動作クロックを発生し、各回路ブロックの負荷状態に対応して指示されるクロックモードに応じて各回路ブロックに供給するクロックｃｋａおよびｃｋｂを変化させる。このように、ＰＭＵ１２は、必要な処理速度を維持しながら電力消費を低減するように各回路ブロックを制御する。
【０００５】
図１の（Ｂ）は、第１回路ブロック１１Ａの動作状態の変化例を示す。例えば、第１回路ブロック１１Ａは、１００〜４００ＭＨｚの動作周波数で動作し、短時間に多量のデータを処理する高負荷状態では４００ＭＨｚの動作周波数で動作し、比較的長時間に少量のデータを処理する低負荷状態では１００ＭＨｚの動作周波数で動作する。言い換えれば、第１回路ブロック１１Ａに供給されるクロックｃｋａは、負荷が大きい場合には高周波数となり、負荷が小さい場合には低周波数となる。第１回路ブロック１１Ａの消費電力は、４００ＭＨｚで動作する時の方が、１００ＭＨｚで動作する時より大きくなる。
同様に、第２回路ブロック１１Ｂは、負荷に応じて５０〜２００ＭＨｚの動作周波数で動作する。
【０００６】
図１に示したＬＳＩは、各回路ブロックに供給するクロック周波数を変化させるが、各回路ブロックに供給する電源電圧は一定（図１の（Ｂ）では１．２Ｖ）である。
回路ブロックの消費電力は、動作周波数に応じて変化するが、供給される電源電圧に応じても変化する。そこで、回路ブロックの負荷状況に応じて、動作周波数だけでなく、積極的に供給電圧を下げて低電力化するという技術が採用される例が多くなってきている。このような技術はＤＶＦＳ（Dynamic Voltage and Frequency Scaling）技術と呼ばれる。
【０００７】
図２は、ＤＶＦＳ技術を適用したＬＳＩの概略構成と動作を示す図であり、（Ａ）がＬＳＩの概略構成を、（Ｂ）が動作を示すタイムチャートである。
【０００８】
図２の（Ａ）に示すように、ＬＳＩ１０は、第１回路ブロック１１Ａおよび第２回路ブロック１１Ｂを含む複数の回路ブロックと、ＰＭＵ１２と、ＶＲＥＦ発生回路１６と、を有する。
【０００９】
第１回路ブロック１１Ａは、降圧回路(LDO: Low Drop Out regulator)１５Ａを有する。第２回路ブロック１１Ｂは、ＬＤＯ回路１５Ｂを有する。ＶＲＥＦ発生回路１６は、ＬＤＯ１５Ａおよび１５Ｂに供給する参照電位ＶＲＥＦを発生する。ＰＭＵ１２は、第１回路ブロック１１Ａにクロックｃｋａを供給すると共に、供給電圧の制御信号ｃａをＬＤＯ１５Ａに供給する。また、ＰＭＵ１２は、第２回路ブロック１１Ｂにクロックｃｋｂを供給すると共に、供給電圧の制御信号ｃｂをＬＤＯ１５Ｂに供給する。ＰＭＵ１２は、外部からのＤＶＦＳモードで指示される各回路ブロックの負荷状態に応じて供給するクロックの周波数および供給する電圧を変化させ、必要な処理速度を維持しながら電力消費を低減するように各回路ブロックを制御する。
【００１０】
ＤＶＦＳ技術を適用する場合、回路ブロックごとにＬＳＩの外部から電源電圧を印加すると、ＬＳＩ以外の部品点数が多くなり、コスト増加を招く。そのため、図２の（Ａ）に示すように、ＬＳＩ１０内部に、回路ブロックに対応して降圧回路（ＬＤＯ）を搭載することにより、外部電源は単一にしてＬＳＩ内部で様々な電圧を発生させ、各回路へ必要な電圧を供給する機構を採用するのが一般的である。
【００１１】
図２の（Ｂ）は、第１回路ブロック１１Ａの動作状態の変化例を示す。例えば、第１回路ブロック１１Ａは、１００〜４００ＭＨｚの動作周波数および０．８Ｖ〜１．２Ｖの供給電圧で動作する。第１回路ブロック１１Ａは、高負荷状態では、１．２Ｖの供給電圧および４００ＭＨｚの動作周波数で動作し、低負荷状態では、０．８Ｖの供給電圧および１００ＭＨｚの動作周波数で動作する。
【００１２】
同様に、第２回路ブロック１１Ｂは、負荷に応じて５０〜２００ＭＨｚの動作周波数および０．８Ｖ〜１．２Ｖの供給電圧で動作する。
【００１３】
したがって、ＰＭＵ１２は、外部から指示される各回路ブロックの負荷状態を示すＤＶＦＳモードに応じて、各回路ブロックに供給するクロック周波数および供給電圧の制御信号を出力する。具体的には、ＰＭＵ１２は、第１回路ブロック１１Ａが高負荷状態の時には、４００ＭＨｚのｃｋａを供給すると共に、供給電圧を１．２ＶにするようにＬＤＯ１５Ａを制御するｃａを供給する。また、ＰＭＵ１２は、第１回路ブロック１１Ａが低負荷状態の時には、１００ＭＨｚのｃｋａを供給すると共に、供給電圧を０．８ＶにするようにＬＤＯ１５Ａを制御するｃａを供給する。第２回路ブロック１１Ｂについても同様である。
【００１４】
図２の（Ｂ）において、破線は、低負荷状態時に供給電圧を１．２Ｖに維持した場合を示し、低負荷状態時に供給電圧を１．２Ｖから０．８Ｖに変化させることにより、消費電力は１．２Ｖの場合より３３％減少する。
【００１５】
図３は、図１のクロック周波数のみを変化させる場合およびＤＶＦＳ技術を適用した場合の、第１回路ブロック１１Ａの負荷に応じたクロック周波数および供給電圧の変化を示す図である。
【００１６】
図３の（Ａ）に示すように、図１のクロック周波数のみを変化させる場合には、供給電圧は１．２Ｖで固定であり、第１回路ブロック１１Ａがその負荷を処理できる必要最小限のクロック周波数を図３の（Ａ）のようにクロックモードごとに割り振る。そして、ＰＭＵ１２は、負荷に対応したクロックモードに応じて、第１回路ブロック１１Ａに供給するクロック周波数を変化させる。具体的には、クロック周波数を、高負荷の時には４００ＭＨｚに、中負荷の時には２００ＭＨｚに、低負荷の時には１００ＭＨｚに、無負荷の時には０ＭＨｚ（すなわちクロックを供給しない）に、変化させる。
【００１７】
ＤＶＦＳ技術を適用した場合には、負荷に対応したＤＶＦＳモードに応じて、第１回路ブロック１１Ａに供給するクロック周波数を変化させると共に、ＬＤＯ１５Ａを制御して供給電圧を変化させる。そのため、図３の（Ｂ）に示すように、第１回路ブロック１１Ａが各クロック周波数で動作できる必要最小限の供給電圧値をＤＶＦＳモードごとに割り振る。つまり、第１回路ブロック１１Ａにかかる負荷状態の変化に応じて、トータルとして低電力化できるように、各ＤＶＦＳモードでクロック周波数と供給電圧の組合せを設定しておく。具体的には、クロック周波数については、高負荷の時には４００ＭＨｚに、中負荷の時には２００ＭＨｚに、低負荷の時には１００ＭＨｚに、無負荷の時には０ＭＨｚ（すなわちクロックを供給しない）に、変化させる。そして、供給電圧については、高負荷の時には１．２Ｖに、中負荷の時には１．０Ｖに、低負荷の時には０．８Ｖに、無負荷の時には０．８Ｖ以下に、変化させる。
【００１８】
図３の（Ｃ）は、横軸をクロック周波数、縦軸を供給電圧とした座標において、上記の制御による制御点を示した図であり、黒丸が図３の（Ａ）のクロック周波数のみを変化させる場合を、白丸が図３の（Ｂ）のＤＶＦＳ技術を適用した場合を示す。範囲Ｘは、回路が動作可能な範囲を示す。
【００１９】
図３の（Ｃ）の回路が動作可能な範囲では、下限の境界線に近いほど消費電力が少ない。そのため、消費電力を低減するには、制御点が動作可能な範囲の下限に近くなるように制御することが望ましい。図３の（Ａ）の供給電圧を１．２Ｖに固定する場合には、クロック周波数が４００ＭＨｚの時には制御点が動作可能な範囲の下限に近いが、２００ＭＨｚおよび１００ＭＨｚの時には制御点は動作可能な範囲の下限から離れる。
【００２０】
これに対して、ＤＶＦＳ技術を適用した場合には、クロック周波数が２００ＭＨｚの時に供給電圧が１．０Ｖに、１００ＭＨｚの時に供給電圧が０．８Ｖになり、制御点は動作可能な範囲の下限に近くなる。なお、無負荷の状態では、供給電圧を０Ｖにし、クロック周波数が０ＭＨｚ、すなわちクロックを供給しない状態にする。この状態は、動作可能な範囲外であるが、回路ブロックが動作しない状態であり、特に問題を生じない。
【００２１】
上記のように、ＤＶＦＳ技術を適用するには、様々な供給電圧値を生成し、各回路ブロックへ供給する機構が必要であり、ＬＤＯ１５Ａおよび１５Ｂが、ＰＭＵ１２の制御に応じて供給電圧値を変化させる。
【００２２】
近年、更なる低電力化のため、図２に示した外部から印加される電源電圧が１．２Ｖという高い電圧ではなく、０．５Ｖ程度という極めて低い電源電圧を印加するようになっており、そのような条件で動作するＬＤＯが望まれている。
【００２３】
図４は、これまで提案されているＬＤＯの回路例を示す図であり、ＬＤＯにより電源電圧が供給される回路ブロックを一緒に示している。
図４の（Ａ）は、アナログ型ＬＤＯ２０の回路図である。例えば、図２における第１回路ブロック１１Ａが回路ブロック１１に、ＬＤＯ１５Ａがアナログ型ＬＤＯ２０に対応する。アナログ型ＬＤＯ２０は、回路ブロック１１に対応して外部に設けられるように示しているが、回路の一部として設けてもよい。
【００２４】
アナログ型ＬＤＯ１５Ａは、供給トランジスタ２１と、差動アンプ２２と、可変抵抗２３および２４と、を有する。供給トランジスタ２１は、電圧ＶＤＤの高電位側グローバル電源線２５と回路ブロック１１のローカル電源線２６との間に設けられたＰＭＯＳトランジスタであり、ゲートに差動アンプ２２の出力ＧＡが印加される。可変抵抗２３および２４は、ローカル電源線２６と電圧ＶＳＳ（０Ｖ）の低電位側電源線２７の間に直列に接続され、ローカル電源線２６の電圧ＶＤＤＭＡとＶＳＳの分圧を出力する可変分圧回路を形成する。可変抵抗２３および２４は、ＤＶＦＳモードに応じて、抵抗値が異なる。言い換えれば、可変分圧回路は、ＤＶＦＳモードに応じて抵抗比が変更可能である。差動アンプ２２は、可変分圧回路の出力する分圧ＭＯＮＡを、図２のＶＲＥＦ発生回路１６の出力する参照電位ＶＲＥＦとの差分に応じた出力ＧＡを生成する。なお、参照符号Ｃは、ＶＤＤＭＡの間の容量を示す。
【００２５】
差動アンプ２２は、回路ブロック１１への供給電圧ＶＤＤＭＡとＶＳＳの分圧を参照電位ＶＲＥＦと比較し、ＶＤＤＭＡが、回路ブロック１１が動作するために必要最小限な電圧値（目標値）より高いか否かをアナログ的に電位比較する。そして、その比較結果に応じて、ＶＤＤＭＡが目標値よりも低ければ、供給トランジスタ２１の供給電流量を増やすように出力ＧＡをアナログ的に制御し、ＶＤＤＭＡが目標値よりも高ければ、逆に供給電流量を減らすようにＧＡをアナログ的に制御する。これにより、ＶＤＤＭＡは、常に目標値に保持される。ここで、目標値が、ＤＶＦＳモードによって異なるため、上記のように、可変抵抗２３および２４の抵抗値がＤＶＦＳモードに応じて変更され、可変分圧回路の抵抗比が変更可能になっている。したがって、ＬＤＯ１５Ａは、ＤＶＦＳモードごとに設定された目標値に向かってＶＤＤＭＡを変化させて、目標値に保持するため、動的な供給電圧の変更が実現できる。
【００２６】
アナログ型ＬＤＯは、外部から印加される電源電圧ＶＤＤが１．２Ｖ程度の場合に現在でも広く使用されているＬＤＯである。
【００２７】
しかしながら、近年、消費電力を一層低減するため、電源電圧ＶＤＤを０．５Ｖ程度に低下することが行われており、ＶＤＤＭＡは０．４Ｖ程度になり、ＶＲＥＦは０．２５Ｖに設定する。ＶＤＤが０．５Ｖにも低下すると、ＬＤＯ１５Ａを形成するトランジスタの閾値が０．４Ｖ〜０．５Ｖにあるため、サブスレッショルド領域（ＶＤＤが閾値以下になる領域）に入り、アナログ的なゲート電位制御を精度良く行うことが困難になってくる。
そこで、デジタル型ＬＤＯが提案されている。
【００２８】
図４の（Ｂ）は、デジタル型ＬＤＯ３０の回路図であり、ＬＤＯ３０により電源電圧が供給される回路ブロックを一緒に示している。例えば、図２における第１回路ブロック１１Ａが回路ブロック１１に、ＬＤＯ１５Ａがデジタル型ＬＤＯ３０に対応する。デジタル型ＬＤＯ３０も、回路ブロック１１の一部として設けてよい。
【００２９】
デジタル型ＬＤＯ３０の基本的な構成および動作は、図４の（Ａ）のアナログ型ＬＤＯ２０と同じであるが、次の点が異なる。
（１）供給トランジスタ２１が、並列に接続された複数の供給トランジスタ２１Ａ、２１Ｂ、２１Ｃ、…で形成される。
（２）差動アンプ２２が、比較結果を０または１のデジタル値として出力するコンパレータ２８で置き換えられる。
（３）コンパレータ２８の出力に応じて、複数の供給トランジスタ２１Ａ、２１Ｂ、２１Ｃ、…のオン・オフを制御するコントローラ２９が設けられる。
【００３０】
ＶＤＤＭＡが目標値よりも低ければ、例えばコンパレータ２８は０を出力し、コントローラ２９は、複数の供給トランジスタ２１Ａ、２１Ｂ、２１Ｃ、…のオン数を増やして供給電流量を増やすように制御する。逆に、ＶＤＤＭＡが目標値よりも高ければ、コンパレータ２８が１を出力し、コントローラ２９は、複数の供給トランジスタ２１Ａ、２１Ｂ、２１Ｃ、…のオン数を減らすことによって供給電流量を減らすように制御する。
【００３１】
このようなデジタル制御に変更することによって、０または１の誤動作を起こさない程度のＶＤＤレベルであればＬＤＯとして動作するようになるため、アナログ型ＬＤＯよりも低いＶＤＤで正確に動作する。
【先行技術文献】
【特許文献】
【００３２】
【特許文献１】特開２０１１−０６６７９１号公報
【非特許文献】
【００３３】
【非特許文献１】”0.5-V Input Digital LDO with 98.7% Current Efficiency and 2.7-μA Quiescent Current in 65nm CMOS”, Yasuyuki Okuma, et al., Custom Integrated Circuits Conference (CICC), Sep.19-22, 2010
【非特許文献２】”13% Power Reduction in 16b Integer Unit in 40nm CMOS by Adaptive Power Supply Voltage Control with Parity-Based Error Prediction and Detection (PEPD) and Fully Integrated Digital LDO”, Koji Hirairi, et al., International Solid-State Circuits Conference (ISSCC), Feb.19-23, 2012
【発明の概要】
【発明が解決しようとする課題】
【００３４】
しかしながら、更にＶＤＤが０．５Ｖ以下の低電圧になってくると、コンパレータ２８が２つの比較電位の微妙な高低を判断することが困難になってくる領域にかかってくるため、やはり正確な判定が行えないことが問題となる。また、アナログ型ＬＤＯやデジタル型ＬＤＯに関わらず、電位比較のための参照電位ＶＲＥＦをノイズから保護するための容量素子や、分圧回路を構成する抵抗素子が必要になることも、チップ占有面積の増加という面で問題となっていた。
【００３５】
実施形態によれば、ＶＤＤが０．５Ｖ以下の低電圧でも正確に動作するＤＶＦＳ技術を適用した半導体装置が実現される。
【課題を解決するための手段】
【００３６】
発明の第１の観点によれば、半導体装置は、複数の回路部分と、外部から供給される電源電圧を供給するグローバル電源と、複数の回路部分のローカル電源とグローバル電源を接続する複数の電源供給回路と、複数のローカル電源制御回路と、を有する。複数のローカル電源制御回路は、複数の回路部分に対応して設けられ、複数の回路部分のローカル電源の電圧値が所望の値になるように複数の電源供給回路を制御する。複数の電源供給回路のそれぞれは、離散化された複数の供給スイッチを有する。複数のローカル電源制御回路のそれぞれは、遅延モニタ回路と、スイッチ制御回路と、を有する。遅延モニタ回路は、ローカル電源の電圧値の変化に応じて遅延量が変化する遅延パスを有し、遅延パスの遅延量に応じて出力の論理値が変化する。スイッチ制御回路は、遅延モニタ回路の出力の論理値に基づいて離散化された複数の供給スイッチのオン数を制御する。
【発明の効果】
【００３７】
実施形態によれば、低電源電圧でも、各回路部分のローカル電源の電圧値が目標値に対して高いか低いかを正確に判定して、判定結果に基づいて離散化された複数の供給スイッチを正確に制御するので、ＤＶＦＳ技術を安定して実行する半導体装置が実現される。
【図面の簡単な説明】
【００３８】
【図１】図１は、回路部分ごとに動作周波数を変更可能にしたＬＳＩの概略構成と動作を示す図であり、（Ａ）が回路の概略構成を、（Ｂ）が動作を示すタイムチャートである。
【図２】図２は、ＤＶＦＳ技術を適用したＬＳＩの概略構成と動作を示す図であり、（Ａ）が回路の概略構成を、（Ｂ）が動作を示すタイムチャートである。
【図３】図３は、図１のクロック周波数のみを変化させる場合およびＤＶＦＳ技術を適用した場合の、第１回路ブロックの負荷に応じたクロック周波数および供給電圧の変化を示す図である。
【図４】図４は、これまで提案されているＬＤＯの回路例を示す図である。
【図５】図５は、第１実施形態の半導体装置（ＬＳＩ）の概略構成を示す図である。
【図６】図６は、第１実施形態におけるＬＤＯの回路図である。
【図７】図７は、ＬＤＯにおける制御処理を説明する図である。
【図８】図８は、遅延モニタ回路の回路例を示す図であり、（Ａ）が回路図を、（Ｂ）がＥＸＯＲゲートの動作の真理値表を示す。
【図９】図９は、遅延モニタ回路の動作例を示すタイムチャートであり、（Ａ）がＶＤＤＭＡが高く遅延が少ない場合を、（Ｂ）がＶＤＤＭＡが低く遅延が大きい場合を、示す。
【図１０】図１０は、コントローラを示す図であり、（Ａ）はコントローラの構成例を示し、複数（ここでは７個）の供給トランジスタを合わせて示しており、（Ｂ）は、コントローラの動作を示す図である。
【図１１】図１１は、図１０のコントローラの動作を示すタイムチャートである。
【図１２】図１２は、第２実施形態の半導体装置におけるＬＤＯの回路図である。
【図１３】図１３は、第２実施形態のＬＤＯにおける制御処理を説明する図である。
【図１４】図１４は、第２実施形態におけるコントローラを示す図であり、（Ａ）はコントローラの構成例を示し、複数（ここでは７個）の供給トランジスタを合わせて示しており、（Ｂ）は、コントローラの動作を示す図である。
【図１５】図１５は、図１４のコントローラの動作を示すタイムチャートである。
【図１６】図１６は、第３実施形態の半導体装置におけるＬＤＯの回路図である。
【図１７】図１７は、第３実施形態におけるコントローラを示す図であり、（Ａ）はコントローラの構成例を示し、複数（ここでは７個）の供給トランジスタを合わせて示しており、（Ｂ）は、コントローラの動作を示す図である。
【図１８】図１８は、図１７のコントローラの動作を示すタイムチャートである。
【図１９】図１９は、第４実施形態の半導体装置におけるＬＤＯの回路図である。
【図２０】図２０は、第４実施形態におけるコントローラを示す図であり、（Ａ）はコントローラの構成例を示し、複数（ここでは７個）の供給トランジスタを合わせて示しており、（Ｂ）は、コントローラの動作を示す図である。
【図２１】図２１は、図２０のコントローラの動作を示すタイムチャートである。
【図２２】図２２は、第５実施形態の半導体装置におけるＬＤＯの回路図である。
【図２３】図２３は、第５実施形態のＬＤＯにおける制御処理を説明する図である。
【図２４】図２４は、第５実施形態におけるコントローラの動作を示すタイムチャートである。
【図２５】図２５は、第１実施形態の半導体装置のＬＤＯで、クロックのサイクルタイムを減少させた場合のＬＤＯにおける制御処理を説明する図である。
【図２６】図２６は、第１実施形態の半導体装置のＬＤＯで、クロックのサイクルタイムを減少させた場合のコントローラの動作を示すタイムチャートである。
【図２７】図２７は、第１実施形態の半導体装置のＬＤＯで、クロックのサイクルタイムを増加させた場合のＬＤＯにおける制御処理を説明する図である。
【図２８】図２８は、第１実施形態の半導体装置のＬＤＯで、クロックのサイクルタイムを増加させた場合のコントローラの動作を示すタイムチャートである。
【図２９】図２９は、第４実施形態の半導体装置のＬＤＯで、クロックの周波数が上昇（サイクルタイムを減少）させた場合のコントローラの動作を示すタイムチャートである。
【発明を実施するための形態】
【００３９】
図５は、第１実施形態の半導体装置（ＬＳＩ）の概略構成を示す図である。
図５に示すように、第１実施形態のＬＳＩ１０は、第１回路ブロック１１Ａおよび第２回路ブロック１１Ｂを含む複数の回路ブロックと、ＰＭＵ１２と、を有する。
【００４０】
第１回路ブロック１１Ａは、降圧回路(LDO: Low Drop Out regulator)４０Ａを有する。第２回路ブロック１１Ｂは、ＬＤＯ４０Ｂを有する。ＰＭＵ１２は、第１回路ブロック１１Ａにクロックｃｋａを供給すると共に、供給電圧の制御信号ｃａをＬＤＯ４０Ａに供給する。また、ＰＭＵ１２は、第２回路ブロック１１Ｂにクロックｃｋｂを供給すると共に、供給電圧の制御信号ｃｂをＬＤＯ４０Ｂに供給する。ＰＭＵ１２は、外部からのＤＶＦＳモードで指示される各回路ブロックの負荷状態に応じて供給するクロックの周波数および供給する電圧を変化させ、必要な処理速度を維持しながら電力消費を低減するように各回路ブロックを制御する。
【００４１】
以上の通り、第１実施形態のＬＳＩ１０は、図２に示したＬＳＩと類似の構成を有し、ＶＲＥＦ発生回路１６が設けられていないこと、およびＬＤＯ４０ＡおよびＬＤＯ４０Ｂの構成がＬＤＯ１５ＡおよびＬＤＯ１５Ｂとは異なる。ＬＤＯ４０Ａを除く第１回路ブロック１１Ａ、ＬＤＯ４０Ｂを除く第２回路ブロック１１ＢおよびＰＭＵ１２は、図２と同様であるので、説明は省略する。また、ＬＤＯ４０ＡおよびＬＤＯ４０Ｂは、類似の構成を有し、以下ＬＤＯ４０として説明する。
【００４２】
図６は、第１実施形態におけるＬＤＯ４０の回路図であり、ＬＤＯ４０により電源電圧が供給される回路ブロック１１を一緒に示している。以下のＬＤＯ４０の回路図でも、回路ブロック１１を一緒に示す場合がある。ＬＤＯ４０例えば、図５における第１回路ブロック１１Ａが回路ブロック１１に、ＬＤＯ１５ＡがＬＤＯ４０に対応する。ＬＤＯ４０は、回路ブロック１１の一部として設けてもよい。
【００４３】
第１実施形態におけるＬＤＯ４０は、複数の供給トランジスタ２１Ａ、２１Ｂ、２１Ｃ、…と、遅延モニタ回路４１と、コントローラ４２Ａと、を有する。
【００４４】
複数の供給トランジスタ２１Ａ、２１Ｂ、２１Ｃ、…は、電圧ＶＤＤの高電位側電源線２５と回路ブロック１１のローカル電源線２６との間に並列に設けられたＰＭＯＳトランジスタである。複数の供給トランジスタ２１Ａ、２１Ｂ、２１Ｃ、…は、ゲートに印加されるコントローラ４４Ａからの制御信号によりオン・オフ制御される。回路ブロック１１の負荷状態によるが、複数の供給トランジスタ２１Ａ、２１Ｂ、２１Ｃ、…のオン数が増加すると回路ブロック１１のローカル電源線２６の電圧ＶＤＤＭＡが上昇し、オン数が減少するとＶＤＤＭＡが下降するのが基本的な動作である。言い換えれば、ＬＤＯ４０は、回路ブロック１１を動作可能領域に入れるにあたって、ＶＤＤＭＡを必要最小限の供給電圧値に設定させるようにデジタル制御する。
【００４５】
遅延モニタ回路４１は、回路ブロック１１内部の動作周波数の限界を決めているクリティカルパスの遅延を模擬したクリティカルパスモニタを有し、回路ブロック１１と同じローカル電源線２６に接続され、電圧ＶＤＤＭＡが印加される。遅延モニタ回路４１の出力であるモニタ出力信号ｗａｒは、クリティカルパスモニタの遅延が正常に動作する範囲内であるかに応じて０または１に変化するデジタル信号である。具体的には、モニタ出力信号ｗａｒは、電圧ＶＤＤＭＡが正常に動作する範囲内であれば１であり、正常に動作する範囲を超えていれば０になる。このように、遅延モニタ回路４１の出力（モニタ出力信号ｗａｒ）は、０または１の論理値で、ローカル電源の電圧値の変化に応じてクリティカルパスモニタの遅延量が正常に動作する範囲内であるか否かにより変化する。
【００４６】
コントローラ４２Ａは、遅延モニタ回路４１の出力に応じて、複数の供給トランジスタ２１Ａ、２１Ｂ、２１Ｃ、…のオン数を制御する。具体的には、コントローラ４２Ａは、モニタ出力信号ｗａｒが１であればオン数を減少し、モニタ出力信号ｗａｒが０であればオン数を増加する、ように制御を行う。
【００４７】
図７は、ＬＤＯ４０における制御処理を説明する図である。図７において、横軸は電源電圧ＶＤＤＭＡであり、縦軸は回路ブロック１１のクリティカルパスの遅延量である。後述するように、クリティカルパスモニタは、回路ブロック１１のクリティカルパスを模擬しているが、同じ遅延量を生じる回路ではない。クリティカルパスモニタは、回路ブロック１１のクリティカルパスの遅延量よりも若干大きくなるような遅延量を発生するように設定される。図７では、回路ブロック１１のクリティカルパスの遅延量とクリティカルパスモニタの遅延量を直接比較可能なように、クリティカルパスモニタの遅延量を正規化して示している。これは他の図でも同じである。図７において、参照符号Ｐは、ＶＤＤＭＡが変化した時の回路ブロック１１におけるクリティカルパスの遅延量の変化曲線を示す。ｃｋａのサイクルタイムが図７の参照符号ＣＬで示したレベルである場合、クリティカルパスの遅延量がｃｋａのサイクルタイム以下でないと回路ブロック１１が正常動作しなくなるため、参照符号ＣＬで示すレベル以下であることが要求される。参照符号Ｑは、ＶＤＤＭＡが変化した時に、クリティカルパスモニタの遅延量を示す変化曲線である。参照符号ＣＬで示すレベルが変化曲線Ｑより上側であれば遅延量に余裕があるためｗａｒ＝１が出力され、供給トランジスタを減少させてＶＤＤＭＡを下げる方向に制御する。また、参照符号ＣＬで示すレベルが変化曲線Ｑより下側であれば遅延量が大き過ぎるためＷＡＲ＝０が出力され、供給トランジスタを増加させてＶＤＤＭＡを上げる方向に制御する。クリティカルパスまたはクリティカルパスモニタの遅延量は、ＶＤＤＭＡの上昇に対して単純に減少する関係を有する。図示のように、クリティカルパスモニタは、遅延量がクリティカルパスの遅延量より、いかなるＶＤＤＭＡ値の時でも常に若干大きくなるように設定する。これにより、クリティカルパスモニタが正常に動作する場合には、回路ブロック１１におけるクリティカルパスは正常に動作することが保証される。
【００４８】
ＬＤＯ４０は、回路ブロック１１を動作させるのと同じクロックｃｋａで遅延モニタ回路４１を動作させる。遅延モニタ回路４１は、その時点のｃｋａのサイクルタイムでは回路ブロック１１のクリティカルパスが異常動作すると判定すれば、ＶＤＤＭＡが目標値よりも低いと判断し、例えばモニタ出力信号ｗａｒとして０を出力する。これに応じて、コントローラ４２Ａは、複数の供給トランジスタ２１Ａ、２１Ｂ、２１Ｃ、…のオン数を１個増やして回路ブロック１１への供給電流量を増やすように制御する。逆に、遅延モニタ回路４１は、回路ブロック１１のクリティカルパスが正常動作すると判定すれば、ＶＤＤＭＡが目標値よりも高いと判断して、例えばモニタ出力信号ｗａｒとして１を出力する。これに応じて、コントローラ４２Ａは、複数の供給トランジスタ２１Ａ、２１Ｂ、２１Ｃ、…のオン数を１個減らして回路ブロック１１への供給電流量を減少するように制御する。以上のような動作を繰り返すことにより、ｃｋａのサイクルタイムによって決まるＶＤＤＭＡの目標値付近に保持されるようになる。例えば、０．４ＶがＶＤＤＭＡの目標値である場合、変化曲線Ｑで示すクリティカルパスモニタの遅延量が設定される。遅延モニタ回路４１は、ＶＤＤＭＡが目標値より高ければクリティカルパスモニタの遅延量は小さいのでｗａｒ＝１を出力し、目標値より低ければクリティカルパスモニタの遅延量が大きいのでｗａｒ＝０を出力する。
【００４９】
ここで、遅延モニタ回路４１のクリティカルパスモニタは、実際の回路ブロック１１のクリティカルパス（ｒｅａｌ  ｐａｔｈ：図７の変化曲線Ｐ）を模擬するレプリカ回路になっており、ｒｅａｌ  ｐａｔｈと同様にＶＤＤＭＡ値によって遅延量が変化する（図７の変化曲線Ｑ）。上記のように、若干レプリカ回路の方の遅延量を大きめに設定しておくと、実際の回路ブロック１１が、より安全に動作するように制御できることになる。
【００５０】
さらに、回路ブロック１１の負荷状態の変更によりｃｋａの動作周波数が変更されると、クリティカルパスモニタは新たに設定されたｃｋａのサイクルタイムで回路ブロック１１のクリティカルパスが正常または異常動作すると判定することになる。そのため、変更されたサイクルタイム値に適応した新たなＶＤＤＭＡの目標値に向かってＬＤＯ制御できるため、ＤＶＦＳが自動的に成立することになる。
【００５１】
以上のように、ＬＤＯ４０における処理はすべてデジタル信号処理で行われる。すなわち、図４の（Ｂ）に示したデジタル型ＬＤＯ３０と比較すると、２つのアナログ的な電位を比較するためのコンパレータ２８が不要になり、０と１のデジタル信号に基づく制御であるため、より低電圧動作が可能なＬＤＯが形成できる。また、比較対象となる電位をノイズから保護するための容量素子や、可変分圧回路を構成するための抵抗素子が不要になるため、チップ占有面積を減らせるという効果がある。なお、遅延モニタ回路４１は、ＶＤＤＭＡに応じて、回路ブロック１１が正常に動作するか否かを判定し、判定結果をデジタル値で出力する回路であれば、どのような回路を使用してもよい。
【００５２】
図８は、遅延モニタ回路４１の回路例を示す図であり、（Ａ）が回路図を、（Ｂ）がＥＸＯＲゲートＸＯＲ１の動作の真理値表を示す。
【００５３】
図８の（Ａ）に示すように、遅延モニタ回路４１は、インバータＩｎｖ１と、フリップフロップＦＦ１と、第１遅延ライン５１と、第２遅延ライン５２と、モニタＦＦ２と、基準ＦＦ３と、排他的論理和（ＸＯＲ）ゲートＸＯＲ１と、を有する。Ｉｎｖ１とＦＦ１からなる部分は、クロックｃｋａの２分周回路であり、ｃｋａを２分周した信号ｔｄ０を生成する。第１遅延ライン５１は、信号ｔｄ０を遅延して信号ｐｎｄ０を出力する。第２遅延ライン５２は、信号ｐｎｄ０をさらに遅延して信号ｐｓｄ０を出力する。モニタＦＦ２は、ｃｋａに同期して信号ｐｓｄ０をラッチし、信号ｓｄ０を出力する。基準ＦＦ３は、ｃｋａに同期して信号ｐｎｄ０をラッチし、信号ｎｄ０を出力する。図８の（Ｂ）に示すように、ＸＯＲ１は、ｓｄ０とｎｄ０の排他的論理和、すなわちｓｄ０とｎｄ０が一致するかを判定し、一致すればｗａｒ＝１を、一致しなければｗａｒ＝０を出力する。
【００５４】
第１遅延ライン５１および第２遅延ライン５２は、回路ブロック１１のｓｅｔｕｐクリティカルパスを模擬したｒｅｐｌｉｃａ  ｐａｔｈを形成する。ｒｅｐｌｉｃａ  ｐａｔｈは、回路ブロック１１におけるｓｅｔｕｐクリティカルパス遅延量に対して、若干大きめに遅延量を設定された回路である。例えば、ＶＤＤＭＡ＝０．４Ｖの時のｓｅｔｕｐクリティカルパスの遅延量が５．０ｎｓであれば、第１遅延ライン５１および第２遅延ライン５２で形成されるｒｅｐｌｉｃａ  ｐａｔｈの遅延量を同じＶＤＤＭＡ＝０．４Ｖの時では５．０ｎｓより若干大きい遅延量（例えば５．５ｎｓ）に設定する。より具体的には、回路ブロック１１でｓｅｔｕｐクリティカルパスの遅延量が５．０ｎｓで、ＶＤＤＭＡ＝０．４Ｖ時のゲート１段の遅延量が０．５ｎｓであるとした場合には、第１遅延ライン５１および第２遅延ライン５２の合計ゲート段数を１０段より若干大きい段数（例えば１１段）に設定する。第１遅延ライン５１の遅延量は、基準となるデータをＦＦ３へ常に正しくラッチさせる必要があるため、回路ブロック１１のｓｅｔｕｐクリティカルパスの遅延量より十分に小さくなるように設定（例えば５段）する。こうすることによって、例えばｃｋａサイクルタイムが５．２ｎｓに設定された場合、回路ブロック１１のｓｅｔｕｐクリティカルパスが誤動作を起こす前に、先にクリティカルパスモニタがｗａｒ＝０を出力することによって、ＶＤＤＭＡを上昇させるように制御できるようになるため、回路ブロック１１がより安全に動作できるようになる。
【００５５】
図９は、遅延モニタ回路４１の動作例を示すタイムチャートであり、（Ａ）がＶＤＤＭＡが高く遅延が少ない場合を、（Ｂ）がＶＤＤＭＡが低く遅延が大きい場合を、示す。
【００５６】
図９に示すように、ｃｋａを２分周した信号ｔｄ０は、ｃｋａｇ立ち上がるごとに、出力が交互に１と０に変化するトグル動作を行い、テストデータとして信号ｔｄ０を発生し続ける。ＶＤＤＭＡが十分に高い時はクリティカルパスモニタの遅延が十分に短いため、ｔｄ０はｃｋａの１サイクルタイム（１周期）内で同じ値のｐｓｄ０としてモニタＦＦ２に到達する。一方、ｐｎｄ０はｐｓｄ０より遅延量が少ないので、ｔｄ０はｃｋａの１サイクルタイム（１周期）内で同じ値のｐｎｄ０として基準ＦＦ２に到達する。したがって、モニタＦＦ２に取り込まれるｐｓｄ０は、基準ＦＦ２に取り込まれるｐｎｄ０と同じ値である。その結果、ｓｄ０とｎｄ０は一致し、ＸＯＲ１は、供給電圧は目標値よりも高いとの判定結果であるモニタ出力信号ｗａｒ＝１を出力する。逆に、供給電圧が不十分で低い時はクリティカルパスモニタの遅延が長くなってしまうため、ｔｄ０はｃｋａの１サイクルタイム内でモニタＦＦ２に到達できなくなり、モニタＦＦ２に取り込まれるｐｓｄ０と基準ＦＦ２に取り込まれるｐｎｄ０は異なる値になる。その結果、ｓｄ０とｎｄ０は不一致を起こし、ＸＯＲ１は、供給電圧は目標値よりも低いとの判定結果であるモニタ出力信号ｗａｒ＝０を出力する。
【００５７】
図１０は、コントローラ４２Ａを示す図であり、（Ａ）は、コントローラ４２Ａの構成例を示し、複数（ここでは７個）の供給トランジスタ２１Ａ〜２１Ｇを合わせて示しており、（Ｂ）は、コントローラ４２Ａの動作を示す図である。
【００５８】
図１０の（Ａ）の構成例では、コントローラ４２Ａは、公知のアップ・ダウン・シフトレジスタ(Up/down shift register)で実現される。コントローラ４２Ａは、図１０の（Ｂ）に示すように、ｃｋａの立ち上がりで、信号ｗａｒが０であればオンにする供給トランジスタを１個増加し、ｗａｒが１であればオンにするトランジスタを１個減少する。具体的には、供給トランジスタ２１Ａ〜２１ＧはＰＭＯＳトランジスタであり、コントローラ４２Ａの出力が０であればオンし、１であればオフする。コントローラ４２Ａは、左側の出力が０で、右側の出力が１で、０と１に変化する位置を、ｗａｒが０であれば右側にシフトし、ｗａｒが１であれば左側にシフトする。
【００５９】
図１１は、図１０のコントローラ４２Ａの動作を示すタイムチャートである。
ｗａｒ＝０であれば、ｃｋａの立ち上がりエッジの度にアップ・ダウン・シフトレジスタの値がインクリメント（＋１）される。これにより、供給トランジスタのオン数が増加し、ＶＤＤＭＡが上昇していき、目標値を超えた時に、ｗａｒ＝１に変化することによって、アップ・ダウン・シフトレジスタの値がデクリメント（−１）され、供給トランジスタのオン数を減らす。それに伴い、ＶＤＤＭＡが下降に転ずる。さらに、ＶＤＤＭＡが目標値よりも下がると、再びｗａｒ＝０に変化し、アップ・ダウン・シフトレジスタの値がインクリメント（＋１）され、供給トランジスタのオン数を増やす。この動作を繰り返すことでＶＤＤＭＡは目標値付近に保持される。
【００６０】
図１２は、第２実施形態の半導体装置におけるＬＤＯ４０の回路図である。第２実施形態の半導体装置は、図５に示した第１実施形態の半導体装置の全体構成と類似した構成を有し、ＬＤＯの部分が異なる。第１実施形態におけるＬＤＯ４０は、１個のクリティカルパスモニタを有する遅延モニタ回路４１を使用した。言い換えれば、１個のクリティカルパスモニタが正常に動作するか否かを判定した。これに対して、第２実施形態におけるＬＤＯ４０は、遅延量が少し異なる２個のクリティカルパスモニタを有し、２個のクリティカルパスモニタの判定結果にしたがって供給トランジスタのオン数を制御する。
【００６１】
図１２に示すように、第２実施形態のＬＤＯ４０は、第１実施形態の遅延モニタ回路と同じ第１遅延モニタ回路４１に加えて、第２遅延モニタ回路４３を有する。第１遅延モニタ回路４１は、第１モニタ出力信号ｗａｒ０を出力する。第２遅延モニタ回路４３は、バッファＢｕｆ１と、フリップフロップＦＦ４と、排他的論理和ゲートＸＯＲ２と、を有し、第２モニタ出力信号ｗａｒ１として出力する。Ｂｕｆ１は、第１遅延モニタ回路４１のクリティカルパスモニタで遅延された信号ｐｓｄ０をさらに遅延し、ＦＦ４は遅延された信号をｃｋａに同期してラッチする。ＸＯＲ２は、ＦＦ４の出力と第１遅延モニタ回路４１のＦＦ３の出力の排他的論理和を演算し、演算結果をｗａｒ１として出力する。したがって、第２遅延モニタ回路４３のクリティカルパスモニタは、第１遅延モニタ回路４１のクリティカルパスモニタより遅延量が大きい。
【００６２】
図１３は、第２実施形態のＬＤＯ４０における制御処理を説明する図であり、図７に対応する図である。図１３において、参照符号Ｒは、ＶＤＤＭＡが変化した時に、第２遅延モニタ回路４３のクリティカルパスモニタの遅延量を示す変化曲線である。第２遅延モニタ回路４３のクリティカルパスモニタの遅延量は、参照符号Ｑで示す第１遅延モニタ回路４１のクリティカルパスモニタの遅延量より若干大きい。例えば、図１３に示すように、変化曲線Ｑでｃｋａのサイクルタイムに対応する遅延量を生じる時のＶＤＤＭＡを０．４Ｖとすると、変化曲線Ｒでｃｋａのサイクルタイムに対応する遅延量を生じるＶＤＤＭＡを０．４２Ｖとする。言い換えれば、第１遅延モニタ回路４１は、ＶＤＤＭＡが下位目標値０．４Ｖより低ければｗａｒ０＝０を、ＶＤＤＭＡが０．４Ｖより高ければｗａｒ０＝１を、出力する。第２遅延モニタ回路４３は、ＶＤＤＭＡが上位目標値０．４２Ｖより低ければｗａｒ１＝０を、ＶＤＤＭＡが０．４２Ｖより高ければｗａｒ１＝１を、出力する。
【００６３】
コントローラ４２Ｂは、ｗａｒ０＝０およびｗａｒ１＝０である時には、複数の供給トランジスタ２１Ａ、２１Ｂ、２１Ｃ、…のオン数を１個増やして回路ブロック１１への供給電流量を増やすように制御する。コントローラ４２Ｂは、ｗａｒ０＝１およびｗａｒ１＝１である時には、複数の供給トランジスタ２１Ａ、２１Ｂ、２１Ｃ、…のオン数を１個減少させて回路ブロック１１への供給電流量を減少するように制御する。そして、コントローラ４２Ｂは、ｗａｒ０＝１およびｗａｒ１＝０である時には、複数の供給トランジスタ２１Ａ、２１Ｂ、２１Ｃ、…のオン数を維持するように制御する。以下、このような動作を繰り返す。これにより、ＶＤＤＭＡは、０．４０Ｖと０．４２Ｖの間に維持される。
【００６４】
図１４は、第２実施形態におけるコントローラ４２Ｂを示す図であり、図１４の（Ａ）がコントローラ４２の構成例を示し、図１４の（Ｂ）は、コントローラ４２Ｂの動作を示す図である。
【００６５】
図１４の（Ａ）の構成例では、コントローラ４２Ｂは、アップ・ダウン・シフトレジスタ(Up/down shift register)４５Ｂと、クロックゲート５１と、を含む。クロックゲート５１は、ｗａｒ０およびｗａｒ１＝０またはｗａｒ０およびｗａｒ１＝１の時にはｃｋａを通過させ、ｗａｒ０＝１およびｗａｒ１＝０の時には停止状態になりｃｋａを遮断する。したがって、クロックゲート５１の出力ｃｋａ’は、ｗａｒ０およびｗａｒ１＝０またはｗａｒ０およびｗａｒ１＝１の時にはｃｋａであり、ｗａｒ０＝１およびｗａｒ１＝０の時には固定で変化しない。
【００６６】
アップ・ダウン・シフトレジスタ４５Ｂは、ｃｋａの立ち上がりで、ｗａｒ０＝０およびｗａｒ１＝０であればオンにする供給トランジスタを１個増加し、ｗａｒ０＝１およびｗａｒ１＝１であればオンにするトランジスタを１個減少する。さらに、アップ・ダウン・シフトレジスタ４５Ｂは、ｗａｒ０＝１およびｗａｒ１＝０であれば、ｃｋａが供給されないので、シフト状態を維持する。
【００６７】
図１５は、図１４のコントローラ４２Ｂの動作を示すタイムチャートである。
ｗａｒ０＝０およびｗａｒ１＝０である時には、ｃｋａの立ち上がりエッジの度にアップ・ダウン・シフトレジスタ４５Ｂの値がインクリメント（＋１）される。これにより、供給トランジスタのオン数が増加し、ＶＤＤＭＡが上昇していき、目標値（０．４０Ｖ）を超える。この時、ｗａｒ０＝１に変化するが、ｗａｒ１＝０を維持するので、クロックゲート５１はｃｋａを遮断し、アップ・ダウン・シフトレジスタ４５Ｂの値が維持され、供給トランジスタのオン数も維持される。
【００６８】
また、ＶＤＤＭＡが上位側目標値０．４２Ｖを超えると、ｗａｒ０＝１およびｗａｒ１＝１に変化するので、クロックゲート５１はｃｋａを通過させる。アップ・ダウン・シフトレジスタ４５Ｂは、ｗａｒ０＝１およびｗａｒ１＝１であるので、値をデクリメント（−１）し、供給トランジスタのオン数を減らす。それに伴い、ＶＤＤＭＡが下降に転じ、ＶＤＤＭＡが上位側目標値０．４２Ｖよりも下がると、再びｗａｒ０＝０に変化し、アップ・ダウン・シフトレジスタ４５Ｂの値が維持され、供給トランジスタのオン数も維持される。このような動作を繰り返すことにより、ＶＤＤＭＡは、下位側目標値０．４０Ｖと上位側目標値０．４２Ｖの間に保持される。
【００６９】
第２実施形態では、第１実施形態においてＶＤＤＭＡの目標値付近で生じる供給トランジスのオン数の不要な増減による電圧リプル(変動)を除去でき、クロックゲート５１の機能によってアップ・ダウン・シフトレジスタ４５Ｂ等の制御系の電力を削減できる。
【００７０】
次に、第３実施形態の半導体装置について説明する。第３実施形態の半導体装置は、図５に示した第１実施形態の半導体装置の全体構成と類似した構成を有するが、コントローラ４２Ｃがイネーブル信号ｅｎａｂｌｅに応じて複数の供給トランジスタをオフにして更なる低消費電力化を図ったことが異なる。
【００７１】
図１６は、第３実施形態の半導体装置のＬＤＯ４０の構成を示す図である。図６の第１実施形態のＬＤＯとは、コントローラ４２Ｃがイネーブル信号ｅｎａｂｌｅを受けて、それに応じた動作を行うことが異なる。例えば、回路ブロック１１を使用しない時には、イネーブル信号ｅｎａｂｌ＝０とする。これに応じてコントローラ４２Ｃは、リセット状態になり、出力をすべて１にして、複数の供給スイッチ２１Ａ、２１Ｂ、２１Ｃ、…をすべてオフにし、回路ブロック１１への電源供給を停止する。これをパワーゲーティングと称する。さらに、第３実施形態では、コントローラ４２Ｃは、パワーゲーティングを解除して再び回路ブロック１１を動作状態にする時、つまりｅｎａｂｌｅが０から１になると、出力をすべて０にして、一旦全ての供給トランジスタをオンする。
【００７２】
図１７は、第３実施形態におけるコントローラ４２Ｃを示す図であり、図１７の（Ａ）は、コントローラ４２Ｃの構成例を示し、複数（ここでは７個）の供給トランジスタ２１Ａ〜２１Ｇを合わせて示している。図１７の（Ｂ）は、コントローラ４２Ｃの動作を示す図である。
【００７３】
図１７の（Ａ）の構成例では、コントローラ４２Ｃは、公知のアップ・ダウン・シフトレジスタ(Up/down shift register)で実現される。コントローラ４２Ｃは、図１７の（Ｂ）に示すように、イネーブル信号ｅｎａｂｌｅが有効（１）の間、第１実施形態のコントローラ４２Ａと同様に動作する。すなわち、コントローラ４２Ｃは、ｅｎａｂｌｅ＝１の時、ｃｋａの立ち上がりで、ｗａｒが０であればオンにする供給トランジスタを１個増加し、ｗａｒが１であればオンにするトランジスタを１個減少する。
【００７４】
さらに、第３実施形態におけるコントローラ４２Ｃは、ｅｎａｂｌｅ＝０の時、すべての出力を１にするようにリセットする。これにより、すべての供給トランジスタ２１Ａ−２１Ｇはオフするパワーゲーティングが行われる。さらに、コントローラ４２Ｃは、ｅｎａｂｌｅが０から１に変化する時には、すべての出力を１にセットする。これにより、パワーゲーティングを解除する瞬間には、すべての供給トランジスタ２１Ａ−２１Ｇはオンし、一旦ＶＤＤＭＡは電源電圧ＶＤＤレベルまで上昇する。
【００７５】
図１８は、図１７のコントローラ４２Ｃの動作を示すタイムチャートである。
ｅｎａｂｌｅ＝０でパワーゲーティングされている間、コントローラ４２Ｃの出力はすべて１にリセットされており、すべての供給トランジスタ２１Ａ−２１Ｇはオフしている。これにより、ＶＤＤＭＡは、ほぼ０Ｖにまで低下している。パワーゲーティング解除により、ｅｎａｂｌｅが０から１に遷移すると、１サイクル分だけすべての出力を０にセットする。これにより、全ての供給トランジスタ２１Ａ−２１Ｇがオンし、ＶＤＤＭＡは一旦電源電圧ＶＤＤ（＝０．５Ｖ）まで上昇する。それ以降は、図１１と同じ動作となり、ＶＤＤＭＡは目標値（０．４Ｖ）に向かって、シフトレジスタの値をインクリメント（＋１）するか、あるいはデクリメント（−１）させていく。
【００７６】
第１実施形態と比較すると、第３実施形態の利点は、回路ブロック１１への電源供給が停止しているパワーゲーティング状態から、電源供給すべき状態に切り替わった瞬間に、電源復帰を正常に、かつ高速化できることにある。第１実施形態で、ｅｎａｂｌｅに応じてすべての出力を１にリセットできるようにすることが考えられる。しかし、ｅｎａｂｌｅが０から１に変化した時に、すべての出力を１にリセットした状態から制御を開始すると、ＶＤＤＭＡは０Ｖ付近なので、０．４Ｖ付近になるまで時間を要する。また、この間、クリティカルパスモニタが正常に動作しないなどの問題が発生する。第３実施形態では、このような問題が発生せず、電源復帰を正常に、かつ高速化できる。
【００７７】
次に、第４実施形態の半導体装置について説明する。第４実施形態の半導体装置は、図５に示した第１実施形態の半導体装置の全体構成と類似した構成を有するが、回路ブロック１１へのクロックｃｋａの供給が不要な場合にはｃｋａの供給を停止するようにクロックゲートを設けたことが、第１実施形態と異なる。これにより、半導体装置（ＬＳＩ）の一層の低消費電力化を図ることができる。
【００７８】
図１９は、第４実施形態の半導体装置におけるＬＤＯ４０の回路図である。参照番号６１で示す部分が、回路ブロック１１へのクロックｃｋａの供給を制御するクロックゲートであり、ゲーティング信号ｇａｔｉｎｇ＝１の時には、回路ブロック１１へクロックｃｋａａを供給し、ｇａｔｉｎｇ＝０の時にはｃｋａａの供給を停止する。第３実施形態のＬＤＯ４０では、コントローラ４２Ｄが、このゲーティング信号ｇａｔｉｎｇに応じて複数の供給スイッチのオン数を制御する。
【００７９】
図２０は、第４実施形態におけるコントローラ４２Ｄを示す図であり、図２０の（Ａ）がコントローラ４２Ｄの構成例を示し、図１８の（Ｂ）は、コントローラ４２Ｄの動作を示す図である。
【００８０】
図１８の（Ａ）の構成例では、コントローラ４２Ｄは、アップ・ダウン・シフトレジスタ(Up/down shift register)で実現される。
図１８の（Ｂ）に示すように、コントローラ４２Ｄは、ゲーティング信号ｇａｔｉｎｇの０から１への遷移時以外は、第１実施形態のコントローラ４２Ａと同じ動作を行う。コントローラ４２Ｄは、ゲーティング信号ｇａｔｉｎｇの０から１への遷移時に、すべての出力を０にリセットする。これにより、回路ブロック１１へのクロックｃｋａａの供給が停止している状態から供給する状態に切り替わる瞬間だけ、すべての供給トランジスタ２１Ａ〜２１Ｇをすべてオンにして、ＶＤＤＭＡを一旦電源電圧ＶＤＤレベルまで上昇させる。言い換えれば、第４実施形態では、ＬＤＯ４０が、ゲーティング信号ｇａｔｉｎｇの０から１への遷移時に、一瞬供給トランジスタ２１Ａ〜２１Ｇをすべてオンにする全開機能を有する。
【００８１】
図２１は、第４実施形態のコントローラ４２Ｄの動作を示すタイムチャートである。
第１実施形態とは、ｇａｔｉｎｇが０の間ｃｋａａは０に固定され、回路ブロック１１へのクロック供給は停止することが異なる。さらに、ｇａｔｉｎｇが０から１に変化すると、１サイクル分だけ、コントローラ４２Ｄの出力がすべて０にセットされることが第１実施形態とは異なる。出力がすべて０にセットされるので、全ての供給トランジスタがオンし、ＶＤＤＭＡは一旦電源電圧ＶＤＤ（＝０．５Ｖ）まで上昇する。それ以降は、ＶＤＤＭＡの目標値（＝０．４Ｖ）に向かって、アップ・ダウン・シフトレジスタの値をインクリメント（＋１）するか、あるいはデクリメント（−１）させる。図２１では、参考例として、ｇａｔｉｎｇが０から１に変化しても、コントローラ４２Ｄの出力は直前の状態が維持される場合を示す。
【００８２】
第４実施形態は、第１実施形態に比べて、回路ブロック１１への供給クロックｃｋａａが停止している状態から、供給状態に切り替わった瞬間に、回路ブロック１１の消費電力が急激に増加することによってＶＤＤＭＡが急降下するという問題を抑制できる。
【００８３】
次に、第５実施形態の半導体装置について説明する。第５実施形態の半導体装置は、図１９に示した第４実施形態の半導体装置の全体構成と類似した構成を有するが、アボートモニタを使用して、強制的なクロックゲーティング制御を行うことが異なる。
【００８４】
図２２は、第５実施形態の半導体装置におけるＬＤＯ４０の回路図である。第５実施形態の半導体装置におけるＬＤＯ４０は、遅延モニタ回路４１が、アボートモニタ４１Ａと、クリティカルパスモニタ４１Ｂと、を有することが第４実施形態と異なる。アボートモニタ４１Ａは、第１実施形態のクリティカルパスモニタと類似の構成を有するが、クリティカルパスモニタよりも遅延量が若干少ない。クリティカルパスモニタ４１Ｂは、アボートモニタ４１Ａのクリティカルパスモニタで遅延された信号をさらに遅延した信号の遅延量が正常に動作する範囲内であるかを判定する。言い換えれば、アボートモニタ４１Ａの一部とクリティカルパスモニタ４１Ｂが、第１実施形態の遅延モニタ回路４１と同等の機能を実現する。
【００８５】
図２３は、第５実施形態のＬＤＯ４０における制御処理を説明する図であり、図７に対応する図である。図２３において、参照符号Ｓは、ＶＤＤＭＡが変化した時に、アボートモニタ４１Ａの遅延量を示す変化曲線である。この変化曲線Ｓが、ｃｋａのサイクルタイムである参照符号ＣＬで示されるレベルよりも上側にある場合に、回路ブロック１１内部のクリティカルパスが誤動作する危険があると判定し、アボートモニタ４１Ａが強制的なクロックゲーティング制御を行い、クロック供給を止めることによって回路ブロック１１を保護する。アボートモニタ４１Ａのクリティカルパスモニタの遅延量は、参照符号Ｑで示す第１遅延モニタ回路４１のクリティカルパスモニタの遅延量より若干小さい。例えば、図２３に示すように、変化曲線Ｑでｃｋａのサイクルタイムに対応する遅延量を生じる時のＶＤＤＭＡを０．４Ｖとすると、変化曲線Ｓでｃｋａのサイクルタイムに対応する遅延量を生じるＶＤＤＭＡを０．３８Ｖとする。言い換えれば、アボートモニタ４１Ａは、ＶＤＤＭＡがアボート電圧値０．３８Ｖより低ければａｂｏｒｔ＝０を、ＶＤＤＭＡが０．３８Ｖより高ければａｂｏｒｔ＝１を、出力する。
【００８６】
コントローラ４２Ｅは、ａｂｏｒｔ＝１であれば、第１実施形態と同様に、クリティカルパスモニタ４１Ｂのモニタ信号ｗａｒに応じて供給トランジスタのオン数を制御する。第５実施形態では、アボートモニタ４１Ａは、ＶＤＤＭＡが、回路ブロック１１が誤動作する危険があるアボート電圧値以下になったかを検出する。そして、ＶＤＤＭＡがアボート電圧値以下になったことを検出した場合には、クロックゲーティング回路６１が、強制的なクロックゲーティング制御を行うことによって回路ブロック１１を保護する。
【００８７】
図２４は、第５実施形態のコントローラ４２Ｅの動作を示すタイムチャートである。
コントローラ４２Ｅは、ａｂｏｒｔ＝１の間は、第１実施形態と同様に、クリティカルパスモニタ４１Ｂのモニタ信号ｗａｒに応じて供給トランジスタのオン数を制御する。
【００８８】
ＶＤＤＭＡが、回路ブロック１１の誤動作を引き起こすアボート電圧値（ここでは０．３８Ｖ）以下に降下した場合は、アボートモニタ４１Ａがａｂｏｒｔ＝０を出力する。これに応じて、クロックゲーティング回路６１は、回路ブロック１１を動作させるクロックにクロックゲーティング制御を行い、回路ブロック１１への供給クロックｃｋａの供給を停止する。ここで、ＶＤＤＭＡが上記のアボート電圧値を超えて上昇すると、アボートモニタ４１Ａは、安全なＶＤＤＭＡの電圧値に復帰したと判断してａｂｏｒｔ＝１を出力する。これに応じて、クロックゲーティング回路６１は、クロックゲーティング制御を解除して回路ブロック１１への供給クロックｃｋａａの供給を再開する。
【００８９】
第５実施形態は、回路ブロック１１が誤動作しないように回路ブロック１１の動作・停止を制御できるため、第４実施形態に比べてシステム動作の信頼性が高い。
【００９０】
以上第１から第５実施形態について、動作中に回路ブロック１１に供給されるクロックｃｋａは変化しない場合を説明したが、前述のようにＤＶＦＳ制御では、回路ブロック１１に供給するクロックｃｋａの周波数も変更される。以下、第１実施形態の半導体装置のＬＤＯ４０で、動作中に回路ブロック１１に供給するクロックｃｋａの周波数を変更した場合について説明する。なお、他の実施形態についても、動作中にクロックｃｋａが変更された場合には、同様の動作が行われる。
【００９１】
図２５は、第１実施形態の半導体装置のＬＤＯ４０で、クロックｃｋａの周波数を上昇させた場合、すなわちクロックｃｋａのサイクルタイムをＣＴ１からＣＴ２に減少させた場合のＬＤＯ４０における制御処理を説明する図である。
図２６は、第１実施形態の半導体装置のＬＤＯ４０で、クロックｃｋａのサイクルタイムをＣＴ１からＣＴ２に減少させた場合のコントローラ４２Ａの動作を示すタイムチャートである。
【００９２】
サイクルタイム＝ＣＴ１の時、変化曲線ＱでＣＴ１に対応する遅延量を生じるＶＤＤＭＡ＝０．４Ｖを、ＶＤＤＭＡの目標値であるとしてＬＤＯ４０の制御が行われる。ここで、サイクルタイムがＣＴ１からＣＴ２に変更されると、変化曲線ＱでＣＴ１に対応する遅延量を生じるＶＤＤＭＡ＝０．４５Ｖが変更後の目標値になり、ＬＤＯ４０の制御が行われる。ＶＤＤＭＡの目標値が増加するので、遅延モニタ回路４１の出力するモニタ信号ｗａｒ＝０であり、コントローラ４２Ａは、供給トランジスタのオン数を１つずつ増加させていく。これにより、ＶＤＤＭＡは目標値０．４５Ｖに向かって上昇する。そして、ＶＤＤＭＡが目標値０．４５Ｖに到達した後は、ＶＤＤＭＡは０．４５Ｖの付近に保持される。
【００９３】
図２７は、第１実施形態の半導体装置のＬＤＯ４０で、クロックｃｋａの周波数を下降させた場合、すなわちクロックｃｋａのサイクルタイムをＣＴ２からＣＴ１に増加させた場合のＬＤＯ４０における制御処理を説明する図である。
図２８は、第１実施形態の半導体装置のＬＤＯ４０で、クロックｃｋａのサイクルタイムをＣＴ２からＣＴ１に増加させた場合のコントローラ４２Ａの動作を示すタイムチャートである。
【００９４】
クロック周波数変更前は、例えばＶＤＤＭＡ＝０．４５Ｖが目標値であるとしてＬＤＯ４０の制御を行うが、クロック周波数変更後は、例えばＶＤＤＭＡ＝０．４０Ｖが変更後の目標値であるとＬＤＯ４０の制御を行う。変更後のＬＤＯを開始すると、供給トランジスタのオン数を１つずつ減少させていって、ＶＤＤＭＡを下降させようという動作に変化する。
【００９５】
さらに、図２６に示すように、クロック周波数上昇時の動作において、クロック周波数が上昇された直後には、まだＶＤＤＭＡが目標値に到達せず、回路ブロック１１の動作可能領域に入っていない場合が生じる。この場合、ＶＤＤＭＡが目標値まで上昇するのを待たないといけないので、システム性能のボトルネックとなる可能性がある。
【００９６】
そこで、クロック周波数が上昇するように変更された直後には、例えば、第４実施形態のコントローラ４２Ｄを使用して、クロック周波数を上昇する変更時にはすべての出力を０にリセットする。これにより、ＶＤＤＭＡが目標値まで上昇する時間遅延が解消され、システム性能のボトルネックを生じることはない。
【００９７】
図２９は、第４実施形態の半導体装置のＬＤＯ４０で、クロックｃｋａの周波数が上昇（サイクルタイムを減少）させた場合のコントローラ４２Ａの動作を示すタイムチャートである。
図２９に示すように、周波数変更前は図２６と同様に、ＶＤＤＭＡ＝４．０Ｖが目標値であるとしてＬＤＯ４０の制御を行う。動作途中でクロック周波数を上昇される(サイクルタイムを短くされる)場合は、ゲーティング信号ｇａｔｉｎｇの０から１の遷移によって、ＶＤＤＭＡは一旦電源電圧ＶＤＤ（０．５Ｖ）まで上昇される。その後、変更後の目標値であるＶＤＤＭＡ＝０．４５Ｖに向かってＬＤＯ４０の制御が開始され、供給トランジスタのオン数を1つずつ減少させていき、ＶＤＤＭＡを下降させようという動作に変化する。
【００９８】
図２９のような制御を行うことにより、クロック周波数が上昇された瞬間において、ＶＤＤＭＡは、電源電圧ＶＤＤ（０．５Ｖ）まで上昇する。これによって回路ブロック１１の動作可能領域に入っているため、ＶＤＤＭＡが目標値まで落ち着くのを待つ必要がないので、システム性能のボトルネックにはならないことである。ここで、クロック周波数が下降された場合は、ＶＤＤＭＡは、回路ブロック１１の動作可能領域に入ったままなので、特に記載した以外の処理を行う必要はない。つまり、クロック周波数が上昇される瞬間にのみ、ゲーティング信号ｇａｔｉｎｇの０から１への遷移時のみ、ＶＤＤＭＡを一旦電源電圧ＶＤＤ（０．５Ｖ）まで上昇させれば良い。
【００９９】
以上、実施形態を説明したが、例えば、異なる実施形態の構成を組み合わせることも可能であり、これにより組み合わせた実施形態の両方の利点が得られる。さらに、第３実施形態および第４実施形態では、イネーブル信号ｅｎａｂｌｅとゲーティング信号ｇａｔｉｎｇの両方の役割を兼ねて１つの制御信号にまとめてもよい。
【０１００】
以上説明した実施形態では、外部から電源電圧を投入され、内部回路に供給する電圧を可変にできるＬＤＯを搭載する半導体装置において、アナログ的な比較回路を不要にする。これにより、電源電圧がトランジスタの閾値付近となる０．５Ｖ程度の低電圧条件になってもＬＤＯ動作が可能になる。さらに、実施形態では、比較対象となるアナログ電位をノイズから保護するための大きな容量素子や、可変分圧回路を構成するための大きな抵抗素子が不要になるため、チップ占有面積を減らせる。
【０１０１】
以上、実施形態を説明したが、ここに記載したすべての例や条件は、発明および技術に適用する発明の概念の理解を助ける目的で記載されたものである。特に記載された例や条件は発明の範囲を制限することを意図するものではなく、明細書のそのような例の構成は発明の利点および欠点を示すものではない。発明の実施形態を詳細に記載したが、各種の変更、置き換え、変形が発明の精神および範囲を逸脱することなく行えることが理解されるべきである。
【符号の説明】
【０１０２】
１０    半導体装置（ＬＳＩ）
１１    回路ブロック
１２    電力制御回路
２１Ａ−２１Ｇ    供給スイッチ
４０    降圧回路（ＬＤＯ）
４１    遅延モニタ回路
４２、４２Ａ−４２Ｅ    コントローラ
【図１】
2014057265.tif 000003
【図２】
2014057265.tif 000004
【図３】
2014057265.tif 000005
【図４】
2014057265.tif 000006
【図５】
2014057265.tif 000007
【図６】
2014057265.tif 000008
【図７】
2014057265.tif 000009
【図８】
2014057265.tif 000010
【図９】
2014057265.tif 000011
【図１０】
2014057265.tif 000012
【図１１】
2014057265.tif 000013
【図１２】
2014057265.tif 000014
【図１３】
2014057265.tif 000015
【図１４】
2014057265.tif 000016
【図１５】
2014057265.tif 000017
【図１６】
2014057265.tif 000018
【図１７】
2014057265.tif 000019
【図１８】
2014057265.tif 000020
【図１９】
2014057265.tif 000021
【図２０】
2014057265.tif 000022
【図２１】
2014057265.tif 000023
【図２２】
2014057265.tif 000024
【図２３】
2014057265.tif 000025
【図２４】
2014057265.tif 000026
【図２５】
2014057265.tif 000027
【図２６】
2014057265.tif 000028
【図２７】
2014057265.tif 000029
【図２８】
2014057265.tif 000030
【図２９】
2014057265.tif 000031