(57)【要約】【課題】  配線の迂回の有無を容易に検出することができるレイアウト検証装置を提供する。【解決手段】  配線許容領域決定部１４は、配線情報記憶部１１および素子情報記憶部１２を参照して、配線に接続される端子を有する素子の位置に基づいて、配線の配置が許容される許容領域を決定する。迂回部検出部１５は、許容領域外の配線の部分を迂回部として検出する。迂回判定部１６は、迂回部を有する配線を迂回している配線として判定する。【選択図】        図１
2005250890.tif 000002
【特許請求の範囲】
【請求項１】
配線のレイアウトの適正を検証するレイアウト検証装置であって、
配線に接続される端子を有する素子の位置に基づいて、前記配線の配置が許容される許容領域を決定する手段と、
前記配線が前記許容領域に収まらないときには、前記配線が迂回している配線と判定する判定手段とを備えたレイアウト検証装置。
【請求項２】
前記判定手段は、前記配線を構成する各線分の両端の座標と、前記許容領域の境界の座標とに基づいて前記線分が配線許容領域内にあるか否かを調べ、その結果に従って前記配線が前記許容領域に収まるか否かを判定する、請求項１記載のレイアウト検証装置。
【請求項３】
前記判定手段は、前記許容領域の配線のレイアウト画像データを生成または取得し、前記レイアウト画像データに基づいて配線を表す画素が連続しているか否かを調べ、その結果に従って前記配線が前記許容領域に収まるか否かを判定する、請求項１記載のレイアウト検証装置。
【請求項４】
配線のレイアウトの適正を検証するレイアウト検証装置であって、
配線のレイアウト画像データを生成または取得する手段と、
前記配線のレイアウト画像データがブロックに分割されたときに、前記ブロック内に所定の図形が存在するときに、前記レイアウト画像内の配線がショートし、または余剰部分を有すると判定する判定手段とを備えたレイアウト検証装置。
【請求項５】
前記判定手段は、前記ブロック内に十字形図形が存在するときに、前記レイアウト画像内の配線がショートし、または余剰部分を有すると判定する、請求項４記載のレイアウト検証装置。
【請求項６】
前記判定手段は、さらに、前記十字形図形が存在しないブロックと、前記ブロックに隣接するブロックとからなる複数のブロック内に十字形図形が存在するときに、前記レイアウト画像内の配線がショートし、または余剰部分を有すると判定する、請求項５記載のレイアウト検証装置。
【請求項７】
前記判定手段は、さらに、前記ブロック内の十時形図形および前記複数のブロック内の十字形図形の位置が識別可能なように、前記配線のレイアウトを表わす画面の表示を制御する、請求項６記載のレイアウト検証装置。
【請求項８】
前記判定手段は、さらに、Ｌ字形図形またはＴ字形図形が存在するブロックがあるときに、前記ブロックと、前記ブロックに隣接するブロックとからなる複数のブロック内に十字型図形が存在するときに、前記レイアウト画像内の配線がショートし、または余剰部分を有すると判定する、請求項５記載のレイアウト検証装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、レイアウト検証装置に関し、特に、配線のレイアウトの適正を検証するレイアウト検証装置に関する。
【背景技術】
【０００２】
半導体集積回路の配線のレイアウト設計後のレイアウトの検証は、従来では、目視によって、電源系統の配線と、グランド系統の配線とが接続してショートしているかをチェックする方法が一般的であった。
【０００３】
近年、半導体集積回路の大規模、高集積化に伴って、すべてを目視によりチェックするのが困難となり、レイアウト検証の一部を自動で行なわせる方法が提案されている。
【０００４】
たとえば、特許文献１には、配線のショートしている箇所を絞り込む方法が記載されている。すなわち、配線名が認識できるパターンデータ１１を矩形データに分割し（１２）その分割データに名称を付加したデータ１３を生成し、このデータ１３をデバイス・回路接続情報、配線レイヤ、接続端子情報を抽出するテクノロジールール１４に基づいて回路接続情報、使用レイヤ情報を抽出し（１５）、抽出された矩形データの接続情報をツリー構造のデータとして記憶し、これを検証ルール１７に基づいて解析し（１８）、回路接続、ルール違反、配線名毎の配線使用レイヤ、接続端子違反を検出し、このエラー結果１９を情報抽出結果１６の矩形データの接続情報に基づき直接エラー箇所に関係しない矩形データを除外し（２０）、エラー箇所を絞り込んだエラー結果２１を出力する。
【０００５】
特許文献１では、このような構成を有することにより、接続されてはならない配線の検出において、従来では検証結果からエラー箇所を絞り込むことが困難であったものを容易に判別できる。
【特許文献１】特開平９−１９８４１４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１では、ショート箇所を単に絞り込んでいるだけであり、ショー箇所の検出の信頼性が高くはない。また、その絞り込みも十分でないため、目視によって絞り込んだ箇所が実際にショートしているかどうかを確かめなければならないユーザの負担が大きい。
【０００７】
また、特許文献１では、配線の余剰部分の有無を検出することができない。さらに、特許文献１では、配線が迂回しているか否かも検出することができない。
【０００８】
それゆえに、本発明の目的は、配線の迂回の有無を容易に検出することができるレイアウト検証装置を提供することである。
【０００９】
また、本発明の他の目的は、高い信頼性をもって、容易に配線のショートまたは余剰部分の有無を検出することができるレイアウト検証装置を提供することである。
【課題を解決するための手段】
【００１０】
上記課題を解決するために、本発明のある局面に係るレイアウト検証装置は、配線のレイアウトの適正を検証するレイアウト検証装置であって、配線に接続される端子を有する素子の位置に基づいて、配線の配置が許容される許容領域を決定する手段と、配線が許容領域に収まらないときには、配線が迂回している配線と判定する判定手段とを備える。
【００１１】
また、本発明の別の局面に係るレイアウト検証装置は、配線のレイアウトの適正を検証するレイアウト検証装置であって、配線のレイアウト画像データを生成または取得する手段と、配線のレイアウト画像データがブロックに分割されたときに、ブロック内に所定の図形が存在するときに、レイアウト画像内の配線がショートし、または余剰部分を有すると判定する判定手段とを備える。
【発明の効果】
【００１２】
本発明のある局面に係るレイアウト検証装置によれば、配線の迂回の有無を容易に検出することができる。
【００１３】
また、本発明の別の局面に係るレイアウト検証装置によれば、高い信頼性をもって、容易に配線のショートまたは余剰部分の有無を検出することができる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の実施の形態について図面を用いて説明する。
【００１５】
［第１の実施形態］
（構成）
図１は、本実施の形態に係るレイアウト検証システムの構成を示す。同図を参照して、このレイアウト検証システムは、レイアウト検証装置１００と、表示装置１５０とを備える。レイアウト検証装置１００は、配線情報記憶部１１と、素子情報記憶部１２と、配線情報取得部１３と、配線許容領域決定部１４と、迂回部検出部１５と、迂回判定部１６とを備える。
【００１６】
配線情報記憶部１１は、配線情報を記憶する。図２は、配線情報の例を示す。同図を参照して、配線情報は、各配線を識別する配線番号と、配線に接続する端子を識別する端子番号と、配線を構成する各線分の情報からなる。各線分の情報は、両端の（Ｘ座標，Ｙ座標）で表す。たとえば、配線番号１の配線に接続する２つの端子の端子番号は１１と１２であり、配線番号１の配線は、６つの線分からなる。線分１の両端の座標は、（３０，６５）および（３０，５８）であり、線分２の両端の座標は、（３０，５８）および（４５，５８）であり、線分３の両端の座標は、（４５，５８）および（４５，５２）であり、線分４の両端の座標は、（４５，５２）および（６０，５２）であり、線分５の両端の座標は、（６０，５２）および（６０，４５）である。
【００１７】
素子情報記憶部１２は、素子情報を記憶する。図３は、素子情報の例を示す。同図を参照して、素子情報は、各素子を識別する素子番号と、素子が有する端子を識別する端子番号と、素子の配置を表す配置情報からなる。素子の配置情報は、素子が配置されている領域のＸ座標の最小値ＸＭＩＮ、Ｘ座標の最大値ＸＭＡＸ、Ｙ座標の最小値ＹＭＩＮ、およびＹ座標の最大値ＹＭＡＸからなる。
【００１８】
配線情報取得部１３は、配線情報記憶部１１から配線情報を１つずつ読出して、配線許容領域決定部１４に出力する。
【００１９】
配線許容領域決定部１４は、配線情報を受けて、その配線の端子を特定し、さらに素子情報記憶部１２を参照して、その端子を有する素子を特定する。配線許容領域決定部１４は。素子情報記憶部１２から特定した２個の素子番号の素子の配置情報を読出して、当該配線情報に基づいて配線許容領域を決定する。すなわち、配線許容領域決定部１４は、一方の素子の配置情報（ＸＭＩＮ（１）、ＸＭＡＸ（１）、ＹＭＩＮ（１）、ＹＭＡＸ（１））と他方の素子の配置情報（ＸＭＩＮ（２）、ＸＭＡＸ（２）、ＹＭＩＮ（２）、ＹＭＡＸ（２））とを読出し、ＸＭＩＮ（１）とＸＭＩＮ（２）のうち小さい方を特定してＸ１とし、ＸＭＡＸ（１）とＸＭＡＸ（２）のうちの大きい方を特定してＸ２とし、ＹＭＩＮ（１）とＹＭＩＮ（２）のうちの小さい方を特定してＹ１とし、ＹＭＡＸ（１）とＹＭＡＸ（２）のうちの大きい方を特定してＹ２とする。配線許容領域決定部１４は、Ｘ１′＝（Ｘ１−α）、Ｘ２′＝（Ｘ２＋α）、Ｙ１′＝（Ｙ１−α）、Ｙ２′＝（Ｙ２＋α）とし、Ｘ座標がＸ１′以上、かつＸ２′以下であり、Ｙ座標がＹ１′以上、かつＹ２′以下である領域を配線許容領域として決定し、この領域を表す配線許容領域情報（Ｘ１′、Ｘ２′、Ｙ１′、Ｙ２′）を迂回検出部１５に出力する。このようにαを加算または減算したのは、配線と接続する端子のＸ座標がＸ１若しくはＸ２の近傍、または配線と接続する端子のＹ座標がＹ１若しくはＹ２の近傍にあるときに、その端子からの配線の引出し用に余裕を持たせるためである。
【００２０】
迂回部検出部１５は、配線を構成する各線分が配線許容領域内に収まる場合、すなわち各線分の両端のＸ座標がＸ１′以上かつＸ２′以下であり、両端のＹ座標がＹ１′以上かつＹ２′以下であるときには、表示装置１５０にその線分を通常表示する。迂回部検出部１５は、配線を構成する各線分が配線許容領域内に収まらない場合、すなわち、各線分の少なくとも一端のＸ座標がＸ１′以上かつＸ２′以下でないか、または少なくとも一端のＹ座標がＹ１′以上かつＹ２′以下でないときには、表示装置１５０にその線分のうち、配線許容領域内にある部分を通常表示し、配線許容領域外にある部分をハイライト表示する。
【００２１】
迂回判定部１６は、配線を構成する線分のうち、１つでも配線許容領域内に収まらない線分がある場合には、その配線を迂回している配線として判定し、その旨を表示装置１５０に表示する。迂回判定部１６は、配線を構成するすべての線分が配線許容領域内に収まる場合には、その配線を迂回していない配線として判定し、その旨を表示装置１５０に表示する。
【００２２】
（動作）
図４は、本実施の形態に係るレイアウト検証システムの動作手順を示すフローチャートである。同図を参照して、まず、配線情報取得部１３は、配線情報を１つずつ取得する。すなわち、配線情報取得部１３は、配線情報記憶部１１から１つの配線情報を読出して配線許容領域決定部１４および迂回部検出部１５に出力する（Ｓ１０１）。
【００２３】
次に、配線許容領域決定部１４は、配線に接続する端子を有する素子を特定する。すなわち、配線許容領域決定部１４は、受けた配線情報に含まれる２個の端子番号を特定する。配線許容領域決定部１４は、素子情報記憶部１２から特定した各端子番号の端子をそれぞれ有する２個の素子番号を特定する（Ｓ１０２）。
【００２４】
次に、配線許容領域決定部１４は、素子情報記憶部１２から特定した２個の素子番号の素子の配置情報を読出して、当該配線情報に基づいて配線許容領域を決定する。すなわち、配線許容領域決定部１４は、一方の素子の配置情報（ＸＭＩＮ（１）、ＸＭＡＸ（１）、ＹＭＩＮ（１）、ＹＭＡＸ（１））と他方の素子の配置情報（ＸＭＩＮ（２）、ＸＭＡＸ（２）、ＹＭＩＮ（２）、ＹＭＡＸ（２））を読出し、ＸＭＩＮ（１）とＸＭＩＮ（２）のうち小さい方を特定してＸ１とし、ＸＭＡＸ（１）とＸＭＡＸ（２）のうちの大きい方を特定してＸ２とし、ＹＭＩＮ（１）とＹＭＩＮ（２）のうちの小さい方を特定してＹ１とし、ＹＭＡＸ（１）とＹＭＡＸ（２）のうちの大きい方を特定してＹ２とする。配線許容領域決定部１４は、Ｘ１′＝（Ｘ１−α）、Ｘ２′＝（Ｘ２＋α）、Ｙ１′＝（Ｙ１−α）、Ｙ２′＝（Ｙ２＋α）とし、Ｘ座標がＸ１′以上、かつＸ２′以下であり、Ｙ座標がＹ１′以上、かつＹ２′以下である領域を配線許容領域として決定し、この領域を表す配線許容領域情報（Ｘ１′、Ｘ２′、Ｙ１′、Ｙ２′）を迂回検出部１５に出力する（Ｓ１０３）。
【００２５】
次に、迂回部検出部１５は、配線情報および配線許容領域情報（Ｘ１′、Ｘ２′、Ｙ１′、Ｙ２′）を受けて、配線を構成する各線分が配線許容領域内に収まるか否かを調べる（Ｓ１０４）。
【００２６】
迂回部検出部１５は、配線を構成する各線分が配線許容領域内に収まる場合、すなわち各線分の両端のＸ座標がＸ１′以上かつＸ２′以下であり、両端のＹ座標がＹ１′以上かつＹ２′以下であるときには、表示装置１５０にその線分を通常表示する（Ｓ１０５）。
【００２７】
一方、迂回部検出部１５は、配線を構成する各線分が配線許容領域内に収まらない場合、すなわち、各線分の少なくとも一端のＸ座標がＸ１′以上かつＸ２′以下でないか、または少なくとも一端のＹ座標がＹ１′以上かつＹ２′以下でないときには、表示装置１５０にその線分のうち、配線許容領域内にある部分を通常表示し、配線許容領域外にある部分をハイライト表示する（Ｓ１０６）。
【００２８】
次に、迂回部検出部１５は、配線を構成するすべての線分についてＳ１０４〜Ｓ１０６の処理を繰返す（Ｓ１０７）。
【００２９】
次に、迂回判定部１６は、配線を構成する線分のうち、１つでも配線許容領域内に収まらない線分がある場合には、その配線を迂回している配線として判定し、その旨を表示装置１５０に表示する。一方、迂回判定部１６は、配線を構成するすべての線分が配線許容領域内に収まる場合には、その配線を迂回していない配線として判定し、その旨を表示装置１５０に表示する（Ｓ１０８）。
【００３０】
そして、配線を構成するすべての線分についてＳ１０４〜Ｓ１０８の処理が終了したら、残りの配線情報についてＳ１０１〜Ｓ１０８の処理が繰返される（Ｓ１０９）。
【００３１】
（動作例１）
次に、本実施の形態のある動作例を説明する。図５は、ある１つの配線について、配線情報、その配線と接続する素子の配置情報、および配線許容領域情報の位置関係を表す図である。同図に示すように、配線番号１の配線と接続する一方の端子を有する素子番号１の素子の配置情報（ＸＭＩＮ（１）、ＸＭＡＸ（１）、ＹＭＩＮ（１）、ＹＭＡＸ（１））は、（２５、３５、６５、７５）である。一方、配線番号１の素子と接続する他方の端子を有する素子番号２の素子の配置情報（ＸＭＩＮ（２）、ＸＭＡＸ（２）、ＹＭＩＮ（２）、ＹＭＡＸ（２））は、（５５、６５、３５、４５）である。
【００３２】
配線許容領域情報（Ｘ１′、Ｘ２′、Ｙ１′、Ｙ２′）は、α＝５とすると（２０、７０、３０、８０）となる。
【００３３】
配線番号１の配線を構成する線分１の一端のＸ座標３０は、Ｘ１′以上かつＸ２′以下であり、Ｙ座標６５は、Ｙ１′以上かつＹ２′以下である。配線番号１の配線を構成する線分１の他端のＸ座標３０は、Ｘ１′以上かつＸ２′以下であり、Ｙ座標５８は、Ｙ１′以上かつＹ２′以下である。
【００３４】
配線番号１の配線を構成する線分２の一端のＸ座標３０およびＹ座標５８は、上述の通りである。配線番号１の配線を構成する線分２の他端のＸ座標４５は、Ｘ１′以上かつＸ２′以下であり、Ｙ座標５８は、Ｙ１′以上かつＹ２′以下である。
【００３５】
配線番号１の配線を構成する線分３の一端のＸ座標４５およびＹ座標５８は、上述の通りである。配線番号１の配線を構成する線分３の他端のＸ座標４５は、Ｘ１′以上かつＸ２′以下であり、Ｙ座標５２は、Ｙ１′以上かつＹ２′以下である。
【００３６】
配線番号１の配線を構成する線分４の一端のＸ座標４５およびＹ座標５２は、上述の通りである。配線番号１の配線を構成する線分４の他端のＸ座標６０は、Ｘ１′以上かつＸ２′以下であり、Ｙ座標５２は、Ｙ１′以上かつＹ２′以下である。
【００３７】
配線番号１の配線を構成する線分５の一端のＸ座標６０およびＹ座標４５は、上述の通りである。配線番号１の配線を構成する線分５の他端のＸ座標６０は、Ｘ１′以上かつＸ２′以下であり、Ｙ座標４５は、Ｙ１′以上かつＹ２′以下である。
【００３８】
図６は、迂回判定後に表示装置１５０に表示されるレイアウト画面を示す。上述したように配線番号１の配線を構成するすべての線分の両端のＸ座標はＸ１′以上かつＸ２′以下であり、Ｙ座標はＹ１′以上かつＹ２′以下であり、すべての線分は、配線許容領域内に収容されるので、配線番号１の配線を構成するすべての線分が通常表示されるとともに、配線が迂回していない旨が表示される。
【００３９】
（動作例２）
次に、本実施の形態の別の動作例を説明する。図７は、別の１つの配線について、配線情報、その配線と接続する素子の配置情報、および配線許容領域情報の位置関係を表わす図である。同図に示すように、配線番号２の素子と接続する一方の端子を有する素子番号３の素子の配置情報（ＸＭＩＮ（１）、ＸＭＡＸ（１）、ＹＭＩＮ（１）、ＹＭＡＸ（１））は、（１２５、１３５、１６５、１７５）である。一方、配線番号１の素子と接続する他方の端子を有する素子番号４の素子の配置情報（ＸＭＩＮ（２）、ＸＭＡＸ（２）、ＹＭＩＮ（２）、ＹＭＡＸ（２））は、（１５５、１６５、１３５、１４５）である。
【００４０】
配線許容領域情報（Ｘ１′、Ｘ２′、Ｙ１′、Ｙ２′）は、α＝５とすると（１２０、１７０、１３０、１８０）となる。
【００４１】
配線番号２の配線を構成する線分１の一端のＸ座標１３０は、Ｘ１′以上かつＸ２′以下であり、Ｙ座標１６５は、Ｙ１′以上かつＹ２′以下である。配線番号２の配線を構成する線分１の他端のＸ座標１３０は、Ｘ１′以上かつＸ２′以下であり、Ｙ座標１５８は、Ｙ１′以上かつＹ２′以下である。
【００４２】
配線番号２の配線を構成する線分２の一端のＸ座標１３０およびＹ座標１５８は、上述の通りである。配線番号２の配線を構成する線分２の他端のＸ座標１５５は、Ｘ１′以上かつＸ２′以下であり、Ｙ座標１５８は、Ｙ１′以上かつＹ２′以下である。
【００４３】
配線番号２の配線を構成する線分３の一端のＸ座標１５５およびＹ座標１５８は、上述の通りである。配線番号２の配線を構成する線分３の他端のＸ座標１５５は、Ｘ１′以上かつＸ２′以下であり、Ｙ座標１６５は、Ｙ１′以上かつＹ２′以下である。
【００４４】
配線番号２の配線を構成する線分４の一端のＸ座標１５５およびＹ座標１６５は、上述の通りである。配線番号２の配線を構成する線分４の他端のＸ座標１８５は、Ｘ１′以上かつＸ２′以下ではなく、Ｙ座標１６５は、Ｙ１′以上かつＹ２′以下である。
【００４５】
配線番号２の配線を構成する線分５の一端のＸ座標１８５およびＹ座標１６５は、上述の通りである。配線番号２の配線を構成する線分５の他端のＸ座標１８５は、Ｘ１′以上かつＸ２′以下ではなく、Ｙ座標１５０は、Ｙ１′以上かつＹ２′以下である。
【００４６】
配線番号２の配線を構成する線分６の一端のＸ座標１８５およびＹ座標１５０は、上述の通りである。配線番号２の配線を構成する線分６の他端のＸ座標１６０は、Ｘ１′以上かつＸ２′以下であり、Ｙ座標１５０は、Ｙ１′以上かつＹ２′以下である。
【００４７】
配線番号２の配線を構成する線分７の一端のＸ座標１６０およびＹ座標１５０は、上述の通りである。配線番号２の配線を構成する線分７の他端のＸ座標１６０は、Ｘ１′以上かつＸ２′以下であり、Ｙ座標１４５は、Ｙ１′以上かつＹ２′以下である。
【００４８】
図８は、迂回判定後に表示装置１５０に表示されるレイアウト画面を示す。上述したように配線番号２の配線を構成する線分１、２、３および７の両端のＸ座標は、Ｘ１′以上かつＸ２′以下であり、Ｙ座標は、Ｙ１′以上かつＹ２′以下であり、これらの線分は配線許容領域内に収容されるので、これらの線分は通常表示される。一方、線分４、５、および６の少なくとも一端のＸ座標は、Ｘ１′以上かつＸ２′以下でないか、または少なくとも一端のＹ座標は、Ｙ１′以上かつＹ２′以下でなく、これらの線分は配線許容領域内に収容されないので、これらの線分の配線許容領域内にある部分が通常表示され、配線許容領域外にある部分がハイライト表示される。
【００４９】
また、配線番号２の配線を構成する線分のうち、１つでも配線許容領域内に収まらない線分があるので、配線が迂回している旨が表示される。
【００５０】
以上のように、本実施の形態に係るレイアウト検証装置１００によれば、配線を構成する各線分が配線に接続される素子の位置に基づいて定められる配線許容領域に収容されるかどうかを検出することによって、容易に配線の迂回の有無を検出することができる。
【００５１】
［第２の実施形態］
図９は、本実施の形態に係るレイアウト検証システムの構成を示す。同図を参照して、このレイアウト検証システムは、レイアウト検証装置２００と、撮像装置１６５と、表示装置１５０とを備える。レイアウト検証装置２００は、配線情報記憶部１１と、素子情報記憶部１２と、配線情報取得部１３と、配線許容領域決定部１４と、配線表示制御部２１と、配線許容領域画像生成制御部２２と、迂回部検出部２５と、迂回判定部２６とを備える。同図において、図１に示すレイアウト検証システムが備える構成要素と同一の構成要素には、同一の符号を付している。以下、図１のレイアウト検証システムには含まれない構成要素について説明する。
【００５２】
配線表示制御部２１は、配線情報取得部１３から配線情報を受け、配線許容領域決定部１４から素子情報を受けて、これらの情報に基づいて、配線および素子を表示装置１５０に表示する。
【００５３】
配線許容領域画像生成制御部２２は、受けた配線許容領域情報（Ｘ１′、Ｘ２′、Ｙ１′、Ｙ２′）に基づいて、撮像装置１６５を指示して、表示装置１５０内の配線許容領域を撮影して配線許容領域画像を生成させて、生成された配線許容領域画像を取得する。
【００５４】
撮像装置１６５は、表示装置１５０内の配線許容領域を撮影して配線許容領域画像を生成する。この配線許容領域画像は、２値化画像であり、配線を表す画素値は「１」とし、背景は「０」とする。
【００５５】
迂回部検出部２５は、配線許容領域画像を構成する画素値「１」の画素が連続しているか否かに従って、配線が迂回しているか否かを調べる。すなわち、迂回部検出部２５は、画素値「１」の画素が連続して１つのセグメントを構成しているか、または連続せずに、複数のセグメントを構成しているかを調べる。迂回判定部２６は、配線許容領域画像の画素値「１」の画素が連続せずに、複数のセグメントを構成する場合には、連続していない画素を含む一定の大きさの領域をハイライト表示する。
【００５６】
迂回判定部２６は、配線許容領域画像を構成する画素値「１」の画素が連続して１つのセグメントを構成する場合には、その配線を迂回していない配線として判定し、その旨を表示装置１５０に表示する。また、迂回判定部２６は、配線許容領域画像を構成する画素値「１」の画素が連続せずに、複数のセグメントを構成している場合に、その配線を迂回している配線として判定し、その旨を表示装置１５０に表示する。
【００５７】
（動作）
図１０は、本実施の形態に係るレイアウト検証システムの動作手順を示すフローチャートである。同図を参照して、まず、配線情報取得部１３は、第１の実施形態と同様にして、配線情報を１つずつ取得する。すなわち、配線情報取得部１３は、配線情報記憶部１１から１つの配線情報を読出して配線許容領域決定部１４および配線表示制御部２１に出力する（Ｓ２０１）。
【００５８】
次に、配線許容領域決定部１４は、第１の実施形態と同様にして、配線に接続する端子を有する素子を特定する。すなわち、配線許容領域決定部１４は、受けた配線情報に含まれる２個の端子番号を特定する。配線許容領域決定部１４は、素子情報記憶部１２から特定した各端子番号の端子をそれぞれ有する２個の素子番号を特定する（Ｓ２０２）。
【００５９】
次に、配線許容領域決定部１４は、第１の実施形態と同様にして、素子情報記憶部１２から特定した２個の素子番号の素子の配置情報を読出して、当該配線情報に基づいて配線許容領域を決定する。すなわち、配線許容領域決定部１４は、一方の素子の配置情報（ＸＭＩＮ（１）、ＸＭＡＸ（１）、ＹＭＩＮ（１）、ＹＭＡＸ（１））と他方の素子の配置情報（ＸＭＩＮ（２）、ＸＭＡＸ（２）、ＹＭＩＮ（２）、ＹＭＡＸ（２））を読出し、ＸＭＩＮ（１）とＸＭＩＮ（２）のうち小さい方を特定してＸ１とし、ＸＭＡＸ（１）とＸＭＡＸ（２）のうちの大きい方を特定しえｔＸ２とし、ＹＭＩＮ（１）とＹＭＩＮ（２）のうちの小さい方を特定してＹ１とし、ＹＭＡＸ（１）とＹＭＡＸ（２）のうちの大きい方を特定してＹ２とする。配線許容領域決定部１４は、Ｘ１′＝（Ｘ１−α）、Ｘ２′＝（Ｘ２＋α）、Ｙ１′＝（Ｙ１−α）、Ｙ２′＝（Ｙ２＋α）とし、一方の素子の配置情報（ＸＭＩＮ（１）、ＸＭＡＸ（１）、ＹＭＩＮ（１）、ＹＭＡＸ（１））と他方の素子の配置情報（ＸＭＩＮ（２）、ＸＭＡＸ（２）、ＹＭＩＮ（２）、ＹＭＡＸ（２））を読出し、ＸＭＩＮ（１）とＸＭＩＮ（２）のうち小さい方を特定してＸ１とし、ＸＭＡＸ（１）とＸＭＡＸ（２）のうちの大きい方を特定してＸ２とし、ＹＭＩＮ（１）とＹＭＩＮ（２）のうちの小さい方を特定してＹ１とし、ＹＭＡＸ（１）とＹＭＡＸ（２）のうちの大きい方を特定してＹ２とする。配線許容領域決定部１４は、Ｘ１′＝（Ｘ１−α）、Ｘ２′＝（Ｘ２＋α）、Ｙ１′＝（Ｙ１−α）、Ｙ２′＝（Ｙ２＋α）とし、Ｘ座標がＸ１′以上、かつＸ２′以下であり、Ｙ座標がＹ１′以上、かつＹ２′以下である領域を配線許容領域として決定し、この領域を表す配線許容領域情報（Ｘ１′、Ｘ２′、Ｙ１′、Ｙ２′）を配線許容領域画像生成部２２に出力する。また、配線許容領域決定部１４は、２個の素子の配置情報を配線表示制御部２１に出力する（Ｓ２０３）。
【００６０】
次に、配線表示制御部２１は、受けた配線情報と素子情報に基いて、配線と素子を表示装置１５０に表示する（Ｓ２０４）。
【００６１】
次に、配線許容領域画像生成制御部２２は、受けた配線許容領域情報（Ｘ１′、Ｘ２′、Ｙ１′、Ｙ２′）に基づいて、撮像装置１６５を指示して、表示装置１５０内の配線許容領域を撮影して配線許容領域画像を生成させて、生成された配線許容領域画像を取得する（Ｓ２０５）。
【００６２】
次に、迂回部検出部２５は、配線許容領域画像を構成する画素値「１」の画素が連続しているか否かに従って、配線が迂回しているか否かを調べる。すなわち、迂回部検出部２５は、画素値「１」の画素が連続して１つのセグメントを構成しているか、または連続せずに、複数のセグメントを構成しているかを調べる（Ｓ２０６）。
【００６３】
迂回判定部２６は、配線許容領域画像の画素値「１」の画素が連続せずに、複数のセグメントを構成する場合には、連続していない画素を含む領域をハイライト表示する（Ｓ２０７）。
【００６４】
迂回判定部２６は、配線許容領域画像を構成する画素値「１」の画素が連続して１つのセグメントを構成する場合には、その配線を迂回していない配線として判定し、その旨を表示装置１５０に表示する。一方、迂回判定部２６は、配線許容領域画像を構成する画素値「１」の画素が連続せずに、複数のセグメントを構成している場合に、その配線を迂回している配線として判定し、その旨を表示装置１５０に表示する（Ｓ２０８）。
【００６５】
そして、残りの配線情報についてＳ２０１〜Ｓ２０８の処理が繰返される（Ｓ２０９）。
【００６６】
（動作例）
次に、本実施の形態のある動作例を説明する。図１１は、１つの配線について、配線情報、その配線と接続する素子の配置情報、および配線許容領域情報の位置関係を表わす図である。同図に示すように、配線番号２の素子と接続する一方の端子を有する素子番号３の素子の配置情報（ＸＭＩＮ（１）、ＸＭＡＸ（１）、ＹＭＩＮ（１）、ＹＭＡＸ（１））は、（１２５、１３５、１６５、１７５）である。一方、配線番号１の素子と接続する他方の端子を有する素子番号４の素子の配置情報（ＸＭＩＮ（２）、ＸＭＡＸ（２）、ＹＭＩＮ（２）、ＹＭＡＸ（２））は、（１５５、１６５、１３５、１４５）である。
【００６７】
配線許容領域情報（Ｘ１′、Ｘ２′、Ｙ１′、Ｙ２′）は、α＝５とすると（１２０、１７０、１３０、１８０）となる。
【００６８】
図１２は、配線表示制御部２１が表示装置１５０に表示した配線および素子のレイアウト画面を示す。同図に示すように、配線番号２の配線と、素子番号３の素子と、素子番号４の素子とが表示される。
【００６９】
図１３は、配線許容領域画像生成制御部２２が撮像装置１６５を指定して生成させた配線許容領域画像を示す。同図に示すように、図１２における配線許容領域の画像が生成される。
【００７０】
図１４は、迂回判定後に表示装置１５０に表示されるレイアウト画面を示す。同図に示すように、配線許容領域画像を構成する画素値「１」の画素が連続せずに２個のセグメントを構成しているので、連続していない画素を含む領域がハイライト表示されるとともに、配線が迂回している旨が表示される。
【００７１】
以上のように、本実施の形態に係るレイアウト検証装置２００によれば、配線に接続される素子の位置に基づいて定められる配線許容領域を撮影して配線許容領域画像を生成し、配線許容領域画像の画素が連続しているか否かによって、容易に配線の迂回の有無を検出することができる。
【００７２】
［第３の実施形態］
図１５は、本実施の形態に係るレイアウト検証システムの構成を示す。同図を参照して、このレイアウト検証システムは、レイアウト検証装置３００と、撮像装置１６０と、表示装置１５０と、図形認識装置１３０とを備える。レイアウト検証装置３００は、配線情報記憶部１１と、配線情報取得部３３と、配線表示制御部３１と、レイアウト画像生成制御部３２と、認識制御部３５と、ショート／余剰判定部３６とを備える。図形認識装置１３０は、第１の十字形パターン検出部１３３と、縮小画像生成部１３４と、第２の十字形パターン検出部１３５とを備える。
【００７３】
同図において、図１に示すレイアウト検証システムまたは図９に示すレイアウト検証システムが備える構成要素と同一の構成要素には、同一の符号を付している。以下、図１のレイアウト検証システムおよび図９のレイアウト検証システムには含まれない構成要素について説明する。
【００７４】
配線情報取得部３３は、配線情報記憶部１１からすべての配線情報または所定の個数の配線情報を読出して、配線表示制御部３１に出力する。
【００７５】
配線表示制御部３１は、受けた配線情報に基づいて、配線を表示装置１５０に表示する。
【００７６】
レイアウト画像生成制御部３２は、撮像装置１６０を指示して、表示装置１５０内の配線が表示されている画面を撮影してレイアウト画像を生成させ、そのレイアウト画像を取得する。
【００７７】
撮像装置１６０は、表示装置１５０内の配線が表示されている画面を撮影してレイアウト画像を生成する。このレイアウト画像は、２値化画像であり、配線を表す画素値は「１」とし、背景は「０」とする。また、レイアウト画像の解像度は、配線の線幅が１画素となるような解像度とする。
【００７８】
認識制御部３５は、認識装置１３０を指示して、第１次の検出処理を行なわせる。すなわち、認識制御部３５は、図形認識装置１３０に、レイアウト画像が３画素×３画素のブロックに分割されたときに、各ブロック内に十字形パターンが存在するか否かを検出させる。また、認識制御部３５は、図形認識装置１３０を指示して、第２次の検出処理を行なわせる。すなわち、認識制御部３５は、図形認識装置１３０に十字形パターンが存在しないブロックと、そのブロックに隣接するブロックとからなる任意の３ブロック×３ブロック内に十字形パターンが存在するか否かを検出させる。また、認識制御部３５は、十字形パターンが検出されたとき、つまり十字形パターンを構成する画素の座標を受けたときには、表示装置１５０に表示されている十字形パターンを構成する画素をハイライト表示する。
【００７９】
第１の十字形パターン検出部１３３は、レイアウト画像を３画素×３画素のブロックに分割する。第１の十字形パターン検出部１３３は、各ブロック内に十字形パターンが存在するか、つまり各ブロック内の画素のパターンが図１６に示すような十字形パターンであるかを検出する。第１の十字形パターン検出部１３３は、十字形パターンが検出されたときには、その十字形パターンを構成する画素の座標を認識制御部３５に送る。
【００８０】
縮小画像生成部１３４は、レイアウト画像の解像度をＸ軸方向およびＹ軸方向について１／３にした縮小レイアウト画像を生成する。すなわち、縮小画像生成部１３４は、レイアウト画像における３画素×３画素からなるブロックを縮小して１画素とする。その画素の値は、そのブロックにおいて１つでも値が「１」の画素があれば「１」とし、そのブロックにおいてすべての画素の値が「０」であれば「０」とする。
【００８１】
第２の十字形パターン検出部１３５は、任意の３画素×３画素が図１６に示すような十字形パターンを含むか否かを調べる。ただし、第１の十字形パターン検出部１３３によって十字形パターンが検出されたブロックを縮小した画素を中央に含む３画素×３画素は除外する。十字形パターン検出部１３５は、３画素×３画素が十字形パターンを含む場合には、その十字形パターンを構成する画素を特定し、その画素がもとのレイアウト画像のどのブロックに対応するかを調べ、そのブロック内の「１」の画素の座標を認識制御部３５に送る。
【００８２】
ショート／余剰判定部３６は、認識制御部３５が図形認識装置１３０から画素の座標を受けたとき、つまり、第１の十字形パターン検出部１３３または第２の十字形パターン検出部１３５のいずれかで十字形パターンが検出されたとき、レイアウト画像内の配線にショート部分または余剰部分があると判定し、その旨を表示装置１５０に表示する。また、ショート／余剰判定部３６は、認識制御部３５が図形認識装置１３０からいずれの画素の座標も受けなかったとき、つまり、第１の十字形パターン検出部１３３および第２の十字形パターン検出部１３５のいずれにおいても十字形パターンが検出されないときには、レイアウト画像内の配線にショート部分または余剰部分がないと判定し、その旨を表示装置１５０に表示する。
【００８３】
（動作）
図１７は、本実施の形態に係るレイアウト検証システムの動作手順を示すフローチャートである。同図を参照して、まず、配線情報取得部３３は、すべての配線情報または所定の個数の配線情報を取得する。すなわち、配線情報取得部３３は、配線情報記憶部１１からすべての配線情報または所定の個数の配線情報を読出して配線表示制御部３１に出力する（Ｓ３０１）。
【００８４】
次に、配線表示制御部３１は、受けた配線情報に基づいて、配線を表示装置１５０に表示する（Ｓ３０２）。
【００８５】
次に、レイアウト画像生成制御部３２は、撮像装置１６０を指示して、表示装置１５０内の配線が表示されている画面を撮影してレイアウト画像を生成させ、そのレイアウト画像を取得する。ここで、撮像装置１６０は、配線の線幅が１画素となるような解像度でレイアウト画像を生成するものとする（Ｓ３０３）。
【００８６】
次に、認識制御部３５は、図形認識装置１３０を指示して、第１次の検出処理を行なわせる。すなわち、認識制御部３５は、図形認識装置１３０に、レイアウト画像が３画素×３画素のブロックに分割されたときに、各ブロック内に十字形パターンが存在するか否かを検出させる。図形認識装置１３０の第１の十字形パターン検出部１３３は、レイアウト画像を３画素×３画素のブロックに分割する。第１の十字形パターン検出部１３３は、各ブロック内に十字形パターンが存在するか、つまり各ブロック内の画素のパターンが図１６に示すような十字形パターンであるかを検出する。第１の十字形パターン検出部１３３は、十字形パターンが検出されたときには、その十字形パターンを構成する画素の座標を認識制御部３５に送る（Ｓ３０４）。
【００８７】
次に、認識制御部３５は、十字形パターンが検出されたとき、つまり十字形パターンを構成する画素の座標を受けたときには、表示装置１５０に表示されている十字形パターンを構成する画素をハイライト表示する（Ｓ３０５、Ｓ３０６）。
【００８８】
次に、認識制御部３５は、図形認識装置１３０を指示して、第２次の検出処理を行なわせる。すなわち、認識制御部３５は、図形認識装置１３０に十字形パターンが存在しないブロックと、そのブロックに隣接するブロックとからなる任意の３ブロック×３ブロック内に十字形パターンが存在するか否かを検出させる。図形認識装置１３０の縮小画像生成部１３４は、レイアウト画像の解像度をＸ軸方向およびＹ軸方向について１／３にした縮小レイアウト画像を生成する。すなわち、縮小画像生成部１３４は、レイアウト画像における３画素×３画素からなるブロックを縮小して１画素とする。その画素の値は、そのブロックにおいて１つでも値が「１」の画素があれば「１」とし、そのブロックにおいてすべての画素の値が「０」であれば「０」とする。
【００８９】
次に、図形認識装置１３０の第２の十字形パターン検出部１３５は、任意の３画素×３画素が図１６に示すような十字形パターンを含むか否かを調べる。ただし、Ｓ３０５で十字形パターンが検出されたブロックを縮小した画素を中央に含む３画素×３画素は除外する。十字形パターン検出部１３５は、３画素×３画素が十字形パターンを含む場合には、その十字形パターンを構成する画素を特定し、その画素がもとのレイアウト画像のどのブロックに対応するかを調べ、そのブロック内の「１」の画素の座標を認識制御部３５に送る（Ｓ３０７）。
【００９０】
認識制御部３５は、十字形パターンが検出されたとき、つまり十字形パターンを構成する画素の座標を受けたときには、表示装置１５０に表示されている十字形パターンを構成する画素をハイライト表示する（Ｓ３０８、Ｓ３０９）。
【００９１】
ショート／余剰判定部３６は、認識制御部３５が図形認識装置１３０から画素の座標を受けたとき、つまり、第１の十字形パターン検出部１３３または第２の十字形パターン検出部１３５のいずれかで十字形パターンが検出されたとき、レイアウト画像内の配線にショート部分または余剰部分があると判定し、その旨を表示装置１５０に表示する。一方、ショート／余剰判定部３６は、認識制御部３５が図形認識装置１３０からいずれの画素の座標も受けなかったとき、つまり、第１の十字形パターン検出部１３３および第２の十字形パターン検出部１３５のいずれにおいても十字形パターンが検出されないときには、レイアウト画像内の配線にショート部分または余剰部分がないと判定し、その旨を表示装置１５０に表示する（Ｓ３１０）。
【００９２】
（動作例）
次に、本実施の形態のある動作例を説明する。図１８（ａ）は、配線の理想的なレイアウトを示す。同図に示すように、第１層には、電源系統の配線ａとグランド系統の配線ｂとが配置されている。
【００９３】
図１８（ｂ）は、配線のレイアウト設計後のレイアウトを示す。同図に示すように、電源系統の配線ａとグランド系統の配線ｂとをショートさせるような配線ｃと、余剰な配線ｄとが存在する。
【００９４】
図１９は、配線のレイアウトが図１８（ｂ）に示すようなレイアウトのときに、図形認識装置１３０による第１次の検出処理によって十字形パターンが存在すると検出されたブロックおよび十字形パターンが存在すると検出されなかったブロックを示す。同図に示すように、ブロックＡ、ブロックＢ、およびブロックＣのあたりの配線が十字に交差している。
【００９５】
ブロックＡは、図１６に示すような十字形パターンを含むので、第１の十字形パターン検出部１３３によって検出される。一方、ブロックＢは、十字形パターンではなく、Ｔ字形パターンを含む。これは、ブロックＢの画素は、隣接するブロックの画素とで十字を構成するからである。したがって、ブロックＢは、第１の十字形パターン検出部１３３によって検出されない。また、ブロックＣは、十字形パターンではなく、Ｌ字形パターンを含む。これは、ブロックＣの画素は、隣接するブロックの画素とで十字を構成するからである。したがって、ブロックＣは、第１の十字形パターン検出部１３３によって検出されない。
【００９６】
図２０は、配線のレイアウトが図１８（ｂ）に示すようなレイアウトのときに、図形認識装置１３０による第２次の検出処理によって、十字形パターンが存在すると検出されるブロック群を示す。同図を参照して、ブロックＢと、ブロックＢと隣接する８個のブロックとからなる３ブロック×３ブロックに、十字形パターンが存在すると検出される。なぜなら、このブロック群に属する左上のブロック、左下のブロック、右上のブロック、および右下のブロックでは、すべての画素の値が「０」なので、値が「０」の画素に縮小され、上記以外のブロックでは、値が「１」の画素が存在するので、値が「１」の画素に縮小される。このように縮小された３画素×３画素は、十字形パターンを含むからである。
【００９７】
また、ブロックＣと、ブロックＣと隣接する８個のブロックとからなる３ブロック×３ブロックに、十字形パターンが存在すると検出される。なぜなら、このブロック群に属する左上のブロック、左下のブロック、右上のブロック、および右下のブロックでは、すべての画素の値が「０」なので、値が「０」の画素に縮小され、上記以外のブロックでは、値が「１」の画素が存在するので、値が「１」の画素に縮小される。このように縮小された３画素×３画素は、十字形パターンを含むからである。
【００９８】
以上のように、本実施の形態に係るレイアウト検証装置３００によれば、レイアウト画像をブロックに分割したときに、各ブロック、または３ブロック×３ブロックが十字形パターンを含むか否かを検出することによって、高い信頼性をもって、容易にショートまたは余剰部分の有無を検出することができる。
【００９９】
［第４の実施形態］
図２１は、本実施の形態に係るレイアウト検証システムの構成を示す。同図を参照して、このレイアウト検証システムは、レイアウト検証装置４００と、撮像装置１６０と、表示装置１５０と、図形認識装置１４０とを備える。レイアウト検証装置４００は、配線情報記憶部１１と、配線情報取得部３３と、配線表示制御部３１と、レイアウト画像生成制御部３２と、認識制御部４３と、ショート／余剰判定部４６とを備える。図形認識装置１４０は、十字／Ｌ字／Ｔ字形パターン検出部１４３と、縮小画像生成部１４４と、第２の十字形パターン検出部１４５とを備える。
【０１００】
同図において、図１に示すレイアウト検証システム、図９に示すレイアウト検証システム、および図１５に示すレイアウト検証システムが備える構成要素と同一の構成要素には、同一の符号を付している。以下、図１のレイアウト検証システム、図９のレイアウト検証システム、および図１５のレイアウト検証システムには含まれない構成要素について説明する。
【０１０１】
認識制御部４３は、図形認識装置１４０を指示して、第１次の検出処理を行なわせる。すなわち、認識制御部４３は、図形認識装置１４０に、レイアウト画像が３画素×３画素のブロックに分割されたときに、各ブロック内に十字形、Ｌ字形、またはＴ字形パターンが存在するか否かを検出させる。
【０１０２】
認識制御部４３は、十字形パターンが検出されたとき、つまり十字形パターンを構成する画素の座標を受けたときには、表示装置１５０に表示されている十字形パターンを構成する画素をハイライト表示する。
【０１０３】
認識制御部４３は、Ｌ字形パターンまたはＴ字形パターンが検出されたとき、つまりブロックの番号を受けたときには、図形認識装置１４０を指示して、第２次の検出処理を行なわせる。すなわち、認識制御部４３は、図形認識装置１４０に、受けたブロック番号のブロックと、そのブロックに隣接するブロックとからなる３ブロック×３ブロック内に十字形パターンが存在するか否かを検出させる。
【０１０４】
十字／Ｌ字／Ｔ字形パターン検出部１４３は、レイアウト画像を３画素×３画素のブロックに分割する。十字／Ｌ字／Ｔ字形パターン検出部１４３は、各ブロック内の画素のパターンが図２２（ａ）に示すような十字形パターン、図２２（ｂ）に示すようなＬ字形パターン、または図２２（ｃ）に示すようなＴ字形パターンであるかを検出する。十字／Ｌ字／Ｔ字形パターン検出部１４３は、十字形パターンが検出されたときには、その十字形パターンを構成する画素の座標を認識制御部４３に送り、Ｌ字形パターンまたはＴ字形パターンが検出されたときには、そのパターンが検出されたブロックの番号を認識制御部４３に送る。
【０１０５】
縮小画像生成部１４４は、指示された３ブロック×３ブロックについて、解像度をＸ軸方向およびＹ軸方向について１／３にした３画素×３画素からなる縮小画像を生成する。すなわち、縮小画像生成部１４４は、３画素×３画素からなるブロックを縮小して１画素とする。その画素の値は、そのブロックにおいて１つでも値が「１」の画素があれば「１」とし、そのブロックにおいてすべての画素の値が「０」であれば「０」とする。
【０１０６】
第２の十字形パターン検出部１４５は、縮小画像が図２２（ａ）に示すような十字形パターンを含むか否かを調べる。十字形パターン検出部１４５は、縮小画像が十字形パターンを含む場合には、その十字形パターンを構成する画素を特定し、その画素がもとのレイアウト画像のどのブロックに対応するかを調べ、そのブロック内の「１」の画素の座標を認識制御部４３に送る。
【０１０７】
ショート／余剰判定部４６は、認識制御部４３が図形認識装置１４０から画素の座標を受けたとき、つまり、十字／Ｌ字／Ｔ字形パターン検出部１４３または第２の十字形パターン検出部１４５のいずれかで十字形パターンが検出されたとき、レイアウト画像内の配線にショート部分または余剰部分があると判定し、その旨を表示装置１５０に表示する。また、ショート／余剰判定部４６は、認識制御部４３が図形認識装置１４０からいずれの画素の座標も受けなかったとき、つまり、十字／Ｌ字／Ｔ字形パターン検出部１４３または第２の十字形パターン検出部１４５のいずれにおいても十字形パターンが検出されないときには、レイアウト画像内の配線にショート部分または余剰部分がないと判定し、その旨を表示装置１５０に表示する。
【０１０８】
（動作）
図２３は、本実施の形態に係るレイアウト検証システムの動作手順を示すフローチャートである。同図を参照して、まず、第３の実施形態と同様に、配線情報取得部３３は、配線情報を取得する。すなわち、配線情報取得部３３は、配線情報記憶部１１から配線情報を読出して、配線表示制御部３１に出力する（Ｓ４０１）。
【０１０９】
次に、第３の実施形態と同様に、配線表示制御部３１は、受けた配線情報に基づいて、配線を表示装置１５０に表示する（Ｓ４０２）。
【０１１０】
次に、第３の実施形態と同様に、レイアウト画像生成制御部３２は、撮像装置１６０を指示して、表示装置１５０内の配線が表示されている部分を撮影して、レイアウト画像を生成させて、そのレイアウト画像を取得する。ここで、撮像装置１６０は、配線の線幅が１画素となるような解像度でレイアウト画像を生成するものとする（Ｓ４０３）。
【０１１１】
次に、認識制御部４３は、図形認識装置１４０を指示して、第１次の検出処理を行なわせる。すなわち、認識制御部４３は、図形認識装置１４０に、レイアウト画像が３画素×３画素のブロックに分割されたときに、各ブロック内に十字形、Ｌ字形、またはＴ字形パターンが存在するか否かを検出させる。図形認識装置１４０の十字／Ｌ字／Ｔ字形パターン検出部１４３は、レイアウト画像を３画素×３画素のブロックに分割する。十字／Ｌ字／Ｔ字形パターン検出部１４３は、各ブロック内の画素のパターンが図２２（ａ）に示すような十字形パターン、図２２（ｂ）に示すようなＬ字形パターン、または図２２（ｃ）に示すようなＴ字形パターンであるかを検出する。十字／Ｌ字／Ｔ字形パターン検出部１４３は、十字形パターンが検出されたときには、その十字形パターンを構成する画素の座標を認識制御部４３に送り、Ｌ字形パターンまたはＴ字形パターンが検出されたときには、そのブロックの番号を認識制御部４３に送る（Ｓ４０４）。
【０１１２】
認識制御部４３は、十字形パターンが検出されたとき、つまり十字形パターンを構成する画素の座標を受けたときには、表示装置１５０に表示されている十字形パターンを構成する画素をハイライト表示する（Ｓ４０５、Ｓ４０６）。
【０１１３】
認識制御部４３は、Ｌ字形パターンまたはＴ字形パターンが検出されたとき、つまりブロックの番号を受けたときには、図形認識装置１４０を指示して、第２次の検出処理を行なわせる。すなわち、認識制御部４３は、図形認識装置１４０に、受けたブロック番号のブロックと、そのブロックに隣接する８個のブロックとからなる３ブロック×３ブロック内に十字形パターンが存在するか否かを検出させる。図形認識装置１４０の縮小画像生成部１４４は、上述の３ブロック×３ブロックについて、解像度をＸ軸方向およびＹ軸方向について１／３にした３画素×３画素からなる縮小画像を生成する。すなわち、縮小画像生成部１４４は、３画素×３画素からなるブロックを縮小して１画素とする。その画素の値は、そのブロックにおいて１つでも値が「１」の画素があれば「１」とし、そのブロックにおいてすべての画素の値が「０」であれば「０」とする。
【０１１４】
次に、図形認識装置１４０の第２の十字形パターン検出部１４５は、縮小画像が図２２（ａ）に示すような十字形パターンを含むか否かを調べる。十字形パターン検出部１４５は、縮小画像が十字形パターンを含む場合には、その十字形パターンを構成する画素を特定し、その画素がもとのレイアウト画像のどのブロックに対応するかを調べ、そのブロック内の「１」の画素の座標を認識制御部４３に送る（Ｓ４０７、Ｓ４０８）。
【０１１５】
次に、認識制御部４３は、十字形パターンが検出されたとき、つまり十字形パターンを構成する画素の座標を受けたときには、表示装置１５０に表示されている十字形パターンを構成する画素をハイライト表示する（Ｓ４０９、Ｓ４１０）。
【０１１６】
次に、ショート／余剰判定部４６は、認識制御部４３が図形認識装置１４０から画素の座標を受けたとき、つまり、十字／Ｌ字／Ｔ字形パターン検出部１４３または第２の十字形パターン検出部１４５のいずれかで十字形パターンが検出されたとき、レイアウト画像内の配線にショート部分または余剰部分があると判定し、その旨を表示装置１５０に表示する。一方、ショート／余剰判定部４６は、認識制御部４３が図形認識装置１４０からいずれの画素の座標も受けなかったとき、つまり、十字／Ｌ字／Ｔ字形パターン検出部１４３または第２の十字形パターン検出部１４５のいずれにおいても十字形パターンが検出されないときには、レイアウト画像内の配線にショート部分または余剰部分がないと判定し、その旨を表示装置１５０に表示する（Ｓ４１１）。
【０１１７】
（動作例）
次に、本実施の形態の動作例を説明する。図２４は、配線のレイアウトが図１８（ｂ）に示すようなレイアウトのときに、図形認識装置１４０による第１次の検出処理によって十字形パターンが存在すると検出されたブロック、Ｌ字形パターンが存在すると検出されたブロック、およびＴ字形パターンが存在すると検出されたブロックを示す。同図に示すように、ブロックＡは、図２２（ａ）に示すような十字形パターンを含むので、十字／Ｌ字／Ｔ字形パターン検出部１４３によって検出される。一方、ブロックＣは、図２２（ｂ）に示すようなＬ字形パターンを含むので、十字／Ｌ字／Ｔ字形パターン検出部１４３によって検出される。また、ブロックＢおよびＤは、図２２（ｃ）に示すようなＴ字形パターンを含むので、十字／Ｌ字／Ｔ字形パターン検出部１４３によって検出される。
【０１１８】
図２５は、配線のレイアウトが図１８（ｂ）に示すようなレイアウトのときに、図形認識装置１４０による第２次の検出処理によって、十字形パターンが存在すると検出されたブロック群を示す。同図を参照して、第１次の検出処理でＴ字形パターンが検出されたブロックＢと、ブロックＢに隣接する８個のブロックとからなる３ブロック×３ブロックでは、第２次の検出処理で十字形パターンが検出される。なぜなら、このブロック群に属する左上のブロック、左下のブロック、右上のブロック、および右下のブロックでは、すべての画素の値が「０」なので、値が「０」の画素に縮小され、上記以外のブロックでは、値が「１」の画素が存在するので、値が「１」の画素に縮小される。したがって、このように縮小された３画素×３画素は、十字形パターンを含むからである。
【０１１９】
また、第１次の検出処理でＬ字形パターンが検出されたブロックＣと、ブロックＣに隣接する８個のブロックとからなる３ブロック×３ブロックでは、第２次の検出処理で十字形パターンが検出される。なぜなら、このブロック群に属する左上のブロック、左下のブロック、右上のブロック、および右下のブロックでは、すべての画素の値が「０」なので、値が「０」の画素に縮小され、上記以外のブロックでは、値が「１」の画素が存在するので、値が「１」の画素に縮小される。したがって、このように縮小された３画素×３画素は、十字形パターンを含むからである。
【０１２０】
一方、第１次の検出処理でＴ字形パターンが検出されたブロックＤと、ブロックＤに隣接する８個のブロックとからなる３ブロック×３ブロックでは、第２次の検出処理で十字形パターンが検出されない。なぜなら、このブロック群に属する左上のブロック、左下のブロック、右上のブロック、および右下のブロックだけでなく、中央上のブロックにおいて、すべての画素の値が「０」なので、値が「０」の画素に縮小され、上記以外のブロックでは、値が「１」の画素が存在するので、値が「１」の画素に縮小される。したがって、このように縮小された３画素×３画素は、十字形パターンを含まないからである。
【０１２１】
以上のように、本実施の形態に係るレイアウト検証装置４００によれば、第３の実施形態と同様に、高い信頼性をもって、容易にショートまたは余剰部分の有無を検出することができる。また、レイアウト画像をブロックに分割したときに、各ブロックがＴ字形パターンまたはＬ字形パターンを含むときのみ、そのブロックと、そのブロックに隣接する８個のブロックとからなる３ブロック×３ブロックが十字形パターンを含むか否かを検出するので、第３の実施形態よりも、より短時間にショートまたは余剰部分の有無を検出することができる。
【０１２２】
本発明は、上記の実施形態に限定するものではなく、たとえば、以下のような変形例も含む。
【０１２３】
（１）  撮像装置
本発明の第３および第４の実施形態では、撮像装置１６０は、配線の線幅が１画素となるような解像度のレイアウト画像を生成することしたので、図形認識装置１３０，１４０が３画素×３画素を１ブロックとして、そのブロック内の十字形パターン、Ｌ字形パターン、およびＴ字形パターンを検出するものとしたが、これに限定するものではない。
【０１２４】
撮像装置１６０が、図２６（ａ）に示すように、配線の線幅が１画素とならないような解像度のレイアウト画像を生成しない場合には、３画素×３画素を１ブロックとしても、十字形パターンを検出できない。そこで、たとえば、１０画素×１０画素を１ブロックして、１ブロック内に交差する直線が存在するか否かを検出することにしてもよい。交差する直線の検出は、公知の画像処理技術を用いれば容易である。
【０１２５】
あるいは、図２６（ａ）に示すレイアウト画像を細線化処理によって、線幅を１画素にしてもよい。図２６（ｂ）は、配線の線幅が１画素となるように細線化した後のレイアウト画像を示す図である。このように細線化処理を行なったときには、第３および第４の実施形態のように３画素×３画素からなるブロック内に、図１６（または図２２（ａ））の十字形パターンが存在するか否かを検出することにすればよい。
【０１２６】
（２）  第２次の検出処理での十字パターンの検出
本発明の第３および第４の実施形態の第２次の検出処理では、３ブロック×３ブロックを１ブロックに縮小し、そのブロック内に十字形パターンがあるか否かを検出したが、これに限定するものではない。３ブロック×３ブロックの９個のブロック内に交差する直線が存在するか否かを検出するようにしてもよい。
【０１２７】
（３）  第２次の検出処理での対象ブロック
本発明の第４の実施形態の第２次の検出処理は、第１次の検出処理でＴ字形パターンまたはＬ字形パターンを含むことが検出されたブロックについては、そのブロックと、そのブロックに隣接する８個のブロックとからなる３ブロック×３ブロックを対象として第２次の検出処理が行なわれたが、これに限定するものではない。たとえば、図２２（ｂ）の最も左のＬ字形パターンを含むブロックについては、そのブロックと、その上のブロックと、その左のブロックと、その左上のブロックとからなる２ブロック×２ブロックを対象として第２次の検出処理を行ない、図２２（ｂ）の最も右のＬ字形パターンを含むブロックについては、そのブロックと、その下のブロックと、その左のブロックと、その左下のブロックとからなる２ブロック×２ブロックを対象として第２次の検出処理を行なうものとしてもよい。また、図２２（ｃ）の最も左のＴ字形パターンを含むブロックについては、そのブロックと、その下のブロックとからなる２ブロックを対象として第２次の検出処理を行ない、図２２（ｃ）の最も右のＴ字形パターンを含むブロックについては、そのブロックと、その上のブロックとからなる２ブロックを対象として第２次の検出処理を行なうものとしてもよい。
【０１２８】
（４）  十字形、Ｔ字形、Ｌ字形
本発明の第３および第４の実施形態では、十字形パターン、Ｌ字形パターン、およびＴ字形パターンによって、ショート箇所、または余剰箇所を検出したが、これに限定するものではない。ショート箇所、または余剰箇所が検出できるものであれば、その他の画素のパターンであってもよい。
【０１２９】
（５）  レイアウト画像の生成
本発明の第２、第３、および第４の実施形態では、撮像装置１６０，１６５が、表示装置の表示画面を撮影してレイアウト画像を生成したが、これに限定するものではない。たとえば、レイアウト検証装置１００，２００，３００，４００が、フレームメモリにデータを書込むことによって、表示装置１５０に配線を表示しているような場合には、そのフレームメモリのデータを取得してそれをレイアウト画像としてもよい。
【０１３０】
（６）  プログラム
本発明の実施形態のレイアウト検証装置１００，２００，３００，４００は、専用のハードウエアで構成された装置に限定するものではない。コンピュータがプログラムを実行することによって、レイアウト検証装置１００，２００，３００，４００の各構成要素の機能を実行するものとしてもよい。また、同様に、図形認識装置１３０，１４０は、専用のハードウエアで構成された装置に限定するものではない。コンピュータがプログラムを実行することによって、図形認識装置１３０，１４０の各構成要素の機能を実行するものとしてもよい。
【０１３１】
（７）  レイアウト検証システム
本発明の実施の形態では、レイアウト検証装置１００，２００，３００，４００と図形認識装置１３０，１４０とは、別個のものとして説明したが、これに限定するものではなく、レイアウト検証装置１００，２００，３００，４００が図形認識装置１３０，１４０の機能を実行する図形認識部を含むものとしてもよい。
【０１３２】
また、撮像装置１６０，１６５、および／または表示装置１５０をも含めてレイアウト検証装置としてもよい。
【０１３３】
（８）  迂回部、ショート部、余剰部の表示
本発明の実施の形態では、迂回部、ショート部、または余剰部分を識別できるようにハイライト表示したが、これに限定するものではない。
【０１３４】
たとえば、十時形パターンを構成する画素を他の画素と識別できるようにハイライト表示するのではなく、その十字形パターンの近傍に特定のマークを表示するものであってもよく、あるいは特定の文字を表示するものであってもよい。つまり、十字形パターンの位置が識別可能なように、レイアウト画面の表示を何らかの形で制御すればよい。
【０１３５】
（９）  第２の実施形態の迂回検出
本発明の第２の実施形態では、配線許容領域画像の画素が連続しているかを調べることによって、迂回の有無を検出したが、これに限定するものではない。たとえば、配線許容領域画像の境界の画素（つまり、Ｘが最大および最小の画素とＹが最大および最小の画素）が端点（ただし、端子と接続しているもともとの端点以外）であるかを調べることによって、迂回の有無を検出するものとしてもよい。
【０１３６】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【０１３７】
【図１】本発明の第１の実施形態に係るレイアウト検証システムの構成を示す図である。
【図２】配線情報の例を示す図である。
【図３】素子情報の例を示す図である。
【図４】本発明の第１の実施の形態に係るレイアウト検証システムの動作手順を示すフローチャートである。
【図５】ある１つの配線について、配線情報、その配線と接続する素子の配置情報、および配線許容領域情報の位置関係を表す図である。
【図６】迂回判定後に表示装置１５０に表示されるレイアウト画面を示す図である。
【図７】別の１つの配線について、配線情報、その配線と接続する素子の配置情報、および配線許容領域情報の位置関係を表わす図である。
【図８】迂回判定後に表示装置１５０に表示されるレイアウト画面を示す図である。
【図９】本発明の第２の実施の形態に係るレイアウト検証システムの構成を示す図である。
【図１０】本発明の第２の実施の形態に係るレイアウト検証システムの動作手順を示すフローチャートである。
【図１１】１つの配線について、配線情報、その配線と接続する素子の配置情報、および配線許容領域情報の位置関係を表わす図である。
【図１２】配線表示制御部２１が表示装置１５０に表示した配線および素子のレイアウト画面を示す図である。
【図１３】配線許容領域画像生成制御部２２が撮像装置１６０を指定して生成させた配線許容領域画像を示す図である。
【図１４】迂回判定後に表示装置１５０に表示されるレイアウト画面を示す図である。
【図１５】本発明の第３の実施の形態に係るレイアウト検証システムの構成を示す図である。
【図１６】十字形の画素パターンを表わす図である。
【図１７】本発明の第３の実施の形態に係るレイアウト検証システムの動作手順を示すフローチャートである。
【図１８】（ａ）は、配線の理想的なレイアウトを示す図である。（ｂ）は、配線のレイアウト設計度のレイアウトを示す図である。
【図１９】図形認識装置１３０による第１次の検出処理によって十字形パターンが存在すると検出されたブロックおよび十字形パターンが存在すると検出されなかったブロックを示す図である。
【図２０】図形認識装置１３０による第２次の検出処理によって、十字形パターンが存在すると検出されるブロック群を示す図である。
【図２１】本発明の第４の実施の形態に係るレイアウト検証システムの構成を示す図である。
【図２２】（ａ）は、十字形の画素パターンを表わす図である。（ｂ）は、Ｌ字形の画素パターンを表わす図である。（ｃ）は、Ｔ字形の画素パターンを表わす図である。
【図２３】本発明の第４の実施の形態に係るレイアウト検証システムの動作手順を示すフローチャートである。
【図２４】図形認識装置１４０による第１次の検出処理によって十字形パターンが存在すると検出されたブロック、Ｌ字形パターンが存在すると検出されたブロック、およびＴ字形パターンが存在すると検出されたブロックを示す図である。
【図２５】図形認識装置１４０による第２次の検出処理によって、十字形パターンが存在すると検出されたブロック群を示す図である。
【図２６】（ａ）は、配線の線幅が１画素でないレイアウト画像を示す図である。（ｂ）は、配線の線幅が１画素となるように細線化した後のレイアウト画像を示す図である。
【符号の説明】
【０１３８】
１１  配線情報記憶部、１２  素子情報記憶部、１３  配線情報取得部、１４  配線許容領域決定部、１５，２５  迂回部検出部、１６，２６  迂回判定部、２１，３１  配線表示制御部、２２  配線許容領域画像生成制御部、３２  レイアウト画像生成制御部、３３  配線情報取得部、３５，４３  認識制御部、３６，４６  ショート／余剰判定部、１００，２００，３００，４００  レイアウト検証装置、１３０，１４０  図形認識装置、１３３  第１の十字形パターン検出部、１３４，１４４  縮小画像生成部、１３５，１４５  第２の十字形パターン検出部、１４３  十字／Ｌ字／Ｔ字形パターン検出部、１５０  表示装置、１６０，１６５  撮像装置。
【図１】
2005250890.tif 000003
【図２】
2005250890.tif 000004
【図３】
2005250890.tif 000005
【図４】
2005250890.tif 000006
【図５】
2005250890.tif 000007
【図６】
2005250890.tif 000008
【図７】
2005250890.tif 000009
【図８】
2005250890.tif 000010
【図９】
2005250890.tif 000011
【図１０】
2005250890.tif 000012
【図１１】
2005250890.tif 000013
【図１２】
2005250890.tif 000014
【図１３】
2005250890.tif 000015
【図１４】
2005250890.tif 000016
【図１５】
2005250890.tif 000017
【図１６】
2005250890.tif 000018
【図１７】
2005250890.tif 000019
【図１８】
2005250890.tif 000020
【図１９】
2005250890.tif 000021
【図２０】
2005250890.tif 000022
【図２１】
2005250890.tif 000023
【図２２】
2005250890.tif 000024
【図２３】
2005250890.tif 000025
【図２４】
2005250890.tif 000026
【図２５】
2005250890.tif 000027
【図２６】
2005250890.tif 000028