図1は,レギュレータ回路の一例を示す図である。図中,S1,S2はスイッチを,CRは容量を,VPは電源を,BGRはバンドギャップ回路を,IRはBGRに流れる電流を,VRFは容量CRに蓄えた基準電圧を,REGはレギュレータを,VDP5は電源を,VDDはレギュレータREGの出力電圧を,CVDDは容量を,EAMPは誤差アンプを,PMO1は出力PMOSトランジスタを,RR1とRR2は分圧抵抗を,VDIV1は分圧回路の分圧出力を,GNDは0Vの電位をそれぞれ示している。なお,BGRはBand Gap Referenceの省略である。
図1では,バンドギャップ回路BGRを,スイッチS1により一定期間だけ動作させて,基準電圧VBGRを発生し,発生した電位を容量CRに記憶する。動作していない期間は,バンドギャップ回路BGRを停止することで,消費電流を削減する。
図1の回路は,バンドギャップ回路BGRの消費電流を実効的に削減できる利点があるが,一方,図1の回路の基準電圧VRFの電位は図2に示されるとおりリップルを持ち,内部電源VDDの電圧精度が低下する問題がある。
容量CRにバンドギャップ電圧VBGRを記憶して,所定の期間だけバンドギャップ回路BGRを動作させ,残りの期間,バンドギャップ回路を停止すると,リーク電流により,記憶したバンドギャップ電圧が変化する。図1の回路をマイクロコントローラに適用することを想定すると,マイクロコントローラMCUでは,例えば,内部のCPUが動作している状態で,内部電圧VDDの電位が変化すると,その分,回路の設計遅延時間に余裕をとっておくことが必要となる。つまり,アクティブ状態では,内部電圧VDDの設定電圧精度は高いことが望ましいが,図1の回路はこの電圧設定の精度を多少,犠牲にすることで,消費電力の削減を達成している。
図2は,図1のレギュレータ回路の動作波形を示す図である。スイッチS1をONすることで,バンドギャップ回路BGRに電源電流IRを供給する。バンドギャップ回路BGRがONとなることで,その出力電圧VBGRの電位がバンドギャップ電圧(約1.2V)となる。スイッチS2をONとして,容量CRの電位をバンドギャップ電圧VBGに充電する。スイッチS2をOFFとしてVRFをVBGRから切り離した後,スイッチS1をOFFとする。すると出力電圧VBGRは0V程度の電位になるが,容量CRには出力電圧VBGRが記憶されている。スイッチS2をOFFとすることで,容量CRに蓄えた電荷は,リーク電流により少しづつ失われていく。このため,基準電圧VRFはゆっくり低下していく。許容できる電圧の下限を,仮にVBLとすると,基準電圧VRFがVBLになる以前に,スイッチS1,S2をONとして,再び容量CRをバンドギャップ電圧に充電する。
このように,バンドギャップ回路BGRを一定期間動作させ,残りの期間は停止させることで,消費電力を削減できる。
図3は,マイクロコントローラMCUのシリーズレギュレータの回路を示す図である。図3において,VDP5は例えば5Vの外部電源を,BGRはバンドギャップ回路を,VBGRはバンドギャップ電圧を,REGはレギュレータを,VDDはレギュレータREGの出力電圧,例えば1.8Vを,CVDDは外部容量を,EAMPは誤差アンプを,PMO1は出力PMOSトランジスタを,RR1とRR2は分圧抵抗を,VDIVは分圧回路の分圧出力を,GNDは0Vの電位を,LOGICは電源VDDで動作する論理回路を,MCUはマイクロコントローラ全体をそれぞれ示している。図1と対応する素子,ノードには同じ名称を与えて,対応関係を示した。以下,他の図でも,対応する素子,ノードには同じ名称を与えて示すものとする。
マイクロコントローラMCUのシリーズレギュレータでは,バンドギャップ回路BGRが生成するバンドギャップ電圧VBGRを基準電圧として,分圧回路の電圧VDIVとバンドギャップ電圧VBGRの電位が一致するよう,エラーアンプEAMPにより負帰還制御されている。抵抗RR1とRR2の比を1:2に設計しておけば,バンドギャップ電圧VBGRが1.2Vなので,内部電源VDDの電位を1.8Vに制御できる。
図3の回路は,構成が単純な利点があるが,一方で,低消費電力化に不都合な部分がある。MCUのレギュレータ回路に求められる特性として,論理回路LOGICが最大周波数で動作している場合に内部電源VDDから十分な電流を供給できることが求められる。このため,出力PMOSトランジスタPMO1は,最大負荷電流,例えば100mAを供給できるような大きさ(ゲート幅)に設計する必要がある。
一方,マイクロコントローラMCUでは,例えば,CPUが動作していない場合に,消費電流が小さいことが望まれる。すなわち,図3でCPUを含む論理回路LOGICが動作していない場合には,レギュレータREGの消費電流ができるだけ小さいことが望ましい。レギュレータREGは負帰還回路なので,回路の安定性を考慮して各部の定数が設計される。トランジスタPMO1のサイズを動作時の最大負荷電流を供給可能なサイズに設計すると,トランジスタPMO1のゲート容量はある値より小さくできない。このため,回路が安定するように設計しようとするとレギュレータREGの消費電流もある値より小さくできない。
図4は,マイクロコントローラMCUのシリーズレギュレータの他の回路を示す図である。図4は,図3に示したレギュレータがメインレギュレータREGMとスリープ用のサブレギュレータREGSとを有し,それぞれのレギュレータがイネーブル信号ENM,ENSによりその動作が制御される。それ以外は,図3と同じである。
図4の回路では,マイクロコントローラMCUが動作しているときの最大負荷電流はメインレギュレータREGMで供給し,マイクロコントローラMCUやCPUが停止している場合には,スリープ用のサブレギュレータREGSで内部電源VDDに電位を供給する。つまり,マイクロコントローラMCUが停止している場合(以下,スリープ時と呼ぶ。),スリープ用レギュレータREGSだけを動作させて,メインレギュレータREGMは動作を停止する。一方,マイクロコントローラMCUが動作している場合は,メインレギュレータREGMを動作させる。
このような構成とすると,サブレギュレータの出力トランジスタPMO2のゲート容量をメインレギュレータの出力トランジスタPMO1のゲート容量より小さく設計できる。なぜならば,スリープ時には,論理回路LOGICのリーク電流程度の電源電流を内部電源VDDに供給するだけでよいからである。例えばメインレギュレータの出力トランジスタPMO1が最大100mAの電流を供給できるように設計されるのに対して,サブレギュレータの出力トランジスタPMO2は数mA程度の電流を供給できるサイズに設計される。トランジスタPMO2の容量を小さくできるので,誤差アンプEAMP2の消費電流を小さく設計することが可能となる。これにより,動作時の最大電流の要求と,スリープ時の消費電流をできるだけ削減する要求を両立させることができる。
しかしながら,図4の回路では,レギュレータをメインレギュレータREGMとスリープ用のサブレギュレータREGSに分けることで,スリープ時に動作するサブレギュレータREGSの消費電流の削減を図っているにすぎず,バンドギャップ回路BGR自体の消費電流は削減されていない。
図4の回路構成で,単純に回路を構成する抵抗の抵抗値を大きく設計すれば,バンドギャップ回路の消費電流を小さく設計できる。しかし,その場合,抵抗の占有面積が増加するという問題が生じる。また,バンドギャップ回路の消費電流を単純に小さく設計すると,PSRR(電源電圧変動除去比率,Power Supply Rejection Ratio,電源電圧の変化に対する出力の影響をあらわす。大きな値ほど電源電圧の変動に対して,出力が安定していることを示す。)が悪くなるという問題もある。
そこで,内部の論理回路が動作中にはリップルのない高精度の内部電源電圧VDDと十分な電流を供給することができ,一方,スリープ中にはバンドギャップ回路を含めてレギュレータ回路の消費電力を削減することが望まれる。
[本実施の形態]
図5は,本実施の形態におけるレギュレータ回路とそれを有する集積回路装置の構成図である。集積回路装置の一例として,マイクロコントローラMCUが示されている。図5のマイクロコントローラは,論理回路LOGICと水晶発振器XSOCを除いて,バンドギャップ回路BGRと,BGR制御回路BGRCTRLと,メイン及びサブレギュレータREGM,REGSとでレギュレータ回路を有する。
図5において,MCUはマイクロコントローラ全体を,LOGICは内部電圧VDDを電源として動作しCPUなどを有する論理回路を,VDP5は例えば5Vの外部電源を,GNDは0Vの電位を,BGRはバンドギャップ回路を,VBGRはバンドギャップ回路が生成するバンドギャップ電圧を,REGMはアクティブ状態で動作するメインレギュレータを,REGSはスリープ状態で動作するサブレギュレータを,VDDはレギュレータ回路が生成する出力電圧,例えば1.8V,の内部電圧を,CVDDは外部容量を示す。
メインレギュレータREGMとサブレギュレータREGSにおいて,EAMP1,EAMP2は誤差アンプを,PMO1,PMO2は出力PMOSトランジスタを,RR1,RR2,RR3,RR4は分圧抵抗を,VDIV1,VDIV2は分圧回路の分圧出力を,NM1,NM2はNMOSトランジスタを,ENMはメインレギュレータREGM1のイネーブル信号(動作制御信号)を,ENSはスリープ用レギュレータREGS1のイネーブル信号を示す。
さらに,ENBGRはバンドギャップ回路BGRのイネーブル信号を,SWBGRCはBGRのキャパシタスイッチを,ENSWBGRはスイッチSWBGRCの制御信号を,VBGRCはサブレギュレータREGSの基準電圧であるBGRキャパシタ電圧を,CBGRはバンドギャップ電圧を記憶するBGRキャパシタを,BGRCTRLは,バンドギャップ回路を制御する制御信号ENBGR,ENSWBGRなどを発生するBGR制御回路を,XOSCは水晶発振回路を,CKRTCは水晶発振回路の出力クロックをそれぞれ示している。
図4と対応する素子,ノードには同じ名称を与えて,対応関係を示した。以下,他の図でも,対応する素子,ノードには同じ名称を与えて示すものとする。特に断らない限り,図で対応する素子,ノードには同じ名称を与えて,説明の重複を避けるものとする。
図5において,バンドギャップ回路BGRと,メインとサブレギュレータREGM,REGSと,BGR制御回路BGRCTRLと,サブレギュレータのイネーブル信号ENSを生成するインバータINV0は,外部電源VDP5を電源とする。一方,論理回路LOGICは,レギュレータが生成する内部電圧VDDを電源とする。また,水晶発振回路XOSCも,同様にレギュレータが生成する内部電圧VDD2を電源とする。この内部電圧VDD2は,内部電圧VDDと同じであるが,別の電源経路で供給される。あるいは,この内部電源VDD2はレギュレータとは別の専用の電源回路で発生してもよい。
電源起動時の概略的な動作では,外部電源VDP5が起動すると,サブレギュレータREGSを制御するイネーブル信号ENSは,抵抗R0とインバータINV0により強制的にHレベルにされ,サブレギュレータREGSは動作状態になる。一方,メインレギュレータREGMを制御するイネーブル信号ENMは,論理回路LOGIC内のCPUによって通常動作時に生成されアクティブ状態とスリープ状態に対応してイネーブル(Hレベル)とディセーブル(Lレベル)に制御される動作制御信号である。このイネーブル信号ENMは,内部電圧VDDを電源とする論理回路LOGICが生成する制御信号であるので,電源起動時はHレベルまたはLレベルのいずれになるか不定である。そして,外部電源VDP5の起動に応答して,BGR制御回路BGRCTRLがバンドギャップ制御信号ENBGR,ENSWBGRをイネーブル状態にして,バンドギャップ回路BGRを起動させる。それと同時に,BGR制御回路BGRCTRLがメインレギュレータREGMのイネーブル信号ENMを動作状態(Hレベル)にすることもできる。
電源起動後,やがて,バンドギャップ回路BGRとサブレギュレータREGSにより内部電圧VDDが規定の電圧に上昇し,その後の通常動作時では,論理回路LOGICが通常動作を開始し,アクティブ状態またはスリープ状態に応じてメインレギュレータのイネーブル信号ENMをイネーブルまたはディセーブルに制御する。アクティブ状態では,イネーブル信号ENM=Hレベル(イネーブル)によりメインレギュレータREGMが動作し,BGR制御回路BGRCTRLによりレギュレータ回路BGRが連続動作に制御され,リップルのない高精度で十分な電流量を有する内部電圧VDDが生成される。一方,スリープ状態では,イネーブル信号ENM=Lレベル(ディセーブル)によりメインレギュレータREGMが停止し,BGR制御回路BGRCTRLによりレギュレータ回路BGRが間欠動作に制御される。ただし,サブレギュレータREGSは電源起動後も常時動作状態にあるので,ややリップルのあるBGRキャパシタ電圧VBGRCに基づいて,サブレギュレータREGSが電流量を小さくした内部電圧VDDを生成する。
図6は,図5のレギュレータ回路のアクティブ状態の各部の波形,制御信号を示している。図7は,図5のレギュレータ回路のスリープ状態の各部の波形を示している。
図5のメインレギュレータREGMは,論理回路LOGIC内のCPUがアクティブ状態時にENM=Hレベルにより動作し,内部電圧VDDに最大電源電流を供給する。一方,サブレギュレータREGSは,論理回路がスリープ状態のときに動作して,内部電圧VDDに必要最小限の電源電流を供給する。ただし,本実施の形態では,前述したとおり,電源起動時以降,インバータINV0により生成されるイネーブル信号ENS=Hレベルによって,サブレギュレータREGSはアクティブ,スリープ状態両方で常時動作状態にされる。これにより,電源起動時の制御信号の不定状態によりレギュレータ回路が起動しない状態を回避している。スリープ状態ではENM=LレベルによりメインレギュレータREGMは動作を停止する。
図5において,メインレギュレータREGMの基準電圧は,バンドギャップ電圧VBGRであり,一方,サブレギュレータREGSの基準電圧は,BGRキャパシタCBGRに記憶したBGRキャパシタ電圧VBGRCである。このBGRキャパシタ電圧は,アクティブ状態ではバンドギャップ電圧であり,スリープ状態ではバンドギャップ電圧を記憶したBGRキャパシタの電圧である。
図6のアクティブ状態では,バンドギャップ回路BGRのイネーブル信号ENBGRはHレベル,BGRキャパシタCBGRにバンドギャップ電圧を記憶するための制御信号であるBGRスイッチイネーブル信号ENSWBGRはHレベル,メインレギュレータENMのイネーブル信号ENMはHレベル,サブレギュレータのイネーブル信号ENSはHレベルになる。
したがって,アクティブ状態では,バンドギャップ回路BGRは連続動作し,バンドギャップ電圧VBGR(約1.2V)を生成する。また,BGRスイッチSWBGRCは常時ON状態となり,BGRキャパシタCBGRにバンドギャップ電圧VBGRが印加され,BGRキャパシタ電圧VBGRCは,バンドギャップ電圧VBGRになる。さらに,メインレギュレータREGMが動作し,サブレギュレータREGSも動作する。
アクティブ状態には,メインレギュレータREGMと,スリープ用のサブレギュレータREGSが同時に動作しているが,メインレギュレータの出力トランジスタPMO1はサブレギュレータの出力トランジスタPMO2に比べて,10倍以上大きいので,内部電圧VDDへの負荷電流のほとんどは,メインレギュレータREGMから供給される。
メインレギュレータREGMの基準電圧は,連続動作中のバンドギャップ回路が発生するバンドギャップ電圧VBGRであり,メインレギュレータは適切な電位で十分な電流量の内部電圧VDDを生成する。また,BGRキャパシタスイッチSWBGRCがオン状態であるので,サブレギュレータREGSにもバンドギャップ電圧VBGRが基準電圧として供給されている。バンドギャップ回路BGRが連続動作しているので,バンドギャップ回路BGRの電源電流は一定の電流が流れている。
このように,アクティブ状態には,バンドギャップ回路BGRを連続動作させているので,バンドギャップ電圧VBGRが一定電圧となり,レギュレータの出力電圧である内部電圧VDDが変動することはない。
図7に示すとおり,スリープ状態には,メインレギュレータのイネーブル信号ENMはLレベル,サブレギュレータのイネーブル信号ENSはHレベルになっている。イネーブル信号ENMは,論理回路LOGIC内のCPUなどによりLレベルに制御されているが,サブレギュレータのイネーブル信号ENSは,インバータINV0により常時Hレベルになっている。
一方,バンドギャップ回路BGRでは,イネーブル信号ENBGRがHレベルとLレベルを繰り返し,バンドギャップ回路BGRは動作状態と停止状態とを繰り返し,間欠的な動作をする。それに応じて,バンドギャップ電圧VBGRはバンドギャップ電位(1.2V)と0Vとを繰り返す。さらに,BGRスイッチイネーブル信号ENSWBGRは,イネーブル信号ENBGRがHレベルの期間中,一時的にHレベルになる。その間,BGRキャパシタスイッチSWBGRCがオン(導通)して,BGRキャパシタCBGRがバンドギャップ電圧VBGRに充電される。
イネーブル信号ENBGRをLからHに変化させて,バンドギャップ回路BGRを動作させ,バンドギャップ電圧VBGRの電圧が安定するのを待って,BGRスイッチイネーブル信号ENSWBGRをLからHに変化させる。それにより,BGRスイッチキャパシタSWBGRCがONとなるので,BGRキャパシタCBGRがバンドギャップ電圧VBGRの電位に充電される。BGRキャパシタCBGRを充電した後,BGRスイッチイネーブル信号ENSWBGRをHからLに変化させ,スイッチSWBGRCをOFFにし,キャパシタCBGRはバンドギャップ電圧VBGRから切り離される。キャパシタCBGRをバンドギャップ電圧VBGRから切り離した後,イネーブル信号ENBGRをHからLに変化させて,バンドギャップ回路BGRを停止する。バンドギャップ回路を一定期間動作させ,残りの期間,回路を停止させるので,消費電力を削減できる。
BGRキャパシタCBGRの電荷は,スイッチSWBGRCをOFFとした後,リーク電流により少しずつ失われていく。このため,BGRキャパシタ電圧VBGRCの電位はゆっくり低下していく。そして,BGRキャパシタ電圧VBGRCの電位が許容できる電圧の下限になる以前に,バンドギャップ回路をONとして,再びキャパシタCBGRをバンドギャップ電圧VBGRに充電する。その結果,BGRキャパシタ電圧VBGRCの電位は,図7に示されるとおり,リップルを有する。
しかし,スリープ状態時はメモリの内容を保持したり,レジスタの内容を保持したりできれば良いので,BGRキャパシタ電圧VBGRCが多少変動し,内部電源電圧VDDの値が変動しても影響は小さい。つまり,バンドギャップ回路BGRをスリープ時のみ間欠動作し,アクティブ状態時にはバンドギャップ回路BGRを連続動作させることで,スリープモード時の低消費電力化と,アクティブ状態時の基準電圧精度の確保を両立することができる。
スリープ状態時のバンドギャップ回路BGRの消費電流の削減は,図7のBGRイネーブル信号ENBGRのHの期間とLの期間の比を大きくすることで達成される。BGRイネーブル信号ENBGRのHとLを繰り返す周期に対して,バンドギャップ回路BGRが動作している期間を小さくしていけば,実効的にバンドギャップ回路BGRの消費電力を削減することができる。ただし,その場合,リーク電流によりBGRキャパシタCBGRから失われる電荷も大きくなるので,BGRイネーブル信号ENBGRをLとできる期間の上限は,リーク電流によって決まる。
図5のレギュレータ回路では,スリープ状態時のバンドギャップ回路BGRの消費電流を間欠動作により削減するので,バンドギャップ回路BGRを構成する抵抗の値を極端に大きくする必要はない。これにより回路の占有面積を削減できる効果が得られる。また,アクティブ状態時のバンドギャップ回路BGRの電流を極端に小さくする必要がないので,PSRRを改善することもできる。
図4の回路で,図5の実施の形態の回路とスリープ時のバンドギャップ回路BGRの消費電流を同じに設計したと仮定し,その差を比較する。図5の回路で間欠動作による電流削減の効果を仮に1/10とする。つまりBGRイネーブル信号ENBGRがHの期間が全体の1/10程度であるとする。図4の回路では,バンドギャップ回路BGRはスリープ時にも連続動作しているので,バンドギャップ回路の電流は図4の回路の10倍となる。したがって,図4の回路のバンドギャップ回路BGRの抵抗の面積は,図5の回路の10倍の面積を必要とする。
また,図4の回路では,スリープ状態時もアクティブ状態時(メインレギュレータ動作時)も同じバンドギャップ回路BGRを使用するので,スリープ時に合わせてバンドギャップ回路BGRを設計しておくと,図4のアクティブ状態でのバンドギャップ回路BGRの電流は,図5の回路の1/10となる。ただし,アクティブ状態では,メインレギュレータREGMで内部電圧VDDを供給し,マイクロコントローラMCUの各部は最高周波数で動作している。その場合,外部電源のノイズも存在するので,バンドギャップ回路においてPSRRを確保しておくことも重要である。
図4の回路で,連続動作するバンドギャップ回路BGRを,スリープ状態用と,アクティブ状態用に個別に設け,メインモード用のバンドギャップ回路の消費電力を大きく設計しておけば,メインモード時のPSRRを改善することは可能である。しかし,2つのバンドギャップ回路により面積の増加を招く。図5の回路は,このような観点から,アクティブ状態での電圧精度,PSRRの確保,スリープ状態時の消費電流の削減を両立する効果を得ている。
図5のマイクロコントローラは,図7に示したバンドギャップ回路の間欠動作のための制御信号ENBGR,ENSWBGRを発生するために,クロックとして32kHzの水晶発振回路XOSCを有する。マイクロコントローラMCUでは,時計(RTC)用に32kHzの水晶発振回路を搭載することが多い。この32kHz(32768Hz)のクロック信号CKRTCをもとに,BGR制御回路BGRCTRLが,制御信号ENBGR,ENSWBGRを発生する。
図8は,本実施の形態におけるバンドギャップ回路の回路図である。図中,バイアス発生回路BIAS1では,RB1はバイアス回路の抵抗を,GNDはGND端子0Vを,VDP5は例えば5Vの外部電源端子を,PMBn(nは整数)はPMOSトランジスタを,NMBn(nは整数)はNMOSトランジスタを,PDBはバイアス回路のパワーダウン制御信号を,PMPDn(nは整数)はパワーダウン用のPMOSトランジスタを,BNB,BPBはバイアス回路で発生したバイアス電位を示す。
また,バンドギャップ回路BGRにおいて,RBGR1〜3は抵抗を,Q1,Q2はpnpバイポーラトランジスタを,PMSW1〜3はスイッチ用のPMOSトランジスタを,NMSW1はスイッチ用のNMOSトランジスタを,NMPD1,2はパワーダウン用のNMOSトランジスタを,CB1は容量を,RCBGRは抵抗を,ENBGRXはBGRイネーブル信号ENBGRの反転信号を,OPIM,OPIPはバンドギャップ回路内部のオペアンプの入力を,PMSTn(nは整数)はスタートアップ回路用のPMOSトランジスタを,NMSTn(nは整数)はスタートアップ回路用のNMOSトランジスタを,STUPはBGRのスタートアップ回路を,それぞれ示している。
図8で,バイポーラトランジスタQ1,Q2に添えられた数字(×1,×10)は,バイポーラトランジスタのエミッタ領域の相対的な面積の比を示している。他の図と対応する素子,ノードには同じ名称を与えて,対応関係を示した。特に断らない限り,Rで始まる素子名は抵抗を,PMで始まる素子名はPMOSトランジスタを,NMで始まる素子名はNMOSトランジスタを,Cで始まる素子名は容量を表わす。
バイアス回路BIASは,外部電源VDP5を供給され,バンドギャップ回路を動作させるためのバイアス電圧BPB,BNPを生成する。トランジスタNMB2のゲート幅WをトランジスタNMB1のゲート幅より大きく設計しておき,両トランジスタNMB1とNMB2のゲート電圧の差電圧を抵抗RB1に加えて電流を発生する。このときのNMOSトランジスタのゲート電圧BNBとPMOSトランジスタのゲート電圧BPBをバンドギャップ回路のバイアス電圧として使用する。例えば,PMOSトランジスタPMB1−4は同じゲート電圧BPBによるカレントミラー回路を構成する。バイアス回路自体はよく知られているので,この動作の詳細な説明は省略する。図8では簡単のためにバイアス回路のスタートアップ回路は省略している。
BGRイネーブル信号ENBGRXはENBGRの反転信号であり,イネーブル信号ENBGRXがLレベルのときバンドギャップ回路は動作状態となる。イネーブル信号ENBGRXがLレベルのとき,トランジスタPMSW1,PMSW2がONとなり,バイアス回路とカレントミラーを構成する電流源トランジスタPMB3,PMB4に電流が流れる。イネーブル信号ENBGRXがLレベルのとき,トランジスタNMPD1,NMPD2はOFFとなるので,バンドギャップ回路の動作に影響しない。
電流源トランジスタPMB3とPMB4に電流が流れるので,トランジスタPMB5,PMB6,NMB3,NMB4,PMB3,PMB4,NMB5は2段アンプとして動作する。オペアンプ(PMB5,PMB6,NMB3,NMB4,PMB3,PMB4,NMB5)による負帰還により,オペアンプの電圧利得が十分大きい場合には,入力OPIMとOPIPの電位が(ほぼ)等しくなって回路が安定する。なお,キャパシタCB1は位相補償容量として働く。
バンドギャップ回路では,例えば,抵抗RBGR1,RBGR2は等しく設計され, オペアンプが安定した状態では2つの入力OPIM,OPIPの電圧が等しくなるので,両抵抗に同じ電流が流れる。その結果,バイポーラトランジスタQ1,Q2には同じ電流が流れ,pn接合の面積比1:10により,電流密度が1:1/10になり,バイポーラトランジスタQ1,Q2の順方向電圧VBEには約60mVの差が生成される。この電圧差は抵抗RBGR3に印加される。したがって,バンドギャップ電圧VBGRは,バイポーラトランジスタQ1のエミッタベース間pn接合の順方向電圧(入力OPIPの電位)と,異なる電流密度にバイアスされたQ1とQ2のpn接合の順方向電圧の差を抵抗比(RBGR2/RBGR3)倍した電圧の和となっている。
なお,通常は,抵抗RBGR1は抵抗RBGR2の1/10程度に設計されることが多い。
バイポーラトランジスタのpn接合の順方向電圧(OPIPの電位)は温度の上昇にともなって減少する負の温度依存性を持ち,一方,異なる電流密度にバイアスされた両バイポーラトランジスタのpn接合の順方向電圧の差は温度に比例して大きくなる正の温度依存性を持つ。それにより,これらを加算した基準電圧VBGRの値は温度に依存せず,そのときのバンドギャップ電圧VBGRは,シリコンのバンドギャップ電圧に相当する約1.2V(1200mV)となることが知られている。バンドギャップ回路の原理自体はよく知られているので,原理の詳細な説明は省略する。このように,イネーブル信号ENBGRX=Lレベルで電流源PMB3,PMB4に電流が流れることで,バンドギャップ回路は動作状態になり,Hレベルで電流が停止し停止状態になる。
スタートアップ回路STUPは,イネーブル信号ENBGRXがLレベルのとき,バンドギャップ回路BGRのスタートアップ回路として動作する。このスタートアップ回路の電源は外部電源VDP5である。
一般に,バンドギャップ回路BGRには,回路が安定して動作する点が2箇所あり,それぞれ,出力電圧VBGRが1.2Vで出力される場合と0V固定になる場合である。BGR回路の出力が1.2Vとなる状態で動作させるために,このスタートアップ回路STUPが必要となる。
BGRイネーブル信号ENBGRXがLレベルのときPMSW3がONとなるので,PMST1に電流が流れスタートアップ回路としてSTUPが働く。トランジスタPMST1のゲート電圧はバイアス回路で発生したバイアス電圧BPBとなっており,イネーブル信号のHレベルによりトランジスタPMSW3がONとなると電流源として動作する。
バンドギャップ回路の出力電圧VBGRが0Vのときには,トランジスタPMST1により電流が流れ,トランジスタNMST4のゲートがHレベルになる。イネーブル信号ENBGRはHレベルなので,トランジスタPMST2はオフで,トランジスタPMST4がオンになりオペアンプの入力OPIPの電位を引き上げる。入力OPIPの電位がバイポーラトランジスタQ1のpn接合の順方向電圧になることで,出力電圧VBGRが1.2Vの動作点でバンドギャップ回路全体が安定する。出力電圧VBGRが1.2Vとなると,トランジスタNMST1がオンになりに電流が流れるので,トランジスタNMST4はオフで電流が流れなくなり,トランジスタPMST3,PMST4もオフになり,スタートアップ回路STUPはバンドギャップ回路の動作に影響しなくなる。
イネーブル信号ENBGRXがLレベルで出力電圧VBGRの電位がバンドギャップ電圧となっている間に,BGRキャパシタスイッチNMSW1をONとすることで,キャパシタCBGRをバンドギャップ電位に充電することができる。
次に,BGRイネーブル信号ENBGRXがHのときの動作を説明する。イネーブル信号ENBGRXをHレベル(ENBGRをLレベル)とすると,バイアス回路BIASを除いて,パワーダウン状態となる。イネーブル信号ENBGRXをHレベルとすると,トランジスタPMSW1,PMSW2がOFFとなるので,オペアンプ(PMB5,PMB6,NMB3,NMB4,PMB3,PMB4,NMB5)は動作を停止する。また,トランジスタNMPD1とNMPD2がONするので,オペアンプのトランジスタNMB5のゲート電位は0Vに固定されて,出力電圧VBGRの電位は抵抗RBGR1とバイポーラトランジスタQ1を経由してゆっくり放電される。イネーブル信号ENBGRXをHとするとスタートアップ回路内のトランジスタPMSW3もOFFするので,スタートアップ回路STUPも停止状態となる。
イネーブル信号ENBGRXをHレベル(ENBGRをL)とすることで,バンドギャップ回路は動作を停止するが,このときスリープ用のサブレギュレータREGSは動作していなければならない。この目的のために,図8ではバンドギャップ回路を停止しているときでも,バイアス回路BIASだけは動作するように回路を構成している。バイアス回路BIASをもとにサブレギュレータREGSを動作させる。
以上説明したように,図8では,BGRイネーブル信号ENBGRXで電流源PMB3,PMB4の電流をON/OFF制御することで,図5のバンドギャップ回路BGRの間欠動作を実現する。スタートアップ回路においても,同様に,電流源PMST1の電流をイネーブル信号ENBGRXでON/OFF制御することで,イネーブル信号ENBGRXがLレベルのときだけ,スタートアップ回路STUPを動作させる。
図9は,バンドギャップ回路の間欠動作での信号波形図である。図9に示すように,イネーブル信号ENBGRXをHからLレベルに変化させると,スタートアップ回路STUPと,オペアンプ(PMB5,PMB6,NMB3,NMB4,PMB3,PMB4,NMB5)が動作し,出力電圧VBGRの電位はバンドギャップ電圧の1200mVとなる。このとき,図9に示すように,出力電圧VBGRの電位が安定するまでには有限の時間が必要となる。図9では,イネーブル信号ENBGRXをHからLレベルに変化させてから出力電圧VBGRの電位が安定するまでの時間をtpdbgrとして示した。
イネーブル信号ENBGRXをHからLレベルに変化させてバンドギャップ回路を動作させ,出力電圧VBGRの電位が1200mVに十分近い値となった後,スイッチのイネーブル信号ENSWBGRをLからHレベルとして,BGRキャパシタCBGRにバンドギャップ電圧を記憶する。
図9でスイッチのイネーブル信号ENSWBGRをLからHレベルに変化させると,BGRキャパシタスイッチNMSW1がONとなり,キャパシタCBGRはバンドギャップ電圧VBGRの電位に充電される。抵抗RBGRは必須な素子ではないが,イネーブル信号ENSWBGRの変化で生じる電荷の注入などで,キャパシタ電圧VBGRCの電位にスパイク状のノイズが生じないようにフィルタとして設けられている。
BGRキャパシタCBGRにバンドギャップ電圧VBGRの電位を記憶した後,キャパシタスイッチNMSW1をOFFとする。BGRスイッチイネーブルENSWBGRをLレベルとするとキャパシタスイッチNMSW1はOFFとなるので,この後イネーブル信号ENBGRXをHレベルとしてBGR回路をOFFにしても,低下する出力電圧VBGRの電位はキャパシタ電圧VBGRCの電位に影響しない。
消費電力を削減するために,バンドギャップ回路の定常電流はできるだけ小さいことが望まれる。抵抗を大きくして消費電流を小さく設計すると,バンドギャップ回路を動作させはじめてから各部の電位が安定するまでの時間は大きくなる。バンドギャップ回路での電流を,例えば数マイクロアンペアというような値に設計すると,バンドギャップ回路を動作させはじめてから,出力電圧VBGRが安定するまでの時間tpdbgrは,例えば,数十マイクロ秒という値となる。
つまり,イネーブル信号ENBGRXをHからLに変化させてから,スイッチのイネーブル信号ENSWBGRをLからHレベルとするまでの時間差は,時間tpdbgrより大きくなければならない。ところが,MCUで使用するような低電力のBGR回路では,この値が,数十マイクロ秒という大きな値となる。このようなイネーブル信号ENBGRXの立ち下りとENSWBGRの立ち上がりの大きな時間差を,例えば,遅延回路で発生しようとすると,遅延回路の占有面積,消費電力が大きくなる問題がある。そこで,本実施の形態では,水晶発振器XOSCの出力クロックCKRTCを利用して,イネーブル信号ENBGRXの立ち下りとENSWBGRの立ち上がりの大きな時間差を生成する。
32kHz(32768Hz)のクロックCKRTCの周期Toscは約30.5マイクロ秒となる。図9に示すように,イネーブル信号ENBGRXの立ち下りとENSWBGRの立ち上がりの時間差を,クロック周期Toscの整数倍(n)とする。これにより,BGR回路をONしてから出力電圧VBGRの電位がバンドギャップ電圧に安定する前の時刻に,スイッチNMSW1をONとすることを避けることができる。出力電圧VBGRの電位が最終値に安定する前にキャパシタスイッチNMSW1をONすると,キャパシタ電圧VBGRCの電位が,大きく変動する原因となる。キャパシタ電圧VBGRCは,スリープ用のサブレギュレータの基準電圧として使用されているので,キャパシタ電圧VBGRCの過渡的な電位変動は,内部電圧VDDの電位変動となってしまう。このようなことを避けるために,図9のような制御信号のタイミングが望ましい。
一方,スイッチイネーブル信号ENSWBGRをLレベルにしてキャパシタスイッチをOFFにして,BGR回路をOFFとするまでの時間差は,スイッチの切り替え時間だけなので,遅延回路で時間差を作ることが現実的である。
図9に示すように,バンドギャップ回路の間欠動作において,バンドギャップ回路BGRを動作状態としてから,BGRキャパシタを充電し始めるまでの時間差を水晶発振回路CKRTCのクロック周期をもとに作ることで,回路面積,消費電力を節約することができる。
次に,BGR制御回路BGRCTRLの概略構成と,外部電源VDP5の起動時の動作,起動後のBGR制御回路によるレギュレータ回路の概略動作について説明する。
図10は,BGR制御回路BGRCTRLの概略構成図である。BGRイネーブル信号発生回路10は,外部電源VDP5が起動したときに,水晶発振器XOSCが発振停止していることを検出したクロック検出回路(発振停止検出回路)14が発生するリセット信号RSTX=Lレベルの間,BGRイネーブル信号ENBGR,ENSWBGRをHレベルに維持してバンドギャップ回路を連続動作状態に制御する。これにより,外部電源起動時にバンドギャップ回路を確実に起動させる。バンドギャップ回路の起動動作は,図8にて説明したとおりである。
また,BGRイネーブル信号発生回路10は,外部電源起動後の通常動作では,CPUからのイネーブル信号ENMのHレベルまたはLレベルに応じて,BGRイネーブル信号ENBGR,ENSWBGRをHレベルに維持してバンドギャップ回路を連続動作に制御するか,交互にHとLレベルを繰り返して間欠動作に制御する。間欠動作では,水晶発振器のクロックCKRTCXのクロック周期を利用する。
リセット信号発生回路12は,クロック検出回路(発振停止検出回路)14と低電圧リセット回路16とを有する。クロック検出回路12は,水晶発振器のクロックCKTCXが停止していることを検出してリセット信号RSTXをLレベルにし,発振していることを検出してHレベルを出力する。これにより,外部電源起動時に,レギュレータ回路が未だ動作せず内部電圧VDDが生成されていないときは,水晶発振器のクロックの停止状態により,リセット信号発生回路14がリセット信号RSTXをアクティブ状態(Lレベル)にする。また,動作中に何らかの原因で水晶発振器が停止した場合も,リセット信号RSTX=Lレベルになり,BGRイネーブル信号発生回路10によりレギュレータ回路は連続動作に制御される。
低電圧リセット回路16は,後述する外部電源VDP5の電圧低下検出回路からの電圧低下検出信号LVDHOX=Lレベルまたは内部電圧VDDの電圧低下検出回路からの電圧低下検出信号LVDLOX=Lレベルに応答して,リセット信号RSTXをLレベルにする。電圧低下がなくなると,水晶発振器のクロックが発振している場合にはリセット信号をHレベルに戻す。電圧低下が生じると,リセット信号RSTX=Lレベルになり,BGRイネーブル信号発生回路10によりレギュレータ回路は連続動作に制御される。
図11,図12は,本実施の形態におけるレギュレータ回路の動作を示すフローチャート図である。レギュレータ回路は,主にロジック回路内のCPUが生成するイネーブル信号ENMと,BGR制御回路BGRCTRLによるイネーブル信号ENBGR,ENSWBGRとにより制御される。
まず,外部電源VDP5が起動すると(S1のYES),クロック検出回路14が水晶発振器の発振停止を検出しリセット信号RSTX=Lを出力する(S3)。工程S2では,外部電源起動時は未だ内部電圧VDD2が生成されていないので,水晶発振器は発振していない(S2のNO)。このリセット信号RSTX=Lの間,BGRイネーブル信号発生回路10は,内部状態をリセットするとともに,BGRイネーブル信号ENBGR,ENSWBGRをHレベルに維持し,BGR回路を連続状態に制御する(S4)。これにより,バンドギャップ回路のスタートアップ回路が起動してバンドギャップ回路を出力電圧VBGR=1.2Vの動作点で動作開始させる(S5)。
また,外部電源VDP5の起動に応答して強制的にイネーブル信号ENS=Hレベルになるので,サブレギュレータREGSは自動的に動作状態になる。一方,メインレギュレータREGMは,内部の論理回路が生成するイネーブル信号ENMが電源起動時は不定であるので,ENM=Hレベルであれば動作し,ENM=Lレベルであれば動作しない。これにより,バンドギャップ電圧VBGRを基準電圧にして,サブレギュレータが内部電圧VDDを生成する。メインレギュレータも動作状態であれば,同様に内部電圧VDDを生成する(S6)。
また,リセット信号RSTX=Lにより,メインレギュレータREGMのイネーブル信号ENMをHレベルに制御して,メインレギュレータも動作状態に制御するようにしても良い。ただし,メインレギュレータはサブレギュレータよりも遅れて動作開始する。以上が外部電源起動時の動作である。
やがて,レギュレータが内部電圧VDDを生成し水晶発振器が発振を開始すると(S7のYES),クロック検出回路がリセット信号RSTX=Hレベルにしてリセットを解除する。これによりレギュレータ回路は,電源起動後の通常動作に入る。前述のとおり,通常動作では,論理回路内のCPUが生成するメインレギュレータのイネーブル信号ENM=H,Lに応じて,メインレギュレータが動作しバンドギャップ回路が連続動作するアクティブ状態か,メインレギュレータが停止しサブレギュレータが動作しバンドギャップ回路が間欠動作するスリープ状態かに制御される(S9,S10,S11)バンドギャップ回路の連続動作と間欠動作は,BGRイネーブル発生回路10によるBGRイネーブル信号ENBGR,ENSWBGRにより制御される。
電源起動時におけるレギュレータ回路の起動を確実にするために,まず,サブレギュレータのイネーブル信号ENSがインバータINV0により強制的にHレベルにされ,サブレギュレータは強制的に動作状態になる。さらに,リセット信号発生回路12内のクロック検出回路14がリセット信号RSTX=Lレベルを発生してBGRイネーブル信号発生回路10によりバンドギャップ回路を連続動作させる。メインレギュレータとサブレギュレータを有し,メインレギュレータのイネーブル信号ENMを内部電圧VDDで動作するCPUにより生成させるため,上記のような外部電源起動時の動作により,レギュレータ回路全体の起動を確実に行う。
図12は,外部電源起動後の通常動作における制御が示されている。第一に,後述する電圧低下検出回路が,外部電源VDP5がある基準電圧より低下した場合に電圧低下検出信号LVDHOX=Hを出力するか,または内部電圧VDDがある基準電圧より低下した場合に電圧低下検出信号LVDLOX=Hを出力すると(S12のYES),低電圧リセット回路16がリセット信号RSTX=Lを出力し,工程S14,S15,S16により前述の工程S4,S5,S6と同様にBGRイネーブル信号発生回路がリセットされ,バンドギャップ回路を連続動作にし,それにより少なくともサブレギュレータREGSが内部電圧VDDを生成する。電圧低下が継続すればリセット状態が維持されバンドギャップ回路の連続動作が維持される。
そして,電圧低下検出回路が,電圧の適正なレベルへの復帰を検出して,電圧低下検出信号LVDHOX=L,LVDLOX=Lになると(S17のYES),低電圧リセット回路16はリセット信号RSTX=Hにしてリセットを解除する(S18)。ただし,このとき水晶発振器が発振していない場合はリセット状態は維持される(S2のNOとそれ以下の工程S3−S8)。
第二に,後述する温度検出手段が集積回路の温度の上昇を検出すると(S19),BGRイネーブル信号発生回路10が,バンドギャップ回路を連続動作状態に制御する(S20)。そして,温度の低下が検出されると(S21のYES),BGRイネーブル信号発生回路10が,メインレギュレータのイネーブル信号ENMに応じて,バンドギャップ回路を連続動作または間欠動作に制御する(S22)。
このように,外部電源起動時や動作中の不適切な状態(電圧低下や水晶発振器の停止など)の時に,リセット信号RSTX=Lレベルが発生され,バンドギャップ回路が連続動作にされ,少なくともサブレギュレータ回路により内部電圧VDDが生成される。そして,外部電源起動後または動作中の不適切な状態がなくなった後に,メインレギュレータのイネーブル信号ENMに応じて,ENM=Hのアクティブ状態ならレギュレータ回路が連続動作,またはENM=Lのスリープ状態ならレギュレータ回路が間欠動作に制御される。
以下,それぞれの回路の詳細説明を行う。
図13は,BGR制御回路BGRCTRL内のBGRイネーブル信号発生回路の回路図である。図14は,BGRイネーブル信号発生回路の動作波形図である。
図13において,DFCn(nは整数)はクリア端子つきのDFF(Dフリップフロップ)を,DFPn(nは整数)はプリセット端子つきのDFF(Dフリップフロップ)を,IVn(nは整数)はインバータ回路を,NANDn(nは整数)はNAND回路を,NORn(nは整数)はNOR回路を,XORn(nは整数)は排他的論理和回路を,CKRTCは図5の水晶発振器XOSC1から供給されるクロック信号を,CKRTCXはそのCKRTCの反転信号を,SLEEPはHとなったときスリープ時であることを示す内部の制御信号を,DFCLXは図13の回路内の非同期カウンタのクリア信号を,CAND1はフリップフロップDFC2からDFC6の値(Q)がすべてLのときにHとなる内部信号を,COUNTCLXは非同期カウンタのクリア信号のもとになる信号を,DXOR1,DXOR2,DXOR3,DXOR4はカウンタの周期を決定するためのデータ入力を,CKA1,CKA2はCAND1をフリップフロップで記憶しなおした信号を,それぞれ示している。
図13で,クリア端子つきのDフリップフロップDFCn(nは整数)は,クリア端子CLがLレベルのとき出力Qは非同期にLレベルにクリアされ,クロック端子CKの立ち上がりで入力Dの値が出力Qに記憶される。プリセット端子つきのDフリップフロップDFPn(nは整数)は,プリセット端子PRがLレベルのとき出力Qは非同期にHレベルにセットされ,クロック端子CKの立ち上がりで入力Dの値が出力Qに記憶される。
図13のBGRイネーブル信号発生回路は,第一に,リセット信号RSTX=Lのときに,内部のフリップフロップをクリアまたはリセットして初期化し,BGRイネーブル信号ENBGR,ENSWBGRをHレベルに維持して,バンドギャップ回路BGRを連続動作状態にする。第二に,この回路は,メインレギュレータのイネーブル信号ENM=Hのときに,スリープ信号SLEEP=Lによりクリア信号DFCLX=LにしてフリップフロップDFC1−6をクリアして信号CAND1,CKA1,CKA2をHレベルにしてBGRイネーブル信号ENBGR,ENSWBGR=Hにしてバンドギャップ回路BGRを連続動作状態にする。そして,第三に,この回路は,メインレギュレータのイネーブル信号ENM=Lのときに,スリープ信号SLEEP=Hによりクリア信号DFCLX=HにしてフリップフロップDFC1−6をクロックCKに同期した動作状態にし,水晶発振器のクロックCKRTCXに同期して,図14に示す通り,フリップフロップDFC2−6からなるカウンタ18がカウントアップし,外部設定信号DXOR1−4で設定した周期毎に信号CAND1,CKA1,CKA2をHレベルにして,BGRイネーブル信号ENBGR,ENSWBGRを間欠的にHレベルにしてバンドギャップ回路BGRを間欠動作状態にする。
第一に,外部電源起動時などは,リセット信号RSTX=Lレベルになり,フリップフロップDFP1,DFP2の出力QがLレベルにリセットされ,信号CKA1,CKA2=Lレベルになり,BGRイネーブル信号ENBGR,ENSWBGRがHレベルに維持され,バンドギャップ回路BGRは連続動作状態になる。
第二に,リセット信号RSTXがHレベルとなりリセット解除された後では,イネーブル信号ENMがHレベルのときは,メインレギュレータREGMは動作状態である。このときスリープ信号SLEEPはLレベルとなり,クロックCKRTCが供給されていると,フリップフロップDFC7の出力QはLレベルとなる。それにより,NAND2の入力がLとなるので,カウンタクリア信号COUNTCLXの値によらず,NAND2の出力はHレベルとなり,インバータIV9でフリップフロップクリア信号DFCLXはLレベルとなる。これにより,非同期カウンタ18を構成するフリップフロップDFC1,DFC2,DFC3,DFC4,DFC5,DFC6の出力はすべてLレベルに初期化される。
そして,NOR2,NOR3,IV10,IV11,NAND3,NOR4は,フリップフロップDFC2からDFC6の出力QがすべてLレベルのときに,信号CAND1がHレベルとなる論理積回路を構成している。したがって,フリップフロップクリア信号DFCLX=Lレベルにより,フリップフロップDFC1,DFC2,DFC3,DFC4,DFC5,DFC6の出力QはすべてLに初期化されるので,信号CAND1はHとなる。その結果,信号CAND1をクロックCKRTCの反転クロックCKRTCXで記憶した信号CKA1もHレベル,信号CKA1をフリップフロップDFC9で記憶した信号CKA2もHレベルとなる。
信号CKA1とCKA2がHレベルであるので,BGRイネーブル信号ENBGRはHレベル,BGRスイッチイネーブル信号EBSWBGRもHレベルとなり,BGR回路は連続動作状態に制御される。BGRキャパシタスイッチNMSW1もONになるので,スリープ用のサブレギュレータREGSにもバンドギャップ電圧VBGRからなる基準電圧が供給される。このように,メインのイネーブル信号ENMがHレベルのとき,図13のBGRイネーブル信号発生回路10により,バンドギャップ回路BGRを連続動作させるようイネーブル信号ENBGRとENSWBGRをHとする。
第三に,メインのイネーブル信号ENMがHからLレベルに変化したときのスリープ状態の動作を説明する。リセット信号RSTXがHレベルとリセット解除されているときに,メインレギュレータのイネーブル信号ENMがLレベルとなることで,メインレギュレータREGMはパワーダウン状態(停止状態)となる。また,ENM=LではインバータIV17によりスリープ信号SLEEPはHに変化する。
信号SLEEPがHとなると,フリップフロップDFC7の出力QはHレベルとなり,カウンタクリア信号COUNTCLXがナンドゲートNAND2を通過して,COUNTCLX=Lの度にカウンタ18のフリップフロップをクリアする。カウンタクリア信号COUNTCLXは,カウンタ18のカウント値が外部設定信号DXOR1−4と一致した時にLレベルになり,不一致でHレベルになる。カウンタクリア信号はメインイネーブル信号ENMがHからLレベルに変化したときにはHレベルとなっている。
フリップフロップDFC7の出力QがHレベルとなると,カウンタクリア信号COUNTCLXがHなので,フリップフロップクリア信号DFCLXはLからHレベルに変化する。これにより非同期カウンタ18を構成するフリップフロップDFC1,DFC2,DFC3,DFC4,DFC5,DFC6がクロックCKRTCに同期してカウント動作を開始する。
フリップフロップクリア信号DFCLXがLの間に,フリップフロップDFC1の出力QはLに初期化されている。インバータIV3でこの出力Qを反転して,フリップフロップDFC1のD端子に入力するので,フリップフロップDFC1のD入力はHとなっている。フリップフロップDFC1のCK端子がLからHに変化すると,DFC1のQはLからHに変化する。DFC1のD入力はDFC1のQ出力の反転信号なので,DFC1のCK端子の立ち上がり毎にQは反転する。つまり,DFC1は,クロック信号CKRTCを1/2に分周する回路である。同様にフリップフロップDFC2はDFC1のD入力の周波数を1/2に分周する回路として,フリップフロップDFC3はDFC2のD入力の周波数を1/2に分周する回路として,フリップフロップDFC4はDFC3のD入力の周波数を1/2に分周する回路として,フリップフロップDFC5はDFC4のD入力の周波数を1/2に分周する回路として,フリップフロップDFC6はDFC4のD入力の周波数を1/2に分周する回路として動作し,カウンタ18のカウントアップ動作が行われる。
信号CAND1は,カウンタのフリップフロップDFC2からDFC6の出力QがすべてLのときにHとなる。つまり,非同期カウンタ18がクリアされた時点で,信号CAND1はHレベルとなり,最初にフリップフロップDFC2の出力QがHに変化したあとは,信号CAND1はLレベルである。
周期設定信号DXOR1からDXOR4は,カウンタ18の周期を決めるための入力信号であり,どれか少なくとも1つのデータ(DXOR1からDXOR4)をHとしてカウンタの周期を決定する。図14は,周期設定信号DXO2だけがHで,他の信号DXO4,DXO3,DXO1がLの場合の動作例を示している。
EORゲートXOR1は,DFC3のQ出力とDXOR1が一致した場合に出力がLとなる。XOR2−4も同様である。つまり,EORゲートDXOR1−DXOR4が,設定した周期設定信号DXOR1−4とカウント値であるDFC3からDFC6の出力Qがすべて一致すると,NOR1,NOR2のすべての入力がLとなり,カウンタクリア信号COUNTCLXはLレベルとなる。
図14の例は,周期設定信号DXO2だけがHで,他の信号DXO4,DXO3,DXO1がLの場合の波形である。フリップフロップDFC3のQがL,DFC4のQがH,DFC5のQがL,DFC6のQがL,になる条件は,カウンタ18の出力QがすべてLの状態からカウントアップしてフリップフロップDFC4のQがHに変化した時点となる。その時にカウンタクリア信号COUNTCLXはLレベルとなる。その結果,ゲートNAND2の1つの入力がLとなるので,フリップフロップDFC7のQ出力はHとなっているが,フリップフロップクリア信号DFCLXはLになり,カウンタ18内のフリップフロップDFC1〜DFC6のQは全てLレベルにクリアされる。その結果,カウンタクリア信号COUNTCLXは再度Hレベルにもどる。つまり,カウンタクリア信号COUNTCLXは,カウンタ18が周期設定信号の設定値までカウントアップするたびに,短い時間だけLレベルになる。
カウンタクリア信号COUNTCLXがHになると,フリップフロップクリア信号DFCLXもHにもどり,カウンタ18がクロックCKRTCの立ち上がりに同期して,カウントアップ動作を繰り返す。周期設定信号DXOR1からDXOR4の値はレジスタで設定してもよいし,配線で固定した値としてもよい。
信号CAND1を,フリップフロップDFC8でクロックCKRTCの反転信号で信号CKA1として記憶すると,信号CKA1は信号CAND1からクロックCKRTCの半周期遅れた信号となる。信号CKA1をフリップフロップDFC2でさらにクロックCKRTCXに同期して記憶すると,信号CKA2は信号CKA1からクロックCKRTCの1周期だけ遅れた信号となる。
このように,信号CKA1とCKA2の立ち上がり時刻はクロックCKRTCの1周期だけずれているので,信号CKA1とCKA2をもとに,図9のレギュレータ回路の間欠動作のように,クロックCKRTCの1周期ずれたイネーブル信号ENBGRXとENSWBGRを発生することができる。図13では,信号CKA1を遅延回路IV12からIV15で遅らせてイネーブル信号ENBGRを生成する。また,信号CKA1とCKA2のAND信号をスイッチイネーブル信号ENSWBGRとする。イネーブル信号ENBGRは信号CKA1を遅延回路で遅らせるので,スイッチイネーブル信号ENSWBGRの立ち下りより,イネーブル信号ENBGRの立ち下りを遅らせることができる。そして,イネーブル信号ENBGRの立ち上がりとスイッチイネーブル信号ENSWBGRの立ち上がりの時間差は,ほぼクロックCKRTCの1周期とすることができる。
以上説明したように,図13のBGRイネーブル信号発生回路10により,図8のバンドギャップ回路BGRを制御するイネーブル信号ENBGR,ENSWBGRが生成される。図13のように非同期カウンタ18を使用して,バンドギャップ回路BGRの制御信号を発生すれば,クロックCKRTCの負荷容量を削減できるので,より低消費電力動作に適した回路とできる。
図15は,BGRイネーブル信号発生回路とバンドギャップ回路のシミュレーション結果を示す図である。図15中には,スリープ状態での,図13のBGRイネーブル信号発生回路のイネーブル信号ENBGR,ENSWBGRと,バンドギャップ回路BGRのバンドギャップ電圧VBGRの電位およびBGRキャパシタVBGRCの電位とが示されている。
30マイクロ秒のクロック周期でクロックCKRTCを与えて,図15のようなイネーブル信号ENBGR,ENSWBGRを発生した。イネーブル信号ENBGRの立ち上がり時刻からスイッチイネーブル信号ENSWBGRの立ち上がり時刻は,クロック1周期分の約30マイクロ秒遅れている。図に示すように,イネーブル信号ENBGRがHになることで,バンドギャップ回路はバンドギャップ電圧VBGRが1.2V程度の電位になるように動作をはじめるが,バンドギャップ電圧VBGRの電位は1.0Vから1.2Vまで上昇するのに十マイクロ秒以上を要している。このバンドギャップ電圧VBGRの電位が安定していない期間は,スイッチイネーブル信号ENSWBGRをHレベルとせず,バンドギャップ電圧VBGRの電位が1.2Vに十分近い値となった時点でスイッチイネーブル信号ENSWBGRをHレベルとする。
図15に示すような制御を採用することで,BGRキャパシタ電圧VBGRCの電位の変化はごくわずかな電圧に抑えることが可能となる。スイッチイネーブル信号ENSWBGRをHレベルにすることで,BGRキャパシタ電圧VBGRCの電位は上昇する。スイッチイネーブル信号ENSWBGRをHからLレベルに変化させる時点で,図8のBGRキャパシタスイッチNMSW1のゲート電荷がBGRキャパシタ電圧VBGRCに流れ込むため,図15ではVBGRCがわずかに上昇している。また,BGRキャパシタスイッチNMSW1のゲート電位をHからLに変化させてKBGRキャパシタ電圧VBGRCをバンドギャップ回路の出力電圧VBGRから切り離すので,キャパシタ電圧VBGRCの電位はスイッチイネーブル信号ENSWBGRのHからLの変化の影響で,充電した値から低い電位となる。図15の例では,スイッチイネーブル信号ENSWBGRの立ち下りの時で,キャパシタ電圧VBGRCの電位は2mV程度下がっている。
しかし,キャパシタスイッチNMSW1のゲート容量とBGRキャパシタCBGRの容量値の関係を,CBGRがNMSW1のゲート容量に対して十分大きい容量となるように設計することで,上記のキャパシタ電圧VBGRCの電位の変動は実際上問題ないくらい小さく設計できる。
図16は,本実施の形態におけるBGR制御回路BGRCTRL内のリセット信号発生回路12の回路図である。図10に示したとおり,リセット信号発生回路12は,クロック検出回路(発振停止検出回路)14と,低電圧リセット回路16とを有する。
図16において,CKRTCは水晶発振器XOSCが生成するクロックを,PMCKD1はPMOSトランジスタを,NMCKD1はNMOSトランジスタを,VDP5は外部電源を,RCKD1は抵抗を,CCKD1,CCKD2は容量を,XORn(nは整数)は排他的論理和回路を,NCKD1,NCKD2,NCKD3は内部のノードを,DFCn(nは整数)はクリア端子つきのDフリップフロップを,RSTXはリセット信号を,AND1はAND回路を,LVDHOX,LVDLOXは図19の低電圧検出回路LVDH,LVDLの出力を,LVDはAND1の出力信号を,ENMはメインレギュレータREGMのイネーブル信号を,NANDn(nは整数)はNAND回路を,ENSWBGRはスイッチイネーブル信号を,IVn(nは整数)はインバータ回路を,CKLVDはNAND7が出力するクロック信号を,SLEEPはHとなったときスリープ時であることを示す信号を,それぞれ示している。
図16のリセット信号発生回路で,図13のBGRイネーブル信号発生回路を初期化する理由を説明する。図13のBGRイネーブル信号発生回路では,メインイネーブル信号ENMがHのときにはBGR回路を連続動作させ,水晶発振器のクロックCKRTCが供給されている場合にメインイネーブル信号ENMがLレベルになると,バンドギャップ回路BGRを間欠動作させるためのイネーブル信号ENBGR,ENSWBGRを間欠的にHレベルにする。しかし,外部電源VDP5の投入直後などでは,クロックCKRTCが供給されていない状況が発生し得る。このようなクロックCKRTCが停止した状態で,バンドギャップ回路BGRを間欠動作させると,バンドギャップ回路BGRが起動しない,すなわちレギュレータ回路も起動できない可能性がある。バンドギャップ回路の間欠動作はクロックCKRTCを必要とし,水晶発振器のクロック回路CKRTCはレギュレータ回路が内部電圧VDD2を発生していることを必要とするので,原理的にレギュレータ回路を起動できなくなる場合がある。
このような望ましくない状況を避けるために,クロックCKRTCが停止している場合には,図16のリセット信号発生回路でリセット信号RSTX=Lレベルを発生し,図13のBGRイネーブル信号発生回路10を初期化する。そして,リセット信号RSTXがLレベルの間は,図13のフリップフロップDFP1,DFP2の出力QがHレベルになるので,クロックCKRTCが停止していても,BGRイネーブル信号ENBGR,スイッチイネーブル信号ENSWBGRがHレベルとなり,レギュレータ回路を連続動作に制御することが可能となる。
図16のリセット信号発生回路内のクロック検出回路14が,水晶発振器のクロックCKRTCが発振していない場合に,リセット信号RSTXをLレベルにする動作を説明する。クロックCKRTCが周期的にHとLレベルとなる場合において,クロックCKRTCがLレベルでは,トランジスタPMCKD1がONとなり,ノードNCKD1はHとなる。次にCKRTCがHレベルになると,トランジスタNMCKD1がONとなり,ノードNCKD2はLとなる。このときトランジスタPMCKD1はOFFとなっているので,ノードCCKD1は抵抗RCKD1により放電される。抵抗RCKD1と容量CCKD1の時定数をクロック周期より大きく設計しておくと,容量CCKD1がLレベルに放電される前に,トランジスタPMCKD1がONとなり,ノードNCKD1の電位はHに保たれる。
同様に,ノードNCKD2の電位も,容量CCKD2と抵抗RCKD1の時定数をクロック周期より大きく設計しておくと,容量CCKD2がHレベルに充電される前に,トランジスタNMCKD1がONとなり,ノードNCKD2の電位はLに保たれる。つまり,クロックCKRTCが周期的にHとLを繰り返していると,ノードNCKD1の値はH,ノードNCKD2の値はLとなっているので,排他的論理和XOR5の出力ノードNCKD3の電位はHとなる。その結果,フリップフロップDFC10はクリアされずに,リセット信号RSTX=Hとリセット解除状態になる。
一方,クロックCKRTCがLレベルで固定されると,トランジスタPMCKD1がONとなり,トランジスタNMCKD1がOFFとなる。それによりノードNCKD1はHとなり,抵抗RCKD1を通して,ノードNCKD2の電位もHとなる。その結果,EORゲートXOR5の出力ノードNCKD3の電位はLレベルになるので,フリップフロップDFC10がクリアされリセット信号RSTXはLレベル(リセット状態)になる。図13のBGRイネーブル信号発生回路10のリセット信号RSTXがLレベルになるので,バンドギャップ回路は連続動作となる。クロックCKRTCがHで固定されても,ノードNCKD1とNCKD2はLとなるので,出力ノードNCKD3はLとなり,リセット信号RSTXがLレベル(リセット状態)となり,バンドギャップ回路は連続動作となる。
図16内の低電圧リセット回路16は,低電圧検出回路の出力LVDHOX,LVDLOXに応答してリセット信号を発生する。その動作は,図19の動作説明とともに後述する。
前述した通り,図16のクロック検出回路14が水晶発振器のクロック信号が停止していることを検出してリセット信号を発生し,バンドギャップ回路を制御するBGRイネーブル信号発生回路10を初期化し,バンドギャップ回路を連続動作に制御する。これにより,図5のバンドギャップ回路BGRとレギュレータREGM,REGSからなるレギュレータ回路が,外部電源起動時やクロック信号停止後に,確実に動作を開始できる。
図17は,本実施の形態におけるマイクロコントロールユニット内のバンドギャップ回路とレギュレータからなるレギュレータ回路の他の例を示す図である。図17の回路と図5の回路との違いは,RBG制御回路BGRCTRLに供給されるクロックが水晶発振器ではなく内蔵されたCR発振回路CROSCの出力クロックCKCRに変更されていることである。
図17の回路例では,CR発振回路CROSCの消費電力を削減するために,内部電源VDDで動作する。例えば,外部電源投入直後などでは,内部電源VDDが0Vになっていて,発振回路CROSCが動作できない場合がある。クロックCKCRが停止している場合には,前述のクロック停止検出回路で,リセット信号RSTXを発生し,バンドギャップ回路を連続動作させて,レギュレータを動作させ,内部電源VDDが安定した後に,CR発振回路CROSCを動作させ,スリープ時の制御が実現できる状態となる。これにより,スリープ時にバンドギャップ回路を間欠動作させて,スリープ時の消費電力を削減することができる。
図18は,図17の内蔵CR発振回路の回路例を示す図である。図18において,CT1は容量を,RT1は抵抗を,IVO1からIVO3はインバータ回路を,NODE1からNODE4は発振回路内部のノードを示す。各インバータの電源は,内部電源VDDである。
[低電圧検出回路]
図19は,本実施の形態におけるマイクロコントローラ内のバンドギャップ回路とレギュレータからなるレギュレータ回路の他の回路例を示す図である。この回路は,図5の回路に加えて,低電圧検出回路LVDHとLVDLを有する。図5と重複する部分の説明は省略し,追加して図示した部分を説明する。
図19において,LVDHは5V外部電源VDP5の電圧を監視する低電圧検出回路を,LVDLは内部電源VDDの電位を監視する低電圧検出回路を,RL1,RL2は外部電源VDP5の電圧を分圧する分圧回路を構成する抵抗を,VDIV3はRL1とRL2で分圧した分圧出力を,RL3,RL4は内部電源VDDの電圧を分圧する分圧回路を構成する抵抗を,VDIV4はRL3とRL4で分圧した分圧出力を,CMP1とCMP2はコンパレータ回路を,LVDHOXは低電圧検出回路LVDHの出力を,LVDLOXは同回路LVDLの出力である。
第一の低電圧検出回路LVDHは,5V外部電源VDP5の電圧を監視する。例えば,マイクロコントロールユニットMCUの動作保証電源電圧が,仮に2.4V以上とすると,低電圧検出回路LVDHは,5V外部電源VDP5の電圧が保証電圧2.4V以下になった場合に,検出信号LVDHOXを出力する。抵抗RL1とRL2で,外部電源VDP5の電位を分圧して,基準電圧VBGR=1.2Vと比較して,外部電源VDP5が保証電圧より低いか,高いかを検出する。なんらかの事情で,外部電源VDP5の電位が,規定の値より小さくなったときには,検出信号LVDHOXを生成し,それに応答してリセット信号発生回路がリセット信号RSTX=Lを生成する。
例えば,抵抗RL1とRL2を1:1に設計しておくと,分圧電圧VDIV3は外部電源VDP5の電位の1/2になるので,バンドギャップ電圧VBGRを基準電位に対する分圧電圧VDIV3の電位の高低を知ることで,外部電源VDP5が保証電圧2.4Vより高いか,低いかを知ることができる。図19の例では,分圧電圧VDIV3の電位がバンドギャップ電圧VBGRより低いと,低電圧検出信号LVDHOXはLレベルとなり,外部電源VDP5が保証電圧2.4Vより低いことが検出される。
第二の低電圧検出回路LVDLは,内部電源VDDの電源電圧を監視する。その回路構成は,第一の低電圧検出回路LVDHと同様である。例えば,抵抗RL3とRL4を1:3に設計しておくと,分圧電圧VDIV4の電位は内部電源VDDの3/4になるので,バンドギャップ電圧VBGRを基準電位として分圧電圧VDIV4の電位の高低を知ることで,内部電源VDDが1.6Vより高いか,低いかを知ることができる。分圧電圧VDIV3の電位が,バンドギャップ電圧VBGRより低いと,低電圧検出信号LVDLOXはLレベルとなり,内部電源VDDが1.6Vより低いことを検出できる。
低電圧検出信号LVDLOXとLVDHOXに応答して,図16の低電圧リセット回路16がリセット信号RESX=Lレベルを発生する。図16の低電圧リセット回路16において,低電圧検出信号LVDLOXとLVDHOXがLレベルになると,ゲートAND1の出力がLレベルになり,フリップフロップDFC10の出力Qのリセット信号RSTXがクロックCKLVDに同期してLレベルになる。
アクティブ状態の時は,メインイネーブル信号ENM=Hレベルであるので,ゲートNAND5,NAND7により発振器クロックCKRTCが低電圧検出用クロックCKLVDとしてフリップフロップDFC10に供給され,常時低電圧検出信号が監視される。一方,スリープ状態の時は,バンドギャップ回路が間欠動作しているので,ゲートNAND6,7によりBGRスイッチイネーブル信号ENSWBGR=HレベルのときにHレベルになる低電圧検出用クロックCKLVDにより,内部電源VDDが適切に生成されている時に電圧低下が監視される。これにより,バンドギャップ電圧VBGRが有効な期間にコンパレータCMP1,CMP2の出力をラッチすることができる。
図20は,図16,図19の回路のスリープ状態での動作波形図である。スリープ状態では,BGRイネーブル信号ENBGRX,ENSWBGRが間欠的にL,Hレベルになり,バンドギャップ回路BGRが適切なバンドギャップ電圧VBGRを間欠的に生成する。したがって,低電圧検出信号CKLVDはBGRスイッチイネーブル信号ENSWBGRの反転信号とすることで,バンドギャップ回路BGRが動作し,コンパレータCMP1,CMP2が適切に動作している期間で,コンパレータ値が確定しているであろう時刻にフリップフロップDFC10に低電圧検出信号LVDを記憶する。
前述の通り,低電圧検出回路が外部電源VDP5と,内部電源VDDの電位が所定の電位より低い場合には,リセット信号発生回路がリセット信号RSTX=Lレベルを発生することができ,バンドギャップ回路BGRを連続動作させて初期状態にすることができる。
[温度検出回路]
図21は,本実施の形態におけるマイクロコントローラ内のバンドギャップ回路とレギュレータからなるレギュレータ回路の他の回路例を示す図である。この回路は,図5の回路に加えて,温度計TEMPを有する。スリープモード時にはバンドギャップ回路BGRが間欠動作に制御される。この間欠動作では,BGRキャパシタCBGRに蓄えた電荷はリーク電流によりすこしずつ失われる。このリーク電流は高温ほど大きくなり,BGRキャパシタ電圧VBGRの変動が大きくなる。そこで,温度計出力TEMPOが所定の基準温度を超えたことを検出したときに,スリープモードであっても,メインイネーブル信号をENM=Hレベルにして,BGR制御回路内のBGRイネーブル信号発生回路10によりバンドキャップ回路BGRを連続動作に制御する。基準温度より低ければ,スリープモードではバンドギャップ回路BGRは間欠動作に制御される。
このように制御することで,高温時にキャパシタのリーク電流が増加し,キャパシタ電圧VBGRCの電位の変動が許容できる値を超えることを避けることができる。高温環境下では,論理回路LOGICのリーク電流も大きくなるので,間欠動作によりバンドギャップ回路の消費電力を削減してもあまり意味がなく,むしろ連続動作させてスリープモードで動作中のサブレギュレータREGSの基準電圧であるキャパシタ電圧VBGRCの変動を低下させるべきである。
高温時の別の制御としては,例えば,図13のRGB制御回路内のリセット信号発生回路10のカウンタの周期を温度によって変更し,高温になるほど,バンドギャップ回路BGRがONする周期を短くする制御でもよい。
図22は,図21の温度計の具体的な回路例を示す図である。図22には,バンドギャップ回路BGRの一部と,温度検出手段としての温度計TEMPとが示されている。温度計TEMPは,バイポーラトランジスタQ1のベース・エミッタ間電圧VBEを所定倍に増幅する増幅回路MULTと,増幅した電圧VTEMPDをバンドギャップ電圧VBGRと比較するコンパレータCMP3と,その比較結果HTDを温度検出クロックCKTEMPに応答してラッチするフリップフロップDFP3とを有する。
図23は,図22の温度計TEMPの動作波形の例を示す図である。バイポーラトランジスタQ1のベース・エミッタ間電圧VBEと絶対温度Tの関係は,以下の式(1)となることが知られている。
VBE=Veg−aT (1)
ここで,VBE:pn接合の順方向電圧,Veg:シリコンのバンドギャップ電圧,約1.2V,a:VBEの温度依存性,約2mV/℃,T:絶対温度である。aの値はバイアス電流により異なるが,実用領域で,概略2mV/℃程度となることが知られている。
つまり,PNPトランジスタQ1のベース・エミッタ間電圧VBE=OPIPは,式(1)によれば,温度が上昇すると,小さくなる負の温度依存性を持っている。このトランジスタQ1のエミッタ電位VBEを,適切な係数倍して,温度によらない一定電圧であるバンドギャップ電圧VBGRと比較することで,温度の上昇を検出することができる。
図22の例では,アンプAMPが,トランジスタQ1のエミッタ電位NBEを2.5倍する。抵抗RTEMP1を1.5R,抵抗RTEMP2を1Rに設計しておけば,アンプ出力VTEMPDの電位はVBEPの2.5倍となる。よって,アンプ出力VTEMPDの電位は,
VTEMPD=3000mV−(5mV/℃)T
となる。
このアンプ出力VTEMPDの電位がバンドギャップ電圧1200mVとなる温度は,5T=3000−1200=1800,T=360K=87℃となる。つまり,図22の温度計では,コンパレータCMP3が温度が87℃より高いか否かを検出し,高ければ比較結果はHDT=Hレベル,低ければHDT=Lレベルが生成される。そして,コンパレータの比較結果HTDが温度検出クロックCKTEMPに応答してフリップフロップDFP3で記憶される。
図23に示すように,スリープ状態では,バンドギャップ回路BGRはONしている期間とOFFしている期間があるので,バンドギャップ電圧VBGRの電位が適切に生成されている期間に合わせて,コンパレータCMP3や,乗算回路MULTを温度計イネーブル信号TDEで動作させる。コンパレータCMP3で判定結果HTDが確定する時刻にあわせて温度検出クロックCKTEMPに応答して,比較結果をフリップフロップDFP3が取り込む。
温度が所定の値(上記例では87℃)より高くなると,バンドギャップ電圧VBGRの電位のほうが高い電位となるので,比較結果信号HTDとラッチされた温度検出信号TEMPOはHレベルとなる。これに基づきORゲートOR1がメインイネーブル信号ENM=Hレベルに変更し,バンドギャップ回路を連続動作させる。
温度が基準温度以下にもどれば,温度検出信号TEMPOはLレベルになり,メインイネーブル信号ENMは,CPUが生成するレベルに戻る。したがって,スリープ状態であれば,再びバンドギャプ回路は間欠動作に制御される。
以上のように,スリープ状態において,温度が上昇したときに,間欠動作状態のバンドギャップ回路によるキャパシタ電圧VBGRCの変動が大きくなることを防止することができる。
以上の通り,本実施の形態におけるレギュレータ回路は,アクティブ状態でバンドギャップ回路を連続動作に制御しメインレギュレータを動作状態に制御し,スリープ状態でバンドギャップ回路を間欠動作に制御しメインレギュレータを停止状態に制御しサブレギュレータを動作状態にする。これにより,アクティブ状態では高精度の内部電源VDDを生成し,スリープ状態では省電力化することができる。さらに,外部電源起動時には,少なくともサブレギュレータを強制的に動作状態にしバンドギャップ回路を連続動作状態に制御して,確実にレギュレータ回路が起動するようにできる。そして,発振回路が停止したり,外部電源VDP5や内部電源VDDの電位が低下したときは,リセット状態にしてバンドギャップ回路を連続動作にする。さらに,温度が上昇した場合にはスリープ状態であってもバンドギャップ回路を連続動作に制御して,サブレギュレータへの基準電圧が許容範囲を超えて低下することを回避する。
以上の実施の形態をまとめると,次の付記のとおりである。
(付記1)
外部電源に接続されバンドギャップ電圧を生成するバンドギャップ回路と,
前記バンドギャップ電圧に基づいて内部電源電圧を生成して内部電源へ電流を供給しアクティブ状態とスリープ状態を有する動作制御信号に応答して動作状態または停止状態になるメインレギュレータと,
前記バンドギャップ電圧に基づいて前記内部電源電圧を生成し前記内部電源への供給電流が前記メインレギュレータより小さいサブレギュレータと,
前記動作制御信号がアクティブ状態の場合に前記バンドギャップ回路を連続動作させ,スリープ状態の場合に前記バンドギャップ回路を間欠動作させるバンドギャップ制御回路とを有するレギュレータ回路。
(付記2)
付記1において,
前記外部電源が前記メインレギュレータ,サブレギュレータ,バンドギャップ制御回路に接続され,
前記外部電源が起動したとき,前記サブレギュレータは強制的に動作状態になり,前記バンドギャップ制御回路は前記バンドギャップ回路を連続動作させ,
前記内部電源電圧が生成されてから,前記バンドギャップ制御回路は前記動作制御信号に応じて前記バンドギャップ回路を前記連続動作または間欠動作に制御するレギュレータ回路。
(付記3)
付記1または2において,
前記バンドギャップ回路は,前記バンドギャップ電圧が生成される第1の出力端子と,前記第1の出力端子と第1のスイッチを介して接続されるバンドギャップキャパシタと,前記バンドギャップキャパシタの電極に接続される第2の出力端子とを有し,
前記第1の出力端子から前記バンドギャップ電圧が前記メインレギュレータに供給され,
前記第2の出力端子から前記バンドギャップキャパシタの電極の電圧が前記サブレギュレータに供給され,
前記バンドギャップ制御回路は,前記スリープ状態のとき,前記バンドギャップ回路を一時的に動作させた期間中に前記第1のスイッチを導通するよう制御するレギュレータ回路。
(付記4)
付記1または2において,
さらに,前記内部電源電圧に接続された発振器を有し,
前記バンドギャップ制御回路は,前記発振器が発振停止したことを検出してリセット信号を発生する発振停止検出回路を有し,さらに,前記発振器の出力クロックに基づいて前記バンドギャップ回路の間欠動作を制御し,
前記外部電源が起動したとき,前記バンドギャップ制御回路は,前記発振停止検出回路が発生するリセット信号に応答して,内部状態を初期化するとともに,前記バンドギャップ回路を連続動作させ,前記リセット信号の解除に応答して,前記動作制御信号に基づいて前記バンドギャップ回路の連続動作または間欠動作を制御するレギュレータ回路。
(付記5)
付記1または2において,
さらに,前記内部電源電圧に接続された発振器を有し,
前記バンドギャップ制御回路は,前記発振器が発振停止したことを検出してリセット信号を発生する発振停止検出回路を有し,さらに,前記発振器の出力クロックに基づいて前記バンドギャップ回路の間欠動作を制御し,
前記バンドギャップ制御回路は,前記発振停止検出回路が発生するリセット信号に応答して,内部状態を初期化するとともに,前記バンドギャップ回路を連続動作させ,前記リセット信号の解除に応答して,前記動作制御信号に基づいて前記バンドギャップ回路の連続動作または間欠動作を制御するレギュレータ回路。
(付記6)
付記4または5において,
前記発振器は,水晶発振器またはCR発振器のいずれかであるレギュレータ回路。
(付記7)
付記4または6において,
前記バンドギャップ制御回路は,前記バンドギャップ回路を動作状態にさせるバンドギャップイネーブル信号を生成するバンドギャップイネーブル信号発生回路を有し,
前記バンドギャップ制御回路は,前記リセット信号に応答して前記バンドギャップイネーブル信号発生回路を初期化し,
前記バンドギャップイネーブル信号発生回路は,前記動作制御信号がアクティブ状態のとき前記バンドギャップイネーブル信号をイネーブル状態に維持し,前記動作制御信号がスリープ状態のとき前記バンドギャップイネーブル信号を前記発振器の出力クロックに基づいて間欠的にイネーブル状態にするレギュレータ回路。
(付記8)
付記1または2において,
さらに,前記バンドギャップ電圧が第1の基準電圧以下に低下したことまたは前記外部電源が第2の基準電圧以下に低下したことを検出する低電圧検出回路を有し,
前記バンドギャップ制御回路は,前記低電圧検出回路による低電圧検出に応答して前記リセット信号を生成し,当該リセット信号に応答して,内部状態を初期化するとともに,前記バンドギャップ回路を連続動作させ,前記リセット信号の解除に応答して,前記動作制御信号に基づいて前記バンドギャップ回路の連続動作または間欠動作を制御するレギュレータ回路。
(付記9)
付記1または2において,
さらに,温度が基準温度を超えたことを検出して高温検出信号を発生する温度検出手段を有し,
前記バンドギャップ制御回路は,前記スリープ状態において,前記高温検出信号に応答して前記バンドギャップ回路を連続動作に制御するレギュレータ回路。
(付記10)
付記9において,
前記バンドギャップ制御回路は,前記スリープ状態において,前記高温検出信号が解除されたことに応答して前記バンドギャップ回路を間欠動作に制御するレギュレータ回路。
(付記11)
付記9において,
前記バンドギャップ制御回路は,前記スリープ状態において,前記高温検出信号に応答して前記メインレギュレータを動作状態に制御し,前記高温信号が解除されたことに応答して前記バンドギャップ回路を間欠動作に制御するとともに前記メインレギュレータを停止状態に制御するレギュレータ回路。
(付記12)
付記9において,
前記温度検出手段は,バイポーラトランジスタと,前記バイポーラトランジスタのベース・エミッタ間電圧と基準電圧とを比較して前記高温検出信号を発生するコンパレータとを有するレギュレータ回路。
(付記13)
付記1において,
前記サブレギュレータは,前記アクティブ状態及びスリープ状態のいずれにおいても動作状態にあるレギュレータ回路。
(付記14)
付記1に記載のレギュレータ回路と,
前記内部電源電圧を供給される論理回路と,
前記論理回路が前記動作制御信号を生成する集積回路装置。