(57)【要約】【課題】設計ルールが複雑化しても効率的に検証期間の短縮化を図ること。【解決手段】レイアウトデータ２００は、半導体回路を構成する配線、ビア、電源回路などの物体を表した図形情報である。レイアウトデータ２００は、具体的には、物体を示す物体形式データ２０１と、代表形式データ２０２とを有している。設計ルール検証装置３００は、取得部３０１と、検証部３０２と、出力部３０３と、から構成されている。取得部３０１は、半導体回路内の物体を代表的な点を用いて表現した代表形式データ２０２を、半導体回路に関するレイアウトデータ２００から取得する。また、検証部３０２は、取得部３０１によって取得された代表形式データ２０２に基づいて、レイアウトデータ２００が設計ルール３１０に違反しているか否かを検証する。また、出力部３０３は、検証部３０２によって検証された検証結果を出力する。【選択図】        図３
2006244313.tif 000002
【特許請求の範囲】
【請求項１】
半導体回路内の物体を代表的な点を用いて表現した代表形式データを、前記半導体回路に関するレイアウトデータから取得させる取得工程と、
前記取得工程によって取得された代表形式データに基づいて、前記レイアウトデータが設計ルールに違反しているか否かを検証させる検証工程と、
前記検証工程によって検証された検証結果を出力させる出力工程と、
をコンピュータに実行させることを特徴とする設計ルール検証プログラム。
【請求項２】
前記取得工程は、
前記半導体回路内の物体に関する物体形式データのデータ形式を変換することによって、前記物体形式データを表現する代表形式データを取得させることを特徴とする請求項１に記載の設計ルール検証プログラム。
【請求項３】
請求項１または２に記載の設計ルール検証プログラムを記録したコンピュータに読み取り可能な記録媒体。
【請求項４】
半導体回路内の物体を代表的な点を用いて表現した代表形式データを、前記半導体回路に関するレイアウトデータから取得する取得工程と、
前記取得工程によって取得された代表形式データに基づいて、前記レイアウトデータが設計ルールに違反しているか否かを検証する検証工程と、
前記検証工程によって検証された検証結果を出力する出力工程と、
を含んだことを特徴とする設計ルール検証方法。
【請求項５】
半導体回路内の物体を代表的な点を用いて表現した代表形式データを、前記半導体回路に関するレイアウトデータから取得する取得手段と、
前記取得手段によって取得された代表形式データに基づいて、前記レイアウトデータが設計ルールに違反しているか否かを検証する検証手段と、
前記検証手段によって検証された検証結果を出力する出力手段と、
を備えることを特徴とする設計ルール検証装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、半導体回路のレイアウトデータが設計ルールに違反しているか否かを検証する設計ルール検証プログラム、該プログラムを記録した記録媒体、設計ルール検証方法、および設計ルール検証装置に関する。
【背景技術】
【０００２】
ＬＳＩ設計では、従来から設計期間の短縮による作業効率化が要求されている一方、ＬＳＩが正しく動作するかどうかを検証する検証作業が必要不可欠であり、特に、大規模化、高機能化、高速化および低消費電力化が要求されているＬＳＩについては、高品質を維持するためにもこの検証作業は重要である。
【０００３】
通常のレイアウト設計では、グリッドベースの配線手法がおこなわれるため、配線やビアの代表点の座標は、配線グリッドと呼ばれる有限個の格子点上に位置する。また、配線やビアの形状は少数の種類しか存在しない。従来では、代表点を持つ物体の図形データ間の距離を調べることによりレイアウト設計ルールの検証をおこなっていた（たとえば、下記特許文献１，２を参照。）。また現在では、設計ルールが複雑になってきたため、上述したレイアウト設計ルールの検証はおこなわれず、矩形や多角形の物体の図形データを用いた図形演算によりおこなわれている。
【０００４】
【特許文献１】特開昭６３−５６６４３号公報
【特許文献２】特開平６−２３００６７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述した従来技術では、ＬＳＩ設計の大規模化にともない、上述した図形演算では、レイアウト設計ルールの検証に時間がかかり、検証作業が長期化するという問題があった。特に、設計ルールが複雑になればなるほど検証作業は長期化するという問題があった。
【０００６】
この発明は、上述した従来技術による問題点を解消するため、設計ルールが複雑化しても効率的に検証期間の短縮化を図ることができる設計ルール検証装置、設計ルール検証方法、設計ルール検証プログラム、および記録媒体を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するため、この発明にかかる設計ルール検証プログラム、該プログラムを記録した記録媒体、設計ルール検証方法、および設計ルール検証装置は、半導体回路内の物体を代表的な点を用いて表現した代表形式データを、前記半導体回路に関するレイアウトデータから取得する取得手段と、前記取得手段によって取得された代表形式データに基づいて、前記レイアウトデータが設計ルールに違反しているか否かを検証する検証手段と、前記検証手段によって検証された検証結果を出力する出力手段と、を備えることを特徴とする。
【０００８】
また、上記発明において、前記半導体回路内の物体に関する物体形式データのデータ形式を変換し、前記物体形式データを表現する代表形式データを取得することとしてもよい。
【０００９】
また、上記発明において、前記代表形式データを、所定の検証対象条件に合致する代表形式データと、合致しない代表形式データとに振り分け、前記所定の検証対象条件に合致しない代表形式データを、前記半導体回路内の物体に関する物体形式データに変換し、前記検証対象条件に合致する代表形式データと、変換された物体形式データと、に基づいて、前記レイアウトデータが設計ルールに違反しているか否かを検証することとしてもよい。
【００１０】
また、上記発明において、前記半導体回路内の物体に関する物体形式データを、所定の検証対象条件に合致する物体形式データと、合致しない物体形式データとに振り分け、前記所定の検証対象条件に合致しない物体形式データを、前記代表形式データに変換し、前記検証対象条件に合致する物体形式データと、前記変換手段によって変換された代表形式データと、に基づいて、前記レイアウトデータが設計ルールに違反しているか否かを検証することとしてもよい。
【００１１】
また、上記発明において、前記半導体回路の設計ルールに基づいて、取得された代表形式データを包含する領域を設定し、設定された領域内に、当該領域が設定された代表形式データ以外の他の代表形式データが配置されているか否かを判定し、その判定結果を出力することとしてもよい。
【００１２】
また、上記発明において、取得された代表形式データの中から、任意のネットを構成する代表形式データを指定し、前記半導体回路の設計ルールに基づいて、指定された代表形式データを包含する領域を設定し、設定された領域内に、前記代表形式データを含むネット以外の他のネットを構成する他の代表形式データが配置されているか否かを判定することとしてもよい。
【００１３】
また、上記発明において、前記半導体回路の設計ルールに基づいて、前記取得手段によって取得された物体形式データを包含する領域を設定し、設定された領域内に、取得された代表形式データが配置されているか否かを判定し、その判定された判定結果を出力することとしてもよい。
【００１４】
また、上記発明において、取得された物体形式データの中から、任意のネットを構成する物体形式データを指定し、前記半導体回路の設計ルールに基づいて、指定された物体形式データを包含する領域を設定し、設定された領域内に、前記物体形式データが指定されたネット以外の他のネットを構成する前記代表形式データが配置されているか否かを判定することとしてもよい。
【００１５】
また、上記発明において、前記設計ルールが複数種類存在する場合、判定結果が擬似エラーであるか否かを判定し、その判定結果に基づいて、前記レイアウトデータが設計ルールに違反しているか否かを検証することとしてもよい。
【００１６】
これらの発明によれば、物体形式データよりもデータ量が少ない代表形式データを用いて設計ルール検証をおこなうことができる。また、レイアウトデータ内の代表形式データや物体形式データを、検証対象条件によって振り分けることにより、不要なデータ形式変換を防止することができる。また、代表形式データ間の設計ルール検証や代表形式データと物体形式データとの間の設計ルール検証をおこなうことができ、検証処理の高速化を実現することができる。
【発明の効果】
【００１７】
本発明にかかる設計ルール検証プログラム、該プログラムを記録した記録媒体、設計ルール検証方法、および設計ルール検証装置によれば、設計ルールが複雑化しても効率的に検証期間の短縮化を図ることができるという効果を奏する。
【発明を実施するための最良の形態】
【００１８】
以下に添付図面を参照して、この発明にかかる設計ルール検証プログラム、該プログラムを記録した記録媒体、設計ルール検証方法、および設計ルール検証装置の好適な実施の形態を詳細に説明する。
【００１９】
（設計ルール検証装置のハードウェア構成）
まず、この発明の実施の形態にかかる設計ルール検証装置のハードウェア構成について説明する。図１は、この発明の実施の形態にかかる設計ルール検証装置のハードウェア構成を示すブロック図である。
【００２０】
図１において、設計ルール検証装置は、ＣＰＵ１０１と、ＲＯＭ１０２と、ＲＡＭ１０３と、ＨＤＤ（ハードディスクドライブ）１０４と、ＨＤ（ハードディスク）１０５と、ＦＤＤ（フレキシブルディスクドライブ）１０６と、着脱可能な記録媒体の一例としてのＦＤ（フレキシブルディスク）１０７と、ディスプレイ１０８と、Ｉ／Ｆ（インターフェース）１０９と、キーボード１１０と、マウス１１１と、スキャナ１１２と、プリンタ１１３と、を備えている。また、各構成部はバス１００によってそれぞれ接続されている。
【００２１】
ここで、ＣＰＵ１０１は、設計ルール検証装置の全体の制御を司る。ＲＯＭ１０２は、ブートプログラムなどのプログラムを記憶している。ＲＡＭ１０３は、ＣＰＵ１０１のワークエリアとして使用される。ＨＤＤ１０４は、ＣＰＵ１０１の制御にしたがってＨＤ１０５に対するデータのリード／ライトを制御する。ＨＤ１０５は、ＨＤＤ１０４の制御で書き込まれたデータを記憶する。
【００２２】
ＦＤＤ１０６は、ＣＰＵ１０１の制御にしたがってＦＤ１０７に対するデータのリード／ライトを制御する。ＦＤ１０７は、ＦＤＤ１０６の制御で書き込まれたデータを記憶したり、ＦＤ１０７に記憶されたデータを設計ルール検証装置に読み取らせたりする。
【００２３】
また、着脱可能な記録媒体として、ＦＤ１０７のほか、ＣＤ−ＲＯＭ（ＣＤ−Ｒ、ＣＤ−ＲＷ）、ＭＯ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）、メモリーカードなどであってもよい。ディスプレイ１０８は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ１０８は、たとえば、ＣＲＴ、ＴＦＴ液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【００２４】
Ｉ／Ｆ１０９は、通信回線を通じてインターネットなどのネットワーク１１４に接続され、このネットワーク１１４を介して他の装置に接続される。そして、Ｉ／Ｆ１０９は、ネットワーク１１４と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。Ｉ／Ｆ１０９には、たとえばモデムやＬＡＮアダプタなどを採用することができる。
【００２５】
キーボード１１０は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス１１１は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなう。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
【００２６】
スキャナ１１２は、画像を光学的に読み取り、設計ルール検証装置内に画像データを取り込む。なお、スキャナ１１２は、ＯＣＲ機能を持たせてもよい。また、プリンタ１１３は、画像データや文書データを印刷する。プリンタ１１３には、たとえば、レーザプリンタやインクジェットプリンタを採用することができる。
【００２７】
（レイアウトデータの内容）
つぎに、この発明の実施の形態にかかる半導体回路に関するレイアウトデータの内容について説明する。図２は、この発明の実施の形態にかかる半導体回路に関するレイアウトデータの内容を示す説明図である。図２において、レイアウトデータ２００は、半導体回路を構成する配線、ビア、電源回路などの物体を表した図形情報である。レイアウトデータ２００は、たとえば、ＤＥＦ／ＬＥＦフォーマットで構成されている。レイアウトデータ２００は、具体的には、物体を示す物体形式データ２０１と、代表形式データ２０２とを有している。
【００２８】
物体形式データ２０１は、その物体の頂点の座標によって構成されている。たとえば、物体形式データ２１１は、配線をあらわしており、頂点数は４である。また、物体形式データ２１２は、２本の配線が連結された図形をあらわしており、頂点数は６である。また、物体形式データ２１３は、２つの配線とビアとが連結された図形をあらわしており、頂点数は１２である。
【００２９】
また、代表形式データ２０２は、半導体回路内の物体を代表的な点を用いて表現したデータである。ビアを表している代表形式データ２２１は、グリッドの格子点上にある点（代表点）２２１ａの座標と代表点２２１ａからビアの外縁までの距離とから構成されている。
【００３０】
また、配線の代表形式データは、両端の点（代表点）と、その代表点間の線分と、当該線分を中心とした配線の線幅と、から構成されている。たとえば、代表形式データ２２２は、代表点２２２ａ，２２２ｂと線分２２２ｃと線幅２２２ｄで構成される。なお、代表形式データ２２３は、代表点２２３ａ，２２３ｂと線分２２３ｃと線幅２２３ｄで構成され、代表形式データ２２４は、代表点２２３ａ，２２４ｂと線分２２４ｃと線幅２２４ｄで構成される。
【００３１】
なお、実際のレイアウトデータでは、そのほとんどが代表形式データであり、残りのデータが物体形式データである。また、すべてのレイアウトデータが物体形式データの場合もある。すなわち、レイアウトデータには、少なくとも物体形式データが含まれていればよい。
【００３２】
（設計ルール検証装置の機能的構成）
つぎに、この発明の実施の形態にかかる設計ルール検証装置の機能的構成について説明する。図３は、この発明の実施の形態にかかる設計ルール検証装置の機能的構成を示すブロック図である。図３において、設計ルール検証装置３００は、取得部３０１と、検証部３０２と、出力部３０３と、から構成されている。
【００３３】
取得部３０１は、半導体回路内の物体を代表的な点を用いて表現した代表形式データ２０２を、半導体回路に関するレイアウトデータ２００から取得する。また、検証部３０２は、取得部３０１によって取得された代表形式データ２０２に基づいて、レイアウトデータ２００が設計ルール３１０に違反しているか否かを検証する。また、出力部３０３は、検証部３０２によって検証された検証結果を出力する。取得部３０１および検証部３０２の具体的内容については後述する。なお、上述した取得部３０１、検証部３０２および出力部３０３は、具体的には、たとえば、図１に示したＲＯＭ１０２、ＲＡＭ１０３、ＨＤ１０５などの記録媒体に記録されたプログラムを、ＣＰＵ１０１に実行させることによって、またはＩ／Ｆ１０９によって、その機能を実現する。
【実施例１】
【００３４】
つぎに、この発明の実施の形態にかかる実施例１の設計ルール検証装置について説明する。図４は、この発明の実施の形態にかかる実施例１の設計ルール検証装置の機能的構成の一部を示すブロック図である。図４は、図３に示した取得部３０１内部の機能的構成の一例を示している。図４において、取得部３０１は、抽出部４０１と、既存のデータ形式変換ツールであるデータ形式変換部４０２とから構成されている。この実施例１では、レイアウトデータ２００内において、多くが代表形式データ２０２で、物体形式データ２０１が一部混在している例である。
【００３５】
抽出部４０１は、レイアウトデータ２００の中から、検証対象条件に合致する代表形式データ４１１を抽出する。ここで検証対象条件とは、検証対象となる代表形式データを特定する条件であり、代表形式データが有する属性によって判断される。たとえば、ネットの属性で判断する場合、たとえば、一般デジタル信号配線をあらわす代表形式データ４１１を抽出することができる。また、物体のサイズで判断する場合、たとえば、配線については、線幅ｘ［ｎｍ］、線間隔ｙ［ｎｍ］の代表形式データ４１１を抽出することができ、また、ビアについては、縦横ｚ［ｎｍ］寸法の代表形式データ４１１を抽出することができる。
【００３６】
また、データ形式変換部４０２は、一般の変換ツールを適用することができ、レイアウトデータ２００内のすべての代表形式データ２０２を、たとえば、ＧＤＳフォーマットなどの物体形式データ４１２に変換する。また、物体形式データ４１２には、レイアウトデータ２００内の物体形式データ２０１も含まれる。この取得部３０１によって取得された代表形式データ４１１および物体形式データ４１２は、検証部３０２に出力される。このように、この実施例１によれば、既存のデータ形式変換ツール（データ形式変換部４０２）を用いて構成することができるため、簡単な改良により、代表形式データ４１１を取得することができる。
【実施例２】
【００３７】
つぎに、この発明の実施の形態にかかる実施例２の設計ルール検証装置について説明する。図５は、この発明の実施の形態にかかる実施例２の設計ルール検証装置の機能的構成の一部を示すブロック図である。図５は、図３に示した取得部３０１内部の機能的構成の一例を示している。この実施例２では、レイアウトデータ２００内において、多くが代表形式データ２０２で、物体形式データ２０１が一部混在している例であり、実施例１に比べて取得処理の高速化を実現することができる。
【００３８】
図５において、取得部３０１は、振分け部５０１と、データ形式変換部５０２とから構成されている。振分け部５０１は、レイアウトデータ２００の中から代表形式データ２０２を抽出し、検証対象条件に合致する代表形式データ５１１と合致しない代表形式データ５１２とに振り分ける。ここで検証対象条件とは、実施例１で説明した内容と同一であるため、ここでは省略する。
【００３９】
また、データ形式変換部５０２は、振分け部５０１において検証対象条件に合致しない代表形式データ５１２を、たとえば、ＧＤＳフォーマットなどの物体形式データ５２１に変換する。この取得部３０１によって取得された代表形式データ５１１および物体形式データ５２１は、検証部３０２に出力される。
【００４０】
このように、この実施例２によれば、データ形式変換部５０２で変換されるデータは、実施例１のようにすべての代表形式データ２０２ではなく、所定条件に合致しない代表形式データに限定されるため、無駄なデータ変換を防止して、検証処理速度の向上を図ることができる。
【実施例３】
【００４１】
つぎに、この発明の実施の形態にかかる実施例３の設計ルール検証装置について説明する。図６は、この発明の実施の形態にかかる実施例３の設計ルール検証装置の機能的構成の一部を示すブロック図である。図６は、図３に示した取得部３０１内部の機能的構成の一例を示している。この実施例３では、レイアウトデータ２００内のデータがすべてＧＤＳフォーマットなどの物体形式データ２０１となっている例である。
【００４２】
図６において、取得部３０１は、振分け部６０１と、データ形式変換部６０２とから構成されている。振分け部６０１は、レイアウトデータ２００の中から物体形式データ２０１を抽出し、検証対象条件に合致する物体形式データ６１１と合致しない物体形式データ６１２とに振り分ける。ここで検証対象条件とは、実施例１で説明した内容と同一であるため、ここでは省略する。
【００４３】
また、データ形式変換部６０２は、振分け部６０１において検証対象条件に合致しない物体形式データ６１２を、代表形式データ６２１に変換する。この取得部３０１によって取得された物体形式データ６１１および代表形式データ６２１は、検証部３０２に出力される。
【００４４】
このように、この実施例３によれば、レイアウトデータ２００に代表形式データ２０２が存在しない場合であっても、代表形式データ６２１を得ることができる。代表形式データ６２１は、物体形式データ６１１よりもデータ量が軽い。したがって、この代表形式データ６２１を用いることにより、検証処理速度の向上を図ることができる。また、データ形式変換部６０２で変換されるデータは、すべての物体形式データ２０１ではなく、所定条件に合致しない物体形式データ６１２に限定されるため、無駄なデータ変換を防止して、検証処理速度の向上を図ることができる。
【実施例４】
【００４５】
つぎに、この発明の実施の形態にかかる実施例４の設計ルール検証装置について説明する。実施例４は、代表形式データ間の設計ルール検証である。図７は、この発明の実施の形態にかかる実施例４の設計ルール検証装置の機能的構成の一部を示すブロック図である。図７は、図３に示した検証部３０２内部の機能的構成の一例を示している。なお、図３に示した取得部３０１については、上述した実施例１〜３のいずれの取得部３０１を適用してもよい。したがって、図７（図１２および図１４も同様）においては、代表形式データ４１１、５１１、６２１をまとめて、代表形式データ７００と称す。
【００４６】
図７において、検証部３０２は、データ構造変換部７０１と、指定部７０２と、領域設定部７０３と、領域判定部７０４と、から構成されている。データ構造変換部７０１は、代表形式データ７００を、アクセスが高速なデータ構造の代表形式データ７１０に変換する。データ構造の変換例としては、Ｌｉｎｋｅｄ  Ｌｉｓｔ構造やＳｅｇｍｅｎｔ  Ｔｒｅｅ構造、またはＢｉｔ  Ｍａｐ構造を用いることができる。
【００４７】
ここで、Ｌｉｎｋｅｄ  Ｌｉｓｔ構造およびＳｅｇｍｅｎｔ  Ｔｒｅｅ構造について説明する。図８は、Ｌｉｎｋｅｄ  Ｌｉｓｔ構造およびＳｅｇｍｅｎｔ  Ｔｒｅｅ構造を示す説明図である。図８において、代表形式データ７００は、配線をあらわす代表形式データＡ〜Ｅ，Ｇおよびビアをあらわす代表形式データＦから構成されている。
【００４８】
Ｌｉｎｋｅｄ  Ｌｉｓｔ構造７１１は、たとえば、行番号と物体が関連付けられており、行を指定すると、その行に配置されている物体を抽出することができる構造である。たとえば、ａ行を指定すると、代表形式データＡを抽出でき、ｂ行を指定すると代表形式データＢおよびＣを抽出でき、ｃ行を指定すると代表形式データＤ〜Ｇを抽出することができる。
【００４９】
また、Ｓｅｇｍｅｎｔ  Ｔｒｅｅ構造７１２は、列番号を用いたツリー構造であり、指定された列番号に交差する物体を抽出することができる構造である。たとえば、Ｓｅｇｍｅｎｔ  Ｔｒｅｅ構造７１２では、代表形式データＡ，Ｅは８列目のグリッド線に交差していることを示しており、代表形式データＢは４列目のグリッド線に交差していることを示しており、代表形式データＤは２列目のグリッド線に交差していることを示しており、代表形式データＧは１２列目のグリッド線に交差していることを示しており、代表形式データＣ，Ｆは１０列目のグリッド線に交差していることを示している。このように計算幾何学的なデータ構造に変換することにより、高速にアクセスすることができる。
【００５０】
また、図９は、Ｂｉｔ  Ｍａｐ構造を示す説明図である。図９において、代表形式データ７００は、代表点９０１，９０２と代表点９０１，９０２間の線分９０３とで構成されている。Ｂｉｔ  Ｍａｐ構造では、代表形式データ７００で表現される実際の物体データ９１０（図中斜線で表示）内の格子点（図中、黒点で表示）から構成される。このように、計算幾何学的なＢｉｔ  Ｍａｐ構造に変換することにより、高速にアクセスすることができる。
【００５１】
また、図７において、指定部７０２は、取得部３０１によって取得された代表形式データ７００の中から、任意のネットを構成する代表形式データを指定する。具体的には、データ構造変換部７０１から得られた代表形式データ７１０の中から指定する。ここで、任意のネットとは、同電位の代表形式データ７００の集合である。
【００５２】
また、領域設定部７０３は、半導体回路の設計ルールに基づいて、取得部３０１によって取得された代表形式データ７００を包含する領域を設定する。具体的には、指定部７０２によって指定されたネット内の代表形式データ７１０を包含する領域を設定する。ここで、領域とは、設計ルール３１０により、他のネットの代表形式データや物体形式データの配置が禁止されている禁止領域である。ここで、禁止領域について図を用いて説明する。
【００５３】
図１０は、領域設定部によって設定される禁止領域を示す説明図である。図１０において、代表形式データ１００１，１００２は、指定部７０２によって指定された代表形式データである。したがって、代表形式データ１００１，１００２は同一ネットを構成する代表形式データ、すなわち、同電位の代表形式データである。なお、符号１０１１は、代表形式データ１００１によって表現される物体データであり、符号Ｒは、代表形式データ１００１を含む禁止領域を示している。
【００５４】
領域判定部７０４は、禁止領域Ｒ内に他のネットの代表形式データ（の少なくとも一部）が配置されているか否かを判定する。図１０では、代表形式データ１００３は、禁止領域内に配置されていないが、他のネットの代表形式データ１００４の代表点が禁止領域Ｒ内に配置されている。したがって、代表形式データ１００３は設計ルール３１０を遵守しているが、代表形式データ１００４は設計ルール３１０に違反していることとなる。
【００５５】
（設計ルール検証処理手順）
つぎに、実施例４にかかる設計ルール検証処理手順について説明する。図１１は、実施例４にかかる設計ルール検証処理手順を示すフローチャートである。まず、代表形式データ７００が取得された場合（ステップＳ１１０１：Ｙｅｓ）、代表形式データ７００のデータ構造変換をおこなう（ステップＳ１１０２）。そして、ｉ＝１とし、同電位グループのネット数をｎとして（ステップＳ１１０３）、ネットＮｉを抽出する（ステップＳ１１０４）。
【００５６】
そして、ｊ＝１とし、ネットＮｉ内の代表形式データ７１０（以下、実施例４において「代表形式データＤｊ」と称する）の数をｄとすると（ステップＳ１１０５）、代表形式データＤｊの禁止領域Ｒｊを設定する（ステップＳ１１０６）。そして、領域判定処理を実行する（ステップＳ１１０７）。領域判定処理（ステップＳ１１０７）では、まず、禁止領域Ｒｊに、他のネットの代表形式データが配置されているか否かを判定する（ステップＳ１１２０）。
【００５７】
他のネットの代表形式データが配置されている場合（ステップＳ１１２０：Ｙｅｓ）、検証結果（設計ルール違反）を出力し（ステップＳ１１２１）、他のネットの代表形式データが配置されていない場合（ステップＳ１１２０：Ｎｏ）、検証結果（設計ルール遵守）を出力する（ステップＳ１１２２）。
【００５８】
そして、ｊをインクリメントし（ステップＳ１１０８）、ｊ＞ｄでない場合（ステップＳ１１０９：Ｎｏ）、ステップＳ１１０７に移行する。これにより、ネットＮｉ内のつぎの代表形式データＤｊの禁止領域Ｒｊを設定することができる。一方、ｊ＞ｄの場合（ステップＳ１１０９：Ｙｅｓ）、ｉをインクリメントして（ステップＳ１１１０）、ｉ＞ｎでない場合（ステップＳ１１１１：Ｎｏ）、ステップＳ１１０４に移行する。これにより、次のネットＮｉを抽出することができる。一方、ｉ＞ｎの場合（ステップＳ１１１１：Ｙｅｓ）、一連の処理を終了する。
【００５９】
この実施例４によれば、代表形式データ間において、設計ルール検証をおこなうことができ、設計ルール検証の高速化を図ることができる。特に、代表形式データで表現できる物体は、配線やビアなど限られた種類の物体しかなく、また、代表点もグリッドの格子点上に配置されていることが多い。したがって、データ構造を変換することによって、より高速に設計ルール検証を実現することができる。なお、高速化のためにＳ１１０６で同一ネットの全禁止領域を設定する方法もある。
【実施例５】
【００６０】
つぎに、この発明の実施の形態にかかる実施例５の設計ルール検証装置について説明する。実施例５は、代表形式データと物体形式データとの間の設計ルール検証である。図１２は、この発明の実施の形態にかかる実施例５の設計ルール検証装置の機能的構成の一部を示すブロック図である。図１２は、図３に示した検証部３０２内部の機能的構成の一例を示している。なお、図３に示した取得部３０１については、上述した実施例１〜３のいずれの取得部３０１を適用してもよい。したがって、図１２（図１４も同様）においては、物体形式データ４１２、５２１、６１１をまとめて、物体形式データ１２００と称す。また、上述した実施例４と同一構成には同一符号を付し、その説明を省略する。
【００６１】
図１２において、検証部３０２は、指定部１２０１と領域設定部１２０２と領域判定部１２０３とを有している。指定部１２０１は、取得部３０１によって取得された物体形式データ１２００の中から、任意のネットを構成する物体形式データを指定する。領域設定部１２０２は、半導体回路の設計ルール３１０に基づいて、指定部１２０１によって指定された物体形式データ１２００を包含する領域（禁止領域）Ｒを設定する。禁止領域Ｒの設定の具体例は、図１０と同一であるため省略する。
【００６２】
また、領域判定部１２０３は、領域設定部１２０２によって設定された禁止領域Ｒ内に、物体形式データ１２００が指定されたネット以外の他のネットを構成する代表形式データ７００が配置されているか否かを判定する。具体的には、禁止領域Ｒ内に、物体形式データ１２００が指定されたネット以外の他のネットを構成する代表形式データ７１０が配置されているか否かを判定する。
【００６３】
（設計ルール検証処理手順）
つぎに、実施例５にかかる設計ルール検証処理手順について説明する。図１３は、実施例５にかかる設計ルール検証処理手順を示すフローチャートである。まず、代表形式データ７００が取得された場合（ステップＳ１３０１：Ｙｅｓ）、代表形式データ７００のデータ構造変換をおこなう（ステップＳ１３０２）。そして、ｉ＝１とし、同電位グループのネット数をｎとして（ステップＳ１３０３）、ネットＮｉを抽出する（ステップＳ１３０４）。
【００６４】
そして、ｋ＝１とし、ネットＮｉ内の物体形式データ１２００（以下、実施例５において「物体形式データＦｋ」と称する）の数をｆとすると（ステップＳ１３０５）、物体形式データＦｋの禁止領域Ｒｋを設定する（ステップＳ１３０６）。そして、領域判定処理を実行する（ステップＳ１３０７）。領域判定処理（ステップＳ１３０７）では、まず、禁止領域Ｒｋに、他のネットの代表形式データが配置されているか否かを判定する（ステップＳ１３２０）。
【００６５】
他のネットの代表形式データが配置されている場合（ステップＳ１３２０：Ｙｅｓ）、検証結果（設計ルール違反）を出力し（ステップＳ１３２１）、他のネットの代表形式データが配置されていない場合（ステップＳ１３２０：Ｎｏ）、検証結果（設計ルール遵守）を出力する（ステップＳ１３２２）。
【００６６】
そして、ｋをインクリメントし（ステップＳ１３０８）、ｋ＞ｆでない場合（ステップＳ１３０９：Ｎｏ）、ステップＳ１３０７に移行する。これにより、ネットＮｉ内のつぎの物体形式データＦｋの禁止領域Ｒｋを設定することができる。一方、ｋ＞ｆの場合（ステップＳ１３０９：Ｙｅｓ）、ｉをインクリメントして（ステップＳ１３１０）、ｉ＞ｎでない場合（ステップＳ１３１１：Ｎｏ）、ステップＳ１３０４に移行する。これにより、次のネットＮｉを抽出することができる。一方、ｉ＞ｎの場合（ステップＳ１３１１：Ｙｅｓ）、一連の処理を終了する。
【００６７】
この実施例５によれば、代表形式データと物体形式データとの間において、設計ルール検証をおこなうことができ、設計ルール検証の高速化を図ることができる。特に、代表形式データで表現できる物体は、配線やビアなど限られた種類の物体しかなく、また、代表点もグリッドの格子点上に配置されていることが多い。したがって、データ構造を変換することによって、より高速に設計ルール検証を実現することができる。
【実施例６】
【００６８】
つぎに、この発明の実施の形態にかかる実施例６の設計ルール検証装置について説明する。実施例６は、代表形式データと物体形式データとの間の設計ルール検証である。図１４は、この発明の実施の形態にかかる実施例６の設計ルール検証装置の機能的構成の一部を示すブロック図である。図１４は、図３に示した検証部３０２内部の機能的構成の一例を示している。なお、図３に示した取得部３０１については、上述した実施例１〜３のいずれの取得部３０１を適用してもよい。また、上述した実施例４、５と同一構成には同一符号を付し、その説明を省略する。
【００６９】
検証部３０２は、データ構造変換部１４０１と指定部４０２と領域判定部１４０３とを備えている。データ構造変換部１４０１は、領域設定部１２０２によって領域Ｒが設定された物体形式データ１２００のデータ構造変換をする。データ構造の変換例としては、上述したＬｉｎｋｅｄ  Ｌｉｓｔ構造やＳｅｇｍｅｎｔ  Ｔｒｅｅ構造、またはＢｉｔ  Ｍａｐ構造を用いることができる。ここでは、変換された物体形式データ１４００は、Ｂｉｔ  Ｍａｐ構造に変換されたものとして説明する。
【００７０】
また、指定部１４０２は、代表形式データ７００の中から、任意のネットに含まれる代表形式データを指定する。領域判定部１４０３は、指定部１４０２によって指定された代表形式データ７００が、他ネットに含まれている物体形式データ１４００内に配置されているか否かを判定する。ここで、実施例６の検証内容について具体的に説明する。
【００７１】
図１５−１および図１５−２は、実施例６にかかる検証内容を示す説明図である。（Ａ）段階において、図１４に示した物体形式データ１２００は、物体形式データ１５０１〜１５０４を有している。また、図１４に示した代表形式データ７００は、代表形式データ１５１１〜１５１４を有している。
【００７２】
（Ｂ）段階において、すべての物体形式データ１５０１〜１５０４の禁止領域Ｒ１〜Ｒ４を設定し、Ｂｉｔ  Ｍａｐ構造に変換する。（Ｃ）段階において、同電位グループとなるネットＮ１を指定する。ネットＮ１は、物体形式データ１５０１と代表形式データ１５１１，１５１２を含んでいる。
【００７３】
（Ｄ）段階において、ネットＮ１内の禁止領域Ｒ１を一時的に消去する。（Ｅ）段階において、ネットＮ１内の代表形式データ１５１１を指定する。（Ｆ）段階において、（Ｅ）段階で指定された代表形式データ１５１１が他の禁止領域Ｒ２〜Ｒ４内に配置されているか否かを判定する。（Ｆ）段階では、代表形式データ１５１１は、禁止領域Ｒ２内に配置されていることがわかる。
【００７４】
つぎに、（Ｇ）段階において、まだ指定されていない、ネットＮ１内の代表形式データ１５１２を指定する。（Ｇ）段階では、代表形式データ１５１２は、他のネット内の禁止領域Ｒ２〜Ｒ４に含まれていない。そして、（Ｈ）段階において、（Ｄ）段階で消去した禁止領域Ｒ１を元に戻す。このあと、（Ｉ）段階において、つぎのネットＮ２を抽出する。
【００７５】
（設計ルール検証処理手順）
つぎに、実施例６にかかる設計ルール検証処理手順について説明する。図１６は、実施例６にかかる設計ルール検証処理手順を示すフローチャートである。まず、すべての物体形式データ１２００が取得された場合（ステップＳ１６０１：Ｙｅｓ）、すべての物体形式データ１２００の禁止領域Ｒを設定する（ステップＳ１６０２）。そして、すべての禁止領域ＲをＢｉｔ  Ｍａｐ構造に変換する（ステップＳ１６０３）。
【００７６】
つぎに、ｉ＝１とし、同電位グループのネット数をｎとして（ステップＳ１６０４）、ネットＮｉを抽出する（ステップＳ１６０５）。そして、ｊ＝１とし、ネットＮｉ内の代表形式データ数をｍとして（ステップＳ１６０６）、領域判定処理を実行する（ステップＳ１６０７）。領域判定処理（ステップＳ１６０７）では、まず、ネットＮｉ以外の他のネットのＢｉｔ  Ｍａｐ構造の禁止領域Ｒに、代表形式データ７００（以下、実施例６において「代表形式データＤｊ」と称する。）が配置されているか否かを判定する（ステップＳ１６２０）。
【００７７】
代表形式データＤｊが配置されていると判定された場合（ステップＳ１６２０：Ｙｅｓ）、検証結果（設計ルール違反）を出力する（ステップＳ１６２１）。一方、代表形式データＤｊが配置されていないと判定された場合（ステップＳ１６２０：Ｎｏ）、検証結果（設計ルール遵守）を出力する（ステップＳ１６２２）。
【００７８】
このあと、ｊをインクリメントし（ステップＳ１６０８）、ｊ＞ｍでない場合（ステップＳ１６０９：Ｎｏ）、ステップＳ１６０７に移行して、つぎの代表形式データＤｊの領域判定処理を実行する。一方、ｊ＞ｍの場合（ステップＳ１６０９：Ｙｅｓ）、ｉをインクリメントし（ステップＳ１６１０）、ｉ＞ｎでない場合（ステップＳ１６１１：Ｎｏ）、ステップＳ１６０５に移行して、つぎのネットＮｉを抽出する。そして、ｉ＞ｎの場合（ステップＳ１６１１：Ｙｅｓ）、一連の処理を終了する。
【００７９】
この実施例６によれば、代表形式データと物体形式データとの間における設計ルール検証をおこなうことができ、設計ルール検証の高速化を図ることができる。特に、代表形式データで表現できる物体は、配線やビアなど限られた種類の物体しかなく、また、代表点もグリッドの格子点上に配置されていることが多い。したがって、データ構造を変換することによって、より高速に設計ルール検証を実現することができる。特に、物体形式データのデータ構造をＢｉｔ  Ｍａｐ構造に変換することにより、検証速度の向上を図ることができる。
【実施例７】
【００８０】
つぎに、この発明の実施の形態にかかる実施例７の設計ルール検証装置について説明する。実施例７は、いわゆる擬似エラーの可能性がある場合の設計ルール検証である。設計ルール３１０により、任意の代表形式データ（または物体形式データ）について、隣接する物体が複数種類存在する場合、その種類の数の禁止領域を設定する必要がある。特に、禁止領域がＢｉｔ  Ｍａｐ構造である場合、メモリの使用量が多くなる。したがって、メモリの節約のために最も大きい禁止領域しか設定しなかった場合、擬似エラーが発生する。
【００８１】
図１７は、擬似エラーの発生を示す説明図である。なお、図１７において、物体Ｘ、Ｙは、代表形式データまたは物体形式データによって構成されているものとする。図１７において、たとえば、設計ルール３１０により、物体Ｘに対して、他のネットの異なる物体Ａの禁止領域Ｒａおよび物体Ｂの禁止領域Ｒｂの設定が可能な場合、メモリ節約のために禁止領域Ｒｂのみ設定されているものとする。隣接物体Ｙが物体Ｂである場合、真のエラー判定、すなわち設計ルール違反の判定結果を得ることができる。
【００８２】
一方、物体Ｙが物体Ａでもある場合、禁止領域Ｒａに配置されていないが、物体Ｙは禁止領域Ｒｂ内に配置されているため、擬似エラー、すなわち、設計ルール違反と判定されてしまうこととなる。したがって、禁止領域Ｒｂ内に配置された物体Ｙが判定対象の物体Ｂであるか否かにより、擬似エラーか否かを検出する。擬似エラーが検出された場合には、物体Ｙ（すなわち物体Ａ）と物体Ｘとの間で、従来と同様に図形演算による検証をおこなう。
【００８３】
つぎに、この実施例７にかかる設計ルール検証装置の機能的構成について説明する。図１８は、実施例７にかかる設計ルール検証装置の機能的構成の一例を示すブロック図である。図１８では、検証部３０２の一部を示している。図１８に示した構成は、実施例５〜７の検証部３０２（図７、図１２、図１４を参照）に追加される構成である。したがって、図１８に示した領域判定部１８０１は、図７、図１２または図１４に示した領域判定部７０４、１２０３、１４０３の総称である。図１８において、検証部３０２は、領域判定部１８０１のほか、擬似エラー判定部１８０２と、図形演算検証部１８０３とを備えている。
【００８４】
擬似エラー判定部１８０２は、領域判定部１８０１によって設計ルール違反であると判定された場合、すなわち、エラー判定となった場合、当該エラーが擬似エラーか否かを判定する。図１７を用いて具体的に説明すると、物体Ｙが禁止領域Ｒｂ内に配置されている場合、領域判定部１８０１は、エラー判定する。擬似エラー判定部１８０２では、エラー判定があった場合、物体Ｙが物体Ａか物体Ｂかを判定する。物体Ａである場合は、当該エラーを擬似エラーと判定し、物体Ｂである場合は、当該エラーを真のエラーと判定する。
【００８５】
図形演算検証部１８０３は、擬似エラーと判定された場合、設計ルール３１０内の禁止領域Ｒａの記述情報に基づいて、物体Ｘと物体Ｙとを図形演算して、設計ルール３１０に違反しているか否かを検証する。この図形演算検証部１８０３は、従来の検証ツールが有する検証処理機能であるため、ここではその説明を省略する。
【００８６】
（領域判定処理手順）
つぎに、この実施例７にかかる領域判定処理手順について説明する。図１９および図２０は、実施例７にかかる領域判定処理手順を示すフローチャートである。図１９に示したフローチャートは、図１１に示したステップＳ１１０７と図１３に示したステップＳ１３０７に代わる手順であり、図２０に示したフローチャートは、図１６に示したステップＳ１６０７に代わる手順である。
【００８７】
まず、図１９において、禁止領域に他のネットの代表形式データが配置されているか否かを判定する（ステップＳ１９０１）。他のネットの代表形式データが配置されていないと判定された場合（ステップＳ１９０１：Ｎｏ）、検証結果（設計ルール遵守）を出力する（ステップＳ１９０６）。一方、他のネットの代表形式データが配置されている、すわなち、エラーと判定された場合（ステップＳ１９０１：Ｙｅｓ）、当該エラーが擬似エラーか否かを判定する（ステップＳ１９０２）。
【００８８】
擬似エラーであると判定された場合（ステップＳ１９０２：Ｙｅｓ）、図形演算検証を実行する（ステップＳ１９０３）。この図形演算検証により、設計ルール違反である場合（ステップＳ１９０４：Ｙｅｓ）、検証結果（設計ルール違反）を出力する（ステップＳ１９０５）。一方、この図形演算検証により、設計ルール違反でない場合（ステップＳ１９０４：Ｎｏ）、検証結果（設計ルール遵守）を出力する（ステップＳ１９０６）。また、ステップＳ１９０２において、擬似エラーでないと判定された場合（ステップＳ１９０２：Ｎｏ）、検証結果（設計ルール違反）を出力する（ステップＳ１９０５）。
【００８９】
また、図２０において、他のネットのＢｉｔ  Ｍａｐ構造の禁止領域内に、代表形式データＤｊが配置されているか否かを判定する（ステップＳ２００１）。他のネットの代表形式データＤｊが配置されていないと判定された場合（ステップＳ２００１：Ｎｏ）、検証結果（設計ルール遵守）を出力する（ステップＳ２００６）。一方、代表形式データＤｊが配置されている、すわなち、エラーと判定された場合（ステップＳ２００１：Ｙｅｓ）、当該エラーが擬似エラーか否かを判定する（ステップＳ２００２）。
【００９０】
擬似エラーであると判定された場合（ステップＳ２００２：Ｙｅｓ）、図形演算検証を実行する（ステップＳ２００３）。この図形演算検証により、設計ルール違反である場合（ステップＳ２００４：Ｙｅｓ）、検証結果（設計ルール違反）を出力する（ステップＳ２００５）。一方、この図形演算検証により、設計ルール違反でない場合（ステップＳ２００４：Ｎｏ）、検証結果（設計ルール遵守）を出力する（ステップＳ２００６）。また、ステップＳ２００２において、擬似エラーでないと判定された場合（ステップＳ２００２：Ｎｏ）、検証結果（設計ルール違反）を出力する（ステップＳ２００５）。
【００９１】
この実施例７によれば、設計ルール３１０により禁止領域が複数種類（Ｒａ、Ｒｂ）ある場合であっても、最も大きい禁止領域Ｒｂのみ設定しておくだけでも、設計ルール検証をおこなうことができる。また、禁止領域の設定を必要最小限に抑制することができるため、メモリの使用量を低減することができ、設計ルール検証の高速化を図ることができる。
【００９２】
以上説明したように、この発明の実施の形態にかかる設計ルール検証プログラム、該プログラムを記録した記録媒体、設計ルール検証方法、および設計ルール検証装置によれば、半導体回路のレイアウトデータを簡略化することにより、設計ルール検証の高速化を図ることができる。また、設計ルールが複雑な場合であっても、設計ルールに従っているか（違反していないか）を悲観的に判定するスクリーニング手段として用いることができ、検証処理の実行回数を大幅に低減することができる。
【００９３】
（付記１）半導体回路内の物体を代表的な点を用いて表現した代表形式データを、前記半導体回路に関するレイアウトデータから取得させる取得工程と、
前記取得工程によって取得された代表形式データに基づいて、前記レイアウトデータが設計ルールに違反しているか否かを検証させる検証工程と、
前記検証工程によって検証された検証結果を出力させる出力工程と、
をコンピュータに実行させることを特徴とする設計ルール検証プログラム。
【００９４】
（付記２）前記取得工程は、
前記半導体回路内の物体に関する物体形式データのデータ形式を変換することによって、前記物体形式データを表現する代表形式データを取得させることを特徴とする付記１に記載の設計ルール検証プログラム。
【００９５】
（付記３）前記取得工程は、
前記代表形式データを、所定の検証対象条件に合致する代表形式データと、合致しない代表形式データとに振り分けさせる振分け工程と、
前記振分け工程によって振り分けられた、前記所定の検証対象条件に合致しない代表形式データを、前記半導体回路内の物体に関する物体形式データに変換させる変換工程と、を含み、
前記検証工程は、
前記振分け工程によって振り分けられた、前記検証対象条件に合致する代表形式データと、前記変換手段によって変換された物体形式データと、に基づいて、前記レイアウトデータが設計ルールに違反しているか否かを検証させることを特徴とする付記１に記載の設計ルール検証プログラム。
【００９６】
（付記４）前記取得工程は、
前記半導体回路内の物体に関する物体形式データを、所定の検証対象条件に合致する物体形式データと、合致しない物体形式データとに振り分けさせる振分け工程と、
前記振分け工程によって振り分けられた、前記所定の検証対象条件に合致しない物体形式データを、前記代表形式データに変換させる変換工程と、を含み、
前記検証工程は、
前記振分け工程によって振り分けられた、前記検証対象条件に合致する物体形式データと、前記変換工程によって変換された代表形式データと、に基づいて、前記レイアウトデータが設計ルールに違反しているか否かを検証させることを特徴とする付記１に記載の設計ルール検証プログラム。
【００９７】
（付記５）前記検証工程は、
前記半導体回路の設計ルールに基づいて、前記取得工程によって取得された代表形式データを包含する領域を設定させる設定工程と、
前記設定工程によって設定された領域内に、当該領域が設定された代表形式データ以外の他の代表形式データが配置されているか否かを判定させる領域判定工程と、を含み、
前記出力工程は、
前記領域判定工程によって判定された領域判定結果を出力させることを特徴とする付記１〜４のいずれか一つに記載の設計ルール検証プログラム。
【００９８】
（付記６）前記検証工程は、さらに、
前記取得工程によって取得された代表形式データの中から、任意のネットを構成する代表形式データを指定させる指定工程を含み、
前記設定工程は、
前記半導体回路の設計ルールに基づいて、前記指定工程によって指定された代表形式データを包含する領域を設定させ、
前記領域判定工程は、
前記設定工程によって設定された領域内に、前記代表形式データを含むネット以外の他のネットを構成する他の代表形式データが配置されているか否かを判定させすることを特徴とする付記５に記載の設計ルール検証プログラム。
【００９９】
（付記７）前記検証工程は、
前記半導体回路の設計ルールに基づいて、前記取得手段によって取得された物体形式データを包含する領域を設定させる設定工程と、
前記設定工程によって設定された領域内に、前記取得工程によって取得された代表形式データが配置されているか否かを判定させる領域判定工程と、を含み、
前記出力工程は、
前記領域判定工程によって判定された判定結果を出力させることを特徴とする付記３または４に記載の設計ルール検証プログラム。
【０１００】
（付記８）前記検証工程は、さらに、
前記取得工程によって取得された物体形式データの中から、任意のネットを構成する物体形式データを指定させる指定工程を含み、
前記設定工程は、
前記半導体回路の設計ルールに基づいて、前記指定工程によって指定された物体形式データを包含する領域を設定させ、
前記領域判定工程は、
前記設定工程によって設定された領域内に、前記物体形式データが指定されたネット以外の他のネットを構成する前記代表形式データが配置されているか否かを判定させることを特徴とする付記３または４に記載の設計ルール検証プログラム。
【０１０１】
（付記９）前記検証工程は、
前記設計ルールが複数種類存在する場合、前記領域判定手段によって判定された判定結果が擬似エラーであるか否かを判定させる擬似エラー判定工程を含み、
前記エラー判定工程によって判定された判定結果に基づいて、前記レイアウトデータが設計ルールに違反しているか否かを検証させることを特徴とする付記５〜８のいずれか一つに記載の設計ルール検証プログラム。
【０１０２】
（付記１０）付記１〜付記９に記載の設計ルール検証プログラムを記録したコンピュータに読み取り可能な記録媒体。
【０１０３】
（付記１１）半導体回路内の物体を代表的な点を用いて表現した代表形式データを、前記半導体回路に関するレイアウトデータから取得する取得工程と、
前記取得工程によって取得された代表形式データに基づいて、前記レイアウトデータが設計ルールに違反しているか否かを検証する検証工程と、
前記検証工程によって検証された検証結果を出力する出力工程と、
を含んだことを特徴とする設計ルール検証方法。
【０１０４】
（付記１２）半導体回路内の物体を代表的な点を用いて表現した代表形式データを、前記半導体回路に関するレイアウトデータから取得する取得手段と、
前記取得手段によって取得された代表形式データに基づいて、前記レイアウトデータが設計ルールに違反しているか否かを検証する検証手段と、
前記検証手段によって検証された検証結果を出力する出力手段と、
を備えることを特徴とする設計ルール検証装置。
【０１０５】
なお、本実施の形態で説明した設計ルール検証方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネット等のネットワークを介して配布することが可能な伝送媒体であってもよい。
【産業上の利用可能性】
【０１０６】
以上のように、本発明にかかる設計ルール検証プログラム、該プログラムを記録した記録媒体、設計ルール検証方法、および設計ルール検証装置は、半導体回路に関するレイアウトデータの設計ルール検証に有用である。
【図面の簡単な説明】
【０１０７】
【図１】この発明の実施の形態にかかる設計ルール検証装置のハードウェア構成を示すブロック図である。
【図２】この発明の実施の形態にかかる半導体回路に関するレイアウトデータの内容を示す説明図である。
【図３】この発明の実施の形態にかかる設計ルール検証装置の機能的構成を示すブロック図である。
【図４】この発明の実施の形態にかかる実施例１の設計ルール検証装置の機能的構成の一部を示すブロック図である。
【図５】この発明の実施の形態にかかる実施例２の設計ルール検証装置の機能的構成の一部を示すブロック図である。
【図６】この発明の実施の形態にかかる実施例３の設計ルール検証装置の機能的構成の一部を示すブロック図である。
【図７】この発明の実施の形態にかかる実施例４の設計ルール検証装置の機能的構成の一部を示すブロック図である。
【図８】Ｌｉｎｋｅｄ  Ｌｉｓｔ構造およびＳｅｇｍｅｎｔ  Ｔｒｅｅ構造を示す説明図である。
【図９】Ｂｉｔ  Ｍａｐ構造を示す説明図である。
【図１０】領域設定部によって設定される禁止領域を示す説明図である。
【図１１】実施例４にかかる設計ルール検証処理手順を示すフローチャートである。
【図１２】この発明の実施の形態にかかる実施例５の設計ルール検証装置の機能的構成の一部を示すブロック図である。
【図１３】実施例５にかかる設計ルール検証処理手順を示すフローチャートである。
【図１４】この発明の実施の形態にかかる実施例６の設計ルール検証装置の機能的構成の一部を示すブロック図である。
【図１５−１】実施例６にかかる検証内容（前半）を示す説明図である。
【図１５−２】実施例６にかかる検証内容（後半）を示す説明図である。
【図１６】実施例６にかかる設計ルール検証処理手順を示すフローチャートである。
【図１７】擬似エラーの発生を示す説明図である。
【図１８】実施例７にかかる設計ルール検証装置の機能的構成の一例を示すブロック図である。
【図１９】実施例７にかかる領域判定処理手順を示すフローチャートである。
【図２０】実施例７にかかる領域判定処理手順を示すフローチャートである。
【符号の説明】
【０１０８】
３００  設計ルール検証装置
３０１  取得部
３０２  検証部
３０３  出力部
３１０  設計ルール
４０１  抽出部
４０２  データ形式変換部
５０１、６０１  振分け部
５０２、６０２  データ形式変換部
７０１  データ構造変換部
７０２  指定部
７０３  領域設定部
７０４  領域判定部
【図１】
2006244313.tif 000003
【図２】
2006244313.tif 000004
【図３】
2006244313.tif 000005
【図４】
2006244313.tif 000006
【図５】
2006244313.tif 000007
【図６】
2006244313.tif 000008
【図７】
2006244313.tif 000009
【図８】
2006244313.tif 000010
【図９】
2006244313.tif 000011
【図１０】
2006244313.tif 000012
【図１１】
2006244313.tif 000013
【図１２】
2006244313.tif 000014
【図１３】
2006244313.tif 000015
【図１４】
2006244313.tif 000016
【図１５−１】
2006244313.tif 000017
【図１５−２】
2006244313.tif 000018
【図１６】
2006244313.tif 000019
【図１７】
2006244313.tif 000020
【図１８】
2006244313.tif 000021
【図１９】
2006244313.tif 000022
【図２０】
2006244313.tif 000023