(57)【要約】【課題】  結線位置の取り方の自由度を取り込んだ形で機能ブロック間配線の最適な配線経路の計算をできる様にすることで、効果的にメモリセル周辺の配線チャネル領域の配線混雑度を緩和できる自動配線設計方法を得る。【解決手段】  この自動配線設計方法は、仮想端子Ａ，Ｂ，Ｃ，Ｄを内部配線５ａ，７ａ，７ｂ，７ｃ上に沿って延在させて定義し、該延在させた仮想端子Ａ（Ｂ，Ｃ，Ｄ）上の各位置Ａ1〜ＡNA（Ｂ1〜ＢNB，Ｃ1〜ＣNC，Ｄ1〜ＤND）のうちから機能ブロック間配線９が最適な配線経路（例えば最短経路）となる結線位置を求め、該求めた結線位置上で内部配線５ａ（７ａ，７ｂ，７ｃ）と機能ブロック間配線９とを結線させる。【選択図】  図４
2005086058.tif 000002
【特許請求の範囲】
【請求項１】
半導体集積回路の各機能ブロックの内部配線上に該内部配線と結線される機能ブロック間配線との結線位置を規定する仮想端子を定義し、付与された所定条件の下で各機能ブロック上に定義した仮想端子間を結ぶ機能ブロック間配線が最適な配線経路となる様に前記機能ブロック間配線を設計する自動配線設計方法であって、
前記仮想端子を前記内部配線上に沿って延在させて定義し、該延在させた仮想端子上で取り得る各位置のうちから前記機能ブロック間配線が最適な配線経路となる結線位置を求め、該求めた結線位置上で前記内部配線と前記機能ブロック間配線とを結線させることを特徴とする自動配線設計方法。
【請求項２】
前記内部配線は、電源／ＧＮＤ又はクロックの配線であることを特徴とする請求項１に記載の自動配線設計方法。
【請求項３】
前記内部配線と前記機能ブロック間配線との間に該内部配線の抵抗値に応じて異なる数のコンタクトを配置して前記内部配線と前記機能ブロック間配線とを結線させることを特徴とする請求項１又は請求項２に記載の自動配線設計方法。
【請求項４】
電源／ＧＮＤの配線であるリング状の前記内部配線上に定義される前記仮想端子は、その内部配線上に沿ってリング状に定義されることを特徴とする請求項１〜請求項３の何れかに記載の自動配線設計方法。
【請求項５】
それぞれ同じ機能ブロック上に定義され、それぞれ同じ配線方向に配線される別の機能ブロック間配線と結ばれる複数の前記仮想端子については、互いに前記機能ブロック間配線の前記配線方向に沿った同一直線上に並ばない様に定義されることを特徴とする請求項１〜請求項４の何れかに記載の自動配線設計方法。
【請求項６】
前記機能ブロックは、メモリセルであることを特徴とする請求項１〜請求項５の何れかに記載の自動配線設計方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路の機能ブロック間の配線経路を自動設計する自動配線設計方法に関する。
【背景技術】
【０００２】
一般に、この種の自動配線設計方法では、先ず、各機能ブロックの内部配線上に該内部配線と結線される機能ブロック間配線との結線位置を規定する仮想端子を定義し、そして、付与された所定条件の下で各機能ブロック上に定義した仮想端子間を結ぶ機能ブロック間配線が最適な配線経路となる様に機能ブロック間配線を設計する。
【０００３】
従来の自動配線設計方法では、仮想端子はぽち状に定義されていた。これにより機能ブロックの内部配線と機能ブロック間配線との結線位置は、一意的に指定されていた（特許文献１）。
【０００４】
又、従来の自動配線設計方法では、機能ブロックがビット線・相補ビット線間の微小電位差を利用してデータ読出をするＲＯＭ／ＲＡＭ等のメモリセルの場合、そのメモリセル上に重なる様に機能ブロック間配線が配置されると、そのメモリセルのビット線又は相補ビット線と機能ブロック間配線との間にクロストークが生じてメモリセルが誤動作する虞があった。
【０００５】
その為、従来の自動配線設計方法では、メモリセルに関しては、メモリセル上に重なる様に機能ブロック間配線が配置されることを避けるべく、仮想端子をメモリセルの外枠上に制限して定義していた。
【０００６】
ところが、仮想端子をメモリセルの外枠上に制限して定義すると、メモりセル周辺の配線チャネル領域上の機能ブロック間配線の配線混雑度が増し、これが半導体集積回路のチップ面積の縮小化を妨げるという欠点があった。
【０００７】
この欠点を解決するものとして、メモリセル上に重なる様に機能ブロック間配線を配置した際に生じるクロストークの影響を抑制する技術が提案されている（特許文献２）。この技術により仮想端子をメモリセルの外枠上だけでなく外枠の内側にも定義できる様になり、これによりメモリセル周辺の配線チャネル領域の配線混雑度を或る程度緩和できる様になっている（従来技術２）。
【０００８】
【特許文献１】特開平１０−３２１７２７号公報
【特許文献２】特開２００２−３６８１０６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
上記の従来技術２では、仮想端子を機能ブロックの外枠の内側にも定義できる様にすることで、即ち仮想端子の定義位置（即ち結線位置）の取り方の自由度を拡げることで、メモリセル周辺の配線チャネル領域の配線混雑度を緩和している。
【００１０】
しかしながら、従来技術２では、定義された仮想端子（即ち指定された結線位置）に対して機能ブロック間配線の配線経路の計算が行われる為、仮想端子の定義位置（即ち結線位置）の取り方の自由度を取り込んだ形で機能ブロック間配線の最適な配線経路の計算がされておらず、その為、効果的にメモリセル周辺の配線チャネル領域の配線混雑度を緩和できてないという欠点があった。
【００１１】
この発明は、上述の様な問題を解消する為になされたもので、結線位置の取り方の自由度を取り込んだ形で機能ブロック間配線の最適な配線経路の計算をできる様にすることで、効果的にメモリセル周辺の配線チャネル領域の配線混雑度を緩和できる自動配線設計方法を得るものである。
【課題を解決するための手段】
【００１２】
上記課題を解決するためには、請求項１に記載の発明は、半導体集積回路の各機能ブロックの内部配線上に該内部配線と結線される機能ブロック間配線との結線位置を規定する仮想端子を定義し、付与された所定条件の下で各機能ブロック上に定義した仮想端子間を結ぶ機能ブロック間配線が最適な配線経路となる様に前記機能ブロック間配線を設計する自動配線設計方法であって、前記仮想端子を前記内部配線上に沿って延在させて定義し、該延在させた仮想端子上で取り得る各位置のうちから前記機能ブロック間配線が最適な配線経路となる結線位置を求め、該求めた結線位置上で前記内部配線と前記機能ブロック間配線とを結線させるものである。
【発明の効果】
【００１３】
請求項１に記載の発明によれば、仮想端子を内部配線上に沿って延在させて（即ち仮想端子上での結線位置の取り方に自由度を持たせて）定義し、該延在させた仮想端子上の各位置のうちから機能ブロック間配線が最適な配線経路となる結線位置を求め、該求めた結線位置上で前記内部配線と前記機能ブロック間配線とを結線させる為、結線位置の取り方の自由度を取り込んだ形で機能ブロック間配線の最適な配線経路の計算をでき、これにより効果的に機能ブロック周辺の配線チャネル領域の配線混雑度を緩和できる。
【発明を実施するための最良の形態】
【００１４】
＜実施の形態１＞
この実施の形態１に係る自動配線設計方法は、半導体集積回路の各機能ブロックの内部配線上に該内部配線と結線される機能ブロック間配線との結線位置を規定する仮想端子を定義し、付与された所定条件の下で前記各機能ブロック上に定義した前記仮想端子間を結ぶ機能ブロック間配線が最適な配線経路（例えば最短経路）となる様に前記機能ブロック間配線を設計するものであって、前記仮想端子を前記内部配線上に沿って延在させて（即ち仮想端子上での結線位置の取り方に自由度を持たせて）定義し、該延在させた仮想端子上で取り得る各位置のうちから前記機能ブロック間配線が最適な配線経路となる結線位置を求め、該求めた結線位置上で前記内部配線と前記機能ブロック間配線とを結線させるものである。
【００１５】
以下では、図１の構造の半導体集積回路１を設計する場合を例として、この自動配線設計方法を説明する。この半導体集積回路１は、図１の様に、チップ３上に、２つのメモリセル（機能ブロック）５，７と、メモリセル５の電源／ＧＮＤの幹線配線（内部配線）５ａからメモリセル７の電源／ＧＮＤの幹線配線（内部配線）７ａ，７ｂ，７ｃ上を通過してチップ３の枠上のぽち状の外部端子Ｅに至る様に配線され、それら各幹線配線５ａ，７ａ，７ｂ，７ｃ及び外部端子Ｅとの交点でそれら各幹線配線５ａ，７ａ，７ｂ，７ｃ及び外部端子Ｅと結線された機能ブロック間配線９とを備えて構成される。幹線配線５ａは、例えばメモリセル５上を上下に縦貫されて配置されている。各幹線配線７ａ，７ｂ，７ｃは、例えば共にメモリセル７上を上下に縦貫されて互いに離間されて並列配置されている。各幹線配線７ａ，７ｂ，７ｃの両端は、例えばメモリセル７の周縁上に沿って配置された単一のリング状配線７ｄと接続されている。ここでは、内部配線が電源／ＧＮＤの幹線配線である場合で説明されるが、クロックの幹線配線やその他の種類の配線であってもよい。
【００１６】
図２を参照して、この自動配線設計方法の全体概要を説明する。先ず、半導体集積回路１の論理設計を行なう論理設計工程Ｓ１００を実施する。この論理設計工程Ｓ１００により回路接続情報Ｓ２００が得られる。この回路接続情報Ｓ２００に基づいて半導体集積回路１を構成する種々の配線をチップ３の異なるレイヤへと展開する階層展開工程Ｓ３００が実施される。この階層展開工程Ｓ３００によりそれぞれのレイヤへと配線が割振られた後、この割振られた配線の情報に基づいて回路接続情報Ｓ４００が再度抽出される。この回路接続情報Ｓ４００と半導体集積回路１の配線に関するその他の構成情報である配線構成情報Ｓ５００とに基づいて自動配置配線ツールを用いた配線レイアウト工程Ｓ６００が実施される。この配線レイアウト工程Ｓ６００により半導体集積回路１を構成する配線のレイアウトが決定される。そして、この配線レイアウトの情報に基づいて半導体集積回路１の製造工程の中の写真製版加工工程に用いられるマスクを製造するのに必要なマスク情報Ｓ７００が得られる。
【００１７】
より詳細には、配線レイアウト工程Ｓ６００では、図３を参照して、先ず、チップ３上での各機能ブロック５，７の配置を決定する配置工程Ｓ６１０を実施する。ここでは、図４の様に、各機能ブロック５，７は互いに所定間隔をあけて左右に並べてチップ３上に配置される。
【００１８】
そして、各機能ブロック５，７上の内部配線（ここでは幹線配線５ａ，７ａ，７ｂ，７ｃ）上にそれぞれ、その内部配線と結線される機能ブロック間配線９（図１参照）との結線位置を規定する仮想端子を定義する仮想端子定義工程Ｓ６２０を実施する。ここでは、図４の様に、各機能ブロック５，７の各内部配線５ａ，７ａ，７ｂ，７ｃ上にそれぞれ、その内部配線上に沿って例えばその内部配線の全長に亘って延在される様に仮想端子Ａ，Ｂ，Ｃ，Ｄが定義される。各仮想端子Ａ，Ｂ，Ｃ,  Ｄはそれぞれ、その仮想端子上での結線位置の取り方にその仮想端子の延在長に比例する自由度（それぞれ結線位置Ａ1〜ＡNAのＮA通り，結線位置Ｂ1〜ＢNBのＮB通り，結線位置Ｃ1〜ＣNCのＮC通り，結線位置Ｄ1〜ＤNBのＮD通りの取り方の自由度）を持たされたものとなっている。尚、後述の様に、仮想端子Ａ（Ｂ，Ｃ,  Ｄ）上での各位置Ａ1〜ＡNA（Ｂ1〜ＢNB，Ｃ1〜ＣNB，Ｄ1〜ＤND）のうちから、付与された所定条件の下で機能ブロック間配線９を最短経路にする位置が実際の結線位置として選ばれることになる。尚、ここでは、各仮想端子Ａ，Ｂ，Ｃ，Ｄは回路接続情報Ｓ４００や配線構成情報Ｓ５００に基づいて自動的に定義されるが、設計者による手動操作により任意に設定されてもよい。
【００１９】
そして、上記の回路接続情報Ｓ４００に基づいて各機能ブロック５，７上に定義した仮想端子Ａ，Ｂ，Ｃ，Ｄ間を結ぶ機能ブロック間配線９の概略配線（大凡の通過領域）９ａを指定する概略配線工程Ｓ６３０を実施する。ここでは、概略配線９ａは例えば図４の点線の内側の領域として指定される。
【００２０】
そして、概略配線工程Ｓ６３０で指定された概略配線９ａ上に在る仮想端子Ａ，Ｂ，Ｃ，Ｄに対してそれぞれ、その仮想端子上に配置されるべきコンタクトの配置数に関する情報を付与するコンタクト配置数情報付与工程Ｓ６４０を実施する。
【００２１】
より詳細には、コンタクト配置数情報付与工程Ｓ６４０では、図５及び図４を参照して、先ず工程Ｓ６４１で、各機能ブロック５，７上に仮想端子が定義されているかを確認する。その確認の結果、各機能ブロック５，７上に仮想端子が定義されていない場合は終了し、各機能ブロック５，７上に仮想端子が定義されている場合は工程Ｓ６４２に進む。ここでは、各機能ブロック５，７上に仮想端子Ａ，Ｂ，Ｃ，Ｄが定義されているので工程Ｓ６４２に進む。
【００２２】
そして、工程Ｓ６４２では、その定義されている各仮想端子Ａ，Ｂ，Ｃ，Ｄがその仮想端子自身と結線されるべき機能ブロック間配線（ここでは９）の概略配線９ａ上に在るかを確認する。この確認の結果、その定義されている各仮想端子Ａ，Ｂ，Ｃ，Ｄがその仮想端子自身と結線されるべき機能ブロック間配線９の概略配線９ａ上に無い場合は終了し、その定義されている各仮想端子Ａ，Ｂ，Ｃ，Ｄの何れかがその仮想端子自身と接続されるべき機能ブロック間配線９の概略配線９ａ上に在る場合は工程Ｓ６４３に進む。ここでは、各仮想端子Ａ，Ｂ，Ｃ，Ｄはその仮想端子自身と接続されるべき機能ブロック間配線９の概略配線９ａ上に在るので工程Ｓ６４３に進む。
【００２３】
そして、工程Ｓ６４３では、配線構成情報Ｓ５００に基づいて、その何れかの仮想端子（ここではＡ，Ｂ，Ｃ，Ｄ）の定義されている内部配線５ａ，７ａ，７ｂ，７ｃに関する抵抗値情報が有るかを確認する。この確認の結果、その定義されている内部配線に関する抵抗値情報が有る仮想端子については、工程Ｓ６４４に進み、その仮想端子に対して、その定義されている内部配線の抵抗値に応じて異なる数（抵抗値が大きい程大きな数）のコンタクト数をコンタクト配置数情報として付与して終了し、その定義されている内部配線に関する抵抗値情報が無い仮想端子については、工程Ｓ６４５に進み、その仮想端子に対して、１個のコンタクト数をコンタクト配置数情報として付与して終了する。ここでは、各仮想端子Ａ，Ｂ，Ｃ，Ｄに対して例えば１個のコンタクト数のコンタクト配置数付与情報が付与されるものとする。この様にコンタクト配置数情報付与工程Ｓ６４０が実施される。
【００２４】
そして、図３に戻って、概略配線工程Ｓ６３０で指定した概略配線９ａの範囲内で機能ブロック間配線９の詳細な配線経路を決定する詳細配線工程Ｓ６５０を実施する。より詳細には、詳細配線工程Ｓ６５０では、図６を参照して、以下の様にして仮想端子Ａから各仮想端子Ｂ，Ｃ，Ｄ上を順に通過して外部端子Ｅに至る配線経路の最短経路を求め、該求めた最短経路上に沿って機能ブロック間配線９（図１参照）を設定する。
【００２５】
即ち、先ず、工程Ｓ６５１で、仮想端子Ａから各仮想端子Ｂ，Ｃ，Ｄ上を順に通過して外部端子Ｅに至る配線経路が通過すべき各端子Ａ，Ｂ，Ｃ，Ｄ，Ｅ上の通過点の取り方（例えばＡ→Ｂ１→Ｃ２→Ｄ４→Ｅ等）の組合せ総数Ｗを求める。ここでは、各仮想端子Ａ，Ｂ，Ｃ，Ｄ上での通過させるべき通過点の取り方は、上記の通り、それぞれＮA通り，ＮB通り，ＮC通り，ＮD通りであり、ぽち状の外部端子Ｅ上での通過点の取り方は１通りなので、その組合せ総数Ｗは、Ｗ＝ＮA×ＮB×ＮC×ＮD×１＝ＮA×ＮB×ＮC×ＮD通りとなる。
【００２６】
そして、工程Ｓ６５２で、組合せ総数Ｗの中の各組合せ（例えばＡ→Ｂ１→Ｃ２→Ｄ４→Ｅ等）に対してそれぞれ、その組合せの各通過点を通過する配線経路の最短経路を例えば迷路法，経路探索法又はチャネル配線法を用いて求める。
【００２７】
そして、工程Ｓ６５３で、組合せの総数Ｗの中の各組合せ毎に求めた上記の最短経路のうちで最短の最短経路（ここでは例えばＡ５→Ｂ５→Ｃ５→Ｄ５→Ｅを直線で結んだ配線経路Ｔ）を、仮想端子Ａから各仮想端子Ｂ，Ｃ，Ｄ上を順に通過して外部端子Ｅに至る配線経路の最短経路とし、その最短経路Ｔ上に沿って機能ブロック間配線９を設定する。そして、その最短経路Ｔを与える通過点の組合せの各通過点（ここでは例えばＡ５，Ｂ５，Ｃ５，Ｄ５）を各仮想端子Ａ，Ｂ，Ｃ，Ｄ上での取るべき結線位置とする。この様に詳細配線工程Ｓ６５０が実施される。
【００２８】
そして、図３に戻って、詳細配線工程Ｓ６５０で決定した機能ブロック間配線９と各仮想端子Ａ，Ｂ，Ｃ，Ｄとの交点（ここでは上記の通りＡ５，Ｂ５，Ｃ５，Ｄ５）間に、それら各仮想端子Ａ，Ｂ，Ｃ，Ｄに付与した上記のコンタクト配置数情報で指定された個数のコンタクト１０を互いに並列に配置するコンタクト配置工程Ｓ６６０を実施する。
【００２９】
ここでは上記の通り各仮想端子Ａ，Ｂ，Ｃ，Ｄにはそれぞれ１個のコンタクト数のコンタクト配置数付与情報が付与されているので、図７の様に、各仮想端子Ａ，Ｂ，Ｃ，Ｄと機能ブロック間配線９との交点（結線位置）にそれぞれコンタクト１０が１個ずつ配置される。尚、各仮想端子Ａ，Ｂ，Ｃ，Ｄにそれぞれ例えば２個のコンタクト数のコンタクト配置数付与情報が付与されている場合は、図８の様に、各仮想端子Ａ，Ｂ，Ｃ，Ｄと機能ブロック間配線９との交点（結線位置）にはそれぞれコンタクト１０が２個ずつ配置される。このコンタクト１０により内部配線５ａ，７ａ，７ｂ，７ｃと機能ブロック間配線９とが設計上結線される。
【００３０】
そして、図３に戻って、それぞれの機能ブロック間配線（ここでは９）が設計通りの接続状態を実現しているか否かを確認する接続チェック工程Ｓ６７０を実施する。この様に配線レイアウト工程Ｓ６００は実施される。以上の様にして半導体集積回路１の自動配線設計が行われる。
【００３１】
次に、この自動配線設計方法を実施する装置について説明する。この自動配線設計方法は、例えば図９の自動配置配線装置２２を用いて実施される。この自動配置配線装置２２は、ＣＲＴや液晶表示装置等のディスプレイ１１と、中央処理装置（ＣＰＵ）１２と、ＲＯＭ１３と、ＲＡＭ１４と、ハードディスク（ＨＤ）１５と、キーボード１６と、マウス１７と、ＣＤ−ＲＯＭドライブ１８と、プリンタ１９と、これら各要素１１〜１９を接続するバス２０とを備えて構成される。
【００３２】
ＲＯＭ１３、ＲＡＭ１４及びハードディスク１５は、記憶装置として機能する。ここでは、例えばハードディスク１５に、上記の各工程Ｓ１００〜Ｓ７００で用いられるプログラム（例えば工程Ｓ６００で用いられる自動配置配線ツールのプログラムや工程Ｓ１００〜Ｓ４００で用いられる処理プログラムやこれらプログラムの動作用のオペレーティングシステム）や各工程Ｓ１００〜Ｓ７００の処理結果が記憶される。
【００３３】
尚、自動配置配線ツールのプログラムは、例えばＣＤ−ＲＯＭ２１に記憶されて構成される。このＣＤ−ＲＯＭ２１をＣＤ−ＲＯＭドライブ１８に装着して、ＣＤ−ＲＯＭ２１からハードディスク１５に自動配置配線ツールのプログラムをインストールすることにより、自動配置配線装置２２に上記の工程Ｓ６００の処理機能が設定される。尚、ここでは、記録媒体としてＣＤ−ＲＯＭ２１を用いているが、その代わりに光磁気（ＭＯ）ディスクやフロッピー（Ｒ）ディスクを用いてもよい。
【００３４】
キーボード１６及びマウス１７は、入力装置として機能する。これら入力装置１６，１７を介して各工程Ｓ１００〜Ｓ７００で必要な入力操作（例えば、配線構成情報Ｓ５００の入力や論理設計工程Ｓ１００で必要なデータの入力、及び機能ブロック５，７の配置や仮想端子Ａ，Ｂ，Ｃ，Ｄの定義位置の手動設定）が行われる。
【００３５】
ディスプレイ１１及びプリンタ１９は、出力装置として機能する。ここでは、例えばディスプレイ１１に、配置レイアウト工程Ｓ６００の処理結果（機能ブロック５，７の配置、仮想端子Ａ，Ｂ，Ｃ，Ｄの定義位置、概略配線９ａ及び詳細配線９等）が表示される。
【００３６】
ＣＰＵ１２は、例えば記憶装置１５に記憶された上記のプログラムを読み込んで、入力装置１６，１７からの入力操作に従いつつ上記の各工程Ｓ１００〜Ｓ７００を実施してその実施結果を出力装置１１，１９に出力する。
【００３７】
以上の自動配線設計方法によれば、仮想端子Ａ，Ｂ，Ｃ，Ｄを内部配線５ａ，７ａ，７ｂ，７ｃ上に沿って延在させて（即ち仮想端子Ａ，Ｂ，Ｃ，Ｄ上での結線位置の取り方に自由度を持たせて）定義し、該延在させた仮想端子Ａ（Ｂ，Ｃ，Ｄ）上で取り得る各位置Ａ1〜ＡNA（Ｂ1〜ＢNB，Ｃ1〜ＣNC，Ｄ1〜ＤND）のうちから機能ブロック間配線９が最適な配線経路となる結線位置を求め、該求めた結線位置上で内部配線５ａ（７ａ，７ｂ，７ｃ）と機能ブロック間配線９とを結線させる為、結線位置の取り方の自由度を取り込んだ形で機能ブロック間配線９の最適な配線経路の計算をでき、これにより効果的に機能ブロック周辺の配線チャネル領域の配線混雑度を緩和できる。
【００３８】
又、内部配線５ａ，７ａ，７ｂ，７ｃは電源／ＧＮＤ又はクロックの配線である為、電源／ＧＮＤ又はクロックの配線に結線される機能ブロック間配線９の配線経路に関して、効果的に機能ブロック周辺の配線チャネル領域の配線混雑度を緩和できる。
【００３９】
又、機能ブロック５，７の内部配線５ａ，７ａ，７ｂ，７ｃと機能ブロック間配線９との間にその内部配線の抵抗値に応じて異なる数のコンタクト１０を配置して内部配線５ａ，７ａ，７ｂ，７ｃと機能ブロック間配線９とを結線させる為、内部配線５ａ，７ａ，７ｂ，７ｃ毎に個別に配線抵抗を低減できて結線できる。
【００４０】
又、各機能ブロック５，７はメモリセルである為、効果的にメモリセル周辺の配線チャネル領域の配線混雑度を緩和できる。
【００４１】
＜実施の形態２＞
図１０の様に、実施の形態１の自動配線設計方法の設計対象となる半導体集積回路のメモリセル（機能ブロック）３１の電源／ＧＮＤの幹線配線（内部配線）３３が、メモリセル３１の周縁上に沿ってリング状に配置される場合は、幹線配線３３上に定義すべき仮想端子Ｆ（斜線部）を幹線配線３３上に沿ってリング状に延在させて定義してもよい。
【００４２】
尚、図１０中、符号３５は幹線配線３３に結線される機能ブロック間配線である。符号１０は機能ブロック間配線３５と幹線配線３３とを結線するコンタクトである。符号Ｇは幹線配線３３以外の他の内部配線（図示省略）上に定義された仮想端子であってメモリセル３１の枠上にぽち状に定義された仮想端子である。
【００４３】
以上の自動配線設計方法によれば、電源／ＧＮＤの配線であるリング状の内部配線３３上に定義される仮想端子Ｆは、その内部配線３３上に沿ってリング状に定義される為、その仮想端子Ｆに対して、内部配線３３のリング形状を利用して、内部配線３３と機能ブロック間配線３５との結線位置の取り方に大きな自由度を持たせることができ、これにより効果的に機能ブロック周辺の配線チャネル領域の配線混雑度を緩和できる。
【００４４】
＜実施の形態３＞
図１１の様に、実施の形態１の自動配線設計方法の設計対象となる半導体集積回路の機能ブロック上に定義される仮想端子のうち、それぞれ同じ機能ブロック４１上に定義され、それぞれ同じ配線方向（例えば紙面左方向）Ｐに配線される別の機能ブロック間配線４４，４５，４６に結ばれる複数の仮想端子Ｈ，Ｉ，Ｊについては、それぞれ内部配線（図示省略）上に沿って延在させるだけでなく、互いに機能ブロック間配線４４，４５，４６の配線方向Ｐに沿った同一直線上に並ばない様に定義してもよい。
【００４５】
尚、図１１中、符号１０はそれぞれ各機能ブロック間配線４４，４５，４６と各内部配線（図示省略）とを結線するコンタクトである。
【００４６】
以上の自動配線設計方法によれば、それぞれ同じ機能ブロック４１上に定義され、それぞれ同じ配線方向Ｐに配線される別の機能ブロック間配線４４，４５，４６に結ばれる複数の仮想端子Ｈ，Ｉ，ｊについては、互いに機能ブロック間配線４４，４５，４６の配線方向Ｐに沿った同一直線上に並ばない様に定義される為、その仮想端子（例えばＪ）に結ばれる機能ブロック間配線４６を、その仮想端子Ｊから直接に機能ブロック間配線４６の配線方向Ｐに配線でき、即ち他の仮想端子Ｉ，Ｈに結ばれる別の機能ブロック間配線４４，４５と重なる事を避ける為に一旦配線方向Ｐの直交方向に引き出してから配線方向Ｐに配線する必要が無くなり、これにより、引き出しに掛かる配線部分を省略できて配線レイアウトを簡素化できると共に、機能ブロック４１の周囲に引き出しに掛かる配線部分用の配線チャネル領域を確保する必要が無くなり、チップ面積の小型化に寄与できる。
【００４７】
尚、この実施の形態１〜３は、全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、実施の形態１〜３ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内での全ての変更が含まれることが意図される。
【図面の簡単な説明】
【００４８】
【図１】実施の形態１に係る自動配線設計方法の設計対象となる半導体集積回路の平面視図の一例図である。
【図２】実施の形態１に係る自動配線設計方法の全体概要を説明する図である。
【図３】図２の配線レイアウト工程Ｓ６００の全体概要を説明する図である。
【図４】図３の詳細配線工程Ｓ６５０の内容を主に説明する為の半導体集積回路の平面視図である。
【図５】図３のコンタクト配置数情報付与工程Ｓ６４０の内容を説明する図である。
【図６】図３の詳細配線工程Ｓ６５０の内容を説明する図である。
【図７】図３のコンタクト配置工程Ｓ６６０でコンタクトが配置された状態を示す図である。
【図８】図３のコンタクト配置工程Ｓ６６０でコンタクトが配置された状態を示す他の図である。
【図９】実施の形態１に係る自動配線設計方法を実施する装置の構成の一例図である。
【図１０】実施の形態２に係る自動配線設計方法の設計対象となる半導体集積回路の平面視部分拡大図の一例図である。
【図１１】実施の形態３に係る自動配線設計方法の設計対象となる半導体集積回路の平面視部分拡大図の一例図である。
【符号の説明】
【００４９】
１  半導体集積回路、３  チップ、５，７  メモリセル（機能ブロック）、５ａ  幹線配線、７ａ，７ｂ，７ｃ  幹線配線、７ｄ  リング状配線、９  機能ブロック間配線、９ａ  概略配線、１０  コンタクト、３１  メモりセル（機能ブロック）、３３  幹線配線（内部配線）、３５  機能ブロック間配線、４１  機能ブロック、４４，４５，４６  機能ブロック間配線、Ａ，Ｂ，Ｃ，Ｄ，Ｆ，Ｇ，Ｈ，Ｉ，Ｊ  仮想端子、Ｅ  外部端子。
【図１】
2005086058.tif 000003
【図２】
2005086058.tif 000004
【図３】
2005086058.tif 000005
【図４】
2005086058.tif 000006
【図５】
2005086058.tif 000007
【図６】
2005086058.tif 000008
【図７】
2005086058.tif 000009
【図８】
2005086058.tif 000010
【図９】
2005086058.tif 000011
【図１０】
2005086058.tif 000012
【図１１】
2005086058.tif 000013