(57)【要約】【課題】システム構成に起因する問題の発生を抑制すること。【解決手段】データ検証装置２１は、レイアウトデータから、セルが有する図形の範囲を示す図形存在範囲情報と、階層構造における下層のセルを参照する所有配置情報とを抽出し、各セルに図形存在範囲情報及び所有配置情報の少なくとも一方を関連付けた仮階層展開テーブルを記憶装置に記憶する。データ検証装置２１は、対象セルと、該対象セルまでの配置パスを決定し、その配置パスに従って、各階層のセルに対応付けられた所有配置情報を仮階層展開テーブルから読み出し、配置パスにおける最上層のセルから対象セルまで配置パスに従って各階層のセルに対応付けられた所有配置情報を累積した累積値を算出し、累積値とレイアウトデータを処理するデータ処理装置２２，２３に応じて設定された検証条件と所有配置情報とに基づいて、所有配置情報が検証条件を満たすか否かを判定する。【選択図】図１
2010009308.tif 000002
【特許請求の範囲】
【請求項１】
半導体装置の設計装置から提供される階層構造をなすレイアウトデータを検証するデータ検証装置が実行するデータ検証方法であって、
前記レイアウトデータを処理するデータ処理系に応じて設定された検証条件を入力する第１の工程と、
前記レイアウトデータから、セルが有する図形の範囲を示す図形存在範囲情報と、階層構造における下層のセルを参照する所有配置情報とを抽出し、各セルに図形存在範囲情報及び所有配置情報の少なくとも一方を関連付けた仮階層展開テーブルを記憶装置に記憶する第２の工程と、
対象セルと、該対象セルまでの配置パスを決定し、その配置パスの情報を前記記憶装置に記憶する第３の工程と、
前記配置パスに従って、各階層のセルに対応付けられた所有配置情報を前記仮階層展開テーブルから読み出し、前記配置パスにおける最上層のセルから対象セルまで前記配置パスに従って各階層のセルに対応付けられた所有配置情報を累積した累積値を算出する第４の工程と、
前記累積値と前記検証条件と前記所有配置情報とに基づいて、前記所有配置情報が前記検証条件を満たすか否かを判定する第５の工程と、
前記配置パスにおいて前記対象セルまでの前記所有配置情報の累積値と、前記対象セルの図形存在範囲情報と前記検証条件とに基づいて、前記図形存在範囲情報が前記検証条件を満たすか否かを判定する第６の工程と、
を含むことを特徴とするデータ検証方法。
【請求項２】
前記データ検証装置は、
前記第５の工程において、前記累積値と前記検証条件との差を許容値として算出し、当該階層のセルの所有配置情報と前記許容値とを比較してその所有配置情報が前記検証条件を満たすか否かを判定する、
ことを特徴とする請求項１に記載のデータ検証方法。
【請求項３】
前記データ検証装置は、
前記第６の工程において、前記対象セルまでの前記所有配置情報の累積値と前記検証条件との差を許容値として算出し、当該階層のセルの図形存在範囲情報と前記許容値とを比較して対象セルの図形存在範囲情報が前記検証条件を満たすか否かを判定する、
ことを特徴とする請求項１に記載のデータ検証方法。
【請求項４】
前記データ検証装置は、入力装置の操作に基づく信号、又は記憶装置に記憶された情報に基づいて、そのときの動作モードが第１のモードか第２のモードかを判定し、前記動作モードが第１のモードの時には前記第１の工程から前記第６の工程を含む詳細検証処理を実行し、
前記動作モードが第２のモードの時には簡易検証処理を実行し、
前記簡易検証処理は、
前記レイアウトデータを処理するデータ処理系に応じて設定された検証条件を入力する第７の工程と、
前記レイアウトデータから、セルが有する図形の範囲を示す図形存在範囲情報と、階層構造における下層のセルを参照する所有配置情報とを抽出し、各セルに図形存在範囲情報及び所有配置情報の少なくとも一方を関連付けた仮階層展開テーブルを記憶装置に記憶する第８の工程と、
着目するセルが参照する子セルを示す所有配置情報を前記仮階層展開テーブルから読み出す第９の工程と、
前記所有配置情報と前記検証条件とを比較して前記所有配置情報が前記検証条件を満たすか否かを判定する第１０の工程と、
を含むことを特徴とする請求項１〜３のうちの何れか一項に記載のデータ検証方法。
【請求項５】
半導体装置の設計装置から提供される階層構造をなすレイアウトデータを検証するデータ検証装置であって、
前記レイアウトデータを処理するデータ処理系に応じて設定された検証条件を入力する入力部と、
前記検証条件を記憶装置に記憶する検証条件作成部と、
前記レイアウトデータを入力するデータ入力部と、
前記レイアウトデータから、セルが有する図形の範囲を示す図形存在範囲情報と、階層構造における下層のセルを参照する所有配置情報とを抽出し、各セルに図形存在範囲情報及び所有配置情報の少なくとも一方を関連付けた仮階層展開テーブルを記憶装置に記憶するテーブル作成部と、
対象セルと、該対象セルまでの配置パスを決定し、その配置パスの情報を前記記憶装置に記憶し、前記配置パスに従って、各階層のセルに対応付けられた所有配置情報を前記仮階層展開テーブルから読み出し、前記配置パスにおける最上層のセルから対象セルまで前記配置パスに従って各階層のセルに対応付けられた所有配置情報を累積した累積値を算出し、前記累積値と前記検証条件と前記所有配置情報とに基づいて、前記所有配置情報が前記検証条件を満たすか否かを判定し、前記配置パスにおいて前記対象セルまでの前記所有配置情報の累積値と、前記対象セルの図形存在範囲情報と前記検証条件とに基づいて、前記図形存在範囲情報が前記検証条件を満たすか否かを判定する詳細検証処理を実行する検証部と、
を含むことを特徴とするデータ検証装置。
【請求項６】
前記検証部は、各階層において算出した前記累積値と前記検証条件との差を許容値として算出し、当該階層のセルが参照する子セルを示す所有配置情報と前記許容値とを比較してその所有配置情報が前記検証条件を満たすか否かを判定する、
ことを特徴とする請求項５に記載のデータ検証装置。
【請求項７】
前記検証部は、前記対象セルまでの前記所有配置情報の累積値と前記検証条件との差を許容値として算出し、当該階層のセルの所有配置情報と前記許容値とを比較して対象セルの図形存在範囲情報が前記検証条件を満たすか否かを判定する、
ことを特徴とする請求項６に記載のデータ検証装置。
【請求項８】
前記検証部は、入力装置の操作に基づく信号、又は記憶装置に記憶された情報に基づいて、そのときの動作モードが第１のモードか第２のモードかを判定し、前記動作モードが第１のモードの時には前記詳細検証処理を実行し、
前記動作モードが第２のモードの時には、着目するセルが参照する子セルを示す所有配置情報を前記仮階層展開テーブルから読み出し、前記所有配置情報と前記検証条件とを比較して前記所有配置情報が前記検証条件を満たすか否かを判定する簡易検証処理を実行する、
ことを特徴とする請求項５〜７のうちの何れか一項に記載のデータ検証装置。
【請求項９】
半導体装置の設計装置から提供される階層構造をなすレイアウトデータを検証するデータ検証装置が実行するプログラムであって、
前記レイアウトデータを処理するデータ処理系に応じて設定された検証条件を入力する第１のステップと、
前記レイアウトデータから、セルが有する図形の範囲を示す図形存在範囲情報と、階層構造における下層のセルを参照する所有配置情報とを抽出し、各セルに図形存在範囲情報及び所有配置情報の少なくとも一方を関連付けた仮階層展開テーブルを記憶装置に記憶する第２のステップと、
対象セルと、該対象セルまでの配置パスを決定し、その配置パスの情報を前記記憶装置に記憶する第３のステップと、
前記配置パスに従って、各階層のセルに対応付けられた所有配置情報を前記仮階層展開テーブルから読み出し、前記配置パスにおける最上層のセルから対象セルまで前記配置パスに従って各階層のセルに対応付けられた所有配置情報を累積した累積値を算出する第４のステップと、
前記累積値と前記検証条件と前記所有配置情報とに基づいて、前記所有配置情報が前記検証条件を満たすか否かを判定する第５のステップと、
前記配置パスにおいて前記対象セルまでの前記所有配置情報の累積値と、前記対象セルの図形存在範囲情報と前記検証条件とに基づいて、前記図形存在範囲情報が前記検証条件を満たすか否かを判定する第６のステップと、
を含むことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
半導体装置を製造するために用いられるレイアウトデータを検証するデータ検証方法、データ検証装置、及びプログラムに関する。
【背景技術】
【０００２】
半導体装置の設計者は、半導体装置の使用用途に応じて仕様、即ち搭載機能や動作速度に基づいてＣＡＤ（Computer Aided Design ）装置等の設計装置を用いて論理設計、回路設計を行い、回路設計された論理回路に基づいて素子を配置した半導体装置の図形データであるレイアウトデータを生成する。データ処理装置は、そのレイアウトデータを、実際にマスク、レチクル、ウェハに描画する描画装置に入力可能な露光データに変換する。そして、描画されたマスク等により半導体装置のチップが製造される。
【０００３】
レイアウトデータは、階層構造を持つ。各階層のセルは、図形データと参照情報のうちの少なくとも一方を持つ。図形データは、多角形の頂点座標、又は線分の端点座標及び幅情報と、多角形又は線部の配置位置である。配置位置は、セルの座標系、つまりセルの基準位置に対する相対位置で表現されている。参照情報は、そのセルが参照する下位のセル（被参照セル）の配置位置であり、この配置位置は、上位のセルの座標系で表現されている。
【０００４】
データ処理装置は、レイアウトデータに含まれる全ての図形データを統一した座標系で表現する展開処理を行い、レイアウトデータに含まれる図形データの物理的な干渉、ネットリストと対応するか否かを検証する（例えば、特許文献１，特許文献２，特許文献３参照）。そして、データ処理装置は、検証結果に問題のないレイアウトデータを露光データに変換する。
【０００５】
上記のレイアウトデータを作成するために使用される設計装置と、レイアウトデータを処理するデータ処理装置は、動作環境やシステム構成が異なる場合がある。
例えば、近年の半導体業界は、プロセス技術の微細化に応じて設備投資（ファウンドリコスト）が上昇している。このため、製造部門を切り離して設計のみを行うメーカと、業態を製造に特化することで、コストダウンを実現したメーカが発生している。半導体装置の製造を外部に委託するメーカはファブレスメーカ（単にファブレスという）と呼ばれ、製造を行うメーカはファブメーカ（単にファブという）と呼ばれる。ファイブレスは、コスト抑制のため、信頼性を含めて複数のファブを比較検討し、コストパフォーマンスのよいファブを選択する傾向にある。
【０００６】
ファブレスや製品製造の一部を外部に委託するメーカの設計者は、ＣＡＤ(Computer Aided Design )等のツール（ＥＤＡツール）を用いて半導体装置のレイアウトデータ等を生成する。ファブは、レイアウトデータ等を受領し、そのデータをマスク製造や直接描画のためのデータに変換し、変換後のデータに基づいて半導体装置を製造し、ファブレスに提供する。
【特許文献１】特開平５−９４４９４号公報
【特許文献２】特開平５−３０３６１１号公報
【特許文献３】特開２０００−１９４７４３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ところが、上記のように、装置における動作環境等の相違により、ファブにおいてエラーが発生する場合がある。上記したように、レイアウトデータに含まれる各セルの位置は、そのセルの上位のセルが持つ参照情報によって配置位置が指定されている。このため、下位のセルに含まれる図形の位置は、最上位のセルから下層に向かって各階層のセルに含まれる参照情報を加味した座標値を算出することで、チップ全体に対する配置位置が決定される。個々のセルに含まれる参照情報の数値がデータ処理装置が扱う数値の範囲（例えばデータ処理系で扱うことのできる符号付きの最大最小整数値）内であったとしても、算出した座標値が範囲外になる場合がある。
【０００８】
例えば、図８に示すように、原点Ｏ１から階層トップのセルに含まれる配置情報１（Ｘ座標及びＹ座標）によって下位の階層のセルにおける基準点Ｏ２（図中、黒丸で示す）が決定される。その基準点Ｏ２の座標（配置情報１）に、そのセルに含まれる配置情報２を加味する（加算する）ことで、次の階層のセルにおける基準点Ｏ３が決定される。更に、その基準点Ｏ３の座標（配置情報１＋配置座標２）に、そのセルに含まれる配置情報３を加味する（加算する）ことで、次の階層のセルにおける基準点Ｏ４が決定される。この図において、基準点Ｏ３の座標値は、データ処理系で扱うことのできる符号付きの最大最小整数値に基づく数値範囲（＋ｍｘ〜−ｍｘ，＋ｎｙ〜−ｎｙ）を越えている。
【０００９】
配置装置は、当該装置が利用するデータに含まれるセルが図形データを持たない場合、図８に示すように基準点Ｏ３が範囲外となるようにセルを配置することを許容することがある。一方、データ処理装置が基準点といえども、範囲外に配置することを許容しないシステムの場合、このデータ処理装置は、算出した座標値が範囲外の場合にオーバーフローやアンダーフローといった現象を起こし、システムによって定められた異常値に変更する。この状況に気が付かないで作業を継続すると、エラーを含むマスクや半導体装置が生成されてしまい、多大な損害が発生するおそれがある。
【００１０】
図８に示すような配置情報を持つセルを含むレイアウトデータは基準点Ｏ３に対する図形が存在しないため、レイアウト結果（レイアウト図）を目視でチェックしても、問題点を発見することはできない。また、ファウンドリ（ファブ）にシステム構成が異なる（コンピュータそのものが相違するもの、コンピュータが実行するツールが相違するもの、等）複数のデータ処理装置を持つ場合、上記のデータ処理装置と異なる環境では、上記の問題が発生しないことがある。つまり、１つのデータ処理装置では上記の問題が発生し、別のデータ処理装置では上記の問題が発生しない場合がある。このため、問題の発見が困難となり、原因の解析が難しくなって問題が深刻化する場合がある。
【００１１】
このデータ検証方法、データ検証装置、及びプログラムで、システム構成に起因する問題の発生を抑制することを目的とする。
【課題を解決するための手段】
【００１２】
このデータ検証方法は、前記レイアウトデータを処理するデータ処理系に応じて設定された検証条件を入力する第１の工程と、前記レイアウトデータから、セルが有する図形の範囲を示す図形存在範囲情報と、階層構造における下層のセルを参照する所有配置情報とを抽出し、各セルに図形存在範囲情報及び所有配置情報の少なくとも一方を関連付けた仮階層展開テーブルを記憶装置に記憶する第２の工程と、対象セルと、該対象セルまでの配置パスを決定し、その配置パスの情報を前記記憶装置に記憶する第３の工程と、前記配置パスに従って、各階層のセルに対応付けられた所有配置情報を前記仮階層展開テーブルから読み出し、前記配置パスにおける最上層のセルから対象セルまで前記配置パスに従って各階層のセルに対応付けられた所有配置情報を累積した累積値を算出する第４の工程と、前記累積値と前記検証条件と前記所有配置情報とに基づいて、前記所有配置情報が前記検証条件を満たすか否かを判定する第５の工程と、前記配置パスにおいて前記対象セルまでの前記所有配置情報の累積値と、前記対象セルの図形存在範囲情報と前記検証条件とに基づいて、前記図形存在範囲情報が前記検証条件を満たすか否かを判定する第６の工程と、を要件とする。
【００１３】
データ検証装置の特徴は、前記レイアウトデータを処理するデータ処理系に応じて設定された検証条件を入力する入力部と、前記検証条件を記憶装置に記憶する検証条件作成部と、前記レイアウトデータを入力するデータ入力部と、前記レイアウトデータから、セルが有する図形の範囲を示す図形存在範囲情報と、階層構造における下層のセルを参照する所有配置情報とを抽出し、各セルに図形存在範囲情報及び所有配置情報の少なくとも一方を関連付けた仮階層展開テーブルを記憶装置に記憶するテーブル作成部と、対象セルと、該対象セルまでの配置パスを決定し、その配置パスの情報を前記記憶装置に記憶し、前記配置パスに従って、各階層のセルに対応付けられた所有配置情報を前記仮階層展開テーブルから読み出し、前記配置パスにおける最上層のセルから対象セルまで前記配置パスに従って各階層のセルに対応付けられた所有配置情報を累積した累積値を算出し、前記累積値と前記検証条件と前記所有配置情報とに基づいて、前記所有配置情報が前記検証条件を満たすか否かを判定し、前記配置パスにおいて前記対象セルまでの前記所有配置情報の累積値と、前記対象セルの図形存在範囲情報と前記検証条件とに基づいて、前記図形存在範囲情報が前記検証条件を満たすか否かを判定する検証部と、を含む。
【００１４】
この検証方法及び検証装置によれば、レイアウトデータから抽出した所有配置情報を配置パスに従って累積し、その累積値と検証条件とに基づいて、各セルが参照する子セルを示す所有配置情報が検証条件を満たすか否かを判定することにより、個別の図形座標に対する処理を行うことなく、当該レイアウトデータがデータ処理系に対応するか否かを検証することができる。また、検証条件をデータ処理系に応じて設定することにより、レイアウトデータを処理するデータ処理系に対応するか否かを検証することができる。
【発明の効果】
【００１５】
開示のデータ検証方法、データ検証装置、及びプログラムは、システム構成に起因する問題の発生を抑制するという効果を奏する。
【発明を実施するための最良の形態】
【００１６】
以下、一実施形態を図１〜図７に従って説明する。
図１に示すように、ファブレス１０は、設計装置としてのレイアウト作成装置１１を有している。ファブレス１０は、例えば、半導体装置の製造を外部に委託するメーカ（ファブレスメーカ）、半導体装置の製造を外部に委託する部門である。レイアウト作成装置１１は、機能設計、論理合成、レイアウト設計、等の設計を行うためのＤＥＡツールを有し、ツールとともにベンダから提供されるデータ、ファブ２０から提供されるデータを用いて半導体装置の製造に必用なデータ３０を生成する。このデータ３０は、レイアウトデータ、レイアウトデータが参照するセルの定義データを含む。そして、このデータ３０は、ネットワークや記録媒体によりファブレス１０からファブ２０に提供される。
【００１７】
ファブ２０は、例えば、ＩＣ製造会社（ファウンドリ：foundry）、工場（ファブ：fabricating lab〔略：fab〕）である。ファブ２０は、ファブレス１０から提供されるデータ３０に基づいて作成した半導体装置をファブレス１０に供給する。
【００１８】
ファブ２０は、データ検証装置２１とデータ処理装置２２，２３を有し、それらの装置２１〜２３はネットワーク２４を介して相互に接続されている。データ検証装置２１は、所定の検証範囲値に従ってファブレス１０から提供されるデータ３０に含まれるレイアウトデータを検証する。そして、データ検証装置２１は、検証に合格したデータを、データ処理装置２２又は２３に供給する。
【００１９】
データ処理装置２２，２３は、互いのシステム構成が異なる装置であって、データ検証装置２１にて検証されたレイアウトデータを、製造プロセスに応じたデータ（例えばレチクル描画用のデータ）に変換する。そして、ファブ２０は、変換後のデータに基づいて半導体装置を製造し、その半導体装置をファブレス１０に供給する。
【００２０】
図２は、本実施形態のデータ検証装置２１の概略構成図である。
データ検証装置２１は一般的なＣＡＤ（Computer Aided Design ）装置からなり、中央演算装置（以下、ＣＰＵ）４１、主記憶（＝メモリ）４２、記憶装置４３、表示装置４４、入力装置４５、及びドライブ装置４６を備え、それらはバス４７を介して相互に接続されている。
【００２１】
ＣＰＵ４１は、メモリ４２を利用してプログラムを実行し、レイアウトデータ検証に必要な処理を実現する。メモリ４２には、レイアウトデータ検証機能を提供するために必要となるプログラムとデータが格納され、メモリ４２としては、通常、キャッシュ・メモリ、システム・メモリ、及びディスプレイ(グラフィック)・メモリを含む。
【００２２】
表示装置４４は、検証結果表示、検証条件入力画面等の表示に用いられ、これには通常、ＣＲＴ（Cathode Ray Tube）、ＬＣＤ（Liquid Crystal Display）、ＰＤＰ（Plasma Display Panel）等が用いられる。入力装置４５は、ユーザからの要求や指示、検証条件の入力に用いられ、これらにはキーボード及びマウス等が用いられる。
【００２３】
記憶装置４３は、通常、磁気ディスク装置、光ディスク装置、光磁気ディスク装置、半導体ディスク装置（ＳＳＤ:Solid State Drive）等を含む。記憶装置４３には、レイアウトデータ検証のためのプログラムデータ（以下、プログラム）及び各種のデータファイル（以下、ファイル）が格納される。ＣＰＵ４１は、入力装置４５による指示に応答してプログラムや各種ファイルに格納されるデータを適宜メモリ４２へ転送し、それを逐次実行する。この記憶装置４３はデータベースとしても使用される。
【００２４】
ＣＰＵ４１が実行するプログラム及びレイアウトデータは、記録媒体４８にて提供される。ドライブ装置４６は記録媒体４８からプログラムを読出し、それを記憶装置４３にインストールする。
【００２５】
記録媒体４８としては、メモリカード、フレキシブルディスク、光ディスク(CD-ROM,DVD-ROM,…)、光磁気ディスク（MO,MD,…）等、任意のコンピュータ読み取り可能な記録媒体を使用することができる。この記録媒体４８に、前述のプログラムを格納しておき、必要に応じて、メモリ４２にロードして使用することもできる。また、記録媒体４８はプログラムファイルやデータファイルを提供するものであればよく、ネットワークを介して接続された他のコンピュータやサーバ等の記憶装置又はドライブ装置に挿入された記録媒体を含む。
【００２６】
上記したように、図１に示すデータ３０は、図５に示すレイアウトデータ３１を含む。このレイアウトデータ３１は、複数のセルＣＴ，ＣＡ〜ＣＧのデータを有している。各セルＣＴ〜ＣＧは、各セルの原点を基準とした座標情報を持つ。例えば、図形が定義されたセルは、図形の形状を示す座標情報を有し、セルの図形の座標情報を調べることで、セル原点を基準とした図形存在範囲を示す座標の最大値及び最小値を抽出することができる。図形の形状を示す座標情報は、多角形の頂点座標、又は線分の端点座標及び幅情報と、多角形又は線部の配置位置を含む。座標の最大値及び最小値は、例えば直交座標系（Ｘ座標及びＹ座標）にて記述されている。
【００２７】
また、レイアウトデータ３１は階層構造にて記述され、レイアウトデータ３１に含まれる各セルＣＴ〜ＣＧは、階層位置に応じた参照情報を有する。参照情報は、そのセルが参照する下位のセル（被参照セル）の配置位置であり、この配置位置は、上位のセルの座標系、つまりセルを参照する上位のセルの原点を基準とした被参照セルの基準位置の相対座標値で表現されている。例えば、図５に示すレイアウトデータ３１の場合、トップ階層として記述されたセルＣＴは、下位のセルの参照情報として、セルＣＡの配置情報１と、セルＣＢの配置情報２と、セルＣＣの配置情報３を有する。セルＣＢは、下位のセルの参照情報として、セルＣＤの配置情報４と、セルＣＥの配置情報５を有する。セルＣＥは、下位のセルの参照情報として、セルＣＦの配置情報６と、セルＣＧの配置情報７を有する。
【００２８】
次に、データ検証装置２１が実行するレイアウトデータ検証処理を説明する。
データ検証装置２１のＣＰＵ４１は、操作者の操作に従って入力装置４５から入力される信号に応答して、データ検証のためのプログラムを実行する。このデータ検証プログラムは、図３に示す詳細検証処理のプログラムと、図４に示す簡易検証処理のプログラムとを含む。ＣＰＵ４１は、操作者の操作（例えばメニュー選択）に従って入力装置４５から入力される信号、記憶装置４３に記憶されたモード選択情報、等に従って、動作モードが詳細検証モード（第１のモード）と簡易検証モード（第２のモード）の何れかを判断し、その判断結果に応じたプログラムを実行して検証処理を行う。
【００２９】
先ず、詳細検証モードにおける詳細検証処理を図３に従って説明する。
ＣＰＵ４１は、検証条件記述データ（以下、単に検証条件という）３２から検証条件を入力する（ステップ５１）。検証条件は、図１に示すレイアウト作成装置１１とデータ処理装置２２，２３、それぞれの数値範囲に依存しない条件である。データ処理装置２２，２３の数値範囲は、システム構成（ＣＰＵ）が扱う数値範囲（最大値，最小値）、それぞれのデータ処理装置２２，２３にて実行するデータ処理プログラムにて許容される数値範囲（最大値，最小値）である。一例として、検証条件３２には、検証条件として所定ビット数（例えば３２ビット）で表現できる符号付きの最大最小整数値（以下、最大最小整数値）が格納されている。最大最小整数値は、図８に示すように、基準点Ｏ１（座標値（０，０））から見たＸ軸及びＹ軸の最大最小整数値の座標値である。基準点Ｏ１から正側の座標値を最大値（最大ＸＹ）とし、基準点Ｏ１から負側の座標値を最小値（最小ＸＹ）とする。例えば、Ｘ軸の最大値＋ｍｘ＝最大整数、Ｙ軸の最大値＋ｎｙ＝最大整数、Ｘ軸の最小値−ｍｘ＝最小整数、Ｙ軸の最小値−ｎｙ＝最小整数となる。ＣＰＵ４１は、検証条件（の検証範囲値（＋ｍｘ，−ｍｘ，＋ｎｙ，−ｎｙ））を入力する。
【００３０】
次に、ＣＰＵ４１は、レイアウトデータ３１に基づき、仮階層展開テーブル３３を図２に示すメモリ４２に作成する（ステップ５２）。仮階層展開テーブル３３は、図６に示すように、セルと、セルが持つ図形存在範囲情報３３ａと、セルが持つ所有配置情報３３ｂとを関連付けたテーブルである。図形存在範囲情報３３ａは、そのセルの原点を基準とした範囲を示す各軸Ｘ，Ｙの最小値及び最大値である。所有配置情報３３ｂは、参照するセルを示す配置セル名、セルの原点から参照するセル（配置セル）の基準点までのＸ軸及びＹ軸の距離（距離Ｘ，距離Ｙ）を含む。ＣＰＵ４１は、レイアウトデータ３１に含まれる各セルについて、各セルが持つ図形存在範囲情報及び所有配置情報を抽出し、仮階層展開テーブル３３に格納する。
【００３１】
次に、ＣＰＵ４１は、仮階層展開テーブル３３を参照し、図形存在範囲情報を検証するセル（対象セル）と、その対象セルが含まれ配置位置を検証する配置パスを決定し、各軸の累積座標値ＲＸ，ＲＹを初期化（＝０）する（ステップ５３）。対象セル及び配置パスの決定処理の一例を説明する。
【００３２】
ＣＰＵ４１は、レイアウトデータ３１の階層構造に従ってトップ階層のセルから下層のセルに向かってたどり、トップ階層のセルから戻りが発生したセルまでを１つの配置パスとして決定する。
【００３３】
図５において、トップ階層のセルＣＴは３つの所有配置情報（配置情報１，２，３）を有する。ＣＰＵ４１は、セルＣＴが有する所有配置情報のうちの１つ（例えば配置情報１）を選択し、その選択した配置情報１にて配置されるセルＣＡに至る。このセルＣＡは所有配置情報を持たない、即ちセルＣＡには子セルが存在しないため、セルＣＡから上層、つまりトップセルＣＴへの戻りが生じる。ＣＰＵ４１は、トップ階層のセルＣＴから戻りが生じたセルＣＡまでを１つの配置パスとして決定する。そして、ＣＰＵ４１は、この戻りが生じたセルＣＡ、つまり配置パスにおける最下層のセルを対象セルとする。
【００３４】
同様に、ＣＰＵ４１は、セルＣＴが有する所有配置情報のうちの１つ（例えば配置情報２）を選択し、その選択した配置情報２にて配置されるセルＣＢに至る。このセルＣＢは２つの所有配置情報（配置情報４，５）を持つ、即ちセルＣＢには２つの子セルが存在する。従って、ＣＰＵ４１は、１つの所有配置情報（例えば配置情報４）を選択し、その選択した配置情報４にて配置されるセルＣＤに至る。このセルＣＤには子セルが存在しないため、セルＣＤから上層のセルＣＢへの戻りが生じる。ＣＰＵ４１は、トップ階層のセルＣＴから戻りが生じたセルＣＤまで、つまり「セルＣＴ」−「セルＣＢ」−「セルＣＤ」を１つの配置パスとして決定する。そして、ＣＰＵ４１は、この戻りが生じたセルＣＤを対象セルとする。
【００３５】
次に、ＣＰＵ４１は、セルＣＢが持つ配置情報５に従ってセルＣＥに至る。このセルＣＥは２つの所有配置情報（配置情報６，７）を持つ、即ちセルＣＥには２つの子セルが存在する。従って、ＣＰＵ４１は、１つの所有配置情報（例えば配置情報６）を選択し、その選択した配置情報６にて配置されるセルＣＦに至る。このセルＣＦには子セルが存在しないため、セルＣＦから上層のセルＣＥへの戻りが生じる。ＣＰＵ４１は、トップ階層のセルＣＴから戻りが生じたセルＣＦまで、つまり「セルＣＴ」−「セルＣＢ」−「セルＣＥ」−「セルＣＦ」を１つの配置パスとして決定する。そして、ＣＰＵ４１は、この戻りが生じたセルＣＦを対象セルとする。
【００３６】
同様に、ＣＰＵ４１は、セルＣＧまで辿り、そのセルＣＧからセルＣＥに戻りが生じるので、トップセルＣＴからセルＣＧまで、つまり「セルＣＴ」−「セルＣＢ」−「セルＣＥ」−「セルＣＧ」を配置パスとして決定する。そして、ＣＰＵ４１は、この戻りが生じたセルＣＧを対象セルとする。
【００３７】
次に、セルＣＥが持つ全ての子セルＣＣＦ，ＣＧについて配置パスを決定したため、ＣＰＵ４１は、セルＣＥからセルＣＢに戻る。従って、ＣＰＵ４１は、トップセルＣＴからこの戻りが生じたセルＣＥまで、つまり「セルＣＴ」−「セルＣＢ」−「セルＣＥ」を１つの配置パスとして決定する。そして、ＣＰＵ４１は、この戻りが生じたセルＣＥを対象セルとする。
【００３８】
このようにして、ＣＰＵ４１は、トップ階層のセルＣＴより下層の全てのセルについて、そのセルまでの配置パスを決定するとともに、全てのセルを図形存在範囲情報を検証する対象である対象セルとして決定する。
【００３９】
次に、ＣＰＵ４１は、決定した配置パスを構成するセルが持つ所有配置情報が検証条件を満足するか否かを検証する（ステップ５４〜５９）。上記したように、検証条件として最大最小整数値が設定されている場合、ＣＰＵ４１は、レイアウトデータ３１の所有配置情報によって配置されるセルの基準点が、最大最小整数値の範囲内か否かを判断する。つまり、基準点のＸ軸の座標値がＸ軸の最大値＋ｍｘと最小値−ｍｘの間の値であるか否かを判断するとともに、基準点のＹ軸の座標値がＹ軸の最大値＋ｎｙと最小値−ｎｙの間の値であるか否かを判断する。
【００４０】
詳述すると、ＣＰＵ４１は、決定した配置パスにおいて最上位のセル、つまりトップ階層のセルＣＴが持ち、この配置パスに対応する所有配置情報３３ｂを仮階層展開テーブル３３から入力する（ステップ５４）。例えば、配置パスを「セルＣＴ」−「セルＣＢ」−「セルＣＤ」とする。ＣＰＵ４１は、トップ階層のセルＣＴからセルＣＢを参照する所有配置情報、即ち配置情報２を入力する。
【００４１】
次に、ＣＰＵ４１は、ステップ５１において入力した検証条件と、ステップ５４において入力した配置情報２と、各軸の累積座標値ＲＸ，ＲＹとに基づいて、加減算許容値を算出する（ステップ５５）。この許容値は、検証条件の最大値及び最小値と、入力した配置情報２の基準点との差分である。この差分は、基準点に対して加減算した結果が最大最小整数値の最大値及び最小値を超えない値である。
【００４２】
そして、ＣＰＵ４１は、累積座標値ＲＸ，ＲＹの符号に対応する最大値又は最小値と、累積座標値ＲＸ，ＲＹとの差を算出し、この差分値を許容値とする。例えば、図６に示すように、累積座標値ＲＸが正の符号を持つ、即ち累積座標値ＲＸが正の値の場合、判定すべき加算可能な最大値を求める。従って、ＣＰＵ４１は、最大値＋ｍｘと累積座標値ＲＸとに基づき、次式
ＡＸ＝＋ｍｘ−ＲＸ
によりＸ軸の許容値ＡＸを算出する。
【００４３】
一方、累積座標値ＲＸが負の符号を持つ、即ち累積座標値ＲＸが負の値の場合、判定するべき加算可能な最小値（負値）を求める。従って、ＣＰＵ４１は、最小値−ｍｘと累積座標値ＲＸに基づき、次式
ＡＸ＝−ｍｘ−ＲＸ
によりＸ軸の許容値ＡＸを算出する。
【００４４】
同様に、ＣＰＵ４１は、Ｙ軸において、最大値＋ｎｙ又は最小値−ｎｙと累積座標値ＲＹとに基づき、
ＡＹ＝＋ｎｙ−ＲＹ
ＡＹ＝−ｎｙ−ＲＹ
によりＹ軸の許容値ＡＹを算出する。
【００４５】
次に、ＣＰＵ４１は、許容値ＡＸ，ＡＹと所有配置情報３３ｂの座標値Ｈｘｂ，Ｈｙｂを比較し、座標値Ｈｘｂ，Ｈｙｂを検証する（ステップ５６）。詳しくは、ＣＰＵ４１は、許容値ＡＸ，ＡＹと座標値Ｈｘｂ，Ｈｙｂとを大小比較した結果と、累積座標値ＲＸ，ＲＹの符号（正負）とに基づいて、座標値Ｈｘｂ，Ｈｙｂが正常か否かを判断する。
【００４６】
即ち、累積座標値ＲＸが正値の場合、許容値ＡＸより座標値Ｈｘｂが小さい場合には座標値Ｈｘｂが正常であると判断し、許容値ＡＸより座標値Ｈｘｂが大きい場合には座標値Ｈｘｂが許容値ＡＸを越えている検証値オーバーであり異常であると判断する。
【００４７】
累積座標値ＲＸが負値の場合、許容値ＡＸより座標値Ｈｘｂが大きい場合には座標値Ｈｘｂが正常であると判断し、許容値ＡＸより座標値Ｈｘｂが小さい場合には座標値Ｈｘｂが許容値ＡＹを越えている検証値アンダーであり異常であると判断する。
【００４８】
累積座標値ＲＹが正値の場合、許容値ＡＹより座標値Ｈｙｂが小さい場合には座標値Ｈｙｂが正常であると判断し、許容値ＡＹより座標値Ｈｙｂが大きい場合には座標値Ｈｙｂが許容値ＡＹを越えている検証値オーバーであり異常であると判断する。
【００４９】
累積座標値ＲＹが負値の場合、許容値ＡＹより座標値Ｈｙｂが大きい場合には座標値Ｈｙｂが正常であると判断し、許容値ＡＹより座標値Ｈｙｂが小さい場合には座標値Ｈｙｂが許容値ＡＹを越えている検証値アンダーであり異常であると判断する。
【００５０】
次に、ＣＰＵ４１は、検証ＯＫか否かを判断する（ステップ５７）。ＣＰＵ４１は、上記のステップ５６において座標値Ｈｘｂと座標値Ｈｙｂがともに正常である場合、検証ＯＫ、即ち配置情報２により配置されるセルＣＢの基準点は検証範囲内であり、最大最小整数値の範囲内に基準点が存在すると判定し、次のステップ５８に移行する。そして、ＣＰＵ４１は、累積座標値ＲＸ，ＲＹに座標値Ｈｘｂ，Ｈｙｂをそれぞれ加算する（ステップ５８）。即ち、
ＲＸ＋＝Ｈｘｂ
ＲＹ＋＝Ｈｙｂ
となる。この加算結果は、セルＣＢの基準点の座標値である。
【００５１】
次に、ＣＰＵ４１は、配置パスの残りが有るか否かを判断する（ステップ５９）。ＣＰＵ４１は、上記のステップ５３において決定した配置パスを構成するセルのうち、トップ階層のセルＣＴ以外で所有配置情報を検証してないセルが存在するか否かを判断する。ＣＰＵ４１は、セルが存在する場合にステップ５４に移行し、セルが存在しない場合に次のステップ６０に移行する。
【００５２】
上記したように、ステップ５３において決定した配置パスにおいてセルＣＢがセルＣＤを参照する所有配置情報を検証していないため、ＣＰＵ４１は、ステップ５４に移行する。次に、ＣＰＵ４１は、セルＣＢが有する所有配置情報３３ｂ（座標値Ｈｘｄ，Ｈｙｄ）を仮階層展開テーブル３３を読み出し（ステップ５４）、加減算許容値ＡＸ，ＡＹを算出する（ステップ５５）。次に、ＣＰＵ４１は、許容値ＡＸ，ＡＹと座標値Ｈｘｄ，Ｈｙｄを比較し、座標値Ｈｘｄ，Ｈｙｄを検証する（ステップ５６）。次に、ＣＰＵ４１は、検証ＯＫか否かを判断し（ステップ５７）、検証ＯＫの場合に累積座標値ＲＸ，ＲＹに座標値Ｈｘｄ，Ｈｙｄをそれぞれ加算する（ステップ５８）。次に、ＣＰＵ４１は、配置パスの残りが有るか否かを判断する（ステップ５９）。
【００５３】
以上のように、ＣＰＵ４１は、ステップ５３において決定した配置パスにおいて、所有配置情報を検証してないセルが存在しなくなるまでステップ５４からステップ５９の処理を繰り返し実行する。ＣＰＵ４１は、配置パスにおける最上層のセル、つまりトップ階層のセルＣＴから下層に向かって順次処理を行う。従って、ＣＰＵ４１は、繰り返し処理を行うことにより、配置パスにおける最下層のセル、つまり対象セルに到達する。従って、ＣＰＵ４１は、対象セルまで処理を繰り返し実行することにより、配置パスを構成する全てのセルについて、所有配置情報３３ｂを検証する。そして、配置パスにおける全ての所有配置情報が正常（ステップ５７においてＹＥＳ）の場合、累積座標値ＲＸ，ＲＹは、トップ階層のセルＣＴの基準点の座標系、即ち半導体装置（チップ）の座標系における対象セルの基準点の座標値を示す。従って、ＣＰＵ４１は、この累積座標値ＲＸ，ＲＹに基づいて、対象セルにおける図形存在範囲情報を検証する（ステップ６０〜６３）。
【００５４】
先ず、ＣＰＵ４１は、対象セル、即ちセルＣＤの図形存在範囲情報（最小値ｘｄ１，ｙｄ１、最大値ｘｄ２，ｙｄ２）を仮階層展開テーブル３３から入力する（ステップ６０）。次に、ＣＰＵ４１は、ステップ５５と同様に、ステップ５１において入力した検証条件と、ステップ６０において入力した図形存在範囲情報と、各軸の累積座標値ＲＸ，ＲＹとに基づいて、加減算許容値ＡＸ，ＡＹを算出する（ステップ６１）。
【００５５】
この時、累積座標値ＲＸ，ＲＹは、それぞれ配置パスにおいて最上位のセルＣＴから対象セルであるセルＣＤまでの配置情報２，４の座標値の累積値であるため、
ＲＸ＝Ｈｘｂ＋Ｈｘｄ
ＲＹ＝Ｈｙｂ＋Ｈｙｄ
となる。
【００５６】
次に、ＣＰＵ４１は、許容値ＡＸと図形存在範囲情報３３ａの座標値ｘｄ１，ｘｄ２、許容値ＡＹと座標値ｙｄ１，ｙｄ２を比較し、図形存在範囲情報３３ａを検証する（ステップ６２）。詳しくは、ＣＰＵ４１は、許容値ＡＸ，ＡＹと図形存在範囲情報３３ａの座標値とを大小比較した結果と、累積座標値ＲＸ，ＲＹの符号（正負）とに基づいて、図形存在範囲情報３３ａの座標値ｘｄ１〜ｙｄ２が正常か否かを判断する。
【００５７】
即ち、累積座標値ＲＸが正値の場合、許容値ＡＸより座標値ｘｄ１が小さい場合には座標値ｘｄ１が正常であると判断し、許容値ＡＸより座標値ｘｄ１が大きい場合には座標値ｘｄ１が許容値ＡＸを越えている検証値オーバーであり異常であると判断する。
【００５８】
累積座標値ＲＸが負値の場合、許容値ＡＸより座標値ｘｄ１が大きい場合には座標値ｘｄ１が正常であると判断し、許容値ＡＸより座標値ｘｄ１が小さい場合には座標値ｘｄ１が許容値ＡＹを越えている検証値アンダーであり異常であると判断する。
【００５９】
累積座標値ＲＹが正値の場合、許容値ＡＹより座標値ｙｄ１が小さい場合には座標値ｙｄ１が正常であると判断し、許容値ＡＹより座標値ｙｄ１が大きい場合には座標値ｙｄ１が許容値ＡＹを越えている検証値オーバーであり異常であると判断する。
【００６０】
累積座標値ＲＹが負値の場合、許容値ＡＹより座標値ｙｄ１が大きい場合には座標値ｙｄ１が正常であると判断し、許容値ＡＹより座標値ｙｄ１が小さい場合には座標値ｙｄ１が許容値ＡＹを越えている検証値アンダーであり異常であると判断する。
【００６１】
ＣＰＵ４１は、図形存在範囲情報３３ａの最大の座標値ｘｄ２，ｙｄ２についても、座標値ｘｄ１，ｙｄ１と同様に、正常／異常を判断する。
次に、ＣＰＵ４１は、検証ＯＫか否かを判断する（ステップ６４）。ＣＰＵ４１は、上記のステップ６２において座標値ｘｄ１〜ｙｄ２が全て正常である場合、検証ＯＫ、即ちセルＣＤが持つ図形存在範囲内の図形は検証範囲内であり、最大最小整数値の範囲内に存在すると判定し、次のステップ６４に移行する。
【００６２】
次に、ＣＰＵ４１は、配置セルの残りが有るか否かを判断する（ステップ６４）。ＣＰＵ４１は、レイアウトデータ３１を構成するセルのうち、トップ階層のセルＣＴ以外で図形存在範囲情報を検証してないセルが存在するか否かを判断する。ＣＰＵ４１は、未検証のセルが存在する場合にステップ５３に移行し、次の配置パスを決定する。一方、ＣＰＵ４１は、未検証のセルが存在しない場合、データ検証処理を終了する。
【００６３】
上記のステップ５７において、ＣＰＵ４１は、ステップ５６において座標値Ｈｘｂと座標値Ｈｙｂの少なくとも一方が異常であると判断した場合、検証ＮＧ、即ち配置情報２により配置されるセルＣＢの基準点は検証範囲外であり、最大最小整数値の範囲内に基準点が存在しないと判定し、ステップ６５に移行する。また、上記のステップ６３において、ＣＰＵ４１は、ステップ６２において図形存在範囲情報３３ａの座標値ｘｄ１〜ｙｄ２の少なくとも１つが異常であると判断した場合、検証ＮＧ、即ち図形存在範囲の一部が検証範囲外であり、チップ上に存在しないと判定し、ステップ６５に移行する。
【００６４】
そして、ＣＰＵ４１は、エラー出力処理を行い（ステップ６５）、エラーリスト３４を出力する。このエラーリスト３４は、図２における表示装置４４に表示される。尚、エラーリスト３４がプリンタ等の出力装置に出力されてもよい。
【００６５】
次に、簡易検証モードにおける簡易検証処理を図４に従って説明する。
ここでの検証値は、最大最小整数値のような限界値ではなく、例えば、チップサイズのような現実的な数値（設計製造の対象物に対応する数値）とする。
【００６６】
検証条件３２には、検証条件としてチップサイズが格納されている。チップサイズは、図８に示すように、基準点Ｏ１を原点（０，０）としたときのチップの端点のＸ軸及びＹ軸の座標値である。基準点Ｏ１から正側の座標値を最大値（最大ＸＹ）とし、基準点Ｏ１から負側の座標値を最小値（最小ＸＹ）とする。例えば、基準点Ｏ１をチップの中心に設定する、チップサイズは、Ｘ軸の最大値＋ｍｘ、Ｙ軸の最大値＋ｎｙ、Ｘ軸の最小値−ｍｘ、Ｙ軸の最小値−ｎｙで表される。ＣＰＵ４１は、検証条件（チップサイズの範囲値（＋ｍｘ，−ｍｘ，＋ｎｙ，−ｎｙ）を入力する。
【００６７】
ＣＰＵ４１は、詳細検証処理のステップ５１と同様に、検証条件３２から検証条件を入力する（ステップ７１）。次に、ＣＰＵ４１は、詳細検証処理のステップ５２と同様に、レイアウトデータ３１に基づき、仮階層展開テーブル３３を図２に示すメモリ４２に作成する（ステップ７２）。
【００６８】
次に、ＣＰＵ４１は、仮階層展開テーブル３３から子セルの配置情報を入力する（ステップ７３）。配置情報は、上位のセルの座標系により定義された子セルを配置する位置、即ち所有配置情報３３ｂの位置Ｘ，Ｙである。図６に示すように、ＣＰＵ４１は、図５に示すレイアウトデータ３１から、そのデータ３１に含まれるセルの所有配置情報を抽出して仮階層展開テーブル３３に格納している。ＣＰＵ４１は、仮階層展開テーブル３３に格納された所有配置情報３３ｂを読み込む。
【００６９】
次に、ＣＰＵ４１は、配置情報検査を行う（ステップ７４）。この検査において、ＣＰＵ４１は、仮階層展開テーブル３３から読み込んだ所有配置情報３３ｂの座標値Ｘ，Ｙと、検証条件のＸ軸値（−ｍｘ、＋ｍｘ），Ｙ軸値（−ｎｙ，＋ｎｙ）と、を大小比較する。そして、ＣＰＵ４１は、その比較結果に基づいて、座標値Ｘ，Ｙが正常か異常かを判定する。
【００７０】
詳しくは、ＣＰＵ４１は、検証値と所有配置情報３３ｂの座標値とを大小比較した結果と、座標値Ｘ、Ｙの符号（正負）とに基づいて、所有配置情報３３ｂの座標値Ｘ，Ｙが正常か否かを判断する。
【００７１】
即ち、座標値Ｘが正値の場合、検証値＋ｍｘより座標値Ｘが小さい場合には座標値Ｘが正常であると判定し、検証値＋ｍｘより座標値Ｘが大きい場合には座標値Ｘが異常であると判断する。一方、座標値Ｘが負値の場合、検証値−ｍｘより座標値Ｘが大きい場合に座標値Ｘが正常であると判断し、検証値−ｍｘより座標値Ｘが小さい場合には座標値Ｘが異常であると判断する。
【００７２】
同様に、座標値Ｙが正値の場合、検証値＋ｎｙより座標値Ｙが小さい場合には座標値Ｙが正常であると判断し、検証値＋ｎｙより座標値Ｙが大きい場合には座標値Ｙが異常であると判断する。一方、座標値Ｙが負値の場合、検証値−ｎｙより座標値Ｙが大きい場合に座標値Ｙが正常であると判断し、検証値−ｎｙより座標値Ｙが小さい場合には座標値Ｙが異常であると判断する。
【００７３】
次に、ＣＰＵ４１は、検証ＯＫか否かを判断する（ステップ７５）。ＣＰＵ４１は、上記のステップ７４において座標値Ｘと座標値Ｙがともに正常である場合、検証ＯＫ、即ち配置情報が、図１に示すデータ処理装置２２，２３にて扱える範囲内の値であると判断し、次のステップ７６に移行する。
【００７４】
次に、ＣＰＵ４１は、全子セルの検査を終了したか否かを判断する（ステップ７６）。下層のセル（子セル）を参照するセル（親セル）は、少なくとも１つの子セルを参照する情報として所有配置情報を持つ。従って、ＣＰＵ４１は、このステップ７６において、この親セルが参照する子セルの全てについて、各子セルを参照する所有配置情報が正常か異常かの判定を行ったか否かを判断する。ＣＰＵ４１は、全ての子セルについての判断が終了していない場合にステップ７３に移行し、全ての子セルについての判断を終了した場合にステップ７７に移行する。即ち、ＣＰＵ４１は、ステップ７３〜７５の処理を繰り返し実行し、１つのセルが参照する全ての子セルの配置情報を検査する。
【００７５】
次に、ＣＰＵ４１は、全セルの検査を終了したか否かを判断する（ステップ７７）。即ち、ＣＰＵ４１は、子セルを参照する所有配置情報を持つ全てのセルについて、そのセルが持つ所有配置情報の検査を終了したか否かを判断する。ＣＰＵ４１は、未検査のセルが存在する場合にステップ７３に移行し、未検査のセルが存在しない場合にこの簡易検証処理を終了する。
【００７６】
上記のステップ７５において、ＣＰＵ４１は、ステップ７４において座標値Ｘと座標値Ｙの少なくとも一方が異常であると判定した場合、検証ＮＧ、即ち所有配置情報の座標値Ｘ，Ｙが、図１に示すデータ処理装置２２，２３にて扱える範囲内の値ではないと判断し、ステップ７８に移行する。そして、ＣＰＵ４１は、エラー出力処理を行い（ステップ７８）、エラーリスト３４を出力する。このエラーリスト３４は、図２における表示装置４４に表示される。尚、ステップ６５と同様に、エラーリスト３４がプリンタ等の出力装置に出力されてもよい。
【００７７】
以上記述したように、本実施形態によれば、以下の効果を奏する。
（１）データ検証装置２１は、レイアウトデータ３１を処理するデータ処理系に応じて設定された検証条件３２を入力する。次に、データ検証装置２１は、レイアウトデータ３１から、セルが有する図形の範囲を示す図形存在範囲情報３３ａと、階層構造における下層のセルを参照する所有配置情報３３ｂとを抽出し、各セルに図形存在範囲情報及び所有配置情報の少なくとも一方を関連付けた仮階層展開テーブル３３を記憶装置４３に記憶する。次に、データ検証装置２１は、対象セルと、該対象セルまでの配置パスを決定し、その配置パスの情報を記憶装置４３に記憶する。次に、データ検証装置２１は、配置パスに従って、各階層のセルに対応付けられた所有配置情報３３ｂを仮階層展開テーブル３３から読み出し、配置パスにおける最上層のセルから対象セルまで配置パスに従って各階層のセルに対応付けられた所有配置情報を累積した累積座標値ＲＸ，ＲＹを算出する。次に、データ検証装置２１は、累積座標値ＲＸ，ＲＹと検証条件と所有配置情報３３ｂとに基づいて、所有配置情報３３ｂが検証条件を満たすか否かを判定するようにした。
【００７８】
従って、レイアウトデータ３１から抽出した所有配置情報３３ｂを配置パスに従って累積し、その累積座標値ＲＸ，ＲＹと検証条件とに基づいて、各セルが参照する子セルを示す所有配置情報３３ｂが検証条件を満たすか否かを判定する。これにより、個別の図形データの座標値を処理することなく、当該レイアウトデータがデータ処理系に対応するか否かを検証することができる。また、検証条件をデータ処理系に応じて設定することにより、レイアウトデータ３１を処理するデータ処理装置２２，２３に対応するか否かを検証することができる。
【００７９】
（２）データ検証装置２１は、配置パスにおいて対象セルまでの所有配置情報３３ｂの累積座標値ＲＸ，ＲＹと、対象セルの図形存在範囲情報３３ａと検証条件とに基づいて、図形存在範囲情報３３ａが検証条件を満たすか否かを判定するようにした。従って、レイアウトデータ３１から抽出した所有配置情報３３ｂを配置パスに従って累積し、その累積座標値ＲＸ，ＲＹと検証条件とに基づいて、対象セルが持つ図形存在範囲情報３３ａが検証条件を満たすか否かを判定する。これにより、個別の図形データの座標値を処理することなく、当該レイアウトデータがデータ処理系に対応するか否かを検証することができる。
【００８０】
（３）データ検証装置２１は、累積座標値ＲＸ，ＲＹと検証条件との差を許容値ＡＸ，ＡＹとして算出し、当該階層のセルの所有配置情報３３ｂと許容値ＡＸ，ＡＹとを比較してその所有配置情報３３ｂが検証条件３２を満たすか否かを判定するようにした。従って、累積座標値ＲＸ，ＲＹと所有配置情報３３ｂとを加算することによりエラー（オーバーフロー、アンダーフロー）が発生するデータ処理装置においても、その加算演算を行うことなく所有配置情報３３ｂによりエラーが発生することを確認する、つまりデータ処理装置が扱う範囲内で所有配置情報３３ｂを確実に検証することができる。
【００８１】
（４）データ検証装置２１は、対象セルまでの所有配置情報３３ｂの累積座標値ＲＸ，ＲＹと検証条件との差を許容値ＡＸ，ＡＹとして算出し、当該階層のセルの図形存在範囲情報３３ａと許容値ＡＸ，ＡＹとを比較して対象セルの図形存在範囲情報３３ａが検証条件３２を満たすか否かを判定するようにした。従って、累積座標値ＲＸ，ＲＹと図形存在範囲情報３３ａとを加算することによりエラー（オーバーフロー、アンダーフロー）が発生するデータ処理装置においても、その加算演算を行うことなく所有配置情報３３ｂによりエラーが発生することを確認する、つまりデータ処理装置が扱う範囲内で所有配置情報３３ｂを確実に検証することができる。
【００８２】
（５）データ検証装置２１は、そのときの動作モードが詳細検証モードか簡易検証モードかを判定する。そして、データ検証装置２１は、動作モードが詳細検証モードの時には配置パスの各セルが持つ所有配置情報の累積座標値ＲＸ，ＲＹと検証条件３２とから算出した許容値ＡＸ，ＡＹと所有配置情報３３ｂ、図形存在範囲情報３３ａとを比較して両情報３３ａ，３３ｂを検証する詳細検証処理を実行する。一方、データ検証装置２１は、動作モードが簡易検証モードのときには、各セルの所有配置情報３３ｂと検証条件３２とを比較して所有配置情報３３ｂが検証条件３２を満たすか否かを判定する簡易検証処理を実行する。従って、動作モードを設定して詳細モードを実行することにより、各セルの所有配置情報と図形存在範囲情報が検証条件を満足するか否かを検証することができる。また、動作モードを設定して簡易検証モードを実行することにより、レイアウトデータ３１がデータ処理装置２２，２３にて扱うことができる数値範囲にはいっていることを短時間で確認することができる。
【００８３】
尚、上記各実施の形態は、以下の態様で実施してもよい。
・上記実施の形態では、検証条件３２として最大最小整数値やチップサイズを設定したが、レイアウトデータ３１の数値（座標値）が含まれるであろう範囲が設定されればよく、最大最小整数値やチップサイズ以外を検証条件３２として設定してもよい。検証条件３２として、例えば、システムが扱える数値範囲、システム（レイアウト作成装置１１、データ処理装置２２，２３）の構成に依存しない数値範囲を設定してもよい。
【００８４】
・上記実施形態では、最大最小整数値やチップサイズを検証条件３２として設定したが、レイアウトデータ３１を処理する対象のデータ処理装置２２，２３に応じた検証条件３２を変更するようにしてもよい。
【００８５】
・上記実施の形態では、データ検証装置２１を一般的なＣＡＤ装置により構成したが、システム構成を適宜変更してもよい。例えば、図７に示すデータ検証装置８０は、レイアウトデータ３１を入力するレイアウトデータ入力部８１を有する。仮階層展開テーブル作成部８２は入力部８１にて入力されたレイアウトデータから該レイアウトデータの階層構造に応じて、セルが参照する子セルの配置情報と、セルが持つ図形存在範囲情報を抽出して主記憶８３に仮階層展開テーブル３３（図６参照）を作成する。検証条件入力部８４は、検証条件３２を入力し、検証条件作成部８５は検証条件入力部８４にて入力された検証条件を主記憶８３の内部テーブルに格納する。そして、検証部８６は、主記憶８３に記憶されたモード情報に従って、詳細検証モードの時には図３に示すステップ５３〜ステップ６５の処理を実行し、簡易検証モードの時には図４に示すステップ７３〜ステップ７８の処理を実行する。そして、検証部８６は、各モード時の検証結果を主記憶８３に格納する。検証結果出力部８７は、主記憶８３に格納された検証結果を読み出し、検証結果ファイル９１を作成する。また、検証結果出力部８７は、接続された表示部８８に検証結果（エラーを含む）を表示する。
【図面の簡単な説明】
【００８６】
【図１】半導体装置設計システムの概略説明図である。
【図２】データ検証装置の概略構成図である。
【図３】詳細検証処理のフローチャートである。
【図４】簡易検証処理のフローチャートである。
【図５】レイアウトデータの階層構造を示す説明図である。
【図６】仮階層展開テーブルの説明図である。
【図７】別のデータ検証装置の概略構成図である。
【図８】配置情報による配置位置決定の説明図である。
【符号の説明】
【００８７】
１１  レイアウト作成装置
２１  データ検証装置
２２，２３  データ処理装置
３１  レイアウトデータ
３２  検証条件
３３  仮階層展開テーブル
３３ａ  図形存在範囲情報
３３ｂ  所有配置情報
ＲＸ，ＲＹ  累積値
ＡＸ，ＡＹ  許容値
【図１】
2010009308.tif 000003
【図２】
2010009308.tif 000004
【図３】
2010009308.tif 000005
【図４】
2010009308.tif 000006
【図５】
2010009308.tif 000007
【図６】
2010009308.tif 000008
【図７】
2010009308.tif 000009
【図８】
2010009308.tif 000010