(57)【要約】【課題】配線層レイアウトデータの改版を行なうとき、改版層数を削減して改版コストを低減し、かつ改版による回路特性の劣化を防止し得るレイアウトデータの改版方法を提供する。【解決手段】修正された新ネットリストを読み込む工程と、レイアウトデータと新ネットリストを比較する工程と、比較結果に基づいてエラーネットを確認する工程と、エラーネットの配線要素に基づいて改版対象層と非改版対象層を設定する工程と、エラーネットの配線要素を浮き配線として設定する工程と、浮き配線を改版ネットの配線要素として割り当てる工程と、改版前ネットと浮き配線に基づいて改版ネットを生成する工程と、改版ネットの枝きり処理を行う工程とを備えた。【選択図】図３
2008250490.tif 000002
【特許請求の範囲】
【請求項１】
半導体集積回路装置の配線層のレイアウトデータを改版する改版方法であって、
修正された新ネットリストを読み込む工程と、
前記レイアウトデータと前記新ネットリストを比較する工程と、
前記比較結果に基づいてエラーネットを確認する工程と、
前記エラーネットの配線要素に基づいて改版対象層と非改版対象層を設定する工程と、
前記エラーネットの配線要素を浮き配線として設定する工程と、
前記浮き配線を改版ネットの配線要素として割り当てる工程と、
改版前ネットと前記浮き配線に基づいて改版ネットを生成する工程と、
前記改版ネットの枝きり処理を行う工程と
を備えたことを特徴とする配線層レイアウトデータの改版方法。
【請求項２】
前記浮き配線を改版ネットの配線要素として割り当てる工程は、
改版対象層と非改版対象層の浮き配線とで仮配線を行い、その仮配線と改版前の浮き配線を照合して、合致する浮き配線を改版ネットに割り当てることを特徴とする請求項１記載の配線層レイアウトデータの改版方法。
【請求項３】
前記浮き配線を改版ネットの配線要素として割り当てる工程は、
前記浮き配線をベースとして経路探索を行なうことを特徴とする請求項１記載の配線層レイアウトデータの改版方法。
【請求項４】
前記浮き配線を改版ネットの配線要素として割り当てる工程は、
浮き配線領域と改版ネット領域の重なりを検出し、前記浮き配線領域内の浮き配線を、重なりが検出された改版ネット領域に割り当てることを特徴とする請求項１記載の配線層レイアウトデータの改版方法。
【請求項５】
前記改版ネットの枝きり処理を行う工程は、
改版ネットの端子から他の端子への接続トレースを行なって、枝配線であるか否かを判別することを特徴とする請求項１記載の配線層レイアウトデータの改版方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、半導体集積回路装置の配線層レイアウトデータの改版方法に関するものである。
半導体集積回路装置の設計に際し、一旦設計されたチップに対しセルの追加等の小規模な回路変更を施して再設計することが行なわれている。このような場合には、回路変更にともなって、チップ基板上の多数層の配線層にレイアウトされる配線の繋ぎ替えが必要となる。そこで、配線の繋ぎ替えを行なうために各配線層を形成するためのマスクあるいはレチクルの改版が行なわれる。多数の配線層を形成するレチクルの改版には多くの労力が必要となるため、改版層数を削減して、改版作業に要する時間及びコストを削減することが必要となっている。
【背景技術】
【０００２】
従来、ツール（自動配線装置）を使用した配線層の改版を自動配線装置で行う場合には、すべての配線層について改版を行なう必要がない場合にも、ツールの制限等により全配線層に亘って改版が行なわれている。このような改版方法では、すべての改版層においてマスクの改版が必要となるため、改版コストが上昇する。そこで、小規模な回路変更に際し、ツールを使用しながら、改版層数を削減して、改版コストを低減するための種々の試みが実施されている。
【０００３】
特許文献１，２には、各配線層に迂回配線（ダミー配線）をあらかじめレイアウトし、回路変更による配線層の改版時には、その迂回配線を使用して配線の繋ぎ替えを行なうことにより、改版層数を削減する方法が開示されている。
【０００４】
一方、迂回配線をあらかじめレイアウトすることなく、作業者による入力作業により改版層を作成する改版方法も実施されている。その改版方法を図６１に従って説明する。
まず、ＣＡＤ装置の表示装置に表示されたレイアウトデータと、新たに修正された新ネットリストとを作業者が目視で比較して修正する箇所を確認し（ステップ１０１）、作業者が改版層を決定する（ステップ１０２）。次いで、ＣＡＤ装置に新ネットリストを読み込み（ステップ１０３）、改版層の設定を入力し（ステップ１０４）、画面上で新ネットリストに対しエラーとなる配線を作業者が修正する（ステップ１０５）。
【０００５】
次いで、修正されたレイアウトデータと新ネットリストとが一致するか否かをチェックする（ステップ１０６）。そして、エラーがない場合には改版処理を終了し、エラーがある場合にはステップ１０１に戻って同様な作業を繰り返す。
【０００６】
このような処理により、すべての配線層を改版することなく、新ネットリストに対応するレイアウトデータが生成される。
【特許文献１】特開平１１−１７６９３９号公報
【特許文献２】特開２０００−２５２３６０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
特許文献１，２に記載された改版方法では、迂回配線を使用して配線層の改版を行なっても、その迂回配線が修正用の配線として必ずしも最適ではなく、冗長な配線となって当該迂回配線が接続される回路の特性を劣化させる原因となる。このため、迂回配線を使用することができず、結果的に改版層数を削減することができない。
【０００８】
また、迂回配線の利用率を向上させるために、各配線層の空き領域に迂回配線をできるだけ形成し、その迂回配線の一部を修正用の配線として使用する方法も考えられているが、修正用の配線として使用した迂回配線には、不要な配線が付加された状態となるため、配線容量が増大して回路特性を劣化させてしまう。
【０００９】
図６１に示す改版方法では、作業者の入力に基づく処理が多く、その作業の難易度も高い。このため、改版作業に時間を要するという問題点がある。
この発明の目的は、配線層レイアウトデータの改版を行なうとき、改版層数を削減して改版コストを低減し、かつ改版による回路特性の劣化を防止し得るレイアウトデータの改版方法を提供することにある。
【課題を解決するための手段】
【００１０】
上記目的は、修正された新ネットリストを読み込む工程と、前記レイアウトデータと前記新ネットリストを比較する工程と、前記比較結果に基づいてエラーネットを確認する工程と、前記エラーネットの配線要素に基づいて改版対象層と非改版対象層を設定する工程と、前記エラーネットの配線要素を浮き配線として設定する工程と、前記浮き配線を改版ネットの配線要素として割り当てる工程と、改版前ネットと前記浮き配線に基づいて改版ネットを生成する工程と、前記改版ネットの枝きり処理を行う工程とを備えた配線層レイアウトデータの改版方法により達成される。
【発明の効果】
【００１１】
本発明によれば、配線層レイアウトデータの改版を行なうとき、改版層数を削減して改版コストを低減し、かつ改版による回路特性の劣化を防止し得るレイアウトデータの改版方法を提供することができる。
【発明を実施するための最良の形態】
【００１２】
以下、この発明を具体化した一実施の形態を図面に従って説明する。図２は、半導体集積回路装置の多層配線層のレイアウトをネットリストに基づいて自動的に生成し、あるいは各配線層の改版処理を自動的に行う自動配線装置を示す。
【００１３】
この自動配線装置は、ＣＰＵ１と、メモリ２と、記憶装置３と、表示装置４と、入力装置５と、ドライブ装置６を備え、これらはバス７を介して相互に接続されている。また、ドライブ装置６は外部の記録媒体８にアクセス可能である。
【００１４】
ＣＰＵ１は、メモリ２を利用してプログラムを実行し、半導体集積回路装置の配線層のレイアウト及び改版処理を実行する。メモリ２には、各種処理を実行するためのプログラム及びデータが格納されている。
【００１５】
表示装置４は、レイアウト表示、パラメータ入力画面等の表示に用いられ、ＣＲＴ、ＬＣＤ、ＰＤＰなどで構成される。入力装置５は、作業者が操作するキーボード、マウス等である。
【００１６】
記憶装置３は、磁気ディスク装置、光ディスク装置、光磁気ディスク装置等で構成され、プログラムデータ、ネットリストやレイアウトデータ等の各種データが格納されている。ＣＰＵ１は、入力装置５等からの指令信号に応答してプログラム、データをメモリ２に転送し、それを実行する。
【００１７】
ＣＰＵ１が実行するプログラムは、ドライブ装置６を介して記録媒体８から記憶装置３に取り込まれる。記録媒体８は、磁気テープ、メモリーカード、フレキシブルディスク、光ディスク、光磁気ディスクなどで構成される。
【００１８】
図３は、上記のような自動配線装置による配線層の改版処理を示す。この改版処理に先立って、半導体集積回路装置の回路設計と、ネットリストの生成が行なわれ、そのネットリストに基づいて回路セルのレイアウト設計及び各回路セルを接続する多数層の配線レイアウト設計が行なわれている。そして、回路セルの小規模な変更により配線層を改版する必要が生じたとき、自動配線装置で図３に示す改版処理が行われる。
【００１９】
改版処理が開始されると、ＣＰＵ１は回路セルの変更にともなって生成された新ネットリストを読み込む（ステップ１）。
次いで、新ネットリストから追加セルの有無を確認し（ステップ２）、結線チェックを行う（ステップ３）。ステップ３の結線チェックは、新ネットリストと旧ネットリストとの比較を行い、変更されたネットや追加されたセルが存在する部分で発生するエラーネットを検出する。
【００２０】
次いで、ＣＰＵ１は各エラーネットの範囲（Ｘ−Ｙ座標上での最大値と最小値）を確認し、エラーネットを浮き配線候補としてメモリ２に格納する（ステップ４）。浮き配線は、いずれのネット名（又はネット番号）を持たない配線要素（配線、ビア、コンタクト）である。
【００２１】
次いで、ＣＰＵ１はエラーネットの情報に基づいて、レイアウトを修正するマスクの層（改版対象層）を設定する（ステップ５）。このとき、ＣＰＵ１はエラーと判断したネットの要素（配線、ビア）が含まれるマスク層をレイアウトデータに基づいて確認し、新ネットリストに基づいてエラーネットを修正するために必要となる配線層を改版対象層として設定する。
【００２２】
また、ＣＰＵ１は非改版対象層（改版対象層以外の配線層）のデータの変更を禁止する。このデータの変更は、形状や位置の変更、削除を禁止するものである。非改版対象層の変更を禁止することにより、不用意なデータの変更、削除を未然に防止する。なお、ネット名やネット番号の変更は可能とする。
【００２３】
次いで、改版対象層においてメモリ２に記憶した浮き配線候補のデータのうち、設定された改版対象層に存在するデータを削除する（ステップ６）。このとき、浮き配線候補のデータが改版対象層以外の層に存在する場合、そのデータを浮き配線データとして設定し、メモリ２に記憶する。
【００２４】
レイアウトデータに含まれる配線要素（配線、ビア）は座標値、形状、ネット番号マスクの層番号を備えている。ＣＰＵ１は、配線層の層番号に基づいて、当該配線要素が改版対象層に存在するか否かを判断する。
【００２５】
次いで、ＣＰＵ１は新ネットリストに基づいて、メモリ２に記憶した浮き配線にネット番号を割り当てる（ステップ７）。その割り当て方法については、複数の方法を詳細に後述する。
【００２６】
次いで、ＣＰＵ１はステップ６で削除した改版対象層の浮き配線の復元処理を行う（ステップ８）。その復元方法についても詳細に後述する。そして、改版対象層の浮き配線を利用しながらエラー配線の修正を行う（ステップ９）。この修正において、ＣＰＵ１はステップ４で確認したエラーネットに対して、配線、ビア等を追加し、新ネットリストに対応する配線データを作成し、レイアウトデータに格納する。このとき、ステップ２において追加セルが必要となった場合、空き領域にセルを追加し、既存のセルと追加セルとを接続する配線を作成する。
【００２７】
そして、浮き配線の枝きり処理を行い（ステップ１０）、次に新ネットリストとレイアウトデータとが一致するか否かをチェックし（ステップ１１）、エラーがない場合には処理を終了し、エラーが存在する場合にはステップ５に復帰する。
【００２８】
上記のような改版処理では、エラーネットの修正に際し、改版対象層及び非改版対象層の浮き配線を利用して修正を行なって、改版層数の削減を図るとともに、ステップ９でのエラー配線の修正時に、冗長な配線の発生を防止する。
【００２９】
すなわち、図１（ａ）に示すように、ステップ４で確認されたエラーネットの範囲内に、浮き配線Ｄ，Ｅ，Ｃが存在し、新ネットリストに基づくエラー配線の修正によりコンタクトＡと同Ｂを接続する必要がある場合について説明する。
【００３０】
ステップ７で、浮き配線の割り当てを行なうとき、エラーネットの範囲内に存在する浮き配線Ｄ，Ｅ，Ｃにすべて同一のネット番号を付し、図１（ｂ）に示すように、コンタクトＡと浮き配線Ｄ，Ｅを追加配線１０ａで接続し、コンタクトＢと浮き配線Ｅ，Ｃを追加配線１０ｂで接続すると、浮き配線Ｄ，Ｃは冗長な配線となる。
【００３１】
そこで、図１（ｃ）に示すように、浮き配線Ｅだけを使用してコンタクトＡ，Ｂを追加配線１０ｃ，１０ｄで接続すれば、冗長な配線は発生しないので、ステップ７ではこのような浮き配線の割り当てを行なう。
（ステップ７の浮き配線の割り当て処理及び改版前配線の復元方法の第一の例）
図４〜図９は、ステップ７の浮き配線の割り当て処理の第一の例を示す。図４は、旧ネットリストに基づいて基板上にレイアウトされた多数のセル１１と、各セルを接続するための多層の配線層のうち、第一層配線Ｍ１〜第三層配線Ｍ３からなる原レイアウトを示す。ここでの原レイアウトでは、ＡとＢ，Ｃ，Ｄが接続され、ＥとＦが接続され、ＧとＨが接続されている。なお、第一層と第二層の配線を接続するビアを黒丸で表示し、第二層と第三層の配線を接続するビアを黒三角で表示している。
【００３２】
ここで、他の部分でセルの追加があり、新ネットリストに基づいてエラーネットが確認され、第一層及び第二層配線Ｍ１，Ｍ２を改版層とし、第三層配線Ｍ３を非改版層とする。そして、ＡとＦ、ＥとＢ、ＧとＣ，Ｄ，Ｈを接続するように繋ぎ替えを行なう場合について説明する。
【００３３】
まず、図５に示すように、第三層配線Ｍ３において上記繋ぎ替えにより浮き配線となった配線Ｍ３ｆ１〜Ｍ３ｆ４を抽出して配線存在域とし、その配線存在域の周囲１グリッドを含む範囲を配線可能領域とし、その他の部分を配線禁止領域として、各領域をメモリ２に格納する。図５において、４本の第三層配線が浮き配線Ｍ３ｆ１〜Ｍ３ｆ４となる。なお、エラーネットに属さない第三層配線Ｍ３は、浮き配線とならない。
【００３４】
次いで、図６に示すように、図４に示す原レイアウトから改版対象層である第一層及び第二層配線Ｍ１，Ｍ２を削除する。このとき、エラーネットに含まれない配線は削除しない。
【００３５】
次いで、図７に示すように、第一層及び第二層配線Ｍ１，Ｍ２と第三層の配線可能領域を使用して、ＡとＦ、ＥとＢ、ＧとＣ，Ｄ，Ｈを接続するように仮配線を行なう。すると、図５で示した浮き配線Ｍ３ｆ１，Ｍ３ｆ２は新たなネットＡ−Ｆ上に位置し、浮き配線Ｍ３ｆ４の一部はネットＧ−ＣＤＨ上に位置する。また、浮き配線Ｍ３ｆ３は新たなネット上には位置しないので、使用しない。そして、このような仮配線をメモリ２に格納する。
【００３６】
次いで、図８に示すように、図４に示す原レイアウト上で新ネットリストに対しエラーとなる第一層及び第二層配線Ｍ１，Ｍ２を削除し、図７の仮配線で割り当てた浮き配線Ｍ３ｆ１，Ｍ３ｆ２，Ｍ３ｆ４を配置する。そして、図９に示すように、割り当てた浮き配線Ｍ３ｆ１，Ｍ３ｆ２，Ｍ３ｆ４が新ネットリストを構成するように再配線を行う。このとき、浮き配線Ｍ３ｆ３はいずれのネットにも使用しない。以上で、ＡとＦ、ＥとＢ、ＧとＣ，Ｄ，Ｈを接続する新ネットが形成される。
【００３７】
上記のような浮き配線の割り当て方法では、非改版層の浮き配線部分を配線可能領域として設定し、その浮き配線を削除した状態で非改版層に新ネットに対応する仮配線を行い、その仮配線に一致部分の多い浮き配線を新ネットに利用する。従って、仮配線に一致しない浮き配線を新ネットの配線として使用しないようにすることができるので、新ネットでの冗長な配線の発生を防止することができる。
（ステップ７の浮き配線の割り当て処理の第二の例）
図１０〜図１７は、ステップ７の浮き配線の割り当て処理の第二の例を示す。この例は、図１０に示すように、新ネットで端子Ａ，Ｂを接続しようとするとき、端子Ａ，Ｂ間で広範囲に多数の浮き配線Ｌ〜Ｖが存在する場合、その中から新ネットに割り当てる浮き配線を選択する方法を示すものである。浮き配線Ｌ〜Ｖは、改版層及び非改版層のいずれかに位置し、両端にビアがあるものとする。
【００３８】
図１１は、図１０に示す端子Ａ，Ｂを含む領域１２を拡大して示す。図１１に示す配線禁止領域１３は、マクロセル等が搭載されていて配線できない領域、あるいは改版対象層において配線占有率（配線密度）の高くて配線できない領域を示す。
【００３９】
図１２は手順１を示す。まず、端子Ａから全方向に一定区画分（図１２では４区画分）の配線領域ＷＡを設定し、この配線領域ＷＡ内に浮き配線の一部が含まれるか否かを判別する。ここで、浮き配線が含まれない場合には、さらに広い配線領域を設定して、同様に判別する。また、設定した配線領域に複数の浮き配線が含まれる場合には、優先順位はないものとする。図１２では、浮き配線Ｎ，Ｔが含まれていることになる。
【００４０】
図１３は、手順２を示す。手順１で配線領域ＷＡに含まれた浮き配線Ｎ，Ｔを取り囲む一定区画分（図１３では１区画分）を加えて新たな配線領域ＷＡとする。
次いで、図１４に示すように、設定された配線領域ＷＡが１つの矩形でない場合には配線領域ＷＡを複数の矩形領域ＷＡ１〜ＷＡ３に分割する。次いで、図１５に示すように、矩形領域ＷＡ２，ＷＡ３の最大座標位置を起点１４ａ，１４ｂとして手順１と同様に新たな配線領域ＷＡ４，ＷＡ５を拡大する。すると、浮き配線Ｓが配線領域ＷＡ５に含まれるため、図１６に示すように、配線領域ＷＡ４を配線領域候補から外す。
【００４１】
次いで、配線領域ＷＡ５の最大座標位置から配線領域を拡大していく。そして、拡大した配線領域が配線禁止領域１３に達した場合には、その方向への拡大を中止する。
このようにして、配線領域ＷＡを拡大していき、最終的に図１７に示す配線領域ＷＡ６が得られる。そして、配線領域ＷＡ６内に位置する浮き配線Ｔ，Ｓ，Ｌを端子Ａ，Ｂを接続する新ネットに割り当てる。
【００４２】
このような割り当て方法によれば、浮き配線を繋いでいくことにより配線領域ＷＡ６が生成されるため、配線領域ＷＡ６内の浮き配線Ｔ，Ｓ，Ｌを新ネットに割り当てれば、新ネットでの冗長な配線の発生を防止することができる。
（ステップ７の浮き配線の割り当て処理の第三の例）
図１８〜図２９は、ステップ７の浮き配線の割り当て処理の第三の例を示す。この例は、図１８に示す端子Ａ，Ｂを新ネットで接続しようとするとき、端子Ａ，Ｂの双方から配線領域を検索する方法を示す。この例では、配線禁止領域１３が２箇所設定されている。
【００４３】
図１９〜図２２に示すように、端子Ａから配線領域を検索する方法は、前記第三の例と同様である。図２２では、矩形領域ＷＡ２，ＷＡ３の最大座標位置を起点１４ａ，１４ｂとして配線領域を拡大する手順を示す。
【００４４】
図２３は、端子Ｂ側から配線領域を検索する手順を示す。端子Ａの場合と同様に端子Ｂから全方向に一定区画分（図１２では６区画分）の配線領域ＷＡ６を設定し、この配線領域ＷＡ６内に浮き配線Ｐの一部が含まれている。
【００４５】
そして、配線領域ＷＡ６に含まれた浮き配線Ｐを取り囲む１区画分を加えて新たな配線領域を設定する。そして、その配線領域が矩形でない場合には矩形に分割し、その起点１５ａ，１５ｂから配線領域を拡大する。
【００４６】
図２４は、前記起点１４ａからそれぞれ一定区画分ずつ配線領域を拡大し、さらに浮き配線Ｌ，Ｓを取り囲む１区画分を加えて新たな配線領域ＷＡ７を設定した状態を示す。
図２５は、前記起点１４ｂからそれぞれ一定区画分ずつ配線領域を拡大し、さらに浮き配線Ｓを取り囲む１区画分を加えて新たな配線領域ＷＡ８を設定した状態を示す。拡大した配線領域が配線禁止領域１３に達した場合には、その方向への拡大を中止する。
【００４７】
そして、図２６に示すように、配線領域ＷＡ７と同ＷＡ８を重ね合わせた配線領域ＷＡ９を設定する。
図２７は、起点１５ａから一定区画分ずつ配線領域を拡大し、さらに浮き配線Ｘを取り囲む１区画分を加えたとき、浮き配線Ｍの一部を含んだため、浮き配線Ｍを取り囲む１区画分がさらに加えられた配線領域ＷＡ１０が設定された状態を示す。
【００４８】
そして、図２８に示すように、配線領域ＷＡ１０を矩形領域に分割し、その矩形領域の起点１６ａ，１６ｂからさらに配線領域を拡大する。なお、配線領域ＷＡ９を分割した矩形領域の起点１７からは、配線禁止領域１３に阻まれてそれ以上の拡大はできない。
【００４９】
この結果、端子Ａ，Ｂは図２９に示す配線領域ＷＡ１１で接続される。そして、配線領域ＷＡ１１内に位置する浮き配線を端子Ａ，Ｂを接続する新ネットに割り当てる。
このような割り当て方法によれば、浮き配線を繋いでいくことにより配線領域ＷＡ１１が生成されるため、配線領域ＷＡ１１内の浮き配線を新ネットに割り当てれば、新ネットでの冗長な配線の発生を防止することができる。
（ステップ７の浮き配線の割り当て処理の第四の例）
図３０〜図３６は、ステップ７の浮き配線の割り当て処理の第四の例を示す。この例は、改版層の配線密度を考慮に入れ、かつ最短経路となる浮き配線を割り当てる方法を示す。
【００５０】
図３０に示すように、まず端子Ａ，Ｂを両角部とする矩形の割り当て対象範囲１８を設定する。端子Ａ，Ｂ間には多数の浮き配線Ｃ〜Ｊが存在している。なお、改版対象層は２層とする。
【００５１】
次いで、各改版対象層の配線占有率の平均値と、区画毎の配線占有率とを求め、図３１に示すように、まず第一の改版対象層について、配線占有率が平均値より高い第一の領域１９ａを抽出してマッピングする。
【００５２】
次いで、図３２に示すように、第二の改版対象層について、配線占有率が平均値より高い第二の領域１９ｂを抽出してマッピングする。
そして、図３３に示すように、第一及び第二の領域１９ａ，１９ｂの重複領域を禁止領域２０としてマッピングする。
【００５３】
次いで、端子Ａから端子Ｂに向かって新ネットに割り当てる浮き配線の検索を行う。このとき、割り当て対象となる浮き配線は、検索対象範囲内に浮き配線の両端が包含され、かつ浮き配線の両端が禁止領域２０に包含されていない浮き配線である。図３４において、浮き配線Ｅ，Ｆ，Ｈは割り当て対象外である。
【００５４】
ここで、図３５に示すように、まず端子Ａに最も近い浮き配線Ｃが選択され、次いで浮き配線Ｃの右端から端子Ｂまでの割り当て対象範囲１８ａを設定し、同様に検索する。図３５において、浮き配線Ｄが新たに割り当て対象外となる。そして、浮き配線Ｃに最も近い浮き配線Ｇが選択され、次いで浮き配線Ｇの右端から端子Ｂまでの割り当て対象範囲を設定し、同様に検索する。
【００５５】
このような処理により、図３６に示すように、端子Ａ，Ｂ間の新ネットに割り当てる浮き配線Ｃ，Ｇ，Ｊが検索される。
上記のような割り当て方法によれば、端子Ａ，Ｂ間の新ネットに割り当てる浮き配線を、最短経路でかつ配線密度を考慮に入れながら効率的に選択することができる。
（ステップ７の浮き配線の割り当て処理の第五の例）
図３７〜図４０は、ステップ７の浮き配線の割り当て処理の第五の例を示す。この例は、浮き配線を基にして改版ネットを検索することにより、浮き配線を改版ネットに割り当てる方法を示す。
【００５６】
図３７に示すように、浮き配線２１の周囲に浮き配線領域２２を設定する。そして、その浮き配線領域２２がネットの改版が生じている改版ネット領域２３ａ，２３ｂと重なるか否か判別する。浮き配線領域２２が改版ネット領域２３ａ，２３ｂのいずれにも重ならない場合には、図３８に示すように、浮き配線領域２２を全方向に均等に拡大する。
【００５７】
前記浮き配線領域２２は、図３９に示すように、浮き配線２１を上下左右に数グリッドずつ拡大する事により設定され、その浮き配線領域２２をさらに拡大する場合には、上下左右にさらに数グリッドずつ拡大する。
【００５８】
図４０は、前記改版ネット領域２３ａ，２３ｂの設定方法を示す。同図に示すように、改版ネット２５が接続される各セルの端子２４ａ〜２４ｃのＸ−Ｙ座標の最大値と最小値を求め、この最大値と最小値で設定される４点から改版ネット領域が設定される。
【００５９】
図３８において、浮き配線領域２２が改版ネット領域２３ａのいずれかに重なる場合には、浮き配線領域２２内の浮き配線に改版ネット番号を割り当て、トライアル配線を施して結線可能か否かを判定する。結線可能である場合には、改版ネットの動作タイミング、配線長、改版ネットの各接続端子をセルで駆動可能か否か等を検証する。そして、検証結果が良好であれば、浮き配線２１を改版ネットに割り当てる。
【００６０】
また、図３８に示すように、浮き配線領域２２に複数の改版ネット領域２３ａ，２３ｂが重なる場合には、原則としてまず浮き配線領域２２に対し距離が近い方を選択して、上記のような処理を行う。
【００６１】
上記のような割り当て方法によれば、浮き配線２１を基に改版ネットを検索するので、改版ネット領域から浮き配線を検索する方法に比して、浮き配線の利用率を向上させることができる。
【００６２】
従って、改版層における配線トラックのスペースを空けて、配線の結線率を向上させることが可能となる。
（ステップ１０の浮き配線の枝きり処理の例）
図４１〜図４６は、ステップ１０の浮き配線の枝きり処理の例を示す。図４１は、浮き配線を利用して接続した改版ネットを示す。この改版ネットは、第一層配線層Ｍ１〜第四層配線層Ｍ４の浮き配線を利用している。
【００６３】
図４１では、端子Ａ，Ｂ，Ｅを接続する改版ネットが生成されているが、線分３−６、線分６−７は枝配線であり、線分１０−１１は未利用浮き配線である。
ここで、枝配線及び未利用浮き配線を判別するために、各端子Ａ，Ｂ，Ｃ間で接続トレースを行なう。すなわち、図４２に示すように、例えば、端子Ａから他の端子Ｂ，Ｅに向かってトレースを行い、端子Ｂ，Ｅに達した場合には、各線分に到達フラグ（○で示す）を付与する。
【００６４】
また、端子Ｂ，Ｅに到達しなかった場合には、バックトレースして到達フラグが付与されている線分するまでの線分に未到達フラグ（×で示す）を付与する。また、トレースされなかった線分にも未到達フラグを付与する。
【００６５】
このような処理により、線分３−６、線分６−７、線分１０−１１が枝配線あるいは未利用浮き配線であることが判別される。
次いで、図４３に示すように、枝配線のうち、改版対象層の線分３−６は無条件で削除する。さらに、図４４に示すように、改版ネットを構成するために不要と判断できる枝配線をネット配線対象から外し、他の改版ネット生成時に使用可能とする。ここでは線分６−７が改版ネット配線対象から除外される。
【００６６】
次いで、図４５に示すように、未利用浮き配線を改版ネット配線対象から除外し、他の改版ネット生成時に使用可能とする。ここでは、線分１０−１１が除外される。
この結果、図４６に示すように、端子Ａ，Ｂ，Ｅを接続する改版ネットから線分６−７、１０−１１が除外され、これらの線分は、他の改版ネット作成時に利用可能な浮き配線となる。
【００６７】
上記のような処理により、改版ネットの枝配線を削除して、冗長となる配線を削除することができる。従って、改版ネットの配線容量を削減し、改版対象から外した浮き配線を他の改版ネットで使用することができるので、浮き配線の利用効率を向上させることができる。
（ステップ８の改版前配線の復元処理の第一の例）
図４７〜図５３は、ステップ８の改版前配線の復元処理の第一の例を示す。図４７は、改版前ネットを示し、端子Ａ，Ｂ，Ｃが接続されるとともに、端子Ｄ，Ｅが接続されている。そして、この改版前ネットを、端子Ａ，Ｂ，Ｅを接続し、端子Ｄ，Ｅは利用しないような繋ぎ替えを行なう場合について説明する。
【００６８】
図４８に示すように、まず改版対象ネットを構成する配線やビアを認識し、メモリ２に記憶する。次いで、図４９に示すように、改版対象層の配線を仮削除し、改版ネット領域内の浮き配線の仮割り当てを行なう。
【００６９】
すなわち、第二層及び第四層配線層Ｍ２，Ｍ４が改版対象層であると、仮削除される線分は、１−２、４−５、３−６、７−８、９−１０、１１−１２となる。また、端子Ａ，Ｂ，Ｅを含む改版ネット領域２６内の浮き配線は、線分２−３、３−４、６−７であり、これらを改版ネットに仮割り当てする。
【００７０】
次いで、図５０に示すように、改版ネット領域２６内の改版対象層を復元する。復元される線分は、１−２、４−５、３−６、７−８となる。
次いで、図５０に示すデータを基にして端子Ａ，Ｂ，Ｅが接続されるように改版ネットを生成する。すると、図５１に示すように、線分２−１２が追加され、線分３−６、７−８は端子Ｃに接続する配線であるので、例えば線分７−８を削除する。すると、図５２に示す改版前ネットに対し、図５３に示す改版ネットが生成される。
【００７１】
上記のような処理により、改版前のネットを改版ネットに利用するので、改版前ネットに対する改版ネットの動作タイミングの変化等を抑制することができる。また、既に配線されているネットを利用して改版ネットを生成するため、改版ネットの生成処理時間を短縮することができる。
（ステップ８の改版前配線の復元処理の第二の例）
図５４〜図６０は、ステップ８の改版前配線の復元処理の第二の例を示す。図５４は、改版前ネットを示し、端子Ａ，Ｂ，Ｃが接続されるとともに、端子Ｄ，Ｅが接続されている。そして、この改版前ネットを、端子Ａ，Ｂ，Ｄを接続する改版ネットと、端子ＣＥを接続する改版ネットに繋ぎ替える場合について説明する。なお、ここではＭ２，Ｍ４を改版層とし、Ｍ１，Ｍ３を非改版層とする。
【００７２】
図５５に示すように、まず改版前ネットの改版対象層Ｍ２，Ｍ４にある配線を削除し、その配線をメモリ２に記憶する。ここで、削除される配線は、線分１−２、３−６、４−５、７−８、９−１０、１１−１２である。
【００７３】
次いで、図５６に示すように、非改版層Ｍ１，Ｍ３の浮き配線を改版ネットに割り当てる。ここでは、線分Ａ−１、２−３、３−４、５−Ｂ、６−７、９−Ｄが端子Ａ，Ｂ，Ｄを接続する改版ネットに割り当てられ、線分Ｅ−１２、１０−１１、Ｃ−８が端子Ｃ，Ｅを接続する改版ネットに割り当てられる。
【００７４】
次いで、図５７に示すように、改版対象層Ｍ２，Ｍ４にあった改版前ネットを復元する。すると、同図に二重線で示す線分１−２、４−５、３−６、７−８、９−１０、１１−１２で改版前ネットが復元される。
【００７５】
次いで、改版前ネットの復元により、端子Ａ，Ｂ，Ｄを接続する改版ネットで、端子Ａ，Ｂ，Ｄ以外に接続されていないかをチェックする。すると、図５８に示すように、線分７−８と線分９−１０がバイオレーションとなる。
【００７６】
そこで、図５９に示すように、線分７−８と線分９−１０を削除すると、非改版層Ｍ１，Ｍ３での浮き配線を改版ネットに割り当てる作業が終了する。この状態では、図６０に示すように、非改版層Ｍ１，Ｍ３の浮き配線を端子Ａ，Ｂ，Ｄを接続する改版ネットに割り当てられる。そして、線分７−９は改版層で生成され、端子Ｅ，Ｃを接続する改版ネットの線分８−１０も改版層で生成される。
【００７７】
上記のような処理により、改版前のネットを改版ネットに利用するので、改版前ネットに対する改版ネットの配線容量、配線抵抗等の変化を抑制することができる。従って、動作タイミングの変化等を抑制して、動作タイミングの不適合による動作不良の発生を防止することができる。また、既に配線されているネットを利用して改版ネットを生成するため、改版ネットの生成処理時間を短縮することができる。
（付記１）半導体集積回路装置の配線層のレイアウトデータを改版する改版方法であって、
修正された新ネットリストを読み込む工程と、
レイアウトデータ前記新ネットリストを比較する工程と、
前記比較結果に基づいてエラーネットを確認する工程と、
前記エラーネットの配線要素に基づいて改版対象層と非改版対象層を設定する工程と、
前記エラーネットの配線要素を浮き配線として設定する工程と、
前記浮き配線を改版ネットの配線要素として割り当てる工程と、
改版前ネットと前記浮き配線に基づいて改版ネットを生成する工程と、
前記改版ネットの枝きり処理を行う工程と
を備えたことを特徴とする配線層レイアウトデータの改版方法。
（付記２）前記浮き配線を改版ネットの配線要素として割り当てる工程は、
改版対象層と非改版対象層の浮き配線とで仮配線を行い、その仮配線と改版前の浮き配線を照合して、合致する浮き配線を改版ネットに割り当てることを特徴とする付記１記載の配線層レイアウトデータの改版方法。
（付記３）前記浮き配線を改版ネットの配線要素として割り当てる工程は、
前記浮き配線をベースとして経路探索を行なうことを特徴とする付記１記載の配線層レイアウトデータの改版方法。
（付記４）前記浮き配線を改版ネットの配線要素として割り当てる工程は、
浮き配線領域と改版ネット領域の重なりを検出し、前記浮き配線領域内の浮き配線を、重なりが検出された改版ネット領域に割り当てることを特徴とする付記１記載の配線層レイアウトデータの改版方法。
（付記５）前記改版ネットの枝きり処理を行う工程は、
改版ネットの端子から他の端子への接続トレースを行なって、枝配線であるか否かを判別することを特徴とする付記１記載の配線層レイアウトデータの改版方法。
（付記６）前記改版前ネットと前記浮き配線に基づいて改版ネットを生成する工程は、
改版ネットと改版前ネットで接続の変わらない配線を改版前ネットから復元して改版ネットの配線として利用することを特徴とする請求項１記載の配線層レイアウトデータの改版方法。
【図面の簡単な説明】
【００７８】
【図１】（ａ）〜（ｃ）は、本発明の作用を示す説明図である。
【図２】自動配線装置を示すブロック図である。
【図３】自動配線装置の配線層改版処理を示すフローチャートである。
【図４】浮き配線の割り当て処理及び改版前配線の復元方法の第一の例を示す配線図である。
【図５】浮き配線の割り当て処理及び改版前配線の復元方法の第一の例を示す配線図である。
【図６】浮き配線の割り当て処理及び改版前配線の復元方法の第一の例を示す配線図である。
【図７】浮き配線の割り当て処理及び改版前配線の復元方法の第一の例を示す配線図である。
【図８】浮き配線の割り当て処理及び改版前配線の復元方法の第一の例を示す配線図である。
【図９】浮き配線の割り当て処理及び改版前配線の復元方法の第一の例を示す配線図である。
【図１０】浮き配線の割り当て処理の第二の例を示す配線図である。
【図１１】浮き配線の割り当て処理の第二の例を示す配線図である。
【図１２】浮き配線の割り当て処理の第二の例を示す配線図である。
【図１３】浮き配線の割り当て処理の第二の例を示す配線図である。
【図１４】浮き配線の割り当て処理の第二の例を示す配線図である。
【図１５】浮き配線の割り当て処理の第二の例を示す配線図である。
【図１６】浮き配線の割り当て処理の第二の例を示す配線図である。
【図１７】浮き配線の割り当て処理の第二の例を示す配線図である。
【図１８】浮き配線の割り当て処理の第三の例を示す配線図である。
【図１９】浮き配線の割り当て処理の第三の例を示す配線図である。
【図２０】浮き配線の割り当て処理の第三の例を示す配線図である。
【図２１】浮き配線の割り当て処理の第三の例を示す配線図である。
【図２２】浮き配線の割り当て処理の第三の例を示す配線図である。
【図２３】浮き配線の割り当て処理の第三の例を示す配線図である。
【図２４】浮き配線の割り当て処理の第三の例を示す配線図である。
【図２５】浮き配線の割り当て処理の第三の例を示す配線図である。
【図２６】浮き配線の割り当て処理の第三の例を示す配線図である。
【図２７】浮き配線の割り当て処理の第三の例を示す配線図である。
【図２８】浮き配線の割り当て処理の第三の例を示す配線図である。
【図２９】浮き配線の割り当て処理の第三の例を示す配線図である。
【図３０】浮き配線の割り当て処理の第四の例を示す配線図である。
【図３１】浮き配線の割り当て処理の第四の例を示す配線図である。
【図３２】浮き配線の割り当て処理の第四の例を示す配線図である。
【図３３】浮き配線の割り当て処理の第四の例を示す配線図である。
【図３４】浮き配線の割り当て処理の第四の例を示す配線図である。
【図３５】浮き配線の割り当て処理の第四の例を示す配線図である。
【図３６】浮き配線の割り当て処理の第四の例を示す配線図である。
【図３７】浮き配線の割り当て処理の第五の例を示す配線図である。
【図３８】浮き配線の割り当て処理の第五の例を示す配線図である。
【図３９】浮き配線の割り当て処理の第五の例を示す配線図である。
【図４０】浮き配線の割り当て処理の第五の例を示す配線図である。
【図４１】浮き配線の枝きり処理の例を示す配線図である。
【図４２】浮き配線の枝きり処理の例を示す配線図である。
【図４３】浮き配線の枝きり処理の例を示す配線図である。
【図４４】浮き配線の枝きり処理の例を示す配線図である。
【図４５】浮き配線の枝きり処理の例を示す配線図である。
【図４６】浮き配線の枝きり処理の例を示す配線図である。
【図４７】改版前配線の復元処理の第一の例を示す配線図である。
【図４８】改版前配線の復元処理の第一の例を示す配線図である。
【図４９】改版前配線の復元処理の第一の例を示す配線図である。
【図５０】改版前配線の復元処理の第一の例を示す配線図である。
【図５１】改版前配線の復元処理の第一の例を示す配線図である。
【図５２】改版前配線の復元処理の第一の例を示す配線図である。
【図５３】改版前配線の復元処理の第一の例を示す配線図である。
【図５４】改版前配線の復元処理の第二の例を示す配線図である。
【図５５】改版前配線の復元処理の第二の例を示す配線図である。
【図５６】改版前配線の復元処理の第二の例を示す配線図である。
【図５７】改版前配線の復元処理の第二の例を示す配線図である。
【図５８】改版前配線の復元処理の第二の例を示す配線図である。
【図５９】改版前配線の復元処理の第二の例を示す配線図である。
【図６０】改版前配線の復元処理の第二の例を示す配線図である。
【図６１】従来の改版処理を示すフローチャートである。
【符号の説明】
【００７９】
Ｍ３ｆ１〜Ｍ３ｆ４，２１        浮き配線
【図１】
2008250490.tif 000003
【図２】
2008250490.tif 000004
【図３】
2008250490.tif 000005
【図４】
2008250490.tif 000006
【図５】
2008250490.tif 000007
【図６】
2008250490.tif 000008
【図７】
2008250490.tif 000009
【図８】
2008250490.tif 000010
【図９】
2008250490.tif 000011
【図１０】
2008250490.tif 000012
【図１１】
2008250490.tif 000013
【図１２】
2008250490.tif 000014
【図１３】
2008250490.tif 000015
【図１４】
2008250490.tif 000016
【図１５】
2008250490.tif 000017
【図１６】
2008250490.tif 000018
【図１７】
2008250490.tif 000019
【図１８】
2008250490.tif 000020
【図１９】
2008250490.tif 000021
【図２０】
2008250490.tif 000022
【図２１】
2008250490.tif 000023
【図２２】
2008250490.tif 000024
【図２３】
2008250490.tif 000025
【図２４】
2008250490.tif 000026
【図２５】
2008250490.tif 000027
【図２６】
2008250490.tif 000028
【図２７】
2008250490.tif 000029
【図２８】
2008250490.tif 000030
【図２９】
2008250490.tif 000031
【図３０】
2008250490.tif 000032
【図３１】
2008250490.tif 000033
【図３２】
2008250490.tif 000034
【図３３】
2008250490.tif 000035
【図３４】
2008250490.tif 000036
【図３５】
2008250490.tif 000037
【図３６】
2008250490.tif 000038
【図３７】
2008250490.tif 000039
【図３８】
2008250490.tif 000040
【図３９】
2008250490.tif 000041
【図４０】
2008250490.tif 000042
【図４１】
2008250490.tif 000043
【図４２】
2008250490.tif 000044
【図４３】
2008250490.tif 000045
【図４４】
2008250490.tif 000046
【図４５】
2008250490.tif 000047
【図４６】
2008250490.tif 000048
【図４７】
2008250490.tif 000049
【図４８】
2008250490.tif 000050
【図４９】
2008250490.tif 000051
【図５０】
2008250490.tif 000052
【図５１】
2008250490.tif 000053
【図５２】
2008250490.tif 000054
【図５３】
2008250490.tif 000055
【図５４】
2008250490.tif 000056
【図５５】
2008250490.tif 000057
【図５６】
2008250490.tif 000058
【図５７】
2008250490.tif 000059
【図５８】
2008250490.tif 000060
【図５９】
2008250490.tif 000061
【図６０】
2008250490.tif 000062
【図６１】
2008250490.tif 000063