(57)【要約】【課題】アナログ回路に熟練していない者でも回路のバラツキ要因を考慮した最適な回路定数設計を行うことの出来る回路の設計方法および回路設計支援システムを提供することにある。【解決手段】回路構成と、回路の設計指標となる１又は複数の回路特性の目標仕様と、上記回路特性をばらつかせる１又は複数のバラツキ要因の各とりえる値として各バラツキ要因に複数ずつ設定されるバラツキ値とを指定して、回路の各部を特定する回路定数を導き出す回路の設計方法であって、１個の回路特性ごとに当該回路特性が最も悪くなると推定される上記バラツキ値の組合せを選択する第１ステップ（Ｓ２〜Ｓ７）と、この第１ステップで求められた回路特性ごとのバラツキ値の組合せをそれぞれ条件として各回路特性が上記目標仕様を満たすように上記回路定数を求める第２ステップ（Ｓ９〜Ｓ１４）とを有する。【選択図】　　　　図３
2004145410.tif 000002
【特許請求の範囲】
【請求項１】
回路構成と、回路の設計指標となる１又は複数の回路特性の目標仕様と、上記回路特性をばらつかせる１又は複数の要因のそれぞれがとりえる値として各要因に複数個ずつ対応づけられるバラツキ値とを指定して、回路の各部の特性を特定する回路定数を導き出す回路の設計方法であって、
各回路特性ごとに当該回路特性が最も悪くなると推定される上記バラツキ値の組合せを選択する第１ステップと、
この第１ステップで求められた各回路特性ごとのバラツキ値の組合せをそれぞれ条件として各回路特性が上記目標仕様を満たすように上記回路定数を求める第２ステップとを有することを特徴とする回路の設計方法。
【請求項２】
上記第２ステップは、
各回路定数がとりえる値として各回路定数ごとに複数設定された設定値の中から各回路定数の値の組合せを複数の組合せパターンが示された直交表に従って複数組選択する条件選択ステップと、
各回路特性ごとに当該回路特性に対応する上記バラツキ値の組合せと上記条件選択ステップで選択された回路定数の値の各組合せとを条件にそれぞれ回路シミュレーションを行い各組合せ条件ごとの当該回路特性の値を求めるシミュレーション工程と、
上記シミュレーション工程で求められた各組合せ条件ごとの回路特性値と上記直交表とに基づき各回路定数の値の変化が各回路特性に及ぼすと推定される要因効果を算出する第１算出ステップと、
この第１算出ステップで求められた各回路特性ごとの要因効果に基づき各回路定数に設定された上記設定値の全ての組合せについて各回路特性の推定値をそれぞれ算出する第２算出ステップと、
上記第２算出ステップで算出された全ての組合せについての各回路特性の推定値に基づき、当該回路特性の全てが上記目標仕様を満たす回路定数の組合せを抽出する回路定数抽出ステップとから構成されることを特徴とする請求項１記載の回路の設計方法。
【請求項３】
上記第２算出ステップで算出された各組合せごとの各回路特性の推定値を、目標仕様に対する各回路特性の余裕度を評価するための評価関数に当てはめて評価し、当該評価の結果に基づいて回路特性が所定の余裕度に近い回路定数の組合せを求める最適化ステップを有することを特徴とする請求項２記載の回路の設計方法。
【請求項４】
上記第１ステップは、
上記バラツキ値の組合せを複数の組合せパターンが示された直交表に従って複数組選択する条件選択ステップと、
該条件選択ステップで選択された複数組のバラツキ値の組合せを条件にそれぞれ回路シミュレーションを行って各組合せごとに対象の回路特性を求めるシミュレーション工程と、
このシミュレーション工程で求められた回路特性と上記直交表とに基づいて上記各要因のそれぞれが対象の回路特性に及ぼすと推定される要因効果を算出する算出ステップと、
この算出ステップで求められた要因効果に基づき対象の回路特性を悪くする各要因のバラツキ値を選択するワースト条件選択ステップとから構成され、
このワースト条件選択ステップで選択された上記各要因のバラツキ値を回路特性が最も悪くなると推定されるバラツキ値の組合せとすることを特徴とする請求項１〜３の何れかに記載の回路の設計方法。
【請求項５】
電子計算機と該電子計算機を所定の手順に従って動作させて回路設計の支援を行うプログラムを格納した記憶手段とを含む回路設計支援システムであって、
請求項１〜４の何れかに記載の回路の設計方法により、指定された回路構成と、回路の設計指標となる１又は複数の回路特性の各目標仕様と、上記回路特性をばらつかせる１又は複数の要因のそれぞれがとりえる値として各要因に複数個ずつ対応づけられたバラツキ値とに基づき、回路の各部の特性を特定する回路定数を導き出すように構成されていることを特徴とする回路設計支援システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、回路を構成する素子の定数などを求める回路設計方法ならびに電子計算機を用いて回路の定数を求める回路設計支援システムに関し、特にアナログ回路の設計に利用して有用な技術に関する。
【０００２】
【従来の技術】
回路設計とくにアナログ回路の設計においては、構成素子の種類とその結線関係（回路トポロジーと云う）が決まった段階で回路特性が目標仕様を満たすようにトランジスタサイズ、抵抗値、容量値などの回路を構成する素子の定数（本明細書では配線のパラメータ等も含めて回路定数と称する）を求める定数設定が行われる。
【０００３】
現在、アナログ回路の定数設定は人手による設計が主流であり、熟練された技術が必要とされる。というのも、各回路定数がそれぞれの回路特性に及ぼす影響を把握していなければならないからである。さらに、回路の特性間にはしばしば強いトレードオフがあり、全ての特性が目標仕様を満たす条件を見つけ出すには経験や勘による試行錯誤のシミュレーションが必要であり、長い工数を要する。さらに設計に費やせる時間には限りがあるため、最初に得られた妥当な解で設計を打ち切ることが多く、真に最適な解となっている保証はない。近年、デバイスの微細化、回路の高性能化、高速化、低電圧化が進み、求められる設計仕様を満たすことが難しくなってきており、定数設計はますます困難性を高めている。
【０００４】
また、現状では製造ばらつきを正確に把握した設計が行われていないのが実情である。そのため、回路特性を最も劣化させる条件（以下、ワースト条件と呼ぶ）をおさえた回路定数の最適化が行われておらず、回路特性のマージン不足によって量産時に安定した歩留が得られない、或いは、回路特性のマージンを大きくするために回路性能が犠牲になったり、高い回路性能で且つマージンも大きくしようとして設計期間に著しい増大を引き起こすと云った課題が生じる。
【０００５】
このような状況の中で、従来、回路設計期間の短縮や安定した歩留の確保を図るためにアナログ回路の設計を支援するシステムについて幾つかの提案がなされている（例えば特許文献１，２）。また、アナログ回路の定数設計を支援する回路定数最適化ツールも幾つか実用化されている。
【０００６】
【特許文献１】
特開２０００−２９３５５６号公報
【特許文献２】
特開平２００１−３４６４２号公報
【０００７】
【発明が解決しようとする課題】
しかしながら、上記特許文献１，２に示される回路パラメータ設計方法には次のような問題点がある。すなわち、これらの設計方法は、動作温度や電源電圧の変動および素子の製造ばらつき等の各要因が回路特性に与える変化量を最少にするように回路定数を最適化することに重点をおいており、往々にして回路特性のばらつきを小さくするのと回路性能とはトレードオフの関係があるため、ばらつきを小さくすると回路性能は劣化するという事態を招きかねない。また、回路特性の目標仕様は目標値以上或いは目標値以下と云うような場合が多く、回路特性のばらつきを抑えることはさほど重要でないため、これらの設計方法では真に最適な解が得られるとは云えない。また、回路特性値の変動量を小さくすることに重点をおいた場合でも、各回路定数が取りえる値の全ての組合せについて最適化の検証を行っていないため、本当の最適点を見逃す可能性があるという課題もある。
【０００８】
また、現在実用化されているアナログ回路の定数設計の支援ツールは、最初に回路定数の振り幅と回路特性の目標仕様とを入力することで、その後に自動的にシミュレーション等を行って回路定数を導き出すように構成されており、動作温度や電源電圧の変動および製造ばらつき等の要因に対しては余り考慮がなされていない。すなわち、ワースト条件で回路定数を求めたい場合には、設計者がワースト条件となる変動要因の値を求めて支援ツールに与えなければならないが、この場合、設計者がワースト条件を求めることにはかなりの困難が伴う。
【０００９】
また、各バラツキ要因の値も複数ずつ指定して、各バラツキ要因の値の組合せと回路定数の組合せとを乗積した全ての組合せについてシミュレーションを行うことで、ワースト条件において設計仕様を満たすような回路定数を導き出すことも考えられるが、それではシミュレーション回数が膨大になってしまう。
【００１０】
また、特にアナログ回路の場合、設計仕様に基づく目標値は項目によってはそれほど厳密に決めなくても良い場合が多く、仮の目標仕様を満たす回路定数が存在しないときなどに目標仕様を部分的に緩和して定数設計を続けると云うことが良くあるが、上記の支援ツールでは、最初に目標仕様を入力してシミュレーションを行うため、目標仕様を緩和する場合には、また最初から処理をやり直さなければならないという欠点がある。回路によってはシミュレーションに膨大な時間がかかるものが多く、このような回路では目標仕様の途中変更により回路の定数設計の期間が大幅に増大するという問題が生じる。
【００１１】
この発明の目的は、アナログ回路に熟練していない者でも回路のバラツキ要因を考慮した最適な回路定数設計を行うことの出来る回路の設計方法および回路設計支援システムを提供することにある。
【００１２】
この発明の前記ならびにそのほかの目的と新規な特徴については、本明細書の記述および添附図面から明らかになるであろう。
【００１３】
【課題を解決するための手段】
本願において開示される発明のうち代表的なものの概要を説明すれば、下記のとおりである。
【００１４】
すなわち、回路構成と、回路の設計指標となる１又は複数の回路特性の目標仕様と、上記回路特性をばらつかせる１又は複数の要因のそれぞれがとりえる値として各要因に複数個ずつ対応づけられたバラツキ値とを指定して、回路の各部を特定する回路定数を導き出す回路の設計方法であって、各回路特性ごとに当該回路特性が最も悪くなると推定される上記バラツキ値の組合せを選択する第１ステップと、この第１ステップで求められた回路特性ごとのバラツキ値の組合せをそれぞれ条件として各回路特性が上記目標仕様を満たすように上記回路定数を求める第２ステップとを有するものである。
【００１５】
このような手段によれば、特性バラツキの各要因が回路特性を最も悪くするワースト条件で目標仕様を満たすような回路定数を容易に求めることが出来る。さらに、ワースト条件を定めてからその条件で回路定数を導き出すため、回路シミュレーションの回数を少なくでき、設計期間の短縮を図ることが出来る。
【００１６】
【発明の実施の形態】
以下、本発明の好適な実施例を図面に基づいて説明する。
【００１７】
図１は、本発明の実施例の回路設計支援システムに入出力されるデータの説明図、図２は回路設計支援システムに組み込まれた機能モジュールの構成を示す機能ブロック図である。
【００１８】
この実施例の回路設計支援システム１００は、ワークステーションなどの電子計算機内もしくは計算機と結合された記憶手段に本発明に係る回路設計方法を用いて回路定数を算出するソフトウェア（プログラム）を組み込んで構成されている。この回路設計支援システム１００は、図１に示すように、設計回路の回路情報（回路トポロジー）１０と、特性バラツキの要因（以下、バラツキ要因と称す）の１つであるトランジスタサイズや酸化膜厚など製造バラツキ情報（各項目とそのバラツキ幅など）１１と、バラツキ要因の１つである動作温度や電源電圧などの外部規格情報（各項目とその規格幅など）１２と、これから求める回路定数の振り幅の情報１３と、回路特性の目標仕様の情報（各項目とその仕様値など）１４とを設計者が入力することで、これらの情報に基づき演算処理および回路シミュレーションとを行って、要求された条件を満たす回路定数１５を求め、それを出力するものである。
【００１９】
この回路設計支援システム１００に組み込まれるソフトウェアには、図２に示すように、効率的なシミュレーション条件を引き出すために使用される直交表を生成する直交表生成部１１０と、各シミュレーションで使用する各回路定数や各バラツキ要因の値をまとめるシミュレーション用入力データ生成部１１１と、シミュレーションを実行して指定の特性値を得るシミュレーション実行・結果読み込み部１１２と、シミュレーション結果から各バラツキ要因や各回路定数が回路特性に与える要因効果を計算する要因効果計算部１１３と、要因効果をグラフにして表示出力する要因効果図表示部１１４と、バラツキ要因の要因効果から特性を最も劣化させるワースト条件を決定する条件決定部１１５と、回路定数の要因効果から回路定数の全組合せの特性値を推定的に算出する推定計算部１１６と、評価関数を用いて特性値の評価値の高い回路定数の組合せを抽出する評価関数計算部１１７と、求めた回路定数を用いて確認的なシミュレーションを行う確認シミュレーション実行部１１８と、目標仕様を満たす回路定数の組合せが見つからない場合に回路定数の初期値や振り幅を変更する回路定数更新部１１９等の各機能モジュールが備わっており、図２の矢印に示されるように各機能モジュール間でデータをやり取りして定数設計処理を進めていくようになっている。
【００２０】
以下、これらの各機能についてフローチャートに基づき詳細に説明する。
【００２１】
図３には、上記の回路設計支援システム１００において実行される定数設計処理のフローチャートを示す。
【００２２】
定数設計処理が開始されると、先ず、設計者はネットリストなどの回路情報と共に求めようとしている回路定数の初期値を設定する（ステップＳ１）。この初期値は、例えば設計者が机上検討で得たものなど、回路特性が目標仕様を満たす値である必要はなく、それぞれ現実的な値から大きくかけ離れることのない凡その値で良い。
【００２３】
図４には、次のステップＳ２〜Ｓ３の処理によりシステム１００内に生成されるデータテーブルの図を示す。
【００２４】
次に、設計者は製造バラツキの項目とそのバラツキ幅の設定（ステップＳ２）、外部規格とその規格幅の設定（ステップＳ３）とを行う。ここでは、図４（ａ）に示すように、例えば、製造バラツキの項目としてＭＯＳトランジスタのゲート長と酸化膜厚のばらつき（Ｎチャネル形とＰチャネル形の各々について）、外部規格の項目として電源電圧と動作温度などが設定され、それらに対応して各バラツキ要因がとりえる複数のバラツキ値が設定されている。
【００２５】
各バラツキ要因に設定できる値の数（水準と呼ぶ）は２水準であり、バラツキ要因ごとに水準▲１▼と水準▲２▼の値がそれぞれ設定される。図４（ａ）では表中に水準値“１”と“２”が記入されているが、実際には各バラツキ要因の物理的な数値が設定されている。特に制限されないが、例えば、水準▲１▼にはバラツキ要因の最小値、水準▲２▼にはバラツキ要因の最大値が設定される。
【００２６】
なお、この水準数は３個や４個などにも変更可能である。水準数が増えれば、後に算出される要因効果の精度が高くなるが、必要なシミュレーション数が増えるので、両者を考慮して決めなければならない。３水準とした場合には、例えば、水準▲１▼と水準▲３▼には最小値と最大値を、水準▲２▼にはその中間値を設定するなどすれば良い。
【００２７】
バラツキ要因の設定が済んだら、次いで、システム１００内部で入力されたバラツキ要因の項目数やバラツキ要因の水準数に対応する直交表が決定され、この直交表に従って複数組のシミュレーション用のデータが生成される（ステップＳ４）。
【００２８】
図４（ａ）のバラツキ要因の場合、バラツキ要因の項目数が６個で水準数が２個であるので、生成される直交表は図４（ｂ）のＬ８直交表（８行の直交表）となる。直交表の詳細については後に要因効果と共に説明する。
【００２９】
直交表の各行のエントリ値は各バラツキ要因の水準値を示しており、各行の値により示される各バラツキ要因のバラツキ値の組合せとステップＳ１で入力された回路定数の初期値とが、回路シミュレーションの条件値となる。すなわち、Ｌ８直交表の場合、８つの組合せでバラツキ要因の条件が決定され、８組のシミュレーション用のデータが生成されることになる。
【００３０】
直交表からシミュレーション用のデータが決定されたら、次に、この８組のシミュレーション用データをそれぞれ用いて８通りの回路シミュレーションを順次行う。ここでのシミュレーションはバラツキ要因のワースト条件を割り出すためのシミュレーションである。そして、シミュレーション結果として目標仕様の設定される回路特性の値を８通りのシミュレーションについてそれぞれ読み込む（ステップＳ５）。図４の場合、２種類の特性（特性▲１▼：例えば直流利得，特性▲２▼：例えば周波数帯域）の値がシミュレーションにより求められ、それぞれ図４（ｃ）の表に入力されていく。
【００３１】
次いで、このシミュレーション結果から回路特性ごとに各バラツキ要因の要因効果を演算により求め、それをグラフ化した要因効果図をディスプレイ上に表示する（ステップＳ６）。
【００３２】
図５（ａ）には特性▲１▼に対する各バラツキ要因の要因効果のグラフを、図５（ｂ）には特性▲２▼に対する各バラツキ要因の要因効果のグラフを、それぞれ示す。
【００３３】
ここで、上述の直交表と要因効果について具体例を参照しながら説明する。直交表や要因効果とは、品質工学の分野で確立されているタグチメソッドと呼ばれる手法において用いられているものである。
【００３４】
直交表は、次のＡ，Ｂの特徴を有するものである（図４（ｂ）参照）。
Ａ．各列に各水準の値が同数ずつエントリされている。
Ｂ．任意の列においてエントリ値が同値となる行（例えば１列目の１〜４行）に注目したとき、他の全ての列では各水準の値が同数ずつエントリされている（例えば２列目では１〜４行に水準▲１▼と水準▲２▼が同数ずつエントリされ、他の列も同様）。
【００３５】
要因効果は、個々の要因が対象となる値に与える影響を、各要因の相互作用を無視できるものと見なして定量的に表わしたものである。すなわち、ステップＳ６で求められる要因効果は、個々のバラツキ要因の値が１つの回路特性に与える影響を、各バラツキ要因の相互作用が無視できるものと見なして定量的に表わしたものであり、具体的には次のようにして求められる。
【００３６】
すなわち、特性▲１▼に対するゲート長バラツキ（Ｎチャネル形）の要因効果は、例えばこのゲート長バラツキが水準▲１▼となる４つの組合せにおける特性▲１▼の平均値と、ゲート長バラツキが水準▲２▼となる４つの組合せにおける特性▲１▼の平均値との２つの値から表わされる。１つのバラツキ要因が水準▲１▼となる４つの組合せでは、他のバラツキ要因は水準▲１▼と水準▲２▼とが同数ずつエントリされているため（直交表の特徴Ｂ）、この組合せにおける特性▲１▼の平均値には、１つのバラツキ要因においてのみ水準▲１▼の効果が現われ、他のバラツキ要因においては水準▲１▼と水準▲２▼の効果が分散して、その効果が除外された特性値が表わされることになる。つまり、これらにより、特性▲１▼に対する１つのバラツキ要因の水準▲１▼の要因効果と水準▲２▼の要因効果とを表わすことが出来る。
【００３７】
そして、上記のように各バラツキ要因に対して水準▲１▼の平均値と水準▲２▼の平均値とを求めたものが、各バラツキ要因の要因効果となる。これらをグラフ化したものが図５の要因効果図である。
【００３８】
次に、回路特性ごとに各バラツキ要因の要因効果が算出されたら、この要因効果から各回路特性ごとに特性を最も悪くするバラツキ要因の組合せ（ワースト条件）を推定する。次表１に示されるように、例えば回路特性▲１▼が低いほど特性が悪くなるものとすれば、図５（ａ）の丸印に示されるように、各バラツキ要因について要因効果が低くなる方の水準値を選択した組合せ“１，１，２，１，２，１”が回路特性▲１▼に対するワースト条件と推定される。逆に、回路特性▲２▼が高いほど特性が悪くなるものとすれば、図５（ｂ）の丸印に示されるように、各バラツキ要因について要因効果が高くなる方の水準値を選択した組合せ“２，２，１，２，２，１”が回路特性▲２▼に対するワースト条件と推定される。
【００３９】
【表１】
2004145410.tif 000003
【００４０】
図６には、回路定数の最適値を求めるのに使用されるデータテーブルを示す。
【００４１】
ワースト条件が推定されたら、次に、設計者は回路設計支援システム１００に対して最適化する回路定数の項目とその値の設定を行う（ステップＳ８）。ここでは、説明を簡単にするため、図６（ａ）に示すように、最適化する回路定数の項目は定数▲１▼〜定数▲４▼の４個とし、各回路定数に設定できる値は３水準としている。回路定数の項目は、例えば、回路を構成する各ＭＯＳトランジスタのゲート幅やゲート長、抵抗素子の各抵抗値ならびに容量素子の各容量値などであり、一般的なアナログ回路では２０個〜３０個くらいの項目数になる場合もある。各水準に設定する値は、水準▲１▼〜水準▲３▼の順に値が段々大きくなる或いは段々小さくなるように設定する。なお、図６（ａ），（ｂ）の表中には、水準値“１”，“２”，“３”と記入されているが、各回路定数の各水準値として設定された値を意味している。
【００４２】
その後の最適化の処理において、ここで設定された値の何れかで回路定数が最適化されることになるので、回路定数の設定値は回路特性が目標仕様を満たすような範囲と重なるように幾分考慮して設定する。各回路定数に設定する水準数は２水準や４水準など他にも選択できるが、水準数が少ないと最適化で検討される値が少なくなり細かな最適化が出来なくなるし、多いとシミュレーション回数が増大するので、両者を考慮して選択しなければならない。
【００４３】
回路定数の設定が済んだら、回路設計支援システム１００内で、最適化する回路定数の個数と水準数に応じた直交表（図６（ｂ）参照）が生成され、それに基づきシミュレーション用の回路定数のデータが決定される（ステップＳ９）。また、シミュレーションを行うときにはバラツキ要因の値も一義に決まっている必要があるが、その値にはステップＳ７で各回路特性ごとに求められたバラツキ要因のワースト条件が使用される。すなわち、特性▲１▼を求めるシミュレーションには特性▲１▼についてのワースト条件、特性▲２▼を求めるシミュレーションには特性▲２▼についてのワースト条件がそれぞれ使用される。
【００４４】
シミュレーション用のデータが決まったら、各データ毎に回路シミュレーションを行って、対象となる回路特性の値を求める（ステップＳ１０）。図６（ｃ）はその結果を示したもので、各行に図６（ｂ）の各行の条件でシミュレーションを行った結果の特性値が示されている。
【００４５】
シミュレーション結果が読み込まれたら、これに基づき各回路定数についての要因効果を算出する（ステップＳ１１）。この計算方法はステップＳ６の要因効果の算出方法と同様である。図７には、１つの特性について算出された各回路定数の要因効果図を示す。
【００４６】
次に、設計者は回路設計支援システム１００に対して回路特性の目標仕様の設定を行う（ステップＳ１２）。アナログ回路の場合、目標仕様は項目によっては厳密に決めなくても良いことがあるが、本システム１００では、その後の演算で目標仕様を満たす回路定数が存在しない場合などに目標仕様を部分的に緩和することが容易に行えるので、ここで設計者は理想的な仕様を設定すればよい。
【００４７】
回路特性の目標仕様が設定されたら、次いで、図６（ａ）のように設定された回路定数の値の全組合せにおける回路特性をそれぞれ推定的に求める（ステップＳ１３）。ここでは、ステップＳ１１で算出した要因効果を用いて、次のような方法で各組合せの回路特性を求める。すなわち、定数▲１▼〜定数▲４▼が水準値　“１，１，３，１”の組合せのときの回路特性▲１▼の推定値は、図７に示される要因効果から次式（１）のように求められる。
推定値＝ａ（１）＋ｂ（１）＋ｃ（３）＋ｄ（１）＋ｍ　　　・・・　（１）
ここで、ｍは回路定数の全組合せにおける特性値の平均値、ａ（ｉ）〜ｄ（ｉ）は図７に示すように回路定数▲１▼〜回路定数▲４▼が水準値ｉのときの要因効果の値を平均値ｍからの差異で表わしたものである。
【００４８】
そして、上記のような演算処理を回路定数の全組合せについて行い、それぞれについて各特性値を算出する。この実施例の場合、回路定数は４個で水準は３個なので８１（＝３４）通りの回路定数の組合せについて特性▲１▼と特性▲２▼の推定値がそれぞれ演算される。
【００４９】
次に、上記算出された特性▲１▼と特性▲２▼の推定値の中から、ステップＳ１２で設定した目標仕様を共に満たす回路定数の組合せを抽出する（ステップＳ１４）。そして、目標仕様を共に満たす回路定数の組合せの有無を判別して（ステップＳ１５）、有ればステップＳ１８に、無ければステップＳ１６へと移行する。
【００５０】
その結果、目標仕様を満たす組合せがあってステップＳ１８に移行した場合には、この目標仕様を満たす組合せの中から、さらに、全ての目標仕様が均等に余裕を持つ状態（デザインセンタリングと呼ぶ）の組合せを後述の評価関数を用いて抽出する（ステップＳ１８）。
【００５１】
図８には、デザインセンタリングの説明図を示す。なお、この実施例においては目標仕様が設定される回路特性は２つだが、図８では分りやすいように回路特性が６つの場合を示している。この図８（ｂ）に示されるように、上記デザインセンタリングとは目標仕様に対する各回路特性の余裕度がともに同じ値を示す分布になっていることを意味している。
【００５２】
図９には評価関数の各回路特性に対する評価値Ｙｉの一例のグラフを示す。
【００５３】
デザインセンタリングを評価する評価関数としては次式（２）の関数Ｆ１を採用することが出来る。
Ｆ１＝Σ（Ｙｉ／ｎ）　　　・・・　（２）
ここで、Ｙｉ＝｜境界値／（特性値−境界値）｜
ｉは各回路特性を特定するインデックス
ｎは全回路特性数
Σは全回路特性についての総和
このような評価関数Ｆ１によれば、各特性値が境界値に近ければ（すなわち目標仕様ぎりぎりであれば）大きい値が、境界値より離れていれば（すなわち目標仕様を余裕で満たしていれば）小さい値が示されるので、評価関数がもっとも小さい値が最もデザインセンタリングされた組合せとして評価することが出来る。
【００５４】
なお、評価関数は上記式のものに限られず、目標仕様を余裕で満たすときと目標仕様の境界値に近いときとで異なる値を示す関数であれば、種々の関数を採用することが出来る。また、ある特性値については仕様ぎりぎりで良いとか、ある特性値については仕様を大幅に満たしたい等の要求が有る場合には、各回路特性についての評価値Ｙｉに重付け係数を積算して総和を取るなどして対応することも出来る。
【００５５】
図１０は回路定数の各組合せを評価関数を用いて評価した結果の一例を示す図である。同図のデータチャートは、ステップＳ１４で抽出した目標仕様を満たす各組合せの特性▲１▼と特性▲２▼を評価関数に代入して評価値（関数値）を演算し、その評価値の順にデータをソートしたものである。その結果、評価値の最も小さい組合せ　“２，３，２，１（水準値）”が最もデザインセンタリングされたものと評価できる。
【００５６】
デザインセンタリングされた回路定数の組合せが抽出されたら、このときの回路特性は要因効果に基づく推定値であるため、確認の意味でこの回路定数を用いてシミュレーションを行い（ステップＳ１９）、その結果、ほぼ評価通りの結果が得られれば、その回路定数を設計値として、この定数設計処理を終了する。
【００５７】
一方、ステップＳ１５の判別処理で、目標仕様を満たした回路定数の組合せが無くステップＳ１６に移行された場合には、別の評価関数を用いて、要求仕様に最も近い回路定数の組合せを抽出する（ステップＳ１６）。
【００５８】
ここで使用する評価関数は、例えば、各回路特性についての評価値Ｙ２ｉを次式（３）のような関数として、ステップＳ１８と同様の処理を行うことで所望の組合せを抽出することが可能となる。
Ｙ２ｉ＝Ｅｘｐ［（境界値−特性値）／境界値］　　・・・　（３）
この関数は、目標仕様から外れるほど値が大きく、目標仕様を満たす方へいくほど値が小さくなるとともに、値が急激に大きくなり始める座標点が目標仕様の境界値より仕様外の方へ少し外れた位置に設定されたものである。同様の曲線を有していれば他の関数を用いることも可能である。
【００５９】
次に、この抽出された回路定数の組合せに基づいて図６（ａ）の回路定数の設定値を更新する処理を行う（ステップＳ１７）。更新は次の予想に基づき目標仕様を満たすように行われる。例えば、ステップＳ１６で選択された最も目標仕様に近い組合せで水準▲１▼（最も小さい値）となっている回路定数については、より小さい値にすれば目標仕様に近づくことが予想されるので、水準▲１▼〜水準▲３▼に前の水準▲１▼より小さい値を設定したり、或いは、前の水準▲１▼の設定値を水準▲３▼（最も大きい値）とし、水準▲１▼や水準▲２▼により小さい値を設定する。また、目標仕様に最も近い組合せで水準▲３▼となっている回路定数については上記の逆の設定を行う。
【００６０】
なお、このような設定の更新は、ステップＳ１６で抽出された組合せを参照しながら設計者が行うようにしても良いし、回路設計支援システム１００が自動的に行うようにすることも出来る。
【００６１】
そして、回路定数の設定の更新をしたら再びステップＳ９〜ステップＳ１４の処理を繰り返して目標仕様を満たす回路定数を見つけ出す。
【００６２】
また、ステップＳ１５の判別処理で、目標仕様を満たす回路定数の組合せが無いと判別された際、目標仕様が厳密に満たされなくても良い回路特性の項目がある場合には、その目標仕様を緩和してステップＳ１３以後の処理を繰り返し行うことで、目標仕様を満たす回路定数の組合せを見つけるようにすることも出来る。この場合、回路シミュレーションを再度行う必要がないので、短時間のうちに処理を完了することが出来る。
【００６３】
以上のように、この実施の形態の回路設計支援システム１００によれば、その定数設計処理により、バラツキ要因がワースト条件の場合に目標仕様を満たすような回路定数を、熟練した技術を用いずに容易に見つけ出すことが出来る。さらに、ワースト条件を定めてからその条件で回路定数を導き出す構成になっているため、回路シミュレーションの回数を少なくでき、設計期間の短縮を図ることが出来る。
【００６４】
さらに、設定された回路定数の全組合せについて回路特性を求め、全組合せを網羅して最適化を行っているので、真に最適化された解を得ることが出来る。また、最適化の際には各回路特性が所定の条件で目標仕様を満たすように（例えば各回路特性が均等に余裕度を有するように）評価しているので、回路の質の向上が図れる。
【００６５】
また、ばらつき要因の要因効果や各回路定数の要因効果をグラフ化して表示出力することで、設計者は各ばらつき要因や回路定数が特性値に与える効果を定量的に且つ直感的に把握することが出来るので、例えば、目標仕様を満たす回路定数が存在しえないような設計回路を対象としていた場合に、回路構成の変更の必要性が早期に判断でき、それによる回路設計期間の短縮も図ることが出来る。
【００６６】
［第１応用例］
図１１は、特性値の推定算出処理の第１の応用例を説明する図である。
【００６７】
上記実施例の回路設計処理においては、各回路定数について予め複数水準の値を設定しておく必要があるが、様々な要因により回路定数の値が一様に決められてしまったり小さな範囲内の値に制限されてしまう場合がある。そのような場合に、図３のステップＳ１３で各回路特性の推定演算を行う場合に、その推定演算の範囲を、全回路定数の全水準の組合せとせずに、設計者が指定した範囲のみに制限できるように構成しても良い。
【００６８】
すなわち、図１１に示すように、定数▲１▼が水準▲１▼、定数▲２▼が水準▲１▼か▲２▼と制限されている場合には、図中に示される計算ポイントのみで回路特性の推定演算を行うようにしても良い。そして、その結果に基づきその後の処理を行うようにすることで、設計者が指定した回路定数の組合せの中で最適な解を得ることが出来る。
【００６９】
［第２応用例］
図１２は、特性値の推定算出処理の第２の応用例を説明する図である。
【００７０】
実施例の回路設計処理においては、各回路定数に設定可能な値を増やせば必要なシミュレーション回数が増大するため、水準数はあまり増やすことは出来ない。一方、水準数が少ないと、各水準間の評価がなされないため、評価や最適化の処理は粗い内容となってしまう。
【００７１】
これらの両欠点を解消するために、各回路定数の要因効果に基づき、回路定数が各水準値間の分割点（例えば、図７のｂ１，ｂ２，ｃ１，ｃ２）にある場合の回路特性を推定し、それを評価対象に含めるように構成することも出来る。
【００７２】
この場合の回路特性は、例えば定数▲２▼が分割点ｂ１，ｂ２にある場合であれば、要因効果図のそれらの点が示す特性値の値を用いて、各特性値の推定演算（ステップＳ１３の演算処理と同様の演算）を行うことで求めることが出来る。
【００７３】
図１２の例は、定数▲１▼について水準▲２▼と▲３▼の範囲を３分割に、定数▲２▼について水準▲１▼と▲２▼の範囲を３分割に、定数▲３▼については水準▲３▼に制限した場合の計算ポイントを示したものである。このような計算ポイントで、回路特性の推定演算を行い、その結果に基づきその後の処理を行うようにすることで、設計者が指定した回路定数の細かな組合せの中での最適な解を得ることが出来る。
【００７４】
ここで、評価対象に含める各水準値間の分割点は、設計者が任意に選択できるようにしても良いし、また例えば、評価関数を用いて回路定数の最適化された組合せを抽出した後に、評価値の最も優れる３つの組み合わせを抽出し、その組合せの範囲に各水準値間を分割した分割点を設定し、分割点での特性値を再演算してそれを含めた再評価を行って、より最適な回路定数を見つけ出すようにすることも出来る。
【００７５】
以上本発明者によってなされた発明を実施例に基づき具体的に説明したが、本発明は上記実施例に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【００７６】
例えば、製造バラツキの一例として実施例ではトランジスタサイズや酸化膜厚のバラツキを例示したが、その他、一対のトランジスタの対称性が問題となるような回路の場合に、それらトランジスタの対称性のばらつきを１つのばらつき要因として扱うことも出来るなど、種々の項目を含めることができる。また、回路定数の項目も実施例で示したものに限られず、例えば、配線に関係するパラメータなども含めることが出来る。
【００７７】
また実施例では、バラツキ要因のワースト条件を求める際にタグチメソッドの直交表と要因効果を用いて少ないシミュレーションでワースト条件を推定しているが、バラツキ要因に設定された各水準の全ての組合せについてシミュレーションを行い、その結果、回路特性を最も悪くするワースト条件を求めるようにしても良い。
【００７８】
また、回路定数を求める回路として、回路トポロジーが決まった段階の設計回路を対象として説明したが、例えば配線長やレイアウトが決まった段階の回路を対象として、配線長やレイアウト状態を考慮にいれて回路定数を最適化したりその値を確認するのに本発明を利用することも出来る。
【００７９】
また、実施例では、始めに各バラツキ要因について複数水準の値を設定し、そこからバラツキ要因のワースト条件を見つけ出すようにしているが、設計者が各バラツキ要因の値をそれぞれ１つの値に設定可能な処理パターンを組み込み、それを選択実行可能なようようにしても良い。その場合、図３のフローチャートのステップＳ２〜Ｓ７の処理を、設計者が各バラツキ要因の値を設定する処理に変更すれば良い。
【００８０】
以上の説明では主として本発明者によってなされた発明をその背景となった利用分野であるアナログ回路の設計処理について説明したがこの発明はそれに限定されるものでなく、例えば論理回路中のアナログ的な性質を持つ回路の設計など様々な回路設計処理に広く利用することができる。
【００８１】
【発明の効果】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。
【００８２】
すなわち、本発明に従うと、バラツキ要因がワースト条件となった場合でも目標仕様を満たすような回路定数を、熟練した技術を用いずに容易に求めることができるという効果がある。
【００８３】
また、ワースト条件を定めてからその条件で回路定数を導き出すものなので、回路シミュレーションの回数を少なくでき、設計期間の短縮が図れるという効果がある。
【図面の簡単な説明】
【図１】本発明の実施例の回路設計支援システムの入出力データを説明する図である。
【図２】回路設計支援システムに組み込まれた機能モジュールの全体構成を示す機能ブロック図である。
【図３】回路設計支援システムにおいて実行される定数設計処理のフローチャートである。
【図４】回路特性毎にバラツキ要因のワースト条件を求めるのに使用されるデータテーブルを示す図である。
【図５】回路特性毎に算出された各バラツキ要因の要因効果を示すグラフである。
【図６】回路定数の最適値を求めるのに使用されるデータテーブルを示す図である。
【図７】１つの特性について算出された各回路定数の要因効果を示すグラフである。
【図８】評価処理の効果を説明する図である。
【図９】回路定数の各組合せを評価関数を用いて評価する処理の結果の一例を表わす図である。
【図１０】評価関数の一例を表わすグラフである。
【図１１】特性値の推定算出処理の第１の応用例を説明する図である。
【図１２】特性値の推定算出処理の第２の応用例を説明する図である。
【符号の説明】
１０　　　回路情報
１１　　　製造ばらつき情報
１２　　　外部規格情報
１３　　　回路定数振り幅情報
１４　　　目標仕様情報
１５　　　回路定数情報
１００　　回路設計支援システム
Ｓ４　　　第１ステップの条件選択ステップ
Ｓ５　　　第１ステップのシミュレーション工程
Ｓ６　　　算出ステップ
Ｓ７　　　ワースト条件選択ステップ
Ｓ９　　　第２ステップの条件選択ステップ
Ｓ１０　　第２ステップのシミュレーション工程
Ｓ１１　　第１算出ステップ
Ｓ１３　　第２算出ステップ
Ｓ１４　　回路定数抽出ステップ
Ｓ１８　　最適化ステップ
【図１】
2004145410.tif 000004
【図２】
2004145410.tif 000005
【図３】
2004145410.tif 000006
【図４】
2004145410.tif 000007
【図５】
2004145410.tif 000008
【図６】
2004145410.tif 000009
【図７】
2004145410.tif 000010
【図８】
2004145410.tif 000011
【図９】
2004145410.tif 000012
【図１０】
2004145410.tif 000013
【図１１】
2004145410.tif 000014
【図１２】
2004145410.tif 000015