(57)【要約】【課題】マスクレイアウトにおける配線作業効率を向上させることを目的とする。【解決手段】各配線ごとに要求される配線抵抗値を考慮して配線レイアウトを行う場合に、まず、配線処理を行うネットを特定する（Ｓ３１）。次に、配線抵抗情報を取得する（Ｓ３２）。次に、簡略配線長の計算をおこなう（Ｓ３３）。この簡略配線長を用いて配線幅を決定し（Ｓ３４）、配線処理を実行する（Ｓ３５）。以上の方法のように、配線ごとの配線抵抗情報をあらかじめ用意することにより、マスクレイアウトにおける配線作業効率を向上させることができる。【選択図】　図３
2004086509.tif 000002
【特許請求の範囲】
【請求項１】
半導体集積回路の自動配線レイアウトにおいて、
半導体集積回路の回路情報を記憶して前記回路情報を用いて配線レイアウトを自動的に行うことを特徴とする半導体集積回路の自動配線方法。
【請求項２】
半導体集積回路の自動配線レイアウトにおいて、
配線抵抗値を制御して配線レイアウトを行う必要のあるネットを選択する工程と、
前記回路情報より前記ネットに対して許容できる抵抗値の範囲を示した配線抵抗情報を取得する工程と、
前記ネットを配線レイアウトした場合の簡略配線長を概算する工程と、
前記配線抵抗情報および前記簡略配線長により前記ネットの配線に必要な配線幅を自動的に算出する工程と、
選択した全てのネットのそれぞれ算出した配線幅を確保して半導体集積回路全体の自動配線レイアウトを行う工程と
を有し、任意のネットの配線に必要な配線幅を自動的に算出して配線レイアウトすることにより、前記任意のネットの必要な配線抵抗値を確保することを特徴とする請求項１記載の半導体集積回路の自動配線方法。
【請求項３】
半導体集積回路の自動配線レイアウトにおいて、
異なる配線層の配線を接続する際の配線の重なり部分の形状を検出する工程と、
前記配線の重なり部分の形状を用いて接続部分の抵抗が所定の抵抗より小さくなるようにビアの個数を決定する工程と、
前記配線の重なり部分に前記決定した数のビアが配置できるかを判定して前記決定した数のビアが配置できない場合は前記決定したビアが配置できるように配線の重なり部分を拡大する工程と、
前記決定した数のビアを自動的に配置する工程と
を有し、配線接続部分の抵抗値を自動的に所要範囲に抑えて配線レイアウトすることを特徴とする半導体集積回路の自動配線方法。
【請求項４】
半導体集積回路の自動配線レイアウトにおいて、
前記回路情報より同一の機能を有する複数の素子を指定したペア素子情報を取得する工程と、
前記ペア素子のうちで同一の機能を有する端子に接続されるネットをグループ化する工程と、
前記グループ化されたネットに対してそれぞれ同一形状で配線レイアウトする工程と、
前記グループ化されたネットのうちで同一形状での配線レイアウトが不可能なネットに対して配線抵抗値が同一になるように配線レイアウトする工程と
を有し、同一の機能を有する端子のネットの配線抵抗値を同一にすることを特徴とする請求項１記載の半導体集積回路の自動配線方法。
【請求項５】
半導体集積回路の自動配線レイアウトにおいて、
前記回路情報より配線レイアウトを行うネットが接続する端子数情報を取得する工程と、
前記ネットが接続する端子数が３以上の場合に前記回路情報より各端子に流れる電流量情報を取得する工程と、
取得した電流量が所定の量を超える端子に接続する配線のみを優先的に配線レイアウトを行う工程と、
取得した電流量が所定の量を超えない端子に接続する配線およびネットが接続する端子数が２の端子のネットの配線を配線レイアウトする工程と
を有し、流れる電流量が大きな配線を優先的に配線レイアウトして配線長を短くすることを特徴とする請求項１記載の半導体集積回路の自動配線方法。
【請求項６】
半導体集積回路の自動配線レイアウトにおいて、
前記回路情報より配線レイアウトを行うネットが接続する端子数情報を取得する工程と、
前記ネットが接続する端子数が３以上の場合に前記回路情報より各端子に流れる電流量情報を取得する工程と、
取得した電流量に応じてそれぞれの配線に複数種類の配線幅を設定する工程と、
配線幅を設定した配線は前記設定した配線幅でその他の配線はあらかじめ決められた所定の配線幅で配線レイアウトする工程と
を有し、配線に流れる電流量に応じて配線幅を変更して配線レイアウトすることを特徴とする請求項１記載の半導体集積回路の自動配線方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、半導体集積回路の自動配線方法、自動配線装置及び自動配線プログラム及び自動配線された半導体集積回路に関する。
【０００２】
【従来の技術】
アナログ回路設計では回路設計とマスクレイアウト設計をそれぞれ異なる担当者によって行われる場合が多く、回路設計担当者は回路設計結果を基にマスクレイアウト設計に対する指示を別途おこなう必要がある。そのために、ＬＳＩの設計において、ディジタル回路では回路図設計からマスクレイアウトまで自動化されているのに対し、アナログ回路設計では自動化が遅れている。
【０００３】
例えば、従来のアナログ回路設計を行う場合、まず、回路設計担当者が回路設計を行うと同時に、各配線における電流量に応じた配線幅，配線どうしを接続するビアの数、あるいは素子の機能に応じた配線経路の統一化などの情報をマスクレイアウト指示として作成し、次に、このマスクレイアウト指示に基づいてマスクレイアウト設計担当者がマスクレイアウト設計を行っていた。
【０００４】
【発明が解決しようとする課題】
しかしながら、マスクレイアウト指示はマスクレイアウト作図装置上で直接反映することができないため、別途指示書を作成してマスクレイアウト設計担当者にて対応する必要があり、また、指示書の作成には多大な時間を要し、すべての指示をもらさず記載することは容易ではない。そのため、設計工数が増加してしまうと言う問題点があった。さらに、マスクレイアウト設計後に再度マスクレイアウト指示を与え直すような場合もあり、設計工数がさらに増加してしまうと言う問題点があった。
【０００５】
本発明の半導体集積回路の自動配線方法は、かかる問題点を鑑みて、あらかじめ回路図作成時に用いた配線情報やシミュレーション結果を用いてマスクレイアウトにおける配線作業効率を向上させることを目的とする。
【０００６】
【課題を解決するための手段】
本発明の請求項１記載の半導体集積回路の自動配線方法は、半導体集積回路の自動配線レイアウトにおいて、半導体集積回路の回路情報を記憶して前記回路情報を用いて配線レイアウトを自動的に行うことを特徴とする。
【０００７】
請求項２記載の半導体集積回路の自動配線方法は、請求項１記載の半導体集積回路の自動配線方法であって、半導体集積回路の自動配線レイアウトにおいて、配線抵抗値を制御して配線レイアウトを行う必要のあるネットを選択する工程と、前記回路情報より前記ネットに対して許容できる抵抗値の範囲を示した配線抵抗情報を取得する工程と、前記ネットを配線レイアウトした場合の簡略配線長を概算する工程と、前記配線抵抗情報および前記簡略配線長により前記ネットの配線に必要な配線幅を自動的に算出する工程と、選択した全てのネットのそれぞれ算出した配線幅を確保して半導体集積回路全体の自動配線レイアウトを行う工程とを有し、任意のネットの配線に必要な配線幅を自動的に算出して配線レイアウトすることにより、前記任意のネットの必要な配線抵抗値を確保することを特徴とする。
【０００８】
請求項３記載の半導体集積回路の自動配線方法は、半導体集積回路の自動配線レイアウトにおいて、異なる配線層の配線を接続する際の配線の重なり部分の形状を検出する工程と、前記配線の重なり部分の形状を用いて接続部分の抵抗が所定の抵抗より小さくなるようにビアの個数を決定する工程と、前記配線の重なり部分に前記決定した数のビアが配置できるかを判定して前記決定した数のビアが配置できない場合は前記決定したビアが配置できるように配線の重なり部分を拡大する工程と、前記決定した数のビアを自動的に配置する工程とを有し、配線接続部分の抵抗値を自動的に所要範囲に抑えて配線レイアウトすることを特徴とする。
【０００９】
請求項４記載の半導体集積回路の自動配線方法は、請求項１記載の半導体集積回路の自動配線方法であって、半導体集積回路の自動配線レイアウトにおいて、前記回路情報より同一の機能を有する複数の素子を指定したペア素子情報を取得する工程と、前記ペア素子のうちで同一の機能を有する端子に接続されるネットをグループ化する工程と、前記グループ化されたネットに対してそれぞれ同一形状で配線レイアウトする工程と、前記グループ化されたネットのうちで同一形状での配線レイアウトが不可能なネットに対して配線抵抗値が同一になるように配線レイアウトする工程とを有し、同一の機能を有する端子のネットの配線抵抗値を同一にすることを特徴とする。
【００１０】
請求項５記載の半導体集積回路の自動配線方法は、請求項１記載の半導体集積回路の自動配線方法であって、半導体集積回路の自動配線レイアウトにおいて、前記回路情報より配線レイアウトを行うネットが接続する端子数情報を取得する工程と、前記ネットが接続する端子数が３以上の場合に前記回路情報より各端子に流れる電流量情報を取得する工程と、取得した電流量が所定の量を超える端子に接続する配線のみを優先的に配線レイアウトを行う工程と、取得した電流量が所定の量を超えない端子に接続する配線およびネットが接続する端子数が２の端子のネットの配線を配線レイアウトする工程とを有し、流れる電流量が大きな配線を優先的に配線レイアウトして配線長を短くすることを特徴とする。
【００１１】
請求項６記載の半導体集積回路の自動配線方法は、請求項１記載の半導体集積回路の自動配線方法であって、半導体集積回路の自動配線レイアウトにおいて、前記回路情報より配線レイアウトを行うネットが接続する端子数情報を取得する工程と、前記ネットが接続する端子数が３以上の場合に前記回路情報より各端子に流れる電流量情報を取得する工程と、取得した電流量に応じてそれぞれの配線に複数種類の配線幅を設定する工程と、配線幅を設定した配線は前記設定した配線幅でその他の配線はあらかじめ決められた所定の配線幅で配線レイアウトする工程とを有し、配線に流れる電流量に応じて配線幅を変更して配線レイアウトすることを特徴とする。
以上の方法により、マスクレイアウトにおける配線作業効率を向上させることができる。
【００１２】
【発明の実施の形態】
本発明の半導体集積回路の自動配線方法について、図を用いて説明する。
（実施の形態１）
以下、本発明の実施の形態１における半導体集積回路の自動配線方法について、図１，図２，図３，図４を用いて説明する。
【００１３】
図１はネットに配線抵抗情報を付加する概念図，図２はネットに配線抵抗を付加する概念図であり、図３は配線抵抗情報を用いて計算した配線幅を用いて配線レイアウトを行うフロー図，図４は簡易配線長を求める方法を説明するレイアウト図である。
【００１４】
従来の技術では、図２のように、素子２１及び素子２３の端子間を接続するネットには抵抗値がないため、配線抵抗が考慮されないままシミュレーションが実施されている。そのため、配線抵抗をシミュレーションに反映させるために新たに抵抗２２を挿入してシミュレーションを行っていた。
【００１５】
そこで、図１に示すように、配線抵抗の反映が必要なネットに任意に配線抵抗情報１４を付加してシミュレーションやマスクレイアウトを行う。配線抵抗情報１４は素子１１及び素子１３の端子間を接続する配線１２に抵抗値と、ｔｏｌｅｒａｎｃｅとして定義された許容できる抵抗値の変動の割合とを有する。
【００１６】
以下、配線抵抗情報を用いて配線幅を自動的に設定する方法を説明する。
図３において、配線処理を開始すると、まず、配線処理を行うネットを特定する（Ｓ３１）。次に、配線抵抗情報１４を取得する（Ｓ３２）。次に、下記に示す簡略配線長の計算をおこなう（Ｓ３３）。この簡略配線長を用いて配線幅を決定し（Ｓ３４）、配線処理を実行する（Ｓ３５）。
【００１７】
簡略配線長を用いた配線幅の計算には次の式を用いる。
決定する配線幅をＷ、配線レイヤのシート抵抗値をΔｒ、配線抵抗情報１４で入力された配線抵抗をＲとすると、配線幅Ｗは、
Ｗ＝Δｒ×ｌ／Ｒ
で表される。
【００１８】
ここで、実際のマスクレイアウト設計での配線長はマスクレイアウトにて配線を実行しないと取得できないため、素子の配置情報をもとに簡略化した配線長ｌを用いている。
【００１９】
図４において、ドレイン端子４２、ゲート端子４３、ソース端子４４を有するＭＯＳトランジスタ４１とＭＯＳトランジスタ４１と同一形状、同一方向のＭＯＳトランジスタが３個配置されているマスクレイアウトを表している。端子４５から端子４６を接続する配線４７の配線長ｌは、端子４５のマスクレイアウト上での座標を（ｘ１，ｙ１）、端子４６の座標を（ｘ２，ｙ２）とすると、
ｌ＝｜ｘ１−ｘ２｜＋｜ｙ２−ｙ１｜
とすることができる。
【００２０】
この式より計算される簡略配線長を用いて配線幅Ｗを決定し配線レイアウトを実行する。配線をおこなった結果、簡略化した配線長よりも長い配線となり、配線抵抗が回路図作成装置で入力した許容できる抵抗値の変動の割合よりも大きくなった場合は、算出した配線幅を大きくし、再度配線を実行することで配線抵抗を小さくする。
【００２１】
このような手段で配線幅を自動的に決定することで、設計者が特別な指示を与えることなく配線抵抗を考慮した最適な配線を自動で実行することが可能となり、マスクレイアウトにおける配線作業効率を向上させることができる。
（実施の形態２）
以下、図５，図６を用いて本発明の実施の形態２における半導体集積回路の自動配線方法について説明する。
【００２２】
図５はビアの自動レイアウト方法を示すフロー図であり、図６（ａ）は配線の重なり部分を説明する図，図６（ｂ）は配線の重なりに対応したビアの配置を説明する図である。
【００２３】
レイヤの異なる配線の接続に用いるビアのマスクレイアウトに関して、先に書いたように、従来は回路設計担当者があらかじめ決定したビアの数をマスクレイアウト指示としてマスクレイアウト設計担当者に提供してマスクレイアウトを行うか、最低限のビアの数でマスクレイアウトを行いシミュレーション等で不足を検出した場合のみビアを追加してマスクレイアウトを行っていため、マスクレイアウトにおける配線作業効率を低下させる原因となっていた。
【００２４】
そこで、本実施の形態の自動配線方法は、レイヤの異なる配線の接続に用いるビアの数を自動的に決定してマスクレイアウトを行う。
図６（ａ）の構成の配線に対して図５に示すビア数の決定方法を説明する。
【００２５】
図６（ａ）において、配線６１と配線６２を接続しており、その重なり部分を矩形６３とし、この矩形内に配線レイヤを接続されるビアが生成される。ここで、この重なり部分の矩形６３を検出することを配線重なり検出と呼ぶ。
【００２６】
図５において、ビア数決定処理の開始後、まず、配線重なり検出を行う（Ｓ５１）。次に、検出された配線重なりを用いてビア数計算を行う（Ｓ５２）。ビア数は次の式に基づいて算出される。
【００２７】
図６の配線６１の配線幅をＷ１、配線６２の配線幅をＷ２、ビア一つあたりの抵抗値をＲｗ、配線レイヤのシート抵抗値をΔｒ、決定するビアの個数をｎとすと、
ｎ＞（Ｗ１／Ｗ２）×（Ｒｗ／Δｒ）
で決定される。
【００２８】
この式において、ビアによって発生する配線抵抗が、配線重なり検出処理で検出された矩形６３の部分で直接配線を接続したとした場合の配線抵抗より小さい抵抗値になるようにビア数ｎを決定している。
【００２９】
ビア数を計算した後、次に、配線の重なり部分の矩形６３内にＳ５２で決定された個数のビアが配置可能かの判別をおこなう（Ｓ５３）。配線の重なり部分の矩形６３内にＳ５２で決定された個数のビアが配置可能であればそのままビアの配置を実行する。配線の重なり部分矩形６３内に決定された個数のビアが配置できない場合は、配線を延長して重なり部分の領域を拡大して必要数のビアを配置する（Ｓ５４）。この時の処理フローを図６（ｂ）を用いて説明する。
【００３０】
まず、配線の重なり部分の矩形６９内に配置できるだけビア６４を配置する。例えば図６（ｂ）ではビア６４が一つ配置されている。Ｓ５２で決定されたビアの個数が２の場合、配線の重なり部分の矩形６９には一つしかビアを配置することができないため、配線６７上でかつビア６４に隣接した領域に、配線６８と同一レイヤの配線６６を自動的に追加する。次に、Ｓ５２で決定された個数のビアを配置し、Ｓ５４を完了する。
【００３１】
以上の方法により、配線抵抗の増加を抑えるためのビア数の決定を自動的におこなうことが可能となり、マスクレイアウトにおける配線作業効率を向上させることができる。
（実施の形態３）
以下、本発明の実施の形態３における半導体集積回路の自動配線方法について、図７，図８を用いて説明する。
【００３２】
図７はペア素子に指定された素子の配線を実施する方法を示すフロー図，図８はペア素子とネットのグループ化を説明する概念図である。
実施の形態３では、任意の複数の素子をペア素子として指定し、ペア素子の同一の端子に接続される各ネットを１つのグループとして、グループ化したネットの配線形状を同一にしてマスクレイアウトする方法を説明する。
【００３３】
ここで、ペア素子とは同一機能を有する複数の素子のグループを表し、設計者によって同一の機能とみなした素子を任意に指定する。
例えば、図８において、ＭＯＳトランジスタ８１、ＭＯＳトランジスタ８２をペア素子８３と指定したとする。ネット８４、ネット８５は、ペア素子であるＭＯＳトランジスタ８１、ＭＯＳトランジスタ８２のソース端子にそれぞれ接続され、また、ネット８６、ネット８７は、ペア素子であるＭＯＳトランジスタ８１、ＭＯＳトランジスタ８２のドレイン端子にそれぞれ接続している。ここでは、ＭＯＳトランジスタ８１、ＭＯＳトランジスタ８２のソース端子どうし、ドレイン端子どうしを同一機能端子としているとすると、ネット８４、ネット８５はグループ化され、ネット８６、ネット８７はグループ化される。
【００３４】
以下、具体的な手順を説明する。
図７において、まず、設計者が指定したペア素子を取得する（Ｓ７１）。次に、指定したペア素子のそれぞれの素子がどのような端子を有するかを回路情報より取得する（Ｓ７２）。次に、ペア素子の同一機能端子に接続するネットをグループ化する（Ｓ７３）。次に、Ｓ７３によってグループ化されたネットに対して同一形状配線処理を行う（Ｓ７４）。ここで、同一形状配線とは、マスクレイアウト時の配線幅、配線長、ビア数、配線折り曲げ形状を等しくし配線抵抗を等しくすることである。素子の配置位置や他の配線の影響でＳ７４の同一形状配線ができない場合がある。そのために、Ｓ７４の同一形状配線処理が完了できたかを判別する（Ｓ７５）。Ｓ７５で同一形状配線が完了したと判断されれば、配線処理を完了し、同一形状配線処理が完了できないと判断された場合は、同一抵抗配線処理を実行する（Ｓ７６）。同一抵抗配線処理では、グループ化されたネットの配線抵抗が同一になるように配線を実行する。つまり、配線幅、配線長、ビア数、配線折り曲げ形状を等しくして配線抵抗を同一にするのではなく、配線幅、配線長、ビア数、配線折り曲げ形状を適宜変更することで、配線抵抗を同一にする処理をおこなう。
【００３５】
以上の処理によって、同一機能を有する素子をペア素子と設定するだけで、ペア素子とみなされる素子に接続される配線の配線抵抗を自動的に等しくすることを可能となり、マスクレイアウトにおける配線作業効率を向上させることができる。
（実施の形態４）
以下、本発明の実施の形態４における半導体集積回路の自動配線方法について、図９，図１０を用いて説明する。
【００３６】
図９は電流量によりネットに優先順位をつけて配線を実施する方法を示すフロー図，図１０はネット毎の電流量の違いによる優先順位を説明する概念図である。
【００３７】
従来の自動配線処理では、ひとつのネットに３以上の端子が接続されている場合でも、すべての端子に対して優先順位を付加することなく同様の条件で配線を実行する。しかし、端子に流れ込む電流量はそれぞれ異なるため、必要以上に低抵抗化した配線となる場合もあった。例えば、ＭＯＳトランジスタのゲートには電流が流れ込まないため、ＭＯＳトランジスタのゲートに接続される配線の配線抵抗を小さくする必要がない。逆に、ＭＯＳトランジスタのドレイン端子あるいはソース端子に接続される配線には電流が流れるため、配線抵抗を極力小さくして配線することが求められる。配線抵抗を小さくして配線レイアウトするためには、最短で配線レイアウトをおこなうことが有効であることから、他の端子への配線より優先して配線レイアウトをおこなうことにより、最短に配線レイアウトすることが必要となる。
【００３８】
そのために、本発明の実施の形態４では、同一ネットであっても端子に応じて配線の優先度を設定して配線を行う。
以下、具体的な手順を説明する。
【００３９】
まず、配線を実行するネットを選択し（Ｓ９１）、次に、取得したネットに接続される端子の数を取得する（Ｓ９２）。次に、端子数によって配線方法を選択するために各ネットの端子数が３以上あるネットと２のネットに選別する（Ｓ９３）。取得された端子の数が３以上のネットは電流パス情報を取得してＳ９５に進み、取得された端子の数が２の場合はＳ９６に飛ぶ（Ｓ９４）。次に、Ｓ９４で検出された電流パスのみを優先して配線し（Ｓ９５）、Ｓ９４で検出された電流パスの配線が完了した後に残りのネットに対して通常の配線処理を実行する（Ｓ９６）。
【００４０】
ここで、通常の配線処理や電流バスの配線処理として、従来の自動配線のほかに実施の形態１あるいは実施の形態３で説明した配線処理を行う事も可能である。
【００４１】
また、図１０に示す回路を例として電流パスについて説明する。
図１０のオペアンプにおいて、ＭＯＳトランジスタ１０１のドレインとＭＯＳトランジスタ１０２のドレインとＭＯＳトランジスタ１０３のゲートが接続されている。ここで、ＭＯＳトランジスタ１０１，ＭＯＳトランジスタ１０２間のネットを１０４、ＭＯＳトランジスタ１０３のゲートにつながるネットを１０５とする。この時、電流パス情報の取得処理は、図９のＳ９１で選択されたネットの中で電流が流れる端子を検出し、検出された端子間を接続するネットを電流パスとして取得する処理である。ネットに接続される端子が、ＭＯＳトランジスタのドレイン端子あるいはソース端子であれば電流が流れる端子として検出することができ、ドレイン端子あるいはソース端子に接続されるネットを電流パスとみなすことができ、図１０ではネット１０４が電流パスとなる。逆に、ネット１０５はＭＯＳトランジスタ１０３のゲート端子に接続されているため、電流パスとはみなされない。なお、電流パスの検出には回路シミュレーションの結果を用いてもよい。
【００４２】
また、本実施の形態では優先順位を２段階に設定した場合について説明したが、優先順位をより細かく３段階以上に分けて、優先順位の高いネットから配線処理を行うこともできる。
【００４３】
以上の方法により、３つ以上の端子に接続される同一ネットの配線において、端子間の配線順位を決定して自動的に配線を実行することが可能となり、マスクレイアウトにおける配線作業効率を向上させることができる。
（実施の形態５）
以下、本発明の実施の形態５における半導体集積回路の自動配線方法について、図１１，図１２を用いて説明する。
【００４４】
図１１は電流量によりネットに複数段の優先順位をつけて配線を実施する方法を示すフロー図であり、図１２（ａ）はネット毎の電流量の違いによる優先順位を説明する概念図，図１２（ｂ）はネット毎の電流量の違いによる優先順位を説明するレイアウト図である。
【００４５】
実施の形態４では、ひとつのネットに３以上の端子が接続されている場合、特定の端子に接続されたネットとそれ以外のネットの２種類に分けて、特定の端子に接続されたネットを優先的に配線を実行する。しかし、端子に流れ込む電流量はそれぞれ異なるため、それぞれのネット毎に配線抵抗を制御する必要が生じる場合がある。
【００４６】
例えば、図１２において、ＭＯＳトランジスタ１２１のドレイン端子から流れる電流と、ＭＯＳトランジスタ１２２のドレイン端子から流れる電流の和がＭＯＳトランジスタ１２３のドレイン端子に流れ込む。実施の形態４では、ネット１２４の配線の優先順位は接続される端子に対応して、最高でも２種類の優先順位で配線される。そこで、図１１に示す配線順位の決定処理を用いて同一ネットであっても複数の配線幅を設定し、電流量に比例した配線幅を用いて配線することを可能とする。
【００４７】
以下、具体的な手順を説明する。
図１１において、Ｓ１１１からＳ１１４までは、実施の形態４のＳ９１からＳ９４までの処理と同一である。実施の形態４と異なる処理は、Ｓ１１５、Ｓ１１８、Ｓ１１９、Ｓ１１１０である。Ｓ１１５では、Ｓ１１１で選択されたネットが接続される端子に電流パスが複数存在するかを判定する。選択されたネットが接続される端子に電流パスが１種類しか存在しない場合、実施の形態４と同様にその電流パスに対して電流パス配線を行う（Ｓ１１６）。選択されたネットに電流パスが複数存在する場合にのみ本発明は適用される。
【００４８】
Ｓ１１８はＳ１１１で選択されたネットに接続されるすべての端子それぞれに流れ込む電流量を取得する。電流量は回路シミュレーション結果より得られる。または、あらかじめ設計者が情報として別途定義してもよい。Ｓ１１９は、Ｓ１１８で取得した端子ごとの電流量の情報を用いて一番多く電流が流れる端子を抽出する。抽出された端子は、他の端子からの配線が合流する合流端子と定義する。合流端子以外の端子に接続される電流パスの配線幅は、例えば、実施の形態１の処理により自動的に決定することができる。あるいは設計者が任意に配線幅を与えることもできる。Ｓ１１１０では、合流端子以外の端子に接続される電流パスの配線幅の総和を合流端子幅として決定する。最後に決定した配線幅に応じて配線処理を行う（Ｓ１１７）。
【００４９】
図１２（ｂ）のＭＯＳトランジスタ１２１ｂ、ＭＯＳトランジスタ１２２ｂ、ＭＯＳトランジスタ１２３ｂはそれぞれ図１２（ａ）のＭＯＳトランジスタ１２１、ＭＯＳトランジスタ１２２、ＭＯＳトランジスタ１２３を表すマスクレイアウトの配置結果である。図１１の処理によって、ＭＯＳトランジスタ１２３のドレイン端子が合流端子とみなされ、配線処理がおこなわれる。ネット１２６の配線幅はネット１２５およびネット１２７の配線幅の総和となる。
【００５０】
本実施の形態では、ネットの優先順位に対応して配線幅を変更したが、ネットの優先順位に対応して配線レイアウトの順番を変更しても良い。
以上の方法により、同一ネットであっても複数の配線幅を設定し、電流量に比例した配線幅を用いて配線することを可能となり、マスクレイアウトにおける配線作業効率を向上させることができる。
【００５１】
【発明の効果】
以上のように本発明の半導体集積回路の自動配線方法によると、配線抵抗情報を基に配線幅の決定を自動的におこなうことが可能となる。また、配線の重なり部分の面積から配線間のビア数を自動的に決定することが可能となる。また、ペア素子を設定することにより、指定した素子への配線の形状を自動的に統一することが可能となる。また、一つのネットが複数の素子の端子に接続されている場合、端子間の配線順位を決定することで配線の優先順位を自動的に決定することができる。また、一つのネットに３つ以上の端子が接続された場合、それぞれの端子間の配線順位を決定することで、対応するネットの配線幅を自動的に決定することが可能となる。以上の方法によりマスクレイアウトにおける配線作業効率を向上させることができる。
【図面の簡単な説明】
【図１】ネットに配線抵抗情報を付加する概念図
【図２】ネットに配線抵抗を付加する概念図
【図３】配線抵抗情報を用いて計算した配線幅を用いて配線レイアウトを行うフロー図
【図４】簡易配線長を求める方法を説明するレイアウト図
【図５】ビアの自動レイアウト方法を示すフロー図
【図６】（ａ）配線の重なり部分を説明する図
（ｂ）配線の重なりに対応したビアの配置を説明する図
【図７】ペア素子に指定された素子の配線を実施する方法を示すフロー図
【図８】ペア素子とネットのグループ化を説明する概念図
【図９】電流量によりネットに優先順位をつけて配線を実施する方法を示すフロー図
【図１０】ネット毎の電流量の違いによる優先順位を説明する概念図
【図１１】電流量によりネットに複数段の優先順位をつけて配線を実施する方法を示すフロー図
【図１２】（ａ）ネット毎の電流量の違いによる優先順位を説明する概念図
（ｂ）ネット毎の電流量の違いによる優先順位を説明するレイアウト図
【符号の説明】
１１　　素子
１３　　素子
１２　　配線
１４　　配線抵抗情報
２１　　素子
２２　　抵抗
２３　　素子
４１　　ＭＯＳトランジスタ
４２　　ドレイン端子
４３　　ゲート端子
４４　　ソース端子
４５　　端子
４６　　端子
４７　　配線長
６１　　配線
６２　　配線
６３　　矩形
６４　　ビア
６５　　ビア
６６　　配線
６７　　配線
６８　　配線
６９　　矩形
８１　　ＭＯＳトランジスタ
８２　　ＭＯＳトランジスタ
８３　　ペア素子
８４　　ネット
８５　　ネット
８６　　ネット
８７　　ネット
１０１　　ＭＯＳトランジスタ
１０２　　ＭＯＳトランジスタ
１０３　　ＭＯＳトランジスタ
１０４　　ネット
１０５　　ネット
１２１　　ＭＯＳトランジスタ
１２１ｂ　　ＭＯＳトランジスタ
１２２　　ＭＯＳトランジスタ
１２２ｂ　　ＭＯＳトランジスタ
１２３　　ＭＯＳトランジスタ
１２３ｂ　　ＭＯＳトランジスタ
１２４　　ネット
１２５　　ネット
１２６　　ネット
１２７　　ネット
【図１】
2004086509.tif 000003
【図２】
2004086509.tif 000004
【図３】
2004086509.tif 000005
【図４】
2004086509.tif 000006
【図５】
2004086509.tif 000007
【図６】
2004086509.tif 000008
【図７】
2004086509.tif 000009
【図８】
2004086509.tif 000010
【図９】
2004086509.tif 000011
【図１０】
2004086509.tif 000012
【図１１】
2004086509.tif 000013
【図１２】
2004086509.tif 000014