以下、本開示について、図面を用いて説明する。ただし、以下の説明において、同一構成要素には同一符号を付し繰り返しの説明を省略することがある。なお、図面は説明をより明確にするため、実際の態様に比べ、模式的に表される場合があるが、あくまで一例であって、本発明の解釈を限定するものではない。
(検討例)
発明を実施するための形態について説明する前に、発明が解決しようとする課題について、より具体的な検討例をあげて説明する。
図9は、本発明者が作成した、課題検討用の半導体装置1の構成例を示すブロック図である。「背景技術」で説明したスイッチングレギュレータとリニアレギュレータの両方を搭載する汎用マイクロコンピュータに対応するものであって、1は半導体装置であり、半導体チップに形成された半導体集積回路である。半導体装置1は、一例では、マイクロコンピュータである。
半導体装置1は、スイッチングレギュレータ(以下DC/DCと称す)2、リニアレギュレータ(以下LDOと称す)3、VCC入力電圧5を降圧したVCC1降圧電圧10を電源とする内部回路4、DC/DC2とLDO3のどちらを動作させるかを決めるラッチ回路31などを含む。半導体装置1の外部には、インダクタンス8とキャパシタ9とが配置される。6は、接地電圧GNDに接続される端子である。11はリセット入力で、半導体装置1をLowレベルで初期化する信号である。
次に、課題検討用の半導体装置1の動作について図を用いて説明する。
半導体装置1にVCC入力電圧5を印加後、ラッチ回路31は、リセット入力11がLowのとき、端子32の状態をラッチ回路31の出力31aに出力し、リセット入力11がLowからHighに変化するとき、端子32の状態を保持する。ラッチ回路31の出力31aがハイレベル“1”のとき、DC/DC2がオン状態、LDO3がオフ状態となり、ラッチ回路31の出力31aがロウレベル“0”のとき、DC/DC2がオフ状態、LDO3がオン状態となる。
DC/DC2は、発振器19、リファレンス電圧生成回路20、アンプ回路21、出力用ドライバのPMOS25とNMOS26、出力用ドライバ(25、26)を制御する出力制御回路22により構成される。リファレンス電圧生成回路20の出力であるリファレンス電圧20aとVCC1降圧電圧10を入力とするアンプ回路21は、その出力21aが出力制御回路22に接続され、出力制御回路22は、発振器19の出力19aのクロックに基づいて、信号22a、信号22bを生成し、PMOS25とNMOS26のそれぞれのゲート電圧を適宜制御して、端子7からPWM波形を生成する。このPWM波形は、通常1~2MHz程度であり、半導体装置1の外部に配置されたインダクタ8、キャパシタ9により構成されるLCフィルタで平滑化され、所望のVCC1降圧電圧10を得るものである。なお、PMOSはPチャネル型の絶縁ゲート型電界効果トランジスタであり、NMOSはNチャネル型の絶縁ゲート型電界効果トランジスタである。
一方、LDO3は、VCC入力電圧5からVCC1降圧電圧10を生成するPMOS27とPMOS27のゲート電圧を制御するアンプ回路29、VCC1降圧電圧10を分圧する抵抗28により構成される。アンプ回路29は、リファレンス電圧20aと、抵抗28で電圧分割された電圧28aが接続され、リファレンス電圧20aと電圧28aが等しくなるようPMOS27のゲート電圧29aを制御して、所望のVCC1降圧電圧10を得るものである。
DC/DC2は、以下の課題があった。
入力電圧と降圧電圧の電圧差が小さくなると電力損失の占める割合が大きくなり、電力効率が大きく低下する。そのため、半導体装置1の動作下限電圧がDC/DC2の生成する電圧で抑えられるので、電池駆動で電池が消耗した場合にも、できるだけ低電圧で動作させるといった応用に適さない。
低電流負荷では、DC/DC2の電力効率が低くなる。
これらを解決するためには、VCC入力電圧5の電圧やVCC1降圧電圧10の電流負荷に合わせてDC/DC2とLDO3のオン、オフを動的に切り替えられることが望ましい、と本願発明者は考察した。しかしながら、以下の問題があることが分かった。
DC/DC2とLDO3の動的な切り替えは、切り替え時に発生するVCC1降圧電圧10の変動を抑制することが難しい。
また、通常、インダクタ8は数μH~数十μH、キャパシタ9はμFの単位の大きなものが必要であり、外部素子であるインダクタ8やキャパシタ9の体積の増加やコストのアップとなる。
また、応用上、半導体装置1を下限電源電圧だけで動作させる用途のため、LDO3だけを使用する場合がある。このため、DC/DC2の動作に必要なキャパシタ9の有り/無しに係らず、LDO3を安定に動作させる必要がある。しかし、LDO3のVCC1降圧電圧10に、大容量のキャパシタ9が接続される場合と接続されない場合とでは、LDO3の構成要素であるアンプ回路29の位相余裕を確保することが難しい。
また、以下の事項も発明者により、検討された。
一般に、LDOは、入力電圧に接続されたMOSトランジスタのゲート電圧を制御して降圧電圧を生成する。言い換えると、入力電圧は、MOSトランジスタの抵抗成分と降圧電圧を使用する回路の抵抗成分による抵抗分割で降圧電圧を生成する。このため、簡単な回路で広範囲の入力電圧、かつリップルの少ない高精度の降圧電圧を生成でき、トランジスタ制御のための制御回路の消費電流も比較的小さいという長所がある。
また、LDOは複数配置して、高電流負荷のときは動作するLDOの数を増やし、低電流負荷のときは動作するLDOの数を減らしたり、または、低電流負荷専用のLDOに切り替えるなどしてLDO自体の消費電流を削減することも多く行われていた。
しかしながら、トランジスタの抵抗成分を使用した降圧なので、入力電圧と降圧電圧の差が小さいときは効率よく降圧電圧を生成できるが、入力電圧と降圧電圧の差が大きいと降圧電圧を使用する回路の電流が前述のMOSトランジスタで損失し、特に高電流負荷時の電力効率が悪化する。
例えば、入力電圧3.3V、降圧電圧を使用する回路の消費電流が50mA、LDO回路の自己動作電流が1mAとした場合、降圧電圧の消費電流が入力電圧の電流に等しくなり、3.3V*(50mA+1mA)=168.3mWの消費電力となる。
消費電流が小さい場合、例えば、降圧電圧を使用する回路の動作電流が100μAのような場合は、前述のように低電流負荷時専用のLDOを動作させるとLDO自体の消費電流を数十μAに絞り込むこともでき、低負荷電流時のLDO回路の自己動作電流を10μAとすると、前記消費電力は3.3V*(0.1mA+0.01mA)=0.33mWとなる。
一方、DC/DCは、半導体集積回路内にPWM波形出力回路と制御回路を搭載し、半導体外部のインダクタやキャパシタから構成されるLCフィルタで平滑化して降圧電圧を生成するものである。このDC/DCは、一般に電力効率よく降圧できる。
例えば、降圧電圧が1.2V、降圧電圧を使用する回路の消費電流が50mAとした場合、1.2V*50mA=60mWの消費電力となる。ただし、DC/DCの回路で消費される電力や外部素子駆動時のスイッチングによる損失、外部素子で構成されるLCフィルタの損失により、実際には85%前後の効率、すなわち、前記の60mW/85%=70.6mWの電力消費となる。
このように、降圧電圧の負荷50mAに対して、LDOの166.6mWに対してDC/DCは70.6mWであり、DC/DCの電力効率が高いことが判る。
ただし、DC/DCの低電流負荷時は、前記電力効率100%との差分15%に相当する10.6mWが損失となり、前記LDOの低電流負荷時は負荷電流100μAを加えても0.33mWであり、低電流負荷のときの電力効率はDC/DCとLDOで逆転する。
なお、DC/DCには、前記PWM波形を生成するPWM方式と同時に、Highパルス幅を一定にして、負荷電流に応じて発振周波数を変化させ、低電流負荷では発振周波数を低くする回路方式(VFM(Variable Frequency Modulation:周波数可変変調)、または、PFM(Pulse Frequency Modulation:パルス周波数変調)と称す)を備え、低電流負荷時の電力損失を削減するものもある。しかし、低電流負荷時の電力効率では、LDOがDC/DCより勝るものである。
以下、実施例について、図面を用いて説明する。
実施例1の構成について、図1~図4を用いて説明する。図1は、実施例1に係る半導体装置1の構成例を示すブロック図である。図2は、図1の制御回路18の構成例を示す回路図である。図3は、図1の半導体装置1に含まれる低電圧検知回路1aと内部回路4とを説明する図である。図4は、実施例1に係るタイミング図である。
図1において、半導体装置1は、半導体チップに形成された半導体集積回路であり、一例では、マイクロコンピュータである。半導体装置1は、スイッチングレギュレータ(以下DC/DCと称す)2と、リニアレギュレータ(以下LDOと称す)3と、VCC入力電圧5を降圧したVCC2降圧電圧(第2出力電圧)30を電源とする内部回路4と、セレクタ回路15と、フリップフロップ回路(以下FFと称す)16と、を含む。半導体装置1の外部には、インダクタンス8とキャパシタ9とが設けられる。DC/DC2とLDO3とは、半導体装置1の電源回路PSCを構成している。FF16は、1ビットのレジスタやフラッグと見做すこともできる。
DC/DC2は、FF16から出力されるイネーブル信号17によりDC/DC2の動作状態(起動状態)および停止状態を制御する制御回路18と、発振器19、リファレンス電圧生成回路20、アンプ回路21、出力用ドライバのPMOS25とNMOS26、出力用ドライバ(25、26)を制御する出力制御回路22、を含む。DC/DC2は、さらに、制御回路18の出力18aにより制御されるセレクタ回路(スイッチ)23、24を含む。PMOS25のソースドレイン経路は、VCC入力電圧5が入力される端子と端子7との間に接続される。PMOS25のゲート電極は、セレクタ回路23の出力23aに接続される。NMOS26のソースドレイン経路は、端子7と接地電位GNDに接続される端子6との間に接続される。NMOS26のゲート電極は、セレクタ回路24の出力24aに接続される。リファレンス電圧生成回路20の出力であるリファレンス電圧20aとVCC1降圧電圧10を入力とするアンプ回路21は、その出力21aが出力制御回路22に接続される。出力制御回路22は、発振器19の出力19aのクロックに基づいて、信号22a、信号22bを生成し、PMOS25とNMOS26のそれぞれのゲート電圧を適宜制御して、端子7からPWM波形を生成する。このPWM波形は、通常1~2MHz程度であり、半導体装置1の外部に配置されたインダクタ8、キャパシタ9により構成されるLCフィルタで平滑化され、所望のVCC1降圧電圧10を得るものである。なお、PMOSはPチャネル型の絶縁ゲート型電界効果トランジスタであり、NMOSはNチャネル型の絶縁ゲート型電界効果トランジスタである。
セレクタ回路15は、FF16へデータを書き込みのために設けられる。セレクタ回路15の出力はFF16に接続される。FF16には、初期化のためにリセット信号11と、内部回路4から出力されるFF16の書き込み用のクロック14とが接続される。セレクタ回路15には、クロック14に同期したデータ12とデータ書き込み制御信号13とが接続される。
LDO3は、VCC1降圧電圧(第1出力電圧)10からVCC2降圧電圧30を生成するPMOS27と、PMOS27のゲート電圧を制御するアンプ回路29、VCC2降圧電圧30を分圧する抵抗28により構成される。アンプ回路29は、リファレンス電圧20aと、抵抗28で電圧分割された電圧28aが接続され、リファレンス電圧20aと電圧28aが等しくなるようPMOS27のゲート電圧29aを制御して、所望のVCC2降圧電圧30を得るものである。なお、LDO3に接続されるVCC入力電圧5は、LDO3の動作電源として利用される。
内部回路4は、図3に示す様に、CPU(Central Processing Unit)4a、割り込み制御回路(以下ICUと称す)4b、フラッシュメモリなどの不揮発性で書き替え可能なメモリ(以下ROMと称す)4c、スタティック型ランダムアクセスメモリ等の揮発性で書き替え可能なメモリ(RAM)4d、タイマやデータ転送装置や通信回路など任意の機能を有する複数の機能モジュール(以下FUMと称す)4eなどを含む。これらの回路(4a~4e)は、バス4fを介して互いに接続されている。
図2に示す様に、制御回路18は、FF16により生成されたイネーブル信号17を入力とするFF40と、FF40の出力を入力とするFF41と、イネーブル信号17とFF41の出力信号41aを入力とするアンド回路42と、イネーブル信号17の立下りでパルスを生成する遅延回路43およびアンド回路44と、を含む。制御回路18は、さらに、アンド回路44の出力44aとリセット入力11を入力とするオア回路45と、アンド回路42の出力42aでセットされ、オア回路45の出力45aでリセットされるセットリセット(SR)ラッチ回路46と、を含む。
図3に示す様に、半導体装置1は、低電圧検知回路1aを含む。低電圧検知回路1aは、VCC入力電圧5の電圧の低下を検出し、検出信号(検出結果)1aaをICU4bへ出力する。VCC入力電圧5の電圧の低下を検出すると、検出信号1aaは“0“から“1”にされる。ICU4bは、検出信号1aaの“1”に基づいて、CPU4aに、電圧低下割り込み信号を発生する。CPU4aは、電圧低下割り込み信号に基づいて、ROM4cに格納されたソフトウエアを実行し、FF16の書き込み用のクロック14、データ12、および、データ書き込み制御信号13を、セレクタ回路15およびFF16へ出力する。これにより、CPU4aは、FF16に“0”を書き込むことができる。たとえば、低電圧検知回路1aは、VCC入力電圧5の電圧が電池から供給される場合に利用できる。電池駆動で電池が消耗した場合、低電圧検知回路1aを用いて、電池から供給されるVCC入力電圧5の電圧の低下を検出し、DC/DC2を停止させ、LDO3のみで内部回路4へVCC2降圧電圧30を供給する。これにより、半導体装置1をできるだけ低電圧で動作させるといった応用に適している。
また、CPU4aは、CPU4aによって書き換え可能な制御レジスタ(以下REGと称す)4gを有する。制御レジスタ(以下REGと称す)4gは、内部回路4の低電流負荷状態への移行を制御する制御ビット4gbを含む。制御ビット4gbは複数の制御ビットで構成してもよい。内部回路4を高電流負荷状態から低電流負荷状態への移行させる場合、CPU4aは制御ビット4gbに、たとえば、低電流負荷状態への移行を指示するデータとして“1”を書き込む。これにより、内部回路4は低電流負荷状態に移行することができる。内部回路4が低電流負荷状態にされると、たとえば、内部回路4の動作クロックが高速クロックから低速クロックへ切り替えられて、内部回路4の動作モードが高速動作モードから低速動作モードや低消費電力モードに変更される。また、内部回路4が低電流負荷状態にされると、消費電力の大きなFUM4eの動作を停止させることもできる。
CPU4aは、低電流負荷状態への移行の指示ないし命令を受けた後、制御ビット4gbへ“1”を書き込むことになる。したがって、CPU4aは、低電流負荷状態への移行の指示ないし命令を受けた時点で、ROM4cに格納されたソフトウエアを実行し、FF16の書き込み用のクロック14、データ12、および、データ書き込み制御信号13を、セレクタ回路15およびFF16へ出力することができる。これにより、CPU4aは、低電流負荷状態への移行の前に、つまり、制御ビット4gbへ“1”を書き込む前に、FF16に“0”を書き込むことができる。これにより、DC/DC2を停止させ、LDO3単体で内部回路4へVCC2降圧電圧30を供給する。その後、内部回路4は低電流負荷状態へ移行する。この結果、低電流負荷時のDC/DC2の電力損失を回避でき、電力効率の良い半導体装置1を得ることができる。
制御ビット4gbを複数の制御ビットで構成する場合、複数の制御ビットは、たとえば、内部回路4の低電流負荷状態への移行を指示する制御ビット、動作クロックの高速クロックから低速クロックへ切り替えを指示する制御ビット、複数のFUM4eのおのおのに対する動作停止を指示する複数の制御ビット、などを含むように構成することができる。
次に、図1の半導体装置1の動作について説明する。なお、本実施例では課題検討用の半導体装置1の動作と重複する説明は省略する場合がある。
(リセット入力11がLowのときの動作)
リセット入力11がLow(第1レベル)のとき、図1の半導体装置1は初期化され、FF16の出力であるイネーブル信号17は“0”となる。つまり、FF16は、“0”(第1状態)にされることになる。内部回路4も初期化され、FF16の書き込み信号13も“0”となる。図2のFF40、FF41は、イネーブル信号17を出力するFF16と異なるクロックに受け渡すために挿入されたフリップフロップであり、リセット入力11がLowのとき、その出力41aは“0”となる。アンド回路42の一方の入力はイネーブル信号17が“0”であるため、出力42aは“0”となる。遅延回路43とアンド回路44はアンド回路44の一方の入力がイネーブル信号17に接続されるため、出力44aは“0”となる。
一方、オア回路45は、リセット入力11のLowにより、その出力45aは“1”となる。これにより、SRラッチ回路46はリセットされ、その出力18aは“0”となり、DC/DC2の発振器19、アンプ回路21、出力制御回路22は停止状態となる。同時に、信号18aはセレクタ回路23、24を“0”側に固定し、DC/DC2の出力ドライバのPMOS25はオン、NMOS26はオフとなる。つまり、リセット入力11のLowにより、DC/DC2は停止状態となり、その出力である端子7はVCC入力電圧5の電圧となる。つまり、DC/DC2の初期状態は停止状態である。一方、LDO3はリセット入力11に係らず動作し、端子7はインダクタ8、キャパシタ9を介してVCC1降圧電圧10に接続され、その電圧はVCC入力電圧5の電圧となり、LDO3の入力電圧となる。LDO3はPMOS27によりVCC2降圧電圧30を生成する。VCC2降圧電圧30は内部回路4に供給される。つまり、リニアレギュレータ(LDO3)の初期状態は動作状態である。
(リセット11をLowからHighとしたときの動作)
次に、リセット11をLowからHigh(第2レベル)、つまり、リセットを解除した後は、DC/DC2は停止状態であり、LDO3は動作状態である。リセットを解除した後、CPU4aは不揮発性で書き替え可能なメモリ4cに格納したプログラムコード(ソフトウエア)により動作し、データ12と書き込み制御信号13、およびクロック14でセレクタ15を介してFF16に“1”(第2状態)を書き込むこととができる。つまり、リセットを解除した後、CPU4aは、ソフトウエアによって、スイッチングレギュレータ(DC/DC2)の停止状態から動作状態(起動状態)にすることができる。
内部回路4によってFF16へ“1”の書き込みが行われると、DC/DC2のイネーブル信号17が、セレクタ15によって、FF16の入力に帰還され、書き込んだ値“1”、すなわち、DC/DC2のイネーブル信号17が“1”の状態で保持される。
イネーブル信号17は、リセット入力11により“0”となる図2のFF41の出力41aが接続されたアンド回路42の一方の入力に接続されるので、アンド回路42の出力42aは“1”となる。そのため、SRラッチ回路45がセットされ、SRラッチ回路45の出力18aが“1”となる。
信号18aにより、図1のDC/DC2は起動し、発振器19、アンプ回路21、出力制御回路22がイネーブルとなる。そして、セレクタ回路23と24で、出力制御回路22の出力22a、22bが出力ドライバのPMOS25とNMOS26に接続され、クロック出力19aに同期したPWM波形が端子7へ出力される。次に、端子7の出力はインダクタ8、キャパシタ9を介して平滑化され、VCC1降圧電圧10が生成される。VCC1降圧電圧10はアンプ回路21に帰還され、アンプ回路21はリファレンス電圧生成回路20で生成されたリファレンス電圧20aとVCC1降圧電圧10とを比較する。アンプ回路21の出力である比較電圧21aに基づいて、出力制御回路22は出力22a、22bの電位を適宜制御する。これにより、PMOS25,NMOS26により生成されるPWM波形と外部素子(8、9)とにより、所望のVCC1降圧電圧10が生成される。
一方、LDO3は、VCC1降圧電圧10を入力とし、PMOS27の制御により、更に降圧されたVCC2降圧電圧30(VCC1降圧電圧10>VCC2降圧電圧30)を生成する。例えば、VCC2降圧電圧30で1.2Vを生成する場合、PMOS27での電圧降下を考慮すると、DC/DC2で生成するVCC1降圧電圧10は、VCC2降圧電圧30より若干高い1.3V程度とすることが望ましい。
(リセット11以外によりDC/DC2を動作状態から停止状態するときの動作)
次に、リセット11以外によりDC/DC2を動作状態から停止状態するときの動作について説明する。
信号18aは、次のようにして、“0”とすることができる。内部回路4内のCPU4aは、ソフトウエアによって、データ12と書き込み制御信号13、およびクロック14でセレクタ15を介してFF16に“0”を書き込むこととができる。FF16へ“0”を書き込むと、DC/DC2のイネーブル信号17が“1”から“0”になり、遅延回路43の出力は遅延時間を経て“0”となる。そして、アンド回路44の出力44aは一時的に“1”となり、オア回路45を介してSRラッチ回路46がリセットされ、SRラッチ回路46の出力18aが“0”となる。これにより、DC/DC2の発振器19、アンプ回路21、出力制御回路22は停止し、セレクタ回路23,24により出力ドライバのPMOS25はオン、NMOS26はオフとなり、端子7はVCC入力電圧5の電圧となる。
この動作は、内部回路4を高電流負荷状態から低電流負荷状態へ移行させる場合に好適である。この場合、内部回路4を低電流負荷に移行させる前に、ソフトウエアによってFF16を“0”にして、DC/DC2を停止状態とし、LDO3単体で動作させるのが良い。内部回路4を低電流負荷に移行させる方法は、たとえば、内部回路4の動作クロックを低速にしたり、内部回路4の動作クロックを停止させたりして、内部回路4を待機状態にすることで、実現することができる。
(VCC1降圧電圧10、VCC2電圧30の波形の説明)
図4は、実施例1に係るタイミング図であり、VCC入力電圧5の投入からのVCC1降圧電圧10、VCC2電圧30の波形を示している。リセット11をLowからHighとしてリセットを解除(時刻t1)した後、FF16に“1”をセットしたとき(時刻t2)、再度リセット11が生じたとき(時刻t3)、再度FF16に“1”をセットしたとき(時刻t4)、FF16を“0”にクリアしたとき(時刻t5)の波形を示すものである。
時刻t1において、リセット11がLowからHighにされるので、LDO3が起動される。LDO3は、VCC1降圧電圧10からVCC2降圧電圧30を生成する。DC/DC2のイネーブル信号17は“0”なので、アンド回路42の出力42aは“0”となり、オア回路45の出力45aは“1”になる。SRラッチ回路46はリセットされ、制御回路18の出力18aは“0”になる。このため、DC/DC2は停止状態になる。前述のようにPMOS25の作用で、VCC1降圧電圧10はVCC入力電圧5の電圧まで引き上げられる。
時刻t2において、内部回路4内のCPU4aは、ソフトウエアによって、データ12と書き込み制御信号13、およびクロック14でセレクタ15を介してFF16に“1”を書き込む。FF16の出力であるDC/DC2のイネーブル信号17は“1”になり、アンド回路42の出力42aは“1”になり、オア回路45の出力45aは“0”になる。これにより、SRラッチ回路46はセットされ、制御回路18の出力18aは“1”になる。出力18aが“1”になると、DC/DC2が起動し、発振器19の出力19aで示すクロックが生成されるとともに、VCC1降圧電圧10は所定の電圧(たとえば、1.3V)まで出力19aに同期して徐々に降圧を行う。なお、LDO3の降圧動作は継続されている。
時刻t3において、リセット11が生じ、リセット11はlowになる。リセット11のlowより、FF16の出力であるDC/DC2のイネーブル信号17は“0”になり、オア回路45の出力45aは“0”になる。これにより、SRラッチ回路46はリセットされ、制御回路18の出力18aは“0”になる。信号18aが“0”になると、DC/DC2が停止状態になり、前述のようにPMOS25の作用で、VCC1降圧電圧10はVCC入力電圧5の電圧まで引き上げられる。その後、リセット11はLowからHighになり、時刻t1で説明したと同様な動作が行われる。
時刻t4において、内部回路4内のCPU4aは、ソフトウエアによって、FF16に“1”を書き込む。以降の動作は、時刻t2の説明と同じであるので、ここでの説明は省略する。
時刻t5において、内部回路4内のCPU4aは、ソフトウエアによって、FF16に“0”を書き込む。FF16へ“0”を書き込むと、DC/DC2のイネーブル信号17が“1”から“0”になり、アンド回路44の出力44aは一時的に“1”となり、オア回路45の出力45aも一時的に“1”になる。そのため、SRラッチ回路46がリセットされ、SRラッチ回路46の出力18aが“0”となる。これにより、DC/DC2が停止状態になる。信号18aが“0”になると、前述のようにPMOS25の作用で、VCC1降圧電圧10はVCC入力電圧5の電圧まで引き上げられる。LDO3の降圧動作は継続されている。
以上の説明では、DC/DC2を使用する形態について説明したが、DC/DC2を使用せず、LDO3のみ使用する形態では、外部素子のインダクタ8やキャパシタ9を接続せず、VCC1端子にはVCC入力5を外部で接続するように半導体集積回路1を実装する基板を作ればよい。
本実施例によれば、以下の1または複数の効果を得ることができる。
1)ソフトウエア、またはハードウエアで、スイッチングレギュレータとリニアレギュレータの切り替えを行い、電力効率よく、かつ広電圧範囲で動作可能な電源回路を提供できる。
2)入力電圧の低下検知回路を併用して、高電圧ではDC/DC2とLDO3の同時動作、低電圧ではLDO単体動作が可能になり、入力電圧が高電圧から低電圧まで動作させることができる。
3)高電流負荷ではDC/DC2とLDO3を同時に動作させ、低電流負荷ではDC/DC2を停止、LDO3を動作させる。これにより、電力効率の良い電源回路を得ることができる。
4)DC/DC2がオフ(停止状態)で、VCC1降圧電圧10がVCC入力電圧5と同電位の状態で、半導体装置1が起動し、VCC1降圧電圧10を入力電圧とするLDO3でVCC2降圧電圧30の生成を行う。その後、ソフトウエアによる設定で、DC/DC2を動作させることができる。これによれば、リセット時にDC/DC2を使用するか、LDO3を使用するかを決める、図9に示す端子32が必要なく、半導体装置1の持つ外部端子(端子32)を他の機能として有効に使用することができる。他の機能とは、たとえば、信号の入力用の端子、信号の出力用の端子、または、信号の入出力用の端子である。
5)また、DC/DC2を使用する形態においては、クロックを低速にしたり、クロックを停止させたりして待機状態にして、内部回路4を低電流負荷に移行させるときは、低電流負荷に移行させる前に、ソフトウエアでFF16を“0”にして、DC/DC2を停止させ、LDO3のみを動作させることができる。この結果、低電流負荷時のDC/DC2の電力損失を回避でき、電力効率の良い半導体装置1を得ることができる。
6)広電圧範囲で動作する汎用マイクロコンピュータにおいて、VCC入力電圧5の低電圧を検知する低電圧検知回路1aを用いることで、DC/DC2の電力効率が低下する電圧を検知でき、低電圧検出割り込みを使用して、ソフトウエアでの書き込みによりFF16を“0”にして、DC/DC2を停止させ、LDO3のみを動作させることができる。これにより、VCC入力電圧5が高電圧から低電圧まで電力効率よく動作させることができる。つまり、VCC入力電圧5が高電圧の場合は電力効率の高いDC/DC2を使用でき、低電圧では、DC/DC2を停止して、LDO3単体の動作に移行でき、半導体装置1の動作電圧範囲の全域で、電力効率よい半導体装置1を得ることができる。
(変形例)
以下に、いくつかの変形例を説明する。
(変形例1)
図5は、実施例1の変形例に係る半導体装置1の要部の構成例を示すブロック図である。図5には、DC/DC2の制御回路18以外の内部構成、LDO3、内部回路4の記載は、省略されている。図5が図1と異なる点は、図5がアンド回路47を有する点である。実施例1の説明では、低電流負荷時や低電圧検出時にソフトウエアでDC/DC2のオン、オフを切り替えていたが、アンド回路47の入力48に低電流負荷時や低電圧検出時に“1”になる信号を接続するとCPU4aが実行するソフトウエアでFF16をセット、クリアする負担が減り、より使い勝手の良い半導体装置1を得ることができるのは言うまでもない。
低電圧検出時に“1”になる信号は、図4に示す低電圧検知回路1aの検出信号1aaを適用することができる。CPU4aのソフトウエアでFF16をセット、クリアすることなく、低電圧検知回路1aの様なハードウエア回路の出力によって、DC/DC2のオン、オフを切り替えることができる。
低電流負荷時に“1”になる信号は、図4に示すREG4gの制御ビット4gbの出力を適用することができる。CPU4aのソフトウエアでFF16をセット、クリアすることなく、CPU4aが制御ビット4gbの出力によって、DC/DC2のオン、オフを切り替えることができる。
(変形例2)
図1には記載していないが、半導体装置1が複数のLDOを備え、低電流負荷時にはオンするLDOの数を調整、または、低負荷電流専用のLDOを使用して、半導体装置1がより低消費電力になるような制御を行ってもよい。
(変形例3)
実施例1では、DC/DCの動作をFF16の様なレジスタにより制御する例について説明したが、レジスタの書き込み手段を持たないような、電源IC単体のような場合は、外部端子からFF16の様なレジスタを制御してもよい。
次に、図6~図8を用いて、実施例2を説明する。図6は、実施例2に係る半導体装置1の構成例を示すブロック図である。図7は、図6の制御回路18の構成例を示す回路図である。図8は、実施例2に係るタイミング図である。
図6が図1と異なる点は、図6において、VCC1降圧電圧10が制御回路18の帰還端子FBに入力される点と、制御回路18の出力18bがアンプ回路21の一方の入力端子に接続される点と、アンド回路47が設けられている点と、である。図6の他の構成及び動作は、図1の構成及び動作と同じであるので、ここでの説明は省略する。また、アンド回路47の動作については、図5に示すアンド回路47の動作と同じであるので、ここでの説明は省略する。VCC1降圧電圧10が制御回路18の帰還端子FBに入力される点、および、制御回路18の出力18bがアンプ回路21の一方の入力端子に接続される点は、図7を用いて、詳細に説明する。
図7に示す様に、図6の制御回路18は、発振器19の出力を分周する分周器50と、分周器50から出力された分周クロック50aをクロックとする3つのFF51、52、54と、SRラッチ回路58のセット信号を生成するアンド回路53と、リセットパルスを生成するための遅延回路55およびアンド回路56と、を有する。図6の制御回路18は、さらに、オア回路57と、2ビットのカウンタ60と、カウンタ60を制御する2つのアンド回路61、62と、VCC1降圧電圧10を分圧する抵抗値Rの3つの抵抗素子67、68、69と、抵抗値2Rの抵抗素子70と、抵抗素子67~70で生成される分圧電圧をアンプ回路入力18bに接続する4つのアナログスイッチ63、64、65、66と、を含む。
次に、実施例2の動作について説明する。なお、以下の実施例2の動作の説明では、実施例1の動作と重複する説明は省略し、主要な動作のみについて説明する。
LDOの性能の一つに、PSRR(電源電圧変動除去比)がある。PSRRは、入力電圧に変動(リップル)があるときに、LDOが、その変動を除去できる能力である。急激なVCC入力電圧5の変動は、LDO3の出力電圧に変動を与えるという問題があった。実施例1では、DC/DC2で降圧電圧を生成するため、半導体装置1の外部に配置するキャパシタ9は、電流供給能力に依存するものの、通常、数μFから数十μFの単位のキャパシタが接続される。そのため、DC/DC2がオン、オフするときのVCC1降圧電圧10の変化は、ある程度勾配が緩やかになる作用があった。しかしながら、LDO3の安定動作のためには、VCC1降圧電圧10の変化を確実に制御して、VCC1降圧電圧10を緩やかに変化させることが望ましい。
実施例2では、DC/DC2の生成するVCC1降圧電圧10をDC/DC2へ帰還し、VCC1降圧電圧10の電圧を段階的に上昇または下降できる制御回路18を有する。VCC1降圧電圧10の電圧を段階的に上昇または下降は、制御回路18に設けられたカウンタ60のカウント値に基づいて行われる。DC/DC2がオンするとき、カウンタ60を用いて、VCC1降圧電圧10を緩やかに立下げる。また、DC/DC2がオフするとき、カウンタ60を用いて、VCC1降圧電圧10を緩やかに立ち上げる。
分周回路50により生成された分周クロック50aは、分周クロック50aに同期してVCC1降圧電圧10の立ち上げ、立下げを制御するものである。FF51,FF52は、実施例1のFF40、FF41と同様な動作を行い、FF51,FF52を介してアンド回路53でSRラッチ回路58を“1”にセットする。2ビットのカウンタ60のデコード信号60aの立ち上がり時に、FF54で1サイクル遅れて、遅延回路55とアンド回路56でパルスを生成して、リセット入力11とのオワ回路57を介してSRラッチ回路58を“0”にリセットする。
図7において、カウンタ60のカウンタ値とカウンタデコード信号60a、60b、60c、60dとは、次の様になるものとする。
カウンタ60のカウンタ値が“00b”のとき、カウンタデコード信号60aが“1”となる。
カウンタ60のカウンタ値が“01b”のとき、カウンタデコード信号60bが“1”となる。
カウンタ60のカウンタ値が“10b”のとき、カウンタデコード信号60cが“1”となる。
カウンタ60のカウンタ値が“11b”のとき、カウンタデコード信号60dが“1”となる。
カウンタ60は、VCC入力電圧5の投入後、リセット入力11がLowのとき、初期化され、そのカウンタ値は“00b”となる。すなわち、カウンタデコード信号60aが“1”であり、カウンタデコード信号60b~60dは“0”である。
DC/DC2を起動する場合、FF16が“1”にセットされ、DC/DC2のイネーブル信号17が“1”となる。DC/DC2のイネーブル信号17がFF51,FF52を介して信号52aを“1”にすると、アンド回路61の出力61aが“1”となり、カウンタ60は分周クロック50aに同期してアップカウントする。
次に、カウンタ60がオーバーフローすると、すなわち、カウンタ値が“11b”になると、アンド回路61の出力61aが“0”となり、アップカウントが終了する。
次に、FF16が“0”にクリアされ、DC/DC2のイネーブル信号17が“0”になると、分周クロック50aから2クロック遅れて、信号52aが“0”となり、アンド回路62の出力62aが“1”となり、次の分周クロック50aの立ち上がりから、カウンタ60はダウンカウントを開始する。カウンタ値が“00b”になると、カウンタデコード信号60aが“1”となり、FF54でクロック1サイクル遅れて、遅延回路55とアンド回路56でパルスが生成され、オア回路57を介してSRラッチ58を“0”にリセットし、カウンタ60のダウンカウントが終了する。
一方、カウンタデコード信号60a~60dはアナログスイッチ63~66により、VCC1降圧電圧10を抵抗値Rの抵抗素子67~69と抵抗値2Rの抵抗素子70で分圧された電圧を信号18bに接続する。信号18bは、アンプ回路21により、リファレンス電圧20aと比較され、出力制御回路22で端子7に出力されるPWM波形を制御する。
例えば、VCC入力電圧5が3.3Vであり、リファレンス電圧20aが1.3Vである場合を例として、説明する。
スイッチ63がオンの場合、VCC1降圧電圧10がそのままアンプ回路21の入力になり、VCC1降圧電圧10が1.3Vになるように、端子7のPWM波形が出力制御回路22により制御される。
スイッチ64がオンの場合、ノード71が1.3Vとなるよう端子7のPWM波形が制御される。この場合、VCC1降圧電圧10は1.3V*5/4*R=1.625Vとなる。
スイッチ65がオンの場合、ノード72が1.3Vとなるように、端子7のPWM波形が制御される。この場合、VCC1降圧電圧10は1.3V*5/3*R=2.166Vとなる。
スイッチ66がオンの場合、ノード73が1.3Vとなるよう端子7のPWM波形が制御される。この場合、VCC1降圧電圧10は1.3V*5/2=3.25Vとなる。
これにより、カウンタ60のカウンタ値が00b(“0”)->01b(“1”)->10b(“2”)->11b(“3”)と順次アップカウントされると、VCC1降圧電圧10はアナログスイッチ63~66で選択された信号18bの電圧に徐々に降下する。
カウンタ60のカウンタ値が11b(“3”)->10b(“2”->)01b(“1”)->00b(“0”)と順次ダウンカウントされると、VCC1降圧電圧10はアナログスイッチ63~66で選択された信号18bの電圧に徐々に上昇する。カウンタ60のカウンタ値が“00b”になると、カウンタデコード信号60aが“1”となり、FF54でクロック1サイクル遅れて遅延回路55とアンド回路56でリセットパルスが生成され、オア回路57を介してSRラッチ回路58が“0”にリセットされる。これにより、SRラッチ回路58の出力信号18aが“0”となり、図6の発振器19、アンプ回路21を停止すると同時に、セレクタ23,24の作用でPMOS25はオンに固定され、NMOS26はオフに固定される。そのため、VCC1降圧電圧10はVCC入力5の電圧に固定される。
(VCC1降圧電圧10、VCC2電圧30の波形の説明)
図8は、VCC入力電圧5の投入からのVCC1降圧電圧10、VCC2降圧電圧30の波形を示している。リセット11をLowからHighとしてリセットを解除(時刻t1)した後、FF16に“1”をセットしたとき(時刻t2)、再度リセット11が生じたとき(時刻t3)、再度FF16に“1”をセットしたとき(時刻t4)、FF16を“0”にクリアしたとき(時刻t5)の波形を示すものである。図8において、「60 Counter」はカウンタ60のカウンタ値をしている。
VCC入力電圧5の投入後、リセット入力11がLowのとき、カウンタ60は初期化され、そのカウンタ値は“00b”となる。
時刻t1において、リセット11がLowからHighにされるので、LDO3が起動される。LDO3は、VCC1降圧電圧10からVCC2降圧電圧30を生成する。DC/DC2のイネーブル信号17は“0”なので、DC/DC2は停止状態になる。実施例1で説明したように、PMOS25の作用で、VCC1降圧電圧10はVCC入力電圧5の電圧まで引き上げられる。
時刻t2において、たとえば、内部回路4内のCPU4aは、ソフトウエアによって、データ12と書き込み制御信号13、およびクロック14でセレクタ15を介してFF16に“1”を書き込む。これにより、DC/DC2のイネーブル信号17は“1”になり、アンド回路53の出力53aが“1”になり、SRラッチ回路58が“1”にセットされる。SRラッチ回路58の出力18aが“1”になると、DC/DC2が起動し、発振器19の出力19aで示すクロックが生成される。また、DC/DC2のイネーブル信号17がFF51,FF52を介してアンド回路52の出力52aを“1”にすると、アンド回路61の出力61aが“1”となり、カウンタ60は分周クロック50aに同期してアップカウントをする。したがって、カウンタ60のカウント値は、00b(“0”)->01b(“1”)->10b(“2”)->11b(“3”)と順次アップカウントされ、DC/DC2が生成するVCC1降圧電圧10はアナログスイッチ63~66で選択された信号18bの電圧に徐々に段階的に降下する。カウンタ値が“11b”になると、カウンタ60がオーバーフローする。そのため、アンド回路61の出力61aが“0”となり、カウンタ60のアップカウントが終了する。
時刻t3において、リセット11が生じ、リセット11はLowになる。リセット11のLowより、カウンタ60は初期化され、そのカウンタ値は“00b”となる。すなわち、カウンタデコード信号60aが“1”となり、カウンタデコード信号60b~60dは“0”となる。また、リセット11のLowより、FF16が“0”になるので、DC/DC2のイネーブル信号17は“0”になり、オア回路57の出力57aは“1”になる。これにより、SRラッチ回路58は“0”にリセットされ、制御回路18の出力18aは“0”になる。信号18aが“0”になると、DC/DC2が停止状態になり、発振器19、ファレンス電圧生成回路20、アンプ回路21、出力制御回路22は停止状態となる。制御回路18の出力18aが“0”になると、前述のようにPMOS25の作用で、VCC1降圧電圧10はVCC入力電圧5の電圧まで引き上げられる。その後、リセット11はLowからHighになり、時刻t1で説明したと同様な動作が行われる。
時刻4において、たとえば、内部回路4内のCPU4aは、ソフトウエアによって、FF16に“1”を書き込み、DC/DC2のイネーブル信号17を“1”にして、DC/DC2のオンをさせる。以降の動作は、時刻t2の説明と同じであるので、ここでの説明は省略する。ここで、カウンタ60のカウント値は、00b(“0”)->01b(“1”)->10b(“2”)->11b(“3”)と順次アップカウントされ、DC/DC2が生成するVCC1降圧電圧10はアナログスイッチ63~66で選択された信号18bの電圧に徐々に段階的に降下する。カウンタ値が“11b”になると、カウンタ60がオーバーフローする。そのため、アンド回路61の出力61aが“0”となり、カウンタ60のアップカウントが終了する。
時刻t5において、たとえば、内部回路4内のCPU4aは、ソフトウエアによって、FF16に“0”を書き込む。または、アンド回路47の入力48に、低電圧検出時に“1”になる信号を出力する低電圧検知回路1aを接続することで、ハードウエア的に、DC/DC2のイネーブル信号17を“0”にして、DC/DC2のオフをさせる様にしてもよい。FF16が“0”にクリアされ、DC/DC2のイネーブル信号17が“0”になると、分周クロック50aから2クロック遅れて、信号52aが“0”となり、アンド回路62の出力62aが“1”となり、次の分周クロック50aの立ち上がりから、カウンタ60はダウンカウントを開始する。カウンタ60のカウンタ値が11b(“3”)->10b(“2”->)01b(“1”)->00b(“0”)と順次ダウンカウントされると、VCC1降圧電圧10はアナログスイッチ63~66で選択された信号18bの電圧に徐々に上昇する。カウンタ60のカウンタ値が“00b”になると、カウンタデコード信号60aが“1”となり、FF54でクロック1サイクル遅れて遅延回路55とアンド回路56でリセットパルスが生成され、オア回路57を介してSRラッチ回路58が“0”にリセットされる。これにより、SRラッチ回路58の出力信号18aが“0”となり、図6の発振器19、アンプ回路21を停止すると同時に、セレクタ23,24の作用でPMOS25はオンに固定され、NMOS26はオフに固定される。そのため、VCC1降圧電圧10はVCC入力5の電圧に固定される。
実施例2によれば、VCC1降圧電圧10を緩やかに立下げ、また、緩やかに立ち上げることができるので、LDO3のPSRR(電源電圧変動除去比)に対して余裕を大きくすることができ、よりLDO3を安定に動作させることができる。
なお、実施例2では、説明を簡単にするため、2ビットのカウンタ60を用いて説明したが、よりビット数の大きなカウンタを用いてもよい。内蔵するLDOの性能に合わせて、抵抗素子67~70やアナログスイッチ63~68と共に、カウンタ60のビット数を調整すればよい。
更に、実施例2では、リセット入力11がHighからLowに変化する場合、VCC1降圧電圧10を緩やかに立下げる制御は行っていない。しかし、リセット入力11をVCC電圧投入時にのみリセット信号を生成するパワーオンリセット信号に変更すれば、VCC1降圧電圧10をリセット入力前の状態で保持することができる。これによれば、リセット前にVCC2降圧電圧30を使用する内部回路4のメモリ4c、4f等に書き込んだ情報も確実に保持できるというメリットがある。
なお、本実施例では、DC/DC2の帰還電圧18bを切り替えてVCC1降圧電圧10の立ち上げ、立下げを緩やかにする構成を説明したが、これに限定されない。例えば、PMOS25のゲート電圧を調整してVCC1降圧電圧10を緩やかに変化させるといった構成を採用してもよい。
以上の説明では、DC/DC2を使用する形態について説明したが、DC/DC2を使用せず、LDO3のみ使用する形態では、実施例1と同様に外部素子のインダクタ8やキャパシタ9を接続せず、VCC1降圧電圧10にはVCC入力5を接続するようにすればよい。
図10は、スイッチングレギュレータとリニアレギュレータの特性を説明する図である。実施例1や実施例2で説明した半導体装置1を汎用マイクロコンピュータとした場合について説明する。汎用マイクロコンピュータは広い電源電圧範囲で動作することが一般的に要求される。図10において、横軸は、汎用マイクロコンピュータの動作電源電圧VCCを示している。汎用マイクロコンピュータの動作電源電圧(横軸VCC)は、一例として、1.68V~3.60Vとして示している。
スイッチングレギュレータ(DC/DC2)が高効率で動作する電圧範囲は2.30V~3.60Vであり、リニアレギュレータ(LDO3)が高効率で動作する電圧範囲は1.68V~2.30Vである。汎用マイクロコンピュータでは、動作電源電圧に応じて、スイッチングレギュレータ(DC/DC2)とリニアレギュレータ(LDO3)とを選択的に用いることにより、広い電源電圧範囲での動作が可能となっている。
なお、図10において、スイッチングレギュレータ(DC/DC2)は、1.68V~2.00Vの電圧範囲において、動作が不可能(NA)であり、2.00V~2.30Vの電圧範囲において、動作が可能だが効率的ではない。一方、リニアレギュレータ(LDO3)は、2.30V~3.60Vの電圧範囲において、動作可能だが効率的ではない。
実施例1および実施例2で説明されたように、LDO3は、1.68V~3.60Vの電圧範囲で動作させる。つまり、半導体装置1(汎用マイクロコンピュータ)に、1.68V~3.60Vの電圧範囲のVCC入力電圧5が入力された場合、LDO3は1.68V~3.60Vの電圧範囲で動作を行う。
一方、DC/DC2は、高効率で動作する電圧範囲(2.30V~3.60V)で動作させる。つまり、半導体装置1(汎用マイクロコンピュータ)に、1.68V~3.60Vの電圧範囲のVCC入力電圧5が入力された場合、DC/DC2は、高効率で動作する電圧範囲(2.30V~3.60V)で動作させる。VCC入力電圧5が1.68V~2.00Vの電圧範囲となると、DC/DC2は停止される。VCC入力電圧5が1.68V~2.00Vの電圧範囲となったことは、図3で説明した低電圧検知回路1aにより検出することができる。また、2.30V~3.60Vの電圧範囲は高電流負荷状態と見做され、1.68V~2.00Vの電圧範囲は低電流負荷状態と見做される。
以上、本発明者によってなされた発明を実施例に基づき具体的に説明したが、本発明は、上記実施形態および実施例に限定されるものではなく、種々変更可能であることはいうまでもない。