(57)【特許請求の範囲】
【請求項１】
コンピュータを用いた半導体回路の配線設計方法であって、
回路を構成する素子の情報、各素子間を接続する配線の情報並びにこれらの配線のうち電源電圧を供給する配線の電圧関係の情報を含む入力された回路図の情報に基づいて当該回路で電流の流れる経路をコンピュータにより検出する電流経路検出工程と、
上記回路図の情報から互いに電気的に結合関係にある素子の端子間を接続する１または２以上の配線経路からなる配線ネットのうち、電流の流れる経路を少なくとも１つ有する配線ネットをコンピュータにより抽出するネット抽出工程と、
抽出された各配線ネットを、電流が流れる配線経路からなる第１のサブネットと電流が流れない配線経路からなる第２のサブネットとにコンピュータによりそれぞれ分割するサブネット分割工程と、
上記分割された第１のサブネットと第２のサブネットについてそれぞれ別個に配線経路を決定し、その後上記サブネット間を接続する際の制約条件をコンピュータにより生成する配線制約生成工程と、
入力された素子配置情報と上記制約条件に基づいてコンピュータにより配線を決定する配線処理工程と、
を含み、上記制約条件には上記サブネット間を接続する際に接続によって上記第２のサブネットに電流が流れるようにならないという条件が含まれることを特徴とする半導体回路の配線設計方法。
【請求項２】
上記電流経路検出工程は、回路を構成する素子がバイポーラ・トランジスタである場合に、バイポーラ・トランジスタのベース端子には電流が流れ込まないと擬制してコンピュータにより電流経路の検出を行なうことを特徴とする請求項１に記載の半導体回路の配線設計方法。
【請求項３】
上記回路図の情報には、回路を構成する上記素子のうち対をなす素子を指定する情報が含まれ、上記配線制約生成工程は、上記素子のうち対をなす素子を指定する情報に応じて上記対をなす素子の対応する端子間を接続するサブネットの配線の中点と他のサブネットの配線とを接続させることをコンピュータにより制約条件として生成することを特徴とする請求項１または２に記載の半導体回路の配線設計方法。
【請求項４】
上記サブネットの配線の中点は、当該配線が接続される第１の端子との接触点と当該配線が接続される第２の端子との接触点からみてそれぞれ等距離にある点であることを特徴とする請求項３に記載の半導体回路の配線設計方法。
【請求項５】
上記回路はバイポーラ・トランジスタを能動素子とするアナログ回路であることを特徴とする請求項１〜４のいずれかに記載の半導体回路の配線設計方法。
【請求項６】
半導体回路の配線設計を行うプログラムを格納した記憶媒体であって、
回路を構成する素子の情報、各素子間を接続する配線の情報並びにこれらの配線のうち電源電圧を供給する配線の電圧関係の情報を含む回路図の情報の入力を支援する手順と、
上記入力された回路図の情報に基づいて当該回路で電流の流れる経路を検出する電流経路検出手順と、
上記回路図の情報から互いに電気的に結合関係にある素子の端子間を接続する１または２以上の配線経路からなる配線ネットのうち、電流の流れる経路を少なくとも１つ有する配線ネットを抽出するネット抽出手順と、
抽出された各配線ネットを、電流が流れる配線経路からなる第１のサブネットと電流が流れない配線経路からなる第２のサブネットとにそれぞれ分割するサブネット分割手順と、
上記分割された第１のサブネットと第２のサブネットについてそれぞれ別個に配線経路を決定し、その後上記サブネット間を接続する際の制約条件を生成する配線制約生成手順と、
入力された素子配置情報と上記制約条件に基づいて半導体回路の配線を決定する配線処理手順と、
をコンピュータに実行させるプログラムを記録し、上記制約条件には上記サブネット間を接続する際に接続によって上記第２のサブネットに電流が流れるようにならないという条件が含まれるコンピュータ読み取り可能な記録媒体。
【請求項７】
請求項６に記載のコンピュータ読み取り可能な記憶媒体と、該記憶媒体から上記プログラムを読み出して実行するコンピュータ本体と、該コンピュータ本体に対して入力を行なう入力装置と、該入力装置により入力された回路図を表示する表示装置とを備えてなることを特徴とする回路設計装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、半導体集積回路の設計技術さらには半導体集積回路の配線設計に利用して有効な技術に関し、特にアナログ回路を内蔵した半導体集積回路におけるアナログ回路を構成する素子間の接続配線の設計に利用して有効な技術に関する。
【０００２】
【従来の技術】
従来、半導体集積回路の配線設計において、配線経路を決定する方式として、迷路法やチャネル割当法などが知られている。このうち迷路法は、配線格子に対応するマトリックスの１格子（開始点）に着目してその格子に隣接する格子に「１」のラベルを付し、次にラベル「１」のついた格子に隣接する格子に「２」ラベルを付すというようにして、次々とラベルを付して行き、目標とする格子に到達したなら、連続したラベルを最初から「１」，「２」，「３」……のように追いかけることで配線経路を探索する方法である。
【０００３】
また、チャネル割当法は、セル間に設けられた配線領域（チャネル）毎に配線を決定して行く方法であり、ディジタル回路における論理ゲート間の接続に広く利用されている。なお、迷路法やチャネル割当法などの配線経路決定アルゴリズムについては、株式会社コロナ社発行の「ＶＬＳＩデザインオートメーション入門」の第４章レイアウトＤＡに詳しく記載されている。
【０００４】
【発明が解決しようとする課題】
従来の配線経路決定方法はディジタル回路における論理ゲート間の接続には比較的有効であり、種々の自動配線ツール（配線用プログラム）が提供されている。しかしながら、アナログ回路に関しては例えば増幅回路１つをとっても製品によって要求される回路特性が異なるため、回路の構成も少しずつ異なっているので素子レベルで配線経路を決定してやらなければならない。
【０００５】
このようなアナログ回路用の自動配線ツールもあることはあるが、アナログ回路は、単にセル（論理ゲート）の所定の端子間が接続されていれば良いディジタル回路とは異なり、所望の特性や精度を充分に出す必要がある。そのため、従来のアナログ回路用の自動配線ツールは、配線を決定する優先順位や概略の経路を設計者が指定しなければならないなど、設計工数の低減が充分に達成されていないという問題点がある。
【０００６】
この発明の目的は、アナログ回路の自動配線設計に適した設計工数の少ない配線設計方法を提供することにある。
【０００７】
この発明の他の目的は、アナログ回路の配線設計において設計工数を減らし効率良く作業を行なえるようにする回路設計支援ツール（プログラム）を提供することにある。
【０００８】
この発明の他の目的は、アナログ回路の配線設計において設計工数を減らし効率良く作業を行なえるようにする回路設計装置を提供することにある。
【０００９】
この発明の前記ならびにそのほかの目的と新規な特徴については、本明細書の記述および添付図面から明らかになるであろう。
【００１０】
【課題を解決するための手段】
本願において開示される発明のうち代表的なものの概要を説明すれば、下記のとおりである。
【００１１】
すなわち、回路を構成する素子、各素子間を接続する配線並びにこれらの配線のうち電源電圧を供給する配線の電圧関係を入力する回路図入力工程もしくは回路図の入力を支援する機能と、上記入力された回路図の情報に基づいて当該回路で電流の流れる経路を検出する電流経路検出工程もしくは電流経路検出機能と、上記回路図の情報から互いに電気的に結合関係にある素子の端子間を接続する１または２以上の配線経路からなる配線ネットのうち、電流の流れる経路を少なくとも１つ有する配線ネットを抽出するネット抽出工程もしくはネット抽出機能と、抽出された各配線ネットを、電流が流れる配線経路からなる第１のサブネットと電流が流れない配線経路からなる第２のサブネットとにそれぞれ分割するサブネット分割工程もしくはサブネット分割機能と、上記分割された第１のサブネットと第２のサブネットについてそれぞれ別個に配線経路の決定を行なわせるような制約条件を生成する配線制約生成工程もしくは配線制約生成機能とにより、回路の設計方法もしくは設計支援プログラムを構成するようにしたものである。
【００１２】
上記した手段によれば、配線ネットを、電流が流れる配線経路からなる第１のサブネットと電流が流れない配線経路からなる第２のサブネットとにそれぞれ分割し、電流が流れるサブネットと電流が流れないサブネットについてそれぞれ別個に配線経路の決定を行なわせるため、自動配線設計で効率良く配線経路を決定することができ、配線設計に要する時間を短縮することができる。
【００１３】
また、上記電流経路検出工程もしくは電流経路検出機能は、回路を構成する素子がバイポーラ・トランジスタである場合に、バイポーラ・トランジスタのベース端子には電流が流れ込まないと擬制して電流経路の検出を行なうようにするのが望ましい。これにより、設計回路において電流が流れる経路の数が制限されるため、配線経路決定アルゴリズムが単純化され、効率良く配線決定を行なわせることができる。しかも、このような擬制定義を与えたとしても、ベース電流はコレクタ電流に比べるとはるかに少ないため、決定された配線経路が回路の特性に大きな影響を与えることがない。
【００１４】
さらに、望ましくは、上記配線制約生成工程もしくは配線制約生成機能は、サブネット間を接続するときに、電流が流れないとして分割された第２のサブネットに当該サブネット間の接続によって電流が流れることがないようにさせる制約条件を生成するようにする。これにより、自動配線処理によって不所望な経路に電流が流れるのを回避した配線設計を行なわせることができる。
【００１５】
また、上記回路図入力工程もしくは回路図の入力を支援する機能は、回路を構成する上記素子のうち対をなす素子を指定する入力を含み、上記配線制約生成工程もしくは配線制約生成機能は、回路に要求される精度が高いときは、上記対をなす素子の対応する端子間を接続するサブネットの配線の中点と他のサブネットの配線とを接続させる制約条件を生成するようにする。これにより、対をなす素子の電圧などがアンバランスになるのを回避した自動配線設計を行なわせることができる。
【００１６】
また、上記回路図入力工程は、上記素子のうち対をなす素子を指定する入力および対をなす素子の精度を指定する入力を含み、上記配線制約生成工程は、上記対をなす素子の精度の入力があった場合または入力された精度が所定精度以上の場合に上記対をなす素子の対応する端子間を接続するサブネットの配線の中点と他のサブネットの配線とを接続させる制約条件を生成するようにしてもよい。これによって、対をなす素子毎にそれぞれ要求精度を変えた設計が可能となり、より精度の高い回路が得られるようになる。
【００１７】
さらに、上記サブネットの配線の中点は、当該配線が接続される第１の端子との接触点と当該配線が接続される第２の端子との接触点からみてそれぞれ等距離にある点であるようにする。これによって、より正確に対をなす素子の電圧などがアンバランスになるのを回避した自動配線設計を行なわせることができる。
【００１８】
上記した手段は、上記回路がバイポーラ・トランジスタを能動素子とするアナログ回路である場合に特に有効である。アナログ回路の配線設計において、上記した手段を適用することで、設計工数を減らし効率良く作業を行なえるためである。
【００１９】
さらに、上記各機能を有する設計支援プログラムが格納された記憶装置と、該記憶措置から上記プログラムを読み出して実行するコンピュータ本体と、該コンピュータ本体に対して入力を行なう入力装置と、該入力装置により入力された回路図を表示する表示装置とを備えた回路設計装置を構成するようにすると良い。かかる回路設計装置によれば、特にアナログ回路の配線設計において、設計工数を減らし効率の良い回路設計が行なえるようになる。
【００２０】
【発明の実施の形態】
以下、本発明の好適な実施例を図面に基づいて説明する。
【００２１】
図１は本発明を適用したアナログ回路の配線設計方法の手順を示すフローチャートである。
【００２２】
本発明の配線設計方法においては、設計者がコンピュータの表示装置の画面を見ながらマウスやキーボードを使って、まず回路図の入力およびペア素子の選択、電源ラインおよび電圧関係の指定などの入力を行なう（ステップＳ１）。回路図の入力は、例えば図２に示すような画面上で、画面左側に表示されている作業リストＯＰＬを利用して、画面の一部（図２では右側）に部品リストＰＴＬなどを表示させる。そして、このリストから所望の部品をマウスで選択して画面中央の作業領域に所望の素子を配置し、素子間の接続を行なう配線を描くことで行なう。
【００２３】
具体的には、先ず作業リストＯＰＬの中から部品リスト表示ボタンＰＬＢをクリックして、バイポーラ・トランジスタＢＴnpn，ＢＴpnpやＭＯＳトランジスタＭＴｒ、抵抗Ｒ、容量Ｃ、ダイオードＤなど回路を構成する素子を部品として羅列した部品リストＰＴＬのウィンドを表示させる。そして、マウスを操作してこの部品リストＰＴＬの中から使用する素子を表わす記号が付されたボタンにポインタを当てて、クリックすることで素子を選択する。それから、画面左側に表示されている作業リストＯＰＬの中から配置（ドロップ）を示すボタンＤＲＰをクリックすると、画面の作業領域上にその素子の記号が表示される。そこで次に、この記号にポインタを当ててドラッグ＆ドロップを行なって、その素子を任意の位置に移動させる。
【００２４】
次に、画面左側に表示されている作業リストＯＰＬの中から結線描画を示すボタンＬＤＲをクリックして結線描画モードを指定してから、作業領域に表示されている任意の素子の端子とそれと接続したい他の素子の端子との間を結ぶ線を、マウスを操作して画面上でポインタを移動させて描画する。このとき、直線又は折れ線の描画であれば、始点と終点あるいは曲がり点などを指定することで自動的に描画させることができるようにされている。上記のような作業繰り返すことで、図２に示されているような回路図の入力を行なう。
【００２５】
上記のような作業を支援するツール（プログラム）は従来から複数のＥＤＡ（エンジニアリング・デザイン・オートメーション）ベンダから提供されており、例えばＣＡＤＥＮＣＥ社製の“Composer”がある。
【００２６】
本発明に使用される回路図入力支援ツールは、上記機能に加え、作業領域に表示されている回路図の中から任意の１組の素子をペア素子として指定、認識、表示する機能を備えており、機能を実現するため、画面左側に表示されている作業リストＯＰＬの中にペア素子を指定するボタンＰＡＩＲが設けられている。
【００２７】
ここで、「ペア素子」とは、差動増幅回路の差動入力トランジスタのように、２つ以上の素子の比精度が回路特性に影響を与えるため、実現すべき比精度が指示された素子を言う。具体的には、例えば図２に示されている回路では、ベース端子同士が接続されカレントミラー回路を構成するトランジスタＱ１とＱ２、Ｑ９とＱ１０、Ｑ１１とＱ１２、エミッタ端子同士が接続され差動回路を構成する入力差動トランジスタＱ４とＱ３、ベース端子同士が接続されレベルシフト機能を有するトランジスタＱ５とＱ６、ベース端子同士が接続され定電流源として動作するトランジスタＱ７とＱ８、がそれぞれペアとなるトランジスタである。
【００２８】
ペア素子の入力は、先ず設計者が上記ペア指定ボタンＰＡＩＲをマウスでクリックする。すると、図３に示すようなペア入力フォームＰＩＦがウィンド形式で画面上に表示される。そこで、マウスのポインタを使って画面の作業領域（回路図）上で、対にしたい素子のうち一方をクリックして基準となる素子として選択してから、ペア入力フォームＰＩＦ内の“Base-[Enter]”ボタンをクリックする。これによって、“Ｂａｓｅ”と記された基準素子エントリ欄に、上記クリックで選択された素子の名（回路入力時に予め与えられた識別符号）が表示される。
【００２９】
次に、マウスのポインタを使って画面の作業領域（回路図）上で、上記基準素子と対にしたい他方の素子をクリックして選択してから、ペア入力フォームＰＩＦ内の“Paired-[Enter]”ボタンをクリックする。これによって、“Paired”と記されたペア対象素子エントリ欄に、上記クリックで選択された素子の名が表示されるとともに、“Accuracy”と記された欄に選択可能なペア精度が表示される。そこで、それらの中から所望の精度をマウスで選択してやる。なお、「ペア精度」とは、対になる２つの素子の端子電圧のずれの許容度を百分率で表わしたものである。
【００３０】
次に、ペア入力フォームＰＩＦ内の“Ｓｅｔ”ボタンをクリックする。すると、入力支援ツールは、指定された２つの素子がペアであることを認識し、ペア入力フォームＰＩＦ内の“Pair  List”と記されたフィールドに指定された２つの素子がペアであることを示す情報を表示するとともに、例えば図２に符号Ｐで示すように２つの素子を囲むような楕円を表示させて、ペアであることを画面の回路図上において明示する。その後、ペア入力フォームＰＩＦ内の“File-[Save]”ボタンをクリックする。これによって、システムの記憶装置内の所定のファイルに上記ペア情報が格納され、一連のペア素子指定処理が終了する。
【００３１】
本発明に使用される回路図入力支援ツールは、上記機能に加え、さらに作業領域に表示されている回路図の中から電源ラインを指定し、電圧関係を入力すると電流方向を認識する機能を備えており、この機能を実現するため、画面左側に表示されている作業リストＯＰＬの中に電圧関係を入力するボタンＶＳＰが設けられている。支援ツールに電流方向を認識させるには、まず回路図の中から電源ラインとなる配線をマウスでクリックして選択し、上記ボタンＶＳＰをクリックする。すると、画面上にウィンドが現われるので、キーボードを使って電源電圧の値等を入力してやると、支援ツールは電圧関係を認識し、作図された回路において電流の流れる経路と方向を検出する（ステップＳ２）。なお、検出した電流経路と電流の向きは、この実施例のシステムでは表示されないが、図２に矢印と符号Ｉ１〜Ｉ５で示されるように表示させることもできる。
【００３２】
上記のような機能は、例えばバイポーラ・トランジスタはコレクタ・エミッタ間に電流が流れる素子であることを、ＭＯＳトランジスタはソース・ドレイン間に電流が流れる素子であることを、また抵抗は電位の高い方から低い方へ電流が流れる素子であることを、容量は電流（直流電流）を流さない素子であることを、さらにダイオードに関しては順方向にのみ電流が流れ、ＭＯＳトランジスタはゲートとソース、ドレイン間に電流が流れないことなどをそれぞれ予め定義しておいて、電源ラインとそれに接続された配線を追跡して、電源電圧の高い方から電源電圧の低い方へ電流の流れる経路があるか逐次探索する機能を支援ツールに持たせることで、容易に実現できる。
【００３３】
なお、本発明においては、バイポーラ・トランジスタに関しては、ベース・コレクタ間とベース・エミッタ間には電流が流れないことつまりベース電流が「０」であることが、定義ないしは条件として上記支援プログラムに与えられていることに特徴を有する。このような擬制定義を与えることにより、設計回路図において電流が流れる経路の数が制限されるため、以下に述べるアナログ回路の配線経路決定アルゴリズムが単純化され、効率良く配線決定を行なわせることができる。しかも、このような擬制定義を与えたとしても、決定された配線経路は、回路の特性にそれほど大きな影響を与えることがない。これは、ベース電流の大きさがコレクタ電流に比べて２桁〜３桁程度少ないため、これを無視して配線経路を決定しても、配線が回路特性に与える影響は比較的小さいためである。また、精度が要求される場合には、後述のステップＳ５で説明するように、中点間接続という制約を与えることで補償できるためである。
【００３４】
次のステップＳ３では、電流が流れない端子を２以上持ちかつ上記ステップＳ２で検出された電流経路が存在するネットを、自動配線を行なう際に制約を与える必要がある対象ネットとして抽出する処理が行なわれる。これも前記支援ツールによって自動的に行なわれる。そして、抽出されたネットは、図４に太線で示すように、他のネットと識別可能にハイライト表示される。
【００３５】
なお、ここで「ネット」とは、配線設計において一般的に用いられている用語であり、互いに電気的に結合関係にある素子の端子間を接続する１または２以上の配線群（枝状配線）、言いかえると、端部が素子の端子で終端し電流が流れないとすると同一電位になる一連の配線索を意味する。具体的には、例えば図２において、トランジスタＱ１，Ｑ２のベース端子間を接続する配線ｌ１と、Ｑ１のベース・コレクタ接続配線ｌ２と、トランジスタＱ３，Ｑ４のコレクタ同士を接続する配線ｌ３と、配線ｌ３とＱ１のコレクタとを接続する配線ｌ４の結合体が１つのネットである。また、トランジスタＱ４のエミッタとＱ５のエミッタとを接続する配線ｌ５もそれ自身が１つのネットである。
【００３６】
ステップＳ３で対象ネットが抽出されると、抽出されたネットは、支援ツールにより自動的に電流が流れる配線が集まったサブネットと電流が流れない配線が集まったサブネットとに分割される。従来より、自動配線設計において、あるネットを複数のサブネットに分けるという考え方は存在したが、電流が流れるサブネットと電流が流れないサブネットのように分ける考え方は、本発明者が知る限り初めてである。しかも、本発明においては、回路的にはバイポーラ・トランジスタのベース電流が流れるネットは、配線設計過程では「電流が流れないサブネット」に分類される。
【００３７】
上記サブネット分割の一例を図５に示す。図５の回路は、直列形態に接続されたトランジスタＱ２１，Ｑ２２の接続点にトランジスタＱ２３とＱ２４のベースが接続された回路であり、この回路ではトランジスタＱ２３とＱ２４とがベース・エミッタ間電圧Ｖｂｅが互いに等しいペア素子を構成している。
【００３８】
この回路で、図５（Ａ）におけるトランジスタＱ２１のエミッタとＱ２２のコレクタとＱ２３，Ｑ２４のベースとを接続する太線のネットに着目すると、図５（Ｂ）のようにトランジスタＱ２１−Ｑ２２にはコレクタ電流Ｉｃ１が流れるので、トランジスタＱ２１のエミッとＱ２２のコレクタとを接続する配線ｌ１１は、「電流の流れるサブネット」に分類される。一方、トランジスタＱ２３，Ｑ２４にはコレクタ電流Ｉｃ２，Ｉｃ３は流れるものの、Ｑ２３のベースとＱ２４のベースとを接続する配線ｌ１２には電流が流れないので、この配線ｌ１２は「電流の流れないサブネット」に分類される。これによって、図５（Ａ）の回路のネットは、図５（Ｃ）に太線で示すような２つのサブネットに分割されることとなる。
【００３９】
図６に上記サブネット分割の他の例を示す。図６の回路は、図２の回路におけるベース共通接続されたトランジスタＱ７，Ｑ８と、そのベース電位を与えるトランジスタＱ６と、Ｑ６，Ｑ７，Ｑ８のエミッタと接地電位との間にそれぞれ接続された抵抗Ｒ１，Ｒ２，Ｒ３の部分を取り出して示した回路であり、この回路ではトランジスタＱ７とＱ８がベース・エミッタ間電圧Ｖｂｅが等しいペア素子を構成している。
【００４０】
この回路で、トランジスタＱ６のエミッタとＱ７，Ｑ８のベースとを接続する太線のネットに着目すると、図６（Ｂ）のようにトランジスタＱ６から抵抗Ｒ２にかけては電流Ｉ３が流れるので、トランジスタＱ６のエミッタと抵抗Ｒ２とを接続する配線ｌ２１は、「電流の流れるサブネット」に分類される。一方、トランジスタＱ７，Ｑ８にはコレクタ電流Ｉ１，Ｉ２は流れるものの、Ｑ７のベースとＱ８のベースとを接続する配線ｌ２２には電流が流れないので、この配線ｌ２２は「電流の流れないサブネット」に分類される。これによって、図６（Ａ）の回路のネットは、図６（Ｂ）と（Ｃ）においてそれぞれ太線で示されているような２つのサブネットに分割されることとなる。
【００４１】
対象ネットがサブネットに分割されると、続いてステップＳ５で、配線制約の生成が行なわれる。この配線制約の生成は、具体的には、▲１▼「電流が流れないサブネット」と「電流が流れるサブネット」をそれぞれ別個のネットとみなしてそれぞれ配線を決定した後にサブネット間を接続すること、▲２▼サブネット間を接続するときに接続に伴なって「電流が流れないサブネット」に電流が流れるようにならないように配慮すること、▲３▼サブネット間の接続は、回路に要求される精度に応じて、精度要求が高いときは中点間接続を選択し、精度要求が低いときは接続位置を指定しない任意点接続を選択すること、などである。この要求精度に応じた接続点の選択に関する制約▲３▼は、設計者がキーボードからの入力により与えても良いが、ペア素子については自動的にすべて中点間接続を選択する制約を生成させるようにすることもできる。
【００４２】
図５の回路では、上記配線制約により、例えば図５（Ｄ）のように、先ず、トランジスタＱ２３のベースとＱ２４のベースとを接続する配線の経路Ｐ１と、トランジスタＱ２１のエミッとＱ２２のコレクタとを接続する配線の経路Ｐ２とが決定され、それから、２つの経路を接続する配線の経路Ｐ３が決定されることを意味している。また、図５の回路では２つのサブネット間を各サブネットの上の任意の点同士を単に接続するだけで▲２▼の制約も満たされる。このとき、上記▲３▼の中点間接続の制約が生成されていると、後のステップＳ８での自動配線のときに図７（Ａ）に示すように、それぞれの配線の中点ＬＣ１，ＬＣ２同士を接続するよう配線経路が決定されることとなる。
【００４３】
なお、ここで中点とは、２つの素子の端子間を接続する配線の一方のコンタクトホールと他方のコンタクトホール間の配線の中点のことであり、配線の一方の端と他方の端との中点でない。図７（Ａ）の例では、トランジスタＱ２１，Ｑ２２のコンタクトホールＣＮＴ１−ＣＮＴ２間の配線の中点ＬＣ１と、トランジスタＱ２３，Ｑ２４のコンタクトホールＣＮＴ３−ＣＮＴ４間の配線の中点ＬＣ２を意味しており、仮に配線の一方の端部が破線ＥＸのようにコンタクトホールをオーバーして形成されていた場合においても、基準となるのはあくまでもコンタクトホールの位置である。
【００４４】
仮に、上記▲１▼のサブネット分割の制約がない場合には、後のステップＳ８での自動配線のときに図７（Ｂ）のように、トランジスタＱ２１のコレクタとＱ２３のベースを接続する配線ｌ３１と、トランジスタＱ２２のコレクタとＱ２４のベースを接続する配線ｌ３２とが分離した全く別個の配線で接続されることになる。この場合、トランジスタＱ２１のコレクタとＱ２２のエミッタを接続する配線ｌ３３には電流が流れるので、電位差が発生しトランジスタＱ２３，Ｑ２４のベース電位がその電位差分だけずれてしまい、回路特性に影響を与えることとなる。従って、この場合、サブネット分割の制約が有効となる。
【００４５】
また、仮に、上記▲３▼の中点間接続の制約がない場合には、図７（Ｃ）のようにトランジスタＱ２１からＱ２３までの配線長とトランジスタＱ２１からＱ２４までの配線長が異なる配線決定が行なわれる余地がある。このような配線決定が行なわれるのは、ステップＳ２の電流方向検出の際にバイポーラ・トランジスタのベースには電流が流れ込まないと擬制したためである。図７（Ｃ）のような配線では、トランジスタＱ２１のコレクタからＱ２３，Ｑ２４のベースまでの配線の長さが異なるので、Ｑ２３，Ｑ２４にベース電流が流れ込んだ時にベース電位に差が生じ、Ｑ２３とＱ２４がペア素子である場合、回路の動作がアンバランスになって回路の特性が劣化するおそれがある。しかして、上記▲３▼のような中点間接続の制約を与えておくことで、そのような特性劣化を回避することができる。
【００４６】
ステップＳ５での配線制約生成処理が終了すると、ステップＳ６の素子配置処理が行なわれる。この素子配置処理は、設計者がコンピュータの表示装置の画面を見ながらマウスやキーボードを使って、チップ上での素子の位置を指定する作業である。この素子配置の入力画面は、図２に示す回路図入力画面と類似の構成を有するが異なる画面（図示省略）であり、この場面に切り換えてあるいはマルチウィンド表示で、２つの画面を同時に表示させて、回路図画面を参照しながら、部品リストや作業リストを利用して、画面の作業領域に所望の素子を配置して行くことで行なう。
【００４７】
これによって、例えば図８（Ａ）に示されているように、トランジスタＱ２１，Ｑ２２，Ｑ２３，Ｑ２４……の配置が決定される。上記のような作業を支援するレイアウトツール（プログラム）は従来から複数のＥＤＡベンダから提供されており、ＣＡＤＥＮＣＥ社製の“Virtuoso-XL”にもそのような機能があるので、それを利用することで効率良く行なうことができる。
【００４８】
上記素子配置が終了すると、ステップＳ５で生成された配線制約をチェックして中点間接続制約があるときは中点座標の計算を行なう（ステップＳ７）。また、素子配置によって新たに制約が生じたような場合には、その配線制約を追加するなどの配線制約の更新を行なうようにしてもよい。
【００４９】
上記作業終了後に、ステップＳ１〜Ｓ５およびＳ７で作成した回路図データおよび配線制約をレイアウトツールに渡して、レイアウトツールにより制約を考慮した自動配線処理を行なわせる（ステップＳ８）。本発明を適用した場合、ステップＳ８の自動配線処理よって、例えば図５のような回路の配線を設計する際に、図８（Ａ），（Ｂ）のように、先ず２つのサブネットの配線経路を別々に決定した後、２つのサブネット間を接続する配線が行なわれる。そして、このとき前記制約▲３▼があるものにおいてはステップＳ７で算出された中点座標を用いて中点間接続が行なわれ、図８（Ｃ）のような配線レイアウトが決定される。なお、図８において、符号Ｃが付されている部分はバイポーラ・トランジスタのコレクタ領域を、符号Ｂが付されている部分はバイポーラ・トランジスタのベース領域を、符号Ｅが付されている部分はバイポーラ・トランジスタのエミッタ領域をそれぞれ示している。
【００５０】
図９（Ａ）には、図４において鎖線Ｘで囲まれているトランジスタＱ１１，Ｑ１２と抵抗Ｒ５および容量Ｃ１からなる回路部分の素子および配線レイアウト例を示す。
【００５１】
図９（Ａ）において、ＶＣＬは電源電圧Ｖｃｃを供給する電源ラインである。抵抗Ｒ５は例えば半導体基板の表面に形成された拡散層あるいは半導体基板上に絶縁膜を介して形成されたポリシリコン層などから構成される。符号５１はその拡散層またはポリシリコン層の輪郭を示す。容量Ｃ１は、例えば図９（Ｂ）に示すように、半導体基板６０の表面に形成された拡散層６１とこの拡散層６１の上に絶縁膜６２を介して形成されたアルミなどからなる容量の一方の端子としての電極６３との間の絶縁膜容量から構成される。符号６４は上記電極６３の外側にこれを囲むように形成され、上記拡散層６１に接続された容量の他方の端子としての電極である。
【００５２】
なお、ステップＳ８で用いられる上記レイアウトツールは、制約違反があってそれを回避できない場合には制約を無視して配線を決定し制約違反があったことを画面に表示するように構成されており、これによって制約違反回避不能で自動配線処理が停止してしまうのを防止できるようになっている。
【００５３】
次のステップＳ９では、レイアウトツールによる自動配線結果を設計者がチェックして、制約違反があった場合にはステップＳ６へ戻って素子配置を変更した後、再度レイアウトツールによる自動配線を行なわせ、制約違反がなくなった時点で配線設計が完了することとなる。
【００５４】
なお、前記配線制約生成の処理の際に例示した３つの制約▲１▼〜▲３▼では、例えば図７（Ｄ）のようにトランジスタＱ２３とＱ２４のベース間を接続する配線が図７（Ａ）と対称となるレイアウトが発生することがある。このようなレイアウトであってもペア素子のアンバランスは生じないので、回路の特性上あまり問題とならない。そこで、上記実施例においては、このような場合に、着目するサブネットと接続される他のサブネットに近い側に配線を設けるというような条件を制約として入れていない。
【００５５】
ただし、図７の（Ａ）と（Ｄ）を比較すると、（Ａ）の方が、配線長が短いので望ましいといえる。従って、上記のような条件を制約として入れるようにしてもよいことはいうまでもない。ただし、制約が多いほど、ステップＳ８での自動配線処理の所要時間が長くなるとともに制約違反の発生も多くなるので、上記実施例のように制約を少なくすることにより、自動配線処理の所要時間を短縮することが可能となる。
【００５６】
以上、バイポーラ・トランジスタを能動素子とする回路における配線設計方法を説明したが、本発明はＭＯＳトランジスタを能動素子とする回路における配線設計にも適用することができる。
【００５７】
図１０には、ＭＯＳ回路の例とその一部の素子のレイアウトを示す。図１０（Ａ）の回路は、一般的な差動増幅回路であり、ＭＯＳトランジスタＭ１〜Ｍ５により差動増幅段が、またＭＯＳトランジスタＭ７，Ｍ８により出力段が構成されている。Ｃ２とＭ６は発振防止用の容量と抵抗としてのＭＯＳトランジスタである。図１０（Ａ）において、Ｍ１とＭ２とＭ８、Ｍ３とＭ４、Ｍ５とＭ７が、それぞれペア素子となるＭＯＳトランジスタである。
【００５８】
図１０（Ｂ）は、図１０（Ａ）において鎖線Ｙで囲まれているＭＯＳトランジスタＭ１〜Ｍ４からなる回路部分の素子および配線レイアウト例を示す。図において、符号７１はＭＯＳトランジスタＭ１，Ｍ２のソース、ドレイン領域となる拡散層、７２はＭＯＳトランジスタＭ３のソース、ドレイン領域となる拡散層、７３はＭＯＳトランジスタＭ４のソース、ドレイン領域となる拡散層、８１はＭＯＳトランジスタＭ１，Ｍ２のゲート電極、８２はＭＯＳトランジスタＭ３のゲート電極、８３はＭＯＳトランジスタＭ４のゲート電極であり、それぞれポリシリコン層によって形成される。
【００５９】
また、９１はＭＯＳトランジスタＭ１，Ｍ２のソースに電源電圧Ｖｃｃを印加するアルミなどからなる配線、９２はＭＯＳトランジスタＭ１のドレインとＭ３のドレインとの間を接続する配線、９３はＭＯＳトランジスタＭ２のドレインとＭ４のドレインとの間を接続する配線、９４はＭＯＳトランジスタＭ３のソースとＭ４のソースとの間を接続する配線である。９５，９６はＭＯＳトランジスタＭ３，Ｍ４のゲート電極と入力端子ＩＮ，／ＩＮとを接続する配線である。
【００６０】
この実施例においては、上記配線９２が、ＭＯＳトランジスタＭ１，Ｍ２のゲートとＭ３のドレインとを接続する図１０（Ａ）に太線で示されているネットを構成している。図１０（Ｂ）に示されているように、このＭＯＳ回路では、前記▲３▼の中点接続の制約がないため、上記配線９２はＭＯＳトランジスタＭ１，Ｍ２のゲート電極８１の中点からずれた位置で接続されている。これは、ＭＯＳトランジスタのゲートは、バイポーラ・トランジスタのベースと異なり、電流が流れ込まないのでゲート電極８１の各点の電位差はかなり小さく、中点接続をしなくてもペア精度が満足されるためである。
【００６１】
図１１には、本発明に係る配線設計方法を適用して有効なシステムの一例を示す。図１１において、１００はパーソナルコンピュータ、２００は光ディスクドライバや追記型のＣＤドライバなどのような外部記憶装置であり、パーソナルコンピュータ１００はコンピュータ本体１１０と、該コンピュータ本体１１０に対して入力を行なう入力装置としてのキーボード１２０やマウス（図示省略）と、該入力装置の操作により入力された回路図等を表示するための表示装置１４０などによって構成されている。
【００６２】
このシステムにおいては、パーソナルコンピュータ１００と外部記憶装置２００とはケーブル３００により接続され、ＡＴＡＰＩ（AT Attachment Packet Interface）やＳＣＳＩ（Small Computer System Interface）などのインタフェースによりデータの転送が可能に構成される。そして、上記外部記憶装置に挿入される光ディスクやコンパクトディスクのようなメディア４００に、本発明を適用して作成した配線設計支援プログラムが格納され、パーソナルコンピュータ１００はそのプログラムを読み込んで実行することで上記のような自動配線設計が可能になる。
【００６３】
以上本発明者によってなされた発明を実施例に基づき具体的に説明したが、本発明は上記実施例に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば、上記実施例においては、ステップＳ５の配線制約生成工程にて要求精度に応じて中点間接続の制約が生成された場合に、２つのサブネット間の接続が、図８（Ｃ）のように電流が流れるサブネットの中点と電流が流れないサブネットの中点同士を接続するように行なわれている場合を示したが、この場合少なくとも電流が流れないサブネットすなわちペア素子がある側のサブネットが中点接続されれば良く、その中点を電流が流れる側のサブネットのいずれか任意の点とを接続するように配線を決定してもよい。このようにしても、図８のようなペア素子に関しては、同一のベース電圧が供給されることでその動作特性がアンバランスになることは回避される。
【００６４】
以上の説明では主として本発明者によってなされた発明をその背景となった利用分野である半導体集積回路の設計システムに適用した場合について説明したが、プリント基板上の電子回路特にアナログ回路の設計を、コンピュータを使用して行なう場合に広く適用することができる。
【００６５】
【発明の効果】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。
【００６６】
すなわち、本発明に従うと、アナログ回路の配線設計において、設計工数を減らし、自動配線設計で効率良く配線経路を決定することができ、配線設計に要する時間を短縮することができる。
【図面の簡単な説明】
【図１】本発明を適用したアナログ回路の配線設計方法の手順を示すフローチャートである。
【図２】本発明に係る設計方法で使用される回路図の入力画面の一例を示す画面構成図である。
【図３】本発明に係る設計方法で使用される回路図の入力画面でペア素子を指定する際に表示されるペア入力フォームの一例を示す画面構成図である。
【図４】本発明に係る設計方法で設計される回路の一例としてのアナログ回路を示す回路図である。
【図５】本発明の設計方法で行なわれるサブネット分割の一例を示す部分回路図である。
【図６】本発明の設計方法で行なわれるサブネット分割の他の例を示す部分回路図である。
【図７】回路図に基づいて自動配線設計で配設される配線パターン例を示すレイアウト図である。
【図８】本発明の設計方法で行なわれるサブネット分割および配線制約生成の下に基づいて自動配線設計で配設される配線パターンの生成手順を示すレイアウト図である。
【図９】図４におけるトランジスタＱ１１，Ｑ１２と抵抗Ｒ５および容量Ｃ１からなる回路部分の素子および配線レイアウトの例を示すレイアウト図および容量素子の構造を示す断面図である。
【図１０】本発明に係る設計方法で設計される回路の一例としてのＭＯＳ回路を示す回路図およびその一部の素子のレイアウト図である。
【図１１】本発明に係る配線設計方法を適用して有効なシステムの一例を示すブロック図である。
【符号の説明】
Ｑ１〜Ｑ１３  バイポーラ・トランジスタ
Ｒ１〜Ｒ５    抵抗素子
Ｃ１，Ｃ２    容量素子
Ｍ１〜Ｍ８    ＭＯＳトランジスタ
ｌ１１，ｌ２，ｌ２１，ｌ２２，ｌ３１，ｌ３２，ｌ３３  配線
ＬＣ１，ＬＣ２  中点
ＶＣＬ          電源ライン
６０    半導体基板
６１  拡散層
６２  絶縁膜
６３  容量素子の一方の電極
６４  容量素子の他方の電極
７１〜７３  拡散層（ソース・ドレイン領域）
８１〜８３  ゲート電極
９１〜９５  アルミ配線
１００  パーソナルコンピュータ
１１０  コンピュータ本体
１２０  入力装置（キーボード）
１４０  表示装置
２００  外部記憶装置（ＣＤドライバ）
３００  ケーブル
【図１】
0003998169.tif 000002
【図２】
0003998169.tif 000003
【図３】
0003998169.tif 000004
【図４】
0003998169.tif 000005
【図５】
0003998169.tif 000006
【図６】
0003998169.tif 000007
【図７】
0003998169.tif 000008
【図８】
0003998169.tif 000009
【図９】
0003998169.tif 000010
【図１０】
0003998169.tif 000011
【図１１】
0003998169.tif 000012