(57)【要約】【課題】レイアウト領域内からクロムマイグレーションが顕著に発生する箇所を特定することを図ること。【解決手段】図１の（ａ）に示すレイアウト領域ｒには、配線ｗａ〜ｗｆが配置されている。図１の（ｂ）に示すように、設計支援装置１０１は、レイアウト領域ｒから、配線ｗａ〜ｗｆから、所定長以上の長さを有する直線状の配線が所定の配線間隔以下で隣接して配置された配線群として、配線ｗａ＿１、ｗｂ＿１、ｗｂ＿２、ｗｄ、ｗｅ＿１を特定する。設計支援装置１０１の利用者は、設計支援装置１０１が特定した配線ｗａ＿１、ｗｂ＿１、ｗｂ＿２、ｗｄ、ｗｅ＿１を閲覧して、測定ポイントを容易に決定することができる。【選択図】図１
2015215781.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータが、
設計対象回路のレイアウト領域内の配線の位置を示す配線情報に基づいて、前記レイアウト領域から、所定長以上の長さを有する直線状の配線が所定の配線間隔以下で隣接して配置された配線群を特定し、
特定した前記配線群に基づいて、前記レイアウト領域を縦方向および横方向に分割した複数の分割領域に対応して、前記分割領域のそれぞれにおける前記直線状の配線の密集の度合いを示す密集度を算出し、
算出した前記分割領域のそれぞれに対応する前記密集度に基づいて、前記直線状の配線が最も密集する領域の中心位置を前記複数の分割領域の中心位置のうちから特定する、
処理を実行することを特徴とする設計支援方法。
【請求項２】
コンピュータが、
設計対象回路のレイアウト領域内の配線の位置を示す配線情報に基づいて、前記レイアウト領域から、所定長以上の長さを有する直線状の配線が所定の配線間隔以下で隣接して配置された配線群を特定し、
特定した前記配線群に基づいて、前記配線群の各々の配線が配置された領域を前記所定の配線間隔に基づいて前記配線群の配線方向とは直交する方向に拡大し、
拡大した領域同士を結合して得られた結合領域を前記配線の配線幅に基づいて縮小し、縮小した前記結合領域が消滅するまで縮小することを繰り返し行い、前記結合領域が消滅する一つ前の結合領域に基づいて、前記直線状の配線が最も密集する領域の中心位置を特定することを特徴とする設計支援方法。
【請求項３】
コンピュータが、
設計対象回路のレイアウト領域内の配線の位置を示す配線情報に基づいて、前記レイアウト領域から、所定長以上の長さを有する直線状の配線が所定の配線間隔以下で隣接して配置された配線群を特定し、
特定した前記配線群に基づいて、前記配線群の各々の配線が配置された領域を前記所定の配線間隔に基づいて前記配線群の配線方向とは直交する方向に拡大し、
拡大した領域同士を結合して得られた結合領域を矩形領域に分割し、分割された前記矩形領域のうちから最大の矩形領域を抽出し、
抽出した前記最大の矩形領域の中心位置を特定することを特徴とする設計支援方法。
【請求項４】
コンピュータに、
設計対象回路のレイアウト領域内の配線の位置を示す配線情報に基づいて、前記レイアウト領域から、所定長以上の長さを有する直線状の配線が所定の配線間隔以下で隣接して配置された配線群を特定し、
特定した前記配線群に基づいて、前記レイアウト領域を縦方向および横方向に分割した複数の分割領域に対応して、前記分割領域のそれぞれにおける前記直線状の配線の密集の度合いを示す密集度を算出し、
算出した前記分割領域のそれぞれに対応する前記密集度に基づいて、前記直線状の配線が最も密集する領域の中心位置を前記複数の分割領域の中心位置のうちから特定する、
処理を実行させることを特徴とする設計支援プログラム。
【請求項５】
設計対象回路のレイアウト領域内の配線の位置を示す配線情報に基づいて、前記レイアウト領域から、所定長以上の長さを有する直線状の配線が所定の配線間隔以下で隣接して配置された配線群を特定し、
特定した前記配線群に基づいて、前記レイアウト領域を縦方向および横方向に分割した複数の分割領域に対応して、前記分割領域のそれぞれにおける前記直線状の配線の密集の度合いを示す密集度を算出し、
算出した前記分割領域のそれぞれに対応する前記密集度に基づいて、前記直線状の配線が最も密集する領域の中心位置を前記複数の分割領域の中心位置のうちから特定する
制御部を有することを特徴とする設計支援装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、設計支援方法、設計支援プログラム、および設計支援装置に関する。
【背景技術】
【０００２】
ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）を製造する際に、レチクル上のクロム素子によって形成された配線パターンが、繰り返される露光の影響により削られるという、いわゆるクロムマイグレーションと呼ばれる現象が発生する。そして、従来、配線パターンの変化による歩留りの低下を抑止するために、半導体チップ周辺に配置された配線パターンや半導体チップ内部の配線パターンを計測する技術がある。関連する先行技術として、例えば、検証レイヤにおいて所定サイズのエリアごとにパターン密度を算出し、少なくとも隣接領域間におけるパターン密度の密度差が第１基準値以上となるエラー領域の総面積を算出し、総面積と第２基準値とを比較するものがある。また、被検査対象領域を検査条件が異なる少なくとも２個以上の部分検査領域に分割し、各部分検査領域に対して検査条件を設定し、設定した各部分検査領域に対して、設定した検査条件で検査を実行する技術がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−２２１１０４号公報
【特許文献２】特開２００２−３２３４５８号公報
【非特許文献】
【０００４】
【非特許文献１】Ｊｏｎｇ−Ｍｉｎ  Ｋｉｍ、他３名、「Ａ  Ｓｉｍｕｌａｔｉｏｎ  ｏｆ  Ｃｈｒｏｍｅ  Ｍｉｇｒａｔｉｏｎ  ａｎｄ  ｉｔｓ  Ｐｒｅｖｅｎｔｉｏｎ  ｉｎ  Ｐｈｏｔｏｍａｓｋ」、Ｐｒｏｃ．  ｏｆ  ＳＰＩＥ  Ｖｏｌ．８４４１、２０１２
【非特許文献２】Ａｎｎａ  Ｔｃｈｉｋｏｕｌａｅｖａ、他３名、「ＡＣＬＶ  Ｄｅｇｒａｄａｔｉｏｎ：  Ｒｏｏｔ  Ｃａｕｓｅ  Ａｎａｌｙｓｉｓ  ａｎｄ  Ｅｆｆｅｃｔｉｖｅ  Ｍｏｎｉｔｏｒｉｎｇ  Ｓｔｒａｔｅｇｙ」、Ｐｒｏｃ．  ｏｆ  ＳＰＩＥ  Ｖｏｌ．７０２８、２００８
【非特許文献３】Ｆｅｌｉｘ  Ｄｕｆａｙｅ、他９名、「Ｂｉｎａｒｙ  １９３ｎｍ  ｐｈｏｔｏｍａｓｋｓ  ａｇｉｎｇ  ｐｈｅｎｏｍｅｎｏｎ  ｓｔｕｄｙ」、Ｐｒｏｃ．  ｏｆ  ＳＰＩＥ  Ｖｏｌ．８０８１、２０１１
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来技術によれば、歩留りの低下をいち早く抑止しようとしても、設計対象回路のレイアウト領域内から、クロムマイグレーションが顕著に発生する箇所を特定することが困難である。例えば、レイアウト領域内から、配線が密集する箇所を抽出したとしても、メモリ部や演算部といった機能ブロックの箇所が抽出されてしまい、結果的には、レイアウト領域内のほとんどの箇所が特定されることになる。
【０００６】
１つの側面では、本発明は、レイアウト領域内からクロムマイグレーションが顕著に発生する箇所を特定できる設計支援方法、設計支援プログラム、および設計支援装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一側面によれば、設計対象回路のレイアウト領域内の配線の位置を示す配線情報に基づいて、レイアウト領域から、所定長以上の長さを有する直線状の配線が所定の配線間隔以下で隣接して配置された配線群を特定し、特定した配線群に基づいて、レイアウト領域を縦方向および横方向に分割した複数の分割領域に対応して、分割領域のそれぞれにおける直線状の配線の密集の度合いを示す密集度を算出し、算出した分割領域のそれぞれに対応する密集度に基づいて、直線状の配線が最も密集する領域の中心位置を複数の分割領域の中心位置のうちから特定する設計支援方法、設計支援プログラム、および設計支援装置が提案される。
【発明の効果】
【０００８】
本発明の一態様によれば、レイアウト領域内からクロムマイグレーションが顕著に発生する箇所を特定することができるという効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】図１は、設計支援装置１０１の動作例を示す説明図である。
【図２】図２は、測定ポイントの使用例を示す説明図である。
【図３】図３は、設計支援装置１０１のハードウェア構成例を示すブロック図である。
【図４】図４は、設計支援装置１０１の機能構成例を示すブロック図である。
【図５】図５は、半導体チップのレイアウト領域とマップ領域との関係の一例を示す説明図である。
【図６】図６は、マップ領域内の配線パターンの一例を示す説明図である。
【図７】図７は、配線パターンに対して幅付けとＯＲ処理とを行った一例を示す説明図である。
【図８】図８は、ビットマップ領域の一例を示す説明図である。
【図９】図９は、密集度の初期値を設定したビットマップ領域の一例を示す説明図である。
【図１０】図１０は、ビット領域の更新の一例を示す説明図である。
【図１１】図１１は、ビット領域の更新終了後のビットマップ領域の一例を示す説明図である。
【図１２】図１２は、マイナスサイジングを行った後の配線パターンの一例を示す説明図（その１）である。
【図１３】図１３は、マイナスサイジングを行った後の配線パターンの一例を示す説明図（その２）である。
【図１４】図１４は、ＯＲ処理終了後の配線パターンから矩形形状を分解する一例を示す説明図である。
【図１５】図１５は、チェック値テーブルの記憶内容の一例を示す説明図である。
【図１６】図１６は、測定ポイント決定処理手順の一例を示すフローチャート（その１）である。
【図１７】図１７は、測定ポイント決定処理手順の一例を示すフローチャート（その２）である。
【図１８】図１８は、第１の配線密集座標抽出処理手順の一例を示すフローチャートである。
【図１９】図１９は、第２の配線密集座標抽出処理手順の一例を示すフローチャートである。
【図２０】図２０は、第３の配線密集座標抽出処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下に図面を参照して、開示の設計支援方法、設計支援プログラム、および設計支援装置の実施の形態を詳細に説明する。
【００１１】
図１は、設計支援装置１０１の動作例を示す説明図である。設計支援装置１０１は、回路の設計作業の支援を行うコンピュータである。設計支援装置１０１は、例えば、パーソナル・コンピュータやサーバであってもよい。具体的には、例えば、設計支援装置１０１は、ＣＡＤ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ）を行うアプリケーションを実行し、設計支援装置１０１の操作によって、設計対象回路の配線パターンを得る。レチクルの製造業者は、得られた設計対象回路の配線パターンに従って、レチクルを製造する。レチクルは、回路の製造工程で使用されるパターン原版のことである。具体的には、レチクルは、ガラス、石英等によって形成した透明な板上に、クロムによって配線パターンが形成されたものである。
【００１２】
ここで、設計対象回路の製造時に、レチクルに繰り返し露光を行うことにより、クロムが削られてしまう現象、いわゆるクロムマイグレーションと呼ばれる現象が発生する。近年のＬＳＩの微細化に伴い、クロムマイグレーションの影響がウェハ転写時のチップ形成にも影響を及ぼすようになっている。
【００１３】
通常、配線パターンの変化は、半導体チップ周辺に配置されたモニタパターンを計測することで行われる。製造者は、目標値と計測値との差が露光パラメータの調整で済まないものであれば製造を中止する。モニタパターンには、ＬＳＩのコア部分に使用されるセルパターンや配線パターンと同一幅のものが搭載され、形状変化量はチップ露光における露光パラメータの再設定に使用される。
【００１４】
しかしながら、同じ形状といえども、モニタパターンは半導体チップ外周の粗の場所であり、コア部分のパターンは密な場所にある。このため、クロムマイグレーションの影響が粗と密とにおいて異なることから、モニタパターンでは問題なしと判断しても、コア部分では重大なパターンの変化となる場合がある。コア部分でパターン変化を起こしたレチクルを使用してウェハに露光した場合には、不良チップを大量に製造して歩留りが低下してしまうことになる。このため、計測する個所をモニタパターンでなく、半導体チップ内のセルパターンも計測の対象とすることで、不良チップの製造を防止することが行われる。
【００１５】
しかしながら、半導体チップ内に大量に配置されたセルパターンから測定箇所を求めるには、設計者が図面から探す労力と時間、経験が要求され、現実的ではないため、最適な計測箇所を早く求める技術が求められる。
【００１６】
具体的には、例えば、クロムマイグレーションが発生し易い座標位置を特定するために、配線幅を基にしたマイナスサイジングを行うことが考えられる。しかしながら、配線幅を基にしたマイナスサイジングでは、半導体チップ上の配線パターンの抽出しかできないため、配線パターン全てを抽出することになる。さらに、半導体チップ全体において、配線幅は、機能ブロックにも共通して使用する数値であり、同じ配線幅の配線パターンが大量に搭載されているメモリ部や演算部は、必然的に配線の密集度合いが高い結果になる。そして、配線幅を基にしたマイナスサイジングを行うと、メモリ部や演算部のほとんど全ての場所が抽出されてしまうことになる。配線が占める密度による抽出方法を加えても、同様の結果となる。従って、設計者が、測定ポイントを指示する測長ファイルを作成する際には、半導体チップの図面から、クロムマイグレーションが顕著に現れる、配線が密集した箇所を目視して特定するしかなく、設計作業に時間がかかる。
【００１７】
ここで、クロムマイグレーションは、辺長の長い配線が密集した箇所に顕著に表れるという結果が出ている。辺長の長い配線が密集した箇所は、半導体チップにおいて、メモリ部、演算部等といった機能ブロックなどの単独の配線パターンが密集した箇所ではなく、長くまっすぐに伸びた配線が何本も並んでいる箇所によく表れる。
【００１８】
そこで、設計支援装置１０１は、レイアウト領域内の配線の位置を示す配線情報に基づいて、設計対象回路のレイアウト領域から所定長以上の長さを有する直線状の配線がある配線間隔以下で隣接して配置された配線群を特定する。これにより、設計支援装置１０１は、設計対象回路の製造時にクロムマイグレーションが顕著に発生する箇所を特定することができる。そして、設計支援装置１０１の利用者が配線が密集した箇所を目視して特定しなくてよくなるため、設計支援装置１０１は、設計効率を向上させることができる。
【００１９】
以下、図１を用いて、設計支援装置１０１が実行する処理を説明する。図１の（ａ）に示すレイアウト領域ｒには、配線ｗａ〜ｗｆが配置されている。配線ｗａ〜ｗｆの位置情報は、配線情報により特定できるものとする。具体的には、配線情報は、配線ｗａ〜ｗｆの配線パターンとして、配線が配置された領域を記憶する。例えば、配線情報は、折れ曲がっていない配線である配線ｗｃ、ｗｄ、ｗｆについて、配線が配置された矩形の各頂点の位置座標を記憶する。
【００２０】
設計支援装置１０１は、配線情報に基づいて、レイアウト領域から、所定長以上の長さを有する直線状の配線が所定の配線間隔以下で隣接して配置された配線群を特定する。特定した結果を、図１の（ｂ）に示す。設計支援装置１０１は、レイアウト領域ｒから、配線ｗａ〜ｗｆのうち、所定長以上の長さを有する直線状の配線が所定の配線間隔以下で隣接して配置された配線群として、配線ｗａ＿１、ｗｂ＿１、ｗｂ＿２、ｗｄ、ｗｅ＿１を特定する。所定長は、短い配線を特定しないための判定値であり、数ミクロン〜十数ミクロンが指定される。
【００２１】
ここで、配線ｗａ＿１は、配線ｗａの一部分であり、かつ、所定長の長さを有する直線である。また、配線ｗｂ＿１、ｗｂ＿２は、配線ｗｂの一部分であり、かつ、所定長の長さを有する直線である。同様に、配線ｗｅ＿１は、配線ｗｅの一部分であり、かつ、所定長の長さを有する直線である。設計支援装置１０１は、配線ｗｃについては所定長以上の長さを有していないため、また、配線ｗｆについては所定間隔以下で隣接して配置された他の配線がないため、所定の配線間隔以下で隣接して配置された配線群として特定しない。
【００２２】
設計支援装置１０１の利用者は、設計支援装置１０１が特定した配線ｗａ＿１、ｗｂ＿１、ｗｂ＿２、ｗｄ、ｗｅ＿１を閲覧して、測定ポイントを容易に決定することができる。具体的には、図１の（ｂ）のレイアウト領域ｒが示すように、配線ｗａ＿１、ｗｂ＿１の配線のかたまりと、配線ｗｂ＿２、ｗｄ、ｗｅ＿１の配線のかたまりが形成されている。そこで、設計支援装置１０１の利用者は、配線ｗｂ＿２、ｗｄ、ｗｅ＿１の配線のかたまりが、所定の配線間隔以下で隣接して配置された直線状の配線が密集する領域と判断して、配線ｗｄの中心位置を測定ポイントとして決定する。また、設計支援装置１０１が、特定した配線群から、所定の配線間隔以下で隣接して配置された直線状の配線が密集する領域を特定し、特定した領域の中心を測定ポイントとして出力する、測定ポイント決定処理を実行してもよい。具体的な測定ポイント決定処理については、図６〜図１５を用いて説明する。次に、図２を用いて、測定ポイントの具体例な使用例について説明する。
【００２３】
図２は、測定ポイントの使用例を示す説明図である。設計対象回路を製造する際には、設計データ２０１と、測長ファイル２０２とを用いる。設計データ２０１は、レチクルを作成するための製造データに変換される。レチクルメーカ２０３は、製造データに基づいてレチクルを製造する。測長ファイル２０２は、既存のモニタパターンと、本実施の形態にかかる測定ポイント決定処理により、決定された測定ポイントとを含む。
【００２４】
レチクルメーカ２０３は、完成したレチクルを製造工場２０４に渡す。製造工場２０４において、製造工場２０４における製造者は、レチクルを用いてウェハに露光する。製造者は、露光された半導体チップ内の、測長ファイル２０２に含まれる測定ポイントの配線パターンを計測する。計測した結果、目標値と計測値との差が露光パラメータの調整で済むのであれば、ＯＫとして、製造者は、露光パラメータの変更を行って、再びレチクルを用いてウェハに露光する。一方、目標値と計測値との差が露光パラメータの調整で済まないのであれば、ＮＧとして、製造者は、レチクルの再作成を依頼する。レチクルメーカ２０３がレチクルを完成させた後から、製造者がレチクルの再作成を依頼するまでの作業は、繰り返し行われることである。
【００２５】
図３は、設計支援装置１０１のハードウェア構成例を示すブロック図である。設計支援装置１０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３０１と、ＲＯＭ（Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）３０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）３０３と、を含む。また、設計支援装置１０１は、ディスクドライブ３０４と、ディスク３０５と、通信インターフェース３０６と、を含む。また、設計支援装置１０１は、ディスプレイ３０７と、キーボード３０８と、マウス３０９とを含む。また、ＣＰＵ３０１〜ディスクドライブ３０４と、通信インターフェース３０６〜マウス３０９とは、バス３１０によってそれぞれ接続される。
【００２６】
ＣＰＵ３０１は、設計支援装置１０１の全体の制御を司る演算処理装置である。ＲＯＭ３０２は、ブートプログラムなどのプログラムを記憶する不揮発性メモリである。ＲＡＭ３０３は、ＣＰＵ３０１のワークエリアとして使用される揮発性メモリである。
【００２７】
ディスクドライブ３０４は、ＣＰＵ３０１の制御に従ってディスク３０５に対するデータのリードおよびライトを制御する制御装置である。ディスクドライブ３０４には、例えば、磁気ディスクドライブ、光ディスクドライブ、ソリッドステートドライブなどを採用することができる。ディスク３０５は、ディスクドライブ３０４の制御で書き込まれたデータを記憶する不揮発性メモリである。例えばディスクドライブ３０４が磁気ディスクドライブである場合、ディスク３０５には、磁気ディスクを採用することができる。また、ディスクドライブ３０４が光ディスクドライブである場合、ディスク３０５には、光ディスクを採用することができる。また、ディスクドライブ３０４がソリッドステートドライブである場合、ディスク３０５には、半導体素子によって形成された半導体メモリ、いわゆる半導体ディスクを採用することができる。
【００２８】
通信インターフェース３０６は、ネットワークと内部のインターフェースを司り、外部装置からのデータの入出力を制御する制御装置である。通信インターフェース３０６には、例えば、モデムやＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）アダプタなどを採用することができる。
【００２９】
ディスプレイ３０７は、マウスカーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する装置である。ディスプレイ３０７には、例えば、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）、ＴＦＴ（Ｔｈｉｎ  Ｆｉｌｍ  Ｔｒａｎｓｉｓｔｏｒ）液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【００３０】
キーボード３０８は、文字、数字、各種指示などの入力のためのキーを有し、データの入力を行う装置である。また、キーボード３０８は、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス３０９は、マウスカーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う装置である。マウス３０９は、ポインティングデバイスとして同様に機能を有するものであれば、トラックボールやジョイスティックなどであってもよい。
【００３１】
（設計支援装置１０１の機能構成例）
図４は、設計支援装置１０１の機能構成例を示すブロック図である。設計支援装置１０１は、制御部４００を含む。制御部４００は、配線特定部４０１と、領域特定部４０２と、出力部４０３とを含む。制御部４００は、記憶装置に記憶されたプログラムをＣＰＵ３０１が実行することにより、制御部４００の機能を実現する。記憶装置とは、具体的には、例えば、図３に示したＲＯＭ３０２、ＲＡＭ３０３、ディスク３０５などである。または、通信インターフェース３０６を経由して他のＣＰＵが実行することにより、制御部４００の機能を実現してもよい。また、各部の処理結果は、ＣＰＵ３０１が有するレジスタや、ＲＡＭ３０３等に記憶される。
【００３２】
配線特定部４０１は、設計対象回路のレイアウト領域ｒ内の配線の位置を示す配線情報に基づいて、レイアウト領域ｒから、所定長以上の長さを有する直線状の配線が所定の配線間隔以下で隣接して配置された配線群を特定する。具体的な特定方法として、例えば、配線特定部４０１は、所定長以上の長さを有する直線状の配線群を抽出したのち、直線状の配線群同士が所定の配線間隔以下で隣接して配置された配線群を特定する。また、所定長以上の長さを有する直線状の配線群を特定する際に、配線特定部４０１は、処理を簡便化するため、レイアウト領域ｒを縦方向か横方向に所定長で分割し、配線幅と所定長とを有する矩形を、直線状の配線群として特定してもよい。
【００３３】
領域特定部４０２は、配線特定部４０１が特定した配線群に基づいて、レイアウト領域内から所定の配線間隔以下で隣接して配置された直線状の配線が密集する領域を特定する。例えば、配線特定部４０１が特定した配線群が、図１の（ｂ）で示すように、２本の配線によるかたまりと、３本の配線によるかたまりとを形成するとする。このとき、領域特定部４０２は、例えば、本数の多いかたまりを選択し、選択したかたまりの中央に位置する配線ｗｄの中央の領域を、所定の配線間隔以下で隣接して配置された直線状の配線が密集する領域として特定する。また、具体的には、領域特定部４０２は、下記に示す第１〜第３の領域特定方法のいずれかを行ってもよい。
【００３４】
第１の領域特定方法として、領域特定部４０２は、配線特定部４０１が特定した配線群に基づいて、レイアウト領域を縦方向および横方向に分割した分割領域に対応して、分割領域における直線状の配線の密集の度合いを示す値を算出する。以下、直線状の密集の度合いを示す値を、「密集度」と呼称する。そして、領域特定部４０２は、算出した分割領域に対応する値に基づいて、レイアウト領域内から所定の配線間隔以下で隣接して配置された直線状の配線が密集する領域を特定する。
【００３５】
また、配線特定部４０１と領域特定部４０２とは、第１の領域特定方法を、レイアウト領域のうちの複数の部分領域の各々の部分領域に対応して行ってもよい。ここで、複数の部分領域は、一部が重なっていてもよい。部分領域を、以下、「マップ領域」と呼称する。
【００３６】
具体的には、配線特定部４０１は、配線情報に基づいて、レイアウト領域のうちの複数のマップ領域の各々のマップ領域に対応して、各々のマップ領域から、所定長以上の長さを有する直線状の配線が所定の配線間隔以下で隣接して配置された配線群を特定する。そして、領域特定部４０２は、特定した各々のマップ領域に対応する配線群に基づいて、各々のマップ領域を縦方向および横方向に分割した分割領域に対応して、分割領域における密集度を算出する。次に、領域特定部４０２は、算出した各々のマップ領域に対応する分割領域に対応する密集度に基づいて、レイアウト領域内から所定の配線間隔以下で隣接して配置された直線状の配線が密集する領域を特定する。第１の領域特定方法を、マップ領域に対して行う例については、図８〜図１１で後述する。
【００３７】
また、第２の領域特定方法として、領域特定部４０２は、配線特定部４０１が特定した配線群に基づいて、配線群の各々の配線が配置された領域を所定の配線間隔に基づいて配線群の配線方向とは直交する方向に拡大した領域同士を結合する。例えば、領域特定部４０２は、配線群の各々の配線が配置された領域を、配線群の配線方向とは直交する方向および逆方向に所定の配線間隔／２ずつ拡大してもよいし、配線群の配線方向とは直交する２つの方向のいずれか一方に所定の配線間隔分拡大してもよい。
【００３８】
そして、領域特定部４０２は、結合して得られた結合領域を配線幅に基づいて縮小することを繰り返し行い得られる領域に基づいて、レイアウト領域内から所定の配線間隔以下で隣接して配置された直線状の配線が密集する領域を特定してもよい。例えば、領域特定部４０２は、結合領域を配線幅分縮小することを繰り返し行い、縮小した結合領域が消滅した際の一つ前の結合領域を、所定の配線間隔以下で隣接して配置された直線状の配線が密集する領域として特定してもよい。また、例えば、領域特定部４０２は、縮小する回数を減らすために、結合領域を配線幅×２分縮小することを繰り返し行ってもよい。ここで、説明の簡略化のため、配線幅×２分縮小することを繰り返して、縮小した結合領域が消滅した際の一つ前の結合領域を、結合領域１とする。そして、領域特定部４０２は、結合領域１を配線幅分縮小して、縮小した結合領域１が消滅した場合、結合領域１を、所定の配線間隔以下で隣接して配置された直線状の配線が密集する領域として特定する。一方、縮小した結合領域１が消滅しなかった場合、領域特定部４０２は、縮小した結合領域１を、所定の配線間隔以下で隣接して配置された直線状の配線が密集する領域として特定する。
【００３９】
また、配線特定部４０１と領域特定部４０２とは、第２の領域特定方法を、レイアウト領域のうちの複数のマップ領域の各々のマップ領域に対応して行ってもよい。配線特定部４０１が、各々のマップ領域に対応して配線群を特定する方法は、第１の領域特定方法と同一である。領域特定部４０２は、各々のマップ領域に対応して、各々のマップ領域に対応する配線群の各々の配線が配置された領域を所定の配線間隔に基づいて各々のマップ領域に対応する配線群の配線方向とは直交する方向に拡大した領域同士を結合する。次に、領域特定部４０２は、結合して得られた各々のマップ領域に対応する結合領域を配線幅に基づいて縮小することを繰り返し行い得られる領域に基づいて、レイアウト領域内から所定の配線間隔以下で隣接して配置された直線状の配線が密集する領域を特定する。第２の領域特定方法を、マップ領域に対して行う例については、図１２、図１３で後述する。
【００４０】
また、第３の領域特定方法として、領域特定部４０２は、配線特定部４０１が特定した配線群に基づいて、配線群の各々の配線が配置された領域を所定の配線間隔に基づいて配線群の配線方向とは直交する方向に拡大した領域同士を結合する。そして、領域特定部４０２は、結合して得られた結合領域から、最大の矩形領域を抽出することにより、レイアウト領域内から所定の配線間隔以下で隣接して配置された直線状の配線が密集する領域として特定してもよい。
【００４１】
また、配線特定部４０１と領域特定部４０２とは、第３の領域特定方法を、レイアウト領域のうちの複数のマップ領域の各々のマップ領域に対応して行ってもよい。配線特定部４０１が、各々のマップ領域に対応して配線群を特定する方法は、第１の領域特定方法と同一である。領域特定部４０２は、各々のマップ領域に対応して、各々のマップ領域に対応する配線群の各々の配線が配置された領域を所定の配線間隔に基づいて各々のマップ領域に対応する配線群の配線方向とは直交する方向に拡大した領域同士を結合する。そして、領域特定部４０２は、結合して得られた各々のマップ領域に対応する結合領域から、最大の矩形領域を抽出することにより、レイアウト領域内から所定の配線間隔以下で隣接して配置された直線状の配線が密集する領域を特定してもよい。
【００４２】
出力部４０３は、領域特定部４０２が特定した最大の矩形領域の中心位置を出力する。設計支援装置１０１は、出力部４０３が出力した中心位置を、測定ポイントとして表示する。
【００４３】
次に、図５を用いて、半導体チップのレイアウト領域と、本実施の形態において測定ポイントの候補を抽出する単位となるマップ領域との関係を説明する。
【００４４】
図５は、半導体チップのレイアウト領域とマップ領域との関係の一例を示す説明図である。設計支援装置１０１は、図５に示すように、レイアウト領域ｒをマップ領域ｍに分割して、各マップ領域ｍで測定ポイントの候補となる、密集箇所の座標を抽出する。マップ領域ｍに分割する目的としては、処理を高速で行うには、マップ領域をディスク３０５上に配置するよりもＲＡＭ３０３上で行う方が速いためであり、マップ領域ｍはＲＡＭ３０３上で処理ができる大きさとなる。また、各マップ領域ｍは、一部が重なってもよい。例えば、設計支援装置１０１は、各マップ領域ｍの大きさを、図５に示した大きさよりも一回り大きくしてもよい。
【００４５】
設計支援装置１０１は、ＲＡＭ３０３の記憶容量に応じてマップ領域ｍの大きさを決定する。また、設計支援装置１０１は、設計支援装置１０１の利用者の操作により、ＲＡＭ３０３の記憶容量に応じてマップ領域ｍの大きさを指定してもよい。
【００４６】
図６は、マップ領域内の配線パターンの一例を示す説明図である。図６の（ａ）では、対象とするマップ領域ｍ内の配線パターンを示す。設計支援装置１０１は、マップ領域ｍ内の配線パターンに対して、所定長により、マップ領域ｍを分割する。図６の（ａ）では、配線が縦方向に配置されており、マップ領域ｍを図６の（ａ）に示す点線で横方向に分割した例を示す。また、配線が横方向に配置されている場合には、設計支援装置１０１は、マップ領域ｍを縦方向に分割してもよい。縦方向か横方向かのいずれに分割するかについては、例えば、設計支援装置１０１は、マップ領域ｍの配線パターンを解析して配線の方向を特定し、配線の方向とは直行する方向に分割してもよい。具体的には、設計支援装置１０１は、マップ領域ｍの配線パターンのうち、矩形となる配線パターンを抽出して、長辺となる方向を、配線の方向として特定する。
【００４７】
マップ領域ｍを分割した後、設計支援装置１０１は、配線幅×所定長の矩形となる配線パターンを抽出する。配線幅×所定長の矩形となる配線パターンを抽出した例が、図６の（ｂ）で示すマップ領域ｍ内の配線パターンとなる。
【００４８】
図６の（ｂ）で示す配線パターンが、図４で説明した、所定長以上の長さを有する直線状の配線群となる。次に、設計支援装置１０１は、直線状の配線群同士が所定の配線間隔以下で隣接して配置された配線群を特定する。ここで、簡便な配線群の特定例として、設計支援装置１０１は、配線パターンに対して幅付けとＯＲ処理とを行い、幅または高さが所定の配線間隔の２倍の配線パターンを、所定の配線間隔以下で隣接して配置されていない配線であるとして除外する方法を実行する。これにより、配線群同士の位置をそれぞれ取得して所定の配線間隔以下で隣接して配置されているか否かを調べずに済むため、設計支援装置１０１は、容易に所定の配線間隔以下で隣接して配置された配線群を特定することができる。配線パターンに対しする幅付けとＯＲ処理について、図７を用いて説明する。また、幅または高さが所定の配線間隔の２倍の配線パターンを除外する例については、図８を用いて説明する。
【００４９】
図７は、配線パターンに対して幅付けとＯＲ処理とを行った一例を示す説明図である。設計支援装置１０１は、配線幅×所定長の矩形となる配線パターンに対して、配線間隔／２の量だけ、配線パターンの長辺に対して幅付けを行う。図６の（ｂ）に示した配線幅×所定長の矩形となる配線パターンに対して幅付けを行った例が、図７の（ａ）に示すマップ領域ｍ内の配線パターンとなる。
【００５０】
幅付けを行った後、設計支援装置１０１は、幅付けした配線パターンのＯＲ処理を行う。ここで、ＯＲ処理とは、複数のパターンの重なり部分を繋ぎ合せて、複数のパターンを一つのパターンとして結合する処理である。図７の（ａ）に示した幅付けした配線パターンに対してＯＲ処理を行った例が、図７の（ｂ）に示すマップ領域ｍ内の配線パターンとなる。
【００５１】
ＯＲ処理を行った配線パターンに対して、設計支援装置１０１は、配線密集座標抽出処理を行って、配線が密集する座標を抽出する。配線密集座標抽出処理は、ＯＲ処理を行った配線パターンの中心となる座標と、該当の座標において配線が集まる度合いを示す値として、密集度とを出力する処理である。本実施の形態では、配線密集座標抽出処理として、第１〜第３の例を示す。第１の配線密集座標抽出処理については、図８〜図１１を用いて説明する。第２の配線密集座標抽出処理については、図１２、図１３を用いて説明する。第３の配線密集座標抽出処理については、図１４、図１５を用いて説明する。
【００５２】
そして、設計支援装置１０１は、レイアウト領域ｒ内の全てのマップ領域ｍに対して、配線密集座標抽出処理を行って、配線が密集する座標を抽出する。そして、設計支援装置１０１は、全てのマップ領域ｍから抽出された座標から、座標に対する密集度に基づいて、測定ポイントを特定する。例えば、設計支援装置１０１は、密集度が最大値となる座標を測定ポイントとして特定する。また、密集度の最大値となる座標が複数ある場合には、例えば、設計支援装置１０１は、密集度の最大値となる座標のうちのレイアウト領域ｒの中心に近い座標を測定ポイントとして特定する。また、測定ポイントは、１つでも複数でもよい。測定ポイントの数は、製造費用に加わることになる。例えば、設計支援装置１０１の利用者によって、製造費用に応じて測定ポイントの数を予め指定しておき、設計支援装置１０１は、密集度が大きい座標から順に、指定された測定ポイントの数分の座標を測定ポイントとして特定してもよい。
【００５３】
（第１の配線密集座標抽出処理）
次に、図８〜図１１を用いて、第１の配線密集座標抽出処理を説明する。第１の配線密集座標抽出処理では、マップ領域ｍを小領域に分割し、各小領域に隣接する上下左右斜めの小領域の配線パターンに基づいて、ＯＲ処理した配線パターンから直線状の配線が密集する領域を特定し、特定した領域の中心座標を抽出する。また、第１の配線密集座標抽出処理は、図４に示した、第１の領域特定方法をマップ領域に対応して行い、マップ領域に対応した直線状の配線が密集する領域の中心座標を抽出することに相当する。
【００５４】
図８は、ビットマップ領域の一例を示す説明図である。第１の配線密集座標抽出処理において、設計支援装置１０１は、ＯＲ処理を行った配線パターンを含むマップ領域ｍを、配線幅をメッシュとした領域を作成する。以下、第１の配線密集座標抽出処理の説明においては、配線幅をメッシュとした領域を、「ビットマップ領域」と呼称し、メッシュに囲まれた小領域を、「ビット領域」と呼称する。図８では、図７の（ｂ）に示したＯＲ処理を行った配線パターンを含むマップ領域ｍに対して、ビットマップ領域ｂｍを作成した例を示す。各ビット領域は、配線の密集度合いを示す密集度を記憶する。
【００５５】
ここで、配線幅２本以下の幅または高さを有する配線パターンは、幅付けする前には、配線１本が単独して存在していたことを示す。そこで、第１の配線密集座標抽出処理では、処理時間の短縮化のために、配線幅２本以下の幅または高さを有する配線パターンを除外する。図８の例では、配線パターンｂｐ１、ｂｐ２の幅が配線幅２本分であるため、設計支援装置１０１は、配線パターンｂｐ１、ｂｐ２を除外する。
【００５６】
図９は、密集度の初期値を設定したビットマップ領域の一例を示す説明図である。第１の配線密集座標抽出処理において、設計支援装置１０１は、配線幅２本以下の幅または高さを有する配線パターンを除外した後、残った配線パターンを短冊分解し、ビット領域の密集度の初期値として、配線パターンが重なるビット領域の密集度を１に設定する。一方、設計支援装置１０１は、配線パターンが重ならないビット領域の密集度を０に設定する。また、第１の配線密集座標抽出処理において、処理対象とする密集度をＮとする。図９の状態では、Ｎ＝１である。
【００５７】
短冊分解した図形は矩形となるため、設計支援装置１０１は、値の設定を容易に行うことができる。図９に示すビットマップ領域ｂｍは、配線パターンが重なるビット領域の密集度を１に設定し、配線パターンが重ならないビット領域の密集度を０に設定した状態を示す。
【００５８】
図１０は、ビット領域の更新の一例を示す説明図である。第１の配線密集座標抽出処理において、設計支援装置１０１は、配線パターンの中心箇所となる座標を特定する。具体的には、設計支援装置１０１は、更新対象のビット領域と、更新対象のビット領域の上下左右および斜めに位置する計８つのビット領域と、の密集度が全てＮ以上であると判断した場合、更新対象のビット領域の密集度をＮ＋１に更新する。
【００５９】
そして、設計支援装置１０１は、ビットマップ領域ｂｍ内の全てのビット領域に対して密集度を更新するか否かを判断する。続けて、密集度を更新したビット領域があれば、設計支援装置１０１は、処理対象とする密集度Ｎをインクリメントして、再びビットマップ領域ｂｍ内の全てのビット領域に対して密集度を更新するか否かを判断する。一方、密集度を更新したビット領域がない場合については、図１１で説明する。
【００６０】
例えば、図１０の（ａ）の例では、Ｎ＝１である際に、設計支援装置１０１が、ビット領域ｂ１の密集度を更新するか否かを判断する例を示す。図１０の（ａ）が示すように、ビット領域ｂ１と、ビット領域ｂ１の上下左右および斜めのビット領域と、の密集度が全て１である。従って、図１０の（ｂ）で示すように、設計支援装置１０１は、ビット領域ｂ１の密集度を２に更新する。
【００６１】
図１１は、ビット領域の更新終了後のビットマップ領域の一例を示す説明図である。第１の配線密集座標抽出処理において、密集度を更新したビット領域がない場合、設計支援装置１０１は、密集度が最大値となるビット領域を、直線状の配線が密集する領域として特定する。図１１の例では、設計支援装置１０１は、ビットマップ領域ｂｍのうち、密集度が最大値となるハッチを付与したビット領域を、直線状の配線が密集する領域として特定する。そして、設計支援装置１０１は、直線状の配線が密集する領域として特定した領域の中心座標を抽出する。
【００６２】
また、密集度が最大値となるビット領域のかたまりが複数ある場合、設計支援装置１０１は、かたまりを形成するビット領域が多い方を、直線状の配線が密集する領域として特定する。
【００６３】
（第２の配線密集座標抽出処理）
次に、図１２、図１３を用いて、第２の配線密集座標抽出処理を説明する。第２の配線密集座標抽出処理では、２つの作業メモリを用いて、マイナスサイジングを繰り返し行うことにより、ＯＲ処理した配線パターンから直線状の配線が密集する領域を特定し、特定した領域の中心座標を抽出する。また、第２の配線密集座標抽出処理は、図４に示した、第２の領域特定方法をマップ領域に対応して行い、マップ領域に対応した直線状の配線が密集する領域の中心座標を抽出することに相当する。また、マイナスサイジングとは、指定された領域を、指定された幅分縮小する処理である。また、２つの作業メモリを、それぞれ、作業メモリ０、１とする。さらに、作業メモリ０、１を切り替えるためのスイッチ変数として、Ｋを用いて説明する。
【００６４】
図１２は、マイナスサイジングを行った後の配線パターンの一例を示す説明図（その１）である。また、図１３は、マイナスサイジングを行った後の配線パターンの一例を示す説明図（その２）である。第２の配線密集座標抽出処理において、設計支援装置１０１は、ＯＲ処理を行った配線パターンを含むマップ領域ｍを、作業メモリＫ＝０に格納する。図１２の（ａ）では、ＯＲ処理を行った配線パターンを含むマップ領域ｍを、作業メモリ０に格納した状態を示す。換言すれば、図１２の（ａ）で示すマップ領域ｍは、０回目のマイナスサイジングを行った状態でもある。
【００６５】
次に、設計支援装置１０１は、作業メモリ０の配線パターンに対し、配線幅でマイナスサイジングを行い、結果を作業メモリ｜Ｋ−１｜＝１に格納する。ここで、｜ｘ｜は、ｘの絶対値を示す記号である。マイナスサイジングを一回行うことにより、設計支援装置１０１は、幅または高さが所定の配線間隔の２倍の配線パターンを除外することになる。続けて、設計支援装置１０１は、配線パターンが消滅するまで繰り返しマイナスサイジングを行う。図１２の（ｂ）で示すマップ領域ｍは、２回目のマイナスサイジングを行った状態である。また、図１３の（ａ）で示すマップ領域ｍは、４回目のマイナスサイジングを行った状態である。同様に、図１３の（ｂ）で示すマップ領域ｍは、９回目のマイナスサイジングを行った状態である。１０回目のマイナスサイジングを行うと、マップ領域ｍから配線パターンが消滅することになる。
【００６６】
設計支援装置１０１は、マップ領域ｍから配線パターンが消滅した場合、マップ領域ｍから消滅する前の作業メモリに残る配線パターンを、直線状の配線が密集する領域として特定する。そして、設計支援装置１０１は、直線状の配線が密集する領域として特定した領域の中心座標を抽出する。また、配線パターンが消滅した段階で、消滅する前の作業メモリに複数の配線パターンのかたまりがある場合、設計支援装置１０１は、かたまりが大きい配線パターンを、直線状の配線が密集する領域として特定する。
【００６７】
また、設計支援装置１０１は、ＯＲ処理した配線パターンの中心の密集度を、配線パターンが消滅するまでに行ったマイナスサイジングの回数とする。例えば、図１２、図１３の例では、設計支援装置１０１は、ＯＲ処理した配線パターンの中心の密集度を１０とする。
【００６８】
（第３の配線密集座標抽出処理）
次に、図１４、図１５を用いて、第３の配線密集座標抽出処理を説明する。第３の配線密集座標抽出処理では、ＯＲ処理した配線パターンを矩形に分解し、分解することにより得られた矩形群のうちの最大の大きさを有する矩形を、直線状の配線が密集する領域として特定し、特定した領域の中心座標を抽出する。また、第３の配線密集座標抽出処理は、図４に示した、第３の領域特定方法をマップ領域に対応して行い、マップ領域に対応した直線状の配線が密集する領域の中心座標を抽出することに相当する。
【００６９】
図１４は、ＯＲ処理終了後の配線パターンから矩形形状を分解する一例を示す説明図である。第３の配線密集座標抽出処理において、設計支援装置１０１は、ＯＲ処理を行った配線パターンを含むマップ領域ｍを、作業メモリに格納する。図１４の（ａ）では、ＯＲ処理を行った配線パターンを含むマップ領域ｍを、作業メモリ０に格納した状態を示す。
【００７０】
そして、設計支援装置１０１は、ＯＲ処理を行った配線パターンを、矩形に分解する。矩形への分解方法は、一般的なものでよく、配線パターンから、可能な限り大きな矩形形状が得られる分解方法が好ましい。大きな矩形形状が得られる分解方法を行うことにより、密集度が大きい箇所を特定できる精度を向上することができる。また、矩形に分解する際に、設計支援装置１０１は、処理時間の短縮化のために、配線幅２本以下の幅または高さを有する配線パターンを除外してもよい。
【００７１】
以下の説明では、「Ｗｘ」が、幅がｘであることを示し、「Ｈｙ」が、高さがｙであることを示す。図１４の（ｂ）では、矩形へ分解した一例を示す。具体的には、設計支援装置１０１が、ＯＲ処理を行った配線パターンを、Ｗ１×Ｈ１の矩形５個、Ｗ２×Ｈ１の矩形、Ｗ３×Ｈ１の矩形、Ｗ４×Ｈ１の矩形、Ｗ５×Ｈ１の矩形、Ｗ６×Ｈ１の矩形、Ｗ７×Ｈ２の矩形、Ｈ３×Ｗ１の矩形、に分解した例である。
【００７２】
矩形への分解方法の具体例として、設計支援装置１０１は、ＯＲ処理を行った配線パターンを形成する輪郭から、例えば、最大の長さを有するＷ６を特定し、ＯＲ処理を行った配線パターンからＷ６×（Ｈ１＋Ｈ２）の矩形を抽出してもよい。また、前述の抽出では、Ｗ６×（Ｈ１＋Ｈ２）の矩形の右側に、Ｗ１×Ｈ２の矩形という小さい矩形が抽出されてしまうことから、設計支援装置１０１は、Ｗ６×Ｈ１の矩形を抽出するとともに、Ｗ７×Ｈ２の矩形を抽出する。第３の配線密集座標抽出処理の以降の処理については、図１５を用いて説明する。
【００７３】
図１５は、チェック値テーブルの記憶内容の一例を示す説明図である。第３の配線密集座標抽出処理において、ＯＲ処理を行った配線パターンを矩形に分解した後、設計支援装置１０１は、抽出した矩形の幅と高さとをチェック値として、チェック値テーブル１５０１に格納する。チェック値テーブル１５０１は、ＯＲ処理した配線パターンの中心を特定するために用いるチェック値を記憶するテーブルである。
【００７４】
図１５の（ａ）に示すチェック値テーブル１５０１は、設計支援装置１０１が、抽出した各矩形の高さをチェック値としてチェック値テーブル１５０１に格納した後、抽出した各矩形の幅をチェック値としてチェック値テーブル１５０１に格納した状態を示す。具体的には、チェック値テーブル１５０１は、Ｈ１〜Ｈ３、Ｗ１〜Ｗ７を記憶する。
【００７５】
チェック値をチェック値テーブル１５０１に格納した後、設計支援装置１０１は、チェック値の大きい順にソートする。ソートした結果が、図１５の（ｂ）に示すチェック値テーブル１５０１となる。続けて、設計支援装置１０１は、チェック値テーブル１５０１のうちの最大のチェック値を幅または高さとして有する矩形を、ＯＲ処理した配線パターンのうちの直線状の配線が密集する領域として抽出する。図１５の（ｂ）の例では、設計支援装置１０１は、Ｗ７×Ｈ２の矩形を、直線状の配線が密集する領域として特定する。そして、設計支援装置１０１は、特定したＷ７×Ｈ２の矩形の中心座標を抽出する。
【００７６】
また、最大のチェック値を幅または高さとして有する矩形が複数ある場合、設計支援装置１０１は、矩形の面積、矩形の対角辺長の優先順位で、直線状の配線が密集する領域を特定してもよい。また、矩形の面積、矩形の対角辺長を優先順位とすると、最大のチェック値を幅または高さとする細長い形状の配線パターンが直線状の配線が密集する領域として特定されてしまい、第３の配線密集座標抽出処理の目的である、大きな矩形を特定しない恐れがある。そこで、設計支援装置１０１は、優先順位に、幅と高さの比率という条件を加えて直線状の配線が密集する領域を特定してもよい。具体的には、例えば、設計支援装置１０１は、幅／高さの値が最も１に近い矩形を、直線状の配線が密集する領域を特定する。
【００７７】
次に、図１６〜図２０を用いて、設計支援装置１０１が実行する測定ポイント決定処理のフローチャートを説明する。
【００７８】
図１６は、測定ポイント決定処理手順の一例を示すフローチャート（その１）である。また、図１７は、測定ポイント決定処理手順の一例を示すフローチャート（その２）である。
【００７９】
測定ポイント決定処理は、測定ポイントを決定する処理である。設計支援装置１０１は、制御ファイルから、配線情報を受け付ける（ステップＳ１６０１）。次に、設計支援装置１０１は、設計データ２０１を内部形式のデータに変換する（ステップＳ１６０２）。具体的に、ステップＳ１６０２の処理では、設計支援装置１０１は、階層構造をフラットに展開したり、ＯＲ処理により配線パターンの重なりもなくしたり等の処理を行って、内部形式のデータに変換する。
【００８０】
そして、設計支援装置１０１は、内部形式のデータをマップ登録する（ステップＳ１６０３）。次に、設計支援装置１０１は、先頭のマップ領域を選択する（ステップＳ１６０４）。
【００８１】
そして、設計支援装置１０１は、選択したマップ領域から、配線パターンを抽出する（ステップＳ１７０１）。次に、設計支援装置１０１は、配線パターンに対し幅付け処理を実行する（ステップＳ１７０２）。そして、設計支援装置１０１は、幅付け処理した配線パターンに対しＯＲ処理を実行する（ステップＳ１７０３）。次に、設計支援装置１０１は、ＯＲ処理した配線パターンに対して、配線密集座標抽出処理を実行する（ステップＳ１７０４）。配線密集座標抽出処理は、図１８〜図２０で示す第１〜第３の配線密集座標抽出処理のうちのいずれを実行してもよい。
【００８２】
次に、設計支援装置１０１は、配線密集座標抽出処理により抽出した座標から最も近い配線パターンの中心座標を抽出する（ステップＳ１７０５）。ステップＳ１７０５の処理を行う理由として、配線密集座標抽出処理により抽出した座標は、幅付け処理を行ったため、配線上ではない可能性がある。そこで、設計支援装置１０１は、ステップＳ１７０５の処理を行うことにより測定ポイントを配線上にすることができる。
【００８３】
そして、設計支援装置１０１は、全てのマップ領域を選択したか否かを判断する（ステップＳ１７０６）。まだ選択していないマップ領域がある場合（ステップＳ１７０６：Ｎｏ）、設計支援装置１０１は、次のマップ領域を選択する（ステップＳ１７０７）。そして、設計支援装置１０１は、ステップＳ１７０１の処理に移行する。
【００８４】
一方、全てのマップ領域を選択した場合（ステップＳ１７０６：Ｙｅｓ）、設計支援装置１０１は、全てのマップ領域から抽出した座標から、密集度に基づいて、測定ポイントを決定する（ステップＳ１７０８）。次に、設計支援装置１０１は、決定した測定ポイントを測長ファイル２０２に追加する（ステップＳ１７０９）。ステップＳ１７０９の処理終了後、設計支援装置１０１は、測定ポイント決定処理を終了する。測定ポイント決定処理を実行することにより、設計支援装置１０１は、効率よく半導体チップ内の測定ポイントを抽出することができる。
【００８５】
図１８は、第１の配線密集座標抽出処理手順の一例を示すフローチャートである。第１の配線密集座標抽出処理は、ＯＲ処理した配線パターンから、直線状の配線が密集する領域を特定し、領域の中心座標を抽出する処理である。
【００８６】
設計支援装置１０１は、ＯＲ処理した配線パターンに対し、配線幅をメッシュとしたビットマップ領域を作成する（ステップＳ１８０１）。次に、設計支援装置１０１は、ビットマップ領域の各ビット領域の値を０に設定する（ステップＳ１８０２）。そして、設計支援装置１０１は、ＯＲ処理した配線パターンを短冊分解する（ステップＳ１８０３）。次に、設計支援装置１０１は、短冊分解した矩形に含まれるビット領域の密集度を１に設定する（ステップＳ１８０４）。そして、設計支援装置１０１は、Ｎを１に設定する（ステップＳ１８０５）。
【００８７】
次に、設計支援装置１０１は、自身の密集度と、上下左右および斜めに位置するビット領域の密集度とがＮ以上となるビット領域の値をＮ＋１に設定する（ステップＳ１８０６）。そして、設計支援装置１０１は、密集度をＮ＋１に設定したビット領域があるか否かを判断する（ステップＳ１８０７）。密集度をＮ＋１に設定したビット領域がある場合（ステップＳ１８０７：Ｙｅｓ）、設計支援装置１０１は、ＮをＮ＋１に設定する（ステップＳ１８０８）。そして、設計支援装置１０１は、ステップＳ１８０６の処理に移行する。
【００８８】
一方、密集度をＮ＋１に設定したビット領域がない場合（ステップＳ１８０７：Ｎｏ）、設計支援装置１０１は、密集度がＮのビット領域を、直線状の配線が密集する領域として特定する（ステップＳ１８０９）。次に、設計支援装置１０１は、特定した領域の中心座標を抽出する（ステップＳ１８１０）。そして、設計支援装置１０１は、抽出した座標の密集度をＮに設定する（ステップＳ１８１１）。ステップＳ１８１１の処理終了後、設計支援装置１０１は、第１の配線密集座標抽出処理を終了する。第１の配線密集座標抽出処理を実行することにより、設計支援装置１０１は、測定ポイントの候補となる、直線状の配線が密集する領域の中心位置を特定することができる。
【００８９】
図１９は、第２の配線密集座標抽出処理手順の一例を示すフローチャートである。第２の配線密集座標抽出処理は、ＯＲ処理した配線パターンから、直線状の配線が密集する領域を特定し、領域の中心座標を抽出する処理である。
【００９０】
設計支援装置１０１は、Ｋを０に設定する（ステップＳ１９０１）。次に、設計支援装置１０１は、ＯＲ処理した配線パターンを、作業メモリ０に格納する（ステップＳ１９０２）。そして、設計支援装置１０１は、作業メモリＫの配線パターンを、配線幅でマイナスサイジングして、作業メモリ｜Ｋ−１｜に格納する（ステップＳ１９０３）。次に、設計支援装置１０１は、作業メモリ｜Ｋ−１｜の配線パターンがなくなったか否かを判断する（ステップＳ１９０４）。作業メモリ｜Ｋ−１｜の配線パターンがある場合（ステップＳ１９０４：Ｎｏ）、設計支援装置１０１は、Ｋを｜Ｋ−１｜に設定する（ステップＳ１９０５）。そして、設計支援装置１０１は、ステップＳ１９０３の処理に移行する。
【００９１】
一方、作業メモリ｜Ｋ−１｜の配線パターンがなくなった場合（ステップＳ１９０４：Ｙｅｓ）、設計支援装置１０１は、作業メモリＫの配線パターンを、直線状の配線が密集する領域として特定する（ステップＳ１９０６）。次に、設計支援装置１０１は、特定した領域の中心座標を抽出する（ステップＳ１９０７）。そして、設計支援装置１０１は、抽出した座標の密集度をマイナスサイジングした回数に設定する（ステップＳ１９０８）。ステップＳ１９０８の処理終了後、設計支援装置１０１は、第２の配線密集座標抽出処理を終了する。第２の配線密集座標抽出処理を実行することにより、設計支援装置１０１は、測定ポイントの候補となる、直線状の配線が密集する領域の中心位置を特定することができる。
【００９２】
図２０は、第３の配線密集座標抽出処理手順の一例を示すフローチャートである。第３の配線密集座標抽出処理は、ＯＲ処理した配線パターンから、直線状の配線が密集する領域を特定し、領域の中心座標を抽出する処理である。
【００９３】
設計支援装置１０１は、ＯＲ処理した配線パターンを、矩形形状に分解する（ステップＳ２００１）。次に、設計支援装置１０１は、分解した矩形の幅と高さとをチェック値テーブル１５０１に格納する（ステップＳ２００２）。そして、設計支援装置１０１は、チェック値テーブルを、大きい順にソートする（ステップＳ２００３）。次に、設計支援装置１０１は、矩形の幅または高さがチェック値テーブルの最大値となる矩形を、直線状の配線が密集する領域として特定する（ステップＳ２００４）。そして、設計支援装置１０１は、抽出した配線パターンの中心位置を抽出する（ステップＳ２００５）。次に、設計支援装置１０１は、抽出した座標の密集度をチェック値テーブルの最大値に設定する（ステップＳ２００６）。
【００９４】
ステップＳ２００６の処理終了後、設計支援装置１０１は、第３の配線密集座標抽出処理を終了する。第３の配線密集座標抽出処理を実行することにより、設計支援装置１０１は、測定ポイントの候補となる、直線状の配線が密集する領域の中心位置を特定することができる。
【００９５】
以上説明したように、設計支援装置１０１によれば、設計対象回路のレイアウト領域から所定長以上の長さを有する直線状の配線がある配線間隔以下で隣接して配置された配線群を特定する。これにより、設計支援装置１０１は、設計対象回路の製造時にクロムマイグレーションが顕著に発生する箇所を特定できる。そして、設計支援装置１０１の利用者は直線状の配線が密集した箇所を目視して特定しなくてよくなるため、設計支援装置１０１は、設計支援装置１０１の利用者の設計効率を向上させることができる。また、設計対象回路の製造時にクロムマイグレーションが顕著に発生する箇所を測定することにより、設計対象回路を製造する製造業者は、ウェハ上の不良チップを大量に製造し続けることを防止することができる。
【００９６】
また、設計支援装置１０１によれば、所定長以上の長さを有する直線状の配線が所定の配線間隔以下で隣接して配置された配線群から、レイアウト領域内から所定の配線間隔以下で隣接して配置された直線状の配線が密集する領域を特定してもよい。これにより、設計支援装置１０１が測定ポイントを決定するため、所定長以上の長さを有する直線状の配線が所定の配線間隔以下で隣接して配置された配線群から、設計支援装置１０１の利用者は直線状の配線が密集した箇所を目視して特定しなくてよくなる。従って、設計支援装置１０１は、設計支援装置１０１の利用者の設計効率を向上させることができる。
【００９７】
また、設計支援装置１０１によれば、第１〜第３の領域特定方法のいずれを行ってもよい。設計支援装置１０１は、第１または第２の領域特定方法を実行することにより、第３の領域特定方法を実行する場合と比較して、直線状の配線が密集した領域を特定する精度を高くすることができる。ここで、直線状の配線が密集した領域を特定する精度とは、領域特定方法により特定した領域が、直線状の配線が密集した真の領域となる割合である。また、設計支援装置１０１は、第３の領域特定方法を実行することにより、第１または第２の領域特定方法を実行する場合と比較して、繰り返し行う処理がないために、処理時間を短くすることができる。また、設計支援装置１０１は、第１の領域特定方法を実行することにより、第２の領域特定方法を実行する場合と比較して、処理時間を短くすることができる。具体的には、第２の領域特定方法は、領域が消滅するまで繰り返すことになるため、第１の領域特定方法に比べて処理量が多くなる。また、第２の領域特定方法は、マイナスサイジングという、一般的なアルゴリズムを用いるため、第２の領域特定方法を実装する際には、既にあるコードを流用することができる。従って、設計支援方法を実装する開発者は、第２の領域特定方法を採用することにより、容易に設計支援方法を実現することができる。
【００９８】
また、設計支援装置１０１によれば、レイアウト領域のうちの複数のマップ領域の各々のマップ領域に対して第１〜第３の領域特定方法のいずれを行ってもよい。これにより、設計支援装置１０１は、レイアウト領域全体に対して第１〜第３の領域特定方法のいずれを行うよりも、少ない記憶量で実行することができる。また、設計支援装置１０１は、複数のマップ領域の一部を重ねることにより、所定の配線間隔以下で隣接して配置された直線状の配線が、２つのマップ領域にまたがってしまった結果、直線状の配線が密集する領域を特定し損ねることを防止することができる。
【００９９】
なお、本実施の形態で説明した設計支援方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本設計支援プログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ−Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また本設計支援プログラムは、インターネット等のネットワークを介して配布してもよい。
【０１００】
上述した実施の形態に関し、さらに以下の付記を開示する。
【０１０１】
（付記１）コンピュータが、
設計対象回路のレイアウト領域内の配線の位置を示す配線情報に基づいて、前記レイアウト領域から、所定長以上の長さを有する直線状の配線が所定の配線間隔以下で隣接して配置された配線群を特定し、
特定した前記配線群に基づいて、前記レイアウト領域を縦方向および横方向に分割した複数の分割領域に対応して、前記分割領域のそれぞれにおける前記直線状の配線の密集の度合いを示す密集度を算出し、
算出した前記分割領域のそれぞれに対応する前記密集度に基づいて、前記直線状の配線が最も密集する領域の中心位置を前記複数の分割領域の中心位置のうちから特定する、
処理を実行することを特徴とする設計支援方法。
【０１０２】
（付記２）コンピュータが、
設計対象回路のレイアウト領域内の配線の位置を示す配線情報に基づいて、前記レイアウト領域から、所定長以上の長さを有する直線状の配線が所定の配線間隔以下で隣接して配置された配線群を特定し、
特定した前記配線群に基づいて、前記配線群の各々の配線が配置された領域を前記所定の配線間隔に基づいて前記配線群の配線方向とは直交する方向に拡大し、
拡大した領域同士を結合して得られた結合領域を前記配線の配線幅に基づいて縮小し、縮小した前記結合領域が消滅するまで縮小することを繰り返し行い、前記結合領域が消滅する一つ前の結合領域に基づいて、前記直線状の配線が最も密集する領域の中心位置を特定することを特徴とする設計支援方法。
【０１０３】
（付記３）コンピュータが、
設計対象回路のレイアウト領域内の配線の位置を示す配線情報に基づいて、前記レイアウト領域から、所定長以上の長さを有する直線状の配線が所定の配線間隔以下で隣接して配置された配線群を特定し、
特定した前記配線群に基づいて、前記配線群の各々の配線が配置された領域を前記所定の配線間隔に基づいて前記配線群の配線方向とは直交する方向に拡大し、
拡大した領域同士を結合して得られた結合領域を矩形領域に分割し、分割された前記矩形領域のうちから最大の矩形領域を抽出し、
抽出した前記最大の矩形領域の中心位置を特定することを特徴とする設計支援方法。
【０１０４】
（付記４）前記コンピュータが、
前記配線情報に基づいて、前記レイアウト領域のうちの複数の部分領域の各々の部分領域に対応して、前記各々の部分領域から、前記所定長以上の長さを有する直線状の配線が前記所定の配線間隔以下で隣接して配置された配線群を特定し、
特定した前記各々の部分領域に対応する前記配線群に基づいて、前記各々の部分領域を縦方向および横方向に分割した複数の分割領域に対応して、前記分割領域のそれぞれにおける前記直線状の配線の密集の度合いを示す密集度を算出し、
算出した前記各々の部分領域に対応する前記分割領域のそれぞれに対応する前記密集度に基づいて、前記直線状の配線が最も密集する領域の中心位置を前記複数の分割領域の中心位置のうちから特定することを特徴とする付記１〜３のいずれか一つに記載の設計支援方法。
【０１０５】
（付記５）前記コンピュータが、
前記配線情報に基づいて、前記レイアウト領域のうちの複数の部分領域の各々の部分領域に対応して、前記各々の部分領域から、前記所定長以上の長さを有する直線状の配線が前記所定の配線間隔以下で隣接して配置された配線群を特定し、
特定した前記各々の部分領域に対応する前記配線群に基づいて、前記各々の部分領域に対応して、特定した前記各々の部分領域に対応する前記配線群の各々の配線が配置された領域を前記所定の配線間隔に基づいて前記各々の部分領域に対応する前記配線群の配線方向とは直交する方向に拡大し、
拡大した領域同士を結合して得られた前記各々の部分領域に対応する結合領域を前記配線の配線幅に基づいて縮小し、縮小した前記各々の部分領域に対応する結合領域が消滅するまで縮小することを繰り返し行い、前記各々の部分領域に対応する結合領域が消滅する一つ前の結合領域に基づいて、前記直線状の配線が最も密集する領域の中心位置を特定することを特徴とする付記１〜４のいずれか一つに記載の設計支援方法。
【０１０６】
（付記６）前記コンピュータが、
前記配線情報に基づいて、前記レイアウト領域のうちの複数の部分領域の各々の部分領域に対応して、前記各々の部分領域から、前記所定長以上の長さを有する直線状の配線が前記所定の配線間隔以下で隣接して配置された配線群を特定し、
特定した前記各々の部分領域に対応する前記配線群に基づいて、前記各々の部分領域に対応して、前記各々の部分領域に対応する前記配線群の各々の配線が配置された領域を前記所定の配線間隔に基づいて前記各々の部分領域に対応する前記配線群の配線方向とは直交する方向に拡大し、
拡大した領域同士を結合して得られた前記各々の部分領域に対応する結合領域を矩形領域に分割し、分割された前記矩形領域のうちから最大の矩形領域を抽出し、
抽出した前記最大の矩形領域の中心位置を特定することを特徴とする付記１〜５のいずれか一つに記載の設計支援方法。
【０１０７】
（付記７）コンピュータに、
設計対象回路のレイアウト領域内の配線の位置を示す配線情報に基づいて、前記レイアウト領域から、所定長以上の長さを有する直線状の配線が所定の配線間隔以下で隣接して配置された配線群を特定し、
特定した前記配線群に基づいて、前記レイアウト領域を縦方向および横方向に分割した複数の分割領域に対応して、前記分割領域のそれぞれにおける前記直線状の配線の密集の度合いを示す密集度を算出し、
算出した前記分割領域のそれぞれに対応する前記密集度に基づいて、前記直線状の配線が最も密集する領域の中心位置を前記複数の分割領域の中心位置のうちから特定する、
処理を実行させることを特徴とする設計支援プログラム。
【０１０８】
（付記８）設計対象回路のレイアウト領域内の配線の位置を示す配線情報に基づいて、前記レイアウト領域から、所定長以上の長さを有する直線状の配線が所定の配線間隔以下で隣接して配置された配線群を特定し、
特定した前記配線群に基づいて、前記レイアウト領域を縦方向および横方向に分割した複数の分割領域に対応して、前記分割領域のそれぞれにおける前記直線状の配線の密集の度合いを示す密集度を算出し、
算出した前記分割領域のそれぞれに対応する前記密集度に基づいて、前記直線状の配線が最も密集する領域の中心位置を前記複数の分割領域の中心位置のうちから特定する
制御部を有することを特徴とする設計支援装置。
【符号の説明】
【０１０９】
ｒ  レイアウト領域
ｗａ〜ｗｆ、ｗａ＿１、ｗｂ＿１、ｗｂ＿２、ｗｅ＿１  配線
１０１  設計支援装置
４００  制御部
４０１  配線特定部
４０２  領域特定部
４０３  出力部
【図１】
2015215781.tif 000003
【図２】
2015215781.tif 000004
【図３】
2015215781.tif 000005
【図４】
2015215781.tif 000006
【図５】
2015215781.tif 000007
【図６】
2015215781.tif 000008
【図７】
2015215781.tif 000009
【図８】
2015215781.tif 000010
【図９】
2015215781.tif 000011
【図１０】
2015215781.tif 000012
【図１１】
2015215781.tif 000013
【図１２】
2015215781.tif 000014
【図１３】
2015215781.tif 000015
【図１４】
2015215781.tif 000016
【図１５】
2015215781.tif 000017
【図１６】
2015215781.tif 000018
【図１７】
2015215781.tif 000019
【図１８】
2015215781.tif 000020
【図１９】
2015215781.tif 000021
【図２０】
2015215781.tif 000022