(57)【特許請求の範囲】
【請求項１】
設計対象のアナログ電子回路の設計に関わる拘束条件を、回路素子値を未知変数とする代数方程式で表し、該代数方程式を、計算手段がニュートン法の繰り返し計算で解く回路シミュレータの回路設計支援方法において、前記ニュートン法の繰り返し計算で用いるヤコビ行列の要素である偏導関数の値を計算するための要素を、前記回路シミュレータで観測される前記アナログ電子回路の回路応答としての出力波形から求めると共に、前記計算手段は、前記ヤコビ行列の要素である前記偏導関数を、該偏導関数の定義に基づいた微小区間における平均変化値を求める近似式で代用して計算を行う回路設計支援方法。
【請求項２】
請求項１において、前記拘束条件として、前記出力波形の観測値の最大値，最小値，平均値を用いる回路設計支援方法。
【請求項３】
設計対象のアナログ電子回路の設計に関わる拘束条件を、回路素子値を未知変数とする代数方程式で表し、該代数方程式を、ニュートン法の繰り返し計算で解く回路設計支援装置において、前記ニュートン法の繰り返し計算で用いるヤコビ行列の要素である偏導関数の値を計算するための要素を、該回路設計支援装置で観測される前記アナログ電子回路の回路応答としての出力波形から求めると共に、該ヤコビ行列の要素である前記偏導関数を、該偏導関数の定義に基づいた微小区間における平均変化値を求める近似式で代用する計算手段を備える回路設計支援装置。
【請求項４】
請求項３において、前記拘束条件として、前記出力波形の観測値の最大値，最小値，平均値を用いる回路設計支援装置。
【請求項５】
設計対象のアナログ電子回路の設計に関わる拘束条件を、回路素子値を未知変数とする代数方程式で表し、該代数方程式を、計算手段がニュートン法の繰り返し計算で解く回路シミュレータの回路設計支援プログラムにおいて、前記ニュートン法の繰り返し計算で用いるヤコビ行列の要素である偏導関数の値を計算するための要素を、前記回路シミュレータで観測される前記アナログ電子回路の回路応答としての出力波形から求めると共に、前記ヤコビ行列の要素である前記偏導関数を、該偏導関数の定義に基づいた微小区間における平均変化値を求める近似式で代用して前記計算手段が計算を行うステップを備える回路設計支援プログラム。
【請求項６】
請求項５において、前記拘束条件として、前記出力波形の観測値の最大値，最小値，平均値を用いる回路設計支援プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は回路設計支援方法及びその装置並びに回路設計支援プログラムに係り、特に、微分方程式でなる回路方程式を与えることなく回路設計を設計者と計算機との間で対話的に自動で行うことが可能な回路設計支援方法及びその装置並びに回路設計支援プログラムに関する。
【背景技術】
【０００２】
近年の情報化社会の発展には著しいものがあり、その中で，計算機のＣＰＵはＧＨｚの動作（クロック）周波数が求められ、無線通信においてはＧＨｚ帯の周波数の使用が始まるなど、電子回路の高周波数化が顕著になってきている。これに伴い、ＣＰＵなどに電力を供給するための電源回路や無線通信における増幅器等のアナログ回路の開発が極めて重要になってきている。【０００３】
高周波数化の進んだ電子回路に接続される電源回路や増幅器等のアナログ回路の設計は、
（１）回路構成の決定
（２）回路素子値の決定
（３）回路動作の評価
の３段階に分類される。【０００４】
これらの設計を計算機上で支援するツールとして「ＳＰＩＣＥ」などの回路シミュレータが開発されており、これは、上記の（３）に対しての強力な支援ツールとして広く用いられている。しかし、回路動作をシミュレートするためには、回路素子値を与える必要があり、所望の動作を実現するための素子値を導出する上記（２）の作業を欠かすことができない。【０００５】
アナログ回路の開発者は、回路の素子値を決定するために、初めに手計算で回路解析を行い、その解析結果を用いて回路の素子値を決定している。回路解析には近似を多く含むため、導出した素子値は誤差を含む。従って、導出した素子値をシミュレータに入力し、その結果から、回路の素子値を経験的に調整するという上記（２）と（３）の繰り返し作業を行うことになる。また、素子値の調整は設計者の経験がものをいう分野であるため、設計者の教育も必要となる。【０００６】
一方、シミュレータを用いてモンテカルロ法で素子値を求めたとしても、満足すべき条件数の増加に伴い、計算時間が指数関数的に増加してしまうという問題もある。つまり、上記（１）と（３）の間の接続作業である上記（２）にあたる作業が、回路開発の時間的ボトルネックとなっている。そのため、経験が浅い設計者でも、回路設計を容易かつ高速に行える設計支援ツールが強く求められている。【０００７】
そこで、本発明者等は、先に、下記非特許文献１に記載の様に、計算機上で数値的に素子値を導出する素子値算出方法を提案した。以下、この従来の素子値算出方法を説明する。【０００８】
例えば、次の数１に示される微分方程式で記述される回路について考える。【０００９】
【数１】
0004571589.tif 000002
【００１０】
ここで、ｔ∈Ｒ，ｘ∈Ｒｎ、及び、λ∈Ｒｍは、夫々、時間，ｎ次元状態空間，ｍ次元のシステムパラメータを示す。簡単のため、【００１１】
【数２】
0004571589.tif 000003
【００１２】
はＣ∞級写像であり、時間領域において周期ｔＴの周期性を持つと仮定する。つまり、【００１３】
【数３】
0004571589.tif 000004
【００１４】
と表される。更に、上記の数１は、−∞＜ｔ＜∞において、任意の初期値ｘ０∈Ｒｎおよびあらゆるシステムパラメータλ∈Ｒｍ：ｘ（０）＝φ（０，ｘ０，λ）＝ｘ０に対し、ｘ（ｔ）＝φ（ｔ，ｘ０，λ）という解を持つとする。【００１５】
上記の数３で述べた周期性の仮定により、状態空間Ｒｎからそれ自身に戻るＣ∞級離散写像Ｔ：【００１６】
【数４】
0004571589.tif 000005
【００１７】
を定義することができる。この写像Ｔは、ポアンカレ写像と呼ばれる。【００１８】
数１の微分方程式の解ｘ（ｔ）＝φ（ｔ，ｐ０，λ）が周期ｔＴの周期性を有していた場合、【００１９】
【数５】
0004571589.tif 000006
【００２０】
を満たす点ｐ０∈Ｒｎは写像Ｔに対する不動点という。【００２１】
電子回路を設計するには、拘束条件を考えることが多い。もし、条件の数をＮ（≦ｍ）とすると、時刻ｔ＝ｔｃｋにおける夫々の条件をｇｋと表すことにより、【００２２】
【数６】
0004571589.tif 000007
【００２３】
と表すことができる。この場合、設計パラメータとしてＮ個のパラメータを用意することができる。従って、その他の（ｍ−Ｎ）個のパラメータは、設計仕様として与えなくてはならない。【００２４】
以上より、電子回路の設計は、代数方程式である上記の数５，数６の解法に帰着する。これらの代数方程式（数５，数６）を改めて【００２５】
【数７】
0004571589.tif 000008
【００２６】
と書き直す。ここで、Ｔ（ｘ０，λ），ｘ０，λは、夫々、Ｔ（ｘ０，λ）＝〔Ｔ１（ｘ０，λ），Ｔ２（ｘ０，λ），…，Ｔｎ（ｘ０，λ）〕Ｔ，ｘ０＝ｘ（０）＝〔ｘ１（０），ｘ２（０），…，ｘｎ（０）〕Ｔ，λ＝〔λ１，λ２，…，λｍ〕Ｔと表すことができる。更に、λｕ∈ＲＮを【００２７】
【数８】
0004571589.tif 000009
【００２８】
と定義する。【００２９】
設計方程式（数７）を解くには、代数方程式を解くための最も一般的アルゴリズムであるニュートン法を用いる。数７中の未知数をｕ∈Ｒｎ＋Ｎ：ｕ＝〔ｘ０Ｔ，λｕＴ〕Ｔと表すと、繰り返し計算【００３０】
【数９】
0004571589.tif 000010
【００３１】
を終了条件‖ｕｋ＋１−ｕｋ‖＜δを満足するまで行う。ここで、Ｆ’∈Ｒ（ｎ＋Ｎ）×（ｎ＋Ｎ）はＦのヤコビ行列つまり、【００３２】
【数１０】
0004571589.tif 000011
【００３３】
を表す。更に、ｋは繰り返しの回数であり、δ≪１である。ここでは、δ＝１０−９とする。このとき、ｕｋ＋１が数７の解となる。【００３４】
数９を計算するためには数１０中のＴ（ｕｋ）を求める必要があるが、このＴ（ｕｋ）は、数１にルンゲクッタ法を適用することで求めることができる。更に、数１０のヤコビ行列Ｆ’（ｕｋ）の要素は、一次変分方程式【００３５】
【数１１】
0004571589.tif 000012
【００３６】
を解くことにより導出する。数１１は、∂φ（ｔ，ｕｋ）／∂ｘ０，∂φ（ｔ，ｕｋ）／∂λの微分方程式と見なせる。つまり、数１１を０からｔＴまたはｔｃｋまでルンゲクッタ法を用いて解けば、∂φ（ｔＴ，ｕｋ）／∂ｘ０，∂φ（ｔｃｋ，ｕｋ）／∂ｘ０，∂φ（ｔＴ，ｕｋ）∂λ，∂φ（ｔｃｋ，ｕｋ）／∂λを導出することができる。Ｔｋはφの関数であり、ｇｋは一般的にφの関数として表すことができるため、これらの値から、ヤコビ行列の要素であるＴｋ（ｕｋ）／∂ｘ０，Ｔｋ（ｕｋ）／∂λ，ｇｋ（ｔｃｋ，ｕｋ）／∂ｘ０，ｇｋ（ｔｃｋ，ｕｋ）／∂λを数値的に導出することができる。【００３７】
従来は、以上の計算により、未知係数ｕを求め、その結果、電子回路の設計値であるλｕを決定していた。【００３８】
図２は、上述した従来の計算手順を用いて回路設計を行う処理手順を示すフローチャートである。先ず、電子回路の構成を決定する回路構成決定ステップ１と、決定された回路構成から回路設計者が手作業で回路方程式（数１）を決定する回路方程式構築ステップ２と、この回路方程式から変分方程式（数１１）を回路設計者が手作業で導出する変分方程式導出ステップ３と、制約条件（数７）を導出する制約条件導出ステップ４と、回路方程式（数１）と変分方程式（数１１）を用いて条件式（数７）を解くことによって回路素子値と波形とを導出するステップ５とからなり、ステップ５で満足のいく解が得られないときはステップ１に戻る。【００３９】
【非特許文献１】IEEE TRANSACTION ON CIRCUITS AND SYSTEM-1: FUNDAMENTAL THEORY AND APPLICATIONS.VOL.49.NO.7, JULY 2002
【発明の開示】
【発明が解決しようとする課題】
【００４０】
上述した様に、従来の方法は、回路構成を考えた後、回路方程式を陽な形で与え、この回路方程式を解くことによって、電圧，電流波形ｘ（ｔ）＝φ（ｔ，ｘ０，λ）を導出する構成になっている。しかも、この回路方程式は、計算機を用いて自動的に導出するのが難しいため、手計算に頼らざるを得ないという問題がある。更に、回路構成や回路素子の特性を変更するたびに回路方程式を作り直す必要があり、その手間は非常に大きい。つまり、従来の方法は、回路構成から回路方程式を導出し、変分方程式を導出する一連の作業が自動設計への障害になっている。【００４１】
本発明の目的は、回路素子値や波形の導出を自動的に計算機で行うことができる回路設計支援方法及びその装置並びに回路設計支援プログラムを提供することにある。
【課題を解決するための手段】
【００４２】
本発明の回路設計支援方法及びその装置並びにプログラムは、設計対象のアナログ電子回路の設計に関わる拘束条件を、回路素子値を未知変数とする代数方程式で表し、該代数方程式を、計算手段がニュートン法の繰り返し計算で解く回路シミュレータの回路設計支援方法において、前記ニュートン法の繰り返し計算で用いるヤコビ行列の要素である偏導関数の値を計算するための要素を、前記回路シミュレータで観測される前記アナログ電子回路の回路応答としての出力波形から求めると共に、前記計算手段は、前記ヤコビ行列の要素である前記偏導関数を、該偏導関数の定義に基づいた微小区間における平均変化値を求める近似式で代用して計算を行うことを特徴とする。
本発明は更に、前記拘束条件として、前記出力波形の観測値の最大値，最小値，平均値を用いることを特徴とする。
【００４３】
この構成により、アナログ電子回路の回路方程式を微分方程式で記述する必要がなくなる。また、アナログ電子回路の微分方程式にルンゲクッタ法を適用して偏微分（偏導関数）を算出する必要がなくなる。
【発明の効果】
【００４４】
本発明によれば、ヤコビ行列の偏導関数を、一次変分方程式から求める必要がなくなり、また、回路方程式を陽の形で記述する必要もなくなるため、設計者の手計算が不必要となる。更に、アナログ電子回路の拘束条件として、アナログ電子回路の回路応答としての出力波形の観測値の統計的データ（最大値，最小値，平均値など）で与えることができるので、より幅広い設計要求に応えることができ、また、拘束条件の設定も容易となる。
【発明を実施するための最良の形態】
【００４５】
以下、本発明の一実施形態について、図１及び従来法で用いた数式を参照して説明する。【００４６】
図１は、本発明の一実施形態に係る回路設計支援方法の処理手順を示すフローチャートである。この回路設計支援方法では、回路構成を決定するステップ１１と、条件式（数７）を設定するステップ１２と、ステップ１１で決定した回路構成を回路設計支援装置（以下、回路シミュレータという。）に入力して後述の様に波形を導出すると共に、回路シミュレータに入力された条件式を解くことによって回路素子値（設計値）を導出するステップ１３とからなる。このステップ１３では、同時に数１を解いているため、条件を満足したときの波形式、即ち、アナログ電子回路の定常状態も導出される。【００４７】
次に、本実施形態に係る回路素子値設計支援方法を従来の方法と比較して説明する。【００４８】
本実施形態では、従来の数１の微分方程式を陽の形で設定することはしない。つまり、変数ｘに関する或る確定系（微分方程式で書ける系）において、−∞＜ｔ＜∞で、任意の初期値ｘ０∈Ｒｎおよびあらゆるシステムパラメータλ∈Ｒｍ：ｘ（０）＝φ（０，ｘ０，λ）＝ｘ０に対し、ｘ（ｔ）＝φ（ｔ，ｘ０，λ）という解（出力波形）を観察できるとし、このとき、ｘ（ｔ）は、時間領域において周期ｔＴの周期性を持つと仮定する。【００４９】
この仮定の下でも、従来と同様の考察を辿ることにより、電子回路の設計は上述した数５，数６の解法に帰着し、これらを書き直して数７が得られ、また、数８が定義される。このとき、本実施形態では、数６は時間ｔＣ１〜ｔＣｎの関数である必要はなく、ｘ０とλの関数となる。従って、従来は回路方程式から導出される時間応答φの或る時間ｔＣにおける条件しかアナログ電子回路の拘束条件に入れることができなかったのに対し、本実施形態では、回路シミュレータ上で観測される波形およびそこから算出される観測値の最大値，最小値，平均値などの統計的データを拘束条件として用いることが可能となる。例えば、回路方程式から導出される時間応答φの統計量、φのフーリエ領域など時間領域以外での観測値やその統計量を拘束条件とすることができる。【００５０】
数７の解法として、本実施形態でも、ニュートン法を採用し、繰り返し計算式である数９を終了条件が満足されるまで行う。このとき、ヤコビ行列（数１０）を用いることも従来と同様であり、ｕｋ＋１が数７の解となる。【００５１】
ここで、本実施形態では、数９を計算するためのＴ（ｕｋ）を、観測されるｘ（ｔ）＝φ（ｔ，ｘ０，λ）から導出する。一方、数１０のヤコビ行列Ｆ’（ｕｋ）の要素は、従来方法と異なり、本実施形態では回路方程式（数１）を陽の形で記述していないため、数１１の変分方程式を用いて解くことができない。【００５２】
そこで、本実施形態では、変分方程式の代わりに、ヤコビ行列の要素である偏微分を、定義に基づいた近似式で置き換える。即ち、【００５３】
【数１２】
0004571589.tif 000013
【００５４】
と定義したとき、ヤコビ行列の要素となる偏微分値（偏導関数の値）を、次の数１３の近似式
【００５５】
【数１３】
0004571589.tif 000014
【００５６】
を用いることで代用する。ここで、εは微小係数である。ｇ（ｕεｉ）はｇ（ｕ）を導出するものと同じ確定系（回路構成）上でそのパラメータをｕからｕεｉに置き換えることによって導出することができる。【００５７】
以上の計算により、未知係数ｕを求めることができ、その結果、設計値であるλｕが決定し、電子回路の設計が可能となる。【００５８】
以上述べた本実施形態によれば、出力波形のみから偏微分を導出するため、変分方程式が不要であり、また、回路方程式を陽の形でなく陰の形で持つため、手作業による回路設計工程が不要となり、全て計算機と対話的に回路設計作業を進めることが可能となる。【００５９】
更に、回路素子の種類が設計変更された場合でも、即ち、確定系が変化した場合でも、偏微分値を近似値で代用しているのでその都度所望の周期軌道を得るためのパラメータを導出でき、容易に対処可能となる。更にまた、本実施形態は、従来の図２の構成と比較して、回路方程式の構築（ステップ２）と変分方程式の導出（ステップ３）とを削除し、代わりに、偏微分値を近似式で代用する構成のため、シミュレータの内部を大幅に変更する必要が無い。よって、本実施形態の回路シミュレータは、「ＳＰＩＣＥ」など他の既存シミュレータの資産を有効に活用可能である。
【産業上の利用可能性】
【００６０】
本発明は、電子回路を設計するとき回路方程式を計算機に与えることなく回路素子値を計算機が計算可能なため、完全自動で電子回路の設計が可能となる回路設計支援装置を構築することができ、アナログ電子回路やアナログデジタル混在回路、とくにスイッチング回路の設計に有用である。
【図面の簡単な説明】
【００６１】
【図１】本発明の一実施形態に係る回路設計支援方法の処理手順を示すフローチャートである。
【図２】従来の回路設計支援方法の処理手順を示すフローチャートである。
【符号の説明】
【００６２】
１１  回路構成の決定ステップ
１２  制約条件の設定ステップ
１３  設計値，波形の導出ステップ
【図１】
0004571589.tif 000015
【図２】
0004571589.tif 000016