(57)【特許請求の範囲】
【請求項１】
アナログ回路又はアナログ/ディジタル混載回路の動作を数値演算によってシミュレートする回路シミュレーション方法であって、
スイッチング動作の一周期内の時間変化により複数の回路モデルに分離する解析対象回路が多段接続された多段構成において、
前記多段構成の各段において、前記時間変化の各期間における各回路モデルについて、当該各回路モデルに含まれるエネルギー蓄積素子部の電流および／又は電圧を状態変数とする微分方程式、およびそれらの状態変数の値を用いて回路モデルの出力を求める方程式によって、
各回路モデルに関する複数の状態変数方程式を形成する第１の形成工程と、
前記各状態変数の状態変数方程式について、前記各期間における各状態変数方程式のそれぞれの時間変化を表す各第１のスイッチ変数を前記各期間の各状態変数方程式に乗じ、当該各第１のスイッチ変数を乗じた各期間の各状態変数方程式を加算して各状態変数について一周期内における状態変数方程式を形成する第２の形成工程と、
前記第２の形成工程で形成した一周期内の状態変数方程式の微分方程式を数値積分による数値演算で解き、当該数値演算で得られた各状態変数の時間変化を出力する数値演算工程とを備え、
前記各第１のスイッチ変数は、前記解析対象回路に含まれるスイッチ素子および／又は整流ダイオードのオン／オフの時間変化に応じて１と０との間で時定数を有して変化する値を採る時間関数であり、
前記数値演算によるシミュレーションの周波数は、一周期のクロック周波数で定まるナイキスト周波数以下であり、
前記第１の形成工程、第２の形成工程、および演算工程の各工程をコンピュータで実行することを特徴とする、回路シミュレーション方法。
【請求項２】
前記エネルギー蓄積素子部はインダクタ素子又は容量素子であり、
前記状態変数は、インダクタ素子に流れる電流および／又は容量素子の両端電圧であることを特徴とする請求項１に記載の回路シミュレーション方法。
【請求項３】
前記解析対象回路はクロック信号によりオン・オフが交互に切り替えられる直列接続された複数のスイッチ素子を備え、
前記第２の形成工程において、
前記クロック信号の切り替わり時に前記複数のスイッチ素子が同時にオンとなる際に当該スイッチ素子を通して流れる漏れ電流を、前記クロック信号の切り替わり時にのみに値を持つ電流源として前記状態変数方程式の入力信号に加えることを特徴とする、請求項１又は２に記載の回路シミュレーション方法。
【請求項４】
アナログ回路又はアナログ/ディジタル混載回路の動作を数値演算によってシミュレートする回路シミュレーション装置であって、
スイッチング動作の一周期内の時間変化により複数の回路モデルに分離する解析対象回路が多段接続された多段構成において、
前記多段構成の各段において、前記時間変化の各期間における各回路モデルについて、当該各回路モデルに含まれるエネルギー蓄積素子部の電流および／又は電圧を状態変数とする微分方程式、およびそれらの状態変数の値を用いて回路モデルの出力を求める方程式によって、当該回路モデルに関する複数の状態変数方程式を形成し、
前記各状態変数の状態変数方程式について、前記各期間における各状態変数方程式のそれぞれ時間変化を表す各第１のスイッチ変数を前記各期間の各状態変数方程式に乗じ、当該各第１のスイッチ変数を乗じた各期間の各状態変数方程式を加算して各状態変数について一周期内における状態変数方程式を形成する状態変数方程式形成手段と、
前記状態変数方程式形成手段で形成した一周期内の状態変数方程式の微分方程式を数値積分による数値演算で解き、当該数値演算で得られた各状態変数の時間変化を出力する数値演算手段とを備え、
前記各第１のスイッチ変数は、前記解析対象回路に含まれるスイッチ素子および／又は整流ダイオードのオン／オフの時間変化に応じて１と０との間で時定数を有して変化する値を採る時間関数であり、
前記数値演算によるシミュレーションの周波数は、一周期のクロック周波数で定まるナイキスト周波数以下であることを特徴とする、回路シミュレーション装置。
【請求項５】
前記エネルギー蓄積素子部はインダクタ素子又は容量素子であり、
前記状態変数は、インダクタ素子に流れる電流および／又は容量素子の両端電圧であることを特徴とする請求項４に記載の回路シミュレーション装置。
【請求項６】
前記解析対象回路はクロック信号によりオン・オフが交互に切り替えられる直列接続された複数のスイッチ素子を備え、
前記状態変数方程式の形成手段において、
前記クロック信号の切り替わり時に前記複数のスイッチ素子が同時にオンとなる際に当該前記状態変数方程式の形成手段において、
スイッチ素子を通して流れる漏れ電流を、前記クロック信号の切り替わり時にのみに値を持つ電流源として前記状態変数方程式の入力信号に加えることを特徴とする、請求項４又は５に記載の回路シミュレーション装置。
【請求項７】
コンピュータに、アナログ回路又はアナログ/ディジタル混載回路の動作をシミュレートさせる回路シミュレーションプログラムであって、
スイッチング動作の一周期内の時間変化により複数の回路モデルに分離する解析対象回路が多段接続された多段構成において、
コンピュータに、
前記多段構成の各段において、前記時間変化の各期間における各回路モデルについて、当該各回路モデルに含まれるエネルギー蓄積素子部の電流および／又は電圧を状態変数とする微分方程式、およびそれらの状態変数の値を用いて回路モデルの出力を求める方程式によって、当該回路モデルに関する複数の状態変数方程式を形成する第１の形成工程と、
前記各状態変数の状態変数方程式について、前記各期間における各状態変数方程式のそれぞれの時間変化を表す各第１のスイッチ変数を前記各期間の各状態変数方程式に乗じ、当該各第１のスイッチ変数を乗じた各期間の各状態変数方程式を加算して各状態変数について一周期内における状態変数方程式を形成する第２の形成工程と、
前記第２の形成工程で形成した一周期内の状態変数方程式の微分方程式を数値積分による数値演算で解き、当該数値演算で得られた各状態変数の時間変化を出力する数値演算工程の各工程を、
前記各第１のスイッチ変数を、前記解析対象回路に含まれるスイッチ素子および／又は整流ダイオードのオン／オフの時間変化に応じて１と０との間で時定数を有して変化する値を採る時間関数とし、
一周期のクロック周波数で定まるナイキスト周波数以下の周波数で数値演算を実行させることを特徴とする、回路シミュレーションプログラム。
【請求項８】
前記エネルギー蓄積素子部はインダクタ素子又は容量素子であり、
前記状態変数は、インダクタ素子に流れる電流および／又は容量素子の両端電圧であることを特徴とする請求項７に記載の回路シミュレーションプログラム。
【請求項９】
前記解析対象回路はクロック信号によりオン・オフが交互に切り替えられる直列接続された複数のスイッチ素子を備え、
前記第２の形成工程において、
前記クロック信号の切り替わり時に前記複数のスイッチ素子が同時にオンとなる際に当該スイッチ素子を通して流れる漏れ電流を、前記クロック信号の切り替わり時にのみに値を持つ電流源として前記状態変数方程式の入力信号に加えることを特徴とする、請求項７又は８に記載の回路シミュレーションプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アナログ回路又はアナログ/ディジタル混載回路を数値計算によってシミュレーションし、回路の過渡応答や開ループの周波数特性を計算する回路シミュレーション方法、回路シミュレーション装置、およびコンピュータに回路シミュレーションを実行させる回路シミュレーションプログラムに関し、例えば、昇圧型ＤＣ−ＤＣコンバータやチャージポンプに代表されるスイッチング電源の過渡応答や開ループの周波数特性の数値計算によるシミュレーションに適用することができるものである。
【背景技術】
【０００２】
スイッチング電源等、アナログ回路の計算機を利用した解析手法として、回路中の電流の流れに応じた動作モードの変化ごとに状態変数方程式を切り替え、時刻ごとの回路の動作状態を数値計算する回路解析が知られている。
【０００３】
また、回路の大局的な動作を時間領域で解析する手法として、包絡追跡法や状態平均化法が知られている。包絡追跡法は、高周波でスイッチングする回路の各部の周期的な動作波形がその前後の周期の波形と類似することを利用し、選択した周期の動作波形のみを解析し、選択しなかった残りに周期の動作波形を包絡的に構成する方法であり、状態平均化法は、解析対象回路について全ての動作モードを求め、各動作モード状態にある時間の割合に応じて入力や動作波形を平均的に取り扱う方法である。
【０００４】
また、一つの周波数の正弦波入力に対する解析対象回路の応答を定式化し、全ての周波数に対する応答波形を合成して定常応答波形を求める周波数領域の回路解析方法も知られている（特許文献１）。
【０００５】
また、アナログ回路をシミュレートするプログラムとしてＳＰＩＣＥ（登録商標）と呼ばれる回路シミュレーションプログラムが知られ、数値演算プログラムとしてＭＡＴＬＡＢ（登録商標）と呼ばれるプログラムが知られている。
【０００６】
周波数領域の回路解析では、解析対象回路を数式あるいは伝達関数で表し、解析対象回路全体の周波数特性や安定性などの評価を行う。一方、回路の過渡解析では、回路中のインダクタ素子Ｌに流れる電流や容量素子Ｃの両端の電圧を状態変数とする１次微分方程式によって状態変数方程式を形成し、この微分方程式を時間領域で積分演算することにより、電流や電圧の時間変化を求め、これによって過渡応答などの解析を行う。
【０００７】
ただし、解析対象回路の回路動作にスイッチング動作が含まれる場合には、スイッチング動作によって回路構成が変化する場合がある。
【０００８】
図９（ａ）はＭＯＳトランジスタをスイッチ素子として使用したディクソン型チャージポンプのスイッチング電源の回路構成例を示している。このスイッチング電源のスイッチング動作は、例えば、図９（ｂ），（ｃ）に示すように、クロック信号の１周期間内に２つの異なる回路構成が形成される。このような場合には、状態変数方程式を用いて回路解析を行うには、異なる回路構成に対してそれぞれ異なる第１番目の状態変数方程式と第２番目の状態変数方程式を形成し、１周期間内に順に第１番目と第２番目の状態変数方程式を解いて行かなければならない。
【０００９】
この際、第１番目の状態変数方程式を時間領域で積分してインダクタ素子Ｌに流れる電流や容量素子Ｃの両端の電圧の最終値を取得し、次に、第１番目の状態変数方程式で得られた最終値を第２番目の状態変数方程式の初期値として受け渡し、第２番目の状態変数方程式を時間領域で積分する演算を行う。さらに、第２番目の状態変数方程式で得られた最終値を第１番目の状態変数方程式の初期値として受け渡し、第１番目の状態変数方程式を時間領域で積分する演算を行うといった、前回の演算処理で得られた最終値を次回の演算処理の初期値として受け渡すという処理を繰り返して行う。
【００１０】
図２０，２１は従来の状態変数方程式を用いた回路解析の手順および構成の一例を説明するためのフローチャートおよびブロック図である。
【００１１】
解析対象回路について(S101)、スイッチング動作による回路構成の時間変化を解析し、一周期内の各期間における回路モデルを形成し（S102）、求めた回路モデルについて、インダクタ素子や容量素子等のエネルギー蓄積素子部を状態変数として状態変数方程式を形成する(S103)。
【００１２】
各期間の状態変数方程式を微分方程式の積分演算による数値演算を順次解くことで回路解析を行う。数値演算は、汎用のシミュレーションプログラムを用いることができる。以下では、一周期内の期間として第１の期間と第２の期間の２期間について示しているが、２期間以上の複数期間についても同様とすることができる。
【００１３】
はじめに、第１の期間の状態変数方程式について解き（S104）、第１の期間のシミュレーション結果を第２の期間の状態変数方程式の初期値として受け渡す（S105）。次に、第２の期間の状態変数方程式を解き（S106）、さらにこの第２の期間のシミュレーション結果を第１の期間の状態変数方程式の初期値として受け渡す（S107）。S104〜S107の各工程を、シミュレーションの処理を終了するまで繰り返す（S108）。得られたシミュレーション結果を表示する（S109）。
【００１４】
図２１に示すブロック図において、シミュレーション装置は、解析対象回路の回路モデルから状態変数方程式を形成する状態変数方程式形成手段１１０と、状態変数方程式を汎用シミュレーションプログラム１２１により数値演算により解く数値演算手段１２０と、数値演算手段で得られた演算結果を表示する表示手段１３０を備える。
【００１５】
しかしながら、状態変数方程式を使う解析手法では、前回の演算で得られた状態変数の値を自動的に次の演算の初期値として受け渡すことは難しいため、例えば、前回の演算で得られた状態変数の値をメモリに記憶し、次回の演算時にメモリから状態変数値を初期値として読み出すといった処理を行う必要がある。
【００１６】
これに対して、伝達関数を用いる解析手法では、ラプラス変換を用いる演算であるため、インダクタ素子の電流や容量素子の両端電圧の初期値の入力は演算処理上では可能ではある。しかしながら、汎用プログラムでは、異なる回路間において初期値を受け渡しながら回路を切り替えてシミュレーションを行うことはできない。そのため、汎用プログラムは回路解析には適していない。また、シミュレーションプログラムに、このような初期値の受け渡しと回路の切り替えを行う機能を付加することで対応する場合には、解析対象回路ごとに個別にシミュレーションプログラムを作成しなければならず、シミュレーションプログラムの作成時間や作業量の点から見て現実的ではない。
【００１７】
したがって、時間的に回路構成が変化しそれぞれ異なる状態変数方程式を解く必要がある際に、１つの状態変数方程式により時間の経過とともに解析を行ってシミュレーションを行うことが望まれる。
【００１８】
アナログ回路又はアナログ/ディジタル混載回路を数値計算によってシミュレーションする場合には、前記したように初期値の受け渡しや回路切り替えに要する演算処理の都合から、１つの状態変数方程式で複数の回路構成に対応することが難しいという問題がある。
【００１９】
このような問題を解決するため、前記した状態平均化法として、非特許文献１や非特許文献２が提案されている。非特許文献１は降圧型、昇圧型および昇降圧型の各ＤＣ−ＤＣコンバータに対して適用されている。非特許文献２には降圧型ＤＣ−ＤＣコンバータへの適用が示されている
【００２０】
また、電子回路解析において、電源回路の回路モデルと信号回路の回路モデルとを組み合わせて電源と信号の解析を同時に行うことを目的として、結合回路によって両回路モデルに接続できる形式に変換し、電源回路モデルと信号回路モデルとを結合した結合モデルを形成することが特許文献２に示されている。
【先行技術文献】
【特許文献】
【００２１】
【特許文献１】特許第３９４３１６３（段落［0002］）
【特許文献２】特開２００９−２１１３３３号公報（段落［0013］，段落［0018］等）
【非特許文献】
【００２２】
【非特許文献１】論文名：“Modeling of current-programmed converters with inductor current sensing”雑誌名、頁、年： Proceedings of the 2000 IEEE International Conference on Control Applications, TM4-1, pp.548-553, September 2000.著者名：Jesus L. Ramos, Jorge A. M. Saldana
【非特許文献２】論文名：“Frequency Response Analysis for DC-DC Converters Without Small Signal Linearization”雑誌名、頁、年： Proceedings of IEEE Applied Power Electronics Conference, pp.1008-1013, 2003.著者名：Jason H. Ly, Kasemsan Siri
【発明の概要】
【発明が解決しようとする課題】
【００２３】
非特許文献１で用いられている状態平均化法の概略について、図９（ｂ），（ｃ）を用いて説明する。
【００２４】
図９（ｂ），（ｃ）に示すように、ディクソン型チャージポンプのスイッチング電源回路の出力部ではダイオード接続のトランジスタのオン・オフにより回路構成が異なる。ここでクロックの１周期に同期した期間中にトランジスタがオン状態となる期間と、クロックの１周期の期間との比をデューテイＤ（０≦Ｄ≦１）で表したとき、２つの回路状態について、オン期間に対応した第１の回路の状態変数方程式に対してはＤの係数を掛け合わせ、オフ期間に対応した第２の回路の状態変数方程式に対しては（１−Ｄ）の係数を掛け合わせている。
【００２５】
この非特許文献１の手法によれば、状態変数であるインダクタＬの電流も容量Ｃの両端電圧も共にクロックの１周期内で平均化される。したがって、状態平均化法は１周期中の変化が無く、状態変数の応答周波数がクロック周波数に比して低い場合において、ＡＣ特性を把握するには有効である。なお、ＡＣ特性は、開ループ利得やその位相の周波数特性である。
【００２６】
しかしながら、非線形の抵抗（例えばダイオードのオン抵抗）は、その抵抗が流れる電流に依存するため、オン期間に影響を与え、オン期間の動作点やＡＣ特性に影響を及ぼす。そのため、この影響を考慮できない場合にはクロックの１周期内の変化である過渡応答を忠実に解析することが困難である。
【００２７】
また、非特許文献２に示される降圧型ＤＣ−ＤＣコンバータへの適用例では、インダクタ素子Ｌおよび容量素子Ｃの接続状態は常に変わらず、スイッチ素子のトランジスタのオン・オフにより、インダクタ素子Ｌおよび容量素子Ｃに入力される入力信号（これは状態変数方程式の入力信号となる）が変化し、各入力信号に応じた状態が平均化されたものが示される。したがって、非特許文献２によるＡＣ解析は、入力信号を平均化して入力信号自体を小信号としているに過ぎない。
【００２８】
非特許文献２においても、スイッチ素子のトランジスタのオン抵抗の影響は考慮されておらず、非特許文献１と同様に、クロックの１周期内の変化である過渡応答を忠実に解析することが困難である。また、非特許文献２では、適用範囲は降圧型に限られ、昇圧型や昇降圧型あるいはチャージポンプなどの他の電源回路や電子回路に適用することができないという問題もある。
【００２９】
したがって、状態平均化法によるＡＣ解析は、入力信号として小信号を仮定し、回路の応答周波数がクロック周波数に対して低い場合に適用される手法であり、クロック周期内の非線形素子による動作や影響を考慮するものではないため、負荷変動や電源立ち上げ時の大きな過渡応答などを解析するには不適である。
【００３０】
そこで、本発明は上述した課題を解決して、アナログ回路の数値演算によるシミュレーションによる解析において、時間的に回路構成が変化しそれぞれ異なる状態変数方程式を解く必要がある際に、１つの状態変数方程式により時間の経過とともに解析を行うと共に、クロックの１周期内の変化である過渡応答やＡＣ解析を高速で忠実に行うことを目的とする。
【００３１】
ＡＣ解析は、少なくともナイキスト周波数（クロック周波数の１／２の周波数）まで正確に解析することができることを目的とする。
【００３２】
また、例えば、降圧型、昇圧型や昇降圧型あるいはチャージポンプといった回路構成に依存することなく、任意の回路構成について適用できることを目的とする。
【課題を解決するための手段】
【００３３】
本発明は、回路シミュレーション方法、回路シミュレーション装置、および回路シミュレーションプログラムの各態様とすることができる。
【００３４】
本発明が解析対象とする解析対象回路は、スイッチング動作の一周期内において時間変化により複数の回路モデルに分離する回路である。
【００３５】
本発明の回路シミュレーション方法の態様は、アナログ回路又はアナログ/ディジタル混載回路の動作を数値演算によってシミュレートする回路シミュレーション方法であり、時間変化の各期間における回路モデルについて、この回路モデルに含まれるエネルギー蓄積素子部の電流および／又は電圧を状態変数とする微分方程式、およびそれらの状態変数の値を用いて回路モデルの出力を求める方程式によって、この回路モデルに関する複数の状態変数方程式を形成する第１の形成工程と、各状態変数の状態変数方程式について、各期間における各状態変数方程式のそれぞれの時間変化を表す各第１のスイッチ変数を各期間の各状態変数方程式に乗じ、スイッチ変数を乗じた各期間の各状態変数方程式を加算して各状態変数について一周期内における状態変数方程式を形成する第２の形成工程と、第２の形成工程で形成した一周期内の状態変数方程式の微分方程式を数値積分による数値演算で解き、この数値演算で得られた各状態変数の時間変化を出力する数値演算工程とを備える。これらの第１の形成工程、第２の形成工程、および数値演算工程の各工程をコンピュータで実行するものであり、コンピュータ資源であるＣＰＵ、メモリ、制御プログラムにより数値演算を行う。
【００３６】
本発明の回路シミュレーション装置の態様は、アナログ回路又はアナログ/ディジタル混載回路の動作を数値演算によってシミュレートする回路シミュレーション装置であり、時間変化の各期間における回路モデルについて、この回路モデルに含まれるエネルギー蓄積素子部の電流および／又は電圧を状態変数とする微分方程式、およびこれらの状態変数の値を用いて回路モデルの出力を求める方程式によって、この回路モデルに関する複数の状態変数方程式を形成し、各状態変数の状態変数方程式について、各期間における各状態変数方程式のそれぞれの時間変化を表す各第１のスイッチ変数を各期間の各状態変数方程式に乗じ、各第１のスイッチ変数を乗じた各期間の各状態変数方程式を加算して各状態変数について一周期内における状態変数方程式を形成する状態変数方程式形成手段と、状態変数方程式形成手段で形成した一周期内の状態変数方程式の微分方程式を数値積分による数値演算で解き、当該数値演算で得られた各状態変数の時間変化を出力する数値演算手段とを備える。
【００３７】
本発明の回路シミュレーション装置の状態変数方程式形成手段および数値演算手段は、コンピュータ資源であるＣＰＵ、メモリ、制御プログラムにより構成し、コンピュータに数値演算を実行させることで行うことができる。
【００３８】
本発明の回路シミュレーションプログラムの態様は、コンピュータに、アナログ回路又はアナログ/ディジタル混載回路の動作をシミュレートする回路シミュレーションプログラムである。回路シミュレーションプログラムは、コンピュータに、時間変化の各期間における回路モデルについて、この回路モデルに含まれるエネルギー蓄積素子部の電流および／又は電圧を状態変数とする微分方程式、およびそれらの状態変数の値を用いて回路モデルの出力を求める方程式によって、この回路モデルに関する複数の状態変数方程式を形成する第１の形成工程と、第１の形成工程で形成した各状態変数の状態変数方程式について、各期間における各状態変数方程式のそれぞれの時間変化を表す各第１のスイッチ変数を各期間の各状態変数方程式に乗じ、各第１のスイッチ変数を乗じた各期間の各状態変数方程式を加算して各状態変数について一周期内における状態変数方程式を形成する第２の形成工程と、第１の形成工程で形成した一周期内の状態変数方程式の微分方程式を数値積分による数値演算で解き、この数値演算で得られた各状態変数の時間変化を出力する数値演算の工程を実行させる。
【００３９】
コンピュータ資源であるＣＰＵ、メモリ、制御プログラムにより構成される演算処理装置において、ＣＰＵは回路シミュレーションプログラムに基づいて第１の形成工程、第２の形成工程、および数値演算工程の各工程を実行し、数値演算によるシミュレーションを行う。
【００４０】
本発明の各態様において、エネルギー蓄積素子部はインダクタ素子又は容量素子であり、状態変数は、インダクタ素子に流れる電流および／又は容量素子の両端電圧である。
【００４１】
また、各第１のスイッチ変数は１と０との間の値を採る時間関数であり、解析対象回路に含まれるスイッチ素子および／又は整流ダイオードのオン／オフの時間変化に応じて変化する値である。
【００４２】
本発明の状態変数方程式の形成工程および形成手段において、解析対象回路はクロック信号によりオン・オフが交互に切り替えられ直列接続される複数のスイッチ素子を備え、第２の形成工程において、クロック信号の切り替わり時に複数のスイッチ素子が同時にオンとなる際にこれらのスイッチ素子を通して流れる漏れ電流を、クロック信号の切り替わり時にのみに値を持つ電流源として状態変数方程式の入力信号に加える。状態変数方程式に漏れ電流を表す入力信号を組み込むことによって、漏れ電流を含むシミュレーションを行うことができる。
【００４３】
本発明が解析対象とする解析対象回路は、特定のエネルギー蓄積素子の一端にバイアス電圧を与えることによりスイッチ素子および／又は整流ダイオードをスイッチング動作させて特定のエネルギー蓄積素子を含むエネルギー蓄積素子部に対するエネルギーの入出力動作を行うスイッチング電源回路とすることができる。特定のエネルギー蓄積素子の一端に与えるバイアス電圧は、一周期内のクロック信号によってスイッチング動作し、各スイッチ変数は、スイッチ素子又は整流ダイオードのスイッチング動作の時間変化に応じて１と０との間の値を採る。
【００４４】
本発明の各態様は、時間的に回路構成が変化しそれぞれ異なる状態変数方程式を解く必要がある際に、１つの状態変数方程式により時間の経過とともに解析を行うと共に、数値演算によるシミュレーションの周波数を一周期のクロック周波数で定まるナイキスト周波数以下とすることによって、クロックの１周期内で変化がある場合においても過渡応答やＡＣ解析を高速で解析する。
【００４５】
また、各期間における各状態変数方程式から一つの状態変数方程式を形成する際に、各期間における各状態変数方程式の各時間変化を表す各第１のスイッチ変数を用いることで、単なる状態変数の平均ではなく、時間変化の応答についてのシミュレーションとすることができ、クロックの１周期内で変化がある場合においても過渡応答やＡＣ解析を正確に解析することができる。
【００４６】
従来の状態平均化法では、２つの回路状態について、オン期間に対応した第１の回路の状態変数方程式に対してはオン状態となる期間のデューテイＤの係数を掛け合わせ、オフ期間に対応した第２の回路の状態変数方程式に対しては（１−Ｄ）の係数を掛け合わせている。この状態平均化法を回路構成が時間変化する場合に適用した場合には、第１の状態変数方程式および第２の状態変数方程式の一周期内での演算結果をデューテイＤの係数で重み付けして平均化するものである。
【００４７】
これに対して、本発明によれば、各期間における各状態変数方程式のそれぞれの時間変化を表す各第１のスイッチ変数を用いることによって、実際の時間変化に伴う回路動作のシミュレーションを行うことができる。
【００４８】
また、各第１のスイッチ変数を時間関数とし、時間変化に伴って１と０との間の値を採ることによって、各期間の切り替わり時における各状態変数の変化を正確に求めることができる。例えば、対象回路の各回路構成が矩形信号の１と０の出力に対応して切り替わる場合には、矩形信号の立ち上がりや立ち下がりに応じてスイッチ変数の値を時間変化させることによって、状態変数方程式の切り替わりを実際の回路状態により正確にシミュレートさせることができる。
【００４９】
また、本発明の回路シミュレーションの方法の態様、装置の態様、およびプログラムの態様の各態様において、解析対象回路は整流ダイオード、および／又はダイオード接続されたスイッチ素子から成るダイオード素子部を備え、第１の形成工程において、ダイオード素子部に係る状態変数方程式に第２のスイッチ変数を乗じ、状態変数方程式中のダイオード素子部に相当する部分にダイオード素子部の順方向と同じ電流が流れる状態の時には前記第２のスイッチ変数を１とし、状態変数方程式中のダイオード素子を表す部分にダイオード素子部の順方向と逆の電流が流れるような状態の時には前記第２のスイッチ変数を０とする。
【００５０】
この第２のスイッチ変数を導入し、状態変数方程式中のダイオード素子部に相当する部分にダイオード素子部の順方向と逆の電流が流れるような状態の時には第２のスイッチ変数を０とすることによって、ダイオード素子部に係る状態変数方程式を式上で削除し、ダイオード素子部に逆流電流が流れるシミュレーション動作を防ぐことができる。
【００５１】
また、本発明によれば、降圧型ＤＣ−ＤＣコンバータ、昇圧形ＤＣ−ＤＣコンバータ、昇降圧型ＤＣ−ＤＣコンバータおよびチャージポンプを含む任意の回路構成について統一的なモデリングを実現することができる。
【００５２】
また、降圧型ＤＣ−ＤＣコンバータ、昇圧形ＤＣ−ＤＣコンバータ、昇降圧型ＤＣ−ＤＣコンバータおよびチャージポンプの過渡解析および周波数特性を、ＳＰＩＣＥを用いたアナログ的なシミュレーションプログラムを用いた解析と比較して短時間で同等の精度でシミュレーションを行うことができる。
【発明の効果】
【００５３】
本発明によれば、アナログ回路又はアナログ/ディジタル混載回路の数値演算によるシミュレーションによる解析において、時間的に回路構成が変化しそれぞれ異なる状態変数方程式を解く必要がある際に、１つの状態変数方程式により時間の経過とともに解析を行うと共に、クロックの１周期内で変化がある場合においても過渡応答やＡＣ解析を高速で忠実に行うことができる。
【図面の簡単な説明】
【００５４】
【図１】本発明の回路シミュレーション方法の手順を説明するためのフローチャートである。
【図２】本発明による回路シミュレーション処理の例を説明するための概略図である。
【図３】本発明による回路シミュレーション処理の例を説明するための概略図である。
【図４】本発明による回路シミュレーション処理の例を説明するための概略図である。
【図５】本発明による回路シミュレーション処理の例を説明するための概略図である。
【図６】本発明の第１のスイッチ変数ｕ２によるスイッチング信号の例を説明するための図である。
【図７】本発明の逆方向電流のシミュレーションを防ぐ第２のスイッチ変数ｕ３を説明するための図である。
【図８】本発明の回路シミュレーション装置の一構成例を説明するための概略ブロック図である。
【図９】ＭＯＳトランジスタを使ったディクソン型チャージポンプの回路構成と２つの異なる状態をモデル化したブロック構成の回路図である。
【図１０】本発明の回路シミュレーションを数値演算でシミュレーションした結果と、アナログ処理のシミュレーションソフトによる結果との比較図である。
【図１１】ディクソン型チャージポンプの多段接続の構成例を示す図である。
【図１２】ディクソン型チャージポンプの多段接続構成のダイオードを用いた構成例を示す図である。
【図１３】差動構成によるスイッチ型チャージポンプの構成例を示す図である。
【図１４】スイッチ型チャージポンプの差動構成の動作原理を説明するための図である。
【図１５】スイッチ型チャージポンプにおいて漏れ電流の電流源Ｉｌｅａｋを備えた回路構成を説明するための図である。
【図１６】多段構成のスイッチ型チャージポンプの一構成例を示す図である。
【図１７】本発明の回路シミュレーションを数値演算でシミュレーションした結果と、アナログ処理のシミュレーションソフトによる結果との比較図である。
【図１８】昇降圧型ＤＣ−ＤＣコンバータの例を説明するための図である。
【図１９】昇圧型ＤＣ−ＤＣコンバータの例を説明するための図である。
【図２０】従来の状態変数方程式を用いた回路解析の手順の一例を説明するためのフローチャートである。
【図２１】従来の状態変数方程式を用いた回路解析の構成を説明するためのブロック図である。
【発明を実施するための形態】
【００５５】
以下、本発明の実施の形態を実施例に基づき詳細に説明する。図１は本発明の回路シミュレーション方法の手順を説明するためのフローチャートであり、図２〜５は本発明による回路シミュレーション処理の例および第１のスイッチ変数を説明するための概略図であり、図６は本発明の第１のスイッチ変数であるｕ２および（１−ｕ２）によるスイッチング信号の例を説明するための図であり、図７は本発明の第２のスイッチ変数ｕ３を説明するための図であり、図８は本発明の回路シミュレーション装置の一構成例を説明するための概略ブロック図である。
【００５６】
はじめに、図１に示すフローチャートを用いて、本発明の回路シミュレーション方法の手順を説明する。解析対象回路について(S1)、スイッチング動作による回路構成の時間変化を解析し、一周期内の各期間における回路モデルを形成し（S2）、第１の形成工程において、求めた回路モデルについてインダクタ素子や容量素子等のエネルギー蓄積素子部を状態変数として状態変数方程式を形成する。
【００５７】
この状態変数方程式の第１の形成工程において、シミュレーションに際してダイオード素子部に逆方向電流が流れないようにするために、第２のスイッチ変数ｕ３を設定する。
【００５８】
整流ダイオードあるいはオン状態のトランジスタをダイオード接続したダイオード素子部は、状態変数方程式を形成する場合においては両端子が抵抗あるいは電圧源に接続されているものとして扱われている。
【００５９】
例えば、図９（ａ）に示す等価回路では、オン状態のトランジスタＭｎ１、Ｍｎ２には順方向電圧Ｖｆ１(t)、Ｖｆ２(t)が接続されたものとして表され、図９（ｂ）に示す等価回路では、オン状態のトランジスタＭｎ１には電圧源Ｖｔｈ１(t)および抵抗Ｒ１(t)が直列に接続されたものとして表される。
【００６０】
このように表された回路状態では、ダイオード素子部に対して電流は何れの方向にも流れることができ、ダイオード素子部の両端子の何れの電圧が高いか低いかによって電流の向きが決まることになる。しかしながら、実際のダイオードあるいはトランジスタをダイオード接続したダイオード素子部は一方向性素子であるため、電流は逆方向に流れることは無い。
【００６１】
したがって、図９（ａ），（ｂ）の等価回路に基づいて状態変数方程式を形成した場合には、ダイオードあるいはトランジスタをダイオード接続したダイオード素子部に相当する部分には逆方向電流が流れる場合が生じる。このように、逆方向電流を許容する状態変数方程式を用いてシミュレーションを実行すると、得られたシミュレーション結果は実際には起こらない動作となる恐れがあり、シミュレーションを正確に行うことができないことになる。
【００６２】
そこで、第１の形成工程において、ダイオード素子部に係る状態変数方程式に第２のスイッチ変数ｕ３を乗じ、ダイオード素子部に相当する部分に対して逆方向電流が流れるような状態時には第２のスイッチ変数ｕ３を０とし、ダイオード素子部に相当する部分に対して順方向の電流が流れるような流状態時には第２のスイッチ変数ｕ３を１とし、ダイオード素子部に逆流電流が流れるシミュレーションの動作を防ぐ(S3)。
【００６３】
次に、S3の工程で形成した各期間における状態変数方程式を各第１のスイッチ変数ｕ２および（１−ｕ２）によって連結し、一周期内における状態変数方程式を形成する。各第１のスイッチ変数ｕ２および（１−ｕ２）は一周期内でのスイッチング動作に応じて１と０との間の値を採る時間関数である。スイッチング動作は、ミュレーション対象回路に含まれるスイッチ素子および／又は整流ダイオードのオン／オフの時間変化に基づいて切り替わる動作であり、一周期内において異なる回路構成に切り替える。
【００６４】
各第１のスイッチ変数ｕ２および（１−ｕ２）は、このスイッチング動作による各回路構成および各期間の切り替え状態を１と０との間の値で表すと共に、時間関数とすることで一周期内での時間変化を定める。
【００６５】
したがって、各期間の状態変数方程式に各第１のスイッチ変数ｕ２および（１−ｕ２）を乗じることによって、その状態変数方程式の数値演算を一周期内の如何なる時点で行うかについて定めることができる。ここで、各期間の状態変数方程式に乗じる各第１のスイッチ変数ｕ２および（１−ｕ２）は、各期間における回路状態に対応した値を設定する。例えば、回路が切り替わり動作において有効状態にある場合には第１のスイッチ変数ｕ２の値を“１”に設定し、“１”の値を状態変数方程式に乗じることによってその状態変数方程式を式上で有効とする。また、切り替わり動作において回路が無効状態にある場合には第１のスイッチ変数ｕ２の値を“０”に設定し、“０”の値を状態変数方程式に乗じることによってその状態変数方程式を式上で無効とする。
【００６６】
また、第１のスイッチ変数（１−ｕ２）の場合は、ｕ２の値とは反対の値を取り、ｕ２の値が“１”であれば“０”の値を他の状態変数方程式に乗じることによって他の状態変数方程式を式上で無効とする。また、ｕ２の値が“０”であれば “１”の値を他の状態変数方程式に乗じることによって他の状態変数方程式を式上で有効とする。
【００６７】
各第１のスイッチ変数ｕ２および（１−ｕ２）を乗じた各期間の状態変数方程式を加算して一つの状態変数方程式を形成することによって、複数の状態変数方程式の数値演算について、一周期内における演算順序および演算のタイミングを定め、実際の回路動作に合わせた演算処理とすることができる。
【００６８】
なお、状態変数方程式は、対象回路に含まれる各エネルギー蓄積素子部の電流や電圧、および対象回路の出力を状態変数とし、各状態変数について形成することができる(S4)。
【００６９】
S4で形成した一周期内の各状態変数方程式について、その微分方程式を数値演算による積分演算で解いて、各状態変数の時間変化を求める。この状態変数の時間変化により、過渡応答や、開ループ利得やその位相の周波数特性等のＡＣ特性を求めることができる(S5)。
【００７０】
状態変数方程式の数値演算によるシミュレーション結果を表示する（S6）。
【００７１】
図２は、解析対象回路のエネルギー蓄積素子部としてインダクタの回路素子（インダクタンス素子Ｌ）と容量の回路素子（容量素子Ｃ）を含み、一周期内において期間Ｔ１と期間Ｔ２の各期間で回路構成が切り替わる例を示している。
【００７２】
ここでは、解析対象回路（図２（ａ））は、期間Ｔ１において回路Ａ１と回路Ａ２の２つの異なる回路構成に分離して動作し（図２（ｂ））、期間Ｔ２において回路Ｂ１と回路Ｂ２の２つの異なる回路構成に分離して動作する（図２（ｃ））例を示している。
【００７３】
期間Ｔ１において、回路Ａ１の状態変数方程式を、容量素子Ｃの電圧ｖＣを状態変数としてdｖＣ/dt＝ｆ１で表し、回路Ａ２の状態変数方程式を、インダクタ素子Ｌの電流ｉＬを状態変数としてdｉＬ/dt＝ｇ１で表し、期間Ｔ２において、回路Ｂ２の状態変数方程式を、容量素子Ｃの電圧ｖＣおよびインダクタ素子Ｌの電流ｉＬを状態変数としてdｖＣ/dt＝ｆ２およびdｉＬ/dt＝ｇ２で表し、出力電圧を状態変数の線形和としてｖｏｕｔ＝ｚ１およびｖｏｕｔ＝ｚ２で表した場合には、一周期内の状態変数方程式は、期間Ｔ１の状態変数方程式と期間Ｔ２の状態変数方程式を各第１のスイッチ変数ｕ２，（１−ｕ２）によって連結することによって、それぞれ、
dｖＣ/dt＝ｕ２・ｆ１＋（１−ｕ２）・ｆ２
dｉＬ/dt＝ｕ２・ｇ１＋（１−ｕ２）・ｇ２
ｖｏｕｔ＝ｕ２・ｚ１＋（１−ｕ２）・ｚ２
で表すことができる（図２（ｄ））。
【００７４】
ここで、ｆ，ｇは各状態変数についての状態変数方程式であり、ｚは各状態変数の線形和であり、ｕ２および（１−ｕ２）は各第１のスイッチ変数である。ｕ２は、期間Ｔ１において１の値を採り、期間Ｔ２において０の値を採る時間関数とし、一方、（１−ｕ２）は、期間Ｔ１において０の値を採り、期間Ｔ２において１の値を採る時間関数としている。
【００７５】
図２（ｅ）は、上記した状態変数方程式を行列式の形式で表している。状態変数方程式を行列式の形式で表すことによって、汎用の数値演算プログラムの導入が容易となる。
【００７６】
以下、図３〜図５を用いて、エネルギー蓄積素子部が１個，２個，３個の場合の例について説明する。ここで示す例では、エネルギー蓄積素子部として容量素子の例について示す。
【００７７】
図３は、解析対象回路のエネルギー蓄積素子部として一個の容量素子Ｃを含み、一周期内において期間Ｔ１と期間Ｔ２の各期間で回路構成が切り替わる例を示している。
【００７８】
解析対象回路（図３（ａ））は、期間Ｔ１において回路Ａ１と回路Ａ２の２つの異なる回路構成に分離して動作し（図３（ｂ））、期間Ｔ２において回路Ｂ１と回路Ｂ２の２つの異なる回路構成に分離して動作する（図３（ｃ））例を示している。
【００７９】
期間Ｔ１において、回路Ａ１の状態変数方程式を、容量素子Ｃの電圧ｖＣを状態変数としてdｖＣ/dt＝ｆ１で表し、期間Ｔ２において、回路Ｂ２の状態変数方程式を、容量素子Ｃの電圧ｖＣを状態変数としてdｖＣ/dt＝ｆ２で表し、出力電圧を状態変数の線形和としてｖｏｕｔ＝ｚ１およびｖｏｕｔ＝ｚ２で表した場合には、一周期内の状態変数方程式は、期間Ｔ１の状態変数方程式と期間Ｔ２の状態変数方程式を各第１のスイッチ変数ｕ２，（１−ｕ２）によって連結することによって、それぞれ
dｖＣ/dt＝ｕ２・ｆ１＋（１−ｕ２）・ｆ２
ｖｏｕｔ＝ｕ２・ｚ１＋（１−ｕ２）・ｚ２
で表すことができる（図３（ｄ））。
【００８０】
ここで、ｆは各状態変数についての状態変数方程式、ｚは各状態変数の線形和であり、ｕ２および（１−ｕ２）は各第１のスイッチ変数である。ｕ２は、期間Ｔ１において１の値を採り、期間Ｔ２において０の値を採る時間関数とし、一方、（１−ｕ２）は、期間Ｔ１において０の値を採り、期間Ｔ２において１の値を採る時間関数としている。
【００８１】
図３（ｅ）は、上記した状態変数方程式を行列式の形式で表している。状態変数方程式を行列式の形式で表すことによって、汎用の数値演算プログラムの導入が容易となる。
【００８２】
図４は、解析対象回路のエネルギー蓄積素子部として二個の容量素子Ｃ１，Ｃ２を含み、一周期内において期間Ｔ１と期間Ｔ２の各期間で回路構成が切り替わる例を示している。
【００８３】
解析対象回路（図４（ａ））は、期間Ｔ１において回路Ａ１と回路Ａ２の２つの異なる回路構成に分離して動作し（図４（ｂ））、期間Ｔ２において回路Ｂ１と回路Ｂ２の２つの異なる回路構成に分離して動作する（図４（ｃ））例を示している。
【００８４】
期間Ｔ１において、回路Ａ１の状態変数方程式を、容量素子Ｃ１の電圧ｖＣ１を状態変数としてdｖＣ１/dt＝ｆ１で表し、回路Ａ２の状態変数方程式を、容量素子Ｃ２の電圧ｖＣ２を状態変数としてdｖＣ２/dt＝ｇ１で表し、期間Ｔ２において、回路Ｂ２の状態変数方程式を、容量素子Ｃ１の電圧ｖＣ１および容量素子Ｃ２の電圧ｖＣ２を状態変数としてdｖＣ１/dt＝ｆ２、dｖＣ２/dt＝ｇ２で表し、出力電圧を状態変数の線形和としてｖｏｕｔ＝ｚ１およびｖｏｕｔ＝ｚ２で表した場合には、一周期内の状態変数方程式は、期間Ｔ１の状態変数方程式と期間Ｔ２の状態変数方程式を各第１のスイッチ変数ｕ２および（１−ｕ２）によって連結することによって、それぞれ
dｖＣ１/dt＝ｕ２・ｆ１＋（１−ｕ２）・ｆ２
dｖＣ２/dt＝ｕ２・ｇ１＋（１−ｕ２）・ｇ２
ｖｏｕｔ＝ｕ２・ｚ１＋（１−ｕ２）・ｚ２
で表すことができる（図４（ｄ））。
【００８５】
ここで、ｆ，ｇは各状態変数についての状態変数方程式、ｚは各状態変数の線形和であり、ｕ２および（１−ｕ２）は各第１のスイッチ変数である。ｕ２は、期間Ｔ１において１の値を採り、期間Ｔ２において０の値を採る時間関数とし、一方、（１−ｕ２）は、期間Ｔ１において０の値を採り、期間Ｔ２において１の値を採る時間関数としている。
【００８６】
図４（ｅ）は、上記した状態変数方程式を行列式の形式で表している。状態変数方程式を行列式の形式で表すことによって、汎用の数値演算プログラムの導入が容易となる。
【００８７】
図５は、解析対象回路のエネルギー蓄積素子部として三個の容量素子Ｃ１，Ｃ２，Ｃ３を含み、一周期内において期間Ｔ１と期間Ｔ２と期間Ｔ３の各期間で回路構成が切り替わる例を示している。
【００８８】
解析対象回路（図５（ａ））は、期間Ｔ１において回路Ａ１と回路Ａ２と回路Ａ３の３つの異なる回路構成に分離して動作し（図５（ｂ））、期間Ｔ２において回路Ｂ１と回路Ｂ２の２つの異なる回路構成に分離して動作し（図５（ｃ））、期間Ｔ３において回路Ｃ１と回路Ｃ２の２つの異なる回路構成に分離して動作する（図５（ｄ））例を示している。
【００８９】
期間Ｔ１において、回路Ａ１の状態変数方程式を、容量素子Ｃ１の電圧ｖＣ１を状態変数としてdｖＣ１/dt＝ｆ１で表し、回路Ａ２の状態変数方程式を、容量素子Ｃ２の電圧ｖＣ２を状態変数としてdｖＣ２/dt＝ｇ１で表し、回路Ａ３の状態変数方程式を、容量素子Ｃ３の電圧ｖＣ３を状態変数としてdｖＣ３/dt＝ｈ１で表し、期間Ｔ２において、回路Ｂ１の状態変数方程式を、容量素子Ｃ１の電圧ｖＣ１を状態変数としてdｖＣ１/dt＝ｆ２で表し、回路Ｂ２の状態変数方程式を、容量素子Ｃ２の電圧ｖＣ２および容量素子Ｃ３の電圧ｖＣ３を状態変数としてdｖＣ２/dt＝ｇ２、dｖＣ３/dt＝ｈ２で表し、期間Ｔ３において、回路Ｃ１の状態変数方程式を、容量素子Ｃ1の電圧ｖＣ1および容量素子Ｃ２の電圧ｖＣ２を状態変数としてdｖＣ１/dt＝ｆ３、dｖＣ２/dt＝ｇ３で表し、回路Ｃ２の状態変数方程式を、容量素子Ｃ３の電圧ｖＣ３を状態変数としてdｖＣ３/dt＝ｈ３で表し、出力電圧を状態変数の線形和としてｖｏｕｔ＝ｚ１、ｖｏｕｔ＝ｚ２およびｖｏｕｔ＝ｚ３で表した場合には、一周期内の状態変数方程式は、期間Ｔ１の状態変数方程式と期間Ｔ２の状態変数方程式と期間Ｔ３の状態変数方程式を各第１のスイッチ変数ｕ２ａ，ｕ２ｂ，ｕ２ｃによって連結することによって、それぞれ
dｖＣ１/dt＝ｕ２ａ・ｆ１＋ｕ２ｂ・ｆ２＋ｕ２ｃ・ｆ３
dｖＣ２/dt＝ｕ２ａ・ｇ１＋ｕ２ｂ・ｇ２＋ｕ２ｃ・ｇ３
dｖＣ３/dt＝ｕ２ａ・ｈ１＋ｕ２ｂ・ｈ２＋ｕ２ｃ・ｈ３
ｖｏｕｔ＝ｕ２ａ・ｚ１＋ｕ２ｂ・ｚ２＋ｕ２ｃ・ｚ３
で表すことができる（図５（ｅ））。
【００９０】
ここで、ｆ，ｇ，ｈは各状態変数についての状態変数方程式、ｚは各状態変数の線形和であり、ｕ２ａ，ｕ２ｂ，ｕ２ｃは各第１のスイッチ変数である。各ｕ２ａ，ｕ２ｂ，ｕ２ｃは、例えば、ｕ２ａについては、期間Ｔ１において１の値を採り、期間Ｔ２，Ｔ３において０の値を採る時間関数とし、ｕ２ｂについては、期間Ｔ２において１の値を採り、期間Ｔ１，Ｔ３において０の値を採る時間関数とし、ｕ２ｃについては、期間Ｔ３において１の値を採り、期間Ｔ１，Ｔ２において０の値を採る時間関数としている。
【００９１】
図５（ｆ）は、上記した状態変数方程式を行列式の形式で表している。状態変数方程式を行列式の形式で表すことによって、汎用の数値演算プログラムの導入が容易となる。
【００９２】
図６は各第１のスイッチ変数ｕ２および（１−ｕ２）の一例を示している。ここでは、相補的に１と０の値を採る各第１のスイッチ変数ｕ２および（１−ｕ２）について２つの例を示している。
【００９３】
図６（ａ），（ｂ）は各第１のスイッチ変数ｕ２および（１−ｕ２）の値が矩形波形で時間変化する場合を示している。
【００９４】
図６（ａ）は第１のスイッチ変数ｕ２を示し、図６（ｂ）は第１のスイッチ変数ｕ２と相補的な関係にある第１のスイッチ変数（１−ｕ２）を示している。この例では、第１のスイッチ変数ｕ２と第１のスイッチ変数（１−ｕ２）は１と０の値を互いに相補的に出力する。
【００９５】
図６（ｃ），（ｄ）は各第１のスイッチ変数ｕ２および（１−ｕ２）の値が時定数を有して立ち上がる場合および立ち下がる場合を示している。図６（ｃ）はｕ２を示し、図６（ｄ）はｕ２と相補的な関係にある（１−ｕ２）を示している。この例では、例えば、ｕ２が０から１に時定数を有して立ち上がる際に、（１−ｕ２）は１から０に時定数を有して立ち上下がる場合を示している。なお、この立ち上がり時および立ち下がり時において、２つの第１のスイッチ変数ｕ２および（１−ｕ２）の値は互いに相補的な関係にある。
【００９６】
図６（ｃ），（ｄ）に示すように、各第１のスイッチ変数ｕ２および（１−ｕ２）を０と１との間で時間と共に変化する時間関数とすることによって、時間変化に伴って回路構成が切り替わる場合の回路シミュレーションに対応させることができる。
【００９７】
例えば、回路構成がスイッチングトランジスタ等のスイッチ素子によって切り替わり、その際のスイッチング動作に時間変化が含まれる場合には、この時間変化についてもシミュレートすることができる。なお、数値演算のクロック周波数はスイッチング動作に対して十分高いものとする。
【００９８】
次に、本発明の第２のスイッチ変数ｕ３について説明する。
【００９９】
回路シミュレーションに用いる状態変数方程式において、解析対象回路が整流ダイオード、ダイオード接続されたスイッチ素子等のダイオード素子部を備える場合には、シミュレーションではオンしているダイオード部を電圧源と抵抗で置き換えるので、ダイオード素子部に相当する部分に逆方向電流が流れるような両端の電圧状態あるいは電流状態があり得る。通常、ダイオード素子部にはその整流特性から逆方向電流は流れないため、シミュレーションにおいてダイオード素子部に逆方向電流が流れる状態が発生した場合には、回路解析が正しく行われないことになる。そのため、シミュレーションにおいて、ダイオード素子部に相当する部分に逆方向電流が流れないように設定する必要がある。
【０１００】
本発明は、第１の形成工程において、ダイオード素子部に係る状態変数方程式に第２のスイッチ変数ｕ３を乗じる。ダイオード素子部に対して逆方向電流が流れるような状態時には第２のスイッチ変数ｕ３を０として、ダイオード素子部に係る状態変数方程式を零にする。一方、ダイオード素子部に対して逆方向電流が流れないような状態では第２のスイッチ変数ｕ３を１として、ダイオード素子部に係る状態変数方程式を式上で有効とし、このダイオード素子部に係る状態変数方程式を含む状態変数方程式を用いてシミュレーション動作を行う。これによってダイオード素子部に逆流電流が流れるシミュレーション動作を防ぐことができる。
【０１０１】
図７は第２のスイッチ変数ｕ３を説明するための図であり、ダイオード接続されたスイッチング素子部を例として示している。ここで、スイッチング素子部の入力端電圧をＶｉｎで表し、出力端電圧をＶｏｕｔで表す。図７（ａ）はスイッチング素子に順方向電圧が加わった場合を示し、図７（ｃ）はスイッチング素子に逆方向電圧が加わった場合を示している。ダイオード素子部の状態変数方程式は、第２のスイッチ変数ｕ３を用いて（Ｖｉｎ−Ｖｏｕｔ）ｕ３で表される。
【０１０２】
図７（ｂ）は、図７（ａ）の順方向バイアスの電圧状態のダイオード素子部をモデル化して示している。図７（ｂ）のモデル化の状態変数方程式は、順方向バイアスの電圧・電流状態であるため第２のスイッチ変数ｕ３＝１として、（Ｖｉｎ−Ｖｏｕｔ）で表される。
【０１０３】
図７（ｄ）は、図７（ｃ）の逆方向バイアスの電圧・電流状態のダイオード素子部をモデル化して示している。
【０１０４】
図７（ｄ）は、逆方向電流が流れる恐れのある場合である。このときには、モデル化したダイオード素子部の状態変数方程式は第２のスイッチ変数をｕ３＝０として“０”となる。つまり（Ｖｉｎ−Ｖｏｕｔ）×ｕ３の状態変数方程式は“０”である。これによって、ダイオード接続されたスイッチング素子部のモデル化において、逆方向電流が発生するおそれのある電圧・電流状態においては、第２のスイッチ変数ｕ３によってスイッチング素子に係る状態変数方程式を“０”として、実際には発生しないシミュレーション動作を防止し、実際の回路動作に対応してシミュレーション動作を行うことができるようにしている。
【０１０５】
第２のスイッチ変数ｕ３を“０”とするか“１”かは、シミュレーション中において、該当するダーオード素子に加わる電圧状態や電流状態に基づいて定めることができる。例えば、数値演算処理において、シミュレーションの動作中におけるダーオード素子に相当する部分の電圧・電流状態が、逆方向電流が流れない電圧・電流状態である場合には、第２のスイッチ変数ｕ３を“１”とすることによって、ダイオード素子部に係る状態変数方程式を含む状態変数方程式を解き、シミュレーションの動作中におけるダーオード素子部に相当する部分の電圧・電流状態が逆方向電流が流れる電圧・電流状態となった場合には、第２のスイッチ変数ｕ３を“１”から“０”に切り替えることによって、数値演算を行う状態変数方程式からダイオード素子部に係る状態変数方程式を解く。
【０１０６】
なお、シミュレーション中において該当するダーオード素子部に直列にインダクタ素子や容量素子が接続する場合には、インダクタ素子や容量素子に通常とは逆の方向に電流が流れる事を検出することで、第２のスイッチ変数ｕ３を“０”とするか“１”かを効率的に定めることができる。
【０１０７】
図８は、本発明の回路シミュレーション装置の一構成例を説明するための概略ブロック図である。
【０１０８】
回路シミュレーション装置は、状態変数方程式形成手段１０と、数値演算手段２０とを備え、表示手段３０において数値演算手段２０で得られたシミュレーション結果を表示する。
【０１０９】
回路シミュレーション装置は、アナログ回路又はアナログ／ディジタル混載回路の動作を数値演算によってシミュレートする装置であり、回路シミュレーションに際して、解析対象回路について回路モデルを求めておき、求めた回路モデルを回路シミュレーション装置に入力し、各回路モデルについて各期間の状態変数方程式を形成し、形成した各期間の状態変数方程式を連結して一周期内における状態変数方程式を形成し、この一周期における状態変数方程式を数値演算で解くことによって解析対象回路をシミュレートする。
【０１１０】
回路モデルは、解析対象回路がスイッチ動作によって一周期内で時間変化する際の各期間における回路構成である。
【０１１１】
状態変数方程式形成手段１０は、予め求めておいた各期間における回路モデルを入力し、入力した回路モデルに含まれるエネルギー蓄積素子部の電流および／又は電圧を状態変数とする微分方程式、および、回路モデルの出力を状態変数の線形加算とする方程式を形成して、回路モデルに関する複数の状態変数方程式を形成する。
【０１１２】
状態変数方程式形成手段１０は、例えば、入力した回路モデルを記憶する記憶手段、回路モデルから状態変数を抽出し、抽出した状態変数について微分方程式によって状態変数方程式を形成するプログラム、形成した各期間の状態変数方程式を連結して一周期内の状態変数方程式を形成するプログラム、これらプログラムおよび各期間の状態変数方程式を連結するスイッチ変数（各第１のスイッチ変数ｕ２および（１−ｕ２）、第２のスイッチ変数ｕ３）のデータを記憶する記憶手段、プログラムを実行するＣＰＵ等の演算手段によって構成することができる。
【０１１３】
状態変数方程式形成手段１０は、回路モデルに基づいて各状態変数の状態変数方程式を形成する。状態変数方程式の形成において、回路構成が時間により変化する回路の各期間における回路モデルについて、回路モデルに含まれるエネルギー蓄積素子部の電流および／又は電圧を状態変数とする微分方程式、およびそれらの状態変数の値を用いて回路モデルの出力を求める方程式によって、回路モデルに関する複数の状態変数方程式を形成する第１の形成工程と、各状態変数の状態変数方程式について、各期間における各状態変数方程式の時間変化を表す各第１のスイッチ変数を各期間の各状態変数方程式に乗じ、各第１のスイッチ変数ｕ２および（１−ｕ２）を乗じた各期間の各状態変数方程式を加算して各状態変数について一周期内における状態変数方程式を形成する第２の形成工程とを含む。
【０１１４】
第１の形成工程では、実際のダイオード素子に相当する部分にシミュレーションの上で逆流電流が流れるような動作を避けるために第２のスイッチ変数ｕ３を用い、第２の形成工程では、各第１のスイッチ変数ｕ２および（１−ｕ２）を用いて各期間の状態変数方程式を加算し、各状態変数について一周期内における状態変数方程式を形成する。
【０１１５】
各第１のスイッチ変数ｕ２および（１−ｕ２）は、各回路モデルの切り替えのタイミングに基づいて１と０の間の値を採る。スイッチ変数による回路モデルの切り替えのタイミングは、解析対象回路が備えるスイッチ素子による動作状態に応じて定められる。
【０１１６】
第２のスイッチ変数ｕ３は、シミュレーション中の電圧または電流状態に基づいて１又は０の値を採る。スイッチ変数による回路モデルの切り替えのタイミングは、解析対象回路が備えるスイッチ素子による動作状態に応じて定められる。
【０１１７】
数値演算手段２０は、状態変数方程式形成手段１０で形成した一周期内の状態変数方程式の微分方程式を数値積分による数値演算で解き、数値演算で得られた各状態変数の時間変化を出力する。数値演算は、例えば、汎用の数値演算プログラム２１を用いることができる。各第１のスイッチ変数ｕ２および（１−ｕ２）によって連接され、また、第２のスイッチ変数ｕ３によってダイオード素子部に相当する部分における逆方向電流の発生を防止した状態変数方程式を数値演算で解く際には、スイッチ変数値出力手段２２の出力信号のタイミングおよび出力値に基づいて状態変数方程式の各第１のスイッチ変数ｕ２および（１−ｕ２）、および第２のスイッチ変数ｕ３を変更する。スイッチ変数値出力手段２２は、各第１のスイッチ変数ｕ２および（１−ｕ２）の時間関数、および数値演算から得られる回路モデルの電圧状態や電流状態に基づいて出力信号を形成する。
【０１１８】
数値演算は、所定の時間間隔の複数のサンプリング点について状態変数の値を求める。数値演算を行う周波数は、一周期のクロック周波数で定まるナイキスト周波数以下とする。数値演算の周波数を一周期のクロック周波数で定まるナイキスト周波数以下とすることによって、一周期内における回路応答を求めることができる。
【０１１９】
数値演算手段２０で求めたシミュレーション結果は表示手段３０に表示する他、図示していない記憶手段に記憶したり、外部装置に出力することができる。
【０１２０】
以下、本発明の回路シミュレーションについてスイッチング電源回路を例とする実施例について説明する。
【実施例】
【０１２１】
［実施例１］
図９は、スイッチング電源回路をモデル化したブロック構成の回路図であり、ディクソン型のチャージポンプの構成例を示している。
【０１２２】
このスイッチング電源回路は、特定のエネルギー蓄積素子の一端にバイアス電圧を与えることによりスイッチ素子および／又は整流ダイオードをスイッチング動作させることによって、特定のエネルギー蓄積素子を含むエネルギー蓄積素子部に対してエネルギーを入出力するスイッチング電源回路である。
【０１２３】
特定のエネルギー蓄積素子の一端に与えるバイアス電圧は、一周期内のクロック信号によってスイッチング動作する。本発明の回路シミュレーション回路では、各第１のスイッチ変数ｕ２および（１−ｕ２）は、スイッチ素子又は整流ダイオードのスイッチング動作の時間変化に応じて１と０との間の値を採ることによって、異なる回路状態を連接して一つの状態変数方程式とする。
【０１２４】
ディクソン型のチャージポンプは、はじめの期間において入力直流電圧Ｖｉｎからダイオードを介して容量素子を充電し、さらに次の期間で容量素子の一端の電圧をクロック信号の電圧で持ち上げることで容量素子の他端の電圧を昇圧し、この昇圧した電圧を別のダイオードと容量素子で整流することによって、入力直流電圧Ｖｉｎから昇圧された所望の直流出力電圧Ｖｏｕｔを得る構成である。
【０１２５】
図９（ａ）はディクソン型のチャージポンプの一構成例であり、入力直流電圧Ｖｉｎを約２倍に昇圧する回路構成の例を示している。ダイオード接続されたトランジスタＭｎ１、Ｍｎ２、容量素子Ｃ１、出力容量素子Ｃｏｕｔ、負荷電流Ｉｏｕｔ、電圧が０〜Ｖｃｌｋ間を遷移するクロック電圧源ＶＣＬＫによって構成される。クロック電圧源ＶＣＬＫが出力するクロック信号がチャージポンプの回路内の容量素子Ｃ１に流入し、その容量素子Ｃ１に蓄えられたエネルギーを出力端子に接続される出力容量素子Ｃｏｕｔに転送する２段階の動作により昇圧が行われる。
【０１２６】
図９（ａ）の回路において、クロック電圧源ＶＣＬＫの電圧がロー（通常は接地電位０Ｖに近い電圧とするので、ここでも０Ｖとする）である場合には、出力電圧Ｖｏｕｔ＞入力直流電圧ＶｉｎとすればＶｆ１（ｔ）＞０，Ｖｆ２（ｔ）＜０となるので、ダイオード接続されたトランジスタＭｎ１は順バイアス状態となり道通する。一方、ダイオード接続されたトランジスタＭｎ２は逆バイアス状態となるためカットオフされる。
【０１２７】
図９（ｂ）は、クロック電圧源ＶＣＬＫの電圧がローの状態を表わしている。入力直流電圧Ｖｉｎの入力側と出力電圧Ｖｏｕｔ(t)の出力側は切り離されて２つの独立な回路となる。この時、容量素子Ｃ１には入力直流電圧Ｖｉｎからダイオード接続されたトランジスタＭｎ１を通して電流が流れ込み、その結果電荷が蓄積されて容量素子Ｃ１の両端間の電圧Ｖｃ１は、
Ｖｃ１(t)＝Ｖｉｎ−Ｖｆ１(t)                                      ・・・（１）
となる。
【０１２８】
続いて、クロック電圧源ＶＣＬＫの電圧がハイ（通常は入力直流電圧Ｖｉｎと同一の電圧とするが、ここではＶｃｌｋの電圧とする）である場合には、図９（ｃ）に示すように容量素子Ｃ１の他端Ａの電圧ＶＡは、ＶＡ(t)＝Ｖｃｌｋ＋Ｖｃ１(t)となり、ダイオード接続されたトランジスタＭｎ１は逆方向バイアス状態となり、ダイオード接続されたトランジスタＭｎ２は順方向バイアスとなって道通する。
【０１２９】
その結果、出力容量素子Ｃｏｕｔの両端の電圧Ｖｏｕｔ(t)は、
Ｖｏｕｔ(t) =ＶＡ(t)−Ｖｆ２(t) ＝ Ｖｉｎ＋Ｖｃｌｋ−Ｖｆ１(tＨ)−Ｖｆ２(t)    ・・・（２）
となる。
【０１３０】
ただしＶｆ１(tＨ)はクロック電圧源ＶＣＬＫの電圧がローである場合のＶｆ１(t)の最終値である。Ｖｆ１(tＨ)、Ｖｆ２(t)とも零に近いと仮定すれば、出力電圧Ｖｏｕｔ(t)は入力直流電圧Ｖｉｎとクロック電圧源ＶＣＬＫの電圧Ｖｃｌｋの和となり昇圧動作が行われる。ただしこの場合、Ｖｏｕｔ(t)を安定化するための負帰還はかかってはいない。
【０１３１】
クロック電圧源ＶＣＬＫの電圧がローの時（Ｖｃｌｋ＝０）の回路モデルにおける各状態変数Ｖｃ１（ｔ）とＶｏｕｔ（ｔ）（＝ＶＣｏｕｔ（ｔ））に係る状態変数方程式は以下の微分方程式で表される。
【０１３２】
【数１】
0005943269.tif 000002
・・・（３）
【０１３３】
【数２】
0005943269.tif 000003
・・・（４）
【０１３４】
ただし、トランジスタＭｎ１の電圧ＶＤＳ（＝ＶＧＳ）は以下の式で表される。
【数３】
0005943269.tif 000004
・・・（５）
【０１３５】
ここで、β、ｇｍ１、Ｒｍ１は以下の式で表される。
【数４】
0005943269.tif 000005
・・・（６）
【０１３６】
ダイオード接続されたトランジスタＭｎ１は流れる電流により両端の電圧が変化するが、上記式では、これを抵抗Ｒ１(t)で表している。
【０１３７】
また、Ｖｔｈ１(t)はトランジスタＭｎ１のソース電圧の関数であり、以下の関係がある。
【数５】
0005943269.tif 000006
・・・（７）
【０１３８】
ここで、ＶＳＢはトランジスタＭｎ１のソース端子とグラウンド間の電圧差、つまりＶＣ１と一致する。またφＦはビルトインポテンシャルと言われる電圧である。更に、ｕ３１(t)はトランジスタＭｎ１に逆流電流が流れるのを防ぐための第２のスイッチ変数の一つである。
【０１３９】
図９（ｂ）において、仮に容量素子Ｃ１の両端の電圧が（Ｖｉｎ−Ｖｔｈ１(t)）よりも高ければ、電流は容量素子Ｃ１から入力直流電圧Ｖｉｎに向かって逆流する。
【０１４０】
しかし、トランジスタＭｎ１がダイオードと等価な機能を果たすように接続されているため、このような逆流現象は実際には起こらない。そこで、上記した状態変数方程式は、回路モデルの誤動作を防ぐために第２のスイッチ変数のうちの一つであるｕ３１(t)を導入する。ｕ３１(t)は逆流が無い場合は１の値を採り、逆流が検出された場合には０の値を採る。逆流の有無は容量素子Ｃ１の電流の方向によって判断することができる。
【０１４１】
一方、クロック電圧源ＶＣＬＫの電圧がハイの時（Ｖｃｌｋ＝1）の回路モデルにおける各状態変数ｖｃ１（ｔ）とｖｏｕｔ（ｔ）に係る状態変数方程式は以下の微分方程式で表される。なお、図９の回路例では、ｖｏｕｔ（ｔ）はコンデンサＣの両端電圧ｖＣｏｕｔ（ｔ）である。
【０１４２】
【数６】
0005943269.tif 000007
・・・（８）
【０１４３】
【数７】
0005943269.tif 000008
・・・（９）
【０１４４】
第２のスイッチ変数のうちの一つであるｕ３２(t)はトランジスタＭｎ２に逆流電流が流れるのを防ぐために設けられている。ｕ３２(t)は、逆流が無い場合は１をとり、逆流が検出された場合には０をとる。逆流の有無は容量素子Ｃ１の電流の方向によって判断することができる。
【０１４５】
数値演算のプログラム上に上記の回路モデルから求められた状態変数方程式を組み込むために、期間１と期間２の２つの状態変数方程式をひとつの式に纏める。このために各第１のスイッチ変数ｕ２（ｔ）および（１−ｕ２（ｔ））を用いる。第１のスイッチ変数ｕ２（ｔ）および（１−ｕ２（ｔ））は、期間によって分離される回路構成に対応する。ｕ２（ｔ）は、クロック電圧源ＶＣＬＫの電圧がローの時（Ｖｃｌｋ＝０）にｕ２（ｔ）＝１の値を採り、クロック電圧源ＶＣＬＫの電圧がハイの時（Ｖｃｌｋ＝１）の場合にｕ２（ｔ）＝０の値を取る。これに対し、（１−ｕ２（ｔ））は、クロック電圧源ＶＣＬＫの電圧がローの時（Ｖｃｌｋ＝０）に（１−ｕ２（ｔ））＝０の値をとり、クロック電圧源ＶＣＬＫの電圧がハイの時（Ｖｃｌｋ＝１）の場合に（１−ｕ２（ｔ））＝１の値をとる。
【０１４６】
期間１か期間２かの場合分け、および第１のスイッチ変数u２（ｔ）および（１−ｕ２（ｔ））が１か０の場合分けは、クロック電圧源ＶＣＬＫの電圧値が１か０かで決まるため、ＶＣＬＫ＝０は、ｕ２（ｔ）＝１および（１−ｕ２（ｔ））＝０に対応する。また、ＶＣＬＫ＝１は、u２（ｔ）＝０および（１−ｕ２（ｔ））＝１に対応する。したがって、第１のスイッチ変数ｕ２（ｔ）および（１−ｕ２（ｔ））の制御はクロック信号により行うことができる。
【０１４７】
期間１の状態と期間２の状態を同時に記述した状態変数方程式は、以下の式（１０）、（１１）で表すことができる。
【０１４８】
【数８】
0005943269.tif 000009
・・・（１０）
【０１４９】
【数９】
0005943269.tif 000010
・・・（１１）
【０１５０】
上記の状態変数方程式が、数値演算のプログラム上でディクソン型チャージポンプの動作を表す記述式として取り扱われる。
【０１５１】
［実施例１の比較例］
図１０は本発明の回路シミュレーションを数値演算でシミュレーションした結果と、アナログ処理のシミュレーションソフトによる結果との比較図である。
【０１５２】
図１０中のＮＳＴＶＲで示すシミュレーション結果は、ＭＡＴＬＡＢ／Ｓｉｍｕｌｉｎｋ（登録商標）の汎用数値演算プログラムに本発明の回路シミュレーション手法を適用したプログラム（ＮＳＴＶＲ）で得られるシミュレーション結果であり、図１０中のＳＰＩＣＥで示すシミュレーション結果は、アナログ回路のシミュレーションソフトであるＳＰＩＣＥ（登録商標）を用いて得たシミュレーション結果である。図１０では、ＮＳＴＶＲによるシミュレーション結果を実線で示し、ＳＰＩＣＥによるシミュレーション結果は破線で示している。  
【０１５３】
図１０のシミュレーション結果は、図９のディクソン型ＤＣ−ＤＣコンバータ回路について、通常のＳＰＩＣＥ回路シミュレーションプログラムにより解析したシミュレーション結果と、本発明の回路シミュレーション手法で構成した状態変数方程式を、ＭＡＴＬＡＢを用いた数値演算による解析で得たシミュレーション結果とを比較して示している。
【０１５４】
このシミュレーション結果は、図９の回路の入力直流電圧Ｖｉｎを５Ｖとし、負荷電流Ｉｏｕｔを零（無負荷という）とした場合について、出力電圧Ｖｏｕｔの過渡変化について示している。このシミュレーションでは、クロック周波数を１ＭＨzとし、解析する時間間隔を１nsとして全体の解析時間を０〜４００μsとしている。シミュレーション結果によれば、出力電圧Ｖｏｕｔは０Ｖから７．５Ｖまで立ち上がる。
【０１５５】
ＳＰＩＣＥによるアナログ解析と、本発明のシミュレーション手法をプログラム化したＮＳＴＶＲによる解析とにおいて、シミュレーション時間の比較を表１に示す。
【０１５６】
【表１】
0005943269.tif 000011
【０１５７】
過渡解析において、ＳＰＩＣＥによるアナログ解析は約５８秒のＣＰＵ時間を要する。一方、本発明の回路シミュレーションのＮＳＴＶＲによる解析では約３８秒である。また、図１０に示すシミュレーション結果では、出力電圧において１５０mＶの電圧差が生じている。この電圧差は、出力電圧７．５Ｖに対して約２％（＝０．１５／７．５）である。
【０１５８】
比較結果によれば、ＣＰＵ時間に大きな差異は現れていないが、ＣＰＵ時間は回路規模に依存するため、回路規模が大きい場合にはＣＰＵ時間の差は顕著となると推定される。
【０１５９】
また、比較結果の出力電圧の誤差が約２％であることから、本発明の回路シミュレーションはＳＰＩＣＥによるアナログ解析と同等の精度を得ることができる。したがって、比較結果によれば、本発明の回路シミュレーションは、ＳＰＩＣＥによるアナログ解析よりも高速でシミュレーションでき、さらに、アナログ解析と同等の精度を得ることができることを示している。
【０１６０】
［実施例２］
ディクソン型チャージポンプは、多段接続による構成とすることができる。図１１は多段構成の例を示している。
【０１６１】
図１１において、容量素子Ｃ１にはクロック電圧源ＶＣＬＫを接続し、容量素子Ｃ２にはクロック電圧源ＶＣＬＫ／を接続する。クロック電圧源ＶＣＬＫとクロック電圧源ＶＣＬＫ／とは相補的な電圧を出力する。これによって、トランジスタＭｎ１、Ｍｎ２、Ｍｎ３、・・・は順にオン・オフの動作を行う。
【０１６２】
多段構成の場合についても、前記した実施例１に示した場合と同様に適用することができる。例えば、入力端側から出力端側に向かって奇数番目の容量素子Ｃの両端電圧を状態変数とする場合には、式（１０）において、奇数番目のスイッチ素子に関わる回路ブロックの状態変数方程式に第１のスイッチ変数ｕ２（ｔ）を乗じて得られる状態変数方程式と、偶数番目のスイッチ素子に関わる回路ブロックの状態変数方程式に他方の第１のスイッチ変数（１−ｕ２（ｔ））を乗じて得られる状態変数方程式とを加算することによって一周期中の状態変数方程式を求めることができる。
【０１６３】
［実施例３］
ディクソン型チャージポンプの多段接続の構成では、前記した図１１に示す構成例のＭＯＳトランジスタをダイオードに代えることができる。図１２は、ディクソン型チャージポンプの多段接続構成を、ダイオードを用いて構成した例を示している。この回路動作は、ＭＯＳトランジスタがダイオードに代わっただけの違いであって、モデル化の点では同様であるため、回路モデルおよび状態変数方程式は同じとなる。
【０１６４】
［実施例４］
次に、スイッチ型チャージポンプの例について図１３〜図１５を用いて説明する。スイッチ型チャージポンプは、ディクソン型チャージポンプのダイオード接続を行うトランジスタを、ＣＭＯＳインバータを使った１極２投のスイッチ素子に置き換えた構成である。図１３は差動構成によるスイッチ型チャージポンプの構成例を示し、図１４は図１３の差動構成の動作原理を説明するための構成図を示している。また、図１５は、直列接続されるスイッチ素子が同時にオン状態となったときにスイッチ素子を通して流れる漏れ電流を、クロック信号の切り替わり時にのみ値を持つ電流源として扱う状態を説明するための図である。
【０１６５】
図１３（ａ）はスイッチ型チャージポンプの回路構成と、回路を駆動するクロック信号例を示し、図１３（ｂ）はクロック信号中の丸付き符号１で示した時点における等価回路を示し、図１３（ｃ）はクロック信号中の丸付き符号２で示した時点における等価回路を示している。
【０１６６】
図１４（ａ）の動作原理図は、図１３において丸付き符号１で示される時点の回路の動作状態を示している。クロック信号電圧Ｖｃｌｋが容量素子Ｃ１に加わると、これによって丸付き符号ｂで示す点の電圧Ｖｂは昇圧され、以下で示される電圧となる。
Ｖｂ＝Ｖｃｌｋ＋Ｖｃ１（ｔ）
【０１６７】
ＮＭＯＳトランジスタＭｎ１によるトランジスタスイッチＳＷＭｎ１は、昇圧されたＶｂにより制御されてオン状態となる。このとき、ＰＭＯＳトランジスタＭｐ1によるトランジスタスイッチＳＷＭｐ１はオフ状態である。したがって、容量素子Ｃ２はＮＭＯＳトランジスタＭｎ１によるトランジスタスイッチＳＷＭｎ１を通して電圧Ｖｉｎ に充電される。これにより、ＮＭＯＳトランジスタＭｎ２によるトランジスタスイッチＳＷＭｎ２はオフ状態で、ＰＭＯＳトランジスタＭｐ２によるトランジスタスイッチＳＷＭｐ２がオン状態となるため、Ｖｂの電圧がＰＭＯＳトランジスタＭｐ２によるトランジスタスイッチＳＷＭｐ２を通して出力容量素子Ｃｏｕｔに伝達される。つまり、出力容量素子Ｃｏｕｔの両端はＶｂとなり（ただし容量素子Ｃ１，Ｃ２＞出力容量素子Ｃｏｕｔ）、出力端子の電圧Ｖｏｕｔは昇圧される。
【０１６８】
丸付き符号１で示される時点において成立する回路（図１３（ｂ），図１４（ａ）に対応）は、以下の状態変数方程式で記述することができる。
【０１６９】
【数１０】
0005943269.tif 000012
【０１７０】
・・・（１２）
【数１１】
0005943269.tif 000013
・・・（１３）
【０１７１】
【数１２】
0005943269.tif 000014
・・・（１４）
【０１７２】
ただし、トランジスタＭｎ１、Ｍｐ２によるトランジスタスイッチＳＷＭｎ１，ＳＷＭｐ２のオン抵抗をそれぞれＲＭｎ１，ＲＭｐ２としている。
【０１７３】
図１４（ｂ）の動作原理図は、図１３において丸付き符号２で示される時点の回路の動作状態を示している。クロック信号電圧Ｖｃｌｋが容量素子Ｃ２に加わると、これによって、丸付き符号ａで示す点の電圧Ｖａは昇圧され、以下で示される電圧となる。
Ｖａ＝Ｖｃｌｋ＋Ｖｃ２（ｔ）
【０１７４】
ＮＭＯＳトランジスタＭｎ２によるトランジスタスイッチＳＷＭｎ２は、昇圧されたＶａにより制御されてオン状態となる。このとき、ＰＭＯＳトランジスタＭｐ２によるトランジスタスイッチＳＷＭｐ２はオフ状態である。したがって、容量素子Ｃ１はＮＭＯＳトランジスタＭｎ２によるトランジスタスイッチＳＷＭｎ２を通して電圧Ｖｉｎ に充電される。これにより、ＮＭＯＳトランジスタＭｎ１によるトランジスタスイッチＳＷＭｎ１はオフ状態で、ＰＭＯＳトランジスタＭｐ１によるトランジスタスイッチＳＷＭｐ１がオン状態となるため、Ｖａ電圧がＰＭＯＳトランジスタＭｐ１によるトランジスタスイッチＳＷＭｐ１を通して出力容量素子Ｃｏｕｔに伝達される。つまり、出力容量素子Ｃｏｕｔの両端はＶａとなり（ただし容量素子Ｃ１，Ｃ２＞出力容量素子Ｃｏｕｔ）、出力端子の電圧Ｖｏｕｔは昇圧される。
【０１７５】
図１４（ｂ）の動作原理図は、図１３において丸付き符号２で示される時点の回路の動作状態を示している。丸付き符号ａで示す点の電圧Ｖａは昇圧され、以下で示される電圧となる。
Ｖａ＝Ｖｃｌｋ＋Ｖｃ２（ｔ）
【０１７６】
丸付き符号１で示される時点と同様に、丸付き符号２で示される時点において成立する回路（図１３（ｃ），図１４（ｂ）に対応）は、以下の状態変数方程式で記述することができる。
【０１７７】
【数１３】
0005943269.tif 000015
・・・（１５）
【０１７８】
【数１４】
0005943269.tif 000016
・・・（１６）
【０１７９】
【数１５】
0005943269.tif 000017
・・・（１７）
【０１８０】
ただし、トランジスタスイッチＳＷＭｐ１，ＳＷＭｎ２のオン抵抗をそれぞれＲＭｐ１，ＲＭｎ２としている。
【０１８１】
上記した、丸付き符号１で示される時点と丸付き符号２で示される時点の状態変数方程式を各第１のスイッチ変数ｕ２（ｔ）、（１−ｕ２（ｔ））を用いて纏めると、各状態変数についてそれぞれ以下に示す１つの状態変数方程式で表すことができる。
【０１８２】
【数１６】
0005943269.tif 000018
・・・（１８）
【０１８３】
【数１７】
0005943269.tif 000019
・・・（１９）
【０１８４】
【数１８】
0005943269.tif 000020
・・・（２０）
【０１８５】
ただし、ＮＭＯＳトランジスタスイッチＳＷＭｎ１，ＳＷＭｎ２のオン抵抗をそれぞれＲＭｎ１，ＲＭｎ２とし、ＰＭＯＳトランジスタスイッチＳＷＭｐ１，ＳＷＭｐ２のオン抵抗をそれぞれＲＭｐ１，ＲＭｐ２としている。
【０１８６】
図１３（ｂ）の回路から図１３（ｃ）の回路への回路変化、あるいは、図１３（ｃ）の回路から図１３（ｂ）の回路への回路変化が起きる場合、ＮＭＯＳトランジスタスイッチＳＷＭｎ１とＰＭＯＳトランジスタスイッチＳＷＭｐ１の両方、または、ＮＭＯＳトランジスタスイッチＳＷＭｎ２とＰＭＯＳトランジスタスイッチＳＷＭｐ２の両方が同時にオン状態となる期間が、クロック信号が変化する期間で発生する。
【０１８７】
ＮＭＯＳトランジスタスイッチＳＷＭｎ１とＰＭＯＳトランジスタスイッチＳＷＭｐ１、およびＮＭＯＳトランジスタスイッチＳＷＭｎ２とＰＭＯＳトランジスタスイッチＳＷＭｐ２はＣＭＯＳインバータ回路の構成であり、ＮＭＯＳトランジスタスイッチとＰＭＯＳトランジスタスイッチの両方が同時にオン状態となる期間において、貫通電流に相当する漏れ電流が生じる。
【０１８８】
発明の回路シミュレーションでは、この漏れ電流の発生をモデル化するために、漏れ電流をクロック信号の切り替わり時のみの電流源として状態変数方程式に組み込む。
【０１８９】
図１５は、スイッチが同時にオンしている期間のみ流れる漏れ電流を電流源Ｉｌｅａｋに置き換えた回路構成を示している。また同時にオン状態となるスイッチは、図１４（ａ）または図１４（ｂ）で示される通常状態にあるとして、漏れ電流を表す電流源だけが加わる形で表す。
【０１９０】
図１５に示す回路について状態変数方程式を求めると、各状態変数について以下の状態変数方程式で表される。
【０１９１】
【数１９】
0005943269.tif 000021
・・・（２１）
【０１９２】
【数２０】
0005943269.tif 000022
・・・（２２）
【０１９３】
【数２１】
0005943269.tif 000023
・・・（２３）
ただしＩｌｅａｋは漏れ電流である。
【０１９４】
［実施例５］
スイッチ型チャージポンプは、多段構成とされる。図１６は多段構成のスイッチ型チャージポンプの一構成例を示しいている。
【０１９５】
クロック信号源は、クロック信号源ＶＣＬＫ１，ＶＣＬＫ３，ＶＣＬＫ５のクロック信号電圧Ｖｃｌｋ１，Ｖｃｌｋ３，Ｖｃｌｋ５は同相であり、対応するクロック信号源ＶＣＬＫ２，ＶＣＬＫ４，ＶＣＬＫ６のクロック信号電圧Ｖｃｌｋ２，Ｖｃｌｋ４，Ｖｃｌｋ６は逆相で駆動する。この場合、入力直流電圧Ｖｉｎ＝５Ｖとして、クロック信号源ＶＣＬＫ１，ＶＣＬＫ２に０〜５Ｖのクロック信号電圧を、クロック信号源ＶＣＬＫ３，ＶＣＬＫ４に０〜１０Ｖのクロック信号電圧を、クロック信号源ＶＣＬＫ５，ＶＣＬＫ６に０〜２０Ｖのクロック信号電圧を入力すると、出力容量素子Ｃｏｕｔ１の電圧は１０Ｖとなり、出力容量素子Ｃｏｕｔ２の電圧は２０Ｖとなり、出力容量素子Ｃｏｕｔ３電圧は４０Ｖとなる。
【０１９６】
回路のモデル化は、漏れ電流の数式化を含めて、実施例４の２段構成と同様に行うことができる。
【０１９７】
［実施例５の比較例］
図１７は本発明の回路シミュレーションツールＮＳＴＶＲでシミュレーションした結果と、アナログ処理のシミュレーションソフトウェアであるＳＰＩＣＥにより得られる結果との比較図である。
【０１９８】
図１７中のＮＳＴＶＲで示すシミュレーション結果は、ＭＡＴＬＡＢ／Ｓｉｍｕｌｉｎｋ（登録商標）の汎用数値演算プログラムに本発明の回路シミュレーション手法を適用したプログラム（ＮＳＴＶＲ）で得たシミュレーション結果であり、図１７中のＳＰＩＣＥで示すシミュレーション結果は、アナログ回路のシミュレーションソフトであるＳＰＩＣＥ（登録商標）を用いて得たシミュレーション結果である。
【０１９９】
入力直流電圧Ｖｉｎを５Ｖとし、０Ｖから５Ｖまで立ち上げた場合の出力電圧Ｖｏｕｔの変化を示している。出力電圧Ｖｏｕｔを４０Ｖとし、負荷電流Ｉｏｕｔを零（無負荷という）としている。また、クロックパルスを1ＭHzとし、１ns刻みで０〜４００μｓで過渡解析を行っている。
【０２００】
以下に、シミュレーション時間の比較を表２に示す。
【表２】
0005943269.tif 000024
【０２０１】
本発明による過渡解析において、ＳＰＩＣＥを用いた解析では約１８８秒のＣＰＵ時間を要し、一方、本発明の回路シミュレーションについてＮＳＴＶＲを用いた解析では約３７秒ほどであった。
【０２０２】
図１７に示すシミュレーション結果では、出力電圧において約２０２mＶの電圧差が生じている。この電圧差は、出力電圧４０Ｖに対して約０．５％（＝０．２０２／４０）である。また、シミュレーション時間は約１／５（３７秒／１８８秒）であって高速化が達成されている。この高速化の効果は、回路規模に応じてより顕著となることが期待される。
【０２０３】
したがって、図１７と表２に示すシミュレーション結果によれば、本発明の回路シミュレーション手法を汎用数値演算プログラム上に実現したプログラムであるＮＳＴＶＲによる解析は、アナログ回路のシミュレーションソフトのＳＰＩＣＥによる解析と比較して高速であり、また、精度において殆んど変わらないことを示している。
【０２０４】
この実施例によれば、チャージポンプ回路においても本発明の回路シミュレーション手法を用いたＮＳＴＶＲの適用が可能であり、種々のＤＣ−ＤＣコンバータにおいて各状態変数を１つの状態変数方程式によって、高速で正確にシミュレーションを行うことができることが確認される。
【０２０５】
［実施例６］
次に、昇降圧型ＤＣ−ＤＣコンバータの例について図１８を用いて説明する。昇降圧型ＤＣ−ＤＣコンバータは、昇圧および降圧が可能なＤＣ−ＤＣコンバータである。
【０２０６】
図１８（ａ）において、昇降圧型ＤＣ−ＤＣコンバータはＱ号が０（ロー）の時にスイッチトランジスタＭｐがオン状態となり、Ｑ信号が１（ハイ）の時にスイッチトランジスタＭｐがオフ状態となるため、図１８（ｂ）に示すように２つの回路状態となる。
【０２０７】
図１８（ｂ）において、Ｑ信号が０（ロー）の時には、スイッチトランジスタＭｐがオン状態となる。この時、出力端子の出力電圧Ｖｏｕｔは負であるので、ダイオードＤはオフ状態となる。なお、ＲＭｐ−ｏｎはスイッチトランジスタＭｐのオン抵抗である。
【０２０８】
続いて、図１８（ｃ）において、Ｑ信号が１（ハイ）の時には、スイッチトランジスタＭｐがオフ状態となるが、インダクタ素子Ｌには図中の矢印で示す方向に電流が流れ続けるためダイオードＤはオン状態となり、出力端子には負の電圧が現れる。なお、ダイオードＤの順方向電圧は流れる電流により変化するので、これを固定電圧と電流依存性を持つ抵抗により置き換えている。
【０２０９】
図１８（ｂ）の回路状態と図１８（ｃ）の回路状態を切り替えるために各第１のスイッチ変数ｕ２（ｔ）、（１−ｕ２（ｔ））を用いる。また、図１８(c)でダイオードＤに逆方向電流が流れないようにするために更に第２のスイッチ変数ｕ３を導入する。
【０２１０】
第１のスイッチ変数ｕ２（ｔ）、（１−ｕ２（ｔ））を導入する事で、図１８（ａ）に示す昇降圧型ＤＣ−ＤＣコンバータの出力回路を、単一の状態変数方程式で記述することができる。
【０２１１】
以下に、図１８の構成例の昇降圧型ＤＣ−ＤＣコンバータの状態変数方程式を示す。
【０２１２】
【数２２】
0005943269.tif 000025
・・・（２４）
【０２１３】
【数２３】
0005943269.tif 000026
・・・（２５）
【０２１４】
【数２４】
0005943269.tif 000027
・・・（２６）
【０２１５】
［実施例７］
次に、昇圧型ＤＣ−ＤＣコンバータの例について図１９を用いて説明する。昇圧型ＤＣ−ＤＣコンバータは、実施例６の昇降圧型ＤＣ−ＤＣコンバータの場合と同様にしてモデル化して状態変数方程式を形成し、シミュレーションを行うことができる。
【０２１６】
図１９（ａ）において、昇圧型ＤＣ−ＤＣコンバータは、Ｑ信号が１（ハイ）の時にスイッチトランジスタＭｎがオン状態となり、Ｑ信号が０（ロー）の時にスイッチトランジスタＭｎがオフ状態となるため、図１９（ｂ）に示すように２つの回路状態となる。
【０２１７】
図１９（ｂ）において、Ｑ信号が１（ハイ）の時にスイッチトランジスタＭｎがオン状態となり、ダイオードＤは逆バイアス状態でオフ状態となる。なお、ＲＭｎ−ｏｎはスイッチトランジスタＭｎのオン抵抗である。
【０２１８】
続いて図１９（ｃ）に示すように、Ｑ信号が０（ロー）の時にはスイッチトランジスタＭｎがオフ状態となるが、インダクタ素子Ｌには図中の矢印の方向に電流が流れ続けるためダイオードＤはオン状態となり、出力端子には入力直流電圧Ｖｉｎから昇圧された電圧が現れる。図１９ではダイオードＤの順方向電圧は流れる電流により変化するので、これを固定電圧と電流依存性のある抵抗により置き換えている。
【０２１９】
図１９（ｂ）の回路状態と図１９（ｃ）の回路状態を切り替えるために各第１のスイッチ変数ｕ２（ｔ）、（１−ｕ２（ｔ））を用いる。また、図１９（ｃ）でダイオードＤに逆方向電流が流れないようにするために更に第２のスイッチ変数ｕ３(t)を導入する。
【０２２０】
各第１のスイッチ変数ｕ２（ｔ）、（１−ｕ２（ｔ））を導入する事で、図２０（ａ）に示す昇圧型ＤＣ−ＤＣコンバータの出力回路を、単一の状態変数方程式で記述することができる。
【０２２１】
以上のように本発明の回路シミュレーション手法を汎用の数値演算プログラムに適用したＮＳＴＶＲプログラムによって、ディクソン（Dickson）型チャージポンプ、スイッチ（ＳＷ）型チャージポンプ、昇降圧型ＤＣ−ＤＣコンバータ、昇圧型ＤＣ−ＤＣコンバータおよび降圧型ＤＣ−ＤＣコンバータなどの電源システムについて、過渡解析および周波数特性のシミュレーションを、高速で忠実にシミュレーションを行うことができる。
【産業上の利用可能性】
【０２２２】
本発明の数値演算によるシミュレーション手法は、ＤＣ−ＤＣコンバータに代表されるスイッチング電源の設計に利用する他、任意の電子回路に適用することができる。
【符号の説明】
【０２２３】
１０    状態変数方程式形成手段
２０    数値演算手段
２１    数値演算プログラム
２２    スイッチ変数値出力手段
３０    表示手段
１１０    状態変数方程式形成手段
１２０    数値演算手段
１２１    汎用シミュレーションプログラム
１３０    表示手段
Ｃ    容量素子
Ｃ１，Ｃ２，Ｃ３    容量素子
Ｃｏｕｔ，Ｃｏｕｔ１，Ｃｏｕｔ２，Ｃｏｕｔ３    出力容量素子
Ｄ    ダイオード
ｉＬ    電流
Ｉｌｅａｋ    電流源
Ｉｏｕｔ    負荷電流
Ｌ    インダクタ素子
Ｍｎ    スイッチトランジスタ
Ｍｎ１，Ｍｎ２    トランジスタ
Ｍｐ    スイッチトランジスタ
Ｍｐ１，Ｍｐ２    トランジスタ
Ｒ，Ｒ１    抵抗
ＳＷＭｎ１，ＳＷＭｎ２    トランジスタスイッチ
ＳＷＭｐ１，ＳＷＭｐ２    トランジスタスイッチ
Ｔ１，Ｔ２，Ｔ３    期間
ｕ    スイッチ変数
u２    第１のスイッチ変数
１−u２  第１のスイッチ変数  
ｕ２ａ，ｕ２ｂ，ｕ２ｃ    第１のスイッチ変数
ｕ３，ｕ３１，ｕ３２    第２のスイッチ変数
【図１】
0005943269.tif 000028
【図２】
0005943269.tif 000029
【図３】
0005943269.tif 000030
【図４】
0005943269.tif 000031
【図５】
0005943269.tif 000032
【図６】
0005943269.tif 000033
【図７】
0005943269.tif 000034
【図８】
0005943269.tif 000035
【図９】
0005943269.tif 000036
【図１０】
0005943269.tif 000037
【図１１】
0005943269.tif 000038
【図１２】
0005943269.tif 000039
【図１３】
0005943269.tif 000040
【図１４】
0005943269.tif 000041
【図１５】
0005943269.tif 000042
【図１６】
0005943269.tif 000043
【図１７】
0005943269.tif 000044
【図１８】
0005943269.tif 000045
【図１９】
0005943269.tif 000046
【図２０】
0005943269.tif 000047
【図２１】
0005943269.tif 000048