(57)【要約】【課題】個々のセルデータ自体の自動配線への適合性を評価する。【解決手段】電子装置の他の部分と配線によって接続され、前記電子装置の機能を実現するセルを定義するセルデータの検証装置である。本検証装置は、セルを電子装置の他の部分と接続する端子の定義を含むセルデータを入力する手段と、セルデータの電子装置内での配置を模擬した検証用の配置情報を入力する手段と、配置情報で配置されるセルの端子と接続されるべき相手端子の定義データを生成する手段と、セルデータを配置情報にしたがって配置するとともに、相手端子の定義データを付加したレイアウトデータを作成するレイアウト手段と、自動配線システムにセルデータとレイアウトデータとを入力することによって相手端子から配置されたセルの端子に至る配線データを発生させる、自動配線を起動する手段と、自動配線システムからの自動配線の結果を報知する報知手段とを備える。【選択図】図１
2009140002.tif 000002
【特許請求の範囲】
【請求項１】
電子装置の設計データに含まれ、電子装置の他の部分と配線によって接続され、前記電子装置の機能を実現するセルを定義するセルデータの検証装置であり、
前記セルを前記電子装置の他の部分と接続する端子の定義を含むセルデータを入力するセルデータ入力手段と、
前記セルデータの前記電子装置内での配置を模擬した検証用の配置情報を入力する手段と、
前記配置情報で配置されるセルの端子と接続されるべき相手端子の定義データを生成する手段と、
前記セルデータを前記配置情報にしたがって配置するとともに、前記相手端子の定義データを付加したレイアウトデータを作成するレイアウト手段と、
自動配線システムに前記セルデータと前記レイアウトデータとを入力することによって前記相手端子から前記配置されたセルの前記端子に至る配線データを発生させる、自動配線を起動する起動手段と、
前記自動配線システムからの自動配線の結果を報知する報知手段と、を備えるセルデータの検証装置。
【請求項２】
前記自動配線がなされたレイアウトデータを設計ルール検証システムに入力することによって、前記レイアウトデータ中のパターン間の距離またはパターン寸法の条件含む設計ルールの検証を起動する手段をさらに備え、
前記報知手段は、前記設計ルール検証システムの検証結果を報知する請求項１に記載のセルデータの検証装置。
【請求項３】
前記セルの配置状態、前記相手端子の配置状態、前記セルデータの座標格子と前記自動配線される配線データの座標格子との関係、前記配置されたセルを含む領域での配線を禁止する配線禁止領域の指定、前記自動配線される配線の太さまたは間隔を含む配線特性、配線端部に形成するビアの仕様の少なくとも１つを含む設定情報を入力する設定情報入力手段をさらに備え、
前記自動配線システムは、前記設定情報にしたがって配線データを発生する請求項１または２に記載のセルデータの検証装置。
【請求項４】
電子装置の設計データに含まれ、電子装置の他の部分と配線によって接続され、前記電子装置の機能を実現するセルを定義するセルデータの検証方法であり、コンピュータが、
前記セルを前記電子装置の他の部分と接続する端子の定義を含むセルデータを入力するステップと、
前記セルデータの前記電子装置内での配置を模擬した検証用の配置情報を入力するステップと、
前記配置情報で配置されるセルの端子と接続されるべき相手端子の定義データを生成するステップと、
前記セルデータを前記配置情報にしたがって配置するとともに、前記相手端子の定義データを付加したレイアウトデータを作成するレイアウトステップと、
自動配線システムに前記セルデータと前記レイアウトデータとを入力することによって前記相手端子から前記配置されたセルの前記端子に至る配線データを発生させる、自動配線を起動する起動ステップと、
前記自動配線システムからの自動配線の結果を報知する報知ステップと、を実行するセルデータの検証方法。
【請求項５】
電子装置の設計データに含まれ、電子装置の他の部分と配線によって接続され、前記電子装置の機能を実現するセルを定義するセルデータの検証プログラムであり、コンピュー
タに、
前記セルを前記電子装置の他の部分と接続する端子の定義を含むセルデータを入力するステップと、
前記セルデータの前記電子装置内での配置を模擬した検証用の配置情報を入力するステップと、
前記配置情報で配置されるセルの端子と接続されるべき相手端子の定義データを生成するステップと、
前記セルデータを前記配置情報にしたがって配置するとともに、前記相手端子の定義データを付加したレイアウトデータを作成するレイアウトステップと、
自動配線システムに前記セルデータと前記レイアウトデータとを入力することによって前記相手端子から前記配置されたセルの前記端子に至る配線データを発生させる、自動配線を起動する起動ステップと、
前記自動配線システムからの自動配線の結果を報知する報知ステップと、を実行させるセルデータの検証プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子装置の設計を支援する設計支援装置に関し、特に、電子装置の設計データに含まれるセルに対する自動配線に係る特性を評価検証する技術に関する。
【背景技術】
【０００２】
電子装置の開発は、例えば、スタンダードセル、あるいはマクロセル（以下、単にセルという）と呼ばれる各種の回路ブロックを組み合わせて行われる。その場合に、セルは、ライブラリの形式で提供され、設計者は、セル・ライブラリのセルを組み合わせて、所望の機能を実現する。さらに、組み合わせられたセル間は、自動配線システムによって自動配線が行われる（下記特許文献１参照）。
【０００３】
しかしながら、自動配線システムは、セルの配置状態、あるいは、自動配線処理に指定された条件等により、配置されたセル間の自動配線が完全には実行できない場合がある。また、セルの端子位置と、セル間に介在するパターン等によっては、自動配線システムのアルゴリズムにより自動配線が完全には実行できない場合がある。さらに、自動配線が成功しても、その後に実行される設計ルールチェックシステムにより、設計ルールエラーが指摘される場合もある。
【特許文献１】特開２００６−２７７６６８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、従来は、使用されるセルデータ自体が自動配線に適したものであるかどうかを評価するツールは提供されていなかった。そのため、セル自体は評価、検証されることなく、電子装置の設計データに配置され、自動配線が実行され、設計ルールチェックシステムによるチェックがなされていた。そして、設計ルールチェックシステムにより、設計ルールエラーが指摘されると、電子デバイスとして設計済みのレイアウトデータを修正しなければならなかった。場合によっては、セルの配置と自動配線をやり直さねばならなかった。
【０００５】
すなわち、従来は、セル設計規約に基づきセルの設計を行っていた。その場合のセル設計特有の制約などについての検証は、主に目視で検証されていた。一方、実際に設計される電子装置の設計データの自動検証は主に設計ルールチェックシステム（ＤＲＣともいう）によって行われていた。
【０００６】
以上のような従来の技術では、設計の後工程において設計ルール違反が多く発生する場合がある。また、自動配線システムの配線処理時間が増大するといった問題を招いている。
【０００７】
本発明は、個々のセルデータ自体の自動配線への適合性を評価し、自動配線に適したセルデータ設計のための支援技術を提供することにある。
【課題を解決するための手段】
【０００８】
本発明は前記課題を解決するために、以下の手段を採用した。すなわち、本発明は、電子装置の設計データに含まれ、電子装置の他の部分と配線によって接続され、前記電子装置の機能を実現するセルを定義するセルデータの検証装置である。本検証装置は、セルを電子装置の他の部分と接続する端子の定義を含むセルデータを入力する手段と、セルデータの電子装置内での配置を模擬した検証用の配置情報を入力する手段と、配置情報で配置
されるセルの端子と接続されるべき相手端子の定義データを生成する手段と、セルデータを配置情報にしたがって配置するとともに、相手端子の定義データを付加したレイアウトデータを作成するレイアウト手段と、自動配線システムにセルデータとレイアウトデータとを入力することによって相手端子から配置されたセルの端子に至る配線データを発生させる、自動配線を起動する手段と、自動配線システムからの自動配線の結果を報知する報知手段とを備える
本検証装置は、セルデータの前記電子装置内での配置を模擬した検証用の配置情報を入力し、配置情報で配置されるセルの端子と接続されるべき相手端子の定義データを生成し、自動配線を起動するので、個々のセルデータに起因する配線適合性、あるいは、配線上の問題点を摘出する可能性を高めることができる。
【発明の効果】
【０００９】
本発明によれば、個々のセルデータ自体の自動配線への適合性を評価し、自動配線に適したセルデータ、マクロデータの作成を支援できる。
【発明を実施するための最良の形態】
【００１０】
以下、図面を参照して本発明を実施するための最良の形態（以下、実施形態という）に係る設計支援装置について説明する。以下の実施形態の構成は例示であり、本発明は実施形態の構成に限定されない。
【００１１】
＜システムの概要＞
本設計支援装置は、自動配線システムによって配置配線される個々のセルデータ（マクロセル、マクロデータともいう）に対して検証用の簡易なネットリストを作成する。さらに、そのネットリストに検証用のフロアプランおよび制約を適用して、レイアウトデータを作成する。そして、レイアウトデータに対して自動配線システムによって自動配線を実行する。そして、自動配線結果を評価する。例えば、自動配線が完了したか否か、自動配線ツール自身による設計ルールチェック(設計ルールの検証を行なうものでＤＲＣともい
う)の違反箇所が残されたか否か等である。さらに、その自動配線されたレイアウトデー
タに設計ルールチェックシステム(自動配線ツール自身も設計ルールの違反無く配線を引
くためにチェックを行なうが設計ルールチェック自体を行なうツールではないため漏れや擬似エラーといったものが発生する)による設計ルールチェックを実行する。そして、設
計ルール違反の個数等、自動配線結果の評価情報を収集する。
【００１２】
このようにして得られた自動配線結果の評価、およびＤＲＣによる検証結果をフィードバック情報として、ユーザに提供する。以上の評価は、個々のセルデータごとに行うので、それぞれのセルが有する自動配線に対する適合性、あるいは、自動配線システムから見たセルの端子へのアクセス性を客観的に評価できる。
【００１３】
さらに、上記フロアプラン、あるいは、制約を変更して同様の評価を繰り返し行ってもよい。例えば、配線可能領域に配線禁止領域を設けて、実際にセルが電子装置の中で配置されたときと類似の難度の条件を課して自動配線を実行すればよい。実デバイス設計と類似の条件を様々に変更して課すことによって、セルデータの自動配線適合性を多様な局面から評価できる。
【００１４】
図１に、本設計支援装置における処理の概要を示す。この処理では、設計支援装置は、まず、チェック対象のセルを選択する（処理１）。チェック対象のセルは、様々な形式で設計支援装置に保存されている。例えば、ＬＥＦ（Library Exchange Format）と呼ばれ
る形式が記憶装置のファイルに保存されている。ＬＥＦはセル・ライブラリの標準的なフォーマットである。また、セルデータは、ＣＡＤベンダーが提供する固有の形式でファイル（以下、入力ファイル）に保存されているものもある。
【００１５】
本設計支援装置は、そのような複数のセルを含む入力ファイルのファイル名を与えられ、セルデータを個々に選択し、それぞれセルデータに対して以下の処理を繰り返して実行する。
【００１６】
すなわち、本設計支援装置は、入力ファイルから選択したセルデータの端子を定義した端子データを読み出す。そして、そのセルのそれぞれの端子に接続すべき外部端子を設定する。そして、セルの端子と外部端子との組を含むネットリストを作成する（処理２）。外部端子の設定は、例えば、セルの端子名が”ＰＯＲＴＡ”である場合に、”ＯＵＴ＿ＰＯＲＴＡ”のように形式的に生成すればよい。また、外部端子の位置は、本設計支援装置に付与する設定ファイル中に定義すればよい。このようにして、セルデータの自動配線検証用のネットリストが作成される。
【００１７】
次に、本設計支援装置は、セルデータを配置し、レイアウトデータを作成する（処理３）。セルデータの配置は、通常、ＤＥＦ（Design Exchange Format）と呼ばれる形式で定義される。ＤＥＦは、レイアウトデータを定義する標準的なフォーマットである。本設計支援装置では、デフォルトのフロアプラン情報を有している。本設計支援装置は、そのデフォルトのフロアプラン情報にしたがって、セルデータを配置する。デフォルトのセルの配置は、例えば、セルデータを数行数列のマトリクスに配置するものである。なお、本設計支援装置の設定ファイルにフロアプラン、およびレイアウトの制約を定義しておき、レイアウトデータを変更することもできる。例えば、配置するセルとセルとの間の間隔を変更する等である。
【００１８】
次に、本設計支援装置は、配線処理に使用する自動配線システムを起動し、レイアウトデータに対して自動配線処理を実行する（処理４）。なお、自動配線における制約は、やはり設定ファイルに設定することができる。例えば、配線禁止領域の設定、配線間隔に関する条件、配線される線幅に関する条件等である。本設計支援装置は、自動配線システムによる自動配線の結果を保存する。例えば、ネットリストに対応する自動配線が完了した、あるいは、完了しなかった（その場合のＤＲＣ違反箇所の数）等の情報である。
【００１９】
次に、本設計支援装置は、ＤＲＣを起動し、自動配線されたレイアウトデータに設計ルール違反がないか否かを厳密に検証する（処理５）。
【００２０】
次に、本設計支援装置は、自動配線システムによる自動配線結果およびＤＲＣによる設計ルールチェック結果を収集する（処理６）。さらに、本設計支援装置は、フロアプランおよび制約を変更して、処理３に制御を戻す。この場合に、変更するフロアプランおよび制約のバリエーションは、例えば、設定ファイルに定義しておけばよい。
【００２１】
そして、フロアプランおよび制約のすべてのバリエーションについてチェック結果を収集すると、本設計支援装置は、そのセルについてのチェック結果のレポートを出力する（処理７）。さらに、設計支援装置は、入力ファイル中に、未処理のセルが残っているかどうかを判定する。未処理のセルが残っている場合には、制御を処理１に戻し、未処理のセル中からセルを１つ選択し、処理を繰り返す。一方、未処理のセルが残っていない場合には、本設計支援装置は、処理を終了する。なお、チェック結果のレポートは、すべてのセルについての処理が終了した後に出力してもよい。
【００２２】
＜処理例＞
以下、図２から図１７を参照して本設計支援装置の処理例にしたがい、本設計支援装置の機能を説明する。図２に、本設計支援装置による検証用レイアウトに対する自動配線のイメージを例示する。
【００２３】
図２では、セルが５×５のマトリクス状に配置されている。このうち、中央部（（３，３）の位置）のセルが検証対象のセルである。また、その周囲のセルは、自動配線システムに対して、配線の難易度を上げるために、あるいは、実際の電子装置での配線条件を模擬するために配置されたダミーのセルである(デフォルトでは検証対象と同じセルが配置
されるが、任意のダミーセルの指定は可能である)
また、この例では、５×５のマトリクスの情報に、外部端子が示されている。本設計支援装置は、セルの端子と、外部端子との間で、自動配線システムによる自動配線処理を実行させる。このうち、セルの端子の位置、形状等の物理情報は、セル・ライブラリから読み出す。外部端子の情報は、設定ファイルの指定にしたがう。例えば、設定ファイルに、「上側」としてされた場合に、本設計支援装置は、設定ファイル、あるいは、レイアウトデータで指定されたブロックサイズに相当するブロック境界線上の所定位置（その場合の横方向の位置は、例えばデフォルト値またはユーザ指定値）に、外部端子を設定する。ここで、ブロックとは、セルを組み合わせて構成した上位の機能単位をいう。ブロックが複数回層に組み合わせられて、電子装置に相当するチップが構成されることになる。なお、簡易な構成では、セルが組み合わせられてチップが構成される。また、図２で、「自動配線処理された配線」とあるのは、自動配線の結果例である。
【００２４】
図３に、評価対象セルの部分を拡大したイメージ図を示す。この例では、中央部にビアが構成されたセルの端子が明示されている。また、そのセルの端子に配線が接続されている。図３では、例えば、セルの端子は、メタル第１層、あるいは、メタル第２層等の下位の層であり、配線は、３層目以上の上位の配線である。ただし、制約の指定によって、セルの端子と同一の層にて自動配線させてもよい。以下、図１の処理フローにしたがって説明する。
【００２５】
（１）図１のフローはセルごとに実行する。すなわち、電子装置の設計データに組み込まれる全セルを含むネットリストを使用して、配置・配線を行うのではなく、個々のセルを取り出して、セルごとに検証を実行する。
【００２６】
（２）本設計支援装置にて、検証用のネットリストを作成する。すなわち、セル・ライブラリを参照し、個々に取り出したセルに対して、そのセルの端子を外部端子に接続する検証用のネットリストを作成する。セル・ライブラリのフォーマットは、業界標準で使用されているＬＥＦを使用する。ただし、本設計支援装置において、検証対象のセルを読み出すセル・ライブラリのフォーマット自体に限定があるわけではなく、他のフォーマット、例えば、ＣＡＤベンダーが独自に提供するフォーマットをサポートしてもよい。
【００２７】
図４に、検証用ネットリストの作成の概要を示す。図４で、ＣＥＬＬ１とあるのは、セル・ライブラリから読み出されたセルのデータ例である。セル・ライブライリには、セルの物理寸法、端子の名称、端子の位置（通常、セル内の座標系である）、端子の形状等が定義されている。
【００２８】
例えば、セル  ＣＥＬＬ１  については入出力端子（Ａ，  Ｂ，  Ｃ，  Ｄ）の情報が記載されているので、その端子をブロックの  入出力端子（ＩＮ＿Ａ，  ＩＮ＿Ｂ，  ＯＵＴ＿Ｃ，  ＯＵＴ＿Ｄ）につなげるネットリストは簡単に作成できる。
【００２９】
例えば、設計支援装置は、セルのデータ中で、入出力端子（Ａ，  Ｂ，  Ｃ，  Ｄ）を認識すると、形式的に端子名の列（ＩＮ＿Ａ，  ＩＮ＿Ｂ，  ＯＵＴ＿Ｃ，  ＯＵＴ＿Ｄ）を生成すればよい。また、セルの入出力端子Ａとブロックの入出力端子ＩＮ＿Ａを対にして、ネットリストを構成すればよい。他の端子についても同様である。このような手順により、セルの入力端子Ａと外部の入力端子ＩＮ＿Ａとを含むＮＥＴＡ、セルの入力端子
Ｂと外部の入力端子ＩＮ＿Ｂとを含むＮＥＴＢ、セルの出力端子Ｃと外部の出力端子ＩＮ＿Ｃとを含むＮＥＴＣ、セルの出力端子Ｄと外部の出力端子ＩＮ＿Ｄとを含むＮＥＴＤ等を含むネットリストが生成される。
【００３０】
（３）配置まで行われたレイアウトデータを作成する。
次に、デフォルトのフロアプラン情報にしたがって、セルの配置を定義する。セルが配置されたデータをレイアウトデータという。なお、セルのパターン形状そのものは、セルライブライブに存在する。そこで、本実施形態では、レイアウトデータとは、セルの配置情報を含むＤＥＦファイルそのものをいう。また、設定ファイルの指定にしたがってフロアプランが変更されたＤＥＦを生成できる。
【００３１】
図５は、３×３のマトリクス状にセルを配置したレイアウトデータの例である。中央のセルが検証対象のセルであり、その周囲は、ダミーのセルである。また、図５の例では、セルのマトリクスの上方に外部端子が指定されている。
【００３２】
図５では、セルの形状は、省略されているが、セルデータは、通常、多角形で指定された図形形状（およびセル内の座標系での位置情報）と、層の識別情報（レイヤ）を含む。外部端子も同様、ブロック内での位置情報に基づく図形形状と、層の識別情報とを含む。
【００３３】
図６は、セルの右側に、横一列に外部端子が指定されて例である。図５、図６のようなセルを検証用に配置した情報と外部端子の位置および形状を示す情報は、レイアウトデータとして、自動配線システムに入力される。また、セル端子の位置および形状を示す情報は、セル・ライブラリから自動配線システムに入力される。
【００３４】
（４）本設計支援装置は、設定ファイルの指定にしたがい、フロアプランおよび制約を変更してレイアウトデータを作成し、自動配線システムに入力する。
【００３５】
（４−１）フロアプランの変更；
本設計支援装置は、例えば、以下のような指定にしたがって、フロアプランを変更し、セルおよび外部端子のレイアウトも変更する。
【００３６】
（ａ）外部端子の位置を変更する。外部端子の位置は、例えば、上側、左側、下側、右側のようにしてできる。このような変更により、ブロック外の４方向から、検証対象のセルの端子へのアクセスの可否、適性等を検証できる。なお、その場合に、図５と図６に示したように、外部端子の並びの方向をそのまま維持してもよい。また、外部端子の並びの方向を９０度、１８０度、２７０度のように変更してもよい。すなわち、設定ファイルには、オリエンテーションを指定できるので、本設計支援装置は、その指定にしたがって、外部端子を設定し、自動配線システムに引き渡す。
【００３７】
（ｂ）セルの向きの変更
セルの向き、すなわち、ブロック座標に対する回転角、すなわち、セルの回転を設定ファイルに指定できる。本設計支援装置は、その指定にしたがって、セルをレイアウトデータに設定し、自動配線システムに引き渡す。本設計支援装置は、このようなバリエーションよって、処理対象のセルデータに対する自動配線システム上の問題点が検出する可能性を高めている。
【００３８】
（ｃ）外部端子の層（レイヤともいう）を変更する。外部端子の層に依存して、自動配線システムによる配線の仕方が異なるからである。例えば、セルの端子と外部端子が同層の場合には、自動配線システムは、同層のパターンを回避した配線を形成する必要がある。一方、外部端子がセルの端子の上層に定義されている場合には、自動配線システムは、
ビアにより上層の配線と下層の端子とを接続する(異なった層間のビアが重なるスタック
・ビアが用いられる割合が増える)。これにより、ビアを含めた自動配線適合性の評価、
検証がなされる。
【００３９】
（ｄ）本設計支援装置は、設定ファイルで指定された層に、禁止領域を設定する。図７に配線禁止領域の例を示す。この例では、ＣＥＬＬ１は、メタル１あるいはメタル２に端子が設けられている。そして、禁止領域として、メタル３という層にて、斜線部の領域が設定されている。これによって、自動配線システムは、メタル１またはメタル２によって自動配線を実行する制約が課せられる。したがって、配線の難易度を上げることができる。
【００４０】
図８に、他の配線禁止領域の例を示す。この例では、検証対象のセルの端子と同層に、ラインアンドスペースの形状で、配線禁止領域が設定されている。ラインアンドスペースのラインは、例えば、自動配線システムが配線を設定する単位であるグリッドを単位にして、１グリッド間隔、２グリッド間隔等のパラメータで指定される。本設計支援装置は、設定ファイルの禁止領域の指定にしたがって、配線禁止領域を生成し、自動配線システムに引き渡す。配線禁止領域は、レイアウトデータ中の記述および領域を示すパラメータで指定される(ＤＥＦでは領域指定用のシンタックスが用意されている)。
【００４１】
なお、配線禁止領域を設定する代わりに、電源等の固定配線を生成することで、配線の難易度を高め、同様の効果を得ることができる。したがって、配線禁止領域を設定する代わりに、固定配線領域を生成してもよい。
【００４２】
（ｅ）本設計支援装置は、自動配線システムが使用する配線トラック（配線グリッドともいう）と、セルの端子および外部端子のいずれか、または、その双方との関係を変更する。図９に、オングリッドの設定とオフグリッドの設定を例示する。オングリッドの場合、配線トラックが、セルの端子、あるいは、セル内のパターンの座標と同一の座標格子上に設定される。座標格子は、座標を定義する基準のメッシュ（升目）である。オフグリッドの場合、配線トラックは、セルの端子、あるいは、セル内のパターンの座標格子からずれた位置に設定される。
【００４３】
例えば、配線のグリッド（一般にトラックと呼ぶ）が、セルの端子、あるいは、外部端子からオフグリッドになるように、レイアウトデータに指定して自動配線システムに引き渡し、自動配線を実行すればよい。
【００４４】
例えば、セルのグリッドが設定されるピッチΔＰとする。一方、配線されるトラックの基準点（トラック座標系の原点）を、セルが配置される座標系の原点から、配線に直角な方向の座標で、（Ｎ＋１／２）×ΔＰの位置に設定する。ここで、Ｎは、適当な自然数である。同様に、外部端子の位置をセルのグリッドからオフグリッドになるように設定してもよい。
【００４５】
自動配線システムは、一般的にセルの端子および外部端子とをオングリッドの経路を通って配線を行なう。また、現在利用可能な自動配線システムでは、オフグリッドであってもＤＲＣ違反なく確実に配線を実行するものが多い。しかしながら、オフグリッドによって、自動配線の難易度を高めることができる。なお、上記処理とは逆に、配線のトラックに対して、セルがオフグリッドになるようにセルを配置してもよい。
（４−２）制約の変更；
本設計支援装置は、設定ファイルの指定にしたがって、自動配線システムに引き渡す制約を以下のように変更する。
【００４６】
（ａ）本設計支援装置では、複数ビアによる配線を指定できる。現在、製造時の歩留まり向上や信頼性確保のため、複数ビアを指定した配線が用いられる。そのような複数ビアによる自動配線で難易度を高めることができる。また、このような指定により複数ビアによる配線での適合性を評価することができる。
【００４７】
図１０は、複数ビアによる自動配線の例である。複数ビアによる配線を指定すると、自動配線システムに対する指定に応じて複数ビアが使用される(自動配線ツールによって事
前にＬＥＦ等に定義されたビアから選択して使用するものと自動配線ツール自身が設計ルールに従い生成ものとがある)。
【００４８】
すると、本来、設計ルールに適合していた自動配線の結果が、設計ルール違反となる場合がある。例えば、並行して形成された配線間の間隔エラーである。この例では、２つの配線が所定の間隔未満で所定距離だけ並行して延伸している場合に、設計ルール違反となる例である(配線幅毎に並行配線距離に応じた間隔ルール用いられている場合、配線幅が
太くなると大きな間隔を空ける必要がある場合が多い)。このように、複数ビアの指定に
よって自動配線の難易度を高めることができる。
【００４９】
（ｂ）本設計支援装置は、設定ファイルの指定にしたがって、レイアウトデータ中に自動配線システムにスペーシング配線を指示する。スペーシング配線によって、自動配線システムの処理の難易度を変更することができる。スペーシング配線とは、配線の最小間隔であるトラックについて、１トラックごと、２トラックごと、あるいはＮトラックごとのように、間隔を空けて自動配線する仕様である(ＬＥＦのＮＯＮＤＥＦＡＵＬＴＲＵＬＥ
が使用可能であればそのＮＯＮＤＥＦＡＵＬＴＲＵＬＥ名を指定すれば良い)。スペーシ
ングの指定によっては、配線できない場合も生ずるからである。
【００５０】
（ｃ）本設計支援装置は、設定ファイルの指定にしたがって自動配線システムに太幅配線を指示することができ、配線難易度を高める。太幅配線によって、配線と配線との間隔、あるいは、配線と同層のセル内のパターンとの間隔が、設計ルール違反となる場合があるからである。この場合の指示は、太幅配線の幅寸法、または、幅の増分値等である(Ｌ
ＥＦに定義されたＮＯＮＤＥＦＡＵＬＴＲＵＬＥが使用可能であればＮＯＮＤＥＦＡＵＬＲＵＬＥ名を指定しても良い)。
【００５１】
＜データ例＞
図１１に、設定ファイルのデータ例を示す。この例で、”ＰＩＮ  ＬＯＣＡＴＩＯＮ”は、外部端子のブロック境界位置の指定である。パラメータとして、Ｔ（ＴＯＰ）、Ｂ（ＢＯＴＴＯＭ）、Ｌ（ＬＥＦＴ）、およびＲ（ＲＩＧＨＴ）の指定がされている。したがって、この指定によって本設計支援装置は、ブロックの上下左右の境界位置に、それぞれ外部端子を設定する。すなわち、４通りのバリエーションによって、配線を実行する。
【００５２】
また、”ＣＥＬＬ  ＲＯＴＡＴＩＯＮ”は、セルデータを配置するときの回転の指定である。この例では、Ｎ（ＮＯＲＴＨ）およびＦＮ（ＦＬＩＰ  ＮＯＲＴＨ）の指定がされている。したがって、この指定によって本設計支援装置は、セルデータを回転なしと、１８０度回転の２つの条件で配置する。すなわち、２通りのバリエーションによって、配線を実行する。なお、９０度、２７０度等の角度を指定してもよい。
【００５３】
”ＢＬＯＣＫＡＧＥ  ＰＩＴＣＨ”は、ラインアンドスペースでの禁止領域の指定である。この例では、ピッチとして１が指定されているので、１グリッドごとに禁止領域のラインが設定される。なお、配線禁止領域は、”ＢＬＯＣＫＡＧＥ  ＡＲＥＡ”のような記述で、矩形領域を指定することもできる。
【００５４】
”ＯＦＦ−ＧＲＩＤ”は、オフグリッドでの配線を実行するか否かである。この例では、ＦＡＬＳＥが指定されているので、オフグリッドの処理はなされない。
【００５５】
”ＭＵＬＴＩ−ＶＩＡ”は、複数ビアの指定である。この例では、”ＴＲＵＥ”であるので、複数ビアによる配線が実行されることになる。
【００５６】
図１２および図１３に、ＬＥＦによるセル・ライブラリのデータ例を示す。図１２と、図１３とは、同一のセル・ライブラリの異なる部分を表示したものである。図１２は、ヘッダ部分とそれに続く、層（レイヤ）情報の定義部分を示している。層の定義では、例えば、１層目（ＭＥＴ１）として、配線層であること、配線ピッチ、配線の幅、配線の間隔、配線の主配線方向が水平方向であること等が定義されている。
【００５７】
図１３は、図１２に続くセル・ライブラリの定義である。この例では、ＮＡＮＤ４という名称のセルが、”ＭＡＣＲＯ”という記述(statementともいう)によって定義されてい
る。また、セル”ＮＡＮＤ４”は、端子Ａを有している（端子Ａ以外は、明示されていないが、当然複数定義可能である）。端子Ａは、”ＰＩＮ”という記述によって端子であることが指定されている。また、端子Ａは、”ＰＯＲＴ”という記述により、層１（ＭＥＴ１）に、矩形形状のポートを有することが定義されている。本設計支援装置は、このようなセル・ライブラリを指定され、それぞれのセルの定義情報を読み出し、セルの端子と、外部端子との間で、ネットリストを作成し、さらに、次に述べるＤＥＦの定義を基に、配置・配線処理を起動する。
【００５８】
図１４および図１５に、ＤＥＦの定義例を示す。図１４では、ＤＥＦのヘッダ以下に、ブロックサイズ（ＤＩＥＡＲＥＡ）が定義され、さらに、セルを配列するグリッドである列（ＲＯＷ）と、配線を定義するグリッドである配線トラックが定義されている。なお、このＲＯＷとトラックをずらすことでオフグリッドになる。
【００５９】
さらに、”ＣＯＭＰＯＮＥＮＴ２０”という名称で、部品が定義されている。この部品には、セル”ＮＡＮＤ４”が”ＰＬＡＣＥ”という記述で、ブロック内の位置”１０２００  １３８００”に配置されている。また、周囲のダミーセルが、”ＦＩＸＥＤ”という記述で配置されている。なお、”ＰＬＡＣＥ”および”ＦＩＸＥＤ”は、ＤＥＦの標準記述である。
【００６０】
図１５は、図１４に続くＤＥＦの部分である。ここでは、電源の定義情報、および、ネットリストが定義されている。すなわち、外部端子”ＯＵＴ＿ＹＢ”と、セルの端子”ＹＢ”との間で配線が設定されている。また、外部端子”ＩＮ＿Ａ”とセルの端子”Ａ”の間で、配線が設定されている（以下、省略）。このような定義にしたがって、セルのブロック内への配置はＬＥＦファイルに指定されたセルの寸法とフロアプラン定義を基に、セルのマトリクスを生成し、ＤＥＦに設定すればいい。
【００６１】
図１６は、レポートの例１である。この例で、”ＣＨＥＣＫ  ＮＯＲＭＡＬ”は、特別な制約が付加されず、本設計支援装置に設定されたデフォルトの条件で処理が実行されたことを示している。また、本設計支援装置は、エラー発生数の多いセルを優先して表示する。
【００６２】
この例では、例えば、ＣＥＬＬＡ、ＣＥＬＬＣ、ＣＥＬＬＢの順で、設計ルール違反の数が多く検出されたことを示している。”ＮＧ  ＳＣＯＲＥ”で示される値が、トータルの設計ルール違反の数に該当する。また、このレポートでは、チェック条件ごとの設計ルール違反も示されている。例えば、ＤＲＣ  ＥＲＲ（ｓｉｇｎ−ｏｆｆ）は、自動配線システムとは異なる設計ルールチェック専用ツールでのエラーを示している。また、ＤＲＣ
ＥＲＲ（ｒｏｕｔｅｒ）は、自動配線システムに組み込まれている設計ルールチェックシステムでのエラーを示している。さらに、ＮＧ  ＳＣＯＲＥは、ＤＲＣ  ＥＲＲ（ｓｉｇｎ−ｏｆｆ）の重みを３、ＤＲＣ  ＥＲＲ（ｒｏｕｔｅｒ）の重みを２として、”ＮＧ
ＳＣＯＲＥ”を算出している。なお、他のチェック条件で、設計ルール違反を分類してもよい。また、図１６で、ＭＵＬＴＩＣＵＴ  ＲＡＴＩＯは、自動配線において、複数ビアを形成できた割合を示す。
【００６３】
図１７は、制約として複数ビア（ＭＵＬＴＩＣＵＴ）が付加された場合のレポート例である。項目は、図１６の場合と同様である。ただし、この場合のＮＧ  ＳＣＯＲＥには、（１０−ＭＵＬＴＩＣＵＴ  ＲＡＴＩＯの値＊１０）＊４が反映される。すなわち、マルチカット未生成の割合を１０段階で評価し、かつ、重み４が設定されている。そして、サインオフでのＤＲＣの設計ルール違反件数＊重み（３）および自動配線システムでのＤＲＣの設計ルール違反件数＊重み（１）と加算され、ＮＧ  ＳＣＯＲＥが算出される。
【００６４】
＜システム構成＞
図１８に、本設計支援装置のハードウェア構成を示す。同図に示すように、本設計支援装置は、プログラムを実行するＣＰＵ１１と、ＣＰＵ１１で実行されるプログラム、あるいは、ＣＰＵ１１が処理するデータを記憶するメモリ１２と、インターフェース１３を介してＣＰＵ１１に接続されるキーボード１４Ａ、ポインティングデバイス１４Ｂとを有する。ポインティングデバイスは、マウス、トラックボール、タッチパネル、静電センサを有するフラットデバイス等である。
【００６５】
また、本設計支援装置は、インターフェース１５を通じて接続されたディスプレイ１６を有する。ディスプレイ１６は、キーボード１４Ａから入力された情報、あるいは、ＣＰＵ１１が処理したデータを表示する。ディスプレイ１６は、例えば、液晶ディスプレイ、ＥＬ（エレクトロルミネッセンス）パネルである。
【００６６】
また、本設計支援装置は、インターフェース１７を介して接続された通信部１８を有している。通信部１８は、ＬＡＮ（ローカルエリアネットワーク）ボード等である。
【００６７】
また、本設計支援装置は、インターフェース１９を介して接続された外部記憶装置２０を有する。外部記憶装置２０は、例えば、ハードディスクドライブである。さらに、設計支援装置は、インターフェース２１を介して接続された着脱可能記憶媒体アクセス装置２２を有する。着脱可能な記憶媒体は、例えば、ＣＤ（Compact disc）、ＤＶＤ（Digital Versatile Disk）、フラッシュメモリカード等である。
【００６８】
図１９に、本設計支援装置の機能ブロック図を示す。これらの各機能は、例えば、ＣＰＵ１１で実行されるプログラムのサブプログラムとして実現される。本設計支援装置は、外部記憶装置２０に、データファイルとして、セル・ライブラリ５１、デフォルトレイアウトファイル５２、設定ファイル５３を有する。
【００６９】
セル・ライブラリ５１は、例えば、標準のＬＥＦの規定にしたがって記述され、個々のセルの物理情報を有する。物理情報とは、セルのパターンの定義、端子の定義等である。セルパターンおよび端子は、セル内の座標系で、矩形等の図形で定義される。また、端子には、属性、例えば、端子の名称、入力端子、出力端子の種別等が付される。
【００７０】
デフォルトレイアウトファイル５２は、例えば、例えば、標準のＤＥＦの規定にしたがって記述され、セルを配置する配置情報のデフォルト値を有する。例えば、セルを配置するデフォルトのグリッド、配線を定義するデフォルトのトラック、セルの配置位置等である。
【００７１】
設定ファイル５３は、デフォルトレイアウトファイルに変更を加えるバリエーションのパラメータを含む。パラメータの例は、図１１に示した。
【００７２】
さらに、本設計支援装置は、外部記憶装置２０に格納され、メモリ１２に実行可能に展開されて、ＣＰＵ１１によって実行されるプログラムを有する。ＣＰＵ１１がそのようなプログラムを実行することで、セルデータ入力手段６１、デフォルトレイアウト入力手段６２、設定情報入力手段６３、外部端子データ生成手段６８、配置情報生成手段６４、自動配線実行手段６５、ＤＲＣ実行手段６６、および報知手段６７を実現する。これらの各手段は、ＣＰＵ１１上で連携して動作し、設計支援装置の制御部を構成する。なお、制御部を構成する各手段は、図１９に対応したサブプログラムで構成することもできる。また、図１９に示した各手段を一体として、１つのプログラムにすることもできる。また、例えば、図１９に示した任意の２以上の手段を組み合わせたプログラムとすることもできる。
【００７３】
セルデータ入力手段６１は、セル・ライブラリ５１のファイル名を指定され、セル・ライブラリ５１から個々のセルデータを読み出す。デフォルトレイアウト入力手段６２は、設計支援装置に規定されたデフォルトレイアウトファイル５２からレイアウト情報の初期値、あるいは、標準値を読み出す。設定情報入力手段６３は、設計支援装置に規定された設定ファイル５３から、図１１に示したような各種のバリエーションを規定するパラメータを読み出す。
【００７４】
外部端子データ生成手段６８（相手端子の定義データを生成する手段に相当）は、セル・ライブラリ５１に定義されたセルの端子情報から、それぞれのセルの端子と接続すべき外部端子の情報を生成する。外部端子の情報は、例えば、端子名、端子のパターン情報および端子の位置情報を含む。外部端子の端子名は、セルの端子Ａ名に対して、出力端子であれば文字列ＯＵＴ＿を追加し、ＯＵＴ＿Ａのように生成すればよい。このような外部端子名の生成後、外部端子データ生成手段６８は、端子Ａと、外部端子ＯＵＴ＿Ａとを接続するネットリストを作成する。
【００７５】
また、セルがレイアウトされたブロックのブロックサイズで指定されたブロック境界線上に、外部端子を配置する。外部端子の位置は、ブロック境界線上で、かつ、セルの端子と対向する位置（例えば、Ｘ軸方向、またはＹ軸方向に平行移動した位置）で、ブロックの中心のＸまたはＹ座標のトラック位置を中心に並べればよい。中心からずらす場合にはオフセット値での制御を行なえばよく、スペーシング配線や太幅配線の制約に連動して端子間の間隔を制御すればよい。外部端子の形状はその層の配線幅からなる正方形とすればよい。
【００７６】
配置情報生成手段６４（レイアウト手段に相当）は、セル・ライブラリから読み出された個々のセルについて、デフォルトレイアウトファイル５２の指定、および設定ファイル５３の指定にしたがって、セルを配置し、レイアウトファイル５４を生成する。最も欄純な設定ファイルの設定では、デフォルトレイアウトファイル５２の指定にしたがって、セル・ライブラリのセルが個々にレイアウトされ、レイアウトファイル（配線前）５４が生成される。
【００７７】
自動配線実行手段６５は、自動配線システム１００に、レイアウトファイル（配線前）５４とセル・ライブラリ５１を指定して、自動配線の実行を起動する。自動配線システム１００は、その指定にしたがって、自動配線を実行し、セルの端子と、レイアウトファイル中の外部端子とが配線されたレイアウトファイル（配線後）５５を生成する。さらに、自動配線システム１００は、自動配線時実行後のステータスを自動配線実行手段６５に返
す。このステータスは、例えば、正常終了、異常終了、ＤＲＣエラー数、未配線端子数等を含む。なお、通常自動配線ツールはＤＲＣエラー数をレポートするが、そうでないツールの場合には自動配線システム１００に内蔵された設計ルールチェック機能を実行するように制御しておく。
【００７８】
ＤＲＣ実行手段６６（起動手段に相当）は、レイアウトファイル（配線後）５５を指定し、設計ルールチェックシステム１０１に、設計ルールチェックを起動する。設計ルールチェックシステム１０１は、レイアウトファイル（配線後）５５のパターンに設計ルールチェックを実行し、ルール違反を摘出する。設計ルールチェックシステム１０１は、設計ルール違反の摘出結果を含む、ステータスをＤＲＣ実行手段に返す。
【００７９】
報知手段は、自動配線実行手段６５、および、ＤＲＣ実行手段６６から報告された処理結果をレポートとして、ディスプレイ１６に出力する。ただし、レポートは、外部記憶装置２０に保存するようにしてもよい。
【００８０】
以上のような制御部、あるいは、セルデータ入力手段６１、デフォルトレイアウト入力手段６２、設定情報入力手段６３、外部端子データ生成手段６８、配置情報生成手段６４、自動配線実行手段６５、ＤＲＣ実行手段６６、および報知手段６７は、例えば、それぞれユニット（Unit）という用語で記述してもよい。ここでユニットとは、モジュールあるいはテーブル等を含み、以下のソフトウェアの構成要素（Component）、または、ハード
ウェアの構成要素（Component）によって実現される。ただし、ユニットが、以下の例に
限定されるわけではない。
【００８１】
すなわち、ユニットは、ハードウェア回路、例えば、フィールド・プログラマブル・ゲートウェイ（ＦＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）、ゲートアレイ、論理ゲートの組み合わせ、その他の回路網等であって、上記それぞれの構成要素の機能を実現するものを含む。
【００８２】
ソフトウェアのユニット、例えば、ソフトウェアモジュールは、番地によって割付可能な記憶装置に搭載するのが有効である。この場合のソフトウェアモジュールは、例えば、ソフトウェア部品、手続き型言語による部品、オブジェクト指向ソフトウェア部品、クラス部品、タスクとして管理される部品、プロセスとして管理される部品、関数、属性、手続き（プロシジャともいう）、サブルーチン（ソフトウェアルーチンともいう）、プログラムコードの断片・部分、ドライバ、ファームウェア、マイクロコード、データ、データベース、データ構造、テーブル、配列、変数、パラメータ等の構成要素を含む。これらの各構成要素は、それぞれの機能を有するとともに、複数組み合わせられて、さらなる機能を達成する構成要素を実現する。逆に、それぞれのユニットが実現する機能または要素をさらに細分化し、各ユニットを複数の下位ユニットの組み合わせで実現してもよい。さらに、これらの構成要素は、１または複数のＣＰＵ、あるいはＤＳＰ等の処理装置上で実現される。
【００８３】
ソフトウェアモジュールは、Ｃ言語、Ｃ＋＋、Java（登録商標）、Visual Basic（登録商標）または他の多くの言語で記述できる。これらのソフトウェアモジュールは、１または複数の機械（あるいはコンピュータ）読み取り可能な記憶装置、例えば、ダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ）、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）、消去およびプログラム可能なリード・オンリー・メモリ（ＥＥＰＲＯＭｓ）、フラッシュメモリ、およびこれらいずれかのメモリを含むメモリカード；磁気ディスク、例えば、ハードディスク、フレキシブルディスク（フロッピー（登録商標）等）、および他の着脱可能なディスク媒体；他の磁気媒体、例えば、テープ；光媒体、例えば、コンパクトディスク（ＣＤｓ）、ＤＶＤ（Digital Vide Disk,Digital Versatile Disk）
に格納できる。ただし、ソフトウェアのユニットあるいは、ソフトウェアモジュール等に含まれる命令は、有線ネットワークカードと有線ネットワーク、あるいは無線カードと無線ネットワークを通じてコンピュータ等の機械、あるいは装置に転送あるいはローディングし、実行できる。そして、そのような命令の実行によって、それらの命令に対応する機能のソフトウェアのユニット、あるいは、ソフトウェアモジュールが実現される。そのような転送処理、あるいは、ローディング処理において、データ信号は例えば搬送波に組み込まれ（embodied as carrier waves）、有線あるいは無線ネットワークを転送される。
ただし、データ信号が搬送波によらず、いわゆるベースバンド信号のまま転送される場合もある。ここで、有線あるいは無線ネットワークは、例えば、電話回線、ネットワーク回線、ケーブル（光ケーブル、金属ケーブルを含む）無線リンク、携帯電話アクセス回線、ＰＨＳ（Personal Handyphone System）網、無線ＬＡＮ（Local Area Network）、Bluetooth等、あるいはＤＳＲＣ（Dedicated Short Range Communication）等の車両搭載型無線通信（車両対路上器、車両対車両を含む）によるネットワークである。そして、このデータ信号は、命令、コードおよびデータを含む情報をネットワーク上のノードあるいは要素に伝達する。このような搬送波は、電気的、磁気的、光として、音響として、電磁的、あるいは、その他の種類の信号の形式を採る。
【００８４】
さらに、上記いずれかの機能は、コンピュータその他の機械、装置等（以下、コンピュータ等）が読み取り可能な記録媒体にコード化することで実現できる。そして、コンピュータ等に、この記録媒体のプログラムを読み込ませて実行させることにより、その機能を提供させることができる。
【００８５】
ここで、コンピュータ等が読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、物理的または化学的作用によって蓄積し、コンピュータ等から読み取ることができる記録媒体をいう。機械的作用の例として、エンボスカードへの凹凸形成、紙媒体へのパンチを例示できる。電気的、機械的、あるいは物理的作用の例として、ヒューズによって構成されるＲＯＭ上の素子へのデータ書き込み、紙媒体上の潜像へのトナーの現像処理を例示できる。紙媒体は、例えば、光学的に読み取りすればよい。物理的あるいは化学的作用の例として、基板上での薄膜形成、あるいは凹凸形成を例示できる。凹凸は、例えば、光学読み取りすればよい。化学的作用の例としては、基板上での酸化還元反応によるもの、半導体基板上での酸化膜形成、窒化膜形成、フォトレジストの現像等を例示できる。このような記録媒体のうちコンピュータ等から取り外し可能なものとしては、例えばフレキシブルディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ／Ｗ、ＤＶＤ、磁気テープ、メモリカード等、およびこれらのいずれかを内蔵した記憶装置がある。記憶装置には、ＤＲＡＭあるいはＳＲＡＭがさらに内蔵されたものもある。
【００８６】
また、コンピュータ等に固定された記録媒体としてハードディスク、ＤＲＡＭ、ＳＲＡＭ、ＲＯＭ（リード・オンリー・メモリ）、ＥＥＰＲＯＭ、フラッシュメモリ等がある。
【００８７】
さらに、コンピュータ等が読み取り可能な記録媒体には、ネットワークを通じて結合されるシステムがある。そのようなシステムに格納された命令、コードおよびデータを含む情報は、分散処理環境で実行される。
【００８８】
＜処理フローの詳細＞
図２０に、本設計支援装置によるセルデータのチェック処理をフローチャートによって例示する。この処理では、設計支援装置（ＣＰＵ１１）は、処理対象のＬＥＦファイル、デフォルトＤＥＦファイル、および設定ファイルを指定されて、処理を起動する。ＬＥＦファイルは、処理対象のセル・ライブラリである。また、デフォルトＤＥＦファイルには、セルのデフォルトのレイアウトが指定されている。さらに、設定ファイルには、フロアプランおよび自動配線の制約等のバリエーションが規定されている。
【００８９】
そして、情報処理装置は、指定されたＬＥＦのファイルから、チェック対象のセルを選択する（Ｓ１）。次に、本設計支援装置は、選択したセルのセルデータから、端子を定義した端子データを読み出す。そして、そのセルのそれぞれの端子に接続すべき外部端子を設定する。そして、セルの端子と外部端子との組を含むネットリストを作成する（Ｓ２）。
【００９０】
次に、本設計支援装置は、指定されたデフォルトＤＥＦのファイルの指定および設定ファイルの指定にしたがって、セルデータを配置する。レイアウトデータを作成する（Ｓ３）。ここで、レイアウトデータは、自動配線システムに引き渡すＤＥＦファイルである。
【００９１】
次に、本設計支援装置は、配線処理に使用する自動配線システムを起動する。このとき、本設計支援装置は、自動配線システムに、ＬＥＦファイルおよびＤＥＦファイルのレイアウトデータを引き渡す。自動配線システムは、ＬＥＦファイルおよびレイアウトデータに対して自動配線処理を実行する（Ｓ４）。そして、本設計支援装置は、自動配線処理が正常に終了したか否かを判定する（Ｓ５）。正常に終了しなかった場合、本設計支援装置は、制御をＳ９に進める。一方、正常に終了した場合、本設計支援装置は、ＤＲＣを起動し、自動配線されたレイアウトデータに設計ルール違反がないか否かを検証する（Ｓ６）。なお、ＤＲＣとして、自動配線システムに内蔵された設計ルールチェック機能ＤＲＣ（ｒｏｕｔｅｒ）を利用することもできる。また、自動配線システムとは、独立したシステムであるＤＲＣ（ｓｉｇｎ−ｏｆｆ）を利用することもできる。通常は、両方の設計ルールチェックが実行される。
【００９２】
次に、本設計支援装置は、自動配線システムによる自動配線結果およびＤＲＣによる設計ルールチェック結果を収集する（Ｓ７）。さらに、本設計支援装置は、フロアプランおよび制約を変更したバリエーションが指定されており、未処理のバリエーションが残っているか否かを判定する（Ｓ８）。未処理のバリエーションが残っている場合、本設計支援装置は、フロアプランおよび制約を変更し、制御をＳ３に戻す。
【００９３】
一方、フロアプランおよび制約のすべてのバリエーションについてチェック結果を収集すると、本設計支援装置は、そのセルについてのチェック結果のレポートを出力する（Ｓ９）。さらに、設計支援装置は、指定されたＬＥＦのファイル中に、未処理のセルが残っているかどうかを判定する（Ｓ１０）。未処理のセルが残っている場合には、制御をＳ１に戻し、未処理のセル中からセルを１つ選択し、処理を繰り返す。一方、未処理のセルが残っていない場合には、本設計支援装置は、処理を終了する。
【００９４】
以上述べたように、本実施形態の設計支援装置は、セル・ライブライリ中の個々のセルを用いて、検証用のレイアウトを作成する。さらに、検証用の外部端子を設定し、自動配線システムを起動して、セル内の端子と外部端子との間で、自動配線を実行する。そして、まず、本設計支援装置は、自動配線処理が正常に終了するか否かによって、セルの自動配線適合性を判定する。このような処理により、本設計支援装置は、いわば、セルに起因する自動配線上の問題点を摘出できる。
【００９５】
さらに、自動配線が正常に終了すると、本設計支援装置は、ＤＲＣを起動して、自動配線後のレイアウトデータの設計ルール違反を検証する。そして、その設計ルール違反情報を収集する。このような処理をセル・ライブラリで定義されているセルに対してそれぞれ実行する。このような処理によって、セルデータ個別の要因による自動配線上の問題点、セルデータの自動配線への適合性を評価できる。例えば、単純に、セルごとの設計ルール違反件数でソーティングすることで、問題が多いと考えられるセルデータの候補を抽出でき、セルデータ作成へフィードバック情報を提供できる。
【００９６】
さらに、本設計支援装置は、セルデータをレイアウトする際の条件、フロアプラン、例えば、端子の位置、セルの回転、外部端子のレイヤ、配線禁止領域の設定、配線トラックとセルデータとのオングリッドまたはオフグリッドの設定等を受け付け、自動線配線の条件を課す。また、本設計支援装置は、自動配線時の制約、例えば、複数ビア形成、スペーシング配線、太幅配線等の設定を受け付け、自動線配線の条件を課す。このような、自動配線の難易度を変化させる条件の設定を受け付け、複数条件で自動配線を実行し、設計ルールをチェックする。したがって、個々のセルを個別に評価するとともに、実際の電子装置のレイアウトに類似した条件での評価に近づけることができる。
【図面の簡単な説明】
【００９７】
【図１】設計支援装置における処理の概要を示す図である。
【図２】検証用レイアウトに対する自動配線を例示する図である。
【図３】評価対象セルの部分を拡大したイメージ図である。
【図４】セル・ライブラリから読み出されたセルのデータ例である。
【図５】３×３のマトリクス状にセルを配置したレイアウトデータの例である。
【図６】セルの右側に、横一列に外部端子が指定されて例である。
【図７】配線禁止領域の例１を示す図である。
【図８】配線禁止領域の例２を示す図である。
【図９】オングリッドの設定とオフグリッドの設定を例示する図である。
【図１０】複数ビアによる自動配線の例である。
【図１１】設定ファイルのデータ例を示す図である。
【図１２】ＬＥＦによるセル・ライブラリのデータ例を示す図（その１）である。
【図１３】ＬＥＦによるセル・ライブラリのデータ例を示す図（その２）である。
【図１４】ＤＥＦの定義例（その１）を示す図である。
【図１５】ＤＥＦの定義例（その２）を示す図である。
【図１６】レポートの例１である。
【図１７】レポートの例２である。
【図１８】設計支援装置のハードウェア構成図の例である。
【図１９】設計支援装置の機能ブロックの例である。
【図２０】設計支援装置の処理フローの例である。
【符号の説明】
【００９８】
１１  ＣＰＵ
１２  メモリ
１６  ディスプレイ
５１  セル・ライブラリ
５２  デフォルトレイアウトファイル
５３  設定ファイル
５４，５５  レイアウトファイル
６１  セルデータ入力手段
６２  デフォルトレイアウトデータ入力手段
６３  設定情報入力手段
６４  配置情報生成手段
６５  自動配線実行手段
６６  ＤＲＣ実行手段
６７  報知手段
６８  外部端子データ生成手段
【図１】
2009140002.tif 000003
【図２】
2009140002.tif 000004
【図３】
2009140002.tif 000005
【図４】
2009140002.tif 000006
【図５】
2009140002.tif 000007
【図６】
2009140002.tif 000008
【図７】
2009140002.tif 000009
【図８】
2009140002.tif 000010
【図９】
2009140002.tif 000011
【図１０】
2009140002.tif 000012
【図１１】
2009140002.tif 000013
【図１２】
2009140002.tif 000014
【図１３】
2009140002.tif 000015
【図１４】
2009140002.tif 000016
【図１５】
2009140002.tif 000017
【図１６】
2009140002.tif 000018
【図１７】
2009140002.tif 000019
【図１８】
2009140002.tif 000020
【図１９】
2009140002.tif 000021
【図２０】
2009140002.tif 000022